psiuMulticomponentThermo::implementation Class Reference
Inheritance diagram for psiuMulticomponentThermo::implementation:
Collaboration diagram for psiuMulticomponentThermo::implementation:

Public Member Functions

 implementation (const dictionary &, const wordList &, const fvMesh &, const word &)
 Construct from dictionary, specie names, mesh and phase name. More...
 
virtual ~implementation ()
 Destructor. More...
 
virtual const speciesTablespecies () const
 The table of species. More...
 
virtual PtrList< volScalarField > & Y ()
 Access the mass-fraction fields. More...
 
virtual const PtrList< volScalarField > & Y () const
 Access the mass-fraction fields. More...
 
volScalarFieldListSlicer Yslicer () const
 Get the slicer. More...
 
scalarFieldListSlice cellComposition (const volScalarFieldListSlicer &Yslicer, const label celli) const
 Get the composition of an internal cell. More...
 
scalarFieldListSlice patchFaceComposition (const volScalarFieldListSlicer &Yslicer, const label patchi, const label facei) const
 Get the composition of a boundary face. More...
 
PtrList< scalarFieldYslicer (const fvSource &source) const
 Get the slicer for the given source. More...
 
scalarFieldListSlice sourceCellComposition (const PtrList< scalarField > &Yslicer, const label i) const
 Get the composition of a source cell. More...
 
- Public Member Functions inherited from psiuMulticomponentThermo
 TypeName ("psiuMulticomponentThermo")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, psiuMulticomponentThermo, fvMesh,(const fvMesh &mesh, const word &phaseName),(mesh, phaseName))
 
virtual ~psiuMulticomponentThermo ()
 Destructor. More...
 
bool containsSpecie (const word &specieName) const
 Does the mixture include this specie? More...
 
volScalarFieldY (const word &specieName)
 Return the mass-fraction field for a specie given by name. More...
 
const volScalarFieldY (const word &specieName) const
 Return the const mass-fraction field for a specie given by name. More...
 
virtual const volScalarFieldTu () const =0
 Unburnt gas temperature [K]. More...
 
virtual const volScalarFieldheu () const =0
 Unburnt gas enthalpy [J/kg]. More...
 
virtual volScalarFieldheu ()=0
 Unburnt gas enthalpy [J/kg]. More...
 
virtual tmp< scalarFieldheu (const scalarField &T, const labelList &cells) const =0
 Unburnt gas enthalpy for cell-set [J/kg]. More...
 
virtual tmp< scalarFieldheu (const scalarField &T, const label patchi) const =0
 Unburnt gas enthalpy for patch [J/kg]. More...
 
virtual tmp< volScalarFieldTb () const =0
 Burnt gas temperature [K]. More...
 
virtual tmp< volScalarFieldpsiu () const =0
 Unburnt gas compressibility [s^2/m^2]. More...
 
virtual tmp< volScalarFieldpsib () const =0
 Burnt gas compressibility [s^2/m^2]. More...
 
tmp< volScalarFieldrhou () const
 Unburnt gas density [kg/m^3]. More...
 
tmp< volScalarFieldrhob () const
 Burnt gas density [kg/m^3]. More...
 
virtual tmp< volScalarFieldmuu () const =0
 Dynamic viscosity of unburnt gas [kg/m/s]. More...
 
virtual tmp< volScalarFieldmub () const =0
 Dynamic viscosity of burnt gas [kg/m/s]. More...
 
- Public Member Functions inherited from psiThermo
 TypeName ("psiThermo")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, psiThermo, fvMesh,(const fvMesh &mesh, const word &phaseName),(mesh, phaseName))
 Declare run-time constructor selection table. More...
 
virtual ~psiThermo ()
 Destructor. More...
 
virtual tmp< volScalarFieldrho () const =0
 Density [kg/m^3] - uses current value of pressure. More...
 
virtual tmp< scalarFieldrho (const label patchi) const =0
 Density for patch [kg/m^3]. More...
 
virtual tmp< volScalarFieldrenameRho ()
 Return the thermodynamic density field [kg/m^3]. More...
 
virtual void correctRho (const volScalarField &deltaRho)
 Add the given density correction to the density field. More...
 
- Public Member Functions inherited from fluidThermo
 TypeName ("fluidThermo")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, fluidThermo, fvMesh,(const fvMesh &mesh, const word &phaseName),(mesh, phaseName))
 Declare run-time constructor selection table. More...
 
virtual ~fluidThermo ()
 Destructor. More...
 
virtual const volScalarFieldp () const =0
 Pressure [Pa]. More...
 
virtual volScalarFieldp ()=0
 Pressure [Pa]. More...
 
virtual const volScalarFieldpsi () const =0
 Compressibility [s^2/m^2]. More...
 
virtual const volScalarFieldmu () const =0
 Dynamic viscosity of mixture [kg/m/s]. More...
 
tmp< volScalarFieldnu () const
 Kinematic viscosity of mixture [m^2/s]. More...
 
tmp< scalarFieldnu (const label patchi) const
 Kinematic viscosity of mixture for patch [m^2/s]. More...
 
- Public Member Functions inherited from basicThermo
 TypeName ("basicThermo")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, basicThermo, fvMesh,(const fvMesh &mesh, const word &phaseName),(mesh, phaseName))
 Declare run-time constructor selection table. More...
 
virtual ~basicThermo ()
 Destructor. More...
 
virtual const IOdictionaryproperties () const =0
 Properties dictionary. More...
 
virtual IOdictionaryproperties ()=0
 Non-const access the properties dictionary. More...
 
virtual const fvMeshmesh () const =0
 Return const access to the mesh. More...
 
virtual const wordphaseName () const =0
 Phase name. More...
 
word phasePropertyName (const word &name) const
 Name of a property for a given phase. More...
 
void validate (const string &app, const word &) const
 Check that the thermodynamics package is consistent. More...
 
void validate (const string &app, const word &, const word &) const
 Check that the thermodynamics package is consistent. More...
 
virtual void correct ()=0
 Update properties. More...
 
virtual word thermoName () const =0
 Name of the thermo physics. More...
 
virtual bool incompressible () const =0
 Return true if the equation of state is incompressible. More...
 
virtual bool isochoric () const =0
 Return true if the equation of state is isochoric. More...
 
virtual Switch dpdt () const =0
 Should the dpdt term be included in the enthalpy equation. More...
 
virtual tmp< volScalarFieldW () const =0
 Molecular weight [kg/kmol]. More...
 
virtual tmp< scalarFieldW (const label patchi) const =0
 Molecular weight for patch [kg/kmol]. More...
 
virtual const volScalarFieldT () const =0
 Temperature [K]. More...
 
virtual volScalarFieldT ()=0
 Temperature [K]. More...
 
virtual const volScalarFieldhe () const =0
 Enthalpy/Internal energy [J/kg]. More...
 
virtual volScalarFieldhe ()=0
 Enthalpy/Internal energy [J/kg]. More...
 
virtual const volScalarFieldCp () const =0
 Heat capacity at constant pressure [J/kg/K]. More...
 
virtual const volScalarFieldCv () const =0
 Heat capacity at constant volume [J/kg/K]. More...
 
virtual const volScalarFieldCpv () const =0
 Heat capacity at constant pressure/volume [J/kg/K]. More...
 
virtual tmp< volScalarFieldhe (const volScalarField &p, const volScalarField &T) const =0
 Enthalpy/Internal energy. More...
 
virtual tmp< scalarFieldhe (const scalarField &T, const labelList &cells) const =0
 Enthalpy/Internal energy for cell-set [J/kg]. More...
 
virtual tmp< scalarFieldhe (const scalarField &T, const label patchi) const =0
 Enthalpy/Internal energy for patch [J/kg]. More...
 
virtual tmp< scalarFieldhe (const scalarField &T, const fvSource &source) const =0
 Enthalpy/Internal energy for source [J/kg]. More...
 
virtual tmp< volScalarFieldhs () const =0
 Sensible enthalpy [J/kg]. More...
 
virtual tmp< volScalarFieldhs (const volScalarField &p, const volScalarField &T) const =0
 Sensible enthalpy. More...
 
virtual tmp< scalarFieldhs (const scalarField &T, const labelList &cells) const =0
 Sensible enthalpy for cell-set [J/kg]. More...
 
virtual tmp< scalarFieldhs (const scalarField &T, const label patchi) const =0
 Sensible enthalpy for patch [J/kg]. More...
 
virtual tmp< volScalarFieldha () const =0
 Absolute enthalpy [J/kg]. More...
 
virtual tmp< volScalarFieldha (const volScalarField &p, const volScalarField &T) const =0
 Absolute enthalpy. More...
 
virtual tmp< scalarFieldha (const scalarField &T, const labelList &cells) const =0
 Absolute enthalpy for cell-set [J/kg]. More...
 
virtual tmp< scalarFieldha (const scalarField &T, const label patchi) const =0
 Absolute enthalpy for patch [J/kg]. More...
 
virtual tmp< scalarFieldCp (const scalarField &T, const label patchi) const =0
 Heat capacity at constant pressure for patch [J/kg/K]. More...
 
virtual tmp< scalarFieldCv (const scalarField &T, const label patchi) const =0
 Heat capacity at constant volume for patch [J/kg/K]. More...
 
virtual tmp< scalarFieldCpv (const scalarField &T, const label patchi) const =0
 Heat capacity at constant pressure/volume for patch [J/kg/K]. More...
 
tmp< volScalarFieldgamma () const
 Gamma = Cp/Cv []. More...
 
tmp< scalarFieldgamma (const scalarField &T, const label patchi) const
 Gamma = Cp/Cv for patch []. More...
 
virtual tmp< volScalarFieldThe (const volScalarField &h, const volScalarField &p, const volScalarField &T0) const =0
 Temperature from enthalpy/internal energy. More...
 
virtual tmp< scalarFieldThe (const scalarField &h, const scalarField &T0, const labelList &cells) const =0
 Temperature from enthalpy/internal energy for cell-set. More...
 
virtual tmp< scalarFieldThe (const scalarField &h, const scalarField &T0, const label patchi) const =0
 Temperature from enthalpy/internal energy for patch. More...
 
virtual const volScalarFieldkappa () const =0
 Thermal conductivity of mixture [W/m/K]. More...
 
template<class FieldType >
const Foam::basicThermolookupThermo (const FieldType &f)
 
template<class Thermo >
Foam::autoPtr< Thermo > New (const fvMesh &mesh, const word &phaseName)
 
- Public Member Functions inherited from viscosity
 TypeName ("viscosity")
 Runtime type information. More...
 
 viscosity ()
 Construct. More...
 
 viscosity (const viscosity &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~viscosity ()
 Destructor. More...
 
void operator= (const viscosity &)=delete
 Disallow default bitwise assignment. More...
 

Protected Attributes

speciesTable species_
 Table of specie names. More...
 
PtrList< volScalarFieldY_
 Species mass fractions. More...
 

Additional Inherited Members

- Public Types inherited from psiuMulticomponentThermo
template<class MixtureType >
using DerivedThermoType = PsiuMulticomponentThermo< BasicThermo< MixtureType, composite > >
 The derived type. More...
 
- Public Types inherited from psiThermo
template<class MixtureType >
using DerivedThermoType = PsiThermo< BasicThermo< MixtureType, composite > >
 The derived type. More...
 
- Static Public Member Functions inherited from psiuMulticomponentThermo
static autoPtr< psiuMulticomponentThermoNew (const fvMesh &, const word &phaseName=word::null)
 Standard selection based on fvMesh. More...
 
- Static Public Member Functions inherited from psiThermo
static autoPtr< psiThermoNew (const fvMesh &mesh, const word &phaseName=word::null)
 Standard selection based on fvMesh. More...
 
- Static Public Member Functions inherited from fluidThermo
static autoPtr< fluidThermoNew (const fvMesh &, const word &phaseName=word::null)
 Standard selection based on fvMesh. More...
 
- Static Public Member Functions inherited from basicThermo
static word phasePropertyName (const word &name, const word &phaseName)
 Name of a property for a given phase. More...
 
template<class FieldType >
static const basicThermolookupThermo (const FieldType &f)
 Lookup the thermo associated with the given field. More...
 
static wordList splitThermoName (const word &thermoName, const int nCmpt)
 Split name of thermo package into a list of the components names. More...
 
static List< Pair< word > > thermoNameComponents (const word &thermoName)
 Split name of thermo package into a list of named components names. More...
 
template<class Thermo >
static autoPtr< Thermo > New (const fvMesh &, const word &phaseName=word::null)
 Generic New for each of the related thermodynamics packages. More...
 
static autoPtr< basicThermoNew (const fvMesh &, const word &phaseName=word::null)
 Specialisation of the Generic New for basicThermo. More...
 
- Static Public Attributes inherited from psiuMulticomponentThermo
static const word derivedThermoName
 The derived name. More...
 
- Static Public Attributes inherited from psiThermo
static const word derivedThermoName
 The derived name. More...
 
- Protected Member Functions inherited from psiuMulticomponentThermo
wordList heuBoundaryTypes ()
 Return the unburnt enthalpy/internal energy field boundary types. More...
 
void heuBoundaryCorrection (volScalarField &heu)
 ... More...
 
- Protected Member Functions inherited from basicThermo
wordList heBoundaryTypes ()
 Enthalpy/internal energy field boundary types. More...
 
wordList heBoundaryBaseTypes ()
 Enthalpy/internal energy field boundary base types. More...
 
HashTable< wordheSourcesTypes ()
 Enthalpy/internal energy field sources types. More...
 
- Static Protected Member Functions inherited from basicThermo
static volScalarFieldlookupOrConstruct (const fvMesh &mesh, const char *name)
 Lookup and the named field, or construct it as MUST-READ if it is. More...
 
template<class Thermo , class Table >
static Table::iterator lookupCstrIter (const dictionary &thermoTypeDict, Table *tablePtr, const int nCmpt, const char *cmptNames[], const word &thermoTypeName)
 Get the constructor iterator for the given thermo dictionary and. More...
 
template<class Thermo , class Table >
static Table::iterator lookupCstrIter (const dictionary &thermoDict, Table *tablePtr)
 Get the constructor iterator for the given thermo dictionary and. More...
 

Detailed Description

Definition at line 208 of file psiuMulticomponentThermo.H.

Constructor & Destructor Documentation

◆ implementation()

implementation ( const dictionary dict,
const wordList specieNames,
const fvMesh mesh,
const word phaseName 
)

◆ ~implementation()

~implementation ( )
virtual

Destructor.

Definition at line 158 of file psiuMulticomponentThermo.C.

Member Function Documentation

◆ species()

const Foam::speciesTable & species ( ) const
virtual

The table of species.

Implements psiuMulticomponentThermo.

Definition at line 177 of file psiuMulticomponentThermo.C.

◆ Y() [1/2]

Foam::PtrList< Foam::volScalarField > & Y ( )
virtual

Access the mass-fraction fields.

Implements psiuMulticomponentThermo.

Definition at line 184 of file psiuMulticomponentThermo.C.

◆ Y() [2/2]

const Foam::PtrList< Foam::volScalarField > & Y ( ) const
virtual

Access the mass-fraction fields.

Implements psiuMulticomponentThermo.

Definition at line 191 of file psiuMulticomponentThermo.C.

◆ Yslicer() [1/2]

Foam::volScalarFieldListSlicer Yslicer ( ) const
inline

Get the slicer.

Definition at line 59 of file psiuMulticomponentThermoI.H.

◆ cellComposition()

Foam::scalarFieldListSlice cellComposition ( const volScalarFieldListSlicer &  Yslicer,
const label  celli 
) const
inline

Get the composition of an internal cell.

Definition at line 66 of file psiuMulticomponentThermoI.H.

◆ patchFaceComposition()

Foam::scalarFieldListSlice patchFaceComposition ( const volScalarFieldListSlicer &  Yslicer,
const label  patchi,
const label  facei 
) const
inline

Get the composition of a boundary face.

Definition at line 77 of file psiuMulticomponentThermoI.H.

References patchi.

◆ Yslicer() [2/2]

Foam::PtrList< Foam::scalarField > Yslicer ( const fvSource source) const
inline

Get the slicer for the given source.

Definition at line 89 of file psiuMulticomponentThermoI.H.

References forAll, fvModel::name(), and PtrList< T >::set().

Here is the call graph for this function:

◆ sourceCellComposition()

Foam::scalarFieldListSlice sourceCellComposition ( const PtrList< scalarField > &  Yslicer,
const label  i 
) const
inline

Get the composition of a source cell.

Definition at line 110 of file psiuMulticomponentThermoI.H.

Member Data Documentation

◆ species_

speciesTable species_
protected

Table of specie names.

Definition at line 217 of file psiuMulticomponentThermo.H.

Referenced by psiuMulticomponentThermo::implementation::implementation().

◆ Y_

PtrList<volScalarField> Y_
protected

Species mass fractions.

Definition at line 220 of file psiuMulticomponentThermo.H.

Referenced by psiuMulticomponentThermo::implementation::implementation().


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