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

Virtual base class for a species with a pressure dependent standard state. More...

#include <PDSS.h>

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

Public Member Functions

virtual void setTemperature (doublereal temp)
 Set the internal temperature. More...
 
virtual doublereal temperature () const
 Return the current stored temperature. More...
 
virtual void setState_TP (doublereal temp, doublereal pres)
 Set the internal temperature and pressure. More...
 
virtual void setState_TR (doublereal temp, doublereal rho)
 Set the internal temperature and density. More...
 
virtual doublereal critTemperature () const
 critical temperature More...
 
virtual doublereal critPressure () const
 critical pressure More...
 
virtual doublereal critDensity () const
 critical density More...
 
virtual doublereal satPressure (doublereal T)
 saturation pressure More...
 
doublereal molecularWeight () const
 Return the molecular weight of the species in units of kg kmol-1. More...
 
void setMolecularWeight (doublereal mw)
 Set the molecular weight of the species. More...
 
Constructors
 PDSS ()
 Default Constructor. More...
 
 PDSS (const PDSS &b)=delete
 
PDSSoperator= (const PDSS &b)=delete
 
virtual ~PDSS ()
 
Molar Thermodynamic Properties of the Species Standard State in
virtual doublereal enthalpy_mole () const
 Return the molar enthalpy in units of J kmol-1. More...
 
virtual doublereal enthalpy_RT () const
 Return the standard state molar enthalpy divided by RT. More...
 
virtual doublereal intEnergy_mole () const
 Return the molar internal Energy in units of J kmol-1. More...
 
virtual doublereal entropy_mole () const
 Return the molar entropy in units of J kmol-1 K-1. More...
 
virtual doublereal entropy_R () const
 Return the standard state entropy divided by RT. More...
 
virtual doublereal gibbs_mole () const
 Return the molar Gibbs free energy in units of J kmol-1. More...
 
virtual doublereal gibbs_RT () const
 Return the molar Gibbs free energy divided by RT. More...
 
virtual doublereal cp_mole () const
 Return the molar const pressure heat capacity in units of J kmol-1 K-1. More...
 
virtual doublereal cp_R () const
 Return the molar const pressure heat capacity divided by RT. More...
 
virtual doublereal cv_mole () const
 Return the molar const volume heat capacity in units of J kmol-1 K-1. More...
 
virtual doublereal molarVolume () const
 Return the molar volume at standard state. More...
 
virtual doublereal density () const
 Return the standard state density at standard state. More...
 
virtual doublereal enthalpyDelp_mole () const
 Get the difference in the standard state enthalpy between the current pressure and the reference pressure, p0. More...
 
virtual doublereal entropyDelp_mole () const
 Get the difference in the standard state entropy between the current pressure and the reference pressure, p0. More...
 
virtual doublereal gibbsDelp_mole () const
 Get the difference in the standard state Gibbs free energy between the current pressure and the reference pressure, p0. More...
 
virtual doublereal cpDelp_mole () const
 Get the difference in standard state heat capacity between the current pressure and the reference pressure, p0. More...
 
Properties of the Reference State of the Species in the Solution
doublereal refPressure () const
 Return the reference pressure for this phase. More...
 
doublereal minTemp () const
 return the minimum temperature More...
 
doublereal maxTemp () const
 return the minimum temperature More...
 
virtual doublereal gibbs_RT_ref () const
 Return the molar Gibbs free energy divided by RT at reference pressure. More...
 
virtual doublereal enthalpy_RT_ref () const
 Return the molar enthalpy divided by RT at reference pressure. More...
 
virtual doublereal entropy_R_ref () const
 Return the molar entropy divided by R at reference pressure. More...
 
virtual doublereal cp_R_ref () const
 Return the molar heat capacity divided by R at reference pressure. More...
 
virtual doublereal molarVolume_ref () const
 Return the molar volume at reference pressure. More...
 
Mechanical Equation of State Properties
virtual doublereal pressure () const
 Returns the pressure (Pa) More...
 
virtual void setPressure (doublereal pres)
 Sets the pressure in the object. More...
 
virtual doublereal thermalExpansionCoeff () const
 Return the volumetric thermal expansion coefficient. Units: 1/K. More...
 
Initialization of the Object
void setReferenceThermo (shared_ptr< SpeciesThermoInterpType > stit)
 Set the SpeciesThermoInterpType object used to calculate reference state properties. More...
 
virtual void setParent (VPStandardStateTP *phase, size_t k)
 Set the parent VPStandardStateTP object of this PDSS object. More...
 
virtual void initThermo ()
 Initialization routine. More...
 
void setParameters (const AnyMap &node)
 Set model parameters from an AnyMap phase description, for example from the equation-of-state field of a species definition. More...
 
virtual void getParameters (AnyMap &eosNode) const
 Store the parameters needed to reconstruct a copy of this PDSS object. More...
 
virtual void setParametersFromXML (const XML_Node &speciesNode)
 Initialization routine for the PDSS object based on the speciesNode. More...
 
virtual void reportParams (size_t &kindex, int &type, doublereal *const c, doublereal &minTemp, doublereal &maxTemp, doublereal &refPressure) const
 This utility function reports back the type of parameterization and all of the parameters for the species, index. More...
 

Protected Attributes

doublereal m_temp
 Current temperature used by the PDSS object. More...
 
doublereal m_pres
 State of the system - pressure. More...
 
doublereal m_p0
 Reference state pressure of the species. More...
 
doublereal m_minTemp
 Minimum temperature. More...
 
doublereal m_maxTemp
 Maximum temperature. More...
 
doublereal m_mw
 Molecular Weight of the species. More...
 
AnyMap m_input
 Input data supplied via setParameters. More...
 
shared_ptr< SpeciesThermoInterpTypem_spthermo
 Pointer to the species thermodynamic property manager. More...
 

Detailed Description

Virtual base class for a species with a pressure dependent standard state.

Virtual base class for calculation of the pressure dependent standard state for a single species

Class PDSS is the base class for a family of classes that compute properties of a set of species in their standard states at a range of temperatures and pressures. The independent variables for this object are temperature and pressure. The class may have a reference to a SpeciesThermoInterpType object which handles the calculation of the reference state temperature behavior of the species.

This class is analogous to the SpeciesThermoInterpType class, except that the standard state inherently incorporates the pressure dependence.

The class operates on a setState temperature and pressure basis. It only recalculates the standard state when the setState functions for temperature and pressure are called.

Definition at line 147 of file PDSS.h.

Constructor & Destructor Documentation

◆ PDSS()

PDSS ( )

Default Constructor.

Definition at line 17 of file PDSS.cpp.

◆ ~PDSS()

virtual ~PDSS ( )
inlinevirtual

Definition at line 159 of file PDSS.h.

Member Function Documentation

◆ enthalpy_mole()

doublereal enthalpy_mole ( ) const
virtual

Return the molar enthalpy in units of J kmol-1.

Returns
the species standard state enthalpy in J kmol-1 at the current temperature and pressure.

Reimplemented in PDSS_Nondimensional, PDSS_HKFT, and PDSS_Water.

Definition at line 27 of file PDSS.cpp.

Referenced by PDSS_Molar::enthalpy_RT(), and PDSS::enthalpyDelp_mole().

◆ enthalpy_RT()

doublereal enthalpy_RT ( ) const
virtual

Return the standard state molar enthalpy divided by RT.

Returns
The dimensionless species standard state enthalpy divided at the current temperature and pressure.

Reimplemented in PDSS_Molar, PDSS_Nondimensional, and PDSS_IonsFromNeutral.

Definition at line 32 of file PDSS.cpp.

Referenced by VPStandardStateTP::_updateStandardStateThermo().

◆ intEnergy_mole()

doublereal intEnergy_mole ( ) const
virtual

Return the molar internal Energy in units of J kmol-1.

Returns
The species standard state internal Energy in J kmol-1 at the current temperature and pressure.

Reimplemented in PDSS_ConstVol, PDSS_HKFT, PDSS_IdealGas, PDSS_IonsFromNeutral, PDSS_SSVol, and PDSS_Water.

Definition at line 37 of file PDSS.cpp.

◆ entropy_mole()

doublereal entropy_mole ( ) const
virtual

Return the molar entropy in units of J kmol-1 K-1.

Returns
The species standard state entropy in J kmol-1 K-1 at the current temperature and pressure.

Reimplemented in PDSS_Nondimensional, PDSS_HKFT, and PDSS_Water.

Definition at line 42 of file PDSS.cpp.

Referenced by PDSS_Molar::entropy_R(), and PDSS::entropyDelp_mole().

◆ entropy_R()

doublereal entropy_R ( ) const
virtual

Return the standard state entropy divided by RT.

Returns
The species standard state entropy divided by RT at the current temperature and pressure.

Reimplemented in PDSS_Molar, PDSS_Nondimensional, and PDSS_IonsFromNeutral.

Definition at line 47 of file PDSS.cpp.

Referenced by VPStandardStateTP::_updateStandardStateThermo().

◆ gibbs_mole()

doublereal gibbs_mole ( ) const
virtual

Return the molar Gibbs free energy in units of J kmol-1.

Returns
The species standard state Gibbs free energy in J kmol-1 at the current temperature and pressure.

Reimplemented in PDSS_Nondimensional, PDSS_HKFT, and PDSS_Water.

Definition at line 52 of file PDSS.cpp.

Referenced by PDSS_Molar::gibbs_RT(), and PDSS::gibbsDelp_mole().

◆ gibbs_RT()

doublereal gibbs_RT ( ) const
virtual

Return the molar Gibbs free energy divided by RT.

Returns
The species standard state Gibbs free energy divided by RT at the current temperature and pressure.

Reimplemented in PDSS_Molar, PDSS_Nondimensional, and PDSS_IonsFromNeutral.

Definition at line 57 of file PDSS.cpp.

◆ cp_mole()

doublereal cp_mole ( ) const
virtual

Return the molar const pressure heat capacity in units of J kmol-1 K-1.

Returns
The species standard state Cp in J kmol-1 K-1 at the current temperature and pressure.

Reimplemented in PDSS_Nondimensional, PDSS_HKFT, and PDSS_Water.

Definition at line 62 of file PDSS.cpp.

Referenced by PDSS_Molar::cp_R(), and PDSS::cpDelp_mole().

◆ cp_R()

doublereal cp_R ( ) const
virtual

Return the molar const pressure heat capacity divided by RT.

Returns
The species standard state Cp divided by RT at the current temperature and pressure.

Reimplemented in PDSS_Molar, PDSS_Nondimensional, and PDSS_IonsFromNeutral.

Definition at line 67 of file PDSS.cpp.

Referenced by VPStandardStateTP::_updateStandardStateThermo().

◆ cv_mole()

doublereal cv_mole ( ) const
virtual

Return the molar const volume heat capacity in units of J kmol-1 K-1.

Returns
The species standard state Cv in J kmol-1 K-1 at the current temperature and pressure.

Reimplemented in PDSS_ConstVol, PDSS_IdealGas, PDSS_SSVol, and PDSS_Water.

Definition at line 82 of file PDSS.cpp.

◆ molarVolume()

doublereal molarVolume ( ) const
virtual

Return the molar volume at standard state.

Returns
The standard state molar volume at the current temperature and pressure. Units are m**3 kmol-1.

Reimplemented in PDSS_Nondimensional, PDSS_HKFT, PDSS_IonsFromNeutral, and PDSS_Water.

Definition at line 72 of file PDSS.cpp.

Referenced by VPStandardStateTP::_updateStandardStateThermo(), IdealMolalSoln::initThermo(), and DebyeHuckel::standardConcentration().

◆ density()

doublereal density ( ) const
virtual

Return the standard state density at standard state.

Returns
The standard state density at the current temperature and pressure. units are kg m-3

Reimplemented in PDSS_Nondimensional, PDSS_HKFT, PDSS_IonsFromNeutral, and PDSS_Water.

Definition at line 77 of file PDSS.cpp.

◆ enthalpyDelp_mole()

doublereal enthalpyDelp_mole ( ) const
virtual

Get the difference in the standard state enthalpy between the current pressure and the reference pressure, p0.

Definition at line 112 of file PDSS.cpp.

References PDSS::enthalpy_mole(), PDSS::enthalpy_RT_ref(), Cantera::GasConstant, and PDSS::m_temp.

◆ entropyDelp_mole()

doublereal entropyDelp_mole ( ) const
virtual

Get the difference in the standard state entropy between the current pressure and the reference pressure, p0.

Definition at line 117 of file PDSS.cpp.

References PDSS::entropy_mole(), PDSS::entropy_R_ref(), and Cantera::GasConstant.

◆ gibbsDelp_mole()

doublereal gibbsDelp_mole ( ) const
virtual

Get the difference in the standard state Gibbs free energy between the current pressure and the reference pressure, p0.

Definition at line 122 of file PDSS.cpp.

References Cantera::GasConstant, PDSS::gibbs_mole(), PDSS::gibbs_RT_ref(), and PDSS::m_temp.

◆ cpDelp_mole()

doublereal cpDelp_mole ( ) const
virtual

Get the difference in standard state heat capacity between the current pressure and the reference pressure, p0.

Definition at line 127 of file PDSS.cpp.

References PDSS::cp_mole(), PDSS::cp_R_ref(), and Cantera::GasConstant.

◆ refPressure()

doublereal refPressure ( ) const
inline

Return the reference pressure for this phase.

Definition at line 271 of file PDSS.h.

References PDSS::m_p0.

◆ minTemp()

doublereal minTemp ( ) const
inline

return the minimum temperature

Definition at line 276 of file PDSS.h.

References PDSS::m_minTemp.

◆ maxTemp()

doublereal maxTemp ( ) const
inline

return the minimum temperature

Definition at line 281 of file PDSS.h.

References PDSS::m_maxTemp.

◆ gibbs_RT_ref()

doublereal gibbs_RT_ref ( ) const
virtual

Return the molar Gibbs free energy divided by RT at reference pressure.

Returns
The reference state Gibbs free energy at the current temperature, divided by RT.

Reimplemented in PDSS_Nondimensional, PDSS_HKFT, PDSS_IonsFromNeutral, and PDSS_Water.

Definition at line 87 of file PDSS.cpp.

Referenced by PDSS::gibbsDelp_mole().

◆ enthalpy_RT_ref()

doublereal enthalpy_RT_ref ( ) const
virtual

Return the molar enthalpy divided by RT at reference pressure.

Returns
The species reference state enthalpy at the current temperature, divided by RT.

Reimplemented in PDSS_Nondimensional, PDSS_HKFT, PDSS_IonsFromNeutral, and PDSS_Water.

Definition at line 92 of file PDSS.cpp.

Referenced by VPStandardStateTP::_updateStandardStateThermo(), and PDSS::enthalpyDelp_mole().

◆ entropy_R_ref()

doublereal entropy_R_ref ( ) const
virtual

Return the molar entropy divided by R at reference pressure.

Returns
The species reference state entropy at the current temperature, divided by R.

Reimplemented in PDSS_Nondimensional, PDSS_HKFT, PDSS_IonsFromNeutral, and PDSS_Water.

Definition at line 97 of file PDSS.cpp.

Referenced by VPStandardStateTP::_updateStandardStateThermo(), and PDSS::entropyDelp_mole().

◆ cp_R_ref()

doublereal cp_R_ref ( ) const
virtual

Return the molar heat capacity divided by R at reference pressure.

Returns
The species reference state heat capacity divided by R at the current temperature.

Reimplemented in PDSS_Nondimensional, PDSS_HKFT, PDSS_IonsFromNeutral, and PDSS_Water.

Definition at line 102 of file PDSS.cpp.

Referenced by VPStandardStateTP::_updateStandardStateThermo(), and PDSS::cpDelp_mole().

◆ molarVolume_ref()

doublereal molarVolume_ref ( ) const
virtual

Return the molar volume at reference pressure.

Returns
The reference state molar volume. units are m**3 kmol-1.

Reimplemented in PDSS_Nondimensional, PDSS_HKFT, PDSS_IonsFromNeutral, and PDSS_Water.

Definition at line 107 of file PDSS.cpp.

Referenced by VPStandardStateTP::_updateStandardStateThermo().

◆ pressure()

doublereal pressure ( ) const
virtual

Returns the pressure (Pa)

Reimplemented in PDSS_IdealGas, and PDSS_Water.

Definition at line 132 of file PDSS.cpp.

References PDSS::m_pres.

◆ setPressure()

void setPressure ( doublereal  pres)
virtual

Sets the pressure in the object.

Currently, this sets the pressure in the PDSS object. It is indeterminant what happens to the owning VPStandardStateTP object.

Parameters
presPressure to be set (Pascal)

Reimplemented in PDSS_ConstVol, PDSS_IdealGas, PDSS_SSVol, and PDSS_Water.

Definition at line 157 of file PDSS.cpp.

References PDSS::m_pres.

Referenced by PDSS_HKFT::setState_TP().

◆ thermalExpansionCoeff()

doublereal thermalExpansionCoeff ( ) const
virtual

Return the volumetric thermal expansion coefficient. Units: 1/K.

The thermal expansion coefficient is defined as

\[ \beta = \frac{1}{v}\left(\frac{\partial v}{\partial T}\right)_P \]

Reimplemented in PDSS_Water.

Definition at line 137 of file PDSS.cpp.

◆ setTemperature()

void setTemperature ( doublereal  temp)
virtual

Set the internal temperature.

Parameters
tempTemperature (Kelvin)

Reimplemented in PDSS_ConstVol, PDSS_IdealGas, PDSS_SSVol, and PDSS_Water.

Definition at line 167 of file PDSS.cpp.

References PDSS::m_temp.

Referenced by PDSS_HKFT::setState_TP().

◆ temperature()

doublereal temperature ( ) const
virtual

Return the current stored temperature.

Definition at line 162 of file PDSS.cpp.

References PDSS::m_temp.

Referenced by PDSS_Nondimensional::enthalpy_mole(), PDSS_Molar::enthalpy_RT(), PDSS_Nondimensional::gibbs_mole(), and PDSS_Molar::gibbs_RT().

◆ setState_TP()

void setState_TP ( doublereal  temp,
doublereal  pres 
)
virtual

Set the internal temperature and pressure.

Parameters
tempTemperature (Kelvin)
prespressure (Pascals)

Reimplemented in PDSS_ConstVol, PDSS_HKFT, PDSS_IdealGas, PDSS_IonsFromNeutral, PDSS_SSVol, and PDSS_Water.

Definition at line 181 of file PDSS.cpp.

Referenced by VPStandardStateTP::_updateStandardStateThermo(), and HMWSoln::satPressure().

◆ setState_TR()

void setState_TR ( doublereal  temp,
doublereal  rho 
)
virtual

Set the internal temperature and density.

Parameters
tempTemperature (Kelvin)
rhoDensity (kg m-3)

Reimplemented in PDSS_ConstVol, PDSS_IdealGas, and PDSS_Water.

Definition at line 186 of file PDSS.cpp.

◆ critTemperature()

doublereal critTemperature ( ) const
virtual

critical temperature

Reimplemented in PDSS_Water.

Definition at line 142 of file PDSS.cpp.

◆ critPressure()

doublereal critPressure ( ) const
virtual

critical pressure

Reimplemented in PDSS_Water.

Definition at line 147 of file PDSS.cpp.

◆ critDensity()

doublereal critDensity ( ) const
virtual

critical density

Reimplemented in PDSS_Water.

Definition at line 152 of file PDSS.cpp.

◆ satPressure()

doublereal satPressure ( doublereal  T)
virtual

saturation pressure

Parameters
TTemperature (Kelvin)

Reimplemented in PDSS_ConstVol, PDSS_SSVol, and PDSS_Water.

Definition at line 191 of file PDSS.cpp.

Referenced by HMWSoln::satPressure().

◆ molecularWeight()

doublereal molecularWeight ( ) const

Return the molecular weight of the species in units of kg kmol-1.

Definition at line 172 of file PDSS.cpp.

References PDSS::m_mw.

◆ setMolecularWeight()

void setMolecularWeight ( doublereal  mw)

Set the molecular weight of the species.

Parameters
mwMolecular Weight in kg kmol-1

Definition at line 176 of file PDSS.cpp.

References PDSS::m_mw.

◆ setReferenceThermo()

void setReferenceThermo ( shared_ptr< SpeciesThermoInterpType stit)
inline

Set the SpeciesThermoInterpType object used to calculate reference state properties.

Definition at line 398 of file PDSS.h.

References PDSS::m_spthermo.

◆ setParent()

virtual void setParent ( VPStandardStateTP phase,
size_t  k 
)
inlinevirtual

Set the parent VPStandardStateTP object of this PDSS object.

This information is only used by certain PDSS subclasses

Parameters
phasePointer to the parent phase
kIndex of this species in the phase

Reimplemented in PDSS_HKFT, and PDSS_IonsFromNeutral.

Definition at line 408 of file PDSS.h.

◆ initThermo()

virtual void initThermo ( )
inlinevirtual

Initialization routine.

This is a cascading call, where each level should call the the parent level.

Reimplemented in PDSS_ConstVol, PDSS_HKFT, PDSS_IdealGas, PDSS_IonsFromNeutral, and PDSS_SSVol.

Definition at line 415 of file PDSS.h.

Referenced by PDSS_ConstVol::initThermo(), PDSS_HKFT::initThermo(), PDSS_IdealGas::initThermo(), PDSS_IonsFromNeutral::initThermo(), PDSS_SSVol::initThermo(), and VPStandardStateTP::initThermo().

◆ setParameters()

void setParameters ( const AnyMap node)
inline

Set model parameters from an AnyMap phase description, for example from the equation-of-state field of a species definition.

Definition at line 419 of file PDSS.h.

References PDSS::m_input.

◆ getParameters()

virtual void getParameters ( AnyMap eosNode) const
inlinevirtual

◆ setParametersFromXML()

virtual void setParametersFromXML ( const XML_Node speciesNode)
inlinevirtual

Initialization routine for the PDSS object based on the speciesNode.

This is a cascading call, where each level should call the the parent level. This function is called before initThermo()

Deprecated:
The XML input format is deprecated and will be removed in Cantera 3.0.

Reimplemented in PDSS_ConstVol, PDSS_HKFT, PDSS_IonsFromNeutral, and PDSS_SSVol.

Definition at line 434 of file PDSS.h.

Referenced by PDSS_ConstVol::setParametersFromXML(), PDSS_HKFT::setParametersFromXML(), PDSS_IonsFromNeutral::setParametersFromXML(), and PDSS_SSVol::setParametersFromXML().

◆ reportParams()

void reportParams ( size_t &  kindex,
int &  type,
doublereal *const  c,
doublereal &  minTemp,
doublereal &  maxTemp,
doublereal &  refPressure 
) const
virtual

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

Parameters
kindexSpecies index (unused)
typeInteger type of the standard type (unused)
cVector of coefficients used to set the parameters for the standard state.
minTempoutput - Minimum temperature
maxTempoutput - Maximum temperature
refPressureoutput - reference pressure (Pa).

Reimplemented in PDSS_HKFT.

Definition at line 196 of file PDSS.cpp.

Member Data Documentation

◆ m_temp

doublereal m_temp
mutableprotected

◆ m_pres

doublereal m_pres
mutableprotected

◆ m_p0

doublereal m_p0
protected

◆ m_minTemp

doublereal m_minTemp
protected

◆ m_maxTemp

doublereal m_maxTemp
protected

◆ m_mw

doublereal m_mw
protected

◆ m_input

AnyMap m_input
protected

Input data supplied via setParameters.

This may include parameters for different phase models, which will be used when initThermo() is called.

Definition at line 474 of file PDSS.h.

Referenced by PDSS_ConstVol::initThermo(), PDSS_HKFT::initThermo(), PDSS_IonsFromNeutral::initThermo(), PDSS_SSVol::initThermo(), and PDSS::setParameters().

◆ m_spthermo

shared_ptr<SpeciesThermoInterpType> m_spthermo
protected

Pointer to the species thermodynamic property manager.

Not used in all PDSS models.

Definition at line 478 of file PDSS.h.

Referenced by PDSS_ConstVol::initThermo(), PDSS_IdealGas::initThermo(), PDSS_SSVol::initThermo(), PDSS::setReferenceThermo(), PDSS_ConstVol::setTemperature(), PDSS_IdealGas::setTemperature(), and PDSS_SSVol::setTemperature().


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