39 template<
class BasicMomentumTransportModel>
42 this->nut_ = Cmu_*
sqr(k_)/epsilon_;
43 this->nut_.correctBoundaryConditions();
48 template<
class BasicMomentumTransportModel>
56 dimVolume*this->rho_.dimensions()*k_.dimensions()
63 template<
class BasicMomentumTransportModel>
71 dimVolume*this->rho_.dimensions()*epsilon_.dimensions()
80 template<
class BasicMomentumTransportModel>
163 this->runTime_.timeName(),
175 this->runTime_.timeName(),
183 bound(k_, this->kMin_);
184 bound(epsilon_, this->epsilonMin_);
186 if (type == typeName)
188 this->printCoeffs(type);
195 template<
class BasicMomentumTransportModel>
200 Cmu_.readIfPresent(this->coeffDict());
201 C1_.readIfPresent(this->coeffDict());
202 C2_.readIfPresent(this->coeffDict());
203 C3_.readIfPresent(this->coeffDict());
204 sigmak_.readIfPresent(this->coeffDict());
205 sigmaEps_.readIfPresent(this->coeffDict());
216 template<
class BasicMomentumTransportModel>
219 if (!this->turbulence_)
248 epsilon_.boundaryFieldRef().updateCoeffs();
264 epsEqn.
ref().relax();
266 epsEqn.
ref().boundaryManipulate(epsilon_.boundaryFieldRef());
269 bound(epsilon_, this->epsilonMin_);
289 bound(k_, this->kMin_);
virtual tmp< fvScalarMatrix > epsilonSource() const
tmp< GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh >> grad(const GeometricField< Type, fvsPatchField, surfaceMesh > &ssf)
fvMatrix< scalar > fvScalarMatrix
tmp< fvMatrix< Type > > SuSp(const volScalarField::Internal &, const GeometricField< Type, fvPatchField, volMesh > &)
void clear() const
If object pointer points to valid object:
void correct(GeometricField< Type, fvPatchField, volMesh > &field)
Apply correction to field.
T & ref() const
Return non-const reference or generate a fatal error.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
tmp< GeometricField< Type, fvPatchField, volMesh > > div(const GeometricField< Type, fvsPatchField, surfaceMesh > &ssf)
virtual tmp< fvScalarMatrix > kSource() const
Generic dimensioned Type class.
tmp< fvMatrix< Type > > Sp(const volScalarField::Internal &, const GeometricField< Type, fvPatchField, volMesh > &)
Eddy viscosity turbulence model base class.
dimensionedSymmTensor twoSymm(const dimensionedSymmTensor &dt)
Templated abstract base class for RAS turbulence models.
kEpsilon(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.
const dimensionSet dimVolume(pow3(dimLength))
bool read(const char *, int32_t &)
A class representing the concept of a GeometricField of 1 used to avoid unnecessary manipulations for...
dimensionedSymmTensor dev(const dimensionedSymmTensor &dt)
A class for handling words, derived from string.
static word groupName(Name name, const word &group)
tmp< fvMatrix< Type > > ddt(const GeometricField< Type, fvPatchField, volMesh > &vf)
void constrain(fvMatrix< Type > &eqn)
Apply constraints to equation.
tmp< fvMatrix< Type > > div(const surfaceScalarField &flux, const GeometricField< Type, fvPatchField, volMesh > &vf, const word &name)
Bound the given scalar field if it has gone unbounded.
Info<< "Predicted p max-min : "<< max(p).value()<< " "<< min(p).value()<< endl;rho==max(rho0+psi *p, rhoMin);# 1 "/home/ubuntu/OpenFOAM-8/applications/solvers/multiphase/cavitatingFoam/alphavPsi.H" 1{ alphav=max(min((rho - rholSat)/(rhovSat - rholSat), scalar(1)), scalar(0));alphal=1.0 - alphav;Info<< "max-min alphav: "<< max(alphav).value()<< " "<< min(alphav).value()<< endl;psiModel-> correct()
virtual bool read()
Re-read model coefficients if they have changed.
tmp< surfaceScalarField > absolute(const tmp< surfaceScalarField > &tphi, const volVectorField &U)
Return the given relative flux in absolute form.
volScalarField & bound(volScalarField &, const dimensionedScalar &lowerBound)
Bound the given scalar field if it has gone unbounded.
tmp< fvMatrix< Type > > laplacian(const GeometricField< Type, fvPatchField, volMesh > &vf, const word &name)
fileType type(const fileName &, const bool checkVariants=true, const bool followLink=true)
Return the file type: directory or file.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
virtual void correctNut()
SolverPerformance< Type > solve(fvMatrix< Type > &, const word &)
Solve returning the solution statistics given convergence tolerance.
volScalarField alpha(IOobject("alpha", runTime.timeName(), mesh, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE), lambda *max(Ua &U, zeroSensitivity))
A class for managing temporary objects.
virtual void correct()
Solve the turbulence equations and correct the turbulence viscosity.
static options & New(const fvMesh &mesh)
Construct fvOptions and register to datbase if not present.
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
const dimensionedScalar & G
Newtonian constant of gravitation.
TransportModel transportModel