Go to the documentation of this file.
38 template<
class BasicTurbulenceModel>
41 this->nut_ = this->Cmu_*
sqr(k_)/epsilon_;
42 this->nut_.correctBoundaryConditions();
44 BasicTurbulenceModel::correctNut();
50 template<
class BasicTurbulenceModel>
59 const word& propertiesName,
181 this->runTime_.timeName(),
193 this->runTime_.timeName(),
201 if (
type == typeName)
203 this->printCoeffs(
type);
205 this->boundNormalStress(this->R_);
206 bound(epsilon_, this->epsilonMin_);
207 k_ = 0.5*
tr(this->R_);
214 template<
class BasicTurbulenceModel>
219 Cmu_.readIfPresent(this->coeffDict());
220 C1_.readIfPresent(this->coeffDict());
221 C2_.readIfPresent(this->coeffDict());
222 Ceps1_.readIfPresent(this->coeffDict());
223 Ceps2_.readIfPresent(this->coeffDict());
224 Cs_.readIfPresent(this->coeffDict());
225 Ceps_.readIfPresent(this->coeffDict());
227 wallReflection_.readIfPresent(
"wallReflection", this->coeffDict());
228 kappa_.readIfPresent(this->coeffDict());
229 Cref1_.readIfPresent(this->coeffDict());
230 Cref2_.readIfPresent(this->coeffDict());
241 template<
class BasicTurbulenceModel>
249 (Cs_*(this->k_/this->epsilon_))*this->R_ +
I*this->
nu()
255 template<
class BasicTurbulenceModel>
263 (Ceps_*(this->k_/this->epsilon_))*this->R_ +
I*this->
nu()
269 template<
class BasicTurbulenceModel>
272 if (!this->turbulence_)
293 epsilon_.boundaryField().updateCoeffs();
308 epsEqn().boundaryManipulate(epsilon_.boundaryField());
311 bound(epsilon_, this->epsilonMin_);
322 if (isA<wallFvPatch>(curPatch))
329 G[faceCelli]/(0.5*
mag(
tr(P[faceCelli])) + SMALL),
345 - (2.0/3.0*(1 - C1_)*
I)*
alpha*
rho*epsilon_
357 Cref1_*
R - ((Cref2_*C2_)*(k_/epsilon_))*
dev(P)
368 this->boundNormalStress(
R);
375 this->correctWallShearStress(
R);
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
dimensionedSymmTensor symm(const dimensionedSymmTensor &dt)
tmp< GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh >> grad(const GeometricField< Type, fvsPatchField, surfaceMesh > &ssf)
A class for handling words, derived from string.
BasicTurbulenceModel::rhoField rhoField
#define forAll(list, i)
Loop across all elements in list.
const dimensionedScalar G
Newtonian constant of gravitation.
A class for managing temporary objects.
Templated abstract base class for RAS turbulence models.
const dimensionedScalar alpha
Fine-structure constant: default SI units: [].
bool read(const char *, int32_t &)
volScalarField & bound(volScalarField &, const dimensionedScalar &lowerBound)
Bound the given scalar field if it has gone unbounded.
dimensioned< scalar > mag(const dimensioned< Type > &)
static const wallDist & New(const fvMesh &mesh)
tmp< fvMatrix< Type > > Sp(const DimensionedField< scalar, volMesh > &, const GeometricField< Type, fvPatchField, volMesh > &)
#define R(A, B, C, D, E, F, K, M)
Reynolds-stress turbulence model base class.
BasicTurbulenceModel::alphaField alphaField
virtual void correctNut()
Update the eddy-viscosity.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
tmp< volSymmTensorField > DepsilonEff() const
Return the effective diffusivity for epsilon.
tmp< fvMatrix< Type > > laplacian(const GeometricField< Type, fvPatchField, volMesh > &vf, const word &name)
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
dimensionedScalar pow(const dimensionedScalar &ds, const dimensionedScalar &expt)
virtual bool read()
Read model coefficients if they have changed.
static const sphericalTensor I(1)
Generic dimensioned Type class.
virtual void correct()
Solve the turbulence equations and correct eddy-Viscosity and.
SolverPerformance< Type > solve(fvMatrix< Type > &, const dictionary &)
Solve returning the solution statistics given convergence tolerance.
tmp< fvMatrix< Type > > ddt(const GeometricField< Type, fvPatchField, volMesh > &vf)
dimensionedSymmTensor sqr(const dimensionedVector &dv)
dimensionedScalar sqrt(const dimensionedScalar &ds)
BasicTurbulenceModel::transportModel transportModel
tmp< volSymmTensorField > DREff() const
Return the effective diffusivity for R.
virtual const labelUList & faceCells() const
Return faceCells.
dimensionedScalar tr(const dimensionedSphericalTensor &dt)
fileName::Type type(const fileName &)
Return the file type: DIRECTORY or FILE.
Generic GeometricField class.
tmp< fvMatrix< Type > > div(const surfaceScalarField &flux, const GeometricField< Type, fvPatchField, volMesh > &vf, const word &name)
dimensioned< Type > min(const dimensioned< Type > &, const dimensioned< Type > &)
dimensionedSymmTensor twoSymm(const dimensionedSymmTensor &dt)
static Switch lookupOrAddToDict(const word &, dictionary &, const Switch &defaultValue=false)
Construct from dictionary, supplying default value so that if the.
dimensionedSymmTensor dev(const dimensionedSymmTensor &dt)