MulticomponentThermo< BaseThermo > Class Template Reference

Multi-component thermo implementation. More...

Inheritance diagram for MulticomponentThermo< BaseThermo >:
Collaboration diagram for MulticomponentThermo< BaseThermo >:

Public Member Functions

 MulticomponentThermo (const fvMesh &, const word &phaseName)
 Construct from mesh and phase name. More...
 
 MulticomponentThermo (const MulticomponentThermo< BaseThermo > &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~MulticomponentThermo ()
 Destructor. More...
 
virtual const speciesTablespecies () const
 Return the table of species. More...
 
virtual scalar WiValue (const label speciei) const
 Molecular weight [kg/kmol]. More...
 
virtual dimensionedScalar Wi (const label speciei) const
 Molecular weight [kg/kmol]. More...
 
virtual const boolListspeciesActive () const
 Access the specie active flags. More...
 
virtual boolListspeciesActive ()
 Access the specie active flags. More...
 
virtual scalar rhoi (const label speciei, const scalar p, const scalar T) const
 Density [kg/m^3]. More...
 
virtual tmp< volScalarFieldrhoi (const label speciei, const volScalarField &p, const volScalarField &T) const
 Density [kg/m^3]. More...
 
virtual scalar Cpi (const label speciei, const scalar p, const scalar T) const
 Heat capacity at constant pressure [J/kg/K]. More...
 
virtual tmp< volScalarFieldCpi (const label speciei, const volScalarField &p, const volScalarField &T) const
 Heat capacity at constant pressure [J/kg/K]. More...
 
virtual scalar hei (const label speciei, const scalar p, const scalar T) const
 Enthalpy/Internal energy [J/kg]. More...
 
virtual tmp< scalarFieldhei (const label speciei, const scalarField &p, const scalarField &T) const
 Enthalpy/Internal energy [J/kg]. More...
 
virtual tmp< volScalarField::Internalhei (const label speciei, const volScalarField::Internal &p, const volScalarField::Internal &T) const
 Enthalpy/Internal energy [J/kg]. More...
 
virtual tmp< volScalarFieldhei (const label speciei, const volScalarField &p, const volScalarField &T) const
 Enthalpy/Internal energy [J/kg]. More...
 
virtual scalar hsi (const label speciei, const scalar p, const scalar T) const
 Sensible enthalpy [J/kg]. More...
 
virtual tmp< scalarFieldhsi (const label speciei, const scalarField &p, const scalarField &T) const
 Sensible enthalpy [J/kg]. More...
 
virtual tmp< volScalarField::Internalhsi (const label speciei, const volScalarField::Internal &p, const volScalarField::Internal &T) const
 Sensible enthalpy [J/kg]. More...
 
virtual tmp< volScalarFieldhsi (const label speciei, const volScalarField &p, const volScalarField &T) const
 Sensible enthalpy [J/kg]. More...
 
virtual scalar hai (const label speciei, const scalar p, const scalar T) const
 Absolute enthalpy [J/kg]. More...
 
virtual tmp< scalarFieldhai (const label speciei, const scalarField &p, const scalarField &T) const
 Absolute enthalpy [J/kg]. More...
 
virtual tmp< volScalarField::Internalhai (const label speciei, const volScalarField::Internal &p, const volScalarField::Internal &T) const
 Absolute enthalpy [J/kg]. More...
 
virtual tmp< volScalarFieldhai (const label speciei, const volScalarField &p, const volScalarField &T) const
 Absolute enthalpy [J/kg]. More...
 
virtual scalar hfiValue (const label speciei) const
 Enthalpy of formation [J/kg]. More...
 
virtual dimensionedScalar hfi (const label speciei) const
 Enthalpy of formation [J/kg]. More...
 
virtual scalar kappai (const label speciei, const scalar p, const scalar T) const
 Thermal conductivity [W/m/K]. More...
 
virtual tmp< volScalarFieldkappai (const label speciei, const volScalarField &p, const volScalarField &T) const
 Thermal conductivity [W/m/K]. More...
 
template<class Method , class ... Args>
Foam::tmp< Foam::volScalarFieldvolScalarFieldPropertyi (const word &psiName, const dimensionSet &psiDim, Method psiMethod, const label speciei, const Args &... args) const
 
template<class Method , class ... Args>
Foam::tmp< Foam::volScalarField::InternalvolInternalScalarFieldPropertyi (const word &psiName, const dimensionSet &psiDim, Method psiMethod, const label speciei, const Args &... args) const
 
template<class Method , class Arg , class ... Args>
Foam::tmp< Foam::scalarFieldscalarFieldPropertyi (Method psiMethod, const label speciei, const Arg &arg, const Args &... args) const
 

Protected Member Functions

template<class Method , class ... Args>
tmp< volScalarFieldvolScalarFieldPropertyi (const word &psiName, const dimensionSet &psiDim, Method psiMethod, const label speciei, const Args &... args) const
 Return a volScalarField of the given property. More...
 
template<class Method , class ... Args>
tmp< volScalarField::InternalvolInternalScalarFieldPropertyi (const word &psiName, const dimensionSet &psiDim, Method psiMethod, const label speciei, const Args &... args) const
 Return a volScalarField::Internal of the given property. More...
 
template<class Method , class Arg , class ... Args>
tmp< scalarFieldscalarFieldPropertyi (Method psiMethod, const label speciei, const Arg &arg, const Args &... args) const
 Return a scalarField of the given property. More...
 

Detailed Description

template<class BaseThermo>
class Foam::MulticomponentThermo< BaseThermo >

Multi-component thermo implementation.

Source files

Definition at line 50 of file MulticomponentThermo.H.

Constructor & Destructor Documentation

◆ MulticomponentThermo() [1/2]

MulticomponentThermo ( const fvMesh mesh,
const word phaseName 
)

Construct from mesh and phase name.

Definition at line 147 of file MulticomponentThermo.C.

◆ MulticomponentThermo() [2/2]

MulticomponentThermo ( const MulticomponentThermo< BaseThermo > &  )
delete

Disallow default bitwise copy construction.

◆ ~MulticomponentThermo()

Destructor.

Definition at line 160 of file MulticomponentThermo.C.

Member Function Documentation

◆ volScalarFieldPropertyi() [1/2]

tmp<volScalarField> volScalarFieldPropertyi ( const word psiName,
const dimensionSet psiDim,
Method  psiMethod,
const label  speciei,
const Args &...  args 
) const
protected

Return a volScalarField of the given property.

◆ volInternalScalarFieldPropertyi() [1/2]

tmp<volScalarField::Internal> volInternalScalarFieldPropertyi ( const word psiName,
const dimensionSet psiDim,
Method  psiMethod,
const label  speciei,
const Args &...  args 
) const
protected

Return a volScalarField::Internal of the given property.

◆ scalarFieldPropertyi() [1/2]

tmp<scalarField> scalarFieldPropertyi ( Method  psiMethod,
const label  speciei,
const Arg &  arg,
const Args &...  args 
) const
protected

Return a scalarField of the given property.

◆ species()

virtual const speciesTable& species ( ) const
inlinevirtual

Return the table of species.

Definition at line 111 of file MulticomponentThermo.H.

◆ WiValue()

Foam::scalar WiValue ( const label  speciei) const
virtual

Molecular weight [kg/kmol].

Definition at line 167 of file MulticomponentThermo.C.

◆ Wi()

Foam::dimensionedScalar Wi ( const label  speciei) const
virtual

Molecular weight [kg/kmol].

Definition at line 177 of file MulticomponentThermo.C.

References Foam::dimMass, Foam::dimMoles, and Foam::W().

Here is the call graph for this function:

◆ speciesActive() [1/2]

virtual const boolList& speciesActive ( ) const
inlinevirtual

Access the specie active flags.

Definition at line 129 of file MulticomponentThermo.H.

◆ speciesActive() [2/2]

virtual boolList& speciesActive ( )
inlinevirtual

Access the specie active flags.

Definition at line 135 of file MulticomponentThermo.H.

◆ rhoi() [1/2]

Foam::scalar rhoi ( const label  speciei,
const scalar  p,
const scalar  T 
) const
virtual

Density [kg/m^3].

Definition at line 193 of file MulticomponentThermo.C.

References p, and Foam::T().

Here is the call graph for this function:

◆ rhoi() [2/2]

Foam::tmp< Foam::volScalarField > rhoi ( const label  speciei,
const volScalarField p,
const volScalarField T 
) const
virtual

Density [kg/m^3].

Definition at line 206 of file MulticomponentThermo.C.

References Foam::dimDensity, p, rho, and Foam::T().

Here is the call graph for this function:

◆ Cpi() [1/2]

Foam::scalar Cpi ( const label  speciei,
const scalar  p,
const scalar  T 
) const
virtual

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

Definition at line 226 of file MulticomponentThermo.C.

References p, and Foam::T().

Here is the call graph for this function:

◆ Cpi() [2/2]

Foam::tmp< Foam::volScalarField > Cpi ( const label  speciei,
const volScalarField p,
const volScalarField T 
) const
virtual

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

Definition at line 239 of file MulticomponentThermo.C.

References Cp(), Foam::dimEnergy, Foam::dimMass, Foam::dimTemperature, p, and Foam::T().

Here is the call graph for this function:

◆ hei() [1/4]

Foam::scalar hei ( const label  speciei,
const scalar  p,
const scalar  T 
) const
virtual

Enthalpy/Internal energy [J/kg].

Definition at line 259 of file MulticomponentThermo.C.

References p, and Foam::T().

Here is the call graph for this function:

◆ hei() [2/4]

Foam::tmp< Foam::scalarField > hei ( const label  speciei,
const scalarField p,
const scalarField T 
) const
virtual

Enthalpy/Internal energy [J/kg].

Definition at line 271 of file MulticomponentThermo.C.

References p, and Foam::T().

Here is the call graph for this function:

◆ hei() [3/4]

Foam::tmp< Foam::volScalarField::Internal > hei ( const label  speciei,
const volScalarField::Internal p,
const volScalarField::Internal T 
) const
virtual

Enthalpy/Internal energy [J/kg].

Definition at line 290 of file MulticomponentThermo.C.

References Foam::dimEnergy, Foam::dimMass, p, and Foam::T().

Here is the call graph for this function:

◆ hei() [4/4]

Foam::tmp< Foam::volScalarField > hei ( const label  speciei,
const volScalarField p,
const volScalarField T 
) const
virtual

Enthalpy/Internal energy [J/kg].

Definition at line 311 of file MulticomponentThermo.C.

References Foam::dimEnergy, Foam::dimMass, p, and Foam::T().

Here is the call graph for this function:

◆ hsi() [1/4]

Foam::scalar hsi ( const label  speciei,
const scalar  p,
const scalar  T 
) const
virtual

Sensible enthalpy [J/kg].

Definition at line 331 of file MulticomponentThermo.C.

References p, and Foam::T().

Here is the call graph for this function:

◆ hsi() [2/4]

Foam::tmp< Foam::scalarField > hsi ( const label  speciei,
const scalarField p,
const scalarField T 
) const
virtual

Sensible enthalpy [J/kg].

Definition at line 343 of file MulticomponentThermo.C.

References hs(), p, and Foam::T().

Here is the call graph for this function:

◆ hsi() [3/4]

Foam::tmp< Foam::volScalarField::Internal > hsi ( const label  speciei,
const volScalarField::Internal p,
const volScalarField::Internal T 
) const
virtual

Sensible enthalpy [J/kg].

Definition at line 362 of file MulticomponentThermo.C.

References Foam::dimEnergy, Foam::dimMass, hs(), p, and Foam::T().

Here is the call graph for this function:

◆ hsi() [4/4]

Foam::tmp< Foam::volScalarField > hsi ( const label  speciei,
const volScalarField p,
const volScalarField T 
) const
virtual

Sensible enthalpy [J/kg].

Definition at line 383 of file MulticomponentThermo.C.

References Foam::dimEnergy, Foam::dimMass, hs(), p, and Foam::T().

Here is the call graph for this function:

◆ hai() [1/4]

Foam::scalar hai ( const label  speciei,
const scalar  p,
const scalar  T 
) const
virtual

Absolute enthalpy [J/kg].

Definition at line 403 of file MulticomponentThermo.C.

References p, and Foam::T().

Here is the call graph for this function:

◆ hai() [2/4]

Foam::tmp< Foam::scalarField > hai ( const label  speciei,
const scalarField p,
const scalarField T 
) const
virtual

Absolute enthalpy [J/kg].

Definition at line 415 of file MulticomponentThermo.C.

References ha(), p, and Foam::T().

Here is the call graph for this function:

◆ hai() [3/4]

Foam::tmp< Foam::volScalarField::Internal > hai ( const label  speciei,
const volScalarField::Internal p,
const volScalarField::Internal T 
) const
virtual

Absolute enthalpy [J/kg].

Definition at line 434 of file MulticomponentThermo.C.

References Foam::dimEnergy, Foam::dimMass, ha(), p, and Foam::T().

Here is the call graph for this function:

◆ hai() [4/4]

Foam::tmp< Foam::volScalarField > hai ( const label  speciei,
const volScalarField p,
const volScalarField T 
) const
virtual

Absolute enthalpy [J/kg].

Definition at line 455 of file MulticomponentThermo.C.

References Foam::dimEnergy, Foam::dimMass, ha(), p, and Foam::T().

Here is the call graph for this function:

◆ hfiValue()

Foam::scalar hfiValue ( const label  speciei) const
virtual

Enthalpy of formation [J/kg].

Definition at line 491 of file MulticomponentThermo.C.

◆ hfi()

Foam::dimensionedScalar hfi ( const label  speciei) const
virtual

Enthalpy of formation [J/kg].

Definition at line 475 of file MulticomponentThermo.C.

References Foam::dimEnergy, and Foam::dimMass.

◆ kappai() [1/2]

Foam::scalar kappai ( const label  speciei,
const scalar  p,
const scalar  T 
) const
virtual

Thermal conductivity [W/m/K].

Definition at line 501 of file MulticomponentThermo.C.

References p, and Foam::T().

Here is the call graph for this function:

◆ kappai() [2/2]

Foam::tmp< Foam::volScalarField > kappai ( const label  speciei,
const volScalarField p,
const volScalarField T 
) const
virtual

Thermal conductivity [W/m/K].

Definition at line 514 of file MulticomponentThermo.C.

References Foam::dimThermalConductivity, Foam::constant::electromagnetic::kappa, p, and Foam::T().

Here is the call graph for this function:

◆ volScalarFieldPropertyi() [2/2]

Foam::tmp<Foam::volScalarField> volScalarFieldPropertyi ( const word psiName,
const dimensionSet psiDim,
Method  psiMethod,
const label  speciei,
const Args &...  args 
) const

Definition at line 34 of file MulticomponentThermo.C.

References args, forAll, Foam::New(), patchi, psi, tmp< T >::ref(), and thermo.

Here is the call graph for this function:

◆ volInternalScalarFieldPropertyi() [2/2]

Foam::tmp<Foam::volScalarField::Internal> volInternalScalarFieldPropertyi ( const word psiName,
const dimensionSet psiDim,
Method  psiMethod,
const label  speciei,
const Args &...  args 
) const

Definition at line 84 of file MulticomponentThermo.C.

References args, forAll, Foam::New(), psi, tmp< T >::ref(), and thermo.

Here is the call graph for this function:

◆ scalarFieldPropertyi() [2/2]

Foam::tmp<Foam::scalarField> scalarFieldPropertyi ( Method  psiMethod,
const label  speciei,
const Arg &  arg,
const Args &...  args 
) const

Definition at line 120 of file MulticomponentThermo.C.

References args, forAll, psi, tmp< T >::ref(), scalarField(), and thermo.

Here is the call graph for this function:

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