Cantera 2.6.0

Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
PDSS_HKFT Class Reference
Models of Phases of Matter » Thermodynamic Properties » Species Standard-State Thermodynamic Properties

Class for pressure dependent standard states corresponding to ionic solutes in electrolyte water. More...

`#include <PDSS_HKFT.h>`

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

## Public Member Functions
| PDSS_HKFT ()
| Default Constructor. More...
Molar Thermodynamic Properties of the Solution
virtual doublereal | enthalpy_mole () const
| Return the molar enthalpy in units of J kmol-1. More...
doublereal | enthalpy_mole2 () const
| Return the molar enthalpy in units of J kmol-1. 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 | gibbs_mole () const
| Return the molar Gibbs free energy in units of J kmol-1. More...
virtual doublereal | cp_mole () const
| Return the molar const pressure 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
doublereal | refPressure () const
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 | setState_TP (doublereal temp, doublereal pres)
| Set the internal temperature and pressure. More...
Initialization of the Object
void | setParent (VPStandardStateTP *phase, size_t k)
| Set the parent VPStandardStateTP object of this PDSS object. More...
virtual void | initThermo ()
| Initialization routine. More...
void | setDeltaH0 (double dh0)
| Set enthalpy of formation at Pr, Tr [J/kmol]. More...
void | setDeltaG0 (double dg0)
| Set Gibbs free energy of formation at Pr, Tr [J/kmol]. More...
void | setS0 (double s0)
| Set entropy of formation at Pr, Tr [J/kmol/K]. More...
void | set_a (double *a)
| Set "a" coefficients (array of 4 elements). More...
void | set_c (double *c)
| Set "c" coefficients (array of 2 elements). More...
void | setOmega (double omega)
| Set omega [J/kmol]. More...
void | setParametersFromXML (const XML_Node &speciesNode)
| Initialization routine for the PDSS object based on the speciesNode. More...
virtual void | getParameters (AnyMap &eosNode) const
| Store the parameters needed to reconstruct a copy of this PDSS object. 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...
Public Member Functions inherited from PDSS_Molar
virtual doublereal | enthalpy_RT () const
| Return the standard state molar enthalpy divided by RT. More...
virtual doublereal | entropy_R () const
| Return the standard state entropy divided by RT. More...
virtual doublereal | gibbs_RT () const
| Return the molar Gibbs free energy divided by RT. More...
virtual doublereal | cp_R () const
| Return the molar const pressure heat capacity divided by RT. More...
Public Member Functions inherited from PDSS
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...
| PDSS ()
| Default Constructor. More...
| PDSS (const PDSS &b)=delete
PDSS & | operator= (const PDSS &b)=delete
virtual | ~PDSS ()
virtual doublereal | cv_mole () const
| Return the molar const volume heat capacity in units of J kmol-1 K-1. 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 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...
void | setReferenceThermo (shared_ptr< SpeciesThermoInterpType > stit)
| Set the SpeciesThermoInterpType object used to calculate reference state properties. 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...

## Private Member Functions
doublereal | deltaG () const
| Main routine that actually calculates the Gibbs free energy difference between the reference state at Tr, Pr and T,P. More...
doublereal | deltaS () const
| Main routine that actually calculates the entropy difference between the reference state at Tr, Pr and T,P. More...
doublereal | deltaH () const
| Routine that actually calculates the enthalpy difference between the reference state at Tr, Pr and T,P. More...
doublereal | ag (const doublereal temp, const int ifunc=0) const
| Internal formula for the calculation of a_g() More...
doublereal | bg (const doublereal temp, const int ifunc=0) const
| Internal formula for the calculation of b_g() More...
doublereal | g (const doublereal temp, const doublereal pres, const int ifunc=0) const
| function g appearing in the formulation More...
doublereal | f (const doublereal temp, const doublereal pres, const int ifunc=0) const
| Difference function f appearing in the formulation. More...
doublereal | gstar (const doublereal temp, const doublereal pres, const int ifunc=0) const
| Evaluate the Gstar value appearing in the HKFT formulation. More...
doublereal | LookupGe (const std::string &elemName)
| Function to look up Element Free Energies. More...
void | convertDGFormation ()
| Translate a Gibbs free energy of formation value to a NIST-based Chemical potential. More...

## Private Attributes
VPStandardStateTP * | m_tp
| Parent VPStandardStateTP (ThermoPhase) object. More...
size_t | m_spindex
| Index of this species within the parent phase. More...
PDSS_Water * | m_waterSS
| Water standard state calculator. More...
doublereal | m_densWaterSS
| density of standard-state water. internal temporary variable More...
std::unique_ptr< WaterProps > | m_waterProps
| Pointer to the water property calculator. More...
doublereal | m_deltaG_formation_tr_pr
| Input value of deltaG of Formation at Tr and Pr (cal gmol-1) More...
doublereal | m_deltaH_formation_tr_pr
| Input value of deltaH of Formation at Tr and Pr (cal gmol-1) More...
doublereal | m_Mu0_tr_pr
| Value of the Absolute Gibbs Free Energy NIST scale at T_r and P_r. More...
doublereal | m_Entrop_tr_pr
| Input value of S_j at Tr and Pr (cal gmol-1 K-1) More...
doublereal | m_a1
| Input a1 coefficient (cal gmol-1 bar-1) More...
doublereal | m_a2
| Input a2 coefficient (cal gmol-1) More...
doublereal | m_a3
| Input a3 coefficient (cal K gmol-1 bar-1) More...
doublereal | m_a4
| Input a4 coefficient (cal K gmol-1) More...
doublereal | m_c1
| Input c1 coefficient (cal gmol-1 K-1) More...
doublereal | m_c2
| Input c2 coefficient (cal K gmol-1) More...
doublereal | m_omega_pr_tr
| Input omega_pr_tr coefficient(cal gmol-1) More...
doublereal | m_Y_pr_tr
| y = dZdT = 1/(esp*esp) desp/dT at 298.15 and 1 bar More...
doublereal | m_Z_pr_tr
| Z = -1 / relEpsilon at 298.15 and 1 bar. More...
doublereal | m_presR_bar
| Reference pressure is 1 atm in units of bar= 1.0132. More...
doublereal | m_domega_jdT_prtr
| small value that is not quite zero More...
doublereal | m_charge_j
| Charge of the ion. More...

## Static Private Attributes
static int | s_InputInconsistencyErrorExit = 1
| Static variable determining error exiting. More...

## Additional Inherited Members
Protected Attributes inherited from PDSS
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< SpeciesThermoInterpType > | m_spthermo
| Pointer to the species thermodynamic property manager. More...

## Detailed Description

Class for pressure dependent standard states corresponding to ionic solutes in electrolyte water.

Definition at line 27 of file PDSS_HKFT.h.

## Constructor & Destructor Documentation

## ◆ PDSS_HKFT()

PDSS_HKFT | ( |  | ) |

Default Constructor.

Definition at line 26 of file PDSS_HKFT.cpp.

References PDSS::m_pres, PDSS_HKFT::m_presR_bar, and Cantera::OneAtm.

## 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 from PDSS.

Definition at line 51 of file PDSS_HKFT.cpp.

References PDSS_HKFT::entropy_mole(), PDSS_HKFT::gibbs_mole(), and PDSS::m_temp.

## ◆ enthalpy_mole2()

doublereal enthalpy_mole2 | ( |  | ) | const

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.

Note this is just an extra routine to check the arithmetic

Returns
  the species standard state enthalpy in J kmol-1

Definition at line 58 of file PDSS_HKFT.cpp.

References PDSS_HKFT::deltaH(), PDSS_HKFT::m_Entrop_tr_pr, PDSS_HKFT::m_Mu0_tr_pr, and Cantera::toSI().

## ◆ 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 from PDSS.

Definition at line 64 of file PDSS_HKFT.cpp.

References PDSS_Molar::enthalpy_RT(), PDSS::m_pres, and PDSS_HKFT::molarVolume().

## ◆ 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 from PDSS.

Definition at line 69 of file PDSS_HKFT.cpp.

References PDSS_HKFT::deltaS(), PDSS_HKFT::m_Entrop_tr_pr, and Cantera::toSI().

Referenced by PDSS_HKFT::enthalpy_mole().

## ◆ 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 from PDSS.

Definition at line 74 of file PDSS_HKFT.cpp.

References PDSS_HKFT::deltaG(), and PDSS_HKFT::m_Mu0_tr_pr.

Referenced by PDSS_HKFT::enthalpy_mole().

## ◆ 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 from PDSS.

Definition at line 79 of file PDSS_HKFT.cpp.

References PDSS_HKFT::gstar(), PDSS_HKFT::m_a3, PDSS_HKFT::m_a4, PDSS_HKFT::m_c1, PDSS_HKFT::m_c2, PDSS_HKFT::m_charge_j, PDSS_HKFT::m_domega_jdT_prtr, PDSS_HKFT::m_omega_pr_tr, PDSS::m_pres, PDSS_HKFT::m_presR_bar, PDSS::m_temp, PDSS_HKFT::m_waterProps, PDSS_HKFT::m_Z_pr_tr, and Cantera::toSI().

## ◆ 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 from PDSS.

Definition at line 138 of file PDSS_HKFT.cpp.

References PDSS_HKFT::gstar(), PDSS_HKFT::m_a1, PDSS_HKFT::m_a2, PDSS_HKFT::m_a3, PDSS_HKFT::m_a4, PDSS_HKFT::m_charge_j, PDSS_HKFT::m_omega_pr_tr, PDSS::m_pres, PDSS::m_temp, PDSS_HKFT::m_waterProps, and Cantera::toSI().

Referenced by PDSS_HKFT::density(), PDSS_HKFT::intEnergy_mole(), and PDSS_HKFT::molarVolume_ref().

## ◆ 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 from PDSS.

Definition at line 181 of file PDSS_HKFT.cpp.

References PDSS::m_mw, and PDSS_HKFT::molarVolume().

## ◆ refPressure()

doublereal refPressure | ( |  | ) | const
| inline

Definition at line 62 of file PDSS_HKFT.h.

## ◆ 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 from PDSS.

Definition at line 186 of file PDSS_HKFT.cpp.

References PDSS_Molar::gibbs_RT(), PDSS::m_pres, PDSS::m_temp, PDSS_HKFT::m_waterSS, and PDSS_Water::pref_safe().

## ◆ 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 from PDSS.

Definition at line 195 of file PDSS_HKFT.cpp.

References PDSS_Molar::enthalpy_RT(), PDSS::m_pres, PDSS::m_temp, PDSS_HKFT::m_waterSS, and PDSS_Water::pref_safe().

## ◆ 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 from PDSS.

Definition at line 204 of file PDSS_HKFT.cpp.

References PDSS_Molar::entropy_R(), PDSS::m_pres, PDSS::m_temp, PDSS_HKFT::m_waterSS, and PDSS_Water::pref_safe().

## ◆ 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 from PDSS.

Definition at line 213 of file PDSS_HKFT.cpp.

References PDSS_Molar::cp_R(), PDSS::m_pres, PDSS::m_temp, PDSS_HKFT::m_waterSS, and PDSS_Water::pref_safe().

## ◆ 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 from PDSS.

Definition at line 222 of file PDSS_HKFT.cpp.

References PDSS::m_pres, PDSS::m_temp, PDSS_HKFT::m_waterSS, PDSS_HKFT::molarVolume(), and PDSS_Water::pref_safe().

## ◆ setState_TP()

void setState_TP | ( | doublereal | temp,
|  | doublereal | pres
| ) |  |
| virtual

Set the internal temperature and pressure.

Parameters

  temp | Temperature (Kelvin)
  pres | pressure (Pascals)

Reimplemented from PDSS.

Definition at line 231 of file PDSS_HKFT.cpp.

References PDSS::setPressure(), and PDSS::setTemperature().

## ◆ setParent()

void setParent | ( | VPStandardStateTP * | phase,
|  | size_t | k
| ) |  |
| inline virtual

Set the parent VPStandardStateTP object of this PDSS object.

This information is only used by certain PDSS subclasses

Parameters

  phase | Pointer to the parent phase
  k | Index of this species in the phase

Reimplemented from PDSS.

Definition at line 82 of file PDSS_HKFT.h.

References PDSS_HKFT::m_spindex, and PDSS_HKFT::m_tp.

## ◆ initThermo()

void initThermo | ( |  | ) |
| virtual

Initialization routine.

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

Reimplemented from PDSS.

Definition at line 237 of file PDSS_HKFT.cpp.

References Phase::charge(), AnyMap::convert(), PDSS_HKFT::convertDGFormation(), PDSS_Water::density(), PDSS_HKFT::gstar(), AnyMap::hasKey(), PDSS::initThermo(), PDSS_HKFT::m_a1, PDSS_HKFT::m_a2, PDSS_HKFT::m_a3, PDSS_HKFT::m_a4, PDSS_HKFT::m_c1, PDSS_HKFT::m_c2, PDSS_HKFT::m_charge_j, PDSS_HKFT::m_deltaG_formation_tr_pr, PDSS_HKFT::m_deltaH_formation_tr_pr, PDSS_HKFT::m_densWaterSS, PDSS_HKFT::m_domega_jdT_prtr, PDSS_HKFT::m_Entrop_tr_pr, PDSS::m_input, PDSS_HKFT::m_Mu0_tr_pr, PDSS_HKFT::m_omega_pr_tr, PDSS::m_pres, PDSS_HKFT::m_presR_bar, PDSS_HKFT::m_spindex, PDSS::m_temp, PDSS_HKFT::m_tp, PDSS_HKFT::m_waterProps, PDSS_HKFT::m_waterSS, PDSS_HKFT::m_Y_pr_tr, PDSS_HKFT::m_Z_pr_tr, Cantera::OneAtm, PDSS_HKFT::s_InputInconsistencyErrorExit, PDSS_Water::setState_TP(), Phase::speciesName(), Cantera::toSI(), AnyMap::units(), and Cantera::warn_user().

## ◆ setDeltaH0()

void setDeltaH0 | ( | double | dh0 | ) |

Set enthalpy of formation at Pr, Tr [J/kmol].

Definition at line 346 of file PDSS_HKFT.cpp.

References PDSS_HKFT::m_deltaH_formation_tr_pr, and Cantera::toSI().

Referenced by PDSS_HKFT::setParametersFromXML().

## ◆ setDeltaG0()

void setDeltaG0 | ( | double | dg0 | ) |

Set Gibbs free energy of formation at Pr, Tr [J/kmol].

Definition at line 350 of file PDSS_HKFT.cpp.

References PDSS_HKFT::m_deltaG_formation_tr_pr, and Cantera::toSI().

Referenced by PDSS_HKFT::setParametersFromXML().

## ◆ setS0()

void setS0 | ( | double | s0 | ) |

Set entropy of formation at Pr, Tr [J/kmol/K].

Definition at line 354 of file PDSS_HKFT.cpp.

Referenced by PDSS_HKFT::setParametersFromXML().

## ◆ set_a()

void set_a | ( | double * | a | ) |

Set "a" coefficients (array of 4 elements).

Units of each coefficient are [J/kmol/Pa, J/kmol, J*K/kmol/Pa, J*K/kmol]

Definition at line 358 of file PDSS_HKFT.cpp.

References PDSS_HKFT::m_a1, PDSS_HKFT::m_a2, PDSS_HKFT::m_a3, PDSS_HKFT::m_a4, and Cantera::toSI().

Referenced by PDSS_HKFT::setParametersFromXML().

## ◆ set_c()

void set_c | ( | double * | c | ) |

Set "c" coefficients (array of 2 elements).

Units of each coefficient are [J/kmol/K, J*K/kmol]

Definition at line 365 of file PDSS_HKFT.cpp.

References PDSS_HKFT::m_c1, PDSS_HKFT::m_c2, and Cantera::toSI().

Referenced by PDSS_HKFT::setParametersFromXML().

## ◆ setOmega()

void setOmega | ( | double | omega | ) |

Set omega [J/kmol].

Definition at line 370 of file PDSS_HKFT.cpp.

References PDSS_HKFT::m_omega_pr_tr, and Cantera::toSI().

Referenced by PDSS_HKFT::setParametersFromXML().

## ◆ setParametersFromXML()

void setParametersFromXML | ( | const XML_Node & | speciesNode | ) |
| virtual

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 from PDSS.

Definition at line 374 of file PDSS_HKFT.cpp.

References XML_Node::attrib(), Cantera::caseInsensitiveEquals(), XML_Node::findByName(), Cantera::fpValueCheck(), Cantera::getFloat(), XML_Node::hasChild(), PDSS::m_maxTemp, PDSS::m_minTemp, PDSS::m_p0, XML_Node::name(), Cantera::OneAtm, PDSS_HKFT::set_a(), PDSS_HKFT::set_c(), PDSS_HKFT::setDeltaG0(), PDSS_HKFT::setDeltaH0(), PDSS_HKFT::setOmega(), PDSS::setParametersFromXML(), PDSS_HKFT::setS0(), and Cantera::strSItoDbl().

## ◆ getParameters()

void getParameters | ( | AnyMap & | eosNode | ) | const
| virtual

Store the parameters needed to reconstruct a copy of this PDSS object.

Reimplemented from PDSS.

Definition at line 457 of file PDSS_HKFT.cpp.

References PDSS::getParameters(), PDSS_HKFT::m_a1, PDSS_HKFT::m_a2, PDSS_HKFT::m_a3, PDSS_HKFT::m_a4, PDSS_HKFT::m_c1, PDSS_HKFT::m_c2, PDSS_HKFT::m_deltaG_formation_tr_pr, PDSS_HKFT::m_deltaH_formation_tr_pr, PDSS_HKFT::m_Entrop_tr_pr, and PDSS_HKFT::m_omega_pr_tr.

## ◆ 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.

The following parameters are reported

- c[0] = m_deltaG_formation_tr_pr;
- c[1] = m_deltaH_formation_tr_pr;
- c[2] = m_Mu0_tr_pr;
- c[3] = m_Entrop_tr_pr;
- c[4] = m_a1;
- c[5] = m_a2;
- c[6] = m_a3;
- c[7] = m_a4;
- c[8] = m_c1;
- c[9] = m_c2;
- c[10] = m_omega_pr_tr;

Parameters

  kindex | Species index
  type | Integer type of the standard type
  c | Vector of coefficients used to set the parameters for the standard state.
  minTemp | output - Minimum temperature
  maxTemp | output - Maximum temperature
  refPressure | output - reference pressure (Pa).

Reimplemented from PDSS.

Definition at line 760 of file PDSS_HKFT.cpp.

## ◆ deltaG()

doublereal deltaG | ( |  | ) | const
| private

Main routine that actually calculates the Gibbs free energy difference between the reference state at Tr, Pr and T,P.

This is eEqn. 59 in Johnson et al. (1992).

Definition at line 528 of file PDSS_HKFT.cpp.

References PDSS_HKFT::gstar(), PDSS_HKFT::m_a1, PDSS_HKFT::m_a2, PDSS_HKFT::m_a3, PDSS_HKFT::m_a4, PDSS_HKFT::m_c1, PDSS_HKFT::m_c2, PDSS_HKFT::m_charge_j, PDSS_HKFT::m_Entrop_tr_pr, PDSS_HKFT::m_omega_pr_tr, PDSS::m_pres, PDSS_HKFT::m_presR_bar, PDSS::m_temp, PDSS_HKFT::m_waterProps, PDSS_HKFT::m_Y_pr_tr, PDSS_HKFT::m_Z_pr_tr, and Cantera::toSI().

Referenced by PDSS_HKFT::gibbs_mole().

## ◆ deltaS()

doublereal deltaS | ( |  | ) | const
| private

Main routine that actually calculates the entropy difference between the reference state at Tr, Pr and T,P.

This is Eqn. 61 in Johnson et al. (1992). Actually, there appears to be an error in the latter. This is a correction.

Definition at line 562 of file PDSS_HKFT.cpp.

References PDSS_HKFT::gstar(), PDSS_HKFT::m_a3, PDSS_HKFT::m_a4, PDSS_HKFT::m_c1, PDSS_HKFT::m_c2, PDSS_HKFT::m_charge_j, PDSS_HKFT::m_domega_jdT_prtr, PDSS_HKFT::m_omega_pr_tr, PDSS::m_pres, PDSS_HKFT::m_presR_bar, PDSS::m_temp, PDSS_HKFT::m_waterProps, PDSS_HKFT::m_Y_pr_tr, PDSS_HKFT::m_Z_pr_tr, and Cantera::toSI().

Referenced by PDSS_HKFT::entropy_mole().

## ◆ deltaH()

doublereal deltaH | ( |  | ) | const
| private

Routine that actually calculates the enthalpy difference between the reference state at Tr, Pr and T,P.

This is an extra routine that was added to check the arithmetic

Definition at line 479 of file PDSS_HKFT.cpp.

References PDSS_HKFT::gstar(), PDSS_HKFT::m_a1, PDSS_HKFT::m_a2, PDSS_HKFT::m_a3, PDSS_HKFT::m_a4, PDSS_HKFT::m_c1, PDSS_HKFT::m_c2, PDSS_HKFT::m_charge_j, PDSS_HKFT::m_domega_jdT_prtr, PDSS_HKFT::m_omega_pr_tr, PDSS::m_pres, PDSS_HKFT::m_presR_bar, PDSS::m_temp, PDSS_HKFT::m_waterProps, PDSS_HKFT::m_Y_pr_tr, PDSS_HKFT::m_Z_pr_tr, and Cantera::toSI().

Referenced by PDSS_HKFT::enthalpy_mole2().

## ◆ ag()

doublereal ag | ( | const doublereal | temp,
|  | const int | ifunc = `0`
| ) |  | const
| private

Internal formula for the calculation of a_g()

The output of this is in units of Angstroms

Parameters

  temp | Temperature (K)
  ifunc | parameters specifying the desired information 0 function value 1 derivative wrt temperature 2 2nd derivative wrt temperature 3 derivative wrt pressure

Definition at line 603 of file PDSS_HKFT.cpp.

Referenced by PDSS_HKFT::g().

## ◆ bg()

doublereal bg | ( | const doublereal | temp,
|  | const int | ifunc = `0`
| ) |  | const
| private

Internal formula for the calculation of b_g()

the output of this is unitless

Parameters

  temp | Temperature (K)
  ifunc | parameters specifying the desired information 0 function value 1 derivative wrt temperature 2 2nd derivative wrt temperature 3 derivative wrt pressure

Definition at line 617 of file PDSS_HKFT.cpp.

Referenced by PDSS_HKFT::g().

## ◆ g()

doublereal g | ( | const doublereal | temp,
|  | const doublereal | pres,
|  | const int | ifunc = `0`
| ) |  | const
| private

function g appearing in the formulation

Function g appearing in the Johnson et al formulation

Parameters

  temp | Temperature kelvin
  pres | Pressure (pascal)
  ifunc | parameters specifying the desired information 0 function value 1 derivative wrt temperature 2 2nd derivative wrt temperature 3 derivative wrt pressure

Definition at line 665 of file PDSS_HKFT.cpp.

References PDSS_HKFT::ag(), PDSS_HKFT::bg(), PDSS_Water::density(), PDSS_HKFT::m_densWaterSS, PDSS_HKFT::m_waterSS, and PDSS_Water::setState_TP().

Referenced by PDSS_HKFT::gstar().

## ◆ f()

doublereal f | ( | const doublereal | temp,
|  | const doublereal | pres,
|  | const int | ifunc = `0`
| ) |  | const
| private

Difference function f appearing in the formulation.

Function f appearing in the Johnson et al formulation of omega_j Eqn. 33 ref

Parameters

  temp | Temperature kelvin
  pres | Pressure (pascal)
  ifunc | parameters specifying the desired information 0 function value 1 derivative wrt temperature 2 2nd derivative wrt temperature 3 derivative wrt pressure

Definition at line 631 of file PDSS_HKFT.cpp.

Referenced by PDSS_HKFT::gstar().

## ◆ gstar()

doublereal gstar | ( | const doublereal | temp,
|  | const doublereal | pres,
|  | const int | ifunc = `0`
| ) |  | const
| private

Evaluate the Gstar value appearing in the HKFT formulation.

Parameters

  temp | Temperature kelvin
  pres | Pressure (pascal)
  ifunc | parameters specifying the desired information 0 function value 1 derivative wrt temperature 2 2nd derivative wrt temperature 3 derivative wrt pressure

Definition at line 718 of file PDSS_HKFT.cpp.

References PDSS_HKFT::f(), and PDSS_HKFT::g().

Referenced by PDSS_HKFT::cp_mole(), PDSS_HKFT::deltaG(), PDSS_HKFT::deltaH(), PDSS_HKFT::deltaS(), PDSS_HKFT::initThermo(), and PDSS_HKFT::molarVolume().

## ◆ LookupGe()

doublereal LookupGe | ( | const std::string & | elemName | ) |
| private

Function to look up Element Free Energies.

This function looks up the argument string in the element database and returns the associated 298 K Gibbs Free energy of the element in its stable state.

Parameters

  elemName | String. Only the first 3 characters are significant

Returns
  value contains the Gibbs free energy for that element

Exceptions

  CanteraError | If a match is not found, a CanteraError is thrown as well

Definition at line 726 of file PDSS_HKFT.cpp.

References Phase::elementIndex(), ENTROPY298_UNKNOWN, Phase::entropyElement298(), PDSS_HKFT::m_tp, and Cantera::npos.

Referenced by PDSS_HKFT::convertDGFormation().

## ◆ convertDGFormation()

void convertDGFormation | ( |  | ) |
| private

Translate a Gibbs free energy of formation value to a NIST-based Chemical potential.

Internally, this function is used to translate the input value, m_deltaG_formation_tr_pr, to the internally stored value, m_Mu0_tr_pr.

Definition at line 740 of file PDSS_HKFT.cpp.

References Phase::elementName(), PDSS_HKFT::LookupGe(), PDSS_HKFT::m_charge_j, PDSS_HKFT::m_deltaG_formation_tr_pr, PDSS_HKFT::m_Mu0_tr_pr, PDSS_HKFT::m_spindex, PDSS_HKFT::m_tp, Phase::nAtoms(), Phase::nElements(), and Cantera::toSI().

Referenced by PDSS_HKFT::initThermo().

## Member Data Documentation

## ◆ m_tp

VPStandardStateTP* m_tp
| private

Parent VPStandardStateTP (ThermoPhase) object.

Definition at line 142 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::convertDGFormation(), PDSS_HKFT::initThermo(), PDSS_HKFT::LookupGe(), and PDSS_HKFT::setParent().

## ◆ m_spindex

size_t m_spindex
| private

Index of this species within the parent phase.

Definition at line 143 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::convertDGFormation(), PDSS_HKFT::initThermo(), and PDSS_HKFT::setParent().

## ◆ m_waterSS

PDSS_Water* m_waterSS
| private

Water standard state calculator.

derived from the equation of state for water. This object doesn't own the object. Just a shallow pointer.

Definition at line 262 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::cp_R_ref(), PDSS_HKFT::enthalpy_RT_ref(), PDSS_HKFT::entropy_R_ref(), PDSS_HKFT::g(), PDSS_HKFT::gibbs_RT_ref(), PDSS_HKFT::initThermo(), and PDSS_HKFT::molarVolume_ref().

## ◆ m_densWaterSS

doublereal m_densWaterSS
| mutable private

density of standard-state water. internal temporary variable

Definition at line 265 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::g(), and PDSS_HKFT::initThermo().

## ◆ m_waterProps

std::unique_ptr<WaterProps> m_waterProps
| private

Pointer to the water property calculator.

Definition at line 268 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::cp_mole(), PDSS_HKFT::deltaG(), PDSS_HKFT::deltaH(), PDSS_HKFT::deltaS(), PDSS_HKFT::initThermo(), and PDSS_HKFT::molarVolume().

## ◆ m_deltaG_formation_tr_pr

doublereal m_deltaG_formation_tr_pr
| private

Input value of deltaG of Formation at Tr and Pr (cal gmol-1)

Tr = 298.15 Pr = 1 atm

This is the delta G for the formation reaction of the ion from elements in their stable state at Tr, Pr.

Definition at line 277 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::convertDGFormation(), PDSS_HKFT::getParameters(), PDSS_HKFT::initThermo(), and PDSS_HKFT::setDeltaG0().

## ◆ m_deltaH_formation_tr_pr

doublereal m_deltaH_formation_tr_pr
| private

Input value of deltaH of Formation at Tr and Pr (cal gmol-1)

Tr = 298.15 Pr = 1 atm

This is the delta H for the formation reaction of the ion from elements in their stable state at Tr, Pr.

Definition at line 286 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::getParameters(), PDSS_HKFT::initThermo(), and PDSS_HKFT::setDeltaH0().

## ◆ m_Mu0_tr_pr

doublereal m_Mu0_tr_pr
| private

Value of the Absolute Gibbs Free Energy NIST scale at T_r and P_r.

This is the NIST scale value of Gibbs free energy at T_r = 298.15 and P_r = 1 atm.

J kmol-1

Definition at line 295 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::convertDGFormation(), PDSS_HKFT::enthalpy_mole2(), PDSS_HKFT::gibbs_mole(), and PDSS_HKFT::initThermo().

## ◆ m_Entrop_tr_pr

doublereal m_Entrop_tr_pr
| private

Input value of S_j at Tr and Pr (cal gmol-1 K-1)

Tr = 298.15 Pr = 1 atm

Definition at line 301 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::deltaG(), PDSS_HKFT::enthalpy_mole2(), PDSS_HKFT::entropy_mole(), PDSS_HKFT::getParameters(), and PDSS_HKFT::initThermo().

## ◆ m_a1

doublereal m_a1
| private

Input a1 coefficient (cal gmol-1 bar-1)

Definition at line 304 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::deltaG(), PDSS_HKFT::deltaH(), PDSS_HKFT::getParameters(), PDSS_HKFT::initThermo(), PDSS_HKFT::molarVolume(), and PDSS_HKFT::set_a().

## ◆ m_a2

doublereal m_a2
| private

Input a2 coefficient (cal gmol-1)

Definition at line 307 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::deltaG(), PDSS_HKFT::deltaH(), PDSS_HKFT::getParameters(), PDSS_HKFT::initThermo(), PDSS_HKFT::molarVolume(), and PDSS_HKFT::set_a().

## ◆ m_a3

doublereal m_a3
| private

Input a3 coefficient (cal K gmol-1 bar-1)

Definition at line 310 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::cp_mole(), PDSS_HKFT::deltaG(), PDSS_HKFT::deltaH(), PDSS_HKFT::deltaS(), PDSS_HKFT::getParameters(), PDSS_HKFT::initThermo(), PDSS_HKFT::molarVolume(), and PDSS_HKFT::set_a().

## ◆ m_a4

doublereal m_a4
| private

Input a4 coefficient (cal K gmol-1)

Definition at line 313 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::cp_mole(), PDSS_HKFT::deltaG(), PDSS_HKFT::deltaH(), PDSS_HKFT::deltaS(), PDSS_HKFT::getParameters(), PDSS_HKFT::initThermo(), PDSS_HKFT::molarVolume(), and PDSS_HKFT::set_a().

## ◆ m_c1

doublereal m_c1
| private

Input c1 coefficient (cal gmol-1 K-1)

Definition at line 316 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::cp_mole(), PDSS_HKFT::deltaG(), PDSS_HKFT::deltaH(), PDSS_HKFT::deltaS(), PDSS_HKFT::getParameters(), PDSS_HKFT::initThermo(), and PDSS_HKFT::set_c().

## ◆ m_c2

doublereal m_c2
| private

Input c2 coefficient (cal K gmol-1)

Definition at line 319 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::cp_mole(), PDSS_HKFT::deltaG(), PDSS_HKFT::deltaH(), PDSS_HKFT::deltaS(), PDSS_HKFT::getParameters(), PDSS_HKFT::initThermo(), and PDSS_HKFT::set_c().

## ◆ m_omega_pr_tr

doublereal m_omega_pr_tr
| private

Input omega_pr_tr coefficient(cal gmol-1)

Definition at line 322 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::cp_mole(), PDSS_HKFT::deltaG(), PDSS_HKFT::deltaH(), PDSS_HKFT::deltaS(), PDSS_HKFT::getParameters(), PDSS_HKFT::initThermo(), PDSS_HKFT::molarVolume(), and PDSS_HKFT::setOmega().

## ◆ m_Y_pr_tr

doublereal m_Y_pr_tr
| private

y = dZdT = 1/(esp*esp) desp/dT at 298.15 and 1 bar

Definition at line 325 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::deltaG(), PDSS_HKFT::deltaH(), PDSS_HKFT::deltaS(), and PDSS_HKFT::initThermo().

## ◆ m_Z_pr_tr

doublereal m_Z_pr_tr
| private

Z = -1 / relEpsilon at 298.15 and 1 bar.

Definition at line 328 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::cp_mole(), PDSS_HKFT::deltaG(), PDSS_HKFT::deltaH(), PDSS_HKFT::deltaS(), and PDSS_HKFT::initThermo().

## ◆ m_presR_bar

doublereal m_presR_bar
| private

Reference pressure is 1 atm in units of bar= 1.0132.

Definition at line 331 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::cp_mole(), PDSS_HKFT::deltaG(), PDSS_HKFT::deltaH(), PDSS_HKFT::deltaS(), PDSS_HKFT::initThermo(), and PDSS_HKFT::PDSS_HKFT().

## ◆ m_domega_jdT_prtr

doublereal m_domega_jdT_prtr
| private

small value that is not quite zero

Definition at line 334 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::cp_mole(), PDSS_HKFT::deltaH(), PDSS_HKFT::deltaS(), and PDSS_HKFT::initThermo().

## ◆ m_charge_j

doublereal m_charge_j
| private

Charge of the ion.

Definition at line 337 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::convertDGFormation(), PDSS_HKFT::cp_mole(), PDSS_HKFT::deltaG(), PDSS_HKFT::deltaH(), PDSS_HKFT::deltaS(), PDSS_HKFT::initThermo(), and PDSS_HKFT::molarVolume().

## ◆ s_InputInconsistencyErrorExit

int s_InputInconsistencyErrorExit = 1
| static private

Static variable determining error exiting.

If true, then will error exit if there is an inconsistency in DG0, DH0, and DS0. If not, then will rewrite DH0 to be consistent with the other two.

Definition at line 344 of file PDSS_HKFT.h.

Referenced by PDSS_HKFT::initThermo().

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

- PDSS_HKFT.h
- PDSS_HKFT.cpp