43template<
class BasePhaseModel>
47 const word& phaseName,
51 BasePhaseModel(
fluid, phaseName, index),
56 fluid.subDict(phaseName)
69 this->thermo_->readIfPresent(
"inertSpecie",
inertSpecie)
80 if (i !=
inertIndex_ && this->thermo_->composition().active(i))
92template<
class BasePhaseModel>
99template<
class BasePhaseModel>
118 if (i != inertIndex_)
124 if (inertIndex_ != -1)
126 Yi[inertIndex_] = scalar(1) -
Yt;
127 Yi[inertIndex_].max(0);
138 BasePhaseModel::correctThermo();
142template<
class BasePhaseModel>
149template<
class BasePhaseModel>
160 +
fvm::div(alphaRhoPhi, Yi,
"div(" + alphaRhoPhi.
name() +
",Yi)")
177template<
class BasePhaseModel>
181 return this->thermo_->composition().Y();
185template<
class BasePhaseModel>
189 return this->thermo_->composition().Y(
name);
193template<
class BasePhaseModel>
197 return this->thermo_->composition().Y();
201template<
class BasePhaseModel>
209template<
class BasePhaseModel>
volScalarField Yt(0.0 *Y[0])
Defines the attributes of an object for which implicit objectRegistry management is supported,...
const word & name() const noexcept
Return the object name.
static word groupName(StringType base, const word &group)
Create dot-delimited name.group string.
Class which represents a phase with multiple species. Returns the species' mass fractions,...
virtual void correctThermo()
Correct the thermodynamics.
virtual const UPtrList< volScalarField > & YActive() const
Return the active species mass fractions.
virtual PtrList< volScalarField > & YRef()
Access the species mass fractions.
virtual tmp< fvScalarMatrix > YiEqn(volScalarField &Yi)
Return the species fraction equation.
virtual bool pure() const
Return whether the phase is pure (i.e., not multi-component)
label inertIndex_
Inert species index.
virtual ~MultiComponentPhaseModel()=default
Destructor.
UPtrList< volScalarField > YActive_
Pointer list to active species.
virtual UPtrList< volScalarField > & YActiveRef()
Access the active species mass fractions.
virtual const PtrList< volScalarField > & Y() const
Constant access the species mass fractions.
A list of pointers to objects of type <T>, with allocation/deallocation management of the pointers....
A list of pointers to objects of type <T>, without allocation/deallocation management of the pointers...
Class to represent a system of phases and model interfacial transfers between them.
Basic thermodynamics type based on the use of fitting functions for cp, h, s obtained from the templa...
A class for managing temporary objects.
A class for handling words, derived from Foam::string.
Calculate the first temporal derivative.
Calculate the divergence of the given field.
Calculate the matrix for the first temporal derivative.
Calculate the matrix for the divergence of the given field and flux.
Calculate the matrix for the laplacian of the field.
Calculate the finiteVolume matrix for implicit and explicit sources.
static tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > interpolate(const GeometricField< Type, fvPatchField, volMesh > &tvf, const surfaceScalarField &faceFlux, Istream &schemeData)
Interpolate field onto faces using scheme given by Istream.
tmp< GeometricField< Type, fvPatchField, volMesh > > ddt(const dimensioned< Type > dt, const fvMesh &mesh)
tmp< fvMatrix< Type > > laplacian(const GeometricField< Type, fvPatchField, volMesh > &vf, const word &name)
tmp< fvMatrix< Type > > div(const surfaceScalarField &flux, const GeometricField< Type, fvPatchField, volMesh > &vf, const word &name)
tmp< fvMatrix< Type > > ddt(const GeometricField< Type, fvPatchField, volMesh > &vf)
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
const dimensionSet dimless
Dimensionless.
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for INVALID.
const word inertSpecie(thermo.get< word >("inertSpecie"))
#define forAll(list, i)
Loop across all elements in list.