solidThermo Class Referenceabstract

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

Inheritance diagram for solidThermo:
Collaboration diagram for solidThermo:

Classes

class  composite
 
class  implementation
 

Public Member Functions

 TypeName ("solidThermo")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, solidThermo, fvMesh,(const fvMesh &mesh, const word &phaseName),(mesh, phaseName))
 
 declareRunTimeSelectionTable (autoPtr, solidThermo, dictionary,(const fvMesh &mesh, const dictionary &dict, const word &phaseName),(mesh, dict, phaseName))
 
virtual ~solidThermo ()
 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...
 
virtual tmp< volScalarFieldrho0 () const =0
 Old-time density [kg/m^3]. More...
 
virtual bool isotropic () const =0
 Return true if thermal conductivity is isotropic. More...
 
virtual tmp< volVectorFieldKappa () const =0
 Anisotropic thermal conductivity [W/m/K]. More...
 
virtual tmp< vectorFieldKappa (const label patchi) const =0
 Anisotropic thermal conductivity for patch [W/m/K]. More...
 
virtual tmp< symmTensorFieldKappaLocal (const label patchi) const =0
 Anisotropic thermal conductivity for patch. More...
 
virtual tmp< surfaceScalarFieldq () const =0
 Return the heat flux [W]. More...
 
virtual tmp< fvScalarMatrixdivq (volScalarField &he) const =0
 Return the source term for the energy equation. 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
 Return the dictionary. More...
 
virtual IOdictionaryproperties ()=0
 Access the dictionary. More...
 
virtual const wordphaseName () const =0
 Return the phase name. More...
 
word phasePropertyName (const word &name) const
 Return the 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
 Return the 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 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 tmp< volScalarFieldCp () const =0
 Heat capacity at constant pressure [J/kg/K]. More...
 
virtual tmp< volScalarFieldCv () const =0
 Heat capacity at constant volume [J/kg/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< volScalarFieldCpv () const =0
 Heat capacity at constant pressure/volume [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...
 
virtual const volScalarFieldalpha () const =0
 Thermal diffusivity for enthalpy of mixture [kg/m/s]. More...
 
virtual const scalarFieldalpha (const label patchi) const =0
 Thermal diffusivity for enthalpy of mixture for patch [kg/m/s]. More...
 
virtual tmp< volScalarFieldkappa () const =0
 Thermal diffusivity for temperature of mixture [W/m/K]. More...
 
virtual tmp< scalarFieldkappa (const label patchi) const =0
 Thermal diffusivity for temperature of mixture. More...
 
virtual tmp< volScalarFieldalphahe () const =0
 Thermal diffusivity for energy of mixture [kg/m/s]. More...
 
virtual tmp< scalarFieldalphahe (const label patchi) const =0
 Thermal diffusivity for energy of mixture for patch [kg/m/s]. More...
 
template<class Thermo >
Foam::autoPtr< Thermo > New (const fvMesh &mesh, const word &phaseName)
 
template<class Thermo >
Foam::autoPtr< Thermo > New (const fvMesh &mesh, const dictionary &dict, const word &phaseName)
 

Static Public Member Functions

static autoPtr< solidThermoNew (const fvMesh &, const word &phaseName=word::null)
 Standard selection based on fvMesh. More...
 
static autoPtr< solidThermoNew (const fvMesh &, const dictionary &, const word &phaseName=word::null)
 Selection using a specified dictionary. More...
 
- Static Public Member Functions inherited from basicThermo
static word phasePropertyName (const word &name, const word &phaseName)
 Return the 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...
 
template<class Thermo >
static autoPtr< Thermo > New (const fvMesh &, const dictionary &, 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

- Static Public Attributes inherited from basicThermo
static const word dictName
 Name of the thermophysical properties dictionary. More...
 
- Protected Member Functions inherited from basicThermo
wordList heBoundaryTypes ()
 Return the enthalpy/internal energy field boundary types. More...
 
wordList heBoundaryBaseTypes ()
 Return the 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 solid thermodynamic properties.

See also
Foam::basicThermo
Source files

Definition at line 53 of file solidThermo.H.

Constructor & Destructor Documentation

◆ ~solidThermo()

~solidThermo ( )
virtual

Destructor.

Definition at line 135 of file solidThermo.C.

Member Function Documentation

◆ TypeName()

TypeName ( "solidThermo"  )

Runtime type information.

◆ declareRunTimeSelectionTable() [1/2]

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

◆ declareRunTimeSelectionTable() [2/2]

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

◆ New() [1/2]

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

Standard selection based on fvMesh.

Definition at line 113 of file solidThermo.C.

References mesh.

Referenced by solidThermo::implementation::implementation().

Here is the caller graph for this function:

◆ New() [2/2]

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

Selection using a specified dictionary.

Definition at line 123 of file solidThermo.C.

References dict, and mesh.

◆ rho() [1/3]

virtual tmp<volScalarField> rho ( ) const
pure virtual

Density [kg/m^3].

Implements basicThermo.

Implemented in solidThermo::implementation, and solidDisplacementThermo.

◆ rho() [2/3]

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

Density for patch [kg/m^3].

Implements basicThermo.

Implemented in solidThermo::implementation, and solidDisplacementThermo.

◆ rho() [3/3]

virtual volScalarField& rho ( )
pure virtual

Return non-const access to the local density field [kg/m^3].

Implemented in solidThermo::implementation.

◆ rho0()

virtual tmp<volScalarField> rho0 ( ) const
pure virtual

Old-time density [kg/m^3].

Implements basicThermo.

Implemented in solidThermo::implementation.

◆ isotropic()

virtual bool isotropic ( ) const
pure virtual

Return true if thermal conductivity is isotropic.

Implemented in solidDisplacementThermo.

Referenced by temperatureCoupledBase::kappa().

Here is the caller graph for this function:

◆ Kappa() [1/2]

virtual tmp<volVectorField> Kappa ( ) const
pure virtual

Anisotropic thermal conductivity [W/m/K].

Implemented in solidDisplacementThermo.

◆ Kappa() [2/2]

virtual tmp<vectorField> Kappa ( const label  patchi) const
pure virtual

Anisotropic thermal conductivity for patch [W/m/K].

Implemented in solidDisplacementThermo.

◆ KappaLocal()

virtual tmp<symmTensorField> KappaLocal ( const label  patchi) const
pure virtual

Anisotropic thermal conductivity for patch.

in the local coordinate system [W/m/K]

Implemented in solidDisplacementThermo.

Referenced by temperatureCoupledBase::kappa().

Here is the caller graph for this function:

◆ q()

virtual tmp<surfaceScalarField> q ( ) const
pure virtual

Return the heat flux [W].

Implemented in solidDisplacementThermo.

Referenced by wallHeatFlux::execute().

Here is the caller graph for this function:

◆ divq()

virtual tmp<fvScalarMatrix> divq ( volScalarField he) const
pure virtual

Return the source term for the energy equation.

Implemented in solidDisplacementThermo.


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