multicomponentLagrangianThermo Class Referenceabstract

Base-class for multicomponent Lagrangian thermodynamic models. More...

Inheritance diagram for multicomponentLagrangianThermo:
Collaboration diagram for multicomponentLagrangianThermo:

Classes

class  implementation
 

Public Member Functions

 TypeName ("multicomponentLagrangianThermo")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, multicomponentLagrangianThermo, LagrangianMesh,(const LagrangianMesh &mesh, const word &phaseName),(mesh, phaseName))
 Declare run-time constructor selection table. More...
 
virtual ~multicomponentLagrangianThermo ()
 Destructor. More...
 
virtual const speciesTable & species () const =0
 Return the table of species. More...
 
bool containsSpecie (const word &specieName) const
 Does the mixture include this specie? More...
 
virtual label defaultSpecie () const =0
 The index of the default specie. More...
 
virtual PtrList< LagrangianScalarDynamicField > & Y ()=0
 Access the mass-fraction fields. More...
 
virtual const PtrList< LagrangianScalarDynamicField > & Y () const =0
 Access the mass-fraction fields. More...
 
LagrangianScalarDynamicField & Y (const label)
 Access the mass-fraction field for a specie given by index. More...
 
const LagrangianScalarDynamicField & Y (const label) const
 Access the mass-fraction field for a specie given by index. More...
 
LagrangianScalarDynamicField & Y (const word &)
 Access the mass-fraction field for a specie given by name. More...
 
const LagrangianScalarDynamicField & Y (const word &) const
 Access the mass-fraction field for a specie given by name. More...
 
label specieIndex (const LagrangianScalarDynamicField &) const
 Access the specie index of the given mass-fraction field. More...
 
virtual void normaliseY (const LagrangianSubMesh &)=0
 Normalise the mass fractions within the given sub-mesh by. More...
 
virtual dimensionedScalar Wi (const label speciei) const =0
 Molecular weight [kg/kmol]. More...
 
virtual tmp< LagrangianSubScalarField > rhoi (const label speciei, const LagrangianSubScalarField &p, const LagrangianSubScalarField &T) const =0
 Density [kg/m^3]. More...
 
virtual tmp< LagrangianSubScalarField > hsi (const label speciei, const LagrangianSubScalarField &p, const LagrangianSubScalarField &T) const =0
 Sensible enthalpy [J/kg]. More...
 
virtual dimensionedScalar hfi (const label speciei) const =0
 Enthalpy of formation [J/kg]. More...
 
virtual tmp< LagrangianSubScalarField > Cvi (const label speciei, const LagrangianSubScalarField &p, const LagrangianSubScalarField &T) const =0
 Heat capacity at constant volume [J/kg/K]. More...
 
virtual tmp< LagrangianSubScalarField > Cpi (const label speciei, const LagrangianSubScalarField &p, const LagrangianSubScalarField &T) const =0
 Heat capacity at constant pressure [J/kg/K]. More...
 
- Public Member Functions inherited from basicLagrangianThermo
 TypeName ("basicLagrangianThermo")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, basicLagrangianThermo, LagrangianMesh,(const LagrangianMesh &mesh, const word &phaseName),(mesh, phaseName))
 Declare run-time constructor selection table. More...
 
virtual ~basicLagrangianThermo ()
 Destructor. More...
 
virtual const IOdictionary & properties () const =0
 Access the properties dictionary. More...
 
virtual IOdictionary & properties ()=0
 Modify the properties dictionary. More...
 
virtual const LagrangianMesh & mesh () const =0
 Access the mesh. More...
 
virtual const word & phaseName () const =0
 Access the phase name. More...
 
virtual void initialise ()=0
 Initialise state. More...
 
virtual void correctPressure (const LagrangianSubMesh &)=0
 Update the pressure. More...
 
virtual void correct (const LagrangianSubMesh &)=0
 Update state. More...
 
virtual word thermoName () const =0
 Return the full name of the thermodynamic model. More...
 
virtual tmp< LagrangianSubScalarField > W (const LagrangianSubMesh &) const =0
 Molecular weight for a sub-mesh [kg/kmol]. More...
 
virtual const LagrangianScalarDynamicField & T () const =0
 Temperature [K]. More...
 
virtual LagrangianScalarDynamicField & T ()=0
 Modify the Temperature [K]. More...
 
virtual const LagrangianScalarDynamicField & rho () const =0
 Density [kg/m^3]. More...
 
virtual LagrangianScalarDynamicField & rho ()=0
 Modify the Density [kg/m^3]. More...
 
virtual tmp< LagrangianSubScalarField > rho (const LagrangianSubScalarField &T, const LagrangianInjection &) const =0
 Density for an injection [kg/m^3]. More...
 
virtual const LagrangianScalarDynamicField & e () const =0
 Internal energy [J/kg]. More...
 
virtual LagrangianScalarDynamicField & e ()=0
 Modify the internal energy [J/kg]. More...
 
virtual tmp< LagrangianSubScalarField > e (const LagrangianSubScalarField &T, const LagrangianInjection &) const =0
 Internal energy for an injection [J/kg]. More...
 
virtual const LagrangianScalarDynamicField & Cv () const =0
 Heat capacity at constant volume [J/kg/K]. More...
 
virtual tmp< LagrangianSubScalarField > Cv (const LagrangianSubScalarField &T, const LagrangianInjection &) const =0
 Heat capacity at constant volume for an injection [J/kg/K]. More...
 
virtual tmp< LagrangianSubScalarField > Cp (const LagrangianSubMesh &subMesh) const =0
 Heat capacity at constant pressure for a sub-mesh [J/kg/K]. More...
 
virtual tmp< LagrangianSubScalarField > alphav (const LagrangianSubMesh &subMesh) const =0
 Coefficient of thermal expansion for a sub-mesh [1/K]. More...
 
virtual const LagrangianScalarDynamicField & kappa () const =0
 Thermal conductivity [W/m/K]. More...
 
virtual tmp< LagrangianSubScalarField > kappa (const LagrangianSubScalarField &T, const LagrangianInjection &) const =0
 Thermal conductivity for an injection [W/m/K]. More...
 
template<class LagrangianFieldSourceType >
Foam::HashTable< Foam::word > sourcesTypes (const LagrangianScalarDynamicField &T)
 
template<class Thermo >
Foam::autoPtr< Thermo > New (const LagrangianMesh &mesh, const word &phaseName)
 

Static Public Member Functions

static autoPtr< multicomponentLagrangianThermo > New (const LagrangianMesh &mesh, const word &phaseName=word::null)
 Select a multicomponent thermo. More...
 
- Static Public Member Functions inherited from basicLagrangianThermo
template<class Thermo >
static autoPtr< Thermo > New (const LagrangianMesh &mesh, const word &phaseName=word::null)
 Select thermo of a given derived type. More...
 
static autoPtr< basicLagrangianThermo > New (const LagrangianMesh &mesh, const word &phaseName=word::null)
 Select a basic thermo. More...
 

Additional Inherited Members

- Protected Member Functions inherited from basicLagrangianThermo
wordList eBoundaryTypes () const
 Internal energy field boundary types. More...
 
wordList eBoundaryBaseTypes () const
 Internal energy field boundary base types. More...
 
- Static Protected Member Functions inherited from basicLagrangianThermo
template<class LagrangianFieldSourceType >
static HashTable< word > sourcesTypes (const LagrangianScalarDynamicField &T)
 Field sources types. More...
 

Detailed Description

Base-class for multicomponent Lagrangian thermodynamic models.

Source files

Definition at line 52 of file multicomponentLagrangianThermo.H.

Constructor & Destructor Documentation

◆ ~multicomponentLagrangianThermo()

Destructor.

Definition at line 208 of file multicomponentLagrangianThermo.C.

Member Function Documentation

◆ TypeName()

TypeName ( "multicomponentLagrangianThermo"  )

Runtime type information.

◆ declareRunTimeSelectionTable()

declareRunTimeSelectionTable ( autoPtr  ,
multicomponentLagrangianThermo  ,
LagrangianMesh  ,
(const LagrangianMesh &mesh, const word &phaseName)  ,
(mesh, phaseName)   
)

Declare run-time constructor selection table.

◆ New()

Foam::autoPtr< Foam::multicomponentLagrangianThermo > New ( const LagrangianMesh &  mesh,
const word &  phaseName = word::null 
)
static

Select a multicomponent thermo.

Definition at line 191 of file multicomponentLagrangianThermo.C.

References basicLagrangianThermo::mesh(), and basicLagrangianThermo::phaseName().

Here is the call graph for this function:

◆ species()

virtual const speciesTable& species ( ) const
pure virtual

◆ containsSpecie()

bool containsSpecie ( const word &  specieName) const
inline

Does the mixture include this specie?

Definition at line 30 of file multicomponentLagrangianThermoI.H.

References hashedWordList::found(), and multicomponentLagrangianThermo::species().

Here is the call graph for this function:

◆ defaultSpecie()

virtual label defaultSpecie ( ) const
pure virtual

The index of the default specie.

Implemented in multicomponentLagrangianThermo::implementation.

◆ Y() [1/6]

virtual PtrList<LagrangianScalarDynamicField>& Y ( )
pure virtual

Access the mass-fraction fields.

Implemented in multicomponentLagrangianThermo::implementation.

Referenced by multicomponentLagrangianThermo::implementation::normaliseY().

Here is the caller graph for this function:

◆ Y() [2/6]

virtual const PtrList<LagrangianScalarDynamicField>& Y ( ) const
pure virtual

Access the mass-fraction fields.

Implemented in multicomponentLagrangianThermo::implementation.

◆ Y() [3/6]

Foam::LagrangianScalarDynamicField & Y ( const label  speciei)
inline

Access the mass-fraction field for a specie given by index.

Definition at line 40 of file multicomponentLagrangianThermoI.H.

References Y.

◆ Y() [4/6]

const Foam::LagrangianScalarDynamicField & Y ( const label  speciei) const
inline

Access the mass-fraction field for a specie given by index.

Definition at line 47 of file multicomponentLagrangianThermoI.H.

References Y.

◆ Y() [5/6]

Foam::LagrangianScalarDynamicField & Y ( const word &  specieName)
inline

Access the mass-fraction field for a specie given by name.

Definition at line 54 of file multicomponentLagrangianThermoI.H.

References Y.

◆ Y() [6/6]

const Foam::LagrangianScalarDynamicField & Y ( const word &  specieName) const
inline

Access the mass-fraction field for a specie given by name.

Definition at line 61 of file multicomponentLagrangianThermoI.H.

References Y.

◆ specieIndex()

Foam::label specieIndex ( const LagrangianScalarDynamicField &  Yi) const
inline

Access the specie index of the given mass-fraction field.

Definition at line 67 of file multicomponentLagrangianThermoI.H.

References IOobject::member().

Here is the call graph for this function:

◆ normaliseY()

virtual void normaliseY ( const LagrangianSubMesh &  )
pure virtual

Normalise the mass fractions within the given sub-mesh by.

clipping positive and deriving the default specie mass fraction from the other species

Implemented in multicomponentLagrangianThermo::implementation.

◆ Wi()

virtual dimensionedScalar Wi ( const label  speciei) const
pure virtual

Molecular weight [kg/kmol].

◆ rhoi()

virtual tmp<LagrangianSubScalarField> rhoi ( const label  speciei,
const LagrangianSubScalarField &  p,
const LagrangianSubScalarField &  T 
) const
pure virtual

Density [kg/m^3].

◆ hsi()

virtual tmp<LagrangianSubScalarField> hsi ( const label  speciei,
const LagrangianSubScalarField &  p,
const LagrangianSubScalarField &  T 
) const
pure virtual

Sensible enthalpy [J/kg].

◆ hfi()

virtual dimensionedScalar hfi ( const label  speciei) const
pure virtual

Enthalpy of formation [J/kg].

◆ Cvi()

virtual tmp<LagrangianSubScalarField> Cvi ( const label  speciei,
const LagrangianSubScalarField &  p,
const LagrangianSubScalarField &  T 
) const
pure virtual

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

◆ Cpi()

virtual tmp<LagrangianSubScalarField> Cpi ( const label  speciei,
const LagrangianSubScalarField &  p,
const LagrangianSubScalarField &  T 
) const
pure virtual

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


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