The NASA polynomial parameterization for two temperature ranges. More...
#include <NasaPoly2.h>
Public Member Functions | |
NasaPoly2 () | |
Empty constructor. | |
NasaPoly2 (int n, doublereal tlow, doublereal thigh, doublereal pref, const doublereal *coeffs) | |
Full Constructor. | |
NasaPoly2 (const NasaPoly2 &b) | |
Copy Constructor. | |
NasaPoly2 & | operator= (const NasaPoly2 &b) |
Assignment operator. | |
virtual | ~NasaPoly2 () |
destructor | |
virtual SpeciesThermoInterpType * | duplMyselfAsSpeciesThermoInterpType () const |
duplicator | |
doublereal | minTemp () const |
Returns the minimum temperature that the thermo parameterization is valid. | |
doublereal | maxTemp () const |
Returns the maximum temperature that the thermo parameterization is valid. | |
doublereal | refPressure () const |
Returns the reference pressure (Pa). | |
virtual int | reportType () const |
Returns an integer representing the type of parameterization. | |
virtual int | speciesIndex () const |
Returns an integer representing the species index. | |
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. | |
void | updatePropertiesTemp (const doublereal temp, doublereal *cp_R, doublereal *h_RT, doublereal *s_R) const |
Compute the reference-state property of one species. | |
void | reportParameters (int &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 species, index. | |
virtual void | modifyParameters (doublereal *coeffs) |
Modify parameters for the standard state. | |
Protected Attributes | |
doublereal | m_lowT |
lowest valid temperature | |
doublereal | m_midT |
Midrange temperature. | |
doublereal | m_highT |
Highest valid temperatre. | |
doublereal | m_Pref |
Reference state pressure. | |
NasaPoly1 * | mnp_low |
pointer to the NasaPoly1 object for the low temperature region. | |
NasaPoly1 * | mnp_high |
pointer to the NasaPoly1 object for the high temperature region. | |
int | m_index |
species index | |
array_fp | m_coeff |
array of polynomial coefficients |
The NASA polynomial parameterization for two temperature ranges.
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 are used to represent , , and as polynomials in :
This class is designed specifically for use by the class GeneralSpeciesThermo.
Definition at line 56 of file NasaPoly2.h.
NasaPoly2 | ( | ) | [inline] |
Empty constructor.
Definition at line 61 of file NasaPoly2.h.
Referenced by NasaPoly2::duplMyselfAsSpeciesThermoInterpType().
NasaPoly2 | ( | int | n, | |
doublereal | tlow, | |||
doublereal | thigh, | |||
doublereal | pref, | |||
const doublereal * | coeffs | |||
) | [inline] |
Full Constructor.
n | Species index | |
tlow | output - Minimum temperature | |
thigh | output - Maximum temperature | |
pref | output - reference pressure (Pa). | |
coeffs | Vector of coefficients used to set the parameters for the standard state. |
Definition at line 81 of file NasaPoly2.h.
References NasaPoly2::m_coeff, NasaPoly2::m_highT, NasaPoly2::m_index, NasaPoly2::m_lowT, NasaPoly2::m_midT, NasaPoly2::m_Pref, NasaPoly2::mnp_high, and NasaPoly2::mnp_low.
Copy Constructor.
b | objecto to be copied. |
Definition at line 103 of file NasaPoly2.h.
References NasaPoly2::m_coeff, NasaPoly2::m_highT, NasaPoly2::m_index, NasaPoly2::m_lowT, NasaPoly2::m_midT, NasaPoly2::m_Pref, NasaPoly2::mnp_high, and NasaPoly2::mnp_low.
virtual ~NasaPoly2 | ( | ) | [inline, virtual] |
destructor
Definition at line 147 of file NasaPoly2.h.
References NasaPoly2::mnp_high, and NasaPoly2::mnp_low.
virtual SpeciesThermoInterpType* duplMyselfAsSpeciesThermoInterpType | ( | ) | const [inline, virtual] |
duplicator
Implements SpeciesThermoInterpType.
Definition at line 154 of file NasaPoly2.h.
References NasaPoly2::NasaPoly2().
doublereal maxTemp | ( | ) | const [inline, virtual] |
Returns the maximum temperature that the thermo parameterization is valid.
Implements SpeciesThermoInterpType.
Definition at line 165 of file NasaPoly2.h.
References NasaPoly2::m_highT.
doublereal minTemp | ( | ) | const [inline, virtual] |
Returns the minimum temperature that the thermo parameterization is valid.
Implements SpeciesThermoInterpType.
Definition at line 161 of file NasaPoly2.h.
References NasaPoly2::m_lowT.
virtual void modifyParameters | ( | doublereal * | coeffs | ) | [inline, virtual, inherited] |
Modify parameters for the standard state.
coeffs | Vector of coefficients used to set the parameters for the standard state. |
Reimplemented in ConstCpPoly, Mu0Poly, Nasa9Poly1, Nasa9PolyMultiTempRegion, NasaPoly1, ShomatePoly, ShomatePoly2, and STITbyPDSS.
Definition at line 265 of file SpeciesThermoInterpType.h.
Referenced by GeneralSpeciesThermo::modifyParams().
Assignment operator.
b | objecto to be copied. |
Definition at line 126 of file NasaPoly2.h.
References NasaPoly2::m_coeff, NasaPoly2::m_highT, NasaPoly2::m_index, NasaPoly2::m_lowT, NasaPoly2::m_midT, NasaPoly2::m_Pref, NasaPoly2::mnp_high, and NasaPoly2::mnp_low.
doublereal refPressure | ( | ) | const [inline, virtual] |
Returns the reference pressure (Pa).
Implements SpeciesThermoInterpType.
Definition at line 168 of file NasaPoly2.h.
References NasaPoly2::m_Pref.
void reportParameters | ( | int & | n, | |
int & | type, | |||
doublereal & | tlow, | |||
doublereal & | thigh, | |||
doublereal & | pref, | |||
doublereal *const | coeffs | |||
) | const [inline, virtual] |
This utility function reports back the type of parameterization and all of the parameters for the species, index.
All parameters are output variables
n | Species index | |
type | Integer type of the standard type | |
tlow | output - Minimum temperature | |
thigh | output - Maximum temperature | |
pref | output - reference pressure (Pa). | |
coeffs | Vector of coefficients used to set the parameters for the standard state. |
Implements SpeciesThermoInterpType.
Definition at line 252 of file NasaPoly2.h.
References NasaPoly2::m_coeff, NasaPoly2::m_highT, NasaPoly2::m_index, NasaPoly2::m_lowT, NasaPoly2::m_Pref, and NASA2.
virtual int reportType | ( | ) | const [inline, virtual] |
Returns an integer representing the type of parameterization.
Implements SpeciesThermoInterpType.
Definition at line 171 of file NasaPoly2.h.
References NASA2.
virtual int speciesIndex | ( | ) | const [inline, virtual] |
Returns an integer representing the species index.
Implements SpeciesThermoInterpType.
Definition at line 174 of file NasaPoly2.h.
References NasaPoly2::m_index.
void updateProperties | ( | const doublereal * | tt, | |
doublereal * | cp_R, | |||
doublereal * | h_RT, | |||
doublereal * | s_R | |||
) | const [inline, virtual] |
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 200 of file NasaPoly2.h.
References NasaPoly2::m_midT, NasaPoly2::mnp_high, NasaPoly2::mnp_low, and NasaPoly1::updateProperties().
void updatePropertiesTemp | ( | const doublereal | temp, | |
doublereal * | cp_R, | |||
doublereal * | h_RT, | |||
doublereal * | s_R | |||
) | const [inline, virtual] |
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 227 of file NasaPoly2.h.
References NasaPoly2::m_midT, NasaPoly2::mnp_high, NasaPoly2::mnp_low, and NasaPoly1::updatePropertiesTemp().
array_fp m_coeff [protected] |
array of polynomial coefficients
Definition at line 312 of file NasaPoly2.h.
Referenced by NasaPoly2::NasaPoly2(), NasaPoly2::operator=(), and NasaPoly2::reportParameters().
doublereal m_highT [protected] |
Highest valid temperatre.
Definition at line 302 of file NasaPoly2.h.
Referenced by NasaPoly2::maxTemp(), NasaPoly2::NasaPoly2(), NasaPoly2::operator=(), and NasaPoly2::reportParameters().
int m_index [protected] |
species index
Definition at line 310 of file NasaPoly2.h.
Referenced by NasaPoly2::NasaPoly2(), NasaPoly2::operator=(), NasaPoly2::reportParameters(), and NasaPoly2::speciesIndex().
doublereal m_lowT [protected] |
lowest valid temperature
Definition at line 298 of file NasaPoly2.h.
Referenced by NasaPoly2::minTemp(), NasaPoly2::NasaPoly2(), NasaPoly2::operator=(), and NasaPoly2::reportParameters().
doublereal m_midT [protected] |
Midrange temperature.
Definition at line 300 of file NasaPoly2.h.
Referenced by NasaPoly2::NasaPoly2(), NasaPoly2::operator=(), NasaPoly2::updateProperties(), and NasaPoly2::updatePropertiesTemp().
doublereal m_Pref [protected] |
Reference state pressure.
Definition at line 304 of file NasaPoly2.h.
Referenced by NasaPoly2::NasaPoly2(), NasaPoly2::operator=(), NasaPoly2::refPressure(), and NasaPoly2::reportParameters().
pointer to the NasaPoly1 object for the high temperature region.
Definition at line 308 of file NasaPoly2.h.
Referenced by NasaPoly2::NasaPoly2(), NasaPoly2::operator=(), NasaPoly2::updateProperties(), NasaPoly2::updatePropertiesTemp(), and NasaPoly2::~NasaPoly2().
pointer to the NasaPoly1 object for the low temperature region.
Definition at line 306 of file NasaPoly2.h.
Referenced by NasaPoly2::NasaPoly2(), NasaPoly2::operator=(), NasaPoly2::updateProperties(), NasaPoly2::updatePropertiesTemp(), and NasaPoly2::~NasaPoly2().