Go to the documentation of this file.
34 template<
class BasePhaseSystem>
41 if (!rDmdt_.found(
key))
43 return phaseSystem::dmdt(
key);
48 return rDmdtSign**rDmdt_[
key];
54 template<
class BasePhaseSystem>
62 this->generatePairsAndSubModels
73 phaseTransferModelIter
78 phaseTransferModelIter.key(),
79 phaseSystem::dmdt(phaseTransferModelIter.key()).ptr()
87 template<
class BasePhaseSystem>
95 template<
class BasePhaseSystem>
102 return BasePhaseSystem::dmdt(
key) + this->rDmdt(
key);
106 template<
class BasePhaseSystem>
114 const phasePair& pair = this->phasePairs_[rDmdtIter.key()];
117 this->addField(pair.
phase1(),
"dmdt", rDmdt, dmdts);
118 this->addField(pair.
phase2(),
"dmdt", - rDmdt, dmdts);
125 template<
class BasePhaseSystem>
157 phaseTransferModels_,
158 phaseTransferModelIter
161 const phasePair& pair(this->phasePairs_[phaseTransferModelIter.key()]);
179 IOobject::groupName(Yi[i].member(),
phase.
name())
184 IOobject::groupName(Yi[i].member(), otherPhase.
name())
188 dmdt21*eqns[otherName]->psi()
192 dmdt12*eqns[
name]->psi()
202 template<
class BasePhaseSystem>
210 phaseTransferModels_,
211 phaseTransferModelIter
214 *rDmdt_[phaseTransferModelIter.key()] =
221 phaseTransferModels_,
222 phaseTransferModelIter
225 *rDmdt_[phaseTransferModelIter.key()] +=
226 phaseTransferModelIter()->dmdt();
231 template<
class BasePhaseSystem>
Single incompressible phase derived from the phase-fraction. Used as part of the multiPhaseMixture fo...
Description for mass transfer between a pair of phases. The direction of the mass transfer is from th...
A class for handling words, derived from Foam::string.
virtual tmp< volScalarField > rDmdt(const phasePairKey &key) const
Return the representation mass transfer rate.
Single incompressible phase derived from the phase-fraction. Used as part of the multiPhaseMixture fo...
A class for managing temporary objects.
const dimensionSet dimDensity
dimensionedScalar posPart(const dimensionedScalar &ds)
auto key(const Type &t) -> typename std::enable_if< std::is_enum< Type >::value, typename std::underlying_type< Type >::type >::type
virtual PtrList< volScalarField > dmdts() const
Return the mass transfer rates for each phase.
#define forAllConstIter(Container, container, iter)
Iterate across all elements in the container object.
#define forAll(list, i)
Loop across all elements in list.
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
bool set(const Key &key, T *ptr)
Assign a new entry, overwriting existing entries.
fvMatrix< scalar > fvScalarMatrix
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
A list of pointers to objects of type <T>, with allocation/deallocation management of the pointers....
virtual ~PhaseTransferPhaseSystem()
Destructor.
An ordered or unorder pair of phase names. Typically specified as follows.
PhaseTransferPhaseSystem(const fvMesh &)
Construct from fvMesh.
virtual void correct()
Correct the mass transfer rates.
Mesh data needed to do the Finite Volume discretisation.
const dimensionSet dimMass(1, 0, 0, 0, 0, 0, 0)
virtual bool read()
Read base phaseProperties dictionary.
Calculate the matrix for implicit and explicit sources.
const word & name() const
const word & name() const
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
virtual tmp< volScalarField > dmdt(const phasePairKey &key) const
Return the mass transfer rate for a pair.
virtual autoPtr< phaseSystem::massTransferTable > massTransfer() const
Return the mass transfer matrices.
dimensionedScalar negPart(const dimensionedScalar &ds)
An ordered pair of two objects of type <T> with first() and second() elements.
const phaseModel & phase2() const
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for INVALID.
const phaseModel & phase1() const
const volScalarField & psi