52 template<
class EquationOfState>
56 const janafThermo<EquationOfState>&
59 template<
class EquationOfState>
60 inline janafThermo<EquationOfState>
operator-
62 const janafThermo<EquationOfState>&,
63 const janafThermo<EquationOfState>&
66 template<
class EquationOfState>
67 inline janafThermo<EquationOfState>
operator*
70 const janafThermo<EquationOfState>&
73 template<
class EquationOfState>
74 inline janafThermo<EquationOfState>
operator==
76 const janafThermo<EquationOfState>&,
77 const janafThermo<EquationOfState>&
80 template<
class EquationOfState>
84 const janafThermo<EquationOfState>&
92 template<
class EquationOfState>
95 public EquationOfState
111 scalar Tlow_, Thigh_, Tcommon_;
113 coeffArray highCpCoeffs_;
114 coeffArray lowCpCoeffs_;
120 void checkInputData()
const;
123 inline const coeffArray& coeffs(
const scalar
T)
const;
133 const EquationOfState& st,
156 return "janaf<" + EquationOfState::typeName() +
'>';
160 inline scalar
limit(
const scalar
T)
const;
166 inline scalar
Tlow()
const;
169 inline scalar
Thigh()
const;
184 inline scalar
cp(
const scalar
p,
const scalar T)
const;
187 inline scalar
ha(
const scalar p,
const scalar T)
const;
190 inline scalar
hs(
const scalar p,
const scalar T)
const;
193 inline scalar
hc()
const;
196 inline scalar
s(
const scalar p,
const scalar T)
const;
202 void write(Ostream& os)
const;
219 friend janafThermo
operator- <EquationOfState>
225 friend janafThermo
operator* <EquationOfState>
231 friend janafThermo
operator== <EquationOfState>
240 friend Ostream& operator<< <EquationOfState>
scalar limit(const scalar T) const
Limit the temperature to be in the range Tlow_ to Thigh_.
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.
const coeffArray & lowCpCoeffs() const
Return const access to the low temperature poly coefficients.
scalar s(const scalar p, const scalar T) const
Entropy [J/(kmol K)].
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
scalar Tcommon() const
Return const access to the common temperature.
scalar hs(const scalar p, const scalar T) const
Sensible enthalpy [J/kmol].
const coeffArray & highCpCoeffs() const
Return const access to the high temperature poly coefficients.
janafThermo(const EquationOfState &st, const scalar Tlow, const scalar Thigh, const scalar Tcommon, const coeffArray &highCpCoeffs, const coeffArray &lowCpCoeffs)
Construct from components.
void write(Ostream &os) const
Write to Ostream.
A class for handling words, derived from string.
static word typeName()
Return the instantiated type name.
scalar ha(const scalar p, const scalar T) const
Absolute Enthalpy [J/kmol].
scalar cp(const scalar p, const scalar T) const
Heat capacity at constant pressure [J/(kmol K)].
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)
void operator-=(const janafThermo &)
scalar hc() const
Chemical enthalpy [J/kmol].
void operator+=(const janafThermo &)
JANAF tables based thermodynamics package templated into the equation of state.
FixedList< scalar, nCoeffs_ > coeffArray
scalar Tlow() const
Return const access to the low temperature limit.