hPolynomialThermo< EquationOfState, PolySize > Class Template Reference

Thermodynamics package templated on the equation of state, using polynomial functions for cp, h and s. More...

Inheritance diagram for hPolynomialThermo< EquationOfState, PolySize >:
Collaboration diagram for hPolynomialThermo< EquationOfState, PolySize >:

Public Member Functions

 hPolynomialThermo (const dictionary &dict)
 Construct from dictionary. More...
 
 hPolynomialThermo (const word &, const hPolynomialThermo &)
 Construct as a named copy. More...
 
scalar limit (const scalar) const
 Limit the temperature to be in the range Tlow_ to Thigh_. More...
 
scalar Cp (const scalar p, const scalar T) const
 Heat capacity at constant pressure [J/kg/K]. More...
 
scalar Ha (const scalar p, const scalar T) const
 Absolute enthalpy [J/kg]. More...
 
scalar Hs (const scalar p, const scalar T) const
 Sensible enthalpy [J/kg]. More...
 
scalar Hf () const
 Enthalpy of formation [J/kg]. More...
 
scalar S (const scalar p, const scalar T) const
 Entropy [J/kg/K]. More...
 
scalar Gstd (const scalar T) const
 Gibbs free energy of the mixture in the standard state [J/kg]. More...
 
scalar dCpdT (const scalar p, const scalar T) const
 Temperature derivative of heat capacity at constant pressure. More...
 
void write (Ostream &os) const
 Write to Ostream. More...
 
void operator+= (const hPolynomialThermo &)
 
void operator*= (const scalar)
 

Static Public Member Functions

static word typeName ()
 Return the instantiated type name. More...
 

Friends

hPolynomialThermo operator+ (const hPolynomialThermo &, const hPolynomialThermo &)
 
hPolynomialThermo operator* (const scalar, const hPolynomialThermo &)
 
hPolynomialThermo operator== (const hPolynomialThermo &, const hPolynomialThermo &)
 
Ostreamoperator (Ostream &, const hPolynomialThermo &)
 

Detailed Description

template<class EquationOfState, int PolySize = 8>
class Foam::hPolynomialThermo< EquationOfState, PolySize >

Thermodynamics package templated on the equation of state, using polynomial functions for cp, h and s.

Polynomials for h and s derived from cp.

Usage
Property Description
Hf Heat of formation
Sf Standard entropy
CpCoeffs<8> Specific heat at constant pressure polynomial coeffs

Example of the specification of the thermodynamic properties:

    thermodynamics
    {
        Hf              0;
        Sf              0;
        CpCoeffs<8>     ( 1000 -0.05 0.003 0 0 0 0 0 );
    }

The polynomial expression is evaluated as so:

\[ Cp = 1000 - 0.05 T + 0.003 T^2 \]

Note
  • Specific heat at constant pressure polynomial coefficients evaluate to an expression in [J/kg/K].
Source files
See also
Foam::Polynomial

Definition at line 96 of file hPolynomialThermo.H.

Constructor & Destructor Documentation

◆ hPolynomialThermo() [1/2]

hPolynomialThermo ( const dictionary dict)

Construct from dictionary.

Definition at line 33 of file hPolynomialThermo.C.

References Foam::constant::standard::Tstd, and hPolynomialThermo< EquationOfState, PolySize >::write().

Here is the call graph for this function:

◆ hPolynomialThermo() [2/2]

hPolynomialThermo ( const word name,
const hPolynomialThermo< EquationOfState, PolySize > &  pt 
)
inline

Construct as a named copy.

Definition at line 54 of file hPolynomialThermoI.H.

References hPolynomialThermo< EquationOfState, PolySize >::limit().

Here is the call graph for this function:

Member Function Documentation

◆ typeName()

◆ limit()

Foam::scalar limit ( const scalar  T) const
inline

Limit the temperature to be in the range Tlow_ to Thigh_.

Definition at line 72 of file hPolynomialThermoI.H.

References hPolynomialThermo< EquationOfState, PolySize >::Cp(), and Foam::T().

Referenced by hPolynomialThermo< EquationOfState, PolySize >::hPolynomialThermo(), and hPolynomialThermo< EquationOfState, PolySize >::typeName().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Cp()

Foam::scalar Cp ( const scalar  p,
const scalar  T 
) const
inline

Heat capacity at constant pressure [J/kg/K].

Definition at line 82 of file hPolynomialThermoI.H.

References Cp(), and hPolynomialThermo< EquationOfState, PolySize >::Hs().

Referenced by hPolynomialThermo< EquationOfState, PolySize >::limit(), and hPolynomialThermo< EquationOfState, PolySize >::typeName().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Ha()

Foam::scalar Ha ( const scalar  p,
const scalar  T 
) const
inline

Absolute enthalpy [J/kg].

Definition at line 104 of file hPolynomialThermoI.H.

Referenced by hPolynomialThermo< EquationOfState, PolySize >::Hs(), and hPolynomialThermo< EquationOfState, PolySize >::typeName().

Here is the caller graph for this function:

◆ Hs()

Foam::scalar Hs ( const scalar  p,
const scalar  T 
) const
inline

Sensible enthalpy [J/kg].

Definition at line 93 of file hPolynomialThermoI.H.

References hPolynomialThermo< EquationOfState, PolySize >::Ha(), and hPolynomialThermo< EquationOfState, PolySize >::Hf().

Referenced by hPolynomialThermo< EquationOfState, PolySize >::Cp(), and hPolynomialThermo< EquationOfState, PolySize >::typeName().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Hf()

Foam::scalar Hf ( ) const
inline

Enthalpy of formation [J/kg].

Definition at line 114 of file hPolynomialThermoI.H.

References hPolynomialThermo< EquationOfState, PolySize >::S().

Referenced by hPolynomialThermo< EquationOfState, PolySize >::Hs(), and hPolynomialThermo< EquationOfState, PolySize >::typeName().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ S()

Foam::scalar S ( const scalar  p,
const scalar  T 
) const
inline

Entropy [J/kg/K].

Definition at line 123 of file hPolynomialThermoI.H.

References hPolynomialThermo< EquationOfState, PolySize >::Gstd(), and Sp.

Referenced by hPolynomialThermo< EquationOfState, PolySize >::Hf(), and hPolynomialThermo< EquationOfState, PolySize >::typeName().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Gstd()

Foam::scalar Gstd ( const scalar  T) const
inline

Gibbs free energy of the mixture in the standard state [J/kg].

Definition at line 134 of file hPolynomialThermoI.H.

References hPolynomialThermo< EquationOfState, PolySize >::dCpdT(), and Foam::T().

Referenced by hPolynomialThermo< EquationOfState, PolySize >::S(), and hPolynomialThermo< EquationOfState, PolySize >::typeName().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ dCpdT()

Foam::scalar dCpdT ( const scalar  p,
const scalar  T 
) const
inline

Temperature derivative of heat capacity at constant pressure.

Definition at line 144 of file hPolynomialThermoI.H.

Referenced by hPolynomialThermo< EquationOfState, PolySize >::Gstd(), and hPolynomialThermo< EquationOfState, PolySize >::typeName().

Here is the caller graph for this function:

◆ write()

void write ( Ostream os) const

Write to Ostream.

Definition at line 65 of file hPolynomialThermo.C.

References dictionary::add(), dict, dictionaryName::dictName(), Foam::indent(), Foam::name(), Foam::vtkWriteOps::write(), and Ostream::write().

Referenced by hPolynomialThermo< EquationOfState, PolySize >::hPolynomialThermo(), and hPolynomialThermo< EquationOfState, PolySize >::typeName().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator+=()

void operator+= ( const hPolynomialThermo< EquationOfState, PolySize > &  )
inline

Definition at line 160 of file hPolynomialThermoI.H.

References Foam::mag(), and Y.

Referenced by hPolynomialThermo< EquationOfState, PolySize >::typeName().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator*=()

void operator*= ( const scalar  s)
inline

Definition at line 184 of file hPolynomialThermoI.H.

References Foam::mag(), and s().

Referenced by hPolynomialThermo< EquationOfState, PolySize >::typeName().

Here is the call graph for this function:
Here is the caller graph for this function:

Friends And Related Function Documentation

◆ operator+

hPolynomialThermo operator+ ( const hPolynomialThermo< EquationOfState, PolySize > &  ,
const hPolynomialThermo< EquationOfState, PolySize > &   
)
friend

◆ operator*

hPolynomialThermo operator* ( const scalar  ,
const hPolynomialThermo< EquationOfState, PolySize > &   
)
friend

◆ operator==

hPolynomialThermo operator== ( const hPolynomialThermo< EquationOfState, PolySize > &  ,
const hPolynomialThermo< EquationOfState, PolySize > &   
)
friend

◆ operator

Ostream& operator ( Ostream ,
const hPolynomialThermo< EquationOfState, PolySize > &   
)
friend

The documentation for this class was generated from the following files: