12 #ifndef CT_NASAPOLY2_H
13 #define CT_NASAPOLY2_H
68 NasaPoly2(
size_t n, doublereal tlow, doublereal thigh, doublereal pref,
69 const doublereal* coeffs) :
72 mnp_low(n, tlow, coeffs[0], pref, coeffs +1),
73 mnp_high(n, tlow, thigh, pref, coeffs + 8),
87 NasaPoly2(doublereal tlow, doublereal thigh, doublereal pref,
88 const doublereal* coeffs) :
91 mnp_low(tlow, coeffs[0], pref, coeffs + 8),
92 mnp_high(coeffs[0], thigh, pref, coeffs + 1),
114 SpeciesThermoInterpType::operator=(b);
124 duplMyselfAsSpeciesThermoInterpType()
const {
166 doublereal* cp_R, doublereal* h_RT, doublereal* s_R)
const {
177 doublereal* s_R)
const {
186 doublereal& tlow, doublereal& thigh,
188 doublereal*
const coeffs)
const {
194 for (
int i = 0; i < 15; i++) {
218 doublereal delH = Hf298New - h298now;
220 double hnew = h + delH;
227 void validate(
const std::string& name);
virtual size_t temperaturePolySize() const
Number of terms in the temperature polynomial for this parameterization.
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 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 void updateTemperaturePoly(double T, double *T_poly) const
Given the temperature T, compute the terms of the temperature polynomial T_poly.
Pure Virtual Base class for the thermodynamic manager for an individual species' reference state...
void validate(const std::string &name)
Check for problems with the parameterization, and generate warnings or throw and exception if any are...
The NASA polynomial parameterization for two temperature ranges.
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...
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.
size_t m_index
species index
virtual void setIndex(size_t index)
#define NASA2
Two regions of 7 coefficient NASA Polynomials This is implemented in the class NasaPoly2 in NasaPoly2...
void updatePropertiesTemp(const doublereal temp, doublereal *cp_R, doublereal *h_RT, doublereal *s_R) const
Compute the reference-state property of one species.
Pure Virtual Base class for individual species reference state thermodynamic managers and text for th...
virtual void updateTemperaturePoly(double T, double *T_poly) const
Given the temperature T, compute the terms of the temperature polynomial T_poly.
vector_fp m_coeff
array of polynomial coefficients
NasaPoly1 mnp_high
NasaPoly1 object for the high temperature region.
NasaPoly2(doublereal tlow, doublereal thigh, doublereal pref, const doublereal *coeffs)
Full Constructor.
doublereal m_highT
Highest valid temperature.
doublereal reportHf298(doublereal *const h298=0) const
Report the 298 K Heat of Formation of the standard state of one species (J kmol-1) ...
virtual void updatePropertiesTemp(const doublereal temp, doublereal *cp_R, doublereal *h_RT, doublereal *s_R) const
Compute the reference-state property of one species.
Header for a single-species standard state object derived from SpeciesThermoInterpType based on the N...
doublereal m_lowT
lowest valid temperature
virtual int reportType() const
Returns an integer representing the type of parameterization.
doublereal m_midT
Midrange temperature.
NasaPoly2(size_t n, doublereal tlow, doublereal thigh, doublereal pref, const doublereal *coeffs)
Full Constructor.
std::vector< double > vector_fp
Turn on the use of stl vectors for the basic array type within cantera Vector of doubles.
NasaPoly2()
Empty constructor.
NasaPoly2 & operator=(const NasaPoly2 &b)
Assignment operator.
The NASA polynomial parameterization for one temperature range.
doublereal m_Pref
Reference state pressure.
NasaPoly2(const NasaPoly2 &b)
Copy Constructor.
NasaPoly1 mnp_low
NasaPoly1 object for the low temperature region.
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) ...
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 setIndex(size_t index)