12 #ifndef CT_PDSS_HKFT_H
13 #define CT_PDSS_HKFT_H
54 virtual doublereal
cp_mole()
const;
56 virtual doublereal
density()
const;
62 doublereal refPressure()
const {
76 virtual void setState_TP(doublereal temp, doublereal pres);
96 void setS0(
double s0);
100 void set_a(
double* a);
104 void set_c(
double* c);
135 virtual void reportParams(
size_t& kindex,
int& type, doublereal*
const c,
137 doublereal& refPressure)
const;
149 doublereal
deltaG()
const;
157 doublereal
deltaS()
const;
164 doublereal
deltaH()
const;
177 doublereal
ag(
const doublereal temp,
const int ifunc = 0)
const;
190 doublereal
bg(
const doublereal temp,
const int ifunc = 0)
const;
204 doublereal
g(
const doublereal temp,
const doublereal pres,
const int ifunc = 0)
const;
219 doublereal
f(
const doublereal temp,
const doublereal pres,
const int ifunc = 0)
const;
231 doublereal
gstar(
const doublereal temp,
const doublereal pres,
232 const int ifunc = 0)
const;
246 doublereal
LookupGe(
const std::string& elemName);
Declarations for the virtual base class PDSS (pressure dependent standard state) which handles calcul...
Header for a class used to house several approximation routines for properties of water.
Class for pressure dependent standard states corresponding to ionic solutes in electrolyte water.
void setOmega(double omega)
Set omega [J/kmol].
static int s_InputInconsistencyErrorExit
Static variable determining error exiting.
virtual doublereal cp_R_ref() const
Return the molar heat capacity divided by R at reference pressure.
doublereal m_deltaG_formation_tr_pr
Input value of deltaG of Formation at Tr and Pr (cal gmol-1)
size_t m_spindex
Index of this species within the parent phase.
doublereal m_a3
Input a3 coefficient (cal K gmol-1 bar-1)
doublereal m_domega_jdT_prtr
small value that is not quite zero
doublereal m_a4
Input a4 coefficient (cal K gmol-1)
doublereal m_charge_j
Charge of the ion.
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 spe...
doublereal m_c2
Input c2 coefficient (cal K gmol-1)
doublereal m_c1
Input c1 coefficient (cal gmol-1 K-1)
doublereal deltaH() const
Routine that actually calculates the enthalpy difference between the reference state at Tr,...
virtual doublereal cp_mole() const
Return the molar const pressure heat capacity in units of J kmol-1 K-1.
VPStandardStateTP * m_tp
Parent VPStandardStateTP (ThermoPhase) object.
virtual doublereal enthalpy_mole() const
Return the molar enthalpy in units of J kmol-1.
void setDeltaG0(double dg0)
Set Gibbs free energy of formation at Pr, Tr [J/kmol].
virtual void setState_TP(doublereal temp, doublereal pres)
Set the internal temperature and pressure.
doublereal m_omega_pr_tr
Input omega_pr_tr coefficient(cal gmol-1)
doublereal m_a2
Input a2 coefficient (cal gmol-1)
doublereal m_densWaterSS
density of standard-state water. internal temporary variable
doublereal m_Entrop_tr_pr
Input value of S_j at Tr and Pr (cal gmol-1 K-1)
PDSS_HKFT()
Default Constructor.
doublereal bg(const doublereal temp, const int ifunc=0) const
Internal formula for the calculation of b_g()
doublereal g(const doublereal temp, const doublereal pres, const int ifunc=0) const
function g appearing in the formulation
doublereal m_Y_pr_tr
y = dZdT = 1/(esp*esp) desp/dT at 298.15 and 1 bar
void setS0(double s0)
Set entropy of formation at Pr, Tr [J/kmol/K].
doublereal ag(const doublereal temp, const int ifunc=0) const
Internal formula for the calculation of a_g()
doublereal f(const doublereal temp, const doublereal pres, const int ifunc=0) const
Difference function f appearing in the formulation.
virtual doublereal entropy_mole() const
Return the molar entropy in units of J kmol-1 K-1.
doublereal m_a1
Input a1 coefficient (cal gmol-1 bar-1)
doublereal enthalpy_mole2() const
Return the molar enthalpy in units of J kmol-1.
virtual doublereal molarVolume_ref() const
Return the molar volume at reference pressure.
virtual void initThermo()
Initialization routine.
doublereal m_Z_pr_tr
Z = -1 / relEpsilon at 298.15 and 1 bar.
doublereal m_deltaH_formation_tr_pr
Input value of deltaH of Formation at Tr and Pr (cal gmol-1)
void set_a(double *a)
Set "a" coefficients (array of 4 elements).
doublereal LookupGe(const std::string &elemName)
Function to look up Element Free Energies.
virtual doublereal molarVolume() const
Return the molar volume at standard state.
void setParametersFromXML(const XML_Node &speciesNode)
Initialization routine for the PDSS object based on the speciesNode.
virtual doublereal gibbs_mole() const
Return the molar Gibbs free energy in units of J kmol-1.
virtual doublereal enthalpy_RT_ref() const
Return the molar enthalpy divided by RT at reference pressure.
doublereal deltaS() const
Main routine that actually calculates the entropy difference between the reference state at Tr,...
void convertDGFormation()
Translate a Gibbs free energy of formation value to a NIST-based Chemical potential.
void setParent(VPStandardStateTP *phase, size_t k)
Set the parent VPStandardStateTP object of this PDSS object.
doublereal m_Mu0_tr_pr
Value of the Absolute Gibbs Free Energy NIST scale at T_r and P_r.
virtual doublereal density() const
Return the standard state density at standard state.
doublereal m_presR_bar
Reference pressure is 1 atm in units of bar= 1.0132.
doublereal gstar(const doublereal temp, const doublereal pres, const int ifunc=0) const
Evaluate the Gstar value appearing in the HKFT formulation.
virtual doublereal entropy_R_ref() const
Return the molar entropy divided by R at reference pressure.
virtual doublereal gibbs_RT_ref() const
Return the molar Gibbs free energy divided by RT at reference pressure.
PDSS_Water * m_waterSS
Water standard state calculator.
doublereal deltaG() const
Main routine that actually calculates the Gibbs free energy difference between the reference state at...
std::unique_ptr< WaterProps > m_waterProps
Pointer to the water property calculator.
void set_c(double *c)
Set "c" coefficients (array of 2 elements).
virtual doublereal intEnergy_mole() const
Return the molar internal Energy in units of J kmol-1.
void setDeltaH0(double dh0)
Set enthalpy of formation at Pr, Tr [J/kmol].
Base class for PDSS classes which compute molar properties directly.
Class for the liquid water pressure dependent standard state.
doublereal maxTemp() const
return the minimum temperature
doublereal minTemp() const
return the minimum temperature
doublereal m_p0
Reference state pressure of the species.
This is a filter class for ThermoPhase that implements some preparatory steps for efficiently handlin...
Class XML_Node is a tree-based representation of the contents of an XML file.
Namespace for the Cantera kernel.