13#ifndef CT_COVERAGEDEPENDENTSURFPHASE_H
14#define CT_COVERAGEDEPENDENTSURFPHASE_H
221 const string&
id=
"");
224 return "coverage-dependent-surface";
234 bool addSpecies(shared_ptr<Species> spec)
override;
282 void getCp_R(
double* cpr)
const override;
376 double cp_mole()
const override;
Header file for class Cantera::Array2D.
Header for a simple thermodynamics model of a surface phase derived from ThermoPhase,...
Base class defining common data possessed by both AnyMap and AnyValue objects.
A map of string keys to values whose type can vary at runtime.
A thermodynamic model for a coverage-dependent surface phase, applying surface species lateral intera...
void getStandardChemPotentials(double *mu0) const override
Get the standard state chemical potential vector. Units: J/kmol.
void getPureGibbs(double *g) const override
Get the standard state gibbs free energy vector. Units: J/kmol.
double enthalpy_mole() const override
Return the solution's molar enthalpy. Units: J/kmol.
vector< double > m_entropy
Temporary storage for the sum of reference state entropies and coverage-dependent entropies.
vector< InterpolativeDependency > m_InterpolativeDependency
Array of enthalpy and entropy coverage dependency parameters used in the piecewise-linear and interpo...
void getPartialMolarEnthalpies(double *hbar) const override
Get the partial molar enthalpy vector. Units: J/kmol.
void getChemPotentials(double *mu) const override
Get the chemical potential vector. Units: J/kmol.
void getSpeciesParameters(const string &name, AnyMap &speciesNode) const override
Get phase-specific parameters of a Species object such that an identical one could be reconstructed a...
void getEntropy_R(double *sr) const override
Get the nondimensionalized standard state entropy vector.
vector< double > m_enthalpy
Temporary storage for the sum of reference state enthalpies and coverage-dependent enthalpies.
vector< HeatCapacityDependency > m_HeatCapacityDependency
Array of heat capacity coverage dependency parameters.
void getCp_R_ref(double *cpr) const override
Returns the vector of nondimensional constant pressure heat capacities of the reference state at the ...
void getCp_R(double *cpr) const override
Get the nondimensionalized standard state heat capacity vector.
void getParameters(AnyMap &phaseNode) const override
Store the parameters of a ThermoPhase object such that an identical one could be reconstructed using ...
string type() const override
String indicating the thermodynamic model implemented.
void initThermo() override
Initialize the ThermoPhase object after all species have been set up.
vector< double > m_h_cov
Temporary storage for the coverage-dependent enthalpies.
void getEntropy_R_ref(double *sr) const override
Returns the vector of nondimensional entropies of the reference state at the current temperature of t...
int m_stateNumlast
Last value of the state number processed.
vector< double > m_chempot
Temporary storage for the sum of reference state chemical potentials and coverage-dependent chemical ...
void addInterpolativeDependency(const InterpolativeDependency &int_deps)
Add interpolative coverage dependence parameters for a species.
vector< double > m_heatcapacity
Temporary storage for the sum of reference state heat capacities and coverage-dependent heat capaciti...
void _updateTotalThermo() const
Update the total (reference state + coverage-dependent) thermodynamic functions.
void getEnthalpy_RT(double *hrt) const override
Get the nondimensionalized standard state enthalpy vector.
double m_theta_ref
Storage for the user-defined reference state coverage which has to be greater than 0....
void _updateCovDepThermo() const
Update the species coverage-dependent thermodynamic functions.
void getGibbs_RT(double *grt) const override
Get the nondimensionalized standard state gibbs free energy vector.
double entropy_mole() const override
Return the solution's molar entropy. Units: J/kmol/K.
vector< double > m_mu_cov
Temporary storage for the coverage-dependent chemical potentials.
vector< double > m_s_cov
Temporary storage for the coverage-dependent entropies.
double cp_mole() const override
Return the solution's molar heat capacity. Units: J/kmol/K.
vector< double > m_cov
Temporary storage for the coverages.
void getPartialMolarCp(double *cpbar) const override
Get the partial molar heat capacity vector. Units: J/kmol/K.
bool addSpecies(shared_ptr< Species > spec) override
Add a Species to this Phase.
void getGibbs_RT_ref(double *grt) const override
Returns the vector of nondimensional Gibbs Free Energies of the reference state at the current temper...
vector< PolynomialDependency > m_PolynomialDependency
Array of enthalpy and entropy coverage dependency parameters used in the linear and polynomial depend...
vector< double > m_cp_cov
Temporary storage for the coverage-dependent heat capacities.
void getPartialMolarEntropies(double *sbar) const override
Get the partial molar entropy vector. Units: J/kmol/K.
void getEnthalpy_RT_ref(double *hrt) const override
Returns the vector of nondimensional enthalpies of the reference state at the current temperature of ...
string name() const
Return the name of the phase.
A simple thermodynamic model for a surface phase, assuming an ideal solution model.
Namespace for the Cantera kernel.
A struct to store sets of parameters used in coverage-dependent heat capacity calculations by a log-q...
HeatCapacityDependency(size_t k, size_t j)
double coeff_a
coefficient [J/kmol/K] in the coverage-dependent heat capacity model
size_t k
index of a target species whose heat capacity is calculated
size_t j
index of a species whose coverage affects heat capacity of a target species
double coeff_b
coefficient [J/kmol/K] in the coverage-dependent heat capacity model
A struct to store sets of parameters used in coverage-dependent enthalpy and entropy calculations by ...
map< double, double > enthalpy_map
map of <coverage[dimensionless], enthalpy[J/kmol]> pairs
size_t k
index of a target species whose enthalpy and entropy are calculated
bool isPiecewise
boolean indicating whether the dependency is piecewise-linear
size_t j
index of a species whose coverage affects enthalpy and entropy of a target species
map< double, double > entropy_map
map of <coverage[dimensionless], entropy[J/kmol/K]> pairs
A struct to store sets of parameters used in coverage-dependent enthalpy and entropy calculations by ...
vector< double > entropy_coeffs
array of polynomial coefficients describing coverage-dependent entropy [J/kmol/K] in order of 1st-ord...
vector< double > enthalpy_coeffs
array of polynomial coefficients describing coverage-dependent enthalpy [J/kmol] in order of 1st-orde...
size_t k
index of a target species whose enthalpy and entropy is calculated
size_t j
index of a species whose coverage affects enthalpy and entropy of a target species
bool isLinear
boolean indicating whether the dependency is linear