[Doc] Convert HTML tags to Markdown in Doxygen docs
This commit is contained in:
parent
aa3780b094
commit
f583bd4530
29 changed files with 395 additions and 519 deletions
|
|
@ -19,7 +19,7 @@ namespace Cantera
|
|||
//! Overloads the virtual methods of class ThermoPhase to implement the
|
||||
//! incompressible equation of state.
|
||||
/**
|
||||
* <b> Specification of Solution Thermodynamic Properties </b>
|
||||
* ## Specification of Solution Thermodynamic Properties
|
||||
*
|
||||
* The density is assumed to be constant, no matter what the concentration of
|
||||
* the solution.
|
||||
|
|
|
|||
|
|
@ -54,9 +54,7 @@ class PDSS_Water;
|
|||
* The concentrations of the ionic species are assumed to obey the
|
||||
* electroneutrality condition.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Specification of Species Standard State Properties </H2>
|
||||
* <HR>
|
||||
* ## Specification of Species Standard State Properties
|
||||
*
|
||||
* The standard states are on the unit molality basis. Therefore, in the
|
||||
* documentation below, the normal \f$ o \f$ superscript is replaced with the
|
||||
|
|
@ -107,9 +105,7 @@ class PDSS_Water;
|
|||
* properties at a T and P where the water phase is not a stable phase, i.e.,
|
||||
* beyond its spinodal curve.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Specification of Solution Thermodynamic Properties </H2>
|
||||
* <HR>
|
||||
* ## Specification of Solution Thermodynamic Properties
|
||||
*
|
||||
* Chemical potentials of the solutes, \f$ \mu_k \f$, and the solvent, \f$ \mu_o
|
||||
* \f$, which are based on the molality form, have the following general format:
|
||||
|
|
@ -127,7 +123,7 @@ class PDSS_Water;
|
|||
* Individual activity coefficients of ions can not be independently measured.
|
||||
* Instead, only binary pairs forming electroneutral solutions can be measured.
|
||||
*
|
||||
* <H3> Ionic Strength </H3>
|
||||
* ### Ionic Strength
|
||||
*
|
||||
* Most of the parameterizations within the model use the ionic strength as a
|
||||
* key variable. The ionic strength, \f$ I\f$ is defined as follows
|
||||
|
|
@ -178,8 +174,8 @@ class PDSS_Water;
|
|||
* \f]
|
||||
*
|
||||
* The specification of which species are weakly associated acids is made in the
|
||||
* input file via the <TT> stoichIsMods </TT> XML block, where the charge for k1
|
||||
* is also specified. An example is given below:
|
||||
* input file via the `stoichIsMods` XML block, where the charge for k1 is also
|
||||
* specified. An example is given below:
|
||||
*
|
||||
* @code
|
||||
* <stoichIsMods>
|
||||
|
|
@ -191,27 +187,26 @@ class PDSS_Water;
|
|||
* \f$ I_s \f$ we need to catalog all species in the phase. This is done using
|
||||
* the following categories:
|
||||
*
|
||||
* - <B>cEST_solvent</B> Solvent species (neutral)
|
||||
* - <B>cEST_chargedSpecies</B> Charged species (charged)
|
||||
* - <B>cEST_weakAcidAssociated</B> Species which can break apart into charged species.
|
||||
* It may or may not be charged. These may or
|
||||
* may not be be included in the
|
||||
* species solution vector.
|
||||
* - <B>cEST_strongAcidAssociated</B> Species which always breaks apart into charged species.
|
||||
* It may or may not be charged. Normally, these aren't included
|
||||
* in the speciation vector.
|
||||
* - <B>cEST_polarNeutral </B> Polar neutral species
|
||||
* - <B>cEST_nonpolarNeutral</B> Non polar neutral species
|
||||
* - `cEST_solvent` Solvent species (neutral)
|
||||
* - `cEST_chargedSpecies` Charged species (charged)
|
||||
* - `cEST_weakAcidAssociated` Species which can break apart into charged species.
|
||||
* It may or may not be charged. These may or
|
||||
* may not be be included in the
|
||||
* species solution vector.
|
||||
* - `cEST_strongAcidAssociated` Species which always breaks apart into charged species.
|
||||
* It may or may not be charged. Normally, these aren't included
|
||||
* in the speciation vector.
|
||||
* - `cEST_polarNeutral` Polar neutral species
|
||||
* - `cEST_nonpolarNeutral` Non polar neutral species
|
||||
*
|
||||
* Polar and non-polar neutral species are differentiated, because some
|
||||
* additions to the activity coefficient expressions distinguish between these
|
||||
* two types of solutes. This is the so-called salt-out effect.
|
||||
*
|
||||
* The type of species is specified in the <TT>electrolyteSpeciesType</TT> XML
|
||||
* block. Note, this is not considered a part of the specification of the
|
||||
* standard state for the species, at this time. Therefore, this information is
|
||||
* put under the <TT>activityCoefficient</TT> XML block. An example is given
|
||||
* below
|
||||
* The type of species is specified in the `electrolyteSpeciesType` XML block.
|
||||
* Note, this is not considered a part of the specification of the standard
|
||||
* state for the species, at this time. Therefore, this information is put under
|
||||
* the `activityCoefficient` XML block. An example is given below
|
||||
*
|
||||
* @code
|
||||
* <electrolyteSpeciesType>
|
||||
|
|
@ -233,7 +228,7 @@ class PDSS_Water;
|
|||
* assumed for the Debye-Huckel term. The model is set by the internal parameter
|
||||
* #m_formDH. We will now describe each category in its own section.
|
||||
*
|
||||
* <H3> Debye-Huckel Dilute Limit </H3>
|
||||
* ### Debye-Huckel Dilute Limit
|
||||
*
|
||||
* DHFORM_DILUTE_LIMIT = 0
|
||||
*
|
||||
|
|
@ -253,7 +248,7 @@ class PDSS_Water;
|
|||
* \ln(a_o) = \frac{X_o - 1.0}{X_o} + \frac{ 2 A_{Debye} \tilde{M}_o}{3} (I)^{3/2}
|
||||
* \f]
|
||||
*
|
||||
* <H3> Bdot Formulation </H3>
|
||||
* ### Bdot Formulation
|
||||
*
|
||||
* DHFORM_BDOT_AK = 1
|
||||
*
|
||||
|
|
@ -285,7 +280,7 @@ class PDSS_Water;
|
|||
* Additionally, Helgeson's formulation for the water activity is offered as an
|
||||
* alternative.
|
||||
*
|
||||
* <H3> Bdot Formulation with Uniform Size Parameter in the Denominator </H3>
|
||||
* ### Bdot Formulation with Uniform Size Parameter in the Denominator
|
||||
*
|
||||
* DHFORM_BDOT_AUNIFORM = 2
|
||||
*
|
||||
|
|
@ -304,7 +299,7 @@ class PDSS_Water;
|
|||
* - \frac{\log(10)}{2} \tilde{M}_o I \sum_k{ B^{dot}_k m_k}
|
||||
* \f]
|
||||
*
|
||||
* <H3> Beta_IJ formulation </H3>
|
||||
* ### Beta_IJ formulation
|
||||
*
|
||||
* DHFORM_BETAIJ = 3
|
||||
*
|
||||
|
|
@ -331,13 +326,13 @@ class PDSS_Water;
|
|||
* supplied to the model, in an <DFN> ionicRadius </DFN> XML block.
|
||||
*
|
||||
* The \f$ \beta_{j,k} \f$ parameters are binary interaction parameters. They
|
||||
* are supplied to the object in an <TT> DHBetaMatrix </TT> XML block. There are
|
||||
* in principle \f$ N (N-1) /2 \f$ different, symmetric interaction parameters,
|
||||
* are supplied to the object in an `DHBetaMatrix` XML block. There are in
|
||||
* principle \f$ N (N-1) /2 \f$ different, symmetric interaction parameters,
|
||||
* where \f$ N \f$ are the number of solute species in the mechanism. An example
|
||||
* is given below.
|
||||
*
|
||||
* An example <TT> activityCoefficients </TT> XML block for this formulation is
|
||||
* supplied below
|
||||
* An example `activityCoefficients` XML block for this formulation is supplied
|
||||
* below
|
||||
*
|
||||
* @code
|
||||
* <activityCoefficients model="Beta_ij">
|
||||
|
|
@ -362,7 +357,7 @@ class PDSS_Water;
|
|||
* </activityCoefficients>
|
||||
* @endcode
|
||||
*
|
||||
* <H3> Pitzer Beta_IJ formulation </H3>
|
||||
* ### Pitzer Beta_IJ formulation
|
||||
*
|
||||
* DHFORM_PITZER_BETAIJ = 4
|
||||
*
|
||||
|
|
@ -382,15 +377,14 @@ class PDSS_Water;
|
|||
* - \tilde{M}_o \sum_j \sum_k \beta_{j,k} m_j m_k
|
||||
* \f]
|
||||
*
|
||||
* <H3> Specification of the Debye Huckel Constants </H3>
|
||||
* ### Specification of the Debye Huckel Constants
|
||||
*
|
||||
* In the equations above, the formulas for \f$ A_{Debye} \f$ and \f$
|
||||
* B_{Debye} \f$ are needed. The DebyeHuckel object uses two methods for
|
||||
* specifying these quantities. The default method is to assume that \f$
|
||||
* A_{Debye} \f$ is a constant, given in the initialization process, and stored
|
||||
* in the member double, m_A_Debye. Optionally, a full water treatment may be
|
||||
* employed that makes \f$ A_{Debye} \f$ a full function of <I>T</I> and
|
||||
* <I>P</I>.
|
||||
* employed that makes \f$ A_{Debye} \f$ a full function of *T* and *P*.
|
||||
*
|
||||
* \f[
|
||||
* A_{Debye} = \frac{F e B_{Debye}}{8 \pi \epsilon R T} {\left( C_o \tilde{M}_o \right)}^{1/2}
|
||||
|
|
@ -414,10 +408,10 @@ class PDSS_Water;
|
|||
* - \f$ \epsilon_o \f$ is the permittivity of free space
|
||||
* - \f$ \rho_o \f$ is the density of the solvent in its standard state.
|
||||
*
|
||||
* Nominal value at 298 K and 1 atm = 1.172576 (kg/gmol)<SUP>1/2</SUP> based on:
|
||||
* Nominal value at 298 K and 1 atm = 1.172576 (kg/gmol)^(1/2) based on:
|
||||
* - \f$ \epsilon / \epsilon_0 \f$ = 78.54 (water at 25C)
|
||||
* - T = 298.15 K
|
||||
* - B_Debye = 3.28640E9 (kg/gmol)<SUP>1/2</SUP> m<SUP>-1</SUP>
|
||||
* - B_Debye = 3.28640E9 (kg/gmol)^(1/2) / m
|
||||
*
|
||||
* An example of a fixed value implementation is given below.
|
||||
* @code
|
||||
|
|
@ -442,9 +436,7 @@ class PDSS_Water;
|
|||
* a default water value, or through the input file. This may have to be looked
|
||||
* at, in the future.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> %Application within Kinetics Managers </H2>
|
||||
* <HR>
|
||||
* ## %Application within Kinetics Managers
|
||||
*
|
||||
* For the time being, we have set the standard concentration for all species in
|
||||
* this phase equal to the default concentration of the solvent at 298 K and 1
|
||||
|
|
@ -490,9 +482,7 @@ class PDSS_Water;
|
|||
*
|
||||
* Note, this treatment may be modified in the future, as events dictate.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Instantiation of the Class </H2>
|
||||
* <HR>
|
||||
* ## Instantiation of the Class
|
||||
*
|
||||
* The constructor for this phase is NOT located in the default ThermoFactory
|
||||
* for %Cantera. However, a new DebyeHuckel object may be created by
|
||||
|
|
@ -517,9 +507,7 @@ class PDSS_Water;
|
|||
* importPhase(*xm, &dhphase);
|
||||
* @endcode
|
||||
*
|
||||
* <HR>
|
||||
* <H2> XML Example </H2>
|
||||
* <HR>
|
||||
* ## XML Example
|
||||
*
|
||||
* The phase model name for this is called StoichSubstance. It must be supplied
|
||||
* as the model attribute of the thermo XML element entry. Within the phase XML
|
||||
|
|
@ -704,8 +692,7 @@ public:
|
|||
*
|
||||
* @param k Optional parameter indicating the species. The default is to
|
||||
* assume this refers to species 0.
|
||||
* @return the standard Concentration in units of m<SUP>3</SUP>
|
||||
* kmol<SUP>-1</SUP>.
|
||||
* @return the standard Concentration in units of m^3/kmol
|
||||
*/
|
||||
virtual doublereal standardConcentration(size_t k=0) const;
|
||||
|
||||
|
|
@ -864,11 +851,11 @@ public:
|
|||
* - \f$ \epsilon_o \f$ is the permittivity of free space.
|
||||
* - \f$ \rho_o \f$ is the density of the solvent in its standard state.
|
||||
*
|
||||
* Nominal value at 298 K and 1 atm = 1.172576 (kg/gmol)<SUP>1/2</SUP>
|
||||
* Nominal value at 298 K and 1 atm = 1.172576 (kg/gmol)^(1/2)
|
||||
* based on:
|
||||
* - \f$ \epsilon / \epsilon_0 \f$ = 78.54 (water at 25C)
|
||||
* - T = 298.15 K
|
||||
* - B_Debye = 3.28640E9 (kg/gmol)<SUP>1/2</SUP> m<SUP>-1</SUP>
|
||||
* - B_Debye = 3.28640E9 (kg/gmol)^(1/2)/m
|
||||
*
|
||||
* @param temperature Temperature in kelvin. Defaults to -1, in which
|
||||
* case the temperature of the phase is assumed.
|
||||
|
|
@ -992,12 +979,12 @@ protected:
|
|||
* The generalized concentrations can have three different forms
|
||||
* depending on the value of the member attribute m_formGC, which
|
||||
* is supplied in the constructor.
|
||||
* <TABLE>
|
||||
* <TR><TD> m_formGC </TD><TD> GeneralizedConc </TD><TD> StandardConc </TD></TR>
|
||||
* <TR><TD> 0 </TD><TD> X_k </TD><TD> 1.0 </TD></TR>
|
||||
* <TR><TD> 1 </TD><TD> X_k / V_k </TD><TD> 1.0 / V_k </TD></TR>
|
||||
* <TR><TD> 2 </TD><TD> X_k / V_N </TD><TD> 1.0 / V_N </TD></TR>
|
||||
* </TABLE>
|
||||
*
|
||||
* | m_formGC | GeneralizedConc | StandardConc |
|
||||
* | -------- | --------------- | ------------ |
|
||||
* | 0 | X_k | 1.0 |
|
||||
* | 1 | X_k / V_k | 1.0 / V_k |
|
||||
* | 2 | X_k / V_N | 1.0 / V_N |
|
||||
*
|
||||
* The value and form of the generalized concentration will affect reaction
|
||||
* rate constants involving species in this phase.
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ namespace Cantera
|
|||
* to pressure. This is necessary because the phase is incompressible. It uses a
|
||||
* zero volume approximation.
|
||||
*
|
||||
* <b> Specification of Species Standard State Properties </b>
|
||||
* ## Specification of Species Standard State Properties
|
||||
*
|
||||
* This class inherits from SingleSpeciesTP. It uses a single value for the
|
||||
* chemical potential which is assumed to be constant with respect to
|
||||
|
|
@ -40,12 +40,12 @@ namespace Cantera
|
|||
* the chemical potential. The entropy, the heat capacity, and the molar volume
|
||||
* are equal to zero.
|
||||
*
|
||||
* <b> Specification of Solution Thermodynamic Properties </b>
|
||||
* ## Specification of Solution Thermodynamic Properties
|
||||
*
|
||||
* All solution properties are obtained from the standard state species
|
||||
* functions, since there is only one species in the phase.
|
||||
*
|
||||
* <b> Application within Kinetics Managers </b>
|
||||
* ## Application within Kinetics Managers
|
||||
*
|
||||
* The standard concentration is equal to 1.0. This means that the kinetics
|
||||
* operator works on an (activities basis). Since this is a stoichiometric
|
||||
|
|
@ -65,7 +65,7 @@ namespace Cantera
|
|||
* constant expression, since it's a stoichiometric phase, and the activity is
|
||||
* always equal to 1.0.
|
||||
*
|
||||
* <b> Instantiation of the Class </b>
|
||||
* ## Instantiation of the Class
|
||||
*
|
||||
* This phase may be instantiated by calling the default ThermoFactory routine
|
||||
* for %Cantera. This new FixedChemPotSSTP object must then have a standalone
|
||||
|
|
@ -98,7 +98,7 @@ namespace Cantera
|
|||
* FixedChemPotSSTP *LiFixed = new FixedChemPotSSTP("Li", -2.3E7);
|
||||
* @endcode
|
||||
*
|
||||
* <b> XML Example </b>
|
||||
* ## XML Example
|
||||
*
|
||||
* The phase model name for this is called FixedChemPot. It must be supplied
|
||||
* as the model attribute of the thermo XML element entry.
|
||||
|
|
@ -249,8 +249,7 @@ public:
|
|||
virtual doublereal logStandardConc(size_t k=0) const;
|
||||
|
||||
//! Get the array of chemical potentials at unit activity for the species at
|
||||
//! their standard states at the current <I>T</I> and <I>P</I> of the
|
||||
//! solution.
|
||||
//! their standard states at the current *T* and *P* of the solution.
|
||||
/*!
|
||||
* For a stoichiometric substance, there is no activity term in the chemical
|
||||
* potential expression, and therefore the standard chemical potential and
|
||||
|
|
@ -290,7 +289,7 @@ public:
|
|||
virtual void getCp_R(doublereal* cpr) const;
|
||||
|
||||
//! Returns the vector of nondimensional Internal Energies of the standard
|
||||
//! state species at the current <I>T</I> and <I>P</I> of the solution
|
||||
//! state species at the current *T* and *P* of the solution
|
||||
/*!
|
||||
* For an incompressible, stoichiometric substance, the molar internal
|
||||
* energy is independent of pressure. Since the thermodynamic properties are
|
||||
|
|
@ -304,7 +303,7 @@ public:
|
|||
virtual void getIntEnergy_RT(doublereal* urt) const;
|
||||
|
||||
//! Get the molar volumes of each species in their standard states at the
|
||||
//! current <I>T</I> and <I>P</I> of the solution.
|
||||
//! current *T* and *P* of the solution.
|
||||
/*
|
||||
* units = m^3 / kmol
|
||||
*
|
||||
|
|
|
|||
|
|
@ -58,9 +58,7 @@ namespace Cantera
|
|||
* vector. That's one of its primary usages. In order to keep the mole fraction
|
||||
* vector constant, all of the setState functions are redesigned at this layer.
|
||||
*
|
||||
* <H3>
|
||||
* Activity Concentrations: Relationship of ThermoPhase to %Kinetics Expressions
|
||||
* </H3>
|
||||
* ### Activity Concentrations: Relationship of ThermoPhase to %Kinetics Expressions
|
||||
*
|
||||
* As explained in a similar discussion in the ThermoPhase class, the actual
|
||||
* units used in kinetics expressions must be specified in the ThermoPhase class
|
||||
|
|
@ -78,9 +76,7 @@ namespace Cantera
|
|||
* activities appear directly in kinetics expressions involving species in
|
||||
* underlying GibbsExcessVPSSTP phases.
|
||||
*
|
||||
* <H3>
|
||||
* SetState Strategy
|
||||
* </H3>
|
||||
* ### SetState Strategy
|
||||
*
|
||||
* All setState functions that set the internal state of the ThermoPhase object
|
||||
* are overloaded at this level, so that a current mole fraction vector is
|
||||
|
|
|
|||
|
|
@ -85,9 +85,7 @@ class WaterProps;
|
|||
* The concentrations of the ionic species are assumed to obey the
|
||||
* electroneutrality condition.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Specification of Species Standard State Properties </H2>
|
||||
* <HR>
|
||||
* ## Specification of Species Standard State Properties
|
||||
*
|
||||
* The solvent is assumed to be liquid water. A real model for liquid water
|
||||
* (IAPWS 1995 formulation) is used as its standard state. All standard state
|
||||
|
|
@ -148,9 +146,7 @@ class WaterProps;
|
|||
* properties at a T and P where the water phase is not a stable phase, i.e.,
|
||||
* beyond its spinodal curve.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Specification of Solution Thermodynamic Properties </H2>
|
||||
* <HR>
|
||||
* ## Specification of Solution Thermodynamic Properties
|
||||
*
|
||||
* Chemical potentials of the solutes, \f$ \mu_k \f$, and the solvent, \f$ \mu_o
|
||||
* \f$, which are based on the molality form, have the following general format:
|
||||
|
|
@ -174,7 +170,7 @@ class WaterProps;
|
|||
* applied, all other standard state properties of ionic species contain
|
||||
* meaningful information.
|
||||
*
|
||||
* <H3> Ionic Strength </H3>
|
||||
* ### Ionic Strength
|
||||
*
|
||||
* Most of the parameterizations within the model use the ionic strength as a
|
||||
* key variable. The ionic strength, \f$ I\f$ is defined as follows
|
||||
|
|
@ -186,7 +182,7 @@ class WaterProps;
|
|||
* \f$ m_k \f$ is the molality of the kth species. \f$ z_k \f$ is the charge of
|
||||
* the kth species. Note, the ionic strength is a defined units quantity. The
|
||||
* molality has defined units of gmol kg-1, and therefore the ionic strength has
|
||||
* units of sqrt( gmol kg<SUP>-1</SUP>).
|
||||
* units of sqrt(gmol/kg).
|
||||
*
|
||||
* In some instances, from some authors, a different formulation is used for the
|
||||
* ionic strength in the equations below. The different formulation is due to
|
||||
|
|
@ -225,8 +221,8 @@ class WaterProps;
|
|||
* \f]
|
||||
*
|
||||
* The specification of which species are weakly associated acids is made in the
|
||||
* input file via the <TT> stoichIsMods </TT> XML block, where the charge for k1
|
||||
* is also specified. An example is given below:
|
||||
* input file via the `stoichIsMods` XML block, where the charge for k1 is also
|
||||
* specified. An example is given below:
|
||||
*
|
||||
* @code
|
||||
* <stoichIsMods>
|
||||
|
|
@ -238,27 +234,26 @@ class WaterProps;
|
|||
* \f$ I_s \f$ we need to catalog all species in the phase. This is done using
|
||||
* the following categories:
|
||||
*
|
||||
* - <B>cEST_solvent</B> : Solvent species (neutral)
|
||||
* - <B>cEST_chargedSpecies</B> Charged species (charged)
|
||||
* - <B>cEST_weakAcidAssociated</B> Species which can break apart into charged species.
|
||||
* It may or may not be charged. These may or
|
||||
* may not be be included in the
|
||||
* species solution vector.
|
||||
* - <B>cEST_strongAcidAssociated</B> Species which always breaks apart into charged species.
|
||||
* It may or may not be charged. Normally, these
|
||||
* aren't included in the speciation vector.
|
||||
* - <B>cEST_polarNeutral </B> Polar neutral species
|
||||
* - <B>cEST_nonpolarNeutral</B> Non polar neutral species
|
||||
* - `cEST_solvent` Solvent species (neutral)
|
||||
* - `cEST_chargedSpecies` Charged species (charged)
|
||||
* - `cEST_weakAcidAssociated` Species which can break apart into charged species.
|
||||
* It may or may not be charged. These may or
|
||||
* may not be be included in the
|
||||
* species solution vector.
|
||||
* - `cEST_strongAcidAssociated` Species which always breaks apart into charged species.
|
||||
* It may or may not be charged. Normally, these
|
||||
* aren't included in the speciation vector.
|
||||
* - `cEST_polarNeutral` Polar neutral species
|
||||
* - `cEST_nonpolarNeutral` Non polar neutral species
|
||||
*
|
||||
* Polar and non-polar neutral species are differentiated, because some
|
||||
* additions to the activity coefficient expressions distinguish between these
|
||||
* two types of solutes. This is the so-called salt-out effect.
|
||||
*
|
||||
* The type of species is specified in the <TT>electrolyteSpeciesType</TT> XML
|
||||
* block. Note, this is not considered a part of the specification of the
|
||||
* standard state for the species, at this time. Therefore, this information is
|
||||
* put under the <TT>activityCoefficient</TT> XML block. An example is given
|
||||
* below
|
||||
* The type of species is specified in the `electrolyteSpeciesType` XML block.
|
||||
* Note, this is not considered a part of the specification of the standard
|
||||
* state for the species, at this time. Therefore, this information is put under
|
||||
* the `activityCoefficient` XML block. An example is given below
|
||||
*
|
||||
* @code
|
||||
* <electrolyteSpeciesType>
|
||||
|
|
@ -276,7 +271,7 @@ class WaterProps;
|
|||
* given the "chargedSpecies" default category. A neutral solute species is put
|
||||
* into the "nonpolarNeutral" category by default.
|
||||
*
|
||||
* <H3> Specification of the Excess Gibbs Free Energy </H3>
|
||||
* ### Specification of the Excess Gibbs Free Energy
|
||||
*
|
||||
* Pitzer's formulation may best be represented as a specification of the excess
|
||||
* Gibbs free energy, \f$ G^{ex} \f$, defined as the deviation of the total
|
||||
|
|
@ -317,22 +312,22 @@ class WaterProps;
|
|||
* \end{array}
|
||||
* \f]
|
||||
*
|
||||
* <I>a</I> is a subscript over all anions, <I>c</I> is a subscript extending
|
||||
* over all cations, and <I>i</I> is a subscript that extends over all anions
|
||||
* and cations. <I>n</I> is a subscript that extends only over neutral solute
|
||||
* molecules. The second line contains cross terms where cations affect cations
|
||||
* and/or cation/anion pairs, and anions affect anions or cation/anion pairs.
|
||||
* Note part of the coefficients, \f$ \Phi_{c{c'}} \f$ and \f$ \Phi_{a{a'}} \f$
|
||||
* stem from the theory of unsymmetrical mixing of electrolytes with different
|
||||
* charges. This theory depends on the total ionic strength of the solution, and
|
||||
* *a* is a subscript over all anions, *c* is a subscript extending over all
|
||||
* cations, and *i* is a subscript that extends over all anions and cations.
|
||||
* *n* is a subscript that extends only over neutral solute molecules. The
|
||||
* second line contains cross terms where cations affect cations and/or
|
||||
* cation/anion pairs, and anions affect anions or cation/anion pairs. Note part
|
||||
* of the coefficients, \f$ \Phi_{c{c'}} \f$ and \f$ \Phi_{a{a'}} \f$ stem from
|
||||
* the theory of unsymmetrical mixing of electrolytes with different charges.
|
||||
* This theory depends on the total ionic strength of the solution, and
|
||||
* therefore, \f$ \Phi_{c{c'}} \f$ and \f$ \Phi_{a{a'}} \f$ will depend on
|
||||
* <I>I</I>, the ionic strength. \f$ B_{ca}\f$ is a strong function of the
|
||||
* total ionic strength, <I>I</I>, of the electrolyte. The rest of the
|
||||
* coefficients are assumed to be independent of the molalities or ionic
|
||||
* strengths. However, all coefficients are potentially functions of the
|
||||
* temperature and pressure of the solution.
|
||||
* *I*, the ionic strength. \f$ B_{ca}\f$ is a strong function of the
|
||||
* total ionic strength, *I*, of the electrolyte. The rest of the coefficients
|
||||
* are assumed to be independent of the molalities or ionic strengths. However,
|
||||
* all coefficients are potentially functions of the temperature and pressure
|
||||
* of the solution.
|
||||
*
|
||||
* <I>A</I> is the Debye-Huckel constant. Its specification is described in its
|
||||
* *A* is the Debye-Huckel constant. Its specification is described in its
|
||||
* own section below.
|
||||
*
|
||||
* \f$ I\f$ is the ionic strength of the solution, and is given by:
|
||||
|
|
@ -382,7 +377,7 @@ class WaterProps;
|
|||
* were fit to experimental data. For 2-2 electrolytes, \f$ \alpha^{(1)}_{ca} =
|
||||
* 1.4\ kg^{1/2}\ gmol^{-1/2}\f$ is used in combination with either \f$
|
||||
* \alpha^{(2)}_{ca} = 12\ kg^{1/2}\ gmol^{-1/2}\f$ or \f$ \alpha^{(2)}_{ca} = k
|
||||
* A_\psi \f$, where <I>k</I> is a constant. For electrolytes other than 2-2
|
||||
* A_\psi \f$, where *k* is a constant. For electrolytes other than 2-2
|
||||
* electrolytes the \f$ \beta^{(2)}_{ca} g(\alpha^{(2)}_{ca} \sqrt{I}) \f$ term
|
||||
* is not used in the fitting procedure; it is only used for divalent metal
|
||||
* solfates and other high-valence electrolytes which exhibit significant
|
||||
|
|
@ -405,7 +400,7 @@ class WaterProps;
|
|||
* multicomponent systems with just binary and minor ternary contributions,
|
||||
* which can be independently measured in binary or ternary subsystems.
|
||||
*
|
||||
* <H3> Multicomponent Activity Coefficients for Solutes </H3>
|
||||
* ### Multicomponent Activity Coefficients for Solutes
|
||||
*
|
||||
* The formulas for activity coefficients of solutes may be obtained by taking
|
||||
* the following derivative of the excess Gibbs Free Energy formulation
|
||||
|
|
@ -415,13 +410,13 @@ class WaterProps;
|
|||
* \ln(\gamma_k^\triangle) = \frac{d\left( \frac{G^{ex}}{M_o n_o RT} \right)}{d(m_k)}\Bigg|_{n_i}
|
||||
* \f]
|
||||
*
|
||||
* In the formulas below the following conventions are used. The subscript
|
||||
* <I>M</I> refers to a particular cation. The subscript X refers to a
|
||||
* particular anion, whose activity is being currently evaluated. the subscript
|
||||
* <I>a</I> refers to a summation over all anions in the solution, while the
|
||||
* subscript <I>c</I> refers to a summation over all cations in the solutions.
|
||||
* In the formulas below the following conventions are used. The subscript *M*
|
||||
* refers to a particular cation. The subscript X refers to a particular anion,
|
||||
* whose activity is being currently evaluated. the subscript *a* refers to a
|
||||
* summation over all anions in the solution, while the subscript *c* refers to
|
||||
* a summation over all cations in the solutions.
|
||||
*
|
||||
* The activity coefficient for a particular cation <I>M</I> is given by
|
||||
* The activity coefficient for a particular cation *M* is given by
|
||||
*
|
||||
* \f[
|
||||
* \ln(\gamma_M^\triangle) = -z_M^2(F) + \sum_a m_a \left( 2 B_{Ma} + Z C_{Ma} \right)
|
||||
|
|
@ -431,7 +426,7 @@ class WaterProps;
|
|||
* + 2 \sum_n m_n \lambda_{nM}
|
||||
* \f]
|
||||
*
|
||||
* The activity coefficient for a particular anion <I>X</I> is given by
|
||||
* The activity coefficient for a particular anion *X* is given by
|
||||
*
|
||||
* \f[
|
||||
* \ln(\gamma_X^\triangle) = -z_X^2(F) + \sum_a m_c \left( 2 B_{cX} + Z C_{cX} \right)
|
||||
|
|
@ -475,13 +470,13 @@ class WaterProps;
|
|||
* \frac{2\left(1 - \left(1 + x + \frac{x^2}{2} \right)\exp(-x) \right)}{x^2}
|
||||
* \f]
|
||||
*
|
||||
* The activity coefficient for neutral species <I>N</I> is given by
|
||||
* The activity coefficient for neutral species *N* is given by
|
||||
*
|
||||
* \f[
|
||||
* \ln(\gamma_N^\triangle) = 2 \left( \sum_i m_i \lambda_{iN}\right)
|
||||
* \f]
|
||||
*
|
||||
* <H3> Activity of the Water Solvent </H3>
|
||||
* ### Activity of the Water Solvent
|
||||
*
|
||||
* The activity for the solvent water,\f$ a_o \f$, is not independent and must
|
||||
* be determined either from the Gibbs-Duhem relation or from taking the
|
||||
|
|
@ -543,7 +538,7 @@ class WaterProps;
|
|||
* \Phi^{\phi}_{a{a'}} = \Phi_{a{a'}} + I \frac{d\Phi_{a{a'}}}{dI}
|
||||
* \f]
|
||||
*
|
||||
* <H3> Temperature and Pressure Dependence of the Pitzer Parameters </H3>
|
||||
* ### Temperature and Pressure Dependence of the Pitzer Parameters
|
||||
*
|
||||
* In general most of the coefficients introduced in the previous section may
|
||||
* have a temperature and pressure dependence. The temperature and pressure
|
||||
|
|
@ -609,10 +604,9 @@ class WaterProps;
|
|||
* and \f$ C^{\phi}_{MX} \f$ coefficients described above.
|
||||
* There are 2 coefficients for each term.
|
||||
*
|
||||
* The temperature dependence is specified in an attributes field in the <TT>
|
||||
* activityCoefficients </TT> XML block, called <TT> TempModel </TT>.
|
||||
* Permissible values for that attribute are <TT> CONSTANT, COMPLEX1</TT>, and
|
||||
* <TT> LINEAR.</TT>
|
||||
* The temperature dependence is specified in an attributes field in the
|
||||
* `activityCoefficients` XML block, called `TempModel`. Permissible values for
|
||||
* that attribute are `CONSTANT`, `COMPLEX1`, and `LINEAR`.
|
||||
*
|
||||
* The specification of the binary interaction between a cation and an anion is
|
||||
* given by the coefficients, \f$ B_{MX}\f$ and \f$ C_{MX}\f$ The specification
|
||||
|
|
@ -620,15 +614,14 @@ class WaterProps;
|
|||
* \f$\beta^{(1)}_{MX} \f$, \f$\beta^{(2)}_{MX} \f$, \f$\alpha^{(1)}_{MX} \f$,
|
||||
* and \f$\alpha^{(2)}_{MX} \f$. \f$ C_{MX}\f$ is calculated from
|
||||
* \f$C^{\phi}_{MX} \f$ from the formula above. All of the underlying
|
||||
* coefficients are specified in the XML element block <TT> binarySaltParameters
|
||||
* </TT>, which has the attribute <TT> cation </TT> and <TT> anion </TT> to
|
||||
* identify the interaction. XML elements named <TT> beta0, beta1, beta2, Cphi,
|
||||
* Alpha1, Alpha2 </TT> within each <TT> binarySaltParameters </TT> block
|
||||
* specify the parameters. Within each of these blocks multiple parameters
|
||||
* describing temperature or pressure dependence are serially listed in the
|
||||
* order that they appear in the equation in this document. An example of the
|
||||
* <TT> beta0 </TT> block that fits the <TT> COMPLEX1 </TT> temperature
|
||||
* dependence given above is
|
||||
* coefficients are specified in the XML element block `binarySaltParameters`,
|
||||
* which has the attribute `cation` and `anion` to identify the interaction. XML
|
||||
* elements named `beta0, beta1, beta2, Cphi, Alpha1, Alpha2` within each
|
||||
* `binarySaltParameters` block specify the parameters. Within each of these
|
||||
* blocks multiple parameters describing temperature or pressure dependence are
|
||||
* serially listed in the order that they appear in the equation in this
|
||||
* document. An example of the `beta0` block that fits the `COMPLEX1`
|
||||
* temperature dependence given above is
|
||||
*
|
||||
* @code
|
||||
* <binarySaltParameters cation="Na+" anion="OH-">
|
||||
|
|
@ -645,13 +638,13 @@ class WaterProps;
|
|||
* + q_4^{{\beta}0} \ln \left( \frac{T}{T_r} \right)
|
||||
* \f]
|
||||
*
|
||||
* This same <TT> COMPLEX1 </TT> temperature
|
||||
* dependence given above is used for the following parameters:
|
||||
* This same `COMPLEX1` temperature dependence given above is used for the
|
||||
* following parameters:
|
||||
* \f$ \beta^{(0)}_{MX} \f$, \f$ \beta^{(1)}_{MX} \f$,
|
||||
* \f$ \beta^{(2)}_{MX} \f$, \f$ \Theta_{cc'} \f$, \f$\Theta_{aa'} \f$,
|
||||
* \f$ \Psi_{c{c'}a} \f$ and \f$ \Psi_{ca{a'}} \f$.
|
||||
*
|
||||
* <H3> Like-Charged Binary Ion Parameters and the Mixing Parameters </H3>
|
||||
* ### Like-Charged Binary Ion Parameters and the Mixing Parameters
|
||||
*
|
||||
* The previous section contained the functions, \f$ \Phi_{c{c'}} \f$,
|
||||
* \f$ \Phi_{a{a'}} \f$ and their derivatives wrt the ionic strength, \f$
|
||||
|
|
@ -699,11 +692,10 @@ class WaterProps;
|
|||
* numerical integration.
|
||||
*
|
||||
* The \f$ \Theta_{ij} \f$ term is a constant that is specified by the XML
|
||||
* element <TT> thetaCation </TT> and <TT> thetaAnion </TT>, which has the
|
||||
* attribute <TT> cation1 </TT>, <TT> cation2 </TT> and <TT> anion1 </TT>, <TT>
|
||||
* anion2 </TT> respectively to identify the interaction. No temperature or
|
||||
* pressure dependence of this parameter is currently allowed. An example of the
|
||||
* block is presented below.
|
||||
* element `thetaCation` and `thetaAnion`, which has the attribute `cation1`,
|
||||
* `cation2` and `anion1`, `anion2` respectively to identify the interaction. No
|
||||
* temperature or pressure dependence of this parameter is currently allowed. An
|
||||
* example of the block is presented below.
|
||||
*
|
||||
* @code
|
||||
* <thetaCation cation1="Na+" cation2="H+">
|
||||
|
|
@ -711,7 +703,7 @@ class WaterProps;
|
|||
* </thetaCation>
|
||||
* @endcode
|
||||
*
|
||||
* <H3> Ternary Pitzer Parameters </H3>
|
||||
* ### Ternary Pitzer Parameters
|
||||
*
|
||||
* The \f$ \Psi_{c{c'}a} \f$ and \f$ \Psi_{ca{a'}} \f$ terms represent ternary
|
||||
* interactions between two cations and an anion and two anions and a cation,
|
||||
|
|
@ -719,18 +711,16 @@ class WaterProps;
|
|||
* absolute size. Currently these parameters do not have any dependence on
|
||||
* temperature, pressure, or ionic strength.
|
||||
*
|
||||
* Their values are input using the XML element <TT> psiCommonCation </TT> and
|
||||
* <TT> psiCommonAnion </TT>. The species id's are specified in attribute fields
|
||||
* in the XML element. The fields <TT>cation</TT>, <TT> anion1</TT>, and <TT>
|
||||
* anion2</TT> are used for <TT>psiCommonCation</TT>. The fields <TT>
|
||||
* anion</TT>, <TT>cation1</TT> and <TT>cation2</TT> are used for <TT>
|
||||
* psiCommonAnion</TT>. An example block is given below. The <TT> Theta </TT>
|
||||
* field below is a duplicate of the <TT> thetaAnion </TT> field mentioned
|
||||
* above. The two fields are input into the same block for convenience, and
|
||||
* because their data are highly correlated, in practice. It is an error for the
|
||||
* two blocks to specify different information about thetaAnion (or thetaCation)
|
||||
* in different blocks. It's ok to specify duplicate but consistent information
|
||||
* in multiple blocks.
|
||||
* Their values are input using the XML element `psiCommonCation` and
|
||||
* `psiCommonAnion`. The species id's are specified in attribute fields in the
|
||||
* XML element. The fields `cation`, `anion1`, and `anion2` are used for
|
||||
* `psiCommonCation`. The fields `anion`, `cation1` and `cation2` are used for
|
||||
* `psiCommonAnion`. An example block is given below. The `Theta` field below is
|
||||
* a duplicate of the `thetaAnion` field mentioned above. The two fields are
|
||||
* input into the same block for convenience, and because their data are highly
|
||||
* correlated, in practice. It is an error for the two blocks to specify
|
||||
* different information about thetaAnion (or thetaCation) in different blocks.
|
||||
* It's ok to specify duplicate but consistent information in multiple blocks.
|
||||
*
|
||||
* @code
|
||||
* <psiCommonCation cation="Na+" anion1="Cl-" anion2="OH-">
|
||||
|
|
@ -739,18 +729,17 @@ class WaterProps;
|
|||
* </psiCommonCation>
|
||||
* @endcode
|
||||
*
|
||||
* <H3> Treatment of Neutral Species </H3>
|
||||
* ### Treatment of Neutral Species
|
||||
*
|
||||
* Binary virial-coefficient-like interactions between two neutral species may
|
||||
* be specified in the \f$ \lambda_{mn} \f$ terms that appear in the formulas
|
||||
* above. Currently these interactions are independent of temperature, pressure,
|
||||
* and ionic strength. Also, currently, the neutrality of the species are not
|
||||
* checked. Therefore, this interaction may involve charged species in the
|
||||
* solution as well. The identity of the species is specified by the
|
||||
* <TT>species1</TT> and <TT>species2</TT> attributes to the XML
|
||||
* <TT>lambdaNeutral</TT> node. These terms are symmetrical; <TT>species1</TT>
|
||||
* and <TT>species2</TT> may be reversed and the term will be the same. An
|
||||
* example is given below.
|
||||
* solution as well. The identity of the species is specified by the `species1`
|
||||
* and `species2` attributes to the XML `lambdaNeutral` node. These terms are
|
||||
* symmetrical; `species1` and `species2` may be reversed and the term will be
|
||||
* the same. An example is given below.
|
||||
*
|
||||
* @code
|
||||
* <lambdaNeutral species1="CO2" species2="CH4">
|
||||
|
|
@ -758,13 +747,12 @@ class WaterProps;
|
|||
* </lambdaNeutral>
|
||||
* @endcode
|
||||
*
|
||||
* <H3> Example of the Specification of Parameters for the Activity
|
||||
* Coefficients </H3>
|
||||
* ## Example of the Specification of Parameters for the Activity Coefficients
|
||||
*
|
||||
* An example is given below.
|
||||
*
|
||||
* An example <TT> activityCoefficients </TT> XML block for this formulation is
|
||||
* supplied below
|
||||
* An example `activityCoefficients` XML block for this formulation is supplied
|
||||
* below
|
||||
*
|
||||
* @code
|
||||
* <activityCoefficients model="Pitzer" TempModel="complex1">
|
||||
|
|
@ -823,16 +811,16 @@ class WaterProps;
|
|||
* </activityCoefficients>
|
||||
* @endcode
|
||||
*
|
||||
* <H3> Specification of the Debye-Huckel Constant </H3>
|
||||
* ### Specification of the Debye-Huckel Constant
|
||||
*
|
||||
* In the equations above, the formula for \f$ A_{Debye} \f$ is needed. The
|
||||
* HMWSoln object uses two methods for specifying these quantities. The default
|
||||
* method is to assume that \f$ A_{Debye} \f$ is a constant, given in the
|
||||
* initialization process, and stored in the member double, m_A_Debye.
|
||||
* Optionally, a full water treatment may be employed that makes
|
||||
* \f$ A_{Debye} \f$ a full function of <I>T</I> and <I>P</I> and creates
|
||||
* nontrivial entries for the excess heat capacity, enthalpy, and excess volumes
|
||||
* of solution.
|
||||
* \f$ A_{Debye} \f$ a full function of *T* and *P* and creates nontrivial
|
||||
* entries for the excess heat capacity, enthalpy, and excess volumes of
|
||||
* solution.
|
||||
*
|
||||
* \f[
|
||||
* A_{Debye} = \frac{F e B_{Debye}}{8 \pi \epsilon R T} {\left( C_o \tilde{M}_o \right)}^{1/2}
|
||||
|
|
@ -860,11 +848,11 @@ class WaterProps;
|
|||
* - \f$ \epsilon_o \f$ is the permittivity of free space.
|
||||
* - \f$ \rho_o \f$ is the density of the solvent in its standard state.
|
||||
*
|
||||
* Nominal value at 298 K and 1 atm = 1.172576 (kg/gmol)<SUP>1/2</SUP>
|
||||
* Nominal value at 298 K and 1 atm = 1.172576 (kg/gmol)^(1/2)
|
||||
* based on:
|
||||
* - \f$ \epsilon / \epsilon_0 \f$ = 78.54 (water at 25C)
|
||||
* - T = 298.15 K
|
||||
* - B_Debye = 3.28640E9 (kg/gmol)<SUP>1/2</SUP> m<SUP>-1</SUP>
|
||||
* - B_Debye = 3.28640E9 (kg/gmol)^(1/2) / m
|
||||
*
|
||||
* An example of a fixed value implementation is given below.
|
||||
* @code
|
||||
|
|
@ -886,7 +874,7 @@ class WaterProps;
|
|||
* </activityCoefficients>
|
||||
* @endcode
|
||||
*
|
||||
* <H3> Temperature and Pressure Dependence of the Activity Coefficients </H3>
|
||||
* ### Temperature and Pressure Dependence of the Activity Coefficients
|
||||
*
|
||||
* Temperature dependence of the activity coefficients leads to nonzero terms
|
||||
* for the excess enthalpy and entropy of solution. This means that the partial
|
||||
|
|
@ -949,9 +937,7 @@ class WaterProps;
|
|||
* s_update_d2lnMolalityActCoeff_dT2(), and the first derivative of the log
|
||||
* activity coefficients wrt pressure, s_update_dlnMolalityActCoeff_dP().
|
||||
*
|
||||
* <HR>
|
||||
* <H2> %Application within Kinetics Managers </H2>
|
||||
* <HR>
|
||||
* ## %Application within Kinetics Managers
|
||||
*
|
||||
* For the time being, we have set the standard concentration for all solute
|
||||
* species in this phase equal to the default concentration of the solvent at
|
||||
|
|
@ -965,10 +951,10 @@ class WaterProps;
|
|||
* basis (kmol /m3). The concentration will be modified by the activity
|
||||
* coefficients.
|
||||
*
|
||||
* For example, a bulk-phase binary reaction between liquid solute species
|
||||
* <I>j</I> and <I>k</I>, producing a new liquid solute species <I>l</I> would
|
||||
* have the following equation for its rate of progress variable, \f$ R^1 \f$,
|
||||
* which has units of kmol m-3 s-1.
|
||||
* For example, a bulk-phase binary reaction between liquid solute species *j*
|
||||
* and *k*, producing a new liquid solute species *l* would have the following
|
||||
* equation for its rate of progress variable, \f$ R^1 \f$, which has units of
|
||||
* kmol m-3 s-1.
|
||||
*
|
||||
* \f[
|
||||
* R^1 = k^1 C_j^a C_k^a = k^1 (C^o_o \tilde{M}_o a_j) (C^o_o \tilde{M}_o a_k)
|
||||
|
|
@ -980,24 +966,24 @@ class WaterProps;
|
|||
* C_j^a = C^o_o \tilde{M}_o a_j \quad and \quad C_k^a = C^o_o \tilde{M}_o a_k
|
||||
* \f]
|
||||
*
|
||||
* \f$ C_j^a \f$ is the activity concentration of species <I>j</I>, and
|
||||
* \f$ C_k^a \f$ is the activity concentration of species <I>k</I>. \f$ C^o_o \f$
|
||||
* is the concentration of water at 298 K and 1 atm. \f$ \tilde{M}_o \f$ has
|
||||
* units of kg solvent per gmol solvent and is equal to
|
||||
* \f$ C_j^a \f$ is the activity concentration of species *j*, and
|
||||
* \f$ C_k^a \f$ is the activity concentration of species *k*. \f$ C^o_o \f$ is
|
||||
* the concentration of water at 298 K and 1 atm. \f$ \tilde{M}_o \f$ has units
|
||||
* of kg solvent per gmol solvent and is equal to
|
||||
*
|
||||
* \f[
|
||||
* \tilde{M}_o = \frac{M_o}{1000}
|
||||
* \f]
|
||||
*
|
||||
* \f$ a_j \f$ is the activity of species <I>j</I> at the current temperature
|
||||
* and pressure and concentration of the liquid phase is given by the molality
|
||||
* based activity coefficient multiplied by the molality of the jth species.
|
||||
* \f$ a_j \f$ is the activity of species *j* at the current temperature and
|
||||
* pressure and concentration of the liquid phase is given by the molality based
|
||||
* activity coefficient multiplied by the molality of the jth species.
|
||||
*
|
||||
* \f[
|
||||
* a_j = \gamma_j^\triangle m_j = \gamma_j^\triangle \frac{n_j}{\tilde{M}_o n_o}
|
||||
* \f]
|
||||
*
|
||||
* \f$k^1 \f$ has units of m<SUP>3</SUP> kmol<SUP>-1</SUP> s<SUP>-1</SUP>.
|
||||
* \f$k^1 \f$ has units of m^3/kmol/s.
|
||||
*
|
||||
* Therefore the generalized activity concentration of a solute species has the following form
|
||||
*
|
||||
|
|
@ -1030,13 +1016,11 @@ class WaterProps;
|
|||
* k^{-1} = k^1 K^{o,1} C_o \tilde{M}_o
|
||||
* \f]
|
||||
*
|
||||
* \f$ k^{-1} \f$ has units of s<SUP>-1</SUP>.
|
||||
* \f$ k^{-1} \f$ has units of 1/s.
|
||||
*
|
||||
* Note, this treatment may be modified in the future, as events dictate.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Instantiation of the Class </H2>
|
||||
* <HR>
|
||||
* ## Instantiation of the Class
|
||||
*
|
||||
* The constructor for this phase is now located in the default ThermoFactory
|
||||
* for %Cantera. The following code snippet may be used to initialize the phase
|
||||
|
|
@ -1067,9 +1051,7 @@ class WaterProps;
|
|||
* importPhase(*xm, &dhphase);
|
||||
* @endcode
|
||||
*
|
||||
* <HR>
|
||||
* <H2> XML Example </H2>
|
||||
* <HR>
|
||||
* ## XML Example
|
||||
*
|
||||
* The phase model name for this is called StoichSubstance. It must be supplied
|
||||
* as the model attribute of the thermo XML element entry. Within the phase XML
|
||||
|
|
@ -1420,8 +1402,7 @@ public:
|
|||
*
|
||||
* The consequence of this is that the standard concentrations have unequal
|
||||
* units between the solvent and the solute. However, both the solvent and
|
||||
* the solute activity concentrations will have the same units of kmol
|
||||
* kg<SUP>-3</SUP>.
|
||||
* the solute activity concentrations will have the same units of kmol/kg^3.
|
||||
*
|
||||
* This means that the kinetics operator essentially works on an generalized
|
||||
* concentration basis (kmol / m3), with units for the kinetic rate constant
|
||||
|
|
@ -1430,9 +1411,9 @@ public:
|
|||
* coefficients.
|
||||
*
|
||||
* For example, a bulk-phase binary reaction between liquid solute species
|
||||
* <I>j</I> and <I>k</I>, producing a new liquid solute species <I>l</I>
|
||||
* would have the following equation for its rate of progress variable, \f$
|
||||
* R^1 \f$, which has units of kmol m-3 s-1.
|
||||
* *j* and *k*, producing a new liquid solute species *l* would have the
|
||||
* following equation for its rate of progress variable, \f$ R^1 \f$, which
|
||||
* has units of kmol m-3 s-1.
|
||||
*
|
||||
* \f[
|
||||
* R^1 = k^1 C_j^a C_k^a = k^1 (C^o_o \tilde{M}_o a_j) (C^o_o \tilde{M}_o a_k)
|
||||
|
|
@ -1444,17 +1425,17 @@ public:
|
|||
* C_j^a = C^o_o \tilde{M}_o a_j \quad and \quad C_k^a = C^o_o \tilde{M}_o a_k
|
||||
* \f]
|
||||
*
|
||||
* \f$ C_j^a \f$ is the activity concentration of species <I>j</I>, and
|
||||
* \f$ C_k^a \f$ is the activity concentration of species <I>k</I>. \f$ C^o_o \f$
|
||||
* is the concentration of water at 298 K and 1 atm. \f$ \tilde{M}_o \f$
|
||||
* has units of kg solvent per gmol solvent and is equal to
|
||||
* \f$ C_j^a \f$ is the activity concentration of species *j*, and
|
||||
* \f$ C_k^a \f$ is the activity concentration of species *k*. \f$ C^o_o \f$
|
||||
* is the concentration of water at 298 K and 1 atm. \f$ \tilde{M}_o \f$ has
|
||||
* units of kg solvent per gmol solvent and is equal to
|
||||
*
|
||||
* \f[
|
||||
* \tilde{M}_o = \frac{M_o}{1000}
|
||||
* \f]
|
||||
*
|
||||
* \f$ a_j \f$ is
|
||||
* the activity of species <I>j</I> at the current temperature and pressure
|
||||
* the activity of species *j* at the current temperature and pressure
|
||||
* and concentration of the liquid phase is given by the molality based
|
||||
* activity coefficient multiplied by the molality of the jth species.
|
||||
*
|
||||
|
|
@ -1462,7 +1443,7 @@ public:
|
|||
* a_j = \gamma_j^\triangle m_j = \gamma_j^\triangle \frac{n_j}{\tilde{M}_o n_o}
|
||||
* \f]
|
||||
*
|
||||
* \f$k^1 \f$ has units of m<SUP>3</SUP> kmol<SUP>-1</SUP> s<SUP>-1</SUP>.
|
||||
* \f$k^1 \f$ has units of m^3/kmol/s.
|
||||
*
|
||||
* Therefore the generalized activity concentration of a solute species has
|
||||
* the following form
|
||||
|
|
@ -1480,8 +1461,7 @@ public:
|
|||
*
|
||||
* @param k Optional parameter indicating the species. The default is to
|
||||
* assume this refers to species 0.
|
||||
* @returns the standard Concentration in units of m<SUP>3</SUP>
|
||||
* kmol<SUP>-1</SUP>.
|
||||
* @returns the standard Concentration in units of m^3/kmol.
|
||||
*
|
||||
* @param k Species index
|
||||
*/
|
||||
|
|
@ -1885,12 +1865,12 @@ private:
|
|||
* The generalized concentrations can have three different forms
|
||||
* depending on the value of the member attribute m_formGC, which
|
||||
* is supplied in the constructor.
|
||||
* <TABLE>
|
||||
* <TR><TD> m_formGC </TD><TD> GeneralizedConc </TD><TD> StandardConc </TD></TR>
|
||||
* <TR><TD> 0 </TD><TD> X_k </TD><TD> 1.0 </TD></TR>
|
||||
* <TR><TD> 1 </TD><TD> X_k / V_k </TD><TD> 1.0 / V_k </TD></TR>
|
||||
* <TR><TD> 2 </TD><TD> X_k / V_N </TD><TD> 1.0 / V_N </TD></TR>
|
||||
* </TABLE>
|
||||
*
|
||||
* | m_formGC | GeneralizedConc | StandardConc |
|
||||
* | -------- | --------------- | ------------ |
|
||||
* | 0 | X_k | 1.0 |
|
||||
* | 1 | X_k / V_k | 1.0 / V_k |
|
||||
* | 2 | X_k / V_N | 1.0 / V_N |
|
||||
*
|
||||
* The value and form of the generalized concentration will affect reaction
|
||||
* rate constants involving species in this phase.
|
||||
|
|
|
|||
|
|
@ -28,9 +28,7 @@ namespace Cantera
|
|||
* current mass fraction vector and temperature and the desired pressure, and
|
||||
* then set the density.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Specification of Species Standard State Properties </H2>
|
||||
* <HR>
|
||||
* ## Specification of Species Standard State Properties
|
||||
*
|
||||
* It is assumed that the reference state thermodynamics may be obtained by a
|
||||
* pointer to a populated species thermodynamic property manager class in the
|
||||
|
|
@ -100,16 +98,14 @@ namespace Cantera
|
|||
* where R is the molar gas constant. For a complete list of physical constants
|
||||
* used within %Cantera, see \ref physConstants .
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Specification of Solution Thermodynamic Properties </H2>
|
||||
* <HR>
|
||||
* ## Specification of Solution Thermodynamic Properties
|
||||
*
|
||||
* The activity of a species defined in the phase is given by the ideal gas law:
|
||||
* \f[
|
||||
* a_k = X_k
|
||||
* \f]
|
||||
* where \f$ X_k \f$ is the mole fraction of species <I>k</I>. The chemical
|
||||
* potential for species <I>k</I> is equal to
|
||||
* where \f$ X_k \f$ is the mole fraction of species *k*. The chemical potential
|
||||
* for species *k* is equal to
|
||||
*
|
||||
* \f[
|
||||
* \mu_k(T,P) = \mu^o_k(T, P) + R T \log(X_k)
|
||||
|
|
@ -121,33 +117,31 @@ namespace Cantera
|
|||
* \mu_k(T,P) = \mu^{ref}_k(T, P) + R T \log(\frac{P X_k}{P_{ref}})
|
||||
* \f]
|
||||
*
|
||||
* The partial molar entropy for species <I>k</I> is given by the following relation,
|
||||
* The partial molar entropy for species *k* is given by the following relation,
|
||||
*
|
||||
* \f[
|
||||
* \tilde{s}_k(T,P) = s^o_k(T,P) - R \log(X_k) = s^{ref}_k(T) - R \log(\frac{P X_k}{P_{ref}})
|
||||
* \f]
|
||||
*
|
||||
* The partial molar enthalpy for species <I>k</I> is
|
||||
* The partial molar enthalpy for species *k* is
|
||||
*
|
||||
* \f[
|
||||
* \tilde{h}_k(T,P) = h^o_k(T,P) = h^{ref}_k(T)
|
||||
* \f]
|
||||
*
|
||||
* The partial molar Internal Energy for species <I>k</I> is
|
||||
* The partial molar Internal Energy for species *k* is
|
||||
*
|
||||
* \f[
|
||||
* \tilde{u}_k(T,P) = u^o_k(T,P) = u^{ref}_k(T)
|
||||
* \f]
|
||||
*
|
||||
* The partial molar Heat Capacity for species <I>k</I> is
|
||||
* The partial molar Heat Capacity for species *k* is
|
||||
*
|
||||
* \f[
|
||||
* \tilde{Cp}_k(T,P) = Cp^o_k(T,P) = Cp^{ref}_k(T)
|
||||
* \f]
|
||||
*
|
||||
* <HR>
|
||||
* <H2> %Application within Kinetics Managers </H2>
|
||||
* <HR>
|
||||
* ## %Application within Kinetics Managers
|
||||
*
|
||||
* \f$ C^a_k\f$ are defined such that \f$ a_k = C^a_k / C^s_k, \f$ where \f$
|
||||
* C^s_k \f$ is a standard concentration defined below and \f$ a_k \f$ are
|
||||
|
|
@ -160,8 +154,7 @@ namespace Cantera
|
|||
* C^a_k = C^s_k X_k = \frac{P}{R T} X_k
|
||||
* \f]
|
||||
*
|
||||
* The standard concentration for species <I>k</I> is independent of <I>k</I>
|
||||
* and equal to
|
||||
* The standard concentration for species *k* is independent of *k* and equal to
|
||||
*
|
||||
* \f[
|
||||
* C^s_k = C^s = \frac{P}{R T}
|
||||
|
|
@ -245,9 +238,7 @@ namespace Cantera
|
|||
*
|
||||
* \f$k^{-1} \f$ has units of s-1.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Instantiation of the Class </H2>
|
||||
* <HR>
|
||||
* ## Instantiation of the Class
|
||||
*
|
||||
* The constructor for this phase is located in the default ThermoFactory for
|
||||
* %Cantera. A new IdealGasPhase may be created by the following code snippet:
|
||||
|
|
@ -267,9 +258,8 @@ namespace Cantera
|
|||
* IdealGasPhase *silaneGas = new IdealGasPhase(*xs);
|
||||
* @endcode
|
||||
*
|
||||
* <HR>
|
||||
* <H2> XML Example </H2>
|
||||
* <HR>
|
||||
* ## XML Example
|
||||
*
|
||||
* An example of an XML Element named phase setting up a IdealGasPhase
|
||||
* object named silane is given below.
|
||||
*
|
||||
|
|
|
|||
|
|
@ -51,12 +51,11 @@ namespace Cantera
|
|||
* The standard concentrations can have three different forms depending on the
|
||||
* value of the member attribute m_formGC, which is supplied in the XML file.
|
||||
*
|
||||
* <TABLE>
|
||||
* <TR><TD> m_formGC </TD><TD> ActivityConc </TD><TD> StandardConc </TD></TR>
|
||||
* <TR><TD> 0 </TD><TD> \f$ {m_k}/ { m^{\Delta}}\f$ </TD><TD> \f$ 1.0 \f$ </TD></TR>
|
||||
* <TR><TD> 1 </TD><TD> \f$ m_k / (m^{\Delta} V_k)\f$ </TD><TD> \f$ 1.0 / V_k \f$ </TD></TR>
|
||||
* <TR><TD> 2 </TD><TD> \f$ m_k / (m^{\Delta} V^0_0)\f$</TD><TD> \f$ 1.0 / V^0_0\f$ </TD></TR>
|
||||
* </TABLE>
|
||||
* | m_formGC | ActivityConc | StandardConc |
|
||||
* | -------- | -------------------------------- | ------------------ |
|
||||
* | 0 | \f$ {m_k}/ { m^{\Delta}}\f$ | \f$ 1.0 \f$ |
|
||||
* | 1 | \f$ m_k / (m^{\Delta} V_k)\f$ | \f$ 1.0 / V_k \f$ |
|
||||
* | 2 | \f$ m_k / (m^{\Delta} V^0_0)\f$ | \f$ 1.0 / V^0_0\f$ |
|
||||
*
|
||||
* \f$ V^0_0 \f$ is the solvent standard molar volume. \f$ m^{\Delta} \f$ is a
|
||||
* constant equal to a molality of \f$ 1.0 \quad\mbox{gm kmol}^{-1} \f$.
|
||||
|
|
@ -442,12 +441,11 @@ protected:
|
|||
* the value of the member attribute m_formGC, which is supplied in the XML
|
||||
* file.
|
||||
*
|
||||
* <TABLE>
|
||||
* <TR><TD> m_formGC </TD><TD> ActivityConc </TD><TD> StandardConc </TD></TR>
|
||||
* <TR><TD> 0 </TD><TD> \f$ {m_k}/ { m^{\Delta}}\f$ </TD><TD> \f$ 1.0 \f$ </TD></TR>
|
||||
* <TR><TD> 1 </TD><TD> \f$ m_k / (m^{\Delta} V_k)\f$ </TD><TD> \f$ 1.0 / V_k \f$ </TD></TR>
|
||||
* <TR><TD> 2 </TD><TD> \f$ m_k / (m^{\Delta} V^0_0)\f$</TD><TD> \f$ 1.0 / V^0_0\f$ </TD></TR>
|
||||
* </TABLE>
|
||||
* | m_formGC | ActivityConc | StandardConc |
|
||||
* | -------- | -------------------------------- | ------------------ |
|
||||
* | 0 | \f$ {m_k}/ { m^{\Delta}}\f$ | \f$ 1.0 \f$ |
|
||||
* | 1 | \f$ m_k / (m^{\Delta} V_k)\f$ | \f$ 1.0 / V_k \f$ |
|
||||
* | 2 | \f$ m_k / (m^{\Delta} V^0_0)\f$ | \f$ 1.0 / V^0_0\f$ |
|
||||
*/
|
||||
int m_formGC;
|
||||
|
||||
|
|
|
|||
|
|
@ -296,8 +296,8 @@ public:
|
|||
* For this implementation the activity is defined to be the mole fraction
|
||||
* of the species. The generalized concentration is defined to be equal to
|
||||
* the mole fraction divided by the partial molar volume. The generalized
|
||||
* concentrations for species in this phase therefore have units of kmol
|
||||
* m<SUP>-3</SUP>. Rate constants must reflect this fact.
|
||||
* concentrations for species in this phase therefore have units of
|
||||
* kmol/m^3. Rate constants must reflect this fact.
|
||||
*
|
||||
* On a general note, the following must be true. For an ideal solution, the
|
||||
* generalized concentration must consist of the mole fraction multiplied by
|
||||
|
|
@ -328,8 +328,7 @@ public:
|
|||
* generalized concentration. In many cases, this quantity will be the
|
||||
* same for all species in a phase. However, for this case, we will return
|
||||
* a distinct concentration for each species. This is the inverse of the
|
||||
* species molar volume. Units for the standard concentration are kmol
|
||||
* m<SUP>-3</SUP>.
|
||||
* species molar volume. Units for the standard concentration are kmol/m^3.
|
||||
*
|
||||
* @param k Species number: this is a require parameter, a change from the
|
||||
* ThermoPhase base class, where it was an optional parameter.
|
||||
|
|
@ -388,9 +387,9 @@ public:
|
|||
* \f[
|
||||
* \mu^0_k(T,P) = \mu^{ref}_k(T) + (P - P_{ref}) * V_k + RT ln(X_k)
|
||||
* \f]
|
||||
* where \f$V_k\f$ is the molar volume of pure species <I>k</I>.
|
||||
* where \f$V_k\f$ is the molar volume of pure species *k*.
|
||||
* \f$ \mu^{ref}_k(T)\f$ is the chemical potential of pure
|
||||
* species <I>k</I> at the reference pressure, \f$P_{ref}\f$.
|
||||
* species *k* at the reference pressure, \f$P_{ref}\f$.
|
||||
*
|
||||
* @param mu Output vector of dimensionless chemical potentials.
|
||||
* Length = m_kk.
|
||||
|
|
@ -481,14 +480,14 @@ public:
|
|||
}
|
||||
|
||||
//! Get the array of nondimensional Enthalpy functions for the standard
|
||||
//! state species at the current <I>T</I> and <I>P</I> of the solution.
|
||||
//! state species at the current *T* and *P* of the solution.
|
||||
/*!
|
||||
* We assume an incompressible constant partial molar volume here:
|
||||
* \f[
|
||||
* h^0_k(T,P) = h^{ref}_k(T) + (P - P_{ref}) * V_k
|
||||
* \f]
|
||||
* where \f$V_k\f$ is the molar volume of pure species <I>k</I>.
|
||||
* \f$ h^{ref}_k(T)\f$ is the enthalpy of the pure species <I>k</I> at the
|
||||
* where \f$V_k\f$ is the molar volume of pure species *k*.
|
||||
* \f$ h^{ref}_k(T)\f$ is the enthalpy of the pure species *k* at the
|
||||
* reference pressure, \f$P_{ref}\f$.
|
||||
*
|
||||
* @param hrt Vector of length m_kk, which on return hrt[k] will contain the
|
||||
|
|
@ -514,8 +513,8 @@ public:
|
|||
* \f[
|
||||
* \mu^0_k(T,P) = \mu^{ref}_k(T) + (P - P_{ref}) * V_k
|
||||
* \f]
|
||||
* where \f$V_k\f$ is the molar volume of pure species <I>k</I>.
|
||||
* \f$ \mu^{ref}_k(T)\f$ is the chemical potential of pure species <I>k</I>
|
||||
* where \f$V_k\f$ is the molar volume of pure species *k*.
|
||||
* \f$ \mu^{ref}_k(T)\f$ is the chemical potential of pure species *k*
|
||||
* at the reference pressure, \f$P_{ref}\f$.
|
||||
*
|
||||
* @param grt Vector of length m_kk, which on return sr[k] will contain the
|
||||
|
|
@ -524,15 +523,15 @@ public:
|
|||
virtual void getGibbs_RT(doublereal* grt) const;
|
||||
|
||||
/**
|
||||
* Get the Gibbs functions for the pure species at the current <I>T</I> and
|
||||
* <I>P</I> of the solution. We assume an incompressible constant partial
|
||||
* molar volume here:
|
||||
* Get the Gibbs functions for the pure species at the current *T* and *P*
|
||||
* of the solution. We assume an incompressible constant partial molar
|
||||
* volume here:
|
||||
* \f[
|
||||
* \mu^0_k(T,P) = \mu^{ref}_k(T) + (P - P_{ref}) * V_k
|
||||
* \f]
|
||||
* where \f$V_k\f$ is the molar volume of pure species <I>k</I>.
|
||||
* \f$ \mu^{ref}_k(T)\f$ is the chemical potential of pure species <I>k</I>
|
||||
* at the reference pressure, \f$P_{ref}\f$.
|
||||
* where \f$V_k\f$ is the molar volume of pure species *k*.
|
||||
* \f$ \mu^{ref}_k(T)\f$ is the chemical potential of pure species *k* at
|
||||
* the reference pressure, \f$P_{ref}\f$.
|
||||
*
|
||||
* @param gpure Output vector of Gibbs functions for species. Length: m_kk.
|
||||
*/
|
||||
|
|
@ -546,9 +545,9 @@ public:
|
|||
* \f[
|
||||
* Cp^0_k(T,P) = Cp^{ref}_k(T)
|
||||
* \f]
|
||||
* where \f$V_k\f$ is the molar volume of pure species <I>k</I>.
|
||||
* where \f$V_k\f$ is the molar volume of pure species *k*.
|
||||
* \f$ Cp^{ref}_k(T)\f$ is the constant pressure heat capacity of species
|
||||
* <I>k</I> at the reference pressure, \f$p_{ref}\f$.
|
||||
* *k* at the reference pressure, \f$p_{ref}\f$.
|
||||
*
|
||||
* @param cpr Vector of length m_kk, which on return cpr[k] will contain the
|
||||
* nondimensional constant pressure heat capacity for species k.
|
||||
|
|
@ -648,12 +647,11 @@ protected:
|
|||
/**
|
||||
* Format for the generalized concentrations.
|
||||
*
|
||||
* <TABLE>
|
||||
* <TR><TD> m_formGC </TD><TD> GeneralizedConc </TD><TD> StandardConc </TD></TR>
|
||||
* <TR><TD> 0 (default) </TD><TD> X_k </TD><TD> 1.0 </TD></TR>
|
||||
* <TR><TD> 1 </TD><TD> X_k / V_k </TD><TD> 1.0 / V_k </TD></TR>
|
||||
* <TR><TD> 2 </TD><TD> X_k / V_N </TD><TD> 1.0 / V_N </TD></TR>
|
||||
* </TABLE>
|
||||
* | m_formGC | GeneralizedConc | StandardConc |
|
||||
* | ----------- | --------------- | ------------ |
|
||||
* | 0 (default) | X_k | 1.0 |
|
||||
* | 1 | X_k / V_k | 1.0 / V_k |
|
||||
* | 2 | X_k / V_N | 1.0 / V_N |
|
||||
*
|
||||
* The value and form of the generalized concentration will affect
|
||||
* reaction rate constants involving species in this phase.
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ namespace Cantera
|
|||
* The density of matrix sites is given by the variable \f$ C_o \f$, which has
|
||||
* SI units of kmol m-3.
|
||||
*
|
||||
* <b> Specification of Species Standard State Properties </b>
|
||||
* ## Specification of Species Standard State Properties
|
||||
*
|
||||
* It is assumed that the reference state thermodynamics may be obtained by a
|
||||
* pointer to a populated species thermodynamic property manager class (see
|
||||
|
|
@ -67,9 +67,7 @@ namespace Cantera
|
|||
* V^o_k(T,P) = \frac{1.0}{C_o}
|
||||
* \f]
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Specification of Solution Thermodynamic Properties </H2>
|
||||
* <HR>
|
||||
* ## Specification of Solution Thermodynamic Properties
|
||||
*
|
||||
* The activity of species \f$ k \f$ defined in the phase, \f$ a_k \f$, is given
|
||||
* by the ideal solution law:
|
||||
|
|
@ -78,33 +76,32 @@ namespace Cantera
|
|||
* a_k = X_k ,
|
||||
* \f]
|
||||
*
|
||||
* where \f$ X_k \f$ is the mole fraction of species <I>k</I>. The chemical
|
||||
* potential for species <I>k</I> is equal to
|
||||
* where \f$ X_k \f$ is the mole fraction of species *k*. The chemical potential
|
||||
* for species *k* is equal to
|
||||
*
|
||||
* \f[
|
||||
* \mu_k(T,P) = \mu^o_k(T, P) + R T \log(X_k)
|
||||
* \f]
|
||||
*
|
||||
* The partial molar entropy for species <I>k</I> is given by the following
|
||||
* relation,
|
||||
* The partial molar entropy for species *k* is given by the following relation,
|
||||
*
|
||||
* \f[
|
||||
* \tilde{s}_k(T,P) = s^o_k(T,P) - R \log(X_k) = s^{ref}_k(T) - R \log(X_k)
|
||||
* \f]
|
||||
*
|
||||
* The partial molar enthalpy for species <I>k</I> is
|
||||
* The partial molar enthalpy for species *k* is
|
||||
*
|
||||
* \f[
|
||||
* \tilde{h}_k(T,P) = h^o_k(T,P) = h^{ref}_k(T) + \left( \frac{P - P_{ref}}{C_o} \right)
|
||||
* \f]
|
||||
*
|
||||
* The partial molar Internal Energy for species <I>k</I> is
|
||||
* The partial molar Internal Energy for species *k* is
|
||||
*
|
||||
* \f[
|
||||
* \tilde{u}_k(T,P) = u^o_k(T,P) = u^{ref}_k(T)
|
||||
* \f]
|
||||
*
|
||||
* The partial molar Heat Capacity for species <I>k</I> is
|
||||
* The partial molar Heat Capacity for species *k* is
|
||||
*
|
||||
* \f[
|
||||
* \tilde{Cp}_k(T,P) = Cp^o_k(T,P) = Cp^{ref}_k(T)
|
||||
|
|
@ -126,9 +123,7 @@ namespace Cantera
|
|||
* only has a weak dependence on the enthalpy, and doesn't effect the molar
|
||||
* concentration.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> %Application within Kinetics Managers </H2>
|
||||
* <HR>
|
||||
* ## %Application within Kinetics Managers
|
||||
*
|
||||
* \f$ C^a_k\f$ are defined such that \f$ C^a_k = a_k = X_k \f$. \f$ C^s_k \f$,
|
||||
* the standard concentration, is defined to be equal to one. \f$ a_k \f$ are
|
||||
|
|
@ -141,7 +136,7 @@ namespace Cantera
|
|||
* C^a_k = C^s_k X_k = X_k
|
||||
* \f]
|
||||
*
|
||||
* The standard concentration for species <I>k</I> is identically one
|
||||
* The standard concentration for species *k* is identically one
|
||||
*
|
||||
* \f[
|
||||
* C^s_k = C^s = 1.0
|
||||
|
|
@ -183,9 +178,7 @@ namespace Cantera
|
|||
* K_c \f$, using the second and third part of the above expression as a
|
||||
* definition for the concentration equilibrium constant.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Instantiation of the Class </H2>
|
||||
* <HR>
|
||||
* ## Instantiation of the Class
|
||||
*
|
||||
* The constructor for this phase is located in the default ThermoFactory for
|
||||
* %Cantera. A new LatticePhase object may be created by the following code
|
||||
|
|
@ -208,9 +201,7 @@ namespace Cantera
|
|||
*
|
||||
* The XML file used in this example is listed in the next section
|
||||
*
|
||||
* <HR>
|
||||
* <H2> XML Example </H2>
|
||||
* <HR>
|
||||
* ## XML Example
|
||||
*
|
||||
* An example of an XML Element named phase setting up a LatticePhase object
|
||||
* named "O_lattice_SiO2" is given below.
|
||||
|
|
@ -412,9 +403,7 @@ public:
|
|||
*
|
||||
* @param k Optional parameter indicating the species. The default is to
|
||||
* assume this refers to species 0.
|
||||
* @return
|
||||
* Returns the standard Concentration in units of
|
||||
* m<SUP>3</SUP> kmol<SUP>-1</SUP>.
|
||||
* @return Returns the standard Concentration in units of m^3/kmol.
|
||||
*
|
||||
* @param k Species index
|
||||
*/
|
||||
|
|
@ -504,8 +493,8 @@ public:
|
|||
//@{
|
||||
|
||||
//! Get the nondimensional Enthalpy functions for the species standard
|
||||
//! states at their standard states at the current <I>T</I> and <I>P</I> of
|
||||
//! the solution.
|
||||
//! states at their standard states at the current *T* and *P* of the
|
||||
//! solution.
|
||||
/*!
|
||||
* A small pressure dependent term is added onto the reference state enthalpy
|
||||
* to get the pressure dependence of this term.
|
||||
|
|
@ -525,7 +514,7 @@ public:
|
|||
virtual void getEnthalpy_RT(doublereal* hrt) const;
|
||||
|
||||
//! Get the array of nondimensional Entropy functions for the species
|
||||
//! standard states at the current <I>T</I> and <I>P</I> of the solution.
|
||||
//! standard states at the current *T* and *P* of the solution.
|
||||
/*!
|
||||
* The entropy of the standard state is defined as independent of
|
||||
* pressure here.
|
||||
|
|
@ -545,7 +534,7 @@ public:
|
|||
virtual void getEntropy_R(doublereal* sr) const;
|
||||
|
||||
//! Get the nondimensional Gibbs functions for the species standard states
|
||||
//! at the current <I>T</I> and <I>P</I> of the solution.
|
||||
//! at the current *T* and *P* of the solution.
|
||||
/*!
|
||||
* The standard Gibbs free energies are obtained from the enthalpy and
|
||||
* entropy formulation.
|
||||
|
|
@ -560,8 +549,7 @@ public:
|
|||
virtual void getGibbs_RT(doublereal* grt) const;
|
||||
|
||||
//! Get the nondimensional Heat Capacities at constant pressure for the
|
||||
//! species standard states at the current <I>T</I> and <I>P</I> of the
|
||||
//! solution
|
||||
//! species standard states at the current *T* and *P* of the solution
|
||||
/*!
|
||||
* The heat capacity of the standard state is independent of pressure
|
||||
*
|
||||
|
|
@ -580,7 +568,7 @@ public:
|
|||
virtual void getCp_R(doublereal* cpr) const;
|
||||
|
||||
//! Get the molar volumes of the species standard states at the current
|
||||
//! <I>T</I> and <I>P</I> of the solution.
|
||||
//! *T* and *P* of the solution.
|
||||
/*!
|
||||
* units = m^3 / kmol
|
||||
*
|
||||
|
|
|
|||
|
|
@ -34,9 +34,7 @@ namespace Cantera
|
|||
* routine getMoleFraction() and setMoleFraction() have been redefined to use
|
||||
* this convention.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Specification of Species Standard State Properties </H2>
|
||||
* <HR>
|
||||
* ## Specification of Species Standard State Properties
|
||||
*
|
||||
* The standard state properties are calculated in the normal way for each of
|
||||
* the sublattices. The normal way here means that a thermodynamic polynomial in
|
||||
|
|
@ -44,9 +42,7 @@ namespace Cantera
|
|||
* pressure dependence is assumed. All of these properties are on a Joules per
|
||||
* kmol of sublattice constituent basis.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Specification of Solution Thermodynamic Properties </H2>
|
||||
* <HR>
|
||||
* ## Specification of Solution Thermodynamic Properties
|
||||
*
|
||||
* The sum over the LatticePhase objects is carried out by weighting each
|
||||
* LatticePhase object value with the molar density (kmol m-3) of its
|
||||
|
|
@ -74,9 +70,7 @@ namespace Cantera
|
|||
* sublattice will have a weight of 1.0 associated with it. The S sublattice
|
||||
* will have a weight of 2.0 associated with it.
|
||||
*
|
||||
* <HR>
|
||||
* <H3> Specification of Solution Density Properties </H3>
|
||||
* <HR>
|
||||
* ### Specification of Solution Density Properties
|
||||
*
|
||||
* Currently, molar density is not a constant within the object, even though the
|
||||
* species molar volumes are a constant. The basic idea is that a swelling of
|
||||
|
|
@ -149,7 +143,7 @@ public:
|
|||
* \tilde h(T,P) = {\sum_n \theta_n \tilde h_n(T,P) }
|
||||
* \f]
|
||||
*
|
||||
* \f$ \tilde h_n(T,P) \f$ is the enthalpy of the n<SUP>th</SUP> lattice.
|
||||
* \f$ \tilde h_n(T,P) \f$ is the enthalpy of the nth lattice.
|
||||
*
|
||||
* units J/kmol
|
||||
*/
|
||||
|
|
@ -164,8 +158,7 @@ public:
|
|||
* \tilde u(T,P) = {\sum_n \theta_n \tilde u_n(T,P) }
|
||||
* \f]
|
||||
*
|
||||
* \f$ \tilde u_n(T,P) \f$ is the internal energy of the n<SUP>th</SUP>
|
||||
* lattice.
|
||||
* \f$ \tilde u_n(T,P) \f$ is the internal energy of the nth lattice.
|
||||
*
|
||||
* units J/kmol
|
||||
*/
|
||||
|
|
@ -180,7 +173,7 @@ public:
|
|||
* \tilde s(T,P) = \sum_n \theta_n \tilde s_n(T,P)
|
||||
* \f]
|
||||
*
|
||||
* \f$ \tilde s_n(T,P) \f$ is the molar entropy of the n<SUP>th</SUP> lattice.
|
||||
* \f$ \tilde s_n(T,P) \f$ is the molar entropy of the nth lattice.
|
||||
*
|
||||
* units J/kmol/K
|
||||
*/
|
||||
|
|
@ -196,7 +189,7 @@ public:
|
|||
* \tilde h(T,P) = {\sum_n \theta_n \tilde h_n(T,P) }
|
||||
* \f]
|
||||
*
|
||||
* \f$ \tilde h_n(T,P) \f$ is the enthalpy of the n<SUP>th</SUP> lattice.
|
||||
* \f$ \tilde h_n(T,P) \f$ is the enthalpy of the nth lattice.
|
||||
*
|
||||
* units J/kmol
|
||||
*/
|
||||
|
|
@ -212,7 +205,7 @@ public:
|
|||
* \tilde c_{p,n}(T,P) = \frac{\sum_n C_n \tilde c_{p,n}(T,P) }{C_T},
|
||||
* \f]
|
||||
*
|
||||
* \f$ \tilde c_{p,n}(T,P) \f$ is the heat capacity of the n<SUP>th</SUP> lattice.
|
||||
* \f$ \tilde c_{p,n}(T,P) \f$ is the heat capacity of the nth lattice.
|
||||
*
|
||||
* units J/kmol/K
|
||||
*/
|
||||
|
|
@ -228,7 +221,7 @@ public:
|
|||
* \tilde c_{v,n}(T,P) = \frac{\sum_n C_n \tilde c_{v,n}(T,P) }{C_T},
|
||||
* \f]
|
||||
*
|
||||
* \f$ \tilde c_{v,n}(T,P) \f$ is the heat capacity of the n<SUP>th</SUP> lattice.
|
||||
* \f$ \tilde c_{v,n}(T,P) \f$ is the heat capacity of the nth lattice.
|
||||
*
|
||||
* units J/kmol/K
|
||||
*/
|
||||
|
|
@ -396,8 +389,8 @@ public:
|
|||
virtual void getPartialMolarVolumes(doublereal* vbar) const;
|
||||
|
||||
//! Get the array of standard state chemical potentials at unit activity for
|
||||
//! the species at their standard states at the current <I>T</I> and
|
||||
//! <I>P</I> of the solution.
|
||||
//! the species at their standard states at the current *T* and *P* of the
|
||||
//! solution.
|
||||
/*!
|
||||
* These are the standard state chemical potentials \f$ \mu^0_k(T,P) \f$.
|
||||
* The values are evaluated at the current temperature and pressure of the
|
||||
|
|
|
|||
|
|
@ -25,9 +25,7 @@ namespace Cantera
|
|||
*
|
||||
* The independent unknowns are pressure, temperature, and mass fraction.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Specification of Species Standard State Properties </H2>
|
||||
* <HR>
|
||||
* ## Specification of Species Standard State Properties
|
||||
*
|
||||
* All species are defined to have standard states that depend upon both the
|
||||
* temperature and the pressure. The Margules approximation assumes symmetric
|
||||
|
|
@ -36,15 +34,13 @@ namespace Cantera
|
|||
* don't think it prevents, however, some species from being dilute in the
|
||||
* solution.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Specification of Solution Thermodynamic Properties </H2>
|
||||
* <HR>
|
||||
* ## Specification of Solution Thermodynamic Properties
|
||||
*
|
||||
* The molar excess Gibbs free energy is given by the following formula which is
|
||||
* a sum over interactions <I>i</I>. Each of the interactions are binary
|
||||
* interactions involving two of the species in the phase, denoted, <I>Ai</I>
|
||||
* and <I>Bi</I>. This is the generalization of the Margules formulation for a
|
||||
* phase that has more than 2 species.
|
||||
* a sum over interactions *i*. Each of the interactions are binary interactions
|
||||
* involving two of the species in the phase, denoted, *Ai* and *Bi*. This is
|
||||
* the generalization of the Margules formulation for a phase that has more than
|
||||
* 2 species.
|
||||
*
|
||||
* \f[
|
||||
* G^E = \sum_i \left( H_{Ei} - T S_{Ei} \right)
|
||||
|
|
@ -81,47 +77,44 @@ namespace Cantera
|
|||
* where
|
||||
* \f$ g^E_{o,i} = h_{o,i} - T s_{o,i} \f$ and
|
||||
* \f$ g^E_{1,i} = h_{1,i} - T s_{1,i} \f$ and where
|
||||
* \f$ X_k \f$ is the mole fraction of species <I>k</I>.
|
||||
* \f$ X_k \f$ is the mole fraction of species *k*.
|
||||
*
|
||||
* This object inherits from the class VPStandardStateTP. Therefore, the
|
||||
* specification and calculation of all standard state and reference state
|
||||
* values are handled at that level. Various functional forms for the standard
|
||||
* state are permissible. The chemical potential for species <I>k</I> is equal
|
||||
* to
|
||||
* state are permissible. The chemical potential for species *k* is equal to
|
||||
*
|
||||
* \f[
|
||||
* \mu_k(T,P) = \mu^o_k(T, P) + R T \ln(\gamma_k X_k)
|
||||
* \f]
|
||||
*
|
||||
* The partial molar entropy for species <I>k</I> is given by
|
||||
* The partial molar entropy for species *k* is given by
|
||||
*
|
||||
* \f[
|
||||
* \tilde{s}_k(T,P) = s^o_k(T,P) - R \ln( \gamma_k X_k )
|
||||
* - R T \frac{d \ln(\gamma_k) }{dT}
|
||||
* \f]
|
||||
*
|
||||
* The partial molar enthalpy for species <I>k</I> is given by
|
||||
* The partial molar enthalpy for species *k* is given by
|
||||
*
|
||||
* \f[
|
||||
* \tilde{h}_k(T,P) = h^o_k(T,P) - R T^2 \frac{d \ln(\gamma_k)}{dT}
|
||||
* \f]
|
||||
*
|
||||
* The partial molar volume for species <I>k</I> is
|
||||
* The partial molar volume for species *k* is
|
||||
*
|
||||
* \f[
|
||||
* \tilde V_k(T,P) = V^o_k(T,P) + R T \frac{d \ln(\gamma_k) }{dP}
|
||||
* \f]
|
||||
*
|
||||
* The partial molar Heat Capacity for species <I>k</I> is
|
||||
* The partial molar Heat Capacity for species *k* is
|
||||
*
|
||||
* \f[
|
||||
* \tilde{C}_{p,k}(T,P) = C^o_{p,k}(T,P) - 2 R T \frac{d \ln( \gamma_k )}{dT}
|
||||
* - R T^2 \frac{d^2 \ln(\gamma_k) }{{dT}^2}
|
||||
* \f]
|
||||
*
|
||||
* <HR>
|
||||
* <H2> %Application within Kinetics Managers </H2>
|
||||
* <HR>
|
||||
* ## %Application within Kinetics Managers
|
||||
*
|
||||
* \f$ C^a_k\f$ are defined such that \f$ a_k = C^a_k / C^s_k, \f$ where
|
||||
* \f$ C^s_k \f$ is a standard concentration defined below and \f$ a_k \f$ are
|
||||
|
|
@ -134,7 +127,7 @@ namespace Cantera
|
|||
* C^a_k = C^s_k X_k = \frac{P}{R T} X_k
|
||||
* \f]
|
||||
*
|
||||
* The standard concentration for species <I>k</I> is independent of <I>k</I> and equal to
|
||||
* The standard concentration for species *k* is independent of *k* and equal to
|
||||
*
|
||||
* \f[
|
||||
* C^s_k = C^s = \frac{P}{R T}
|
||||
|
|
|
|||
|
|
@ -23,9 +23,9 @@ namespace Cantera
|
|||
//! aqueous electrolyte, that are consistent with the SHE reference electrode.
|
||||
/*!
|
||||
* The class is based on the electron having a chemical potential equal to one-
|
||||
* half of the entropy of the H<SUP>2</SUP> gas at the system pressure
|
||||
* half of the entropy of the H2 gas at the system pressure
|
||||
*
|
||||
* <b> Specification of Species Standard State Properties </b>
|
||||
* ## Specification of Species Standard State Properties
|
||||
*
|
||||
* This class inherits from SingleSpeciesTP. It is assumed that the reference
|
||||
* state thermodynamics may be obtained by a pointer to a populated species
|
||||
|
|
@ -73,12 +73,12 @@ namespace Cantera
|
|||
* u^o_k(T,P) = h^o_k(T) - R T
|
||||
* \f]
|
||||
*
|
||||
* <b> Specification of Solution Thermodynamic Properties </b>
|
||||
* ## Specification of Solution Thermodynamic Properties
|
||||
*
|
||||
* All solution properties are obtained from the standard state species
|
||||
* functions, since there is only one species in the phase.
|
||||
*
|
||||
* <b> %Application within Kinetics Managers </b>
|
||||
* ## %Application within Kinetics Managers
|
||||
*
|
||||
* The standard concentration is equal to 1.0. This means that the kinetics
|
||||
* operator works on an activities basis. Since this is a stoichiometric
|
||||
|
|
@ -90,7 +90,7 @@ namespace Cantera
|
|||
* is equal to 1/2 of the H2 gas chemical potential, and the voltage assigned to
|
||||
* the electron, which is the voltage of the metal.
|
||||
*
|
||||
* <b> Instantiation of the Class </b>
|
||||
* ## Instantiation of the Class
|
||||
*
|
||||
* The constructor for this phase is located in the default ThermoFactory for
|
||||
* %Cantera. A new MetalSHEelectrons object may be created by the following code
|
||||
|
|
@ -119,7 +119,7 @@ namespace Cantera
|
|||
* MetalSHEelectrons *eMetal = new MetalSHEelectrons("MetalSHEelectrons_default.xml", "");
|
||||
* @endcode
|
||||
*
|
||||
* <b> XML Example </b>
|
||||
* ## XML Example
|
||||
*
|
||||
* The phase model name for this is called MetalSHEelectrons. It must be
|
||||
* supplied as the model attribute of the thermo XML element entry. Within the
|
||||
|
|
@ -275,8 +275,7 @@ public:
|
|||
virtual doublereal logStandardConc(size_t k=0) const;
|
||||
|
||||
//! Get the array of chemical potentials at unit activity for the species at
|
||||
//! their standard states at the current <I>T</I> and <I>P</I> of the
|
||||
//! solution.
|
||||
//! their standard states at the current *T* and *P* of the solution.
|
||||
/*!
|
||||
* For a stoichiometric substance, there is no activity term in the chemical
|
||||
* potential expression, and therefore the standard chemical potential and
|
||||
|
|
@ -301,7 +300,7 @@ public:
|
|||
virtual void getCp_R(doublereal* cpr) const;
|
||||
|
||||
//! Returns the vector of nondimensional Internal Energies of the standard
|
||||
//! state species at the current <I>T</I> and <I>P</I> of the solution
|
||||
//! state species at the current *T* and *P* of the solution
|
||||
/*!
|
||||
* For an incompressible, stoichiometric substance, the molar internal
|
||||
* energy is independent of pressure. Since the thermodynamic properties are
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ namespace Cantera
|
|||
* This class inherits from SingleSpeciesTP class. EQ's parameterization is
|
||||
* mapped onto the Shomate polynomial class.
|
||||
*
|
||||
* <b> Specification of Species Standard State Properties </b>
|
||||
* ## Specification of Species Standard State Properties
|
||||
*
|
||||
* This class inherits from SingleSpeciesTP. It is assumed that the reference
|
||||
* state thermodynamics may be obtained by a pointer to a populated species
|
||||
|
|
@ -61,12 +61,12 @@ namespace Cantera
|
|||
* standard state Gibbs free energy is obtained from the enthalpy and entropy
|
||||
* functions.
|
||||
*
|
||||
* <b> Specification of Solution Thermodynamic Properties </b>
|
||||
* ## Specification of Solution Thermodynamic Properties
|
||||
*
|
||||
* All solution properties are obtained from the standard state species
|
||||
* functions, since there is only one species in the phase.
|
||||
*
|
||||
* <b> %Application within Kinetics Managers </b>
|
||||
* ## %Application within Kinetics Managers
|
||||
*
|
||||
* The standard concentration is equal to 1.0. This means that the kinetics
|
||||
* operator works on an (activities basis). Since this is a stoichiometric
|
||||
|
|
@ -187,8 +187,7 @@ public:
|
|||
virtual doublereal logStandardConc(size_t k=0) const;
|
||||
|
||||
//! Get the array of chemical potentials at unit activity for the species at
|
||||
//! their standard states at the current <I>T</I> and <I>P</I> of the
|
||||
//! solution.
|
||||
//! their standard states at the current *T* and *P* of the solution.
|
||||
/*!
|
||||
* For a stoichiometric substance, there is no activity term in the chemical
|
||||
* potential expression, and therefore the standard chemical potential and
|
||||
|
|
@ -213,7 +212,7 @@ public:
|
|||
virtual void getCp_R(doublereal* cpr) const;
|
||||
|
||||
//! Returns the vector of nondimensional Internal Energies of the standard
|
||||
//! state species at the current <I>T</I> and <I>P</I> of the solution
|
||||
//! state species at the current *T* and *P* of the solution
|
||||
/*!
|
||||
* For an incompressible, stoichiometric substance, the molar internal
|
||||
* energy is independent of pressure. Since the thermodynamic properties are
|
||||
|
|
|
|||
|
|
@ -23,9 +23,7 @@ namespace Cantera
|
|||
*
|
||||
* The independent unknowns are pressure, temperature, and mass fraction.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Specification of Species Standard State Properties </H2>
|
||||
* <HR>
|
||||
* ## Specification of Species Standard State Properties
|
||||
*
|
||||
* All species are defined to have standard states that depend upon both the
|
||||
* temperature and the pressure. The Margules approximation assumes symmetric
|
||||
|
|
@ -34,15 +32,13 @@ namespace Cantera
|
|||
* don't think it prevents, however, some species from being dilute in the
|
||||
* solution.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Specification of Solution Thermodynamic Properties </H2>
|
||||
* <HR>
|
||||
* ## Specification of Solution Thermodynamic Properties
|
||||
*
|
||||
* The molar excess Gibbs free energy is given by the following formula which is
|
||||
* a sum over interactions <I>i</I>. Each of the interactions are binary
|
||||
* interactions involving two of the species in the phase, denoted, <I>Ai</I>
|
||||
* and <I>Bi</I>. This is the generalization of the Margules formulation for a
|
||||
* phase that has more than 2 species.
|
||||
* a sum over interactions *i*. Each of the interactions are binary interactions
|
||||
* involving two of the species in the phase, denoted, *Ai* and *Bi*. This is
|
||||
* the generalization of the Margules formulation for a phase that has more than
|
||||
* 2 species.
|
||||
*
|
||||
* \f[
|
||||
* G^E = \sum_i \left( H_{Ei} - T S_{Ei} \right)
|
||||
|
|
@ -78,47 +74,44 @@ namespace Cantera
|
|||
* \f]
|
||||
* where \f$ g^E_{o,i} = h_{o,i} - T s_{o,i} \f$ and
|
||||
* \f$ g^E_{1,i} = h_{1,i} - T s_{1,i} \f$ and where \f$ X_k \f$ is the mole
|
||||
* fraction of species <I>k</I>.
|
||||
* fraction of species *k*.
|
||||
*
|
||||
* This object inherits from the class VPStandardStateTP. Therefore, the
|
||||
* specification and calculation of all standard state and reference state
|
||||
* values are handled at that level. Various functional forms for the standard
|
||||
* state are permissible. The chemical potential for species <I>k</I> is equal
|
||||
* to
|
||||
* state are permissible. The chemical potential for species *k* is equal to
|
||||
*
|
||||
* \f[
|
||||
* \mu_k(T,P) = \mu^o_k(T, P) + R T \ln(\gamma_k X_k)
|
||||
* \f]
|
||||
*
|
||||
* The partial molar entropy for species <I>k</I> is given by the following relation,
|
||||
* The partial molar entropy for species *k* is given by the following relation,
|
||||
*
|
||||
* \f[
|
||||
* \tilde{s}_k(T,P) = s^o_k(T,P) - R \ln( \gamma_k X_k )
|
||||
* - R T \frac{d \ln(\gamma_k) }{dT}
|
||||
* \f]
|
||||
*
|
||||
* The partial molar enthalpy for species <I>k</I> is given by
|
||||
* The partial molar enthalpy for species *k* is given by
|
||||
*
|
||||
* \f[
|
||||
* \tilde{h}_k(T,P) = h^o_k(T,P) - R T^2 \frac{d \ln(\gamma_k)}{dT}
|
||||
* \f]
|
||||
*
|
||||
* The partial molar volume for species <I>k</I> is
|
||||
* The partial molar volume for species *k* is
|
||||
*
|
||||
* \f[
|
||||
* \tilde V_k(T,P) = V^o_k(T,P) + R T \frac{d \ln(\gamma_k) }{dP}
|
||||
* \f]
|
||||
*
|
||||
* The partial molar Heat Capacity for species <I>k</I> is
|
||||
* The partial molar Heat Capacity for species *k* is
|
||||
*
|
||||
* \f[
|
||||
* \tilde{C}_{p,k}(T,P) = C^o_{p,k}(T,P) - 2 R T \frac{d \ln( \gamma_k )}{dT}
|
||||
* - R T^2 \frac{d^2 \ln(\gamma_k) }{{dT}^2}
|
||||
* \f]
|
||||
*
|
||||
* <HR>
|
||||
* <H2> %Application within Kinetics Managers </H2>
|
||||
* <HR>
|
||||
* ## %Application within Kinetics Managers
|
||||
*
|
||||
* \f$ C^a_k\f$ are defined such that \f$ a_k = C^a_k / C^s_k, \f$ where
|
||||
* \f$ C^s_k \f$ is a standard concentration defined below and \f$ a_k \f$ are
|
||||
|
|
@ -131,8 +124,7 @@ namespace Cantera
|
|||
* C^a_k = C^s_k X_k = \frac{P}{R T} X_k
|
||||
* \f]
|
||||
*
|
||||
* The standard concentration for species <I>k</I> is independent of <I>k</I>
|
||||
* and equal to
|
||||
* The standard concentration for species *k* is independent of *k* and equal to
|
||||
*
|
||||
* \f[
|
||||
* C^s_k = C^s = \frac{P}{R T}
|
||||
|
|
|
|||
|
|
@ -157,7 +157,7 @@ public:
|
|||
virtual void getStandardChemPotentials(doublereal* mu) const;
|
||||
|
||||
//! Get the nondimensional Enthalpy functions for the species at their
|
||||
//! standard states at the current <I>T</I> and <I>P</I> of the solution.
|
||||
//! standard states at the current *T* and *P* of the solution.
|
||||
/*!
|
||||
* For all objects with the Mixture Fugacity approximation, we define the
|
||||
* standard state as an ideal gas at the current temperature and pressure
|
||||
|
|
@ -169,7 +169,7 @@ public:
|
|||
virtual void getEnthalpy_RT(doublereal* hrt) const;
|
||||
|
||||
//! Get the array of nondimensional Enthalpy functions for the standard
|
||||
//! state species at the current <I>T</I> and <I>P</I> of the solution.
|
||||
//! state species at the current *T* and *P* of the solution.
|
||||
/*!
|
||||
* For all objects with the Mixture Fugacity approximation, we define the
|
||||
* standard state as an ideal gas at the current temperature and pressure of
|
||||
|
|
@ -233,7 +233,7 @@ public:
|
|||
virtual void getCp_R(doublereal* cpr) const;
|
||||
|
||||
//! Get the molar volumes of each species in their standard states at the
|
||||
//! current <I>T</I> and <I>P</I> of the solution.
|
||||
//! current *T* and *P* of the solution.
|
||||
/*!
|
||||
* For all objects with the Mixture Fugacity approximation, we define the
|
||||
* standard state as an ideal gas at the current temperature and pressure of
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ namespace Cantera
|
|||
* member function, ThermoPhase::activityConvention() that indicates which
|
||||
* convention the activities are based on. The default is to assume activities
|
||||
* are based on the molar convention. However, classes which derive from the
|
||||
* MolalityVPSSTP class return <b>cAC_CONVENTION_MOLALITY</b> from this member
|
||||
* MolalityVPSSTP class return `cAC_CONVENTION_MOLALITY` from this member
|
||||
* function.
|
||||
*
|
||||
* The molality of a solute, \f$ m_i \f$, is defined as
|
||||
|
|
@ -50,7 +50,7 @@ namespace Cantera
|
|||
* \f]
|
||||
*
|
||||
* where \f$ M_o \f$ is the molecular weight of the solvent. The molality has
|
||||
* units of gmol kg<SUP>-1</SUP>. For the solute, the molality may be considered
|
||||
* units of gmol/kg. For the solute, the molality may be considered
|
||||
* as the amount of gmol's of solute per kg of solvent, a natural experimental
|
||||
* quantity.
|
||||
*
|
||||
|
|
@ -69,9 +69,9 @@ namespace Cantera
|
|||
* X_i = \frac{m_i}{L^{sum}}
|
||||
* \f]
|
||||
* where \f$ X_o \f$ is the mole fraction of solvent, and \f$ X_o \f$ is the
|
||||
* mole fraction of solute <I>i</I>. Thus, the molality scale and the mole
|
||||
* fraction scale offer a one-to-one mapping between each other, except in the
|
||||
* limit of a zero solvent mole fraction.
|
||||
* mole fraction of solute *i*. Thus, the molality scale and the mole fraction
|
||||
* scale offer a one-to-one mapping between each other, except in the limit of a
|
||||
* zero solvent mole fraction.
|
||||
*
|
||||
* The standard states for thermodynamic objects that derive from MolalityVPSSTP
|
||||
* are on the unit molality basis. Chemical potentials of the solutes, \f$ \mu_k
|
||||
|
|
@ -128,7 +128,7 @@ namespace Cantera
|
|||
* functions which return activities return the molality-based activities. The
|
||||
* reason for this convention has been discussed in supporting memos. However,
|
||||
* it's important because the term in the equation above is non-trivial. For
|
||||
* example it's equal to 2.38 kcal gmol<SUP>-1</SUP> for water at 298 K.
|
||||
* example it's equal to 2.38 kcal/gmol for water at 298 K.
|
||||
*
|
||||
* In order to prevent a singularity, this class includes the concept of a
|
||||
* minimum value for the solvent mole fraction. All calculations involving the
|
||||
|
|
@ -166,7 +166,7 @@ namespace Cantera
|
|||
* defined as the raw unscaled activity coefficients produced by the underlying
|
||||
* objects.
|
||||
*
|
||||
* <H3> SetState Strategy </H3>
|
||||
* ### SetState Strategy
|
||||
*
|
||||
* The MolalityVPSSTP object does not have a setState strategy concerning the
|
||||
* molalities. It does not keep track of whether the molalities have changed.
|
||||
|
|
|
|||
|
|
@ -160,7 +160,7 @@ class VPSSMgr;
|
|||
* recalculates the standard state when the setState functions for temperature
|
||||
* and pressure are called.
|
||||
*
|
||||
* <H3> Thread Safety </H3>
|
||||
* ### Thread Safety
|
||||
*
|
||||
* These classes are designed such that they are not thread safe when called by
|
||||
* themselves. The reason for this is that they sometimes use shared
|
||||
|
|
|
|||
|
|
@ -92,12 +92,11 @@ public:
|
|||
* \frac{\mu^o_k}{RT} = \sum_{m}{ \alpha_{m , k} \frac{\mu^o_{m}}{RT}} + ( 1 - \delta_{k,sp}) 2.0 \ln{2.0}
|
||||
* \f]
|
||||
*
|
||||
* <I>m</I> is the neutral molecule species index. \f$ \alpha_{m , k} \f$ is
|
||||
* the stoiciometric coefficient for the neutral molecule, <I>m</I>, that
|
||||
* creates the thermodynamics for the ionic species <I>k</I>. A factor \f$
|
||||
* 2.0 \ln{2.0} \f$ is added to all ions except for the species ionic
|
||||
* species, which in this case is the single anion species, with species
|
||||
* index <I>sp</I>.
|
||||
* *m* is the neutral molecule species index. \f$ \alpha_{m , k} \f$ is the
|
||||
* stoiciometric coefficient for the neutral molecule, *m*, that creates the
|
||||
* thermodynamics for the ionic species *k*. A factor \f$ 2.0 \ln{2.0} \f$
|
||||
* is added to all ions except for the species ionic species, which in this
|
||||
* case is the single anion species, with species index *sp*.
|
||||
*/
|
||||
virtual doublereal gibbs_RT() const;
|
||||
virtual doublereal cp_R() const;
|
||||
|
|
|
|||
|
|
@ -57,9 +57,9 @@ namespace Cantera
|
|||
* {\rho}^o_k(T,P) = \frac{M_k}{V^o_k(T,P)} = a_0 + a_1 T + a_2 T^2 + a_3 T^3 + a_4 T^4
|
||||
* \f]
|
||||
*
|
||||
* <b> Specification of Species Standard State Properties </b>
|
||||
* ## Specification of Species Standard State Properties
|
||||
*
|
||||
* The standard molar Gibbs free energy for species <I>k</I> is determined from
|
||||
* The standard molar Gibbs free energy for species *k* is determined from
|
||||
* the enthalpy and entropy expressions
|
||||
*
|
||||
* \f[
|
||||
|
|
@ -94,14 +94,14 @@ namespace Cantera
|
|||
* {\left(\frac{d{C}^o_{p,k}}{dP}\right)}_T = - T {\left(\frac{{d}^2{V}^o_k}{{dT}^2}\right)}_T
|
||||
* \f]
|
||||
*
|
||||
* The standard molar Internal Energy for species <I>k</I> is determined from the following
|
||||
* relation.
|
||||
* The standard molar Internal Energy for species *k* is determined from the
|
||||
* following relation.
|
||||
*
|
||||
* \f[
|
||||
* U^o_k(T,P) = H^o_k(T,P) - p V^o_k
|
||||
* \f]
|
||||
*
|
||||
* <b> XML Example </b>
|
||||
* ## XML Example
|
||||
*
|
||||
* An example of the specification of a standard state for the LiCl molten salt
|
||||
* which employs a constant molar volume expression.
|
||||
|
|
|
|||
|
|
@ -45,9 +45,7 @@ namespace Cantera
|
|||
* phase behaves more like a series of phases. That's why we named it
|
||||
* PhaseCombo.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Specification of Species Standard State Properties </H2>
|
||||
* <HR>
|
||||
* ## Specification of Species Standard State Properties
|
||||
*
|
||||
* All species are defined to have standard states that depend upon both the
|
||||
* temperature and the pressure. The Margules approximation assumes symmetric
|
||||
|
|
@ -56,16 +54,14 @@ namespace Cantera
|
|||
* don't think it prevents, however, some species from being dilute in the
|
||||
* solution.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Specification of Solution Thermodynamic Properties </H2>
|
||||
* <HR>
|
||||
* ## Specification of Solution Thermodynamic Properties
|
||||
*
|
||||
* The molar excess Gibbs free energy is given by the following formula which is
|
||||
* a sum over interactions <I>i</I>. Each of the interactions are binary
|
||||
* interactions involving two of the species in the phase, denoted, <I>Ai</I>
|
||||
* and <I>Bi</I>. This is the generalization of the Margules formulation for a
|
||||
* phase that has more than 2 species. The second term in the excess Gibbs free
|
||||
* energy is a negation of the ideal solution's mixing term.
|
||||
* a sum over interactions *i*. Each of the interactions are binary interactions
|
||||
* involving two of the species in the phase, denoted, *Ai* and *Bi*. This is
|
||||
* the generalization of the Margules formulation for a phase that has more than
|
||||
* 2 species. The second term in the excess Gibbs free energy is a negation of
|
||||
* the ideal solution's mixing term.
|
||||
*
|
||||
* \f[
|
||||
* G^E = \sum_i \left( H_{Ei} - T S_{Ei} \right) - \sum_i \left( n_i R T \ln{X_i} \right)
|
||||
|
|
@ -100,48 +96,44 @@ namespace Cantera
|
|||
*
|
||||
* where \f$ g^E_{o,i} = h_{o,i} - T s_{o,i} \f$ and
|
||||
* \f$ g^E_{1,i} = h_{1,i} - T s_{1,i} \f$ and where \f$ X_k \f$ is the mole
|
||||
* fraction of species <I>k</I>.
|
||||
* fraction of species *k*.
|
||||
*
|
||||
* This object inherits from the class VPStandardStateTP. Therefore, the
|
||||
* specification and calculation of all standard state and reference state
|
||||
* values are handled at that level. Various functional forms for the standard
|
||||
* state are permissible. The chemical potential for species <I>k</I> is equal
|
||||
* to
|
||||
* state are permissible. The chemical potential for species *k* is equal to
|
||||
*
|
||||
* \f[
|
||||
* \mu_k(T,P) = \mu^o_k(T, P) + R T \ln(\gamma_k X_k)
|
||||
* \f]
|
||||
*
|
||||
* The partial molar entropy for species <I>k</I> is given by the following
|
||||
* relation,
|
||||
* The partial molar entropy for species *k* is given by the following relation,
|
||||
*
|
||||
* \f[
|
||||
* \tilde{s}_k(T,P) = s^o_k(T,P) - R \ln( \gamma_k X_k )
|
||||
* - R T \frac{d \ln(\gamma_k) }{dT}
|
||||
* \f]
|
||||
*
|
||||
* The partial molar enthalpy for species <I>k</I> is given by
|
||||
* The partial molar enthalpy for species *k* is given by
|
||||
*
|
||||
* \f[
|
||||
* \tilde{h}_k(T,P) = h^o_k(T,P) - R T^2 \frac{d \ln(\gamma_k)}{dT}
|
||||
* \f]
|
||||
*
|
||||
* The partial molar volume for species <I>k</I> is
|
||||
* The partial molar volume for species *k* is
|
||||
*
|
||||
* \f[
|
||||
* \tilde V_k(T,P) = V^o_k(T,P) + R T \frac{d \ln(\gamma_k) }{dP}
|
||||
* \f]
|
||||
*
|
||||
* The partial molar Heat Capacity for species <I>k</I> is
|
||||
* The partial molar Heat Capacity for species *k* is
|
||||
*
|
||||
* \f[
|
||||
* \tilde{C}_{p,k}(T,P) = C^o_{p,k}(T,P) - 2 R T \frac{d \ln( \gamma_k )}{dT}
|
||||
* - R T^2 \frac{d^2 \ln(\gamma_k) }{{dT}^2}
|
||||
* \f]
|
||||
*
|
||||
* <HR>
|
||||
* <H2> %Application within Kinetics Managers </H2>
|
||||
* <HR>
|
||||
* ## %Application within Kinetics Managers
|
||||
*
|
||||
* \f$ C^a_k\f$ are defined such that \f$ a_k = C^a_k / C^s_k, \f$ where
|
||||
* \f$ C^s_k \f$ is a standard concentration defined below and \f$ a_k \f$ are
|
||||
|
|
@ -154,8 +146,7 @@ namespace Cantera
|
|||
* C^a_k = C^s_k X_k = \frac{P}{R T} X_k
|
||||
* \f]
|
||||
*
|
||||
* The standard concentration for species <I>k</I> is independent of <I>k</I>
|
||||
* and equal to
|
||||
* The standard concentration for species *k* is independent of *k* and equal to
|
||||
*
|
||||
* \f[
|
||||
* C^s_k = C^s = \frac{P}{R T}
|
||||
|
|
@ -240,9 +231,7 @@ namespace Cantera
|
|||
*
|
||||
* \f$k^{-1} \f$ has units of s-1.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Instantiation of the Class </H2>
|
||||
* <HR>
|
||||
* ## Instantiation of the Class
|
||||
*
|
||||
* The constructor for this phase is located in the default ThermoFactory for
|
||||
* %Cantera. A new PhaseCombo_Interaction object may be created by the following
|
||||
|
|
@ -271,9 +260,8 @@ namespace Cantera
|
|||
* PhaseCombo_Interaction *LiFeS_X_solid = new PhaseCombo_Interaction(*xs);
|
||||
* @endcode
|
||||
*
|
||||
* <HR>
|
||||
* <H2> XML Example </H2>
|
||||
* <HR>
|
||||
* ## XML Example
|
||||
*
|
||||
* An example of an XML Element named phase setting up a PhaseCombo_Interaction
|
||||
* object named LiFeS_X is given below.
|
||||
*
|
||||
|
|
|
|||
|
|
@ -26,9 +26,7 @@ namespace Cantera
|
|||
*
|
||||
* The independent unknowns are pressure, temperature, and mass fraction.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Specification of Species Standard State Properties </H2>
|
||||
* <HR>
|
||||
* ## Specification of Species Standard State Properties
|
||||
*
|
||||
* All species are defined to have standard states that depend upon both the
|
||||
* temperature and the pressure. The Redlich-Kister approximation assumes
|
||||
|
|
@ -37,15 +35,13 @@ namespace Cantera
|
|||
* solution. I don't think it prevents, however, some species from being dilute
|
||||
* in the solution.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Specification of Solution Thermodynamic Properties </H2>
|
||||
* <HR>
|
||||
* ## Specification of Solution Thermodynamic Properties
|
||||
*
|
||||
* The molar excess Gibbs free energy is given by the following formula which is
|
||||
* a sum over interactions <I>i</I>. Each of the interactions are binary
|
||||
* interactions involving two of the species in the phase, denoted, <I>Ai</I>
|
||||
* and <I>Bi</I>. This is the generalization of the Redlich-Kister formulation
|
||||
* for a phase that has more than 2 species.
|
||||
* a sum over interactions *i*. Each of the interactions are binary interactions
|
||||
* involving two of the species in the phase, denoted, *Ai* and *Bi*. This is
|
||||
* the generalization of the Redlich-Kister formulation for a phase that has
|
||||
* more than 2 species.
|
||||
*
|
||||
* \f[
|
||||
* G^E = \sum_{i} G^E_{i}
|
||||
|
|
@ -89,43 +85,39 @@ namespace Cantera
|
|||
* This object inherits from the class VPStandardStateTP. Therefore, the
|
||||
* specification and calculation of all standard state and reference state
|
||||
* values are handled at that level. Various functional forms for the standard
|
||||
* state are permissible. The chemical potential for species <I>k</I> is equal
|
||||
* to
|
||||
* state are permissible. The chemical potential for species *k* is equal to
|
||||
*
|
||||
* \f[
|
||||
* \mu_k(T,P) = \mu^o_k(T, P) + R T \ln(\gamma_k X_k)
|
||||
* \f]
|
||||
*
|
||||
* The partial molar entropy for species <I>k</I> is given by the following
|
||||
* relation,
|
||||
* The partial molar entropy for species *k* is given by the following relation,
|
||||
*
|
||||
* \f[
|
||||
* \tilde{s}_k(T,P) = s^o_k(T,P) - R \ln( \gamma_k X_k )
|
||||
* - R T \frac{d \ln(\gamma_k) }{dT}
|
||||
* \f]
|
||||
*
|
||||
* The partial molar enthalpy for species <I>k</I> is given by
|
||||
* The partial molar enthalpy for species *k* is given by
|
||||
*
|
||||
* \f[
|
||||
* \tilde{h}_k(T,P) = h^o_k(T,P) - R T^2 \frac{d \ln(\gamma_k)}{dT}
|
||||
* \f]
|
||||
*
|
||||
* The partial molar volume for species <I>k</I> is
|
||||
* The partial molar volume for species *k* is
|
||||
*
|
||||
* \f[
|
||||
* \tilde V_k(T,P) = V^o_k(T,P) + R T \frac{d \ln(\gamma_k) }{dP}
|
||||
* \f]
|
||||
*
|
||||
* The partial molar Heat Capacity for species <I>k</I> is
|
||||
* The partial molar Heat Capacity for species *k* is
|
||||
*
|
||||
* \f[
|
||||
* \tilde{C}_{p,k}(T,P) = C^o_{p,k}(T,P) - 2 R T \frac{d \ln( \gamma_k )}{dT}
|
||||
* - R T^2 \frac{d^2 \ln(\gamma_k) }{{dT}^2}
|
||||
* \f]
|
||||
*
|
||||
* <HR>
|
||||
* <H2> %Application within Kinetics Managers </H2>
|
||||
* <HR>
|
||||
* ## %Application within Kinetics Managers
|
||||
*
|
||||
* \f$ C^a_k\f$ are defined such that \f$ a_k = C^a_k / C^s_k, \f$ where
|
||||
* \f$ C^s_k \f$ is a standard concentration defined below and \f$ a_k \f$ are
|
||||
|
|
@ -138,8 +130,7 @@ namespace Cantera
|
|||
* C^a_k = C^s_k X_k = \frac{P}{R T} X_k
|
||||
* \f]
|
||||
*
|
||||
* The standard concentration for species <I>k</I> is independent of <I>k</I>
|
||||
* and equal to
|
||||
* The standard concentration for species *k* is independent of *k* and equal to
|
||||
*
|
||||
* \f[
|
||||
* C^s_k = C^s = \frac{P}{R T}
|
||||
|
|
|
|||
|
|
@ -203,7 +203,7 @@ public:
|
|||
virtual void getPureGibbs(doublereal* gpure) const;
|
||||
|
||||
//! Get the molar volumes of each species in their standard states at the
|
||||
//! current <I>T</I> and <I>P</I> of the solution.
|
||||
//! current *T* and *P* of the solution.
|
||||
/*!
|
||||
* units = m^3 / kmol
|
||||
*
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ namespace Cantera
|
|||
* to pressure. This is necessary because the phase is incompressible. It uses a
|
||||
* constant volume approximation.
|
||||
*
|
||||
* <b> Specification of Species Standard State Properties </b>
|
||||
* ## Specification of Species Standard State Properties
|
||||
*
|
||||
* This class inherits from SingleSpeciesTP. It is assumed that the reference
|
||||
* state thermodynamics may be obtained by a pointer to a populated species
|
||||
|
|
@ -60,12 +60,12 @@ namespace Cantera
|
|||
* standard state Gibbs free energy is obtained from the enthalpy and entropy
|
||||
* functions.
|
||||
*
|
||||
* <b> Specification of Solution Thermodynamic Properties </b>
|
||||
* ## Specification of Solution Thermodynamic Properties
|
||||
*
|
||||
* All solution properties are obtained from the standard state species
|
||||
* functions, since there is only one species in the phase.
|
||||
*
|
||||
* <b> Application within Kinetics Managers </b>
|
||||
* ## Application within Kinetics Managers
|
||||
*
|
||||
* The standard concentration is equal to 1.0. This means that the kinetics
|
||||
* operator works on an (activities basis). Since this is a stoichiometric
|
||||
|
|
@ -85,7 +85,7 @@ namespace Cantera
|
|||
* constant expression, since it's a stoichiometric phase and the activity is
|
||||
* always equal to 1.0.
|
||||
*
|
||||
* <b> Instantiation of the Class </b>
|
||||
* ## Instantiation of the Class
|
||||
*
|
||||
* The constructor for this phase is NOT located in the default ThermoFactory
|
||||
* for %Cantera. However, a new StoichSubstance may be created by
|
||||
|
|
@ -104,7 +104,7 @@ namespace Cantera
|
|||
* importPhase(*xm, &solid);
|
||||
* @endcode
|
||||
*
|
||||
* <b> XML Example </b>
|
||||
* ## XML Example
|
||||
*
|
||||
* The phase model name for this is called StoichSubstance. It must be supplied
|
||||
* as the model attribute of the thermo XML element entry. Within the phase XML
|
||||
|
|
@ -246,9 +246,8 @@ public:
|
|||
virtual doublereal standardConcentration(size_t k=0) const;
|
||||
virtual doublereal logStandardConc(size_t k=0) const;
|
||||
|
||||
//! Get the array of chemical potentials at unit activity for the species
|
||||
//! at their standard states at the current <I>T</I> and <I>P</I> of the
|
||||
//! solution.
|
||||
//! Get the array of chemical potentials at unit activity for the species at
|
||||
//! their standard states at the current *T* and *P* of the solution.
|
||||
/*!
|
||||
* For a stoichiometric substance, there is no activity term in the chemical
|
||||
* potential expression, and therefore the standard chemical potential and
|
||||
|
|
@ -273,7 +272,7 @@ public:
|
|||
virtual void getCp_R(doublereal* cpr) const;
|
||||
|
||||
//! Returns the vector of nondimensional Internal Energies of the standard
|
||||
//! state species at the current <I>T</I> and <I>P</I> of the solution
|
||||
//! state species at the current *T* and *P* of the solution
|
||||
/*!
|
||||
* For an incompressible, stoichiometric substance, the molar internal
|
||||
* energy is independent of pressure. Since the thermodynamic properties
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ namespace Cantera
|
|||
* The density of surface sites is given by the variable \f$ n_0 \f$,
|
||||
* which has SI units of kmol m-2.
|
||||
*
|
||||
* <b> Specification of Species Standard State Properties </b>
|
||||
* ## Specification of Species Standard State Properties
|
||||
*
|
||||
* It is assumed that the reference state thermodynamics may be obtained by a
|
||||
* pointer to a populated species thermodynamic property manager class (see
|
||||
|
|
@ -37,8 +37,8 @@ namespace Cantera
|
|||
* Pressure is defined as an independent variable in this phase. However, it has
|
||||
* no effect on any quantities, as the molar concentration is a constant.
|
||||
*
|
||||
* Therefore, The standard state internal energy for species <I>k</I> is
|
||||
* equal to the enthalpy for species <I>k</I>.
|
||||
* Therefore, The standard state internal energy for species *k* is equal to the
|
||||
* enthalpy for species *k*.
|
||||
*
|
||||
* \f[
|
||||
* u^o_k = h^o_k
|
||||
|
|
@ -48,14 +48,14 @@ namespace Cantera
|
|||
* are independent of pressure. The standard state Gibbs free energy is obtained
|
||||
* from the enthalpy and entropy functions.
|
||||
*
|
||||
* <b> Specification of Solution Thermodynamic Properties </b>
|
||||
* ## Specification of Solution Thermodynamic Properties
|
||||
*
|
||||
* The activity of species defined in the phase is given by
|
||||
* \f[
|
||||
* a_k = \theta_k
|
||||
* \f]
|
||||
*
|
||||
* The chemical potential for species <I>k</I> is equal to
|
||||
* The chemical potential for species *k* is equal to
|
||||
* \f[
|
||||
* \mu_k(T,P) = \mu^o_k(T) + R T \log(\theta_k)
|
||||
* \f]
|
||||
|
|
@ -63,7 +63,7 @@ namespace Cantera
|
|||
* Pressure is defined as an independent variable in this phase. However, it has
|
||||
* no effect on any quantities, as the molar concentration is a constant.
|
||||
*
|
||||
* The internal energy for species k is equal to the enthalpy for species <I>k</I>
|
||||
* The internal energy for species k is equal to the enthalpy for species *k*
|
||||
* \f[
|
||||
* u_k = h_k
|
||||
* \f]
|
||||
|
|
@ -75,7 +75,7 @@ namespace Cantera
|
|||
* s_k(T,P) = s^o_k(T) - R \log(\theta_k)
|
||||
* \f]
|
||||
*
|
||||
* <b> %Application within Kinetics Managers </b>
|
||||
* ## %Application within Kinetics Managers
|
||||
*
|
||||
* The activity concentration,\f$ C^a_k \f$, used by the kinetics manager, is equal to
|
||||
* the actual concentration, \f$ C^s_k \f$, and is given by the following
|
||||
|
|
@ -84,12 +84,12 @@ namespace Cantera
|
|||
* C^a_k = C^s_k = \frac{\theta_k n_0}{s_k}
|
||||
* \f]
|
||||
*
|
||||
* The standard concentration for species <I>k</I> is:
|
||||
* The standard concentration for species *k* is:
|
||||
* \f[
|
||||
* C^0_k = \frac{n_0}{s_k}
|
||||
* \f]
|
||||
*
|
||||
* <b> Instantiation of the Class </b>
|
||||
* ## Instantiation of the Class
|
||||
*
|
||||
* The constructor for this phase is located in the default ThermoFactory
|
||||
* for %Cantera. A new SurfPhase may be created by the following code snippet:
|
||||
|
|
@ -109,7 +109,7 @@ namespace Cantera
|
|||
* SurfPhase *diamond100TP = new SurfPhase(*xs);
|
||||
* @endcode
|
||||
*
|
||||
* <b> XML Example </b>
|
||||
* ## XML Example
|
||||
*
|
||||
* An example of an XML Element named phase setting up a SurfPhase object named
|
||||
* diamond_100 is given below.
|
||||
|
|
|
|||
|
|
@ -542,8 +542,7 @@ public:
|
|||
//@{
|
||||
|
||||
//! Get the array of chemical potentials at unit activity for the species at
|
||||
//! their standard states at the current <I>T</I> and <I>P</I> of the
|
||||
//! solution.
|
||||
//! their standard states at the current *T* and *P* of the solution.
|
||||
/*!
|
||||
* These are the standard state chemical potentials \f$ \mu^0_k(T,P)
|
||||
* \f$. The values are evaluated at the current temperature and pressure of
|
||||
|
|
@ -557,7 +556,7 @@ public:
|
|||
}
|
||||
|
||||
//! Get the nondimensional Enthalpy functions for the species at their
|
||||
//! standard states at the current <I>T</I> and <I>P</I> of the solution.
|
||||
//! standard states at the current *T* and *P* of the solution.
|
||||
/*!
|
||||
* @param hrt Output vector of nondimensional standard state enthalpies.
|
||||
* Length: m_kk.
|
||||
|
|
@ -567,7 +566,7 @@ public:
|
|||
}
|
||||
|
||||
//! Get the array of nondimensional Entropy functions for the standard state
|
||||
//! species at the current <I>T</I> and <I>P</I> of the solution.
|
||||
//! species at the current *T* and *P* of the solution.
|
||||
/*!
|
||||
* @param sr Output vector of nondimensional standard state entropies.
|
||||
* Length: m_kk.
|
||||
|
|
@ -577,7 +576,7 @@ public:
|
|||
}
|
||||
|
||||
//! Get the nondimensional Gibbs functions for the species in their standard
|
||||
//! states at the current <I>T</I> and <I>P</I> of the solution.
|
||||
//! states at the current *T* and *P* of the solution.
|
||||
/*!
|
||||
* @param grt Output vector of nondimensional standard state Gibbs free
|
||||
* energies. Length: m_kk.
|
||||
|
|
@ -587,7 +586,7 @@ public:
|
|||
}
|
||||
|
||||
//! Get the Gibbs functions for the standard state of the species at the
|
||||
//! current <I>T</I> and <I>P</I> of the solution
|
||||
//! current *T* and *P* of the solution
|
||||
/*!
|
||||
* Units are Joules/kmol
|
||||
* @param gpure Output vector of standard state Gibbs free energies.
|
||||
|
|
@ -598,7 +597,7 @@ public:
|
|||
}
|
||||
|
||||
//! Returns the vector of nondimensional Internal Energies of the standard
|
||||
//! state species at the current <I>T</I> and <I>P</I> of the solution
|
||||
//! state species at the current *T* and *P* of the solution
|
||||
/*!
|
||||
* @param urt output vector of nondimensional standard state internal energies
|
||||
* of the species. Length: m_kk.
|
||||
|
|
@ -608,7 +607,7 @@ public:
|
|||
}
|
||||
|
||||
//! Get the nondimensional Heat Capacities at constant pressure for the
|
||||
//! species standard states at the current <I>T</I> and <I>P</I> of the
|
||||
//! species standard states at the current *T* and *P* of the
|
||||
//! solution
|
||||
/*!
|
||||
* @param cpr Output vector of nondimensional standard state heat
|
||||
|
|
@ -619,7 +618,7 @@ public:
|
|||
}
|
||||
|
||||
//! Get the molar volumes of the species standard states at the current
|
||||
//! <I>T</I> and <I>P</I> of the solution.
|
||||
//! *T* and *P* of the solution.
|
||||
/*!
|
||||
* units = m^3 / kmol
|
||||
*
|
||||
|
|
@ -702,7 +701,7 @@ public:
|
|||
}
|
||||
|
||||
//! Get the molar volumes of the species reference states at the current
|
||||
//! <I>T</I> and <I>P_ref</I> of the solution.
|
||||
//! *T* and *P_ref* of the solution.
|
||||
/*!
|
||||
* units = m^3 / kmol
|
||||
*
|
||||
|
|
@ -1612,8 +1611,8 @@ public:
|
|||
* units = 1 / kmol
|
||||
*
|
||||
* dlnActCoeffdlnN[ ld * k + m] will contain the derivative of log
|
||||
* act_coeff for the <I>m</I><SUP>th</SUP> species with respect to the
|
||||
* number of moles of the <I>k</I><SUP>th</SUP> species.
|
||||
* act_coeff for the *m*-th species with respect to the number of moles of
|
||||
* the *k*-th species.
|
||||
*
|
||||
* \f[
|
||||
* \frac{d \ln(\gamma_m) }{d \ln( n_k ) }\Bigg|_{n_i}
|
||||
|
|
|
|||
|
|
@ -23,8 +23,8 @@ class PDSS_Water;
|
|||
/**
|
||||
* @defgroup relatedProps Electric Properties of Phases
|
||||
*
|
||||
* <H3> Treatment of the %Phase Potential and the electrochemical potential of
|
||||
* a species </H3>
|
||||
* ### Treatment of the %Phase Potential and the electrochemical potential of
|
||||
* a species
|
||||
*
|
||||
* The electrochemical potential of species *k* in a phase *p*, \f$ \zeta_k \f$,
|
||||
* is related to the chemical potential via the following equation,
|
||||
|
|
@ -65,7 +65,7 @@ class PDSS_Water;
|
|||
* drop between phases. This effect is used within the InterfaceKinetics and
|
||||
* EdgeKinetics kinetics objects classes.
|
||||
*
|
||||
* <H3> Electrothermochemical Properties of Phases of Matter. </H3>
|
||||
* ### Electrothermochemical Properties of Phases of Matter
|
||||
*
|
||||
* The following classes are used to compute the electrical and
|
||||
* electrothermochemical properties of phases of matter. The main property
|
||||
|
|
|
|||
|
|
@ -27,9 +27,7 @@ class WaterProps;
|
|||
* Thermodynamic Properties of Ordinary Water Substance for General and
|
||||
* Scientific Use," J. Phys. Chem. Ref. Dat, 31, 387, 2002.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Specification of Species Standard State Properties </H2>
|
||||
* <HR>
|
||||
* ## Specification of Species Standard State Properties
|
||||
*
|
||||
* The offsets used in the steam tables are different than NIST's. They assume
|
||||
* u_liq(TP) = 0.0, s_liq(TP) = 0.0, where TP is the triple point conditions:
|
||||
|
|
@ -62,15 +60,11 @@ class WaterProps;
|
|||
*
|
||||
* So(1bar) = S(P0) + RT ln(1bar/P0)
|
||||
*
|
||||
* <HR>
|
||||
* <H2> %Application within Kinetics Managers </H2>
|
||||
* <HR>
|
||||
* ## %Application within Kinetics Managers
|
||||
*
|
||||
* This is unimplemented.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Instantiation of the Class </H2>
|
||||
* <HR>
|
||||
* ## Instantiation of the Class
|
||||
*
|
||||
* The constructor for this phase is NOT located in the default ThermoFactory
|
||||
* for %Cantera. However, a new WaterSSTP object may be created by the following
|
||||
|
|
@ -95,9 +89,7 @@ class WaterProps;
|
|||
* importPhase(*xm, &water);
|
||||
* @endcode
|
||||
*
|
||||
* <HR>
|
||||
* <H2> XML Example </H2>
|
||||
* <HR>
|
||||
* ## XML Example
|
||||
*
|
||||
* An example of an XML Element named phase setting up a WaterSSTP object with
|
||||
* id "water" is given below.
|
||||
|
|
|
|||
|
|
@ -85,7 +85,7 @@ namespace Cantera
|
|||
* With this formulation we may solve for the diffusion velocities, without
|
||||
* having to worry about what the mass averaged velocity is.
|
||||
*
|
||||
* <H2> Viscosity Calculation </H2>
|
||||
* ## Viscosity Calculation
|
||||
*
|
||||
* The viscosity calculation may be broken down into two parts. In the first
|
||||
* part, the viscosity of the pure species are calculated In the second part, a
|
||||
|
|
@ -106,7 +106,7 @@ namespace Cantera
|
|||
* \mu = \sum_k {\mu_k X_k}
|
||||
* \f]
|
||||
*
|
||||
* <H2> Calculate of the Binary Diffusion Coefficients </H2>
|
||||
* ## Calculate of the Binary Diffusion Coefficients
|
||||
*
|
||||
* The binary diffusion coefficients are obtained from the pure species
|
||||
* diffusion coefficients using an additive process
|
||||
|
|
@ -115,7 +115,7 @@ namespace Cantera
|
|||
* D_{i,j} = \frac{1}{2} \left( D^0_i(T) + D^0_j(T) \right)
|
||||
* \f]
|
||||
*
|
||||
* <H2> Electrical Mobilities </H2>
|
||||
* ## Electrical Mobilities
|
||||
*
|
||||
* The mobility \f$ \mu^e_k \f$ is calculated from the diffusion coefficient
|
||||
* using the Einstein relation.
|
||||
|
|
@ -127,7 +127,7 @@ namespace Cantera
|
|||
* The diffusion coefficients, \f$ D_k \f$ , is calculated from a call to the
|
||||
* mixture diffusion coefficient routine.
|
||||
*
|
||||
* <H2> Species Diffusive Fluxes </H2>
|
||||
* ## Species Diffusive Fluxes
|
||||
*
|
||||
* The diffusive mass flux of species \e k is computed from the following
|
||||
* formula
|
||||
|
|
@ -161,7 +161,7 @@ namespace Cantera
|
|||
* \rho V_c = - \sum_j {c^T M_j D_j \nabla X_j} + \sum_j F C^T M_j \frac{D_j}{ R T } X_j z_j \nabla V
|
||||
* \f]
|
||||
*
|
||||
* <H2> Species Diffusional Velocities </H2>
|
||||
* ## Species Diffusional Velocities
|
||||
*
|
||||
* Species diffusional velocities are calculated from the species diffusional
|
||||
* fluxes, within this object, using the following formula for the diffusional
|
||||
|
|
|
|||
|
|
@ -96,9 +96,7 @@ const VelocityBasis VB_SPECIES_3 = 3;
|
|||
* this class. Class Transport is meant to be used as a base class only. It is
|
||||
* possible to instantiate it, but its methods throw exceptions if called.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Relationship of the Transport class to the ThermoPhase Class </H2>
|
||||
* <HR>
|
||||
* ## Relationship of the Transport class to the ThermoPhase Class
|
||||
*
|
||||
* This section describes how calculations are carried out within the Transport
|
||||
* class. The Transport class and derived classes of the the Transport class
|
||||
|
|
@ -119,9 +117,7 @@ const VelocityBasis VB_SPECIES_3 = 3;
|
|||
* implicitly assumed that the underlying state within the ThermoPhase object
|
||||
* has not changed its values.
|
||||
*
|
||||
* <HR>
|
||||
* <H2> Diffusion Fluxes and their Relationship to Reference Velocities </H2>
|
||||
* <HR>
|
||||
* ## Diffusion Fluxes and their Relationship to Reference Velocities
|
||||
*
|
||||
* The diffusion fluxes must be referenced to a particular reference fluid
|
||||
* velocity. Most typical is to reference the diffusion fluxes to the mass
|
||||
|
|
@ -588,7 +584,7 @@ public:
|
|||
//! Return a vector of Thermal diffusion coefficients [kg/m/sec].
|
||||
/*!
|
||||
* The thermal diffusion coefficient \f$ D^T_k \f$ is defined so that the
|
||||
* diffusive mass flux of species <I>k</I> induced by the local temperature
|
||||
* diffusive mass flux of species *k* induced by the local temperature
|
||||
* gradient is given by the following formula:
|
||||
*
|
||||
* \f[
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue