63 NasaPoly2(doublereal tlow, doublereal thigh, doublereal pref,
64 const doublereal* coeffs) :
67 mnp_low(tlow, coeffs[0], pref, coeffs + 8),
68 mnp_high(coeffs[0], thigh, pref, coeffs + 1) {
107 doublereal* cp_R, doublereal* h_RT, doublereal* s_R)
const {
118 doublereal* s_R)
const {
129 doublereal& tlow, doublereal& thigh,
131 doublereal*
const coeffs)
const {
159 doublereal delH = Hf298New - h298now;
161 double hnew = h + delH;
168 void validate(
const std::string& name);
Header for a single-species standard state object derived from SpeciesThermoInterpType based on the N...
Pure Virtual Base class for individual species reference state thermodynamic managers and text for th...
A map of string keys to values whose type can vary at runtime.
The NASA polynomial parameterization for one temperature range.
virtual void updatePropertiesTemp(const doublereal temp, doublereal *cp_R, doublereal *h_RT, doublereal *s_R) const
Compute the reference-state property of one species.
virtual void updateTemperaturePoly(double T, double *T_poly) const
Given the temperature T, compute the terms of the temperature polynomial T_poly.
virtual void updateProperties(const doublereal *tt, doublereal *cp_R, doublereal *h_RT, doublereal *s_R) const
Update the properties for this species, given a temperature polynomial.
virtual void resetHf298()
Restore the original heat of formation for this species.
virtual void reportParameters(size_t &n, int &type, doublereal &tlow, doublereal &thigh, doublereal &pref, doublereal *const coeffs) const
This utility function returns the type of parameterization and all of the parameters for the species.
virtual void modifyOneHf298(const size_t k, const doublereal Hf298New)
Modify the value of the 298 K Heat of Formation of one species in the phase (J kmol-1)
virtual doublereal reportHf298(doublereal *const h298=0) const
Report the 298 K Heat of Formation of the standard state of one species (J kmol-1)
The NASA polynomial parameterization for two temperature ranges.
NasaPoly2(doublereal tlow, doublereal thigh, doublereal pref, const doublereal *coeffs)
Constructor with all input data.
virtual void updateTemperaturePoly(double T, double *T_poly) const
Given the temperature T, compute the terms of the temperature polynomial T_poly.
void resetHf298()
Restore the original heat of formation for this species.
virtual void setRefPressure(double Pref)
Set the reference pressure [Pa].
void modifyOneHf298(const size_t k, const doublereal Hf298New)
Modify the value of the 298 K Heat of Formation of one species in the phase (J kmol-1)
doublereal reportHf298(doublereal *const h298=0) const
Report the 298 K Heat of Formation of the standard state of one species (J kmol-1)
void validate(const std::string &name)
Check for problems with the parameterization, and generate warnings or throw and exception if any are...
virtual void getParameters(AnyMap &thermo) const
Store the parameters of the species thermo object such that an identical species thermo object could ...
void updatePropertiesTemp(const doublereal temp, doublereal *cp_R, doublereal *h_RT, doublereal *s_R) const
Compute the reference-state property of one species.
size_t nCoeffs() const
This utility function returns the number of coefficients for a given type of species parameterization...
void reportParameters(size_t &n, int &type, doublereal &tlow, doublereal &thigh, doublereal &pref, doublereal *const coeffs) const
This utility function returns the type of parameterization and all of the parameters for the species.
void setParameters(double Tmid, const vector_fp &low, const vector_fp &high)
virtual void setMinTemp(double Tmin)
Set the minimum temperature at which the thermo parameterization is valid.
void updateProperties(const doublereal *tt, doublereal *cp_R, doublereal *h_RT, doublereal *s_R) const
Update the properties for this species, given a temperature polynomial.
doublereal m_midT
Midrange temperature.
virtual size_t temperaturePolySize() const
Number of terms in the temperature polynomial for this parameterization.
NasaPoly1 mnp_low
NasaPoly1 object for the low temperature region.
virtual void setMaxTemp(double Tmax)
Set the maximum temperature at which the thermo parameterization is valid.
virtual int reportType() const
Returns an integer representing the type of parameterization.
NasaPoly1 mnp_high
NasaPoly1 object for the high temperature region.
Abstract Base class for the thermodynamic manager for an individual species' reference state.
virtual void setRefPressure(double Pref)
Set the reference pressure [Pa].
virtual void setMinTemp(double Tmin)
Set the minimum temperature at which the thermo parameterization is valid.
virtual void setMaxTemp(double Tmax)
Set the maximum temperature at which the thermo parameterization is valid.
Namespace for the Cantera kernel.
std::vector< double > vector_fp
Turn on the use of stl vectors for the basic array type within cantera Vector of doubles.
#define NASA2
Two regions of 7 coefficient NASA Polynomials This is implemented in the class NasaPoly2 in NasaPoly2...