The base type for the primary activity and corrective thermodynamic properties of a phase. More...
#include <ActivityProps.hpp>
Public Member Functions | |
auto | operator= (real value) -> ActivityPropsBase & |
Assign a common value to all properties in this ActivityPropsBase object. | |
template<template< typename > typename OtherTypeOp> | |
auto | operator= (const ActivityPropsBase< OtherTypeOp > &other) -> ActivityPropsBase & |
Convert this ActivityPropsBase object into another. | |
template<template< typename > typename OtherTypeOp> | |
operator ActivityPropsBase< OtherTypeOp > () | |
Convert this ActivityPropsBase object into another. | |
template<template< typename > typename OtherTypeOp> | |
operator ActivityPropsBase< OtherTypeOp > () const | |
Convert this ActivityPropsBase object into another. | |
Static Public Member Functions | |
static auto | create (Index numspecies) -> ActivityPropsBase< TypeOp > |
Create a ActivityPropsBase object with given number of species. More... | |
Public Attributes | |
TypeOp< real > | Vx |
The corrective molar volume of the phase (in m³/mol). | |
TypeOp< real > | VxT |
The derivative of the corrective molar volume with respect to temperature at constant pressure and species mole fractions (in m³/(mol⋅K)). | |
TypeOp< real > | VxP |
The derivative of the corrective molar volume with respect to pressure at constant temperature and species mole fractions (in m³/(mol⋅Pa)). | |
TypeOp< ArrayXr > | Vxi |
The derivatives of the corrective molar volume with respect to species mole fractions at constant temperature and pressure (in m³/mol). | |
TypeOp< real > | Gx |
The corrective molar Gibbs energy of the phase (in units of J/mol). | |
TypeOp< real > | Hx |
The corrective molar enthalpy of the phase (in units of J/mol). | |
TypeOp< real > | Cpx |
The corrective molar isobaric heat capacity of the phase (in units of J/(mol⋅K)). | |
TypeOp< ArrayXr > | ln_g |
The activity coefficients (natural log) of the species in the phase. | |
TypeOp< ArrayXr > | ln_a |
The activities (natural log) of the species in the phase. | |
TypeOp< StateOfMatter > | som |
The state of matter of the phase. | |
TypeOp< Map< String, Any > > | extra |
The extra data produced by an activity model that may be reused by subsequent models within a chained activity model. | |
Detailed Description
template<template< typename > typename TypeOp>
struct Reaktoro::ActivityPropsBase< TypeOp >
The base type for the primary activity and corrective thermodynamic properties of a phase.
Thermodynamic properties for a phase, such as internal energy, enthalpy, Gibbs energy, entropy, and volume can be broken down into ideal and corrective contributions. Let us denote by \(M\) one of these properties. The previous statement implies that:
\[M=\sum_{i=1}^{\mathrm{N}}x_{i}M_{i}^{\circ}+M^{\mathrm{x}},\]
with the first term being the ideal contribution and the second term, \(M^{\mathrm{x}}\), being the corrective contribution, where \(x_{i}\) and \(M_{i}^{\circ}\) are, respectively, the mole fraction and respective standard molar property of the \(i\)-th species in the phase.
Thus, corrective thermodynamic properties are those that need to be added to their ideal counterpart to obtain more correct values that take into account the non-ideal thermodynamic behavior of phases. The word corrective is adopted in Reaktoro to mean either excess or residual properties.
- Note
- The corrective property \(M^{\mathrm{x}}\) may sometimes be the actual complete property of the phase, i.e., \(M^{\mathrm{x}} \equiv M\). For example, for gaseous phases in which the partial molar volumes of the species are conventionally zero, \(V_{i}^{\circ}=0\), the corrective molar volume, \(V^{\mathrm{x}}\), must be set as the total molar volume of the phase.
- See also
- ActivityModel, ActivityModelArgs
Member Function Documentation
◆ create()
|
inlinestatic |
Create a ActivityPropsBase object with given number of species.
This static method is needed, instead of a constructor, which would prevent aggregate initialization of this struct.
The documentation for this struct was generated from the following file:
- Reaktoro/Core/ActivityProps.hpp