41template<
class BasicTurbulenceModel>
48 this->
nut_.correctBoundaryConditions();
51 BasicTurbulenceModel::correctNut();
55template<
class BasicTurbulenceModel>
64template<
class BasicTurbulenceModel>
65dynamicLagrangian<BasicTurbulenceModel>::dynamicLagrangian
67 const alphaField&
alpha,
73 const word& propertiesName,
93 IOobject::groupName(
"flm", this->alphaRhoPhi_.group()),
105 IOobject::groupName(
"fmm", this->alphaRhoPhi_.group()),
123 simpleFilter_(
U.
mesh()),
125 filter_(filterPtr_()),
127 flm0_(
"flm0", flm_.dimensions(),
Zero),
128 fmm0_(
"fmm0", fmm_.dimensions(), VSMALL)
132 this->printCoeffs(
type);
139template<
class BasicTurbulenceModel>
144 filter_.read(this->coeffDict());
145 theta_.readIfPresent(this->coeffDict());
154template<
class BasicTurbulenceModel>
157 if (!this->turbulence_)
163 const alphaField&
alpha = this->alpha_;
164 const rhoField&
rho = this->rho_;
184 2.0*
sqr(this->
delta())*(filter_(magS*S) - 4.0*magSf*Sf)
189 alpha*
rho*(1.0/(theta_.value()*this->delta()))*
pow(flm_*fmm_, 1.0/8.0)
Defines the attributes of an object for which implicit objectRegistry management is supported,...
Eddy viscosity LES SGS model base class.
virtual bool read()
Read model coefficients if they have changed.
BasicTurbulenceModel::alphaField alphaField
BasicTurbulenceModel::rhoField rhoField
virtual void correct()
Correct Eddy-Viscosity and related properties.
simpleFilter simpleFilter_
void correctNut(const tmp< volTensorField > &gradU)
Update sub-grid eddy-viscosity.
virtual void correctNut()
BasicTurbulenceModel::transportModel transportModel
autoPtr< LESfilter > filterPtr_
virtual bool read()
Read model coefficients if they have changed.
Abstract class for LES filters.
Generic dimensioned Type class.
void relax(const scalar alpha)
Relax matrix (for steady-state solution).
SolverPerformance< Type > solve(const dictionary &)
Solve returning the solution statistics.
void correct(GeometricField< Type, PatchField, GeoMesh > &field)
Apply correction to field.
Finite-volume options, which is an IOdictionary of values and a fv::optionList.
static options & New(const fvMesh &mesh)
Construct fvOptions and register to database if not present otherwise lookup and return.
virtual void correct()=0
Solve the turbulence equations and correct the turbulence viscosity.
A class for managing temporary objects.
Base-class for all transport models used by the incompressible turbulence models.
A class for handling words, derived from Foam::string.
autoPtr< surfaceVectorField > Uf
Namespace for LES SGS models.
tmp< GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh > > grad(const GeometricField< Type, fvsPatchField, surfaceMesh > &ssf)
tmp< fvMatrix< Type > > div(const surfaceScalarField &flux, const GeometricField< Type, fvPatchField, volMesh > &vf, const word &name)
tmp< fvMatrix< Type > > ddt(const GeometricField< Type, fvPatchField, volMesh > &vf)
zeroField Sp(const Foam::zero, const GeometricField< Type, fvPatchField, volMesh > &)
A no-op source.
dimensionedSymmTensor dev(const dimensionedSymmTensor &dt)
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh > > &tf1, const word &name, const dimensionSet &dimensions, const bool initCopy=false)
Global function forwards to reuseTmpDimensionedField::New.
GeometricField< vector, fvPatchField, volMesh > volVectorField
dimensionedSymmTensor sqr(const dimensionedVector &dv)
fvMatrix< scalar > fvScalarMatrix
volScalarField & bound(volScalarField &, const dimensionedScalar &lowerBound)
Bound the given scalar field if it has gone unbounded.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
GeometricField< scalar, fvsPatchField, surfaceMesh > surfaceScalarField
SymmTensor< Cmpt > devSymm(const SymmTensor< Cmpt > &st)
Return the deviatoric part of the symmetric part of a SymmTensor.
dimensionedScalar pow(const dimensionedScalar &ds, const dimensionedScalar &expt)
const word GlobalIOList< Tuple2< scalar, vector > >::typeName("scalarVectorTable")
GeometricField< tensor, fvPatchField, volMesh > volTensorField
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
GeometricField< symmTensor, fvPatchField, volMesh > volSymmTensorField
static constexpr const zero Zero
Global zero (0).
const vector L(dict.get< vector >("L"))