Cantera
2.1.2
|
Class for pressure dependent standard states that use a constant volume model. More...
#include <PDSS_ConstVol.h>
Public Member Functions | |
Constructors | |
PDSS_ConstVol (VPStandardStateTP *tp, size_t spindex) | |
Constructor. More... | |
PDSS_ConstVol (VPStandardStateTP *tp, size_t spindex, const std::string &inputFile, const std::string &id="") | |
Constructor that initializes the object by examining the input file of the ThermoPhase object. More... | |
PDSS_ConstVol (VPStandardStateTP *vptp_ptr, size_t spindex, const XML_Node &speciesNode, const XML_Node &phaseRef, bool spInstalled) | |
Constructor that initializes the object by examining the input file of the ThermoPhase object. More... | |
PDSS_ConstVol (const PDSS_ConstVol &b) | |
Copy Constructur. More... | |
PDSS_ConstVol & | operator= (const PDSS_ConstVol &b) |
Assignment operator. More... | |
virtual PDSS * | duplMyselfAsPDSS () const |
Duplication routine for objects which inherit from PDSS. More... | |
Molar Thermodynamic Properties of the Species Standard State in the Solution | |
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... | |
Properties of the Reference State of the Species in the Solution | |
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 void | setPressure (doublereal pres) |
Sets the pressure in the object. More... | |
virtual void | setTemperature (doublereal temp) |
Set the internal 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... | |
Miscellaneous properties of the standard state | |
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... | |
Initialization of the Object | |
virtual void | initThermo () |
Initialization routine for all of the shallow pointers. More... | |
void | constructPDSSFile (VPStandardStateTP *vptp_ptr, size_t spindex, const std::string &inputFile, const std::string &id) |
Initialization of a PDSS object using an input XML file. More... | |
void | constructPDSSXML (VPStandardStateTP *vptp_ptr, size_t spindex, const XML_Node &speciesNode, const XML_Node &phaseNode, bool spInstalled) |
Initialization of a PDSS object using an xml tree. More... | |
virtual void | initThermoXML (const XML_Node &phaseNode, const std::string &id) |
Initialization routine for the PDSS object based on the phaseNode. More... | |
Public Member Functions inherited from PDSS | |
PDSS () | |
Empty Constructor. More... | |
PDSS (VPStandardStateTP *tp, size_t spindex) | |
Constructor that initializes the object by examining the XML entries from the ThermoPhase object. More... | |
PDSS (const PDSS &b) | |
Copy Constructor. More... | |
PDSS & | operator= (const PDSS &b) |
Assignment operator. More... | |
virtual | ~PDSS () |
Destructor for the phase. 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... | |
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 | pressure () const |
Returns the pressure (Pa) More... | |
virtual doublereal | thermalExpansionCoeff () const |
Return the volumetric thermal expansion coefficient. Units: 1/K. More... | |
doublereal | temperature () const |
Return the current stored temperature. 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... | |
PDSS_enumType | reportPDSSType () const |
Returns the type of the standard state parameterization. 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... | |
virtual void | initAllPtrs (VPStandardStateTP *vptp_ptr, VPSSMgr *vpssmgr_ptr, SpeciesThermo *spthermo_ptr) |
Initialize or Reinitialize all shallow pointers in the object. More... | |
Private Attributes | |
doublereal | m_constMolarVolume |
Value of the constant molar volume for the species. More... | |
Additional Inherited Members | |
Protected Attributes inherited from PDSS | |
PDSS_enumType | m_pdssType |
Enumerated type describing the type of the PDSS object. More... | |
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... | |
VPStandardStateTP * | m_tp |
ThermoPhase which this species belongs to. More... | |
VPSSMgr * | m_vpssmgr_ptr |
Pointer to the VPSS manager for this object. More... | |
doublereal | m_mw |
Molecular Weight of the species. More... | |
size_t | m_spindex |
Species index in the ThermoPhase corresponding to this species. More... | |
SpeciesThermo * | m_spthermo |
Pointer to the species thermodynamic property manager. More... | |
doublereal * | m_h0_RT_ptr |
Reference state enthalpy divided by RT. More... | |
doublereal * | m_cp0_R_ptr |
Reference state heat capacity divided by R. More... | |
doublereal * | m_s0_R_ptr |
Reference state entropy divided by R. More... | |
doublereal * | m_g0_RT_ptr |
Reference state Gibbs free energy divided by RT. More... | |
doublereal * | m_V0_ptr |
Reference state molar volume (m3 kg-1) More... | |
doublereal * | m_hss_RT_ptr |
Standard state enthalpy divided by RT. More... | |
doublereal * | m_cpss_R_ptr |
Standard state heat capacity divided by R. More... | |
doublereal * | m_sss_R_ptr |
Standard state entropy divided by R. More... | |
doublereal * | m_gss_RT_ptr |
Standard state Gibbs free energy divided by RT. More... | |
doublereal * | m_Vss_ptr |
Standard State molar volume (m3 kg-1) More... | |
Class for pressure dependent standard states that use a constant volume model.
Definition at line 26 of file PDSS_ConstVol.h.
PDSS_ConstVol | ( | VPStandardStateTP * | tp, |
size_t | spindex | ||
) |
Constructor.
tp | Pointer to the ThermoPhase object pertaining to the phase |
spindex | Species index of the species in the phase |
Definition at line 25 of file PDSS_ConstVol.cpp.
References PDSS::m_pdssType.
Referenced by PDSS_ConstVol::duplMyselfAsPDSS().
PDSS_ConstVol | ( | VPStandardStateTP * | tp, |
size_t | spindex, | ||
const std::string & | inputFile, | ||
const std::string & | id = "" |
||
) |
Constructor that initializes the object by examining the input file of the ThermoPhase object.
This function calls the constructPDSSFile member function.
tp | Pointer to the ThermoPhase object pertaining to the phase |
spindex | Species index of the species in the phase |
inputFile | String name of the input file |
id | String name of the phase in the input file. The default is the empty string, in which case the first phase in the file is used. |
Definition at line 31 of file PDSS_ConstVol.cpp.
References PDSS_ConstVol::constructPDSSFile(), and PDSS::m_pdssType.
PDSS_ConstVol | ( | VPStandardStateTP * | vptp_ptr, |
size_t | spindex, | ||
const XML_Node & | speciesNode, | ||
const XML_Node & | phaseRef, | ||
bool | spInstalled | ||
) |
Constructor that initializes the object by examining the input file of the ThermoPhase object.
This function calls the constructPDSSXML member function.
vptp_ptr | Pointer to the ThermoPhase object pertaining to the phase |
spindex | Species index of the species in the phase |
speciesNode | Reference to the species XML tree. |
phaseRef | Reference to the XML tree containing the phase information. |
spInstalled | Boolean indicating whether the species is installed yet or not. |
Definition at line 39 of file PDSS_ConstVol.cpp.
References PDSS_ConstVol::constructPDSSXML(), and PDSS::m_pdssType.
PDSS_ConstVol | ( | const PDSS_ConstVol & | b | ) |
PDSS_ConstVol & operator= | ( | const PDSS_ConstVol & | b | ) |
Assignment operator.
b | Object to be copeid |
Definition at line 59 of file PDSS_ConstVol.cpp.
References PDSS_ConstVol::m_constMolarVolume, and PDSS::operator=().
|
virtual |
Duplication routine for objects which inherit from PDSS.
This function can be used to duplicate objects derived from PDSS even if the application only has a pointer to PDSS to work with.
Reimplemented from PDSS.
Definition at line 69 of file PDSS_ConstVol.cpp.
References PDSS_ConstVol::PDSS_ConstVol().
|
virtual |
Return the molar enthalpy in units of J kmol-1.
Reimplemented from PDSS.
Definition at line 160 of file PDSS_ConstVol.cpp.
References PDSS_ConstVol::enthalpy_RT(), Cantera::GasConstant, and PDSS::m_temp.
|
virtual |
Return the standard state molar enthalpy divided by RT.
Reimplemented from PDSS.
Definition at line 168 of file PDSS_ConstVol.cpp.
References PDSS::m_hss_RT_ptr, and PDSS::m_spindex.
Referenced by PDSS_ConstVol::enthalpy_mole().
|
virtual |
Return the molar internal Energy in units of J kmol-1.
Reimplemented from PDSS.
Definition at line 174 of file PDSS_ConstVol.cpp.
References Cantera::GasConstant, PDSS::m_h0_RT_ptr, PDSS::m_pres, PDSS::m_spindex, PDSS::m_temp, and PDSS::m_Vss_ptr.
|
virtual |
Return the molar entropy in units of J kmol-1 K-1.
Reimplemented from PDSS.
Definition at line 183 of file PDSS_ConstVol.cpp.
References PDSS_ConstVol::entropy_R(), and Cantera::GasConstant.
|
virtual |
Return the standard state entropy divided by RT.
Reimplemented from PDSS.
Definition at line 190 of file PDSS_ConstVol.cpp.
References PDSS::m_spindex, and PDSS::m_sss_R_ptr.
Referenced by PDSS_ConstVol::entropy_mole().
|
virtual |
Return the molar Gibbs free energy in units of J kmol-1.
Reimplemented from PDSS.
Definition at line 196 of file PDSS_ConstVol.cpp.
References Cantera::GasConstant, PDSS_ConstVol::gibbs_RT(), and PDSS::m_temp.
|
virtual |
Return the molar Gibbs free energy divided by RT.
Reimplemented from PDSS.
Definition at line 204 of file PDSS_ConstVol.cpp.
References PDSS::m_gss_RT_ptr, and PDSS::m_spindex.
Referenced by PDSS_ConstVol::gibbs_mole().
|
virtual |
Return the molar const pressure heat capacity in units of J kmol-1 K-1.
Reimplemented from PDSS.
Definition at line 210 of file PDSS_ConstVol.cpp.
References Cantera::GasConstant, PDSS::m_cpss_R_ptr, and PDSS::m_spindex.
Referenced by PDSS_ConstVol::cv_mole().
|
virtual |
Return the molar const pressure heat capacity divided by RT.
Reimplemented from PDSS.
Definition at line 217 of file PDSS_ConstVol.cpp.
References PDSS::m_cpss_R_ptr, and PDSS::m_spindex.
|
virtual |
Return the molar const volume heat capacity in units of J kmol-1 K-1.
Reimplemented from PDSS.
Definition at line 223 of file PDSS_ConstVol.cpp.
References PDSS_ConstVol::cp_mole(), PDSS::m_spindex, and PDSS::m_V0_ptr.
|
virtual |
Return the molar volume at standard state.
Reimplemented from PDSS.
Definition at line 229 of file PDSS_ConstVol.cpp.
References PDSS::m_spindex, and PDSS::m_Vss_ptr.
|
virtual |
Return the standard state density at standard state.
Reimplemented from PDSS.
Definition at line 235 of file PDSS_ConstVol.cpp.
References PDSS::m_mw, PDSS::m_spindex, and PDSS::m_Vss_ptr.
|
virtual |
Return the molar gibbs free energy divided by RT at reference pressure.
Reimplemented from PDSS.
Definition at line 242 of file PDSS_ConstVol.cpp.
References PDSS::m_g0_RT_ptr, and PDSS::m_spindex.
|
virtual |
Return the molar enthalpy divided by RT at reference pressure.
Reimplemented from PDSS.
Definition at line 247 of file PDSS_ConstVol.cpp.
References PDSS::m_h0_RT_ptr, and PDSS::m_spindex.
|
virtual |
Return the molar entropy divided by R at reference pressure.
Reimplemented from PDSS.
Definition at line 252 of file PDSS_ConstVol.cpp.
References PDSS::m_s0_R_ptr, and PDSS::m_spindex.
|
virtual |
Return the molar heat capacity divided by R at reference pressure.
Reimplemented from PDSS.
Definition at line 257 of file PDSS_ConstVol.cpp.
References PDSS::m_cp0_R_ptr, and PDSS::m_spindex.
|
virtual |
Return the molar volume at reference pressure.
Reimplemented from PDSS.
Definition at line 263 of file PDSS_ConstVol.cpp.
References PDSS::m_spindex, and PDSS::m_V0_ptr.
|
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 and to the VPSSMgr object.
pres | Pressure to be set (Pascal) |
Reimplemented from PDSS.
Definition at line 286 of file PDSS_ConstVol.cpp.
References Cantera::GasConstant, PDSS::m_gss_RT_ptr, PDSS::m_h0_RT_ptr, PDSS::m_hss_RT_ptr, PDSS::m_p0, PDSS::m_pres, PDSS::m_spindex, PDSS::m_sss_R_ptr, PDSS::m_temp, and PDSS::m_Vss_ptr.
Referenced by PDSS_ConstVol::setState_TP().
|
virtual |
Set the internal temperature.
temp | Temperature (Kelvin) |
Reimplemented from PDSS.
Definition at line 294 of file PDSS_ConstVol.cpp.
References Cantera::GasConstant, PDSS::m_cp0_R_ptr, PDSS::m_cpss_R_ptr, PDSS::m_g0_RT_ptr, PDSS::m_gss_RT_ptr, PDSS::m_h0_RT_ptr, PDSS::m_hss_RT_ptr, PDSS::m_p0, PDSS::m_pres, PDSS::m_s0_R_ptr, PDSS::m_spindex, PDSS::m_spthermo, PDSS::m_sss_R_ptr, PDSS::m_temp, PDSS::m_Vss_ptr, and SpeciesThermo::update_one().
Referenced by PDSS_ConstVol::setState_TP(), and PDSS_ConstVol::setState_TR().
|
virtual |
Set the internal temperature and pressure.
temp | Temperature (Kelvin) |
pres | pressure (Pascals) |
Reimplemented from PDSS.
Definition at line 310 of file PDSS_ConstVol.cpp.
References PDSS_ConstVol::setPressure(), and PDSS_ConstVol::setTemperature().
|
virtual |
Set the internal temperature and density.
temp | Temperature (Kelvin) |
rho | Density (kg m-3) |
Reimplemented from PDSS.
Definition at line 316 of file PDSS_ConstVol.cpp.
References PDSS_ConstVol::m_constMolarVolume, PDSS::m_mw, and PDSS_ConstVol::setTemperature().
|
virtual |
|
virtual |
|
virtual |
|
virtual |
saturation pressure
T | Temperature (Kelvin) |
Reimplemented from PDSS.
Definition at line 326 of file PDSS_ConstVol.cpp.
|
virtual |
Initialization routine for all of the shallow pointers.
This is a cascading call, where each level should call the the parent level.
The initThermo() routines get called before the initThermoXML() routines from the constructPDSSXML() routine.
Calls initPtrs();
Reimplemented from PDSS.
Definition at line 150 of file PDSS_ConstVol.cpp.
References PDSS::initThermo(), PDSS_ConstVol::m_constMolarVolume, PDSS::m_p0, PDSS::m_spindex, PDSS::m_tp, PDSS::m_V0_ptr, PDSS::m_Vss_ptr, SpeciesThermo::refPressure(), and ThermoPhase::speciesThermo().
void constructPDSSFile | ( | VPStandardStateTP * | vptp_ptr, |
size_t | spindex, | ||
const std::string & | inputFile, | ||
const std::string & | id | ||
) |
Initialization of a PDSS object using an input XML file.
This routine is a precursor to constructPDSSXML(XML_Node*) routine, which does most of the work.
vptp_ptr | Pointer to the Variable pressure ThermoPhase object This object must have already been malloced. |
spindex | Species index within the phase |
inputFile | XML file containing the description of the phase |
id | Optional parameter identifying the name of the phase. If none is given, the first XML phase element will be used. |
Definition at line 103 of file PDSS_ConstVol.cpp.
References XML_Node::build(), XML_Node::child(), PDSS_ConstVol::constructPDSSXML(), XML_Node::findByAttr(), Cantera::findInputFile(), Cantera::findXMLPhase(), Cantera::get_XML_NameID(), XML_Node::root(), and Phase::speciesNames().
Referenced by PDSS_ConstVol::PDSS_ConstVol().
void constructPDSSXML | ( | VPStandardStateTP * | vptp_ptr, |
size_t | spindex, | ||
const XML_Node & | speciesNode, | ||
const XML_Node & | phaseNode, | ||
bool | spInstalled | ||
) |
Initialization of a PDSS object using an xml tree.
This routine is a driver for the initialization of the object.
basic logic:
vptp_ptr | Pointer to the Variable pressure ThermoPhase object This object must have already been malloced. |
spindex | Species index within the phase |
speciesNode | XML Node containing the species information |
phaseNode | Reference to the phase Information for the phase that owns this species. |
spInstalled | Boolean indicating whether the species is already installed. |
Definition at line 74 of file PDSS_ConstVol.cpp.
References XML_Node::findByName(), ctml::getFloat(), PDSS::initThermo(), PDSS_ConstVol::m_constMolarVolume, PDSS::m_p0, PDSS::m_spindex, PDSS::m_tp, XML_Node::name(), SpeciesThermo::refPressure(), and ThermoPhase::speciesThermo().
Referenced by PDSS_ConstVol::constructPDSSFile(), and PDSS_ConstVol::PDSS_ConstVol().
|
virtual |
Initialization routine for the PDSS object based on the phaseNode.
This is a cascading call, where each level should call the the parent level.
phaseNode | Reference to the phase Information for the phase that owns this species. |
id | Optional parameter identifying the name of the phase. If none is given, the first XML phase element will be used. |
Reimplemented from PDSS.
Definition at line 141 of file PDSS_ConstVol.cpp.
References PDSS::initThermoXML(), PDSS::m_maxTemp, PDSS::m_minTemp, PDSS::m_mw, PDSS::m_p0, PDSS::m_spindex, PDSS::m_spthermo, PDSS::m_tp, SpeciesThermo::maxTemp(), SpeciesThermo::minTemp(), Phase::molecularWeight(), and SpeciesThermo::refPressure().
|
private |
Value of the constant molar volume for the species.
m3 / kmol
Definition at line 183 of file PDSS_ConstVol.h.
Referenced by PDSS_ConstVol::constructPDSSXML(), PDSS_ConstVol::initThermo(), PDSS_ConstVol::operator=(), and PDSS_ConstVol::setState_TR().