39 template<
class BasicTurbulenceModel>
42 this->nut_ = Cmu_*
sqr(k_)/epsilon_;
43 this->nut_.correctBoundaryConditions();
46 BasicTurbulenceModel::correctNut();
50 template<
class BasicTurbulenceModel>
58 dimVolume*this->rho_.dimensions()*k_.dimensions()
65 template<
class BasicTurbulenceModel>
73 dimVolume*this->rho_.dimensions()*epsilon_.dimensions()
82 template<
class BasicTurbulenceModel>
91 const word& propertiesName,
167 this->runTime_.timeName(),
179 this->runTime_.timeName(),
187 bound(k_, this->kMin_);
188 bound(epsilon_, this->epsilonMin_);
190 if (type == typeName)
192 this->printCoeffs(type);
199 template<
class BasicTurbulenceModel>
204 Cmu_.readIfPresent(this->coeffDict());
205 C1_.readIfPresent(this->coeffDict());
206 C2_.readIfPresent(this->coeffDict());
207 C3_.readIfPresent(this->coeffDict());
208 sigmak_.readIfPresent(this->coeffDict());
209 sigmaEps_.readIfPresent(this->coeffDict());
220 template<
class BasicTurbulenceModel>
223 if (!this->turbulence_)
247 nut.
v()*(
dev(
twoSymm(tgradU().v())) && tgradU().v())
252 epsilon_.boundaryFieldRef().updateCoeffs();
268 epsEqn.
ref().relax();
270 epsEqn.
ref().boundaryManipulate(epsilon_.boundaryFieldRef());
273 bound(epsilon_, this->epsilonMin_);
293 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.
const dimensionedScalar G
Newtonian constant of gravitation.
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)
BasicTurbulenceModel::alphaField alphaField
Templated abstract base class for RAS turbulence models.
const dimensionSet dimVolume(pow3(dimLength))
bool read(const char *, int32_t &)
const Internal & v() const
Return a const-reference to the dimensioned internal field.
dimensionedSymmTensor dev(const dimensionedSymmTensor &dt)
Standard k-epsilon turbulence model for incompressible and compressible flows including rapid distort...
A class for handling words, derived from string.
SolverPerformance< Type > solve(fvMatrix< Type > &, const dictionary &)
Solve returning the solution statistics given convergence tolerance.
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(psi *p+alphal *rhol0+((alphav *psiv+alphal *psil) - psi) *pSat, rhoMin);# 1 "/home/ubuntu/OpenFOAM-6/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()
fileName::Type type(const fileName &, const bool followLink=true)
Return the file type: DIRECTORY or FILE.
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)
BasicTurbulenceModel::transportModel transportModel
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()
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.
const dimensionedScalar alpha
Fine-structure constant: default SI units: [].
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...