NasaPoly2 Class Reference
[Species Reference-State Thermodynamic Properties]

The NASA polynomial parameterization for two temperature ranges. More...

#include <NasaPoly2.h>

Inheritance diagram for NasaPoly2:
Inheritance graph
[legend]
Collaboration diagram for NasaPoly2:
Collaboration graph
[legend]

List of all members.

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.
NasaPoly2operator= (const NasaPoly2 &b)
 Assignment operator.
virtual ~NasaPoly2 ()
 destructor
virtual SpeciesThermoInterpTypeduplMyselfAsSpeciesThermoInterpType () 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.
NasaPoly1mnp_low
 pointer to the NasaPoly1 object for the low temperature region.
NasaPoly1mnp_high
 pointer to the NasaPoly1 object for the high temperature region.
int m_index
 species index
array_fp m_coeff
 array of polynomial coefficients

Detailed Description

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 $(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 the class GeneralSpeciesThermo.

Definition at line 56 of file NasaPoly2.h.


Constructor & Destructor Documentation

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.

Parameters:
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.

NasaPoly2 ( const NasaPoly2 b  )  [inline]

Copy Constructor.

Parameters:
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.


Member Function Documentation

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.

Parameters:
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().

NasaPoly2& operator= ( const NasaPoly2 b  )  [inline]

Assignment operator.

Parameters:
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

Parameters:
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);

Parameters:
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.

Parameters:
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().


Member Data Documentation

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]
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]
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().

NasaPoly1* mnp_high [protected]

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().

NasaPoly1* mnp_low [protected]

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().


The documentation for this class was generated from the following file:
Generated by  doxygen 1.6.3