41 template<
class BasicMomentumTransportModel>
49 const viscosity& viscosity,
64 phase_(refCast<const phaseModel>(viscosity)),
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.
kOmegaSSTSato(const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const viscosity &viscosity, const word &type=typeName)
Construct from components.
layerAndWeight max(const layerAndWeight &a, const layerAndWeight &b)
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.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
#define forAllIter(Container, container, iter)
Iterate across all elements in the container object of type.
volScalarField alpha(IOobject("alpha", runTime.timeName(), mesh, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE), lambda *max(Ua &U, zeroSensitivity))
dimensionedScalar sqrt(const dimensionedScalar &ds)
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.
Info<< "Reading field p\"<< endl;volScalarField p(IOobject("p", runTime.timeName(), mesh, IOobject::MUST_READ, IOobject::AUTO_WRITE), mesh);Info<< "Reading field U\"<< endl;volVectorField U(IOobject("U", runTime.timeName(), mesh, IOobject::MUST_READ, IOobject::AUTO_WRITE), mesh);pressureReference pressureReference(p, simple.dict());mesh.schemes().setFluxRequired(p.name());Info<< "Reading field pa\"<< endl;volScalarField pa(IOobject("pa", runTime.timeName(), mesh, IOobject::MUST_READ, IOobject::AUTO_WRITE), mesh);Info<< "Reading field Ua\"<< endl;volVectorField Ua(IOobject("Ua", runTime.timeName(), mesh, IOobject::MUST_READ, IOobject::AUTO_WRITE), mesh);# 65 "/home/ubuntu/OpenFOAM-10/applications/solvers/incompressible/adjointShapeOptimisationFoam/createFields.H" 2label paRefCell=0;scalar paRefValue=0.0;setRefCell(pa, simple.dict(), paRefCell, paRefValue);mesh.schemes().setFluxRequired(pa.name());autoPtr< viscosityModel > viscosity(viscosityModel::New(mesh))
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