45 void Foam::LESModels::vanDriestDelta::calcDelta()
47 const fvMesh& mesh = turbulenceModel_.mesh();
50 const tmp<volScalarField> tnu = turbulenceModel_.nu();
52 tmp<volScalarField> nuSgs = turbulenceModel_.nut();
59 mesh.time().constant(),
67 volScalarField::Boundary& ystarBf = ystar.boundaryFieldRef();
71 if (isA<wallFvPatch>(patches[patchi]))
78 nuw/
sqrt((nuw + nuSgsw)*
mag(Uw.snGrad()) + vSmall);
84 wallDistData<wallPointYPlus>
y(mesh, ystar);
89 static_cast<const volScalarField&>(geometricDelta_()),
90 (kappa_/Cdelta_)*((scalar(1) + small) -
exp(-
y/ystar/Aplus_))*
y 97 Foam::LESModels::vanDriestDelta::vanDriestDelta
140 delta_ = geometricDelta_();
150 geometricDelta_().
read(coeffsDict);
152 coeffsDict.readIfPresent<scalar>(
"Aplus", Aplus_);
153 coeffsDict.readIfPresent<scalar>(
"Cdelta", Cdelta_);
154 coeffsDict.readIfPresent<
label>(
"calcInterval", calcInterval_);
162 if (turbulenceModel_.mesh().time().timeIndex() % calcInterval_ == 0)
164 geometricDelta_().correct();
static word group(const word &name)
Return group (extension part of name)
bool read(Istream &)
Read dictionary from Istream.
#define forAll(list, i)
Loop across all elements in list.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
fvPatchField< vector > fvPatchVectorField
addToRunTimeSelectionTable(LESfluidThermoCompressibleTurbulenceModel, SmagorinskyLESfluidThermoCompressibleTurbulenceModel, dictionary)
const volVectorField & U() const
Access function to velocity field.
A list of keyword definitions, which are a keyword followed by any number of values (e...
Abstract base class for LES deltas.
dimensionedScalar sqrt(const dimensionedScalar &ds)
GeometricField< vector, fvPatchField, volMesh > volVectorField
Abstract base class for turbulence models (RAS, LES and laminar).
Macros for easy insertion into run-time selection tables.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
dimensionedScalar exp(const dimensionedScalar &ds)
const dictionary & optionalSubDict(const word &) const
Find and return a sub-dictionary if found.
A class for handling words, derived from string.
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
static word groupName(Name name, const word &group)
bool readIfPresent(const word &, T &, bool recursive=false, bool patternMatch=true) const
Find an entry if present, and assign to T.
static autoPtr< LESdelta > New(const word &name, const turbulenceModel &turbulence, const dictionary &dict)
Return a reference to the selected LES delta.
dimensioned< Type > min(const dimensioned< Type > &, const dimensioned< Type > &)
fileName::Type type(const fileName &, const bool followLink=true)
Return the file type: DIRECTORY or FILE.
defineTypeNameAndDebug(cubeRootVolDelta, 0)
PtrList< fvPatch > fvPatchList
container classes for fvPatch
T lookupOrDefault(const word &, const T &, bool recursive=false, bool patternMatch=true) const
Find and return a T,.
const dimensionSet dimLength(0, 1, 0, 0, 0, 0, 0)
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
static scalar yPlusCutOff
cut-off value for y+
virtual void read(const dictionary &)
Read the LESdelta dictionary.
dimensioned< scalar > mag(const dimensioned< Type > &)