Cantera  2.2.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Attributes | List of all members

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>

Inheritance diagram for STITbyPDSS:
[legend]
Collaboration diagram for STITbyPDSS:
[legend]

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 SpeciesThermoInterpTypeduplMyselfAsSpeciesThermoInterpType () 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

VPSSMgrm_vpssmgr_ptr
 Pointer to the Variable pressure standard state manager that owns the PDSS object that will handle calls for this object. More...
 
PDSSm_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...
 

Detailed Description

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.

Constructor & Destructor Documentation

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.

Parameters
speciesIndexspecies index for this object. Note, this must agree with what was internally set before.
vpssmgr_ptrPointer to the Variable pressure standard state manager that owns the PDSS object that will handle calls for this object
PDSS_ptrPointer to the PDSS object that handles calls for this object
Deprecated:
Use the constructor which does not require the species index. To be removed after Cantera 2.2.

Definition at line 81 of file SpeciesThermoInterpType.cpp.

References SpeciesThermoInterpType::m_index.

STITbyPDSS ( VPSSMgr vpssmgr_ptr,
PDSS PDSS_ptr 
)

Main Constructor.

Parameters
vpssmgr_ptrPointer to the Variable pressure standard state manager that owns the PDSS object that will handle calls for this object
PDSS_ptrPointer to the PDSS object that handles calls for this object

Definition at line 89 of file SpeciesThermoInterpType.cpp.

STITbyPDSS ( const STITbyPDSS b)

copy constructor

Parameters
bObject to be copied

Definition at line 96 of file SpeciesThermoInterpType.cpp.

Member Function Documentation

void initAllPtrs ( size_t  speciesIndex,
VPSSMgr vpssmgr_ptr,
PDSS PDSS_ptr 
)

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.

Parameters
speciesIndexspecies index for this object. Note, this must agree with what was internally set before.
vpssmgr_ptrPointer to the Variable pressure standard state manager that owns the PDSS object that will handle calls for this object
PDSS_ptrPointer 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().

doublereal minTemp ( ) const
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().

doublereal maxTemp ( ) const
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().

doublereal refPressure ( ) const
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().

int reportType ( ) const
virtual

Returns an integer representing the type of parameterization.

Implements SpeciesThermoInterpType.

Definition at line 133 of file SpeciesThermoInterpType.cpp.

References PDSS_TYPE.

void updateProperties ( const doublereal *  tempPoly,
doublereal *  cp_R,
doublereal *  h_RT,
doublereal *  s_R 
) const
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.

Parameters
tempPolyvector of temperature polynomials
cp_RVector of Dimensionless heat capacities. (length m_kk).
h_RTVector of Dimensionless enthalpies. (length m_kk).
s_RVector of Dimensionless entropies. (length m_kk).

Reimplemented from SpeciesThermoInterpType.

Definition at line 138 of file SpeciesThermoInterpType.cpp.

References STITbyPDSS::updatePropertiesTemp().

void updatePropertiesTemp ( const doublereal  temp,
doublereal *  cp_R,
doublereal *  h_RT,
doublereal *  s_R 
) const
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.

Parameters
tempTemperature (Kelvin)
cp_RVector of Dimensionless heat capacities. (length m_kk).
h_RTVector of Dimensionless enthalpies. (length m_kk).
s_RVector 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().

void reportParameters ( size_t &  index,
int &  type,
doublereal &  minTemp,
doublereal &  maxTemp,
doublereal &  refPressure,
doublereal *const  coeffs 
) const
virtual

This utility function reports back the type of parameterization and all of the parameters for the species, index.

All parameters are output variables

Parameters
indexSpecies index
typeInteger type of the standard type
minTempoutput - Minimum temperature
maxTempoutput - Maximum temperature
refPressureoutput - reference pressure (Pa).
coeffsVector 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().

virtual void modifyParameters ( doublereal *  coeffs)
inlinevirtual

Modify parameters for the standard state.

Parameters
coeffsVector of coefficients used to set the parameters for the standard state.

Reimplemented from SpeciesThermoInterpType.

Definition at line 423 of file SpeciesThermoInterpType.h.

Member Data Documentation

VPSSMgr* m_vpssmgr_ptr
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().

PDSS* m_PDSS_ptr
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().


The documentation for this class was generated from the following files: