solidThermo Class Referenceabstract

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

Inheritance diagram for solidThermo:
Collaboration diagram for solidThermo:

Classes

class  composite
 
class  implementation
 

Public Types

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

Public Member Functions

 TypeName ("solidThermo")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, solidThermo, fvMesh,(const fvMesh &mesh, const word &phaseName),(mesh, phaseName))
 
virtual ~solidThermo ()
 Destructor. More...
 
virtual Switch dpdt () const =0
 Should the dpdt term be included in the enthalpy equation. More...
 
virtual bool isotropic () const =0
 Return true if thermal conductivity is isotropic. More...
 
virtual const volVectorFieldKappa () const =0
 Anisotropic thermal conductivity [W/m/K]. 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 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 rhoThermo
virtual ~rhoThermo ()
 Destructor. 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 volScalarFieldrho ()=0
 Return non-const access to the local density field [kg/m^3]. More...
 

Static Public Member Functions

static autoPtr< solidThermoNew (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 solid thermodynamic properties.

See also
Foam::basicThermo
Source files

Definition at line 55 of file solidThermo.H.

Member Typedef Documentation

◆ DerivedThermoType

The derived type.

Definition at line 75 of file solidThermo.H.

Constructor & Destructor Documentation

◆ ~solidThermo()

~solidThermo ( )
virtual

Destructor.

Definition at line 78 of file solidThermo.C.

Member Function Documentation

◆ TypeName()

TypeName ( "solidThermo"  )

Runtime type information.

◆ declareRunTimeSelectionTable()

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

◆ New()

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

Standard selection based on fvMesh.

Definition at line 66 of file solidThermo.C.

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

Here is the call graph for this function:

◆ dpdt()

virtual Switch dpdt ( ) const
pure virtual

Should the dpdt term be included in the enthalpy equation.

Implements basicThermo.

Implemented in solidThermo::composite, and solidThermo::implementation.

◆ isotropic()

virtual bool isotropic ( ) const
pure virtual

Return true if thermal conductivity is isotropic.

Implemented in constSolidThermo, and constAnisoSolidThermo.

◆ Kappa()

virtual const volVectorField& Kappa ( ) const
pure virtual

Anisotropic thermal conductivity [W/m/K].

Implemented in constSolidThermo, and constAnisoSolidThermo.

Member Data Documentation

◆ derivedThermoName

const Foam::word derivedThermoName
static

The derived name.

Definition at line 79 of file solidThermo.H.


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