-
Notifications
You must be signed in to change notification settings - Fork 26
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
875ef92
commit 21b3543
Showing
5 changed files
with
393 additions
and
30 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
.. title: Constant Pressure Reactor | ||
.. has_math: true | ||
.. jumbotron:: | ||
|
||
.. raw:: html | ||
|
||
<h1 class="display-3">Constant Pressure Mole Reactor</h1> | ||
|
||
.. class:: lead | ||
|
||
This page shows the derivation of the governing equations used in | ||
Cantera's Constant Pressure Mole Reactor model. | ||
|
||
More information on the Constant Pressure Mole Reactor class can be found `here. | ||
<{{% ct_docs doxygen/html/d5/d7d/classCantera_1_1ConstPressureMoleReactor.html %}}>`__ | ||
|
||
Constant Pressure Mole Reactor | ||
****************************** | ||
|
||
For this reactor model, the pressure is held constant. The energy equation is | ||
defined by the total enthalpy. | ||
|
||
A Constant Pressure Reactor is defined by the two state variables: | ||
|
||
- :math:`H`, the total enthalpy of the reactor's contents (in J) | ||
|
||
- :math:`n_k`, the number of moles for each species (in kmol) | ||
|
||
Using the definition of the total enthalpy: | ||
|
||
.. math:: | ||
H = U + pV | ||
\frac{d H}{d t} = \frac{d U}{d t} + p \frac{dV}{dt} + V \frac{dp}{dt} | ||
Noting that :math:`dp/dt = 0` and substituting into the energy equation yields: | ||
|
||
.. math:: | ||
\frac{dH}{dt} = \dot{Q} + \sum_{in} \dot{n}_{in} \bar{h}_{in} | ||
- \bar{h} \sum_{out} \dot{n}_{out} | ||
\tag{1} | ||
Where the total specific enthalpy :math:`h` is defined as :math:`h = \sum_k{\bar{h}_k n_k}`. | ||
The enthalpy terms in equation 2 appear due to enthalpy flowing in and out | ||
of the reactor. | ||
The rate of heat transfer :math:`\dot{Q}` can replace :math:`\frac{d U}{d t} + p \frac{dV}{dt}` in the above equation due to the first law | ||
of thermodynamics, which states :math:`\dot{Q} = \dot{H}` in a closed system where | ||
no work is done. | ||
Positive :math:`\dot{Q}` represents heat addition to the system. | ||
|
||
The moles of each species in the reactor's contents changes as a result of flow through | ||
the reactor's inlets and outlets, and production of homogeneous gas phase species and reactions on the reactor :py:class:`Wall`. | ||
The rate of moles of species :math:`k` generated through homogeneous phase | ||
reactions is :math:`V \dot{\omega}_k`, and the total rate at which moles of species | ||
:math:`k` is generated is: | ||
|
||
.. math:: | ||
\frac{dn_k}{dt} = V \dot{\omega}_k + \sum_{in} \dot{n}_{in} - \sum_{out} \dot{n}_{out} + \dot{n}_{wall} | ||
\tag{2} | ||
Where the subscripts *in* and *out* refer to the sum of the superscripted property | ||
over all inlets and outlets respectively. A dot above a variable signifies a time | ||
derivative. Reactor *Walls* are defined `here. <{{% ct_docs sphinx/html/cython/zerodim.html#cantera.Wall %}}>`__ | ||
|
||
Equations 1-2 are the governing equations for a Constant Pressure Reactor. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
.. title: Ideal Gas Constant Pressure Mole Reactor | ||
.. has_math: true | ||
.. jumbotron:: | ||
|
||
.. raw:: html | ||
|
||
<h1 class="display-3">Ideal Gas Constant Pressure | ||
Mole Reactor</h1> | ||
|
||
.. class:: lead | ||
|
||
This page shows the derivation of the governing equations used in | ||
Cantera's Ideal Gas Constant Pressure Mole Reactor model. | ||
|
||
More information on the Ideal Gas Constant Pressure Mole Reactor class can | ||
be found `here. <{{% ct_docs doxygen/html/de/daa/classCantera_1_1IdealGasConstPressureMoleReactor.html %}}>`__ | ||
|
||
Ideal Gas Constant Pressure Reactor | ||
*********************************** | ||
|
||
An Ideal Gas Constant Pressure Mole Reactor is defined by the two state variables: | ||
|
||
- :math:`T`, the temperature (in K) | ||
|
||
- :math:`n_k`, the number of moles for each species (in kmol) | ||
|
||
The energy equation in terms of temperature is necessary as we replaced enthalpy in the state vector with temperature. | ||
We develop the equation for temperature by writing the total enthalpy in terms of the molar enthalpy and moles of each species. | ||
|
||
.. math:: | ||
H = \sum_k \bar{h}_k(T) n_k(T) | ||
\frac{dH}{dt} = \frac{dT}{dt}\sum_k n_k \bar{c_{p,k}} + \sum \bar{h}_k \dot{n}_k | ||
After some manipulations yields an equation for the | ||
temperature: | ||
|
||
.. math:: | ||
\frac{dT}{dt} = \frac{\dot{Q} - \sum \bar{h}_k \dot{n}_k}{\sum_k n_k \bar{c}_{p,k} } | ||
\tag{1} | ||
The moles of each species in the reactor's contents changes as a result of flow through | ||
the reactor's inlets and outlets, and production of homogeneous gas phase species and reactions on the reactor :py:class:`Wall`. | ||
The rate of moles of species :math:`k` generated through homogeneous phase | ||
reactions is :math:`V \dot{\omega}_k`, and the total rate at which moles of species | ||
:math:`k` is generated is: | ||
|
||
.. math:: | ||
\frac{dn_k}{dt} = V \dot{\omega}_k + \sum_{in} \dot{n}_{in} - \sum_{out} \dot{n}_{out} + \dot{n}_{wall} | ||
\tag{2} | ||
Where the subscripts *in* and *out* refer to the sum of the superscripted property | ||
over all inlets and outlets respectively. A dot above a variable signifies a time | ||
derivative. Reactor *Walls* are defined `here. <{{% ct_docs sphinx/html/cython/zerodim.html#cantera.Wall %}}>`__ | ||
|
||
|
||
Equations 1-2 are the governing equations for an Ideal Gas Constant Pressure | ||
Reactor. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,65 @@ | ||
.. title: Ideal Gas Mole Reactor | ||
.. has_math: true | ||
.. jumbotron:: | ||
|
||
.. raw:: html | ||
|
||
<h1 class="display-3">Ideal Gas Mole Reactor</h1> | ||
.. class:: lead | ||
|
||
This page shows the derivation of the governing equations used in | ||
Cantera's Ideal Gas Mole Reactor model. | ||
|
||
More information on the Ideal Gas Mole Reactor class can be found `here. | ||
<{{% ct_docs doxygen/html/d0/d03/classCantera_1_1IdealGasMoleReactor.html %}}>`__ | ||
|
||
Ideal Gas Mole Reactor | ||
********************** | ||
|
||
An Ideal Gas Mole Reactor is defined by the three state variables: | ||
|
||
- :math:`T`, the temperature (in K) | ||
|
||
- :math:`V`, the reactor volume (in m\ :sup:`3`) | ||
|
||
- :math:`n_k`, the number of moles for each species (in kmol) | ||
|
||
The energy equation in terms of temperature is necessary as we replaced internal energy in the state vector with temperature. | ||
We develop the equation for temperature by writing the total enthalpy in terms of the molar enthalpy and moles of each species. | ||
|
||
.. math:: | ||
U = \sum_k \bar{u}_k(T) n_k(T) | ||
\frac{dU}{dt} = \frac{dT}{dt}\sum_k n_k \bar{c_{v,k}} + \sum \bar{u}_k \dot{n}_k | ||
After some manipulations yields an equation for the | ||
temperature: | ||
|
||
.. math:: | ||
\frac{dT}{dt} = \frac{\dot{Q} - \sum \bar{u}_k \dot{n}_k}{\sum_k n_k \bar{c}_{p,k} } | ||
\tag{1} | ||
The reactor volume changes as a function of time due to the motion of one or | ||
more walls: | ||
|
||
.. math:: | ||
\frac{dV}{dt} = \sum_w f_w A_w v_w(t) | ||
\tag{2} | ||
Where :math:`f_w = \pm 1` indicates the facing of the wall (whether moving the wall increases or decreases the volume of the reactor), :math:`A_w` is the surface area of the wall, and :math:`v_w(t)` is the velocity of the wall as a function of time. | ||
|
||
Finally, the moles of each species in the reactor's contents changes as a result of flow through the reactor's inlets and outlets, and production of homogeneous gas phase species and reactions on the reactor :py:class:`Wall`. | ||
The rate of moles of species :math:`k` generated through homogeneous phase | ||
reactions is :math:`V \dot{\omega}_k`, and the total rate at which moles of species | ||
:math:`k` is generated is: | ||
|
||
.. math:: | ||
\frac{dn_k}{dt} = V \dot{\omega}_k + \sum_{in} \dot{n}_{in} - \sum_{out} \dot{n}_{out} + \dot{n}_{wall} | ||
\tag{3} | ||
Equations 1-3 are the governing equations for an Ideal Gas Mole Reactor. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
.. title: Mole Reactor | ||
.. has_math: true | ||
.. jumbotron:: | ||
|
||
.. raw:: html | ||
|
||
<h1 class="display-3">Mole Reactor</h1> | ||
|
||
.. class:: lead | ||
|
||
This page shows the derivation of the governing equations used in | ||
Cantera's Mole Reactor model. | ||
|
||
More information on the Mole Reactor class can be found `here. | ||
<{{% ct_docs doxygen/html/da/d29/classCantera_1_1MoleReactor.html %}}>`__ | ||
|
||
Mole Reactor | ||
************ | ||
|
||
A homogeneous zero-dimensional reactor. By default, they are closed (no inlets or outlets), | ||
have fixed volume, and have adiabatic, chemically-inert walls. These properties may all be | ||
changed by adding appropriate components such as :py:class:`Wall`, :py:class:`MassFlowController` | ||
and :py:class:`Valve`. | ||
|
||
A Mole Reactor is defined by the three state variables: | ||
|
||
- :math:`U`, the total internal energy of the reactors contents (in J) | ||
|
||
- :math:`V`, the reactor volume (in m\ :sup:`3`) | ||
|
||
- :math:`n_k`, the number of moles for each species (in kmol) | ||
|
||
The equation for the total internal energy is found by writing the first law | ||
for an open system: | ||
|
||
.. math:: | ||
\frac{dU}{dt} = - p \frac{dV}{dt} + \dot{Q} + | ||
\sum_{in} \dot{n}_{in} \bar{h}_{in} - \bar{h} \sum_{out} \dot{n}_{out} | ||
\tag{3} | ||
Where :math:`\dot{Q}` is the net rate of heat addition to the system. | ||
|
||
The reactor volume changes as a function of time due to the motion of one or | ||
more walls: | ||
|
||
.. math:: | ||
\frac{dV}{dt} = \sum_w f_w A_w v_w(t) | ||
\tag{2} | ||
where :math:`f_w = \pm 1` indicates the facing of the wall (whether moving the wall increases or | ||
decreases the volume of the reactor), :math:`A_w` is the | ||
surface area of the wall, and :math:`v_w(t)` is the velocity of the wall as a | ||
function of time. | ||
|
||
The moles of each species in the reactor's contents changes as a result of flow through | ||
the reactor's inlets and outlets, and production of homogeneous gas phase species and reactions on the reactor :py:class:`Wall`. | ||
The rate of moles of species :math:`k` generated through homogeneous phase | ||
reactions is :math:`V \dot{\omega}_k`, and the total rate at which moles of species | ||
:math:`k` is generated is: | ||
|
||
.. math:: | ||
\frac{dn_k}{dt} = V \dot{\omega}_k + \sum_{in} \dot{n}_{in} - \sum_{out} \dot{n}_{out} + \dot{n}_{wall} | ||
\tag{3} | ||
Where the subscripts *in* and *out* refer to the sum of the superscripted property | ||
over all inlets and outlets respectively. A dot above a variable signifies a time | ||
derivative. Reactor *Walls* are defined `here. <{{% ct_docs sphinx/html/cython/zerodim.html#cantera.Wall %}}>`__ | ||
|
||
Equations 1-3 are the governing equations for a Mole Reactor. |
Oops, something went wrong.