13 #ifndef CT_ADSORBATE_H 14 #define CT_ADSORBATE_H 45 "Default constructor to be removed after Cantera 2.3.");
55 Adsorbate(
double tlow,
double thigh,
double pref,
const double* coeffs)
58 m_freq.resize(
int(coeffs[0]));
60 std::copy(coeffs+2, coeffs + 2 +
m_freq.size(),
m_freq.begin());
75 doublereal* s_R)
const {
76 *h_RT = _energy_RT(temp);
77 *cp_R = (temp**h_RT - (temp-0.01)*_energy_RT(temp-0.01))/0.01;
78 *s_R = *h_RT - _free_energy_RT(temp);
82 doublereal& tlow, doublereal& thigh,
84 doublereal*
const coeffs)
const {
90 coeffs[0] =
static_cast<double>(
m_freq.size());
92 for (
size_t i = 2; i <
m_freq.size()+2; i++) {
102 doublereal _energy_RT(
double T)
const {
103 doublereal x, hnu_kt, hnu, sum = 0.0;
105 for (
size_t i = 0; i <
m_freq.size(); i++) {
109 sum += hnu_kt * x/(1.0 - x);
114 doublereal _free_energy_RT(
double T)
const {
115 doublereal x, hnu_kt, sum = 0.0;
117 for (
size_t i = 0; i <
m_freq.size(); i++) {
125 doublereal _entropy_R(
double T)
const {
126 return _energy_RT(T) - _free_energy_RT(T);
Abstract Base class for the thermodynamic manager for an individual species' reference state...
void reportParameters(size_t &n, int &type, doublereal &tlow, doublereal &thigh, doublereal &pref, doublereal *const coeffs) const
This utility function reports back the type of parameterization and all of the parameters for the spe...
virtual SpeciesThermoInterpType * duplMyselfAsSpeciesThermoInterpType() const
void warn_deprecated(const std::string &method, const std::string &extra)
Print a warning indicating that method is deprecated.
Adsorbate()
Empty constructor.
vector_fp m_freq
array of vib frequencies
Pure Virtual Base class for individual species reference state thermodynamic managers and text for th...
void updatePropertiesTemp(const doublereal temp, doublereal *cp_R, doublereal *h_RT, doublereal *s_R) const
Compute the reference-state property of one species.
doublereal m_highT
Highest valid temperature.
const doublereal Planck
Planck's constant. [J-s].
doublereal m_lowT
lowest valid temperature
An adsorbed surface species.
std::vector< double > vector_fp
Turn on the use of stl vectors for the basic array type within cantera Vector of doubles.
const doublereal GasConstant
Universal Gas Constant. [J/kmol/K].
virtual int reportType() const
Returns an integer representing the type of parameterization.
Adsorbate(double tlow, double thigh, double pref, const double *coeffs)
Full Constructor.
doublereal m_Pref
Reference state pressure.
Namespace for the Cantera kernel.
const doublereal Boltzmann
Boltzmann's constant [J/K].
#define ADSORBATE
Surface Adsorbate Model for a species on a surface.