52 template<
class EquationOfState>
56 const janafThermo<EquationOfState>&
59 template<
class EquationOfState>
60 inline janafThermo<EquationOfState>
operator*
63 const janafThermo<EquationOfState>&
66 template<
class EquationOfState>
67 inline janafThermo<EquationOfState>
operator==
69 const janafThermo<EquationOfState>&,
70 const janafThermo<EquationOfState>&
73 template<
class EquationOfState>
77 const janafThermo<EquationOfState>&
85 template<
class EquationOfState>
88 public EquationOfState
104 scalar Tlow_, Thigh_, Tcommon_;
106 coeffArray highCpCoeffs_;
107 coeffArray lowCpCoeffs_;
113 void checkInputData()
const;
116 inline const coeffArray& coeffs(
const scalar
T)
const;
126 const EquationOfState& st,
132 const bool convertCoeffs =
false 147 return "janaf<" + EquationOfState::typeName() +
'>';
151 inline scalar
limit(
const scalar
T)
const;
157 inline scalar
Tlow()
const;
160 inline scalar
Thigh()
const;
175 inline scalar
Cp(
const scalar
p,
const scalar T)
const;
178 inline scalar
Ha(
const scalar p,
const scalar T)
const;
181 inline scalar
Hs(
const scalar p,
const scalar T)
const;
184 inline scalar
Hc()
const;
187 inline scalar
S(
const scalar p,
const scalar T)
const;
193 void write(Ostream& os)
const;
209 friend janafThermo
operator* <EquationOfState>
215 friend janafThermo
operator== <EquationOfState>
224 friend Ostream& operator<< <EquationOfState>
static const int nCoeffs_
A list of keyword definitions, which are a keyword followed by any number of values (e...
scalar Thigh() const
Return const access to the high temperature limit.
scalar Hc() const
Chemical enthalpy [J/kg].
const coeffArray & highCpCoeffs() const
Return const access to the high temperature poly coefficients.
scalar limit(const scalar T) const
Limit the temperature to be in the range Tlow_ to Thigh_.
A class for handling words, derived from string.
static word typeName()
Return the instantiated type name.
scalar S(const scalar p, const scalar T) const
Entropy [J/(kg K)].
scalar Tlow() const
Return const access to the low temperature limit.
scalar Hs(const scalar p, const scalar T) const
Sensible enthalpy [J/kg].
void write(Ostream &os) const
Write to Ostream.
janafThermo(const EquationOfState &st, const scalar Tlow, const scalar Thigh, const scalar Tcommon, const coeffArray &highCpCoeffs, const coeffArray &lowCpCoeffs, const bool convertCoeffs=false)
Construct from components.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
const coeffArray & lowCpCoeffs() const
Return const access to the low temperature poly coefficients.
void operator+=(const janafThermo &)
JANAF tables based thermodynamics package templated into the equation of state.
scalar Ha(const scalar p, const scalar T) const
Absolute Enthalpy [J/kg].
FixedList< scalar, nCoeffs_ > coeffArray
scalar Cp(const scalar p, const scalar T) const
Heat capacity at constant pressure [J/(kg K)].
scalar Tcommon() const
Return const access to the common temperature.