psiThermo Class Referenceabstract

Base-class for fluid thermodynamic properties based on compressibility. More...

Inheritance diagram for psiThermo:
Collaboration diagram for psiThermo:

Classes

class  composite
 
class  implementation
 

Public Types

template<class MixtureType >
using DerivedThermoType = PsiThermo< BasicThermo< MixtureType, composite > >
 The derived type. More...
 

Public Member Functions

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

Static Public Member Functions

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

static const word derivedThermoName
 The derived name. 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...
 
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

Base-class for fluid thermodynamic properties based on compressibility.

See also
Foam::basicThermo
Source files

Definition at line 53 of file psiThermo.H.

Member Typedef Documentation

◆ DerivedThermoType

The derived type.

Definition at line 72 of file psiThermo.H.

Constructor & Destructor Documentation

◆ ~psiThermo()

~psiThermo ( )
virtual

Destructor.

Definition at line 64 of file psiThermo.C.

Member Function Documentation

◆ TypeName()

TypeName ( "psiThermo"  )

Runtime type information.

◆ declareRunTimeSelectionTable()

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

Declare run-time constructor selection table.

◆ New()

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

Standard selection based on fvMesh.

Definition at line 52 of file psiThermo.C.

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

Here is the call graph for this function:

◆ rho() [1/2]

virtual tmp<volScalarField> rho ( ) const
pure virtual

Density [kg/m^3] - uses current value of pressure.

Implements basicThermo.

Implemented in psiThermo::implementation.

Referenced by psiThermo::renameRho().

Here is the caller graph for this function:

◆ rho() [2/2]

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

Density for patch [kg/m^3].

Implements basicThermo.

Implemented in psiThermo::implementation.

◆ renameRho()

Foam::tmp< Foam::volScalarField > renameRho ( )
virtual

Return the thermodynamic density field [kg/m^3].

This is used by solvers which create a separate continuity rho

Implements fluidThermo.

Definition at line 74 of file psiThermo.C.

References psiThermo::rho().

Here is the call graph for this function:

◆ correctRho()

void correctRho ( const volScalarField deltaRho)
virtual

Add the given density correction to the density field.

Used to update the density field following pressure solution. For psiThermo does nothing.

Implements fluidThermo.

Definition at line 80 of file psiThermo.C.

Member Data Documentation

◆ derivedThermoName

const Foam::word derivedThermoName
static

The derived name.

Definition at line 76 of file psiThermo.H.


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