63 NasaPoly2(
double tlow,
double thigh,
double pref,
const double* coeffs) :
66 mnp_low(tlow, coeffs[0], pref, coeffs + 8),
67 mnp_high(coeffs[0], thigh, pref, coeffs + 1) {
92 void setParameters(
double Tmid,
const vector<double>& low,
const vector<double>& high);
106 double* cp_R,
double* h_RT,
double* s_R)
const override {
115 double* cp_R,
double* h_RT,
double* s_R)
const override {
123 size_t nCoeffs()
const override {
return 15; }
126 double& pref,
double*
const coeffs)
const override {
154 double delH = Hf298New - h298now;
156 double hnew = h + delH;
163 void validate(
const string& name)
override;
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.
void updateTemperaturePoly(double T, double *T_poly) const override
Given the temperature T, compute the terms of the temperature polynomial T_poly.
void reportParameters(size_t &n, int &type, double &tlow, double &thigh, double &pref, double *const coeffs) const override
This utility function returns the type of parameterization and all of the parameters for the species.
void updateProperties(const double *tt, double *cp_R, double *h_RT, double *s_R) const override
Update the properties for this species, given a temperature polynomial.
double reportHf298(double *const h298=nullptr) const override
Report the 298 K Heat of Formation of the standard state of one species (J kmol-1)
void resetHf298() override
Restore the original heat of formation for this species.
void modifyOneHf298(const size_t k, const double Hf298New) override
Modify the value of the 298 K Heat of Formation of one species in the phase (J kmol-1)
void updatePropertiesTemp(const double temp, double *cp_R, double *h_RT, double *s_R) const override
Compute the reference-state property of one species.
The NASA polynomial parameterization for two temperature ranges.
void setMinTemp(double Tmin) override
Set the minimum temperature at which the thermo parameterization is valid.
int reportType() const override
Returns an integer representing the type of parameterization.
size_t temperaturePolySize() const override
Number of terms in the temperature polynomial for this parameterization.
void getParameters(AnyMap &thermo) const override
Store the parameters of the species thermo object such that an identical species thermo object could ...
size_t nCoeffs() const override
This utility function returns the number of coefficients for a given type of species parameterization...
void validate(const string &name) override
Check for problems with the parameterization, and generate warnings or throw and exception if any are...
void updateTemperaturePoly(double T, double *T_poly) const override
Given the temperature T, compute the terms of the temperature polynomial T_poly.
void reportParameters(size_t &n, int &type, double &tlow, double &thigh, double &pref, double *const coeffs) const override
This utility function returns the type of parameterization and all of the parameters for the species.
void setParameters(double Tmid, const vector< double > &low, const vector< double > &high)
void setRefPressure(double Pref) override
Set the reference pressure [Pa].
void updateProperties(const double *tt, double *cp_R, double *h_RT, double *s_R) const override
Update the properties for this species, given a temperature polynomial.
double reportHf298(double *const h298=nullptr) const override
Report the 298 K Heat of Formation of the standard state of one species (J kmol-1)
void resetHf298() override
Restore the original heat of formation for this species.
void setMaxTemp(double Tmax) override
Set the maximum temperature at which the thermo parameterization is valid.
double m_midT
Midrange temperature.
NasaPoly1 mnp_low
NasaPoly1 object for the low temperature region.
void modifyOneHf298(const size_t k, const double Hf298New) override
Modify the value of the 298 K Heat of Formation of one species in the phase (J kmol-1)
NasaPoly1 mnp_high
NasaPoly1 object for the high temperature region.
NasaPoly2(double tlow, double thigh, double pref, const double *coeffs)
Constructor with all input data.
void updatePropertiesTemp(const double temp, double *cp_R, double *h_RT, double *s_R) const override
Compute the reference-state property of one species.
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.
#define NASA2
Two regions of 7 coefficient NASA Polynomials This is implemented in the class NasaPoly2 in NasaPoly2...