Public Types | Public Member Functions | Private Member Functions | Private Attributes
multiComponentMixture< ThermoType > Class Template Reference

Foam::multiComponentMixture. More...

Inheritance diagram for multiComponentMixture< ThermoType >:
Inheritance graph
[legend]
Collaboration diagram for multiComponentMixture< ThermoType >:
Collaboration graph
[legend]

Public Types

typedef ThermoType thermoType
 The type of thermodynamics this mixture is instantiated for. More...
 
- Public Types inherited from basicSpecieMixture
typedef basicSpecieMixture basicMixtureType
 The base class of the mixture. More...
 
- Public Types inherited from basicMultiComponentMixture
typedef basicMultiComponentMixture basicMixtureType
 The base class of the mixture. More...
 

Public Member Functions

 multiComponentMixture (const dictionary &, const wordList &specieNames, const HashPtrTable< ThermoType > &thermoData, const fvMesh &, const word &)
 Construct from dictionary, specie names, thermo database,. More...
 
 multiComponentMixture (const dictionary &, const fvMesh &, const word &)
 Construct from dictionary, mesh and phase name. More...
 
virtual ~multiComponentMixture ()
 Destructor. More...
 
const ThermoType & cellMixture (const label celli) const
 
const ThermoType & patchFaceMixture (const label patchi, const label facei) const
 
const ThermoType & cellVolMixture (const scalar p, const scalar T, const label celli) const
 
const ThermoType & patchFaceVolMixture (const scalar p, const scalar T, const label patchi, const label facei) const
 
const PtrList< ThermoType > & speciesData () const
 Return the raw specie thermodynamic data. More...
 
void read (const dictionary &)
 Read dictionary. More...
 
const ThermoType & getLocalThermo (const label speciei) const
 Return thermo based on index. More...
 
- Public Member Functions inherited from basicSpecieMixture
 TypeName ("basicSpecieMixture")
 Run time type information. More...
 
 basicSpecieMixture (const dictionary &, const wordList &specieNames, const fvMesh &, const word &)
 Construct from dictionary, species names, mesh and phase name. More...
 
virtual ~basicSpecieMixture ()
 Destructor. More...
 
virtual scalar nMoles (const label speciei) const =0
 Number of moles of the given specie []. More...
 
virtual scalar W (const label speciei) const =0
 Molecular weight of the given specie [kg/kmol]. More...
 
tmp< volScalarFieldW () const
 Molecular weight of the mixture [kg/kmol]. More...
 
virtual scalar Cp (const label speciei, const scalar p, const scalar T) const =0
 Heat capacity at constant pressure [J/(kg K)]. More...
 
virtual scalar Cv (const label speciei, const scalar p, const scalar T) const =0
 Heat capacity at constant volume [J/(kg K)]. More...
 
virtual scalar Ha (const label speciei, const scalar p, const scalar T) const =0
 Absolute enthalpy [J/kg]. More...
 
virtual scalar Hs (const label speciei, const scalar p, const scalar T) const =0
 Sensible enthalpy [J/kg]. More...
 
virtual scalar Hc (const label speciei) const =0
 Chemical enthalpy [J/kg]. More...
 
virtual scalar S (const label speciei, const scalar p, const scalar T) const =0
 Entropy [J/(kg K)]. More...
 
virtual scalar Es (const label speciei, const scalar p, const scalar T) const =0
 Sensible internal energy [J/kg]. More...
 
virtual scalar G (const label speciei, const scalar p, const scalar T) const =0
 Gibbs free energy [J/kg]. More...
 
virtual scalar A (const label speciei, const scalar p, const scalar T) const =0
 Helmholtz free energy [J/kg]. More...
 
virtual scalar mu (const label speciei, const scalar p, const scalar T) const =0
 Dynamic viscosity [kg/m/s]. More...
 
virtual scalar kappa (const label speciei, const scalar p, const scalar T) const =0
 Thermal conductivity [W/m/K]. More...
 
virtual scalar alphah (const label speciei, const scalar p, const scalar T) const =0
 Thermal diffusivity of enthalpy [kg/m/s]. More...
 
virtual scalar rho (const label speciei, const scalar p, const scalar T) const =0
 Density [kg/m3]. More...
 
- Public Member Functions inherited from basicMultiComponentMixture
 TypeName ("basicMultiComponentMixture")
 Run time type information. More...
 
 basicMultiComponentMixture (const dictionary &, const wordList &specieNames, const fvMesh &, const word &)
 Construct from dictionary, species names, mesh and phase name. More...
 
virtual ~basicMultiComponentMixture ()
 Destructor. More...
 
const speciesTablespecies () const
 Return the table of species. More...
 
PtrList< volScalarField > & Y ()
 Return the mass-fraction fields. More...
 
const PtrList< volScalarField > & Y () const
 Return the const mass-fraction fields. More...
 
volScalarFieldY (const label i)
 Return the mass-fraction field for a specie given by index. More...
 
const volScalarFieldY (const label i) const
 Return the const mass-fraction field for a specie given by index. 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...
 
bool contains (const word &specieName) const
 Does the mixture include this specie? More...
 

Private Member Functions

const ThermoType & constructSpeciesData (const dictionary &thermoDict)
 Construct the species data from the given dictionary and return the. More...
 
void correctMassFractions ()
 Correct the mass fractions to sum to 1. More...
 
 multiComponentMixture (const multiComponentMixture< ThermoType > &)
 Construct as copy (not implemented) More...
 

Private Attributes

PtrList< ThermoType > speciesData_
 Species data. More...
 
ThermoType mixture_
 Temporary storage for the cell/face mixture thermo data. More...
 
ThermoType mixtureVol_
 Temporary storage for the volume weighted. More...
 

Additional Inherited Members

- Protected Attributes inherited from basicMultiComponentMixture
speciesTable species_
 Table of specie names. More...
 
PtrList< volScalarFieldY_
 Species mass fractions. More...
 

Detailed Description

template<class ThermoType>
class Foam::multiComponentMixture< ThermoType >

Foam::multiComponentMixture.

Source files

Definition at line 50 of file multiComponentMixture.H.

Member Typedef Documentation

◆ thermoType

typedef ThermoType thermoType

The type of thermodynamics this mixture is instantiated for.

Definition at line 83 of file multiComponentMixture.H.

Constructor & Destructor Documentation

◆ multiComponentMixture() [1/3]

multiComponentMixture ( const multiComponentMixture< ThermoType > &  )
private

Construct as copy (not implemented)

◆ multiComponentMixture() [2/3]

multiComponentMixture ( const dictionary thermoDict,
const wordList specieNames,
const HashPtrTable< ThermoType > &  thermoData,
const fvMesh mesh,
const word phaseName 
)

Construct from dictionary, specie names, thermo database,.

mesh and phase name

Definition at line 78 of file multiComponentMixture.C.

References forAll.

◆ multiComponentMixture() [3/3]

multiComponentMixture ( const dictionary thermoDict,
const fvMesh mesh,
const word phaseName 
)

Construct from dictionary, mesh and phase name.

Definition at line 106 of file multiComponentMixture.C.

◆ ~multiComponentMixture()

virtual ~multiComponentMixture ( )
inlinevirtual

Destructor.

Definition at line 104 of file multiComponentMixture.H.

Member Function Documentation

◆ constructSpeciesData()

const ThermoType & constructSpeciesData ( const dictionary thermoDict)
private

Construct the species data from the given dictionary and return the.

data for the first specie to initialise the mixture thermo data

Definition at line 32 of file multiComponentMixture.C.

References forAll, and dictionary::subDict().

Here is the call graph for this function:

◆ correctMassFractions()

void correctMassFractions
private

Correct the mass fractions to sum to 1.

Definition at line 50 of file multiComponentMixture.C.

References Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::mag(), Foam::max(), n, and Yt().

Here is the call graph for this function:

◆ cellMixture()

const ThermoType & cellMixture ( const label  celli) const

Definition at line 131 of file multiComponentMixture.C.

References n.

◆ patchFaceMixture()

const ThermoType & patchFaceMixture ( const label  patchi,
const label  facei 
) const

Definition at line 148 of file multiComponentMixture.C.

References n, and patchi.

◆ cellVolMixture()

const ThermoType & cellVolMixture ( const scalar  p,
const scalar  T,
const label  celli 
) const

Definition at line 170 of file multiComponentMixture.C.

References forAll, n, p, and T.

◆ patchFaceVolMixture()

const ThermoType & patchFaceVolMixture ( const scalar  p,
const scalar  T,
const label  patchi,
const label  facei 
) const

Definition at line 198 of file multiComponentMixture.C.

References forAll, n, p, patchi, and T.

◆ speciesData()

const PtrList<ThermoType>& speciesData ( ) const
inline

Return the raw specie thermodynamic data.

Definition at line 134 of file multiComponentMixture.H.

References multiComponentMixture< ThermoType >::speciesData_.

◆ read()

void read ( const dictionary thermoDict)

Read dictionary.

Definition at line 229 of file multiComponentMixture.C.

References forAll, and dictionary::subDict().

Here is the call graph for this function:

◆ getLocalThermo()

const ThermoType& getLocalThermo ( const label  speciei) const
inline

Return thermo based on index.

Definition at line 143 of file multiComponentMixture.H.

References multiComponentMixture< ThermoType >::speciesData_.

Field Documentation

◆ speciesData_

PtrList<ThermoType> speciesData_
private

◆ mixture_

ThermoType mixture_
mutableprivate

Temporary storage for the cell/face mixture thermo data.

Definition at line 60 of file multiComponentMixture.H.

◆ mixtureVol_

ThermoType mixtureVol_
mutableprivate

Temporary storage for the volume weighted.

cell/face mixture thermo data

Definition at line 64 of file multiComponentMixture.H.


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