fluidThermo Class Referenceabstract

Base-class for fluid thermodynamic properties. More...

Inheritance diagram for fluidThermo:
Collaboration diagram for fluidThermo:

Classes

class  implementation
 

Public Member Functions

 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 volScalarFieldp ()=0
 Pressure [Pa]. More...
 
virtual const volScalarFieldp () const =0
 Pressure [Pa]. More...
 
virtual void correctRho (const volScalarField &deltaRho)=0
 Add the given density correction to the density field. More...
 
virtual const volScalarFieldpsi () const =0
 Compressibility [s^2/m^2]. More...
 
virtual tmp< volScalarFieldrenameRho ()=0
 Rename the thermodynamic density field if stored and return. More...
 
virtual tmp< volScalarFieldgamma () const =0
 Gamma = Cp/Cv []. More...
 
virtual tmp< scalarFieldgamma (const scalarField &T, const label patchi) const =0
 Gamma = Cp/Cv for patch []. 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 tmp< volScalarFieldmu () const =0
 Dynamic viscosity of mixture [kg/m/s]. More...
 
virtual tmp< scalarFieldmu (const label patchi) const =0
 Dynamic viscosity of mixture for patch [kg/m/s]. More...
 
virtual tmp< volScalarFieldnu () const
 Kinematic viscosity of mixture [m^2/s]. More...
 
virtual 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< volScalarFieldrho () const =0
 Density [kg/m^3]. More...
 
virtual tmp< scalarFieldrho (const label patchi) const =0
 Density for patch [kg/m^3]. More...
 
virtual volScalarFieldhe ()=0
 Enthalpy/Internal energy [J/kg]. More...
 
virtual const volScalarFieldhe () const =0
 Enthalpy/Internal energy [J/kg]. 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< 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< volScalarFieldhc () const =0
 Enthalpy of formation [J/kg]. 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 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 const volScalarFieldkappa () const =0
 Thermal conductivity of mixture [W/m/K]. More...
 
virtual const volScalarFieldT () const =0
 Temperature [K]. More...
 
virtual volScalarFieldT ()=0
 Temperature [K]. 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...
 
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...
 

Static Public Member Functions

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...
 
static const basicThermolookupThermo (const fvPatchScalarField &pf)
 Lookup the thermo associated with the given patch 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...
 

Additional Inherited Members

- 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...
 
- 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

Base-class for fluid thermodynamic properties.

See also
Foam::basicThermo
Source files

Definition at line 53 of file fluidThermo.H.

Constructor & Destructor Documentation

◆ ~fluidThermo()

~fluidThermo ( )
virtual

Destructor.

Definition at line 91 of file fluidThermo.C.

Member Function Documentation

◆ TypeName()

TypeName ( "fluidThermo"  )

Runtime type information.

◆ declareRunTimeSelectionTable()

declareRunTimeSelectionTable ( autoPtr  ,
fluidThermo  ,
fvMesh  ,
(const fvMesh &mesh, const word &phaseName ,
(mesh, phaseName  
)

Declare run-time constructor selection table.

◆ New()

Foam::autoPtr< Foam::fluidThermo > New ( const fvMesh mesh,
const word phaseName = word::null 
)
static

Standard selection based on fvMesh.

Definition at line 79 of file fluidThermo.C.

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

Here is the call graph for this function:

◆ p() [1/2]

◆ p() [2/2]

virtual const volScalarField& p ( ) const
pure virtual

Pressure [Pa].

Implemented in fluidThermo::implementation.

◆ correctRho()

virtual void correctRho ( const volScalarField deltaRho)
pure virtual

Add the given density correction to the density field.

Used to update the density field following pressure solution

Implemented in rhoThermo, rhoThermo::implementation, and psiThermo.

◆ psi()

virtual const volScalarField& psi ( ) const
pure virtual

Compressibility [s^2/m^2].

Implemented in fluidThermo::implementation.

Referenced by phaseSystem::correctPhi(), isothermalFluid::moveMesh(), shockFluid::pressureCorrector(), and psiThermo::implementation::rho().

Here is the caller graph for this function:

◆ renameRho()

virtual tmp<volScalarField> renameRho ( )
pure virtual

Rename the thermodynamic density field if stored and return.

This is used by solvers which create a separate continuity rho [kg/m^3]

Implemented in rhoThermo, psiThermo, rhoThermo::implementation, and psiThermo::implementation.

◆ gamma() [1/2]

virtual tmp<volScalarField> gamma ( ) const
pure virtual

Gamma = Cp/Cv [].

◆ gamma() [2/2]

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

Gamma = Cp/Cv for patch [].

◆ W() [1/2]

virtual tmp<volScalarField> W ( ) const
pure virtual

Molecular weight [kg/kmol].

Referenced by adsorptionMassFractionFvPatchScalarField::calcPhiYp(), semiPermeableBaffleMassFractionFvPatchScalarField::calcPhiYp(), and saturated::wRatioByP().

Here is the caller graph for this function:

◆ W() [2/2]

virtual tmp<scalarField> W ( const label  patchi) const
pure virtual

Molecular weight for patch [kg/kmol].

◆ mu() [1/2]

virtual tmp<volScalarField> mu ( ) const
pure virtual

Dynamic viscosity of mixture [kg/m/s].

Implemented in fluidThermo::implementation.

Referenced by Liao::addToBinaryBreakupRate(), CoulaloglouTavlarides::addToCoalescenceRate(), LiaoCoalescence::addToCoalescenceRate(), fluidThermo::nu(), and Laakkonen::setBreakupRate().

Here is the caller graph for this function:

◆ mu() [2/2]

virtual tmp<scalarField> mu ( const label  patchi) const
pure virtual

Dynamic viscosity of mixture for patch [kg/m/s].

Implemented in fluidThermo::implementation.

◆ nu() [1/2]

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

Kinematic viscosity of mixture [m^2/s].

Implements viscosity.

Definition at line 101 of file fluidThermo.C.

References fluidThermo::mu(), and basicThermo::rho().

Here is the call graph for this function:

◆ nu() [2/2]

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

Kinematic viscosity of mixture for patch [m^2/s].

Implements viscosity.

Definition at line 108 of file fluidThermo.C.

References fluidThermo::mu(), patchi, and basicThermo::rho().

Here is the call graph for this function:

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