40 template<
class BasePhaseModel>
44 const word& phaseName,
45 const bool referencePhase,
49 BasePhaseModel(fluid, phaseName, referencePhase, index)
55 if (this->thermo_->composition().solve(i))
67 template<
class BasePhaseModel>
74 template<
class BasePhaseModel>
77 this->thermo_->composition().normalise();
78 BasePhaseModel::correctSpecies();
82 template<
class BasePhaseModel>
89 template<
class BasePhaseModel>
102 +
fvm::div(alphaRhoPhi, Yi,
"div(" + alphaRhoPhi.
name() +
",Yi)")
112 /this->mesh().time().deltaT(),
120 template<
class BasePhaseModel>
124 return this->thermo_->composition().Y();
128 template<
class BasePhaseModel>
132 return this->thermo_->composition().Y(
name);
136 template<
class BasePhaseModel>
140 return this->thermo_->composition().Y();
144 template<
class BasePhaseModel>
152 template<
class BasePhaseModel>
#define forAll(list, i)
Loop across all elements in list.
Generic GeometricField class.
const word & name() const
Return name.
virtual void correctSpecies()
Correct the species fractions.
MulticomponentPhaseModel(const phaseSystem &fluid, const word &phaseName, const bool referencePhase, const label index)
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)
UPtrList< volScalarField > YActive_
Pointer list to active species.
virtual ~MulticomponentPhaseModel()
Destructor.
virtual UPtrList< volScalarField > & YActiveRef()
Access the active species mass fractions.
virtual const PtrList< volScalarField > & Y() const
Return the species mass fractions.
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
Class to represent a system of phases and model interfacial transfers between them.
A class for managing temporary objects.
A class for handling words, derived from 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 matrix for implicit and explicit sources.
volScalarField alpha(IOobject("alpha", runTime.name(), mesh, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE), lambda *max(Ua &U, zeroSensitivity))
tmp< fvMatrix< Type > > Sp(const volScalarField::Internal &, const VolField< Type > &)
tmp< fvMatrix< Type > > div(const surfaceScalarField &flux, const VolField< Type > &vf, const word &name)
tmp< fvMatrix< Type > > ddt(const VolField< Type > &vf)
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
layerAndWeight max(const layerAndWeight &a, const layerAndWeight &b)
tmp< fvMatrix< Type > > correction(const fvMatrix< Type > &)
Return the correction form of the given matrix.
word name(const complex &)
Return a string representation of a complex.