Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions notebooks_en/1_Properties.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -182,7 +182,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"Water boils at $100 ^\\circ C$ under standard atmospheric pressure. As it transitions into the gas phase, its specific volume increases dramatically from what it was as a solid. Let's verify this as we look at temperatures slightly below and above the boiling point."
"Water boils at $100 ^\\circ C$ under standard atmospheric pressure. As it transitions into the gas phase, its specific volume increases dramatically from what it was as a liquid. Let's verify this as we look at temperatures slightly below and above the boiling point."
]
},
{
Expand Down Expand Up @@ -935,7 +935,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.5"
"version": "3.7.6"
}
},
"nbformat": 4,
Expand Down
21 changes: 16 additions & 5 deletions notebooks_en/2_Ideal_Gases.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
"\n",
"In many situations, we want to avoid a phase change because of design constraints. For example, most pumps and turbines are designed for either a pure liquid or a pure vapor. A mixture of phases causes wear and tear on these components, leading to early failure.\n",
"\n",
"In this lesson, we will look at two very common approximations to single-phase substances: incompressible liquids and ideal gases. Using Cantera, which provides exact property values (to within experimental error), we can calculate the accuracy of these approximations."
"In this lesson, we will look at two very common approximations to single-phase substances: incompressible liquids and ideal gases. Using Cantera, which uses the most accurate equations of state, we can estimate the accuracy of these approximations."
]
},
{
Expand Down Expand Up @@ -141,7 +141,7 @@
"outputs": [],
"source": [
"rel_diff_T = np.mean((v_array[:,1]-v_array[:,0])/v_array[:,0]*100.0)\n",
"print('Relative difference across pressure range =',rel_diff_T,'%')"
"print('Relative difference across temperature range =',rel_diff_T,'%')"
]
},
{
Expand Down Expand Up @@ -611,7 +611,11 @@
"source": [
"Let's look at the same situation for carbon dioxide, which we've already seen behaves like an ideal gas under reasonable atmospheric conditions. But what do we mean by \"reasonable\"? Is there a quick way we can determine if the ideal gas law is accurate enough to use in design?\n",
"\n",
"Examinging the previous figure, we can see that $Z \\to 1$ as we move up and to the right of the critical point (the red star). Near this point, the distinction between liquids and gases is blurred -- definitely not the behavior of an ideal gas!\n",
"Examining the previous figure, we can see that \n",
"\n",
"1. Under the vapor dome, the law is just wrong. This is due to the presence of the liquid phase.\n",
"\n",
"2. $Z \\to 1$ as we move up and to the right of the critical point (the red star). Near this point, the distinction between liquids and gases is blurred -- definitely not the behavior of an ideal gas!\n",
"\n",
"Let $T_c$ and $P_c$ be the temperature and pressure of the critical point, respectively. Then we can make the following observations:\n",
"\n",
Expand All @@ -624,7 +628,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's compare the cricial points of carbon dioxide and water:"
"Let's compare the critical points of carbon dioxide and water:"
]
},
{
Expand Down Expand Up @@ -726,6 +730,13 @@
"css_file = '../style/custom.css'\n",
"HTML(open(css_file, \"r\").read())"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
Expand All @@ -744,7 +755,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.5"
"version": "3.7.3"
}
},
"nbformat": 4,
Expand Down
25 changes: 24 additions & 1 deletion notebooks_en/3_Heat_Transfer.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -301,6 +301,13 @@
"import scipy.integrate as integrate"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Next we write c$_v$ as a function of T using cantera:"
]
},
{
"cell_type": "code",
"execution_count": null,
Expand All @@ -315,6 +322,13 @@
" return state.cv # return cv(T)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"And we can now solve the integral approximately using numerical quadrature:"
]
},
{
"cell_type": "code",
"execution_count": null,
Expand Down Expand Up @@ -560,6 +574,15 @@
"css_file = '../style/custom.css'\n",
"HTML(open(css_file, \"r\").read())"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
" "
]
}
],
"metadata": {
Expand All @@ -578,7 +601,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.5"
"version": "3.7.3"
}
},
"nbformat": 4,
Expand Down
10 changes: 5 additions & 5 deletions notebooks_en/4_Work.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"Computing the work done during a process almost always involves evaluating an integral, except in the simplest cases. In this example, we can evaulate the integral using a formula to get an exact answer, so it provides an opportunity to test a numerical method for doing the same. The following figure shows the integral we need to compute $\\int\\limits_{x_1}^{x_2} kxdx$, and a numerical approximation of it:\n",
"Computing the work done during a process almost always involves evaluating an integral, except in the simplest cases. In this example, we can evaluate the integral using a formula to get an exact answer, so it provides an opportunity to test a numerical method for doing the same. The following figure shows the integral we need to compute $\\int\\limits_{x_1}^{x_2} kxdx$, and a numerical approximation of it:\n",
"\n",
"<img src=\"../images/spring force integration.png\" width=\"300\" />\n",
"\n",
Expand Down Expand Up @@ -519,7 +519,7 @@
"\n",
"<img src=\"../images/piston cylinder const pressure.png\" width=\"600\" />\n",
"\n",
"We can see quickly that the pressure inside the cylinder must be equal to the pressure outside at all times by considering a free body diagram of the piston:\n",
"We can see quickly that, assuming negligible piston mass, the pressure inside the cylinder must be equal to the pressure outside at all times by considering a free body diagram of the piston:\n",
"\n",
"<img src=\"../images/piston fbd.png\" width=\"150\" />\n",
"\n",
Expand All @@ -535,7 +535,7 @@
"\n",
"where, as usual, we define $Q > 0$ to be heat transferred *to* the system and $W > 0$ to be work done *by* the system (on the surroundings -- in this case, on the piston).\n",
"\n",
"For heat conduction, we make the usual assumption that he rate at which heat transfered can be well approximated by [Fourier's law](https://en.wikipedia.org/wiki/Thermal_conduction#Fourier's_law):\n",
"For heat conduction, we make the usual assumption that the rate at which heat is transfered can be well approximated by [Fourier's law](https://en.wikipedia.org/wiki/Thermal_conduction#Fourier's_law):\n",
"\n",
"$\\dfrac{dQ}{dt} = k(T_{room}-T_{sys})$\n",
"\n",
Expand All @@ -547,7 +547,7 @@
"\n",
"where \\\\(m\\\\) is the mass of the air, and \\\\(c_v\\\\) is its specific heat at constant volume.\n",
"\n",
"If we assume air is an ideal gas, then mathematically it can be shown that $c_v(T,P) \\approx c_v(T)$, just like incompressible liquids and solids. Thus, we can convert the partial derivative to an ordinary derivative:\n",
"If we assume air is an ideal gas, then mathematically it can be shown that $c_v(T,P) = c_v(T)$, just like incompressible liquids and solids. Thus, we can convert the partial derivative to an ordinary derivative:\n",
"\n",
"$\\dfrac{dU_{sys}}{dT_{sys}} = m c_v$\n",
"\n",
Expand Down Expand Up @@ -774,7 +774,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.5"
"version": "3.7.3"
}
},
"nbformat": 4,
Expand Down
11 changes: 9 additions & 2 deletions notebooks_en/5_Energy_Balance_Closed_Systems.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -597,7 +597,7 @@
"\n",
"$\\Delta E_{sys} = \\Delta U = m \\Delta u = m(u_2-u_1)$\n",
"\n",
"To determine the work the gas does on the piston, let's look at the free body diagram of the piston:\n",
"To determine the work the gas does on the piston, let's look at the free body diagram of the piston. Neglecting piston mass:\n",
"\n",
"<img src=\"../images/spring piston fbd.png\" width=\"250\" />\n",
"\n",
Expand Down Expand Up @@ -841,6 +841,13 @@
"css_file = '../style/custom.css'\n",
"HTML(open(css_file, \"r\").read())"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
Expand All @@ -859,7 +866,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.5"
"version": "3.7.3"
}
},
"nbformat": 4,
Expand Down