45 void Foam::LESModels::vanDriestDelta::calcDelta()
47 const fvMesh& mesh = momentumTransportModel_.mesh();
50 const tmp<volScalarField> tnu = momentumTransportModel_.nu();
52 tmp<volScalarField> nuSgs = momentumTransportModel_.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 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 (momentumTransportModel_.mesh().time().timeIndex() % calcInterval_ == 0)
164 geometricDelta_().correct();
static word group(const word &name)
Return group (extension part of name)
#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
static autoPtr< LESdelta > New(const word &name, const momentumTransportModel &turbulence, const dictionary &dict)
Return a reference to the selected LES delta.
A list of keyword definitions, which are a keyword followed by any number of values (e...
Abstract base class for LES deltas.
addToRunTimeSelectionTable(LESdelta, cubeRootVolDelta, dictionary)
dimensionedScalar sqrt(const dimensionedScalar &ds)
GeometricField< vector, fvPatchField, volMesh > volVectorField
bool read(Istream &, const bool keepHeader=false)
Read dictionary from Istream, optionally keeping the header.
Macros for easy insertion into run-time selection tables.
const dimensionSet dimLength
GeometricField< scalar, fvPatchField, volMesh > volScalarField
vanDriestDelta(const word &name, const momentumTransportModel &turbulence, const dictionary &)
Construct from name, momentumTransportModel and dictionary.
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.
dimensioned< Type > min(const dimensioned< Type > &, const dimensioned< Type > &)
defineTypeNameAndDebug(cubeRootVolDelta, 0)
Abstract base class for turbulence models (RAS, LES and laminar).
const volVectorField & U() const
Access function to velocity field.
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,.
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
fileType type(const fileName &, const bool checkVariants=true, const bool followLink=true)
Return the file type: directory or file.
static scalar yPlusCutOff
cut-off value for y+
virtual void read(const dictionary &)
Read the LESdelta dictionary.
dimensioned< scalar > mag(const dimensioned< Type > &)