CompositionModel< CloudType > Class Template Referenceabstract

Templated reacting parcel composition model class Consists of carrier species (via thermo package), and additional liquids and solids. More...

Inheritance diagram for CompositionModel< CloudType >:
Collaboration diagram for CompositionModel< CloudType >:

Public Member Functions

 TypeName ("compositionModel")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, CompositionModel, dictionary,(const dictionary &dict, CloudType &owner),(dict, owner))
 Declare runtime constructor selection table. More...
 
 CompositionModel (CloudType &owner)
 Construct null from owner. More...
 
 CompositionModel (const dictionary &dict, CloudType &owner, const word &type)
 Construct from dictionary. More...
 
 CompositionModel (const CompositionModel< CloudType > &cm)
 Construct copy. More...
 
virtual autoPtr< CompositionModel< CloudType > > clone () const =0
 Construct and return a clone. More...
 
virtual ~CompositionModel ()
 Destructor. More...
 
const parcelThermothermo () const
 Return the thermo database. More...
 
const fluidMulticomponentThermocarrier () const
 Return the carrier components (wrapper function) More...
 
const liquidMixturePropertiesliquids () const
 Return the global (additional) liquids. More...
 
const solidMixturePropertiessolids () const
 Return the global (additional) solids. More...
 
const phasePropertiesListphaseProps () const
 Return the list of phase properties. More...
 
label nPhase () const
 Return the number of phases. More...
 
const wordListphaseTypes () const
 Return the list of phase type names. More...
 
const wordListstateLabels () const
 Return the list of state labels (s), (l), (g) etc. More...
 
const wordListcomponentNames (const label phaseI) const
 Return the list of component names for phaseI. More...
 
label carrierId (const word &cmptName, const bool allowNotFound=false) const
 Return global id of component cmptName in carrier thermo. More...
 
label localId (const label phaseI, const word &cmptName, const bool allowNotFound=false) const
 Return local id of component cmptName in phase phaseI. More...
 
label localToCarrierId (const label phaseI, const label id, const bool allowNotFound=false) const
 Return carrier id of component given local id. More...
 
const scalarFieldY0 (const label phaseI) const
 Return the list of phase phaseI mass fractions. More...
 
scalarField X (const label phaseI, const scalarField &Y) const
 Return the list of phase phaseI volume fractions fractions. More...
 
virtual const scalarFieldYMixture0 () const =0
 Return the list of mixture mass fractions. More...
 
virtual label idGas () const =0
 Gas id. More...
 
virtual label idLiquid () const =0
 Liquid id. More...
 
virtual label idSolid () const =0
 Solid id. More...
 
virtual scalar ha (const label phaseI, const scalarField &Y, const scalar p, const scalar T) const
 Return total enthalpy for the phase phaseI. More...
 
virtual scalar hs (const label phaseI, const scalarField &Y, const scalar p, const scalar T) const
 Return sensible enthalpy for the phase phaseI. More...
 
virtual scalar Cp (const label phaseI, const scalarField &Y, const scalar p, const scalar T) const
 Return specific heat capacity for the phase phaseI. More...
 
virtual scalar L (const label phaseI, const scalarField &Y, const scalar p, const scalar T) const
 Return latent heat for the phase phaseI. More...
 
- Public Member Functions inherited from CloudSubModelBase< CloudType >
 CloudSubModelBase (CloudType &owner)
 Construct null from owner cloud. More...
 
 CloudSubModelBase (CloudType &owner, const dictionary &dict, const word &baseName, const word &modelType, const word &dictExt="Coeffs")
 Construct from owner cloud without name. More...
 
 CloudSubModelBase (const word &modelName, CloudType &owner, const dictionary &dict, const word &baseName, const word &modelType)
 Construct from owner cloud with name. More...
 
 CloudSubModelBase (const CloudSubModelBase< CloudType > &smb)
 Copy constructor. More...
 
virtual ~CloudSubModelBase ()
 Destructor. More...
 
const CloudTypeowner () const
 Return const access to the owner cloud. More...
 
virtual bool writeTime () const
 Flag to indicate when to write a property. More...
 
CloudTypeowner ()
 Return non-const access to the owner cloud for manipulation. More...
 
virtual void write (Ostream &os) const
 Write. More...
 
- Public Member Functions inherited from subModelBase
 subModelBase (dictionary &properties)
 Construct null. More...
 
 subModelBase (dictionary &properties, const dictionary &dict, const word &baseName, const word &modelType, const word &dictExt="Coeffs")
 Construct from components without name. More...
 
 subModelBase (const word &modelName, dictionary &properties, const dictionary &dict, const word &baseName, const word &modelType)
 Construct from components with name. More...
 
 subModelBase (const subModelBase &smb)
 Copy constructor. More...
 
virtual ~subModelBase ()
 Destructor. More...
 
const wordmodelName () const
 Return const access to the name of the sub-model. More...
 
const dictionarydict () const
 Return const access to the cloud dictionary. More...
 
const wordbaseName () const
 Return const access to the base name of the sub-model. More...
 
const wordmodelType () const
 Return const access to the sub-model type. More...
 
const dictionarycoeffDict () const
 Return const access to the coefficients dictionary. More...
 
const dictionaryproperties () const
 Return const access to the properties dictionary. More...
 
virtual bool defaultCoeffs (const bool printMsg) const
 Returns true if defaultCoeffs is true and outputs on printMsg. More...
 
virtual void cacheFields (const bool store)
 Cache dependent sub-model fields. More...
 
template<class Type >
Type getBaseProperty (const word &entryName, const Type &defaultValue=pTraits< Type >::zero) const
 Retrieve generic property from the base model. More...
 
template<class Type >
void getBaseProperty (const word &entryName, Type &value) const
 Retrieve generic property from the base model. More...
 
template<class Type >
void setBaseProperty (const word &entryName, const Type &value)
 Add generic property to the base model. More...
 
template<class Type >
void getModelProperty (const word &entryName, Type &value) const
 Retrieve generic property from the sub-model. More...
 
template<class Type >
Type getModelProperty (const word &entryName, const Type &defaultValue=pTraits< Type >::zero) const
 Retrieve generic property from the sub-model. More...
 
template<class Type >
void setModelProperty (const word &entryName, const Type &value)
 Add generic property to the sub-model. More...
 
void operator= (const subModelBase &)=delete
 Disallow default bitwise assignment. More...
 

Static Public Member Functions

static autoPtr< CompositionModel< CloudType > > New (const dictionary &dict, CloudType &owner)
 Selector. More...
 

Additional Inherited Members

- Public Types inherited from CloudSubModelBase< CloudType >
typedef CloudType cloudType
 Type of cloud this model was instantiated for. More...
 
- Protected Member Functions inherited from subModelBase
bool inLine () const
 Flag to indicate whether data is/was read in-line. More...
 
- Protected Attributes inherited from CloudSubModelBase< CloudType >
CloudTypeowner_
 Reference to the cloud. More...
 
- Protected Attributes inherited from subModelBase
const word modelName_
 Name of the sub-model. More...
 
dictionaryproperties_
 Reference to properties dictionary e.g. for restart. More...
 
const dictionary dict_
 Copy of dictionary used during construction. More...
 
const word baseName_
 Name of the sub-model base class. More...
 
const word modelType_
 Type of the sub-model. More...
 
const dictionary coeffDict_
 Coefficients dictionary. More...
 

Detailed Description

template<class CloudType>
class Foam::CompositionModel< CloudType >

Templated reacting parcel composition model class Consists of carrier species (via thermo package), and additional liquids and solids.

Source files

Definition at line 56 of file CompositionModel.H.

Constructor & Destructor Documentation

◆ CompositionModel() [1/3]

Construct null from owner.

Definition at line 32 of file CompositionModel.C.

◆ CompositionModel() [2/3]

CompositionModel ( const dictionary dict,
CloudType owner,
const word type 
)

Construct from dictionary.

Definition at line 48 of file CompositionModel.C.

◆ CompositionModel() [3/3]

Construct copy.

Definition at line 77 of file CompositionModel.C.

◆ ~CompositionModel()

~CompositionModel
virtual

Destructor.

Definition at line 93 of file CompositionModel.C.

Member Function Documentation

◆ TypeName()

TypeName ( "compositionModel"  )

Runtime type information.

◆ declareRunTimeSelectionTable()

declareRunTimeSelectionTable ( autoPtr  ,
CompositionModel< CloudType ,
dictionary  ,
(const dictionary &dict, CloudType &owner ,
(dict, owner  
)

Declare runtime constructor selection table.

◆ clone()

virtual autoPtr<CompositionModel<CloudType> > clone ( ) const
pure virtual

◆ New()

Foam::autoPtr< Foam::CompositionModel< CloudType > > New ( const dictionary dict,
CloudType owner 
)
static

Selector.

Definition at line 32 of file CompositionModelNew.C.

References dict, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::Info, and Foam::nl.

Here is the call graph for this function:

◆ thermo()

const Foam::parcelThermo & thermo

Return the thermo database.

Definition at line 100 of file CompositionModel.C.

◆ carrier()

Return the carrier components (wrapper function)

Definition at line 108 of file CompositionModel.C.

References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.

Referenced by ReactingMultiphaseParcel< ParcelType >::calc(), ReactingParcel< ParcelType >::calc(), ReactingMultiphaseParcel< ParcelType >::calcDevolatilisation(), and ReactingParcel< ParcelType >::calcPhaseChange().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ liquids()

Return the global (additional) liquids.

Definition at line 123 of file CompositionModel.C.

Referenced by SprayParcel< ParcelType >::calc(), SprayParcel< ParcelType >::calcAtomisation(), ReactingParcel< ParcelType >::calcPhaseChange(), and SprayParcel< ParcelType >::chi().

Here is the caller graph for this function:

◆ solids()

Return the global (additional) solids.

Definition at line 131 of file CompositionModel.C.

◆ phaseProps()

const Foam::phasePropertiesList & phaseProps

Return the list of phase properties.

Definition at line 139 of file CompositionModel.C.

Referenced by SingleMixtureFraction< CloudType >::SingleMixtureFraction().

Here is the caller graph for this function:

◆ nPhase()

Foam::label nPhase

Return the number of phases.

Definition at line 146 of file CompositionModel.C.

◆ phaseTypes()

const Foam::wordList & phaseTypes

Return the list of phase type names.

If only 1 phase, return the component names of that phase

Definition at line 153 of file CompositionModel.C.

◆ stateLabels()

const Foam::wordList & stateLabels

Return the list of state labels (s), (l), (g) etc.

Definition at line 168 of file CompositionModel.C.

◆ componentNames()

const Foam::wordList & componentNames ( const label  phaseI) const

Return the list of component names for phaseI.

Definition at line 176 of file CompositionModel.C.

◆ carrierId()

Foam::label carrierId ( const word cmptName,
const bool  allowNotFound = false 
) const

Return global id of component cmptName in carrier thermo.

Definition at line 183 of file CompositionModel.C.

References Foam::abort(), Foam::FatalError, FatalErrorInFunction, forAll, and Foam::nl.

Here is the call graph for this function:

◆ localId()

Foam::label localId ( const label  phaseI,
const word cmptName,
const bool  allowNotFound = false 
) const

Return local id of component cmptName in phase phaseI.

Definition at line 213 of file CompositionModel.C.

References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.

Here is the call graph for this function:

◆ localToCarrierId()

Foam::label localToCarrierId ( const label  phaseI,
const label  id,
const bool  allowNotFound = false 
) const

Return carrier id of component given local id.

Definition at line 234 of file CompositionModel.C.

References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.

Referenced by ReactingMultiphaseParcel< ParcelType >::calc(), ReactingParcel< ParcelType >::calc(), ReactingMultiphaseParcel< ParcelType >::calcDevolatilisation(), and ReactingParcel< ParcelType >::calcPhaseChange().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Y0()

const Foam::scalarField & Y0 ( const label  phaseI) const

Return the list of phase phaseI mass fractions.

Definition at line 256 of file CompositionModel.C.

◆ X()

Foam::scalarField X ( const label  phaseI,
const scalarField Y 
) const

Return the list of phase phaseI volume fractions fractions.

based on supplied mass fractions Y

Definition at line 266 of file CompositionModel.C.

References Foam::abort(), phaseProperties::carrierId(), Foam::FatalError, FatalErrorInFunction, forAll, phaseProperties::GAS, phaseProperties::LIQUID, phaseProperties::phase(), and Y.

Here is the call graph for this function:

◆ YMixture0()

virtual const scalarField& YMixture0 ( ) const
pure virtual

Return the list of mixture mass fractions.

If only 1 phase, return component fractions of that phase

Implemented in SinglePhaseMixture< CloudType >, SingleMixtureFraction< CloudType >, and NoComposition< CloudType >.

◆ idGas()

virtual label idGas ( ) const
pure virtual

Gas id.

Implemented in SinglePhaseMixture< CloudType >, SingleMixtureFraction< CloudType >, and NoComposition< CloudType >.

Referenced by ReactingMultiphaseParcel< ParcelType >::calc().

Here is the caller graph for this function:

◆ idLiquid()

virtual label idLiquid ( ) const
pure virtual

Liquid id.

Implemented in SinglePhaseMixture< CloudType >, SingleMixtureFraction< CloudType >, and NoComposition< CloudType >.

Referenced by ReactingMultiphaseParcel< ParcelType >::calc().

Here is the caller graph for this function:

◆ idSolid()

virtual label idSolid ( ) const
pure virtual

Solid id.

Implemented in SinglePhaseMixture< CloudType >, SingleMixtureFraction< CloudType >, and NoComposition< CloudType >.

Referenced by ReactingMultiphaseParcel< ParcelType >::calc().

Here is the caller graph for this function:

◆ ha()

Foam::scalar ha ( const label  phaseI,
const scalarField Y,
const scalar  p,
const scalar  T 
) const
virtual

Return total enthalpy for the phase phaseI.

Definition at line 311 of file CompositionModel.C.

References Foam::abort(), phaseProperties::carrierId(), Foam::FatalError, FatalErrorInFunction, forAll, phaseProperties::GAS, phaseProperties::LIQUID, p, phaseProperties::phase(), phaseProperties::SOLID, Foam::T(), and Y.

Here is the call graph for this function:

◆ hs()

Foam::scalar hs ( const label  phaseI,
const scalarField Y,
const scalar  p,
const scalar  T 
) const
virtual

Return sensible enthalpy for the phase phaseI.

Definition at line 360 of file CompositionModel.C.

References Foam::abort(), phaseProperties::carrierId(), Foam::FatalError, FatalErrorInFunction, forAll, phaseProperties::GAS, phaseProperties::LIQUID, p, phaseProperties::phase(), phaseProperties::SOLID, Foam::T(), and Y.

Here is the call graph for this function:

◆ Cp()

Foam::scalar Cp ( const label  phaseI,
const scalarField Y,
const scalar  p,
const scalar  T 
) const
virtual

Return specific heat capacity for the phase phaseI.

Definition at line 411 of file CompositionModel.C.

References Foam::abort(), phaseProperties::carrierId(), Foam::FatalError, FatalErrorInFunction, forAll, phaseProperties::GAS, phaseProperties::LIQUID, p, phaseProperties::phase(), phaseProperties::SOLID, Foam::T(), and Y.

Referenced by ReactingParcel< ParcelType >::calc().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ L()

Foam::scalar L ( const label  phaseI,
const scalarField Y,
const scalar  p,
const scalar  T 
) const
virtual

Return latent heat for the phase phaseI.

Definition at line 461 of file CompositionModel.C.

References Foam::abort(), Foam::endl(), Foam::FatalError, FatalErrorInFunction, forAll, phaseProperties::GAS, phaseProperties::LIQUID, p, phaseProperties::phase(), phaseProperties::SOLID, Foam::T(), WarningInFunction, and Y.

Here is the call graph for this function:

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