41 template<
class BasicMomentumTransportModel>
64 phase_(refCast<const phaseModel>(transport)),
66 hasDispersedPhaseNames_(this->coeffDict_.found(
"dispersedPhases")),
70 this->coeffDict_.lookupOrDefault(
"dispersedPhases",
hashedWordList())
85 this->printCoeffs(type);
92 template<
class BasicMomentumTransportModel>
97 Cmub_.readIfPresent(this->coeffDict());
108 template<
class BasicMomentumTransportModel>
116 if (hasDispersedPhaseNames_)
118 dispersedPhases.
resize(dispersedPhaseNames_.size());
120 forAll(dispersedPhaseNames_, dispersedPhasei)
125 &fluid.
phases()[dispersedPhaseNames_[dispersedPhasei]]
133 label dispersedPhasei = 0;
139 if (&otherPhase != &phase_)
150 return dispersedPhases;
154 template<
class BasicMomentumTransportModel>
163 pow(this->betaStar_, 0.25)*this->y_*
sqrt(this->k_)/this->nu()
167 this->a1_*this->k_/
max(this->a1_*this->omega_, this->b1_*F2*
sqrt(S2));
174 *Cmub_*phaseIter().d()*phaseIter()
175 *(
mag(this->U_ - phaseIter().
U()));
178 this->nut_.correctBoundaryConditions();
183 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 > &)
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.
volScalarField alpha(IOobject("alpha", runTime.timeName(), mesh, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE), lambda *max(Ua &U, zeroSensitivity))
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.
static autoPtr< dictionary > New(Istream &)
Construct top-level dictionary on freestore from Istream.
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 > &)
Single incompressible phase derived from the phase-fraction. Used as part of the multiPhaseMixture fo...
virtual void correctNut()
BasicMomentumTransportModel::rhoField rhoField