40 template<
class BasicMomentumTransportModel>
65 hasDispersedPhaseNames_(this->coeffDict_.found(
"dispersedPhases")),
69 this->coeffDict_.lookupOrDefault(
"dispersedPhases",
hashedWordList())
84 this->printCoeffs(type);
91 template<
class BasicMomentumTransportModel>
96 Cmub_.readIfPresent(this->coeffDict());
107 template<
class BasicMomentumTransportModel>
115 if (hasDispersedPhaseNames_)
117 dispersedPhases.
resize(dispersedPhaseNames_.size());
119 forAll(dispersedPhaseNames_, dispersedPhasei)
124 &fluid.
phases()[dispersedPhaseNames_[dispersedPhasei]]
132 label dispersedPhasei = 0;
138 if (&otherPhase != &phase_)
149 return dispersedPhases;
153 template<
class BasicMomentumTransportModel>
162 pow(this->betaStar_, 0.25)*this->y_*
sqrt(this->k_)/this->nu()
166 this->a1_*this->k_/
max(this->a1_*this->omega_, this->b1_*F2*
sqrt(S2));
173 *Cmub_*phaseIter().d()*phaseIter()
174 *(
mag(this->U_ - phaseIter().
U()));
177 this->nut_.correctBoundaryConditions();
182 template<
class BasicMomentumTransportModel>
BasicMomentumTransportModel::alphaField alphaField
void resize(const label)
Reset size of UPtrList. This can only be used to set the size.
const phaseModelPartialList & movingPhases() const
Return the models for phases that are moving.
#define forAll(list, i)
Loop across all elements in list.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Implementation of the k-omega-SST turbulence model for dispersed bubbly flows with Sato (1981) bubble...
virtual void correct()
Solve the turbulence equations and correct the turbulence viscosity.
dimensioned< Type > max(const dimensioned< Type > &, const dimensioned< Type > &)
void correct(GeometricField< Type, fvPatchField, volMesh > &field)
Apply correction to field.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
#define forAllIter(Container, container, iter)
Iterate across all elements in the container object of type.
kOmegaSSTSato(const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &type=typeName)
Construct from components.
dimensionedScalar sqrt(const dimensionedScalar &ds)
BasicMomentumTransportModel::transportModel transportModel
Generic dimensioned Type class.
const phaseModelList & phases() const
Return the phase models.
dimensionedScalar exp(const dimensionedScalar &ds)
Class to represent a system of phases and model interfacial transfers between them.
A class for handling words, derived from string.
Specialisation for RAS of the generic kOmegaSSTBase base class. For more information, see Description of kOmegaSSTBase.H.
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
bool set(const label) const
Is element set.
label size() const
Return the number of elements in the UPtrList.
dimensionedScalar pow(const dimensionedScalar &ds, const dimensionedScalar &expt)
virtual bool read()
Read model coefficients if they have changed.
A wordList with hashed indices for faster lookup by name.
virtual void correct()
Solve the turbulence equations and correct the turbulence viscosity.
fileType type(const fileName &, const bool checkVariants=true, const bool followLink=true)
Return the file type: directory or file.
dimensioned< scalar > mag(const dimensioned< Type > &)
volScalarField alpha(IOobject("alpha", runTime.timeName(), mesh, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE), lambda *max(Ua &U, zeroSensitivity))
static options & New(const fvMesh &mesh)
Construct fvOptions and register to datbase if not present.
Single incompressible phase derived from the phase-fraction. Used as part of the multiPhaseMixture fo...
virtual void correctNut()
BasicMomentumTransportModel::rhoField rhoField