Cantera
2.2.1
|
Class for the thermodynamic manager for an individual species' reference state which uses the PDSS base class to satisfy the requests. More...
#include <SpeciesThermoInterpType.h>
Public Member Functions | |
STITbyPDSS () | |
Constructor. More... | |
STITbyPDSS (size_t speciesIndex, VPSSMgr *vpssmgr_ptr, PDSS *PDSS_ptr) | |
Main Constructor. More... | |
STITbyPDSS (VPSSMgr *vpssmgr_ptr, PDSS *PDSS_ptr) | |
Main Constructor. More... | |
STITbyPDSS (const STITbyPDSS &b) | |
copy constructor More... | |
virtual SpeciesThermoInterpType * | duplMyselfAsSpeciesThermoInterpType () const |
void | initAllPtrs (size_t speciesIndex, VPSSMgr *vpssmgr_ptr, PDSS *PDSS_ptr) |
Initialize and/or Reinitialize all the pointers for this object. More... | |
virtual doublereal | minTemp () const |
Returns the minimum temperature that the thermo parameterization is valid. More... | |
virtual doublereal | maxTemp () const |
Returns the maximum temperature that the thermo parameterization is valid. More... | |
virtual doublereal | refPressure () const |
Returns the reference pressure (Pa) More... | |
virtual int | reportType () const |
Returns an integer representing the type of parameterization. More... | |
virtual void | updateProperties (const doublereal *tempPoly, doublereal *cp_R, doublereal *h_RT, doublereal *s_R) const |
Update the properties for this species, given a temperature polynomial. More... | |
virtual void | updatePropertiesTemp (const doublereal temp, doublereal *cp_R, doublereal *h_RT, doublereal *s_R) const |
Compute the reference-state property of one species. More... | |
virtual void | reportParameters (size_t &index, int &type, doublereal &minTemp, doublereal &maxTemp, doublereal &refPressure, doublereal *const coeffs) const |
This utility function reports back the type of parameterization and all of the parameters for the species, index. More... | |
virtual void | modifyParameters (doublereal *coeffs) |
Modify parameters for the standard state. More... | |
Public Member Functions inherited from SpeciesThermoInterpType | |
SpeciesThermoInterpType (size_t n, doublereal tlow, doublereal thigh, doublereal pref) | |
SpeciesThermoInterpType (double tlow, double thigh, double pref) | |
SpeciesThermoInterpType (const SpeciesThermoInterpType &b) | |
virtual void | validate (const std::string &name) |
Check for problems with the parameterization, and generate warnings or throw and exception if any are found. More... | |
virtual size_t | speciesIndex () const |
Returns an integer representing the species index. More... | |
virtual void | setIndex (size_t index) |
virtual size_t | temperaturePolySize () const |
Number of terms in the temperature polynomial for this parameterization. More... | |
virtual void | updateTemperaturePoly (double T, double *T_poly) const |
Given the temperature T, compute the terms of the temperature polynomial T_poly. More... | |
virtual doublereal | reportHf298 (doublereal *const h298=0) const |
Report the 298 K Heat of Formation of the standard state of one species (J kmol-1) More... | |
virtual void | modifyOneHf298 (const size_t k, const doublereal Hf298New) |
Modify the value of the 298 K Heat of Formation of one species in the phase (J kmol-1) More... | |
Private Attributes | |
VPSSMgr * | m_vpssmgr_ptr |
Pointer to the Variable pressure standard state manager that owns the PDSS object that will handle calls for this object. More... | |
PDSS * | m_PDSS_ptr |
Pointer to the PDSS object that handles calls for this object. More... | |
Additional Inherited Members | |
Protected Attributes inherited from SpeciesThermoInterpType | |
doublereal | m_lowT |
lowest valid temperature More... | |
doublereal | m_highT |
Highest valid temperature. More... | |
doublereal | m_Pref |
Reference state pressure. More... | |
size_t | m_index |
species index More... | |
Class for the thermodynamic manager for an individual species' reference state which uses the PDSS base class to satisfy the requests.
This class is a pass-through class for handling thermodynamics calls for reference state thermo to an pressure dependent standard state (PDSS) class. For some situations, it makes no sense to have a reference state at all. One example of this is the real water standard state.
What this class does is just to pass through the calls for thermo at (T, p0) to the PDSS class, which evaluates the calls at (T, p0).
Definition at line 336 of file SpeciesThermoInterpType.h.
STITbyPDSS | ( | ) |
Constructor.
Definition at line 76 of file SpeciesThermoInterpType.cpp.
References SpeciesThermoInterpType::m_index, and Cantera::npos.
STITbyPDSS | ( | size_t | speciesIndex, |
VPSSMgr * | vpssmgr_ptr, | ||
PDSS * | PDSS_ptr | ||
) |
Main Constructor.
speciesIndex | species index for this object. Note, this must agree with what was internally set before. |
vpssmgr_ptr | Pointer to the Variable pressure standard state manager that owns the PDSS object that will handle calls for this object |
PDSS_ptr | Pointer to the PDSS object that handles calls for this object |
Definition at line 81 of file SpeciesThermoInterpType.cpp.
References SpeciesThermoInterpType::m_index.
STITbyPDSS | ( | VPSSMgr * | vpssmgr_ptr, |
PDSS * | PDSS_ptr | ||
) |
Main Constructor.
vpssmgr_ptr | Pointer to the Variable pressure standard state manager that owns the PDSS object that will handle calls for this object |
PDSS_ptr | Pointer to the PDSS object that handles calls for this object |
Definition at line 89 of file SpeciesThermoInterpType.cpp.
STITbyPDSS | ( | const STITbyPDSS & | b | ) |
copy constructor
b | Object to be copied |
Definition at line 96 of file SpeciesThermoInterpType.cpp.
Initialize and/or Reinitialize all the pointers for this object.
This routine is needed because the STITbyPDSS object doesn't own the underlying objects. Therefore, shallow copies during duplication operations may fail.
speciesIndex | species index for this object. Note, this must agree with what was internally set before. |
vpssmgr_ptr | Pointer to the Variable pressure standard state manager that owns the PDSS object that will handle calls for this object |
PDSS_ptr | Pointer to the PDSS object that handles calls for this object |
Definition at line 109 of file SpeciesThermoInterpType.cpp.
References AssertThrow, SpeciesThermoInterpType::m_index, STITbyPDSS::m_PDSS_ptr, and STITbyPDSS::m_vpssmgr_ptr.
Referenced by VPSSMgr::initAllPtrs().
|
virtual |
Returns the minimum temperature that the thermo parameterization is valid.
Reimplemented from SpeciesThermoInterpType.
Definition at line 118 of file SpeciesThermoInterpType.cpp.
References STITbyPDSS::m_PDSS_ptr, and PDSS::minTemp().
|
virtual |
Returns the maximum temperature that the thermo parameterization is valid.
Reimplemented from SpeciesThermoInterpType.
Definition at line 123 of file SpeciesThermoInterpType.cpp.
References STITbyPDSS::m_PDSS_ptr, and PDSS::maxTemp().
|
virtual |
Returns the reference pressure (Pa)
Reimplemented from SpeciesThermoInterpType.
Definition at line 128 of file SpeciesThermoInterpType.cpp.
References STITbyPDSS::m_PDSS_ptr, and PDSS::refPressure().
|
virtual |
Returns an integer representing the type of parameterization.
Implements SpeciesThermoInterpType.
Definition at line 133 of file SpeciesThermoInterpType.cpp.
References PDSS_TYPE.
|
virtual |
Update the properties for this species, given a temperature polynomial.
This method is called with a pointer to an array containing the functions of temperature needed by this parameterization, and three pointers to arrays where the computed property values should be written. This method updates only one value in each array.
The form and length of the Temperature Polynomial may vary depending on the parameterization.
tempPoly | vector of temperature polynomials |
cp_R | Vector of Dimensionless heat capacities. (length m_kk). |
h_RT | Vector of Dimensionless enthalpies. (length m_kk). |
s_R | Vector of Dimensionless entropies. (length m_kk). |
Reimplemented from SpeciesThermoInterpType.
Definition at line 138 of file SpeciesThermoInterpType.cpp.
References STITbyPDSS::updatePropertiesTemp().
|
virtual |
Compute the reference-state property of one species.
Given temperature T in K, this method updates the values of the non-dimensional heat capacity at constant pressure, enthalpy, and entropy, at the reference pressure, Pref of one of the species. The species index is used to reference into the cp_R, h_RT, and s_R arrays.
temp | Temperature (Kelvin) |
cp_R | Vector of Dimensionless heat capacities. (length m_kk). |
h_RT | Vector of Dimensionless enthalpies. (length m_kk). |
s_R | Vector of Dimensionless entropies. (length m_kk). |
Implements SpeciesThermoInterpType.
Definition at line 146 of file SpeciesThermoInterpType.cpp.
References AssertThrowMsg, PDSS::cp_R_ref(), PDSS::enthalpy_RT_ref(), PDSS::entropy_R_ref(), SpeciesThermoInterpType::m_index, STITbyPDSS::m_PDSS_ptr, Cantera::npos, and PDSS::setTemperature().
Referenced by STITbyPDSS::updateProperties().
|
virtual |
This utility function reports back the type of parameterization and all of the parameters for the species, index.
All parameters are output variables
index | Species index |
type | Integer type of the standard type |
minTemp | output - Minimum temperature |
maxTemp | output - Maximum temperature |
refPressure | output - reference pressure (Pa). |
coeffs | Vector of coefficients used to set the parameters for the standard state. |
Implements SpeciesThermoInterpType.
Definition at line 159 of file SpeciesThermoInterpType.cpp.
References SpeciesThermoInterpType::m_index, STITbyPDSS::m_PDSS_ptr, STITbyPDSS::m_vpssmgr_ptr, VPSSMgr::maxTemp(), VPSSMgr::minTemp(), PDSS_TYPE, and PDSS::refPressure().
|
inlinevirtual |
Modify parameters for the standard state.
coeffs | Vector of coefficients used to set the parameters for the standard state. |
Reimplemented from SpeciesThermoInterpType.
Definition at line 423 of file SpeciesThermoInterpType.h.
|
private |
Pointer to the Variable pressure standard state manager that owns the PDSS object that will handle calls for this object.
Definition at line 428 of file SpeciesThermoInterpType.h.
Referenced by STITbyPDSS::initAllPtrs(), and STITbyPDSS::reportParameters().
|
private |
Pointer to the PDSS object that handles calls for this object.
This object is not owned by the current one.
Definition at line 434 of file SpeciesThermoInterpType.h.
Referenced by STITbyPDSS::initAllPtrs(), STITbyPDSS::maxTemp(), STITbyPDSS::minTemp(), STITbyPDSS::refPressure(), STITbyPDSS::reportParameters(), and STITbyPDSS::updatePropertiesTemp().