Cantera
2.1.2
|
The NASA polynomial parameterization for one temperature range. More...
#include <NasaPoly1.h>
Public Member Functions | |
NasaPoly1 () | |
Empty constructor. More... | |
NasaPoly1 (size_t n, doublereal tlow, doublereal thigh, doublereal pref, const doublereal *coeffs) | |
constructor used in templated instantiations More... | |
NasaPoly1 (const NasaPoly1 &b) | |
copy constructor More... | |
NasaPoly1 & | operator= (const NasaPoly1 &b) |
assignment operator More... | |
virtual SpeciesThermoInterpType * | duplMyselfAsSpeciesThermoInterpType () const |
duplicator More... | |
virtual int | reportType () const |
Returns an integer representing the type of parameterization. More... | |
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. More... | |
virtual void | updatePropertiesTemp (const doublereal temp, doublereal *cp_R, doublereal *h_RT, doublereal *s_R) const |
Compute the reference-state property of one species. More... | |
virtual void | reportParameters (size_t &n, int &type, doublereal &tlow, doublereal &thigh, doublereal &pref, doublereal *const coeffs) const |
virtual void | modifyParameters (doublereal *coeffs) |
Modify parameters for the standard state. More... | |
Public Member Functions inherited from SpeciesThermoInterpType | |
SpeciesThermoInterpType () | |
Constructor. More... | |
SpeciesThermoInterpType (size_t n, doublereal tlow, doublereal thigh, doublereal pref) | |
Constructor. More... | |
virtual | ~SpeciesThermoInterpType () |
Destructor. More... | |
virtual doublereal | minTemp () const |
Returns the minimum temperature that the thermo parameterization is valid. More... | |
virtual doublereal | maxTemp () const |
Returns the maximum temperature that the thermo parameterization is valid. More... | |
virtual doublereal | refPressure () const |
Returns the reference pressure (Pa) More... | |
virtual size_t | speciesIndex () const |
Returns an integer representing the species index. More... | |
Protected Attributes | |
vector_fp | m_coeff |
array of polynomial coefficients More... | |
Protected Attributes inherited from SpeciesThermoInterpType | |
doublereal | m_lowT |
lowest valid temperature More... | |
doublereal | m_highT |
Highest valid temperature. More... | |
doublereal | m_Pref |
Reference state pressure. More... | |
size_t | m_index |
species index More... | |
The NASA polynomial parameterization for one temperature range.
This parameterization expresses the heat capacity as a fourth-order polynomial. Note that this is the form used in the 1971 NASA equilibrium program and by the Chemkin software package, but differs from the form used in the more recent NASA equilibrium program.
Seven coefficients \((a_0,\dots,a_6)\) are used to represent \( c_p^0(T)\), \( h^0(T)\), and \( s^0(T) \) as polynomials in \( T \) :
\[ \frac{c_p(T)}{R} = a_0 + a_1 T + a_2 T^2 + a_3 T^3 + a_4 T^4 \]
\[ \frac{h^0(T)}{RT} = a_0 + \frac{a_1}{2} T + \frac{a_2}{3} T^2 + \frac{a_3}{4} T^3 + \frac{a_4}{5} T^4 + \frac{a_5}{T}. \]
\[ \frac{s^0(T)}{R} = a_0\ln T + a_1 T + \frac{a_2}{2} T^2 + \frac{a_3}{3} T^3 + \frac{a_4}{4} T^4 + a_6. \]
This class is designed specifically for use by class NasaThermo.
Definition at line 48 of file NasaPoly1.h.
|
inline |
Empty constructor.
Definition at line 52 of file NasaPoly1.h.
Referenced by NasaPoly1::duplMyselfAsSpeciesThermoInterpType().
|
inline |
constructor used in templated instantiations
n | Species index |
tlow | Minimum temperature |
thigh | Maximum temperature |
pref | reference pressure (Pa). |
coeffs | Vector of coefficients used to set the parameters for the standard state. |
Definition at line 64 of file NasaPoly1.h.
References NasaPoly1::m_coeff.
copy constructor
b | object to be copied |
Definition at line 75 of file NasaPoly1.h.
References NasaPoly1::m_coeff.
assignment operator
b | object to be copied |
Definition at line 88 of file NasaPoly1.h.
References NasaPoly1::m_coeff.
|
inlinevirtual |
duplicator
Implements SpeciesThermoInterpType.
Definition at line 99 of file NasaPoly1.h.
References NasaPoly1::NasaPoly1().
|
inlinevirtual |
Returns an integer representing the type of parameterization.
Implements SpeciesThermoInterpType.
Definition at line 104 of file NasaPoly1.h.
References NASA1.
|
inlinevirtual |
Update the properties for this species, given a temperature polynomial.
This method is called with a pointer to an array containing the functions of temperature needed by this parameterization, and three pointers to arrays where the computed property values should be written. This method updates only one value in each array.
Temperature Polynomial: tt[0] = t; tt[1] = t*t; tt[2] = m_t[1]*t; tt[3] = m_t[2]*t; tt[4] = 1.0/t; tt[5] = std::log(t);
tt | vector of temperature polynomials |
cp_R | Vector of Dimensionless heat capacities. (length m_kk). |
h_RT | Vector of Dimensionless enthalpies. (length m_kk). |
s_R | Vector of Dimensionless entropies. (length m_kk). |
Reimplemented from SpeciesThermoInterpType.
Definition at line 128 of file NasaPoly1.h.
References NasaPoly1::m_coeff, SpeciesThermoInterpType::m_index, and Cantera::OneThird.
Referenced by NasaThermo::update_one(), NasaPoly2::updateProperties(), and NasaPoly1::updatePropertiesTemp().
|
inlinevirtual |
Compute the reference-state property of one species.
Given temperature T in K, this method updates the values of the non-dimensional heat capacity at constant pressure, enthalpy, and entropy, at the reference pressure, Pref of one of the species. The species index is used to reference into the cp_R, h_RT, and s_R arrays.
temp | Temperature (Kelvin) |
cp_R | Vector of Dimensionless heat capacities. (length m_kk). |
h_RT | Vector of Dimensionless enthalpies. (length m_kk). |
s_R | Vector of Dimensionless entropies. (length m_kk). |
Implements SpeciesThermoInterpType.
Definition at line 152 of file NasaPoly1.h.
References NasaPoly1::updateProperties().
Referenced by NasaPoly2::updatePropertiesTemp().
|
inlinevirtual |
Implements SpeciesThermoInterpType.
Definition at line 166 of file NasaPoly1.h.
References NasaPoly1::m_coeff, SpeciesThermoInterpType::m_highT, SpeciesThermoInterpType::m_index, SpeciesThermoInterpType::m_lowT, SpeciesThermoInterpType::m_Pref, NASA1, and Cantera::warn_deprecated().
Referenced by NasaThermo::reportParams().
|
inlinevirtual |
Modify parameters for the standard state.
coeffs | Vector of coefficients used to set the parameters for the standard state. |
Reimplemented from SpeciesThermoInterpType.
Definition at line 189 of file NasaPoly1.h.
References NasaPoly1::m_coeff, and Cantera::warn_deprecated().
|
protected |
array of polynomial coefficients
Definition at line 238 of file NasaPoly1.h.
Referenced by NasaPoly1::modifyParameters(), NasaPoly1::NasaPoly1(), NasaPoly1::operator=(), NasaPoly1::reportParameters(), and NasaPoly1::updateProperties().