heThermo< BasicThermo, MixtureType > Class Template Reference

Enthalpy/Internal energy for a mixture. More...

Inheritance diagram for heThermo< BasicThermo, MixtureType >:
Collaboration diagram for heThermo< BasicThermo, MixtureType >:

Public Member Functions

 heThermo (const fvMesh &, const word &phaseName)
 Construct from mesh. More...
 
 heThermo (const fvMesh &, const dictionary &, const word &phaseName)
 Construct from mesh and dictionary. More...
 
 heThermo (const heThermo< BasicThermo, MixtureType > &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~heThermo ()
 Destructor. More...
 
virtual MixtureType::basicMixtureType & composition ()
 Return the composition of the mixture. More...
 
virtual const MixtureType::basicMixtureType & composition () const
 Return the composition of the mixture. More...
 
virtual word thermoName () const
 Return the name of the thermo physics. More...
 
virtual bool incompressible () const
 Return true if the equation of state is incompressible. More...
 
virtual bool isochoric () const
 Return true if the equation of state is isochoric. More...
 
virtual volScalarFieldhe ()
 Enthalpy/Internal energy [J/kg]. More...
 
virtual const volScalarFieldhe () const
 Enthalpy/Internal energy [J/kg]. More...
 
virtual tmp< volScalarFieldCp () const
 Heat capacity at constant pressure [J/kg/K]. More...
 
virtual tmp< volScalarFieldCv () const
 Heat capacity at constant volume [J/kg/K]. More...
 
virtual tmp< volScalarFieldhe (const volScalarField &p, const volScalarField &T) const
 Enthalpy/Internal energy. More...
 
virtual tmp< scalarFieldhe (const scalarField &T, const labelList &cells) const
 Enthalpy/Internal energy for cell-set [J/kg]. More...
 
virtual tmp< scalarFieldhe (const scalarField &T, const label patchi) const
 Enthalpy/Internal energy for patch [J/kg]. More...
 
virtual tmp< volScalarFieldhs () const
 Sensible enthalpy [J/kg/K]. More...
 
virtual tmp< volScalarFieldhs (const volScalarField &p, const volScalarField &T) const
 Sensible enthalpy. More...
 
virtual tmp< scalarFieldhs (const scalarField &T, const label patchi) const
 Sensible enthalpy for patch [J/kg/K]. More...
 
virtual tmp< scalarFieldhs (const scalarField &T, const labelList &cells) const
 Sensible enthalpy for cell-set [J/kg]. More...
 
virtual tmp< volScalarFieldha () const
 Absolute enthalpy [J/kg/K]. More...
 
virtual tmp< volScalarFieldha (const volScalarField &p, const volScalarField &T) const
 Absolute enthalpy. More...
 
virtual tmp< scalarFieldha (const scalarField &T, const label patchi) const
 Absolute enthalpy for patch [J/kg/K]. More...
 
virtual tmp< scalarFieldha (const scalarField &T, const labelList &cells) const
 Absolute enthalpy for cell-set [J/kg]. More...
 
virtual tmp< volScalarFieldhc () const
 Enthalpy of formation [J/kg]. More...
 
virtual tmp< volScalarFieldTHE (const volScalarField &h, const volScalarField &p, const volScalarField &T0) const
 Temperature from enthalpy/internal energy. More...
 
virtual tmp< scalarFieldTHE (const scalarField &he, const scalarField &T0, const labelList &cells) const
 Temperature from enthalpy/internal energy for cell-set. More...
 
virtual tmp< scalarFieldTHE (const scalarField &he, const scalarField &T0, const label patchi) const
 Temperature from enthalpy/internal energy for patch. More...
 
virtual tmp< scalarFieldCp (const scalarField &T, const label patchi) const
 Heat capacity at constant pressure for patch [J/kg/K]. More...
 
virtual tmp< scalarFieldCv (const scalarField &T, const label patchi) const
 Heat capacity at constant volume for patch [J/kg/K]. More...
 
virtual tmp< volScalarFieldgamma () const
 Gamma = Cp/Cv []. More...
 
virtual tmp< scalarFieldgamma (const scalarField &T, const label patchi) const
 Gamma = Cp/Cv for patch []. More...
 
virtual tmp< scalarFieldCpv (const scalarField &T, const label patchi) const
 Heat capacity at constant pressure/volume for patch [J/kg/K]. More...
 
virtual tmp< volScalarFieldCpv () const
 Heat capacity at constant pressure/volume [J/kg/K]. More...
 
virtual tmp< volScalarFieldW () const
 Molecular weight [kg/kmol]. More...
 
virtual tmp< scalarFieldW (const label patchi) const
 Molecular weight for patch [kg/kmol]. More...
 
virtual tmp< volScalarFieldkappa () const
 Thermal diffusivity for temperature of mixture [W/m/K]. More...
 
virtual tmp< scalarFieldkappa (const label patchi) const
 Thermal diffusivity for temperature of mixture for patch [W/m/K]. More...
 
virtual tmp< volScalarFieldalphahe () const
 Thermal diffusivity for energy of mixture [kg/m/s]. More...
 
virtual tmp< scalarFieldalphahe (const label patchi) const
 Thermal diffusivity for energy of mixture for patch [kg/m/s]. More...
 
virtual tmp< volScalarFieldkappaEff (const volScalarField &) const
 Effective thermal turbulent diffusivity for temperature. More...
 
virtual tmp< scalarFieldkappaEff (const scalarField &alphat, const label patchi) const
 Effective thermal turbulent diffusivity for temperature. More...
 
virtual tmp< volScalarFieldalphaEff (const volScalarField &alphat) const
 Effective thermal turbulent diffusivity of mixture [kg/m/s]. More...
 
virtual tmp< scalarFieldalphaEff (const scalarField &alphat, const label patchi) const
 Effective thermal turbulent diffusivity of mixture. More...
 
virtual bool read ()
 Read thermophysical properties dictionary. More...
 
template<class CellMixture , class PatchFaceMixture , class Method , class ... Args>
Foam::tmp< Foam::volScalarFieldvolScalarFieldProperty (const word &psiName, const dimensionSet &psiDim, CellMixture cellMixture, PatchFaceMixture patchFaceMixture, Method psiMethod, const Args &... args) const
 
template<class CellMixture , class Method , class ... Args>
Foam::tmp< Foam::scalarFieldcellSetProperty (CellMixture cellMixture, Method psiMethod, const labelList &cells, const Args &... args) const
 
template<class PatchFaceMixture , class Method , class ... Args>
Foam::tmp< Foam::scalarFieldpatchFieldProperty (PatchFaceMixture patchFaceMixture, Method psiMethod, const label patchi, const Args &... args) const
 

Protected Member Functions

template<class CellMixture , class PatchFaceMixture , class Method , class ... Args>
tmp< volScalarFieldvolScalarFieldProperty (const word &psiName, const dimensionSet &psiDim, CellMixture cellMixture, PatchFaceMixture patchFaceMixture, Method psiMethod, const Args &... args) const
 Return a volScalarField of the given property. More...
 
template<class CellMixture , class Method , class ... Args>
tmp< scalarFieldcellSetProperty (CellMixture cellMixture, Method psiMethod, const labelList &cells, const Args &... args) const
 Return a scalarField of the given property on a cell set. More...
 
template<class PatchFaceMixture , class Method , class ... Args>
tmp< scalarFieldpatchFieldProperty (PatchFaceMixture patchFaceMixture, Method psiMethod, const label patchi, const Args &... args) const
 Return a scalarField of the given property on a patch. More...
 
void heBoundaryCorrection (volScalarField &he)
 Correct the enthalpy/internal energy field boundaries. More...
 

Static Protected Member Functions

static UIndirectList< scalar > cellSetScalarList (const volScalarField &psi, const labelList &cells)
 Return an indirect list of a field for the given set of cells. More...
 
static UniformField< scalar > cellSetScalarList (const uniformGeometricScalarField &psi, const labelList &)
 Return an indirect list of a field for the given set of cells. More...
 

Protected Attributes

volScalarField he_
 Energy field. More...
 
volScalarField Cp_
 Heat capacity at constant pressure field [J/kg/K]. More...
 
volScalarField Cv_
 

Detailed Description

template<class BasicThermo, class MixtureType>
class Foam::heThermo< BasicThermo, MixtureType >

Enthalpy/Internal energy for a mixture.

Source files

Definition at line 51 of file heThermo.H.

Constructor & Destructor Documentation

◆ heThermo() [1/3]

heThermo ( const fvMesh mesh,
const word phaseName 
)

Construct from mesh.

Definition at line 195 of file heThermo.C.

Referenced by heThermo< BasicSolidThermo, MixtureType >::heBoundaryCorrection(), and heThermo< BasicSolidThermo, MixtureType >::heThermo().

Here is the caller graph for this function:

◆ heThermo() [2/3]

heThermo ( const fvMesh mesh,
const dictionary dict,
const word phaseName 
)

Construct from mesh and dictionary.

Definition at line 261 of file heThermo.C.

◆ heThermo() [3/3]

heThermo ( const heThermo< BasicThermo, MixtureType > &  )
delete

Disallow default bitwise copy construction.

◆ ~heThermo()

~heThermo ( )
virtual

Destructor.

Definition at line 329 of file heThermo.C.

Member Function Documentation

◆ volScalarFieldProperty() [1/2]

tmp<volScalarField> volScalarFieldProperty ( const word psiName,
const dimensionSet psiDim,
CellMixture  cellMixture,
PatchFaceMixture  patchFaceMixture,
Method  psiMethod,
const Args &...  args 
) const
protected

Return a volScalarField of the given property.

◆ cellSetProperty() [1/2]

tmp<scalarField> cellSetProperty ( CellMixture  cellMixture,
Method  psiMethod,
const labelList cells,
const Args &...  args 
) const
protected

Return a scalarField of the given property on a cell set.

Referenced by heThermo< BasicSolidThermo, MixtureType >::volScalarFieldProperty().

Here is the caller graph for this function:

◆ patchFieldProperty() [1/2]

tmp<scalarField> patchFieldProperty ( PatchFaceMixture  patchFaceMixture,
Method  psiMethod,
const label  patchi,
const Args &...  args 
) const
protected

Return a scalarField of the given property on a patch.

Referenced by heThermo< BasicSolidThermo, MixtureType >::cellSetProperty().

Here is the caller graph for this function:

◆ cellSetScalarList() [1/2]

Foam::UIndirectList< Foam::scalar > cellSetScalarList ( const volScalarField psi,
const labelList cells 
)
staticprotected

Return an indirect list of a field for the given set of cells.

Definition at line 148 of file heThermo.C.

Referenced by heThermo< BasicSolidThermo, MixtureType >::cellSetScalarList(), and heThermo< BasicSolidThermo, MixtureType >::patchFieldProperty().

Here is the caller graph for this function:

◆ cellSetScalarList() [2/2]

Foam::UniformField< Foam::scalar > cellSetScalarList ( const uniformGeometricScalarField psi,
const labelList  
)
staticprotected

Return an indirect list of a field for the given set of cells.

Definition at line 160 of file heThermo.C.

◆ heBoundaryCorrection()

void heBoundaryCorrection ( volScalarField he)
protected

Correct the enthalpy/internal energy field boundaries.

Definition at line 171 of file heThermo.C.

Referenced by heThermo< BasicSolidThermo, MixtureType >::cellSetScalarList().

Here is the caller graph for this function:

◆ composition() [1/2]

virtual MixtureType::basicMixtureType& composition ( )
inlinevirtual

Return the composition of the mixture.

Definition at line 159 of file heThermo.H.

◆ composition() [2/2]

virtual const MixtureType::basicMixtureType& composition ( ) const
inlinevirtual

Return the composition of the mixture.

Definition at line 166 of file heThermo.H.

◆ thermoName()

virtual word thermoName ( ) const
inlinevirtual

Return the name of the thermo physics.

Definition at line 172 of file heThermo.H.

◆ incompressible()

virtual bool incompressible ( ) const
inlinevirtual

Return true if the equation of state is incompressible.

i.e. rho != f(p)

Definition at line 179 of file heThermo.H.

Referenced by heThermo< BasicSolidThermo, MixtureType >::thermoName().

Here is the caller graph for this function:

◆ isochoric()

virtual bool isochoric ( ) const
inlinevirtual

Return true if the equation of state is isochoric.

i.e. rho = const

Definition at line 186 of file heThermo.H.

Referenced by heThermo< BasicSolidThermo, MixtureType >::thermoName().

Here is the caller graph for this function:

◆ he() [1/5]

virtual volScalarField& he ( )
inlinevirtual

Enthalpy/Internal energy [J/kg].

Non-const access allowed for transport equations

Definition at line 196 of file heThermo.H.

Referenced by heThermo< BasicSolidThermo, MixtureType >::Cv(), heThermo< BasicSolidThermo, MixtureType >::he(), heThermo< BasicSolidThermo, MixtureType >::thermoName(), and heThermo< BasicSolidThermo, MixtureType >::~heThermo().

Here is the caller graph for this function:

◆ he() [2/5]

virtual const volScalarField& he ( ) const
inlinevirtual

Enthalpy/Internal energy [J/kg].

Definition at line 202 of file heThermo.H.

◆ Cp() [1/2]

virtual tmp<volScalarField> Cp ( ) const
inlinevirtual

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

Definition at line 208 of file heThermo.H.

Referenced by heThermo< BasicSolidThermo, MixtureType >::Cv(), and heThermo< BasicSolidThermo, MixtureType >::hc().

Here is the caller graph for this function:

◆ Cv() [1/2]

virtual tmp<volScalarField> Cv ( ) const
inlinevirtual

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

Definition at line 214 of file heThermo.H.

Referenced by heThermo< BasicSolidThermo, MixtureType >::Cp(), and heThermo< BasicSolidThermo, MixtureType >::Cv().

Here is the caller graph for this function:

◆ he() [3/5]

Foam::tmp< Foam::volScalarField > he ( const volScalarField p,
const volScalarField T 
) const
virtual

Enthalpy/Internal energy.

for given pressure and temperature [J/kg]

Definition at line 337 of file heThermo.C.

◆ he() [4/5]

Foam::tmp< Foam::scalarField > he ( const scalarField T,
const labelList cells 
) const
virtual

Enthalpy/Internal energy for cell-set [J/kg].

Definition at line 357 of file heThermo.C.

◆ he() [5/5]

Foam::tmp< Foam::scalarField > he ( const scalarField T,
const label  patchi 
) const
virtual

Enthalpy/Internal energy for patch [J/kg].

Definition at line 375 of file heThermo.C.

◆ hs() [1/4]

Foam::tmp< Foam::volScalarField > hs ( ) const
virtual

Sensible enthalpy [J/kg/K].

Definition at line 393 of file heThermo.C.

Referenced by heThermo< BasicSolidThermo, MixtureType >::Cv(), and heThermo< BasicSolidThermo, MixtureType >::hs().

Here is the caller graph for this function:

◆ hs() [2/4]

Foam::tmp< Foam::volScalarField > hs ( const volScalarField p,
const volScalarField T 
) const
virtual

Sensible enthalpy.

for given pressure and temperature [J/kg]

Definition at line 410 of file heThermo.C.

◆ hs() [3/4]

Foam::tmp< Foam::scalarField > hs ( const scalarField T,
const label  patchi 
) const
virtual

Sensible enthalpy for patch [J/kg/K].

Definition at line 448 of file heThermo.C.

◆ hs() [4/4]

Foam::tmp< Foam::scalarField > hs ( const scalarField T,
const labelList cells 
) const
virtual

Sensible enthalpy for cell-set [J/kg].

Definition at line 430 of file heThermo.C.

◆ ha() [1/4]

Foam::tmp< Foam::volScalarField > ha ( ) const
virtual

Absolute enthalpy [J/kg/K].

Definition at line 466 of file heThermo.C.

Referenced by heThermo< BasicSolidThermo, MixtureType >::Cv(), and heThermo< BasicSolidThermo, MixtureType >::ha().

Here is the caller graph for this function:

◆ ha() [2/4]

Foam::tmp< Foam::volScalarField > ha ( const volScalarField p,
const volScalarField T 
) const
virtual

Absolute enthalpy.

for given pressure and temperature [J/kg]

Definition at line 483 of file heThermo.C.

◆ ha() [3/4]

Foam::tmp< Foam::scalarField > ha ( const scalarField T,
const label  patchi 
) const
virtual

Absolute enthalpy for patch [J/kg/K].

Definition at line 521 of file heThermo.C.

◆ ha() [4/4]

Foam::tmp< Foam::scalarField > ha ( const scalarField T,
const labelList cells 
) const
virtual

Absolute enthalpy for cell-set [J/kg].

Definition at line 503 of file heThermo.C.

◆ hc()

Foam::tmp< Foam::volScalarField > hc ( ) const
virtual

Enthalpy of formation [J/kg].

Definition at line 539 of file heThermo.C.

Referenced by heThermo< BasicSolidThermo, MixtureType >::Cv().

Here is the caller graph for this function:

◆ THE() [1/3]

Foam::tmp< Foam::volScalarField > THE ( const volScalarField h,
const volScalarField p,
const volScalarField T0 
) const
virtual

Temperature from enthalpy/internal energy.

Definition at line 650 of file heThermo.C.

Referenced by heThermo< BasicSolidThermo, MixtureType >::Cpv(), heThermo< BasicSolidThermo, MixtureType >::Cv(), and heThermo< BasicSolidThermo, MixtureType >::THE().

Here is the caller graph for this function:

◆ THE() [2/3]

Foam::tmp< Foam::scalarField > THE ( const scalarField he,
const scalarField T0,
const labelList cells 
) const
virtual

Temperature from enthalpy/internal energy for cell-set.

Definition at line 672 of file heThermo.C.

◆ THE() [3/3]

Foam::tmp< Foam::scalarField > THE ( const scalarField he,
const scalarField T0,
const label  patchi 
) const
virtual

Temperature from enthalpy/internal energy for patch.

Definition at line 692 of file heThermo.C.

◆ Cp() [2/2]

Foam::tmp< Foam::scalarField > Cp ( const scalarField T,
const label  patchi 
) const
virtual

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

Definition at line 554 of file heThermo.C.

◆ Cv() [2/2]

Foam::tmp< Foam::scalarField > Cv ( const scalarField T,
const label  patchi 
) const
virtual

Heat capacity at constant volume for patch [J/kg/K].

Definition at line 573 of file heThermo.C.

◆ gamma() [1/2]

Foam::tmp< Foam::volScalarField > gamma ( ) const
virtual

Gamma = Cp/Cv [].

Definition at line 609 of file heThermo.C.

Referenced by heThermo< BasicSolidThermo, MixtureType >::Cv().

Here is the caller graph for this function:

◆ gamma() [2/2]

Foam::tmp< Foam::scalarField > gamma ( const scalarField T,
const label  patchi 
) const
virtual

Gamma = Cp/Cv for patch [].

Definition at line 591 of file heThermo.C.

◆ Cpv() [1/2]

Foam::tmp< Foam::scalarField > Cpv ( const scalarField T,
const label  patchi 
) const
virtual

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

Definition at line 617 of file heThermo.C.

◆ Cpv() [2/2]

Foam::tmp< Foam::volScalarField > Cpv ( ) const
virtual

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

Definition at line 635 of file heThermo.C.

Referenced by heThermo< BasicSolidThermo, MixtureType >::Cv(), and heThermo< BasicSolidThermo, MixtureType >::gamma().

Here is the caller graph for this function:

◆ W() [1/2]

Foam::tmp< Foam::volScalarField > W ( ) const
virtual

Molecular weight [kg/kmol].

Definition at line 712 of file heThermo.C.

Referenced by heThermo< BasicSolidThermo, MixtureType >::Cv(), and heThermo< BasicSolidThermo, MixtureType >::W().

Here is the caller graph for this function:

◆ W() [2/2]

Foam::tmp< Foam::scalarField > W ( const label  patchi) const
virtual

Molecular weight for patch [kg/kmol].

Definition at line 727 of file heThermo.C.

◆ kappa() [1/2]

Foam::tmp< Foam::volScalarField > kappa ( ) const
virtual

Thermal diffusivity for temperature of mixture [W/m/K].

Definition at line 742 of file heThermo.C.

Referenced by heThermo< BasicSolidThermo, MixtureType >::Cv(), and heThermo< BasicSolidThermo, MixtureType >::kappa().

Here is the caller graph for this function:

◆ kappa() [2/2]

Foam::tmp< Foam::scalarField > kappa ( const label  patchi) const
virtual

Thermal diffusivity for temperature of mixture for patch [W/m/K].

Definition at line 750 of file heThermo.C.

◆ alphahe() [1/2]

Foam::tmp< Foam::volScalarField > alphahe ( ) const
virtual

Thermal diffusivity for energy of mixture [kg/m/s].

Definition at line 765 of file heThermo.C.

Referenced by heThermo< BasicSolidThermo, MixtureType >::Cv().

Here is the caller graph for this function:

◆ alphahe() [2/2]

Foam::tmp< Foam::scalarField > alphahe ( const label  patchi) const
virtual

Thermal diffusivity for energy of mixture for patch [kg/m/s].

Definition at line 784 of file heThermo.C.

◆ kappaEff() [1/2]

Foam::tmp< Foam::volScalarField > kappaEff ( const volScalarField alphat) const
virtual

Effective thermal turbulent diffusivity for temperature.

of mixture [W/m/K]

Definition at line 805 of file heThermo.C.

Referenced by heThermo< BasicSolidThermo, MixtureType >::alphahe(), heThermo< BasicSolidThermo, MixtureType >::Cv(), and heThermo< BasicSolidThermo, MixtureType >::kappaEff().

Here is the caller graph for this function:

◆ kappaEff() [2/2]

Foam::tmp< Foam::scalarField > kappaEff ( const scalarField alphat,
const label  patchi 
) const
virtual

Effective thermal turbulent diffusivity for temperature.

of mixture for patch [W/m/K]

Definition at line 816 of file heThermo.C.

◆ alphaEff() [1/2]

Foam::tmp< Foam::volScalarField > alphaEff ( const volScalarField alphat) const
virtual

Effective thermal turbulent diffusivity of mixture [kg/m/s].

Definition at line 834 of file heThermo.C.

Referenced by heThermo< BasicSolidThermo, MixtureType >::alphaEff(), heThermo< BasicSolidThermo, MixtureType >::Cv(), and heThermo< BasicSolidThermo, MixtureType >::kappaEff().

Here is the caller graph for this function:

◆ alphaEff() [2/2]

Foam::tmp< Foam::scalarField > alphaEff ( const scalarField alphat,
const label  patchi 
) const
virtual

Effective thermal turbulent diffusivity of mixture.

for patch [kg/m/s]

Definition at line 856 of file heThermo.C.

◆ read()

bool read ( )
virtual

Read thermophysical properties dictionary.

Definition at line 878 of file heThermo.C.

Referenced by heThermo< BasicSolidThermo, MixtureType >::Cv().

Here is the caller graph for this function:

◆ volScalarFieldProperty() [2/2]

Foam::tmp<Foam::volScalarField> volScalarFieldProperty ( const word psiName,
const dimensionSet psiDim,
CellMixture  cellMixture,
PatchFaceMixture  patchFaceMixture,
Method  psiMethod,
const Args &...  args 
) const

Definition at line 42 of file heThermo.C.

◆ cellSetProperty() [2/2]

Foam::tmp<Foam::scalarField> cellSetProperty ( CellMixture  cellMixture,
Method  psiMethod,
const labelList cells,
const Args &...  args 
) const

Definition at line 92 of file heThermo.C.

◆ patchFieldProperty() [2/2]

Foam::tmp<Foam::scalarField> patchFieldProperty ( PatchFaceMixture  patchFaceMixture,
Method  psiMethod,
const label  patchi,
const Args &...  args 
) const

Definition at line 119 of file heThermo.C.

Member Data Documentation

◆ he_

◆ Cp_

volScalarField Cp_
protected

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

Definition at line 64 of file heThermo.H.

Referenced by heThermo< BasicSolidThermo, MixtureType >::Cp().

◆ Cv_

volScalarField Cv_
protected

Definition at line 67 of file heThermo.H.

Referenced by heThermo< BasicSolidThermo, MixtureType >::Cv().


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