Cantera  2.4.0
Public Member Functions | Protected Attributes | List of all members

Abstract Base class for the thermodynamic manager for an individual species' reference state. More...

#include <SpeciesThermoInterpType.h>

Inheritance diagram for SpeciesThermoInterpType:
[legend]

Public Member Functions

 SpeciesThermoInterpType (double tlow, double thigh, double pref)
 
 SpeciesThermoInterpType (const SpeciesThermoInterpType &b)=delete
 
SpeciesThermoInterpTypeoperator= (const SpeciesThermoInterpType &b)=delete
 
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 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 int reportType () const =0
 Returns an integer representing the type of parameterization. More...
 
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 void updateProperties (const doublereal *tt, 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 =0
 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 =0
 This utility function reports back the type of parameterization and all of the parameters for the species. 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...
 
virtual void resetHf298 ()
 Restore the original heat of formation for this species. More...
 

Protected Attributes

doublereal m_lowT
 lowest valid temperature More...
 
doublereal m_highT
 Highest valid temperature. More...
 
doublereal m_Pref
 Reference state pressure. More...
 

Detailed Description

Abstract Base class for the thermodynamic manager for an individual species' reference state.

One key feature is that the update routines use the same form as the update routines in the MultiSpeciesThermo class. They update values of cp_R, s_R, and H_R.

Definition at line 119 of file SpeciesThermoInterpType.h.

Member Function Documentation

◆ minTemp()

virtual doublereal minTemp ( ) const
inlinevirtual

Returns the minimum temperature that the thermo parameterization is valid.

Reimplemented in STITbyPDSS.

Definition at line 134 of file SpeciesThermoInterpType.h.

References SpeciesThermoInterpType::m_lowT.

Referenced by MultiSpeciesThermo::minTemp().

◆ maxTemp()

virtual doublereal maxTemp ( ) const
inlinevirtual

Returns the maximum temperature that the thermo parameterization is valid.

Reimplemented in STITbyPDSS.

Definition at line 140 of file SpeciesThermoInterpType.h.

References SpeciesThermoInterpType::m_highT.

Referenced by MultiSpeciesThermo::maxTemp(), and Nasa9PolyMultiTempRegion::Nasa9PolyMultiTempRegion().

◆ refPressure()

virtual doublereal refPressure ( ) const
inlinevirtual

Returns the reference pressure (Pa)

Reimplemented in STITbyPDSS.

Definition at line 145 of file SpeciesThermoInterpType.h.

References SpeciesThermoInterpType::m_Pref.

Referenced by Nasa9PolyMultiTempRegion::Nasa9PolyMultiTempRegion(), and MultiSpeciesThermo::refPressure().

◆ validate()

virtual void validate ( const std::string &  name)
inlinevirtual

Check for problems with the parameterization, and generate warnings or throw and exception if any are found.

Reimplemented in NasaPoly2.

Definition at line 151 of file SpeciesThermoInterpType.h.

◆ reportType()

virtual int reportType ( ) const
pure virtual

Returns an integer representing the type of parameterization.

Implemented in STITbyPDSS, ShomatePoly2, Mu0Poly, ShomatePoly, Nasa9Poly1, NasaPoly2, NasaPoly1, ConstCpPoly, Adsorbate, and Nasa9PolyMultiTempRegion.

Referenced by MultiSpeciesThermo::reportType().

◆ temperaturePolySize()

virtual size_t temperaturePolySize ( ) const
inlinevirtual

Number of terms in the temperature polynomial for this parameterization.

Reimplemented in ShomatePoly2, ShomatePoly, Nasa9Poly1, NasaPoly2, NasaPoly1, and Nasa9PolyMultiTempRegion.

Definition at line 157 of file SpeciesThermoInterpType.h.

◆ updateTemperaturePoly()

virtual void updateTemperaturePoly ( double  T,
double *  T_poly 
) const
inlinevirtual

Given the temperature T, compute the terms of the temperature polynomial T_poly.

Reimplemented in ShomatePoly2, ShomatePoly, Nasa9Poly1, NasaPoly2, NasaPoly1, and Nasa9PolyMultiTempRegion.

Definition at line 161 of file SpeciesThermoInterpType.h.

◆ updateProperties()

void updateProperties ( const doublereal *  tt,
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
ttvector of evaluated temperature functions
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 in STITbyPDSS, ShomatePoly2, Mu0Poly, ShomatePoly, Nasa9Poly1, NasaPoly1, NasaPoly2, ConstCpPoly, and Nasa9PolyMultiTempRegion.

Definition at line 30 of file SpeciesThermoInterpType.cpp.

◆ updatePropertiesTemp()

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

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).

Implemented in STITbyPDSS, ShomatePoly2, ShomatePoly, Mu0Poly, NasaPoly1, Nasa9Poly1, NasaPoly2, ConstCpPoly, Nasa9PolyMultiTempRegion, and Adsorbate.

Referenced by MultiSpeciesThermo::update_one(), and MultiSpeciesThermo::update_single().

◆ reportParameters()

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

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

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.

Implemented in STITbyPDSS, ShomatePoly2, ShomatePoly, Mu0Poly, NasaPoly1, Nasa9Poly1, NasaPoly2, Nasa9PolyMultiTempRegion, ConstCpPoly, and Adsorbate.

◆ reportHf298()

doublereal reportHf298 ( doublereal *const  h298 = 0) const
virtual

Report the 298 K Heat of Formation of the standard state of one species (J kmol-1)

The 298K Heat of Formation is defined as the enthalpy change to create the standard state of the species from its constituent elements in their standard states at 298 K and 1 bar.

Parameters
h298If this is nonnull, the current value of the Heat of Formation at 298K and 1 bar for species m_speciesIndex is returned in h298[m_speciesIndex].
Returns
the current value of the Heat of Formation at 298K and 1 bar for species m_speciesIndex.

Reimplemented in ShomatePoly2, ShomatePoly, NasaPoly1, NasaPoly2, and ConstCpPoly.

Definition at line 37 of file SpeciesThermoInterpType.cpp.

Referenced by MultiSpeciesThermo::reportOneHf298().

◆ modifyOneHf298()

void modifyOneHf298 ( const size_t  k,
const doublereal  Hf298New 
)
virtual

Modify the value of the 298 K Heat of Formation of one species in the phase (J kmol-1)

The 298K heat of formation is defined as the enthalpy change to create the standard state of the species from its constituent elements in their standard states at 298 K and 1 bar.

Parameters
kSpecies k
Hf298NewSpecify the new value of the Heat of Formation at 298K and 1 bar

Reimplemented in ShomatePoly2, ShomatePoly, NasaPoly1, NasaPoly2, and ConstCpPoly.

Definition at line 43 of file SpeciesThermoInterpType.cpp.

Referenced by MultiSpeciesThermo::modifyOneHf298().

◆ resetHf298()

virtual void resetHf298 ( )
inlinevirtual

Restore the original heat of formation for this species.

Resets changes made by modifyOneHf298().

Reimplemented in ShomatePoly2, ShomatePoly, NasaPoly1, NasaPoly2, and ConstCpPoly.

Definition at line 250 of file SpeciesThermoInterpType.h.

Referenced by MultiSpeciesThermo::resetHf298().

Member Data Documentation

◆ m_lowT

doublereal m_lowT
protected

lowest valid temperature

Definition at line 257 of file SpeciesThermoInterpType.h.

Referenced by SpeciesThermoInterpType::minTemp(), and Nasa9PolyMultiTempRegion::Nasa9PolyMultiTempRegion().

◆ m_highT

doublereal m_highT
protected

Highest valid temperature.

Definition at line 259 of file SpeciesThermoInterpType.h.

Referenced by SpeciesThermoInterpType::maxTemp(), and Nasa9PolyMultiTempRegion::Nasa9PolyMultiTempRegion().

◆ m_Pref

doublereal m_Pref
protected

Reference state pressure.

Definition at line 261 of file SpeciesThermoInterpType.h.

Referenced by Nasa9PolyMultiTempRegion::Nasa9PolyMultiTempRegion(), and SpeciesThermoInterpType::refPressure().


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