48void Foam::LESModels::IDDESDelta::calcDelta()
64 scalarField& faceToFacenMax = tfaceToFacenMax.ref().primitiveFieldRef();
71 scalar maxDelta = 0.0;
77 label facei = cFaces[cFacei];
78 const point& fci = faceCentres[facei];
82 label facej = cFaces[cFacej];
83 const point& fcj = faceCentres[facej];
84 scalar ndfc = nci & (fcj - fci);
93 faceToFacenMax[celli] = maxDelta;
97 label nD =
mesh.nGeometricD();
102 <<
"Case is 2D, LES is not strictly applicable" <<
nl
111 delta_.primitiveFieldRef() =
127 delta_.correctBoundaryConditions();
133Foam::LESModels::IDDESDelta::IDDESDelta
144 dict.optionalSubDict(
type() +
"Coeffs").getOrDefault<scalar>
159 dict.optionalSubDict(
type() +
"Coeffs"),
165 Info<<
"Employing " << maxDeltaxyz::typeName <<
" for hmax" <<
endl;
173 dict.optionalSubDict(
type() +
"Coeffs")
188 coeffsDict.readIfPresent<scalar>(
"Cw", Cw_);
196 if (turbulenceModel_.mesh().changing())
Macros for easy insertion into run-time selection tables.
#define addToRunTimeSelectionTable(baseType, thisType, argNames)
Add to construction table with typeName as the key.
static tmp< GeometricField< scalar, fvPatchField, volMesh > > New(const word &name, IOobjectOption::registerOption regOpt, const Mesh &mesh, const dimensionSet &dims, const word &patchFieldType=fvPatchField< scalar >::calculatedType())
@ NO_REGISTER
Do not request registration (bool: false).
static word groupName(StringType base, const word &group)
Create dot-delimited name.group string.
const volScalarField & hmax() const
Return the hmax delta field.
void read(const dictionary &)
Read the LESdelta dictionary.
Abstract base class for LES deltas.
LESdelta(const LESdelta &)=delete
No copy construct.
static autoPtr< LESdelta > New(const word &name, const turbulenceModel &turbulence, const dictionary &dict, const word &lookupName="delta")
Return a reference to the selected LES delta.
const turbulenceModel & turbulence() const
Return turbulenceModel reference.
const turbulenceModel & turbulenceModel_
static FOAM_NO_DANGLING_REFERENCE const wallDist & New(const fvMesh &mesh, Args &&... args)
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
bool readIfPresent(const word &keyword, T &val, enum keyType::option matchOpt=keyType::REGEX) const
Find an entry if present, and assign to T val. FatalIOError if it is found and the number of tokens i...
Mesh data needed to do the Finite Volume discretisation.
Delta calculated by taking the maximum distance between the cell centre and any face centre....
Abstract base class for turbulence models (RAS, LES and laminar).
const fvMesh & mesh() const
A Vector of values with scalar precision, where scalar is float/double depending on the compilation f...
const volVectorField & n() const
Return reference to cached normal-to-wall field.
A class for handling words, derived from Foam::string.
#define defineTypeNameAndDebug(Type, DebugSwitch)
Define the typeName and debug information.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
#define WarningInFunction
Report a warning using Foam::Warning.
Namespace for LES SGS models.
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
GeometricField< vector, fvPatchField, volMesh > volVectorField
List< label > labelList
A List of labels.
const dimensionSet dimLength(0, 1, 0, 0, 0, 0, 0)
GeometricField< scalar, fvPatchField, volMesh > volScalarField
messageStream Info
Information stream (stdout output on master, null elsewhere).
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
Ostream & endl(Ostream &os)
Add newline and flush stream.
List< cell > cellList
List of cell.
label min(const labelHashSet &set, label minValue=labelMax)
Find the min value in labelHashSet, optionally limited by second argument.
Field< vector > vectorField
Specialisation of Field<T> for vector.
vector point
Point is a vector.
static constexpr const zero Zero
Global zero (0).
error FatalError
Error stream (stdout output on all processes), with additional 'FOAM FATAL ERROR' header text and sta...
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for expressions::valueTypeCode::INVALID.
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
errorManipArg< error, int > exit(error &err, const int errNo=1)
constexpr char nl
The newline '\n' character (0x0a).
#define forAll(list, i)
Loop across all elements in list.