44 void Foam::LESModels::IDDESDelta::calcDelta()
47 const fvMesh& mesh = momentumTransportModel_.
mesh();
52 tmp<volScalarField> tfaceToFacenMax
62 scalarField& faceToFacenMax = tfaceToFacenMax.ref().primitiveFieldRef();
64 const cellList& cells = mesh.cells();
65 const vectorField& faceCentres = mesh.faceCentres();
69 scalar maxDelta = 0.0;
71 const vector nci = n[celli];
75 label facei = cFaces[cFacei];
76 const point& fci = faceCentres[facei];
80 label facej = cFaces[cFacej];
81 const point& fcj = faceCentres[facej];
82 scalar ndfc = nci & (fcj - fci);
91 faceToFacenMax[celli] = maxDelta;
95 label nD = mesh.nGeometricD();
100 <<
"Case is 2D, LES is not strictly applicable" <<
nl 109 delta_.primitiveFieldRef() =
169 if (momentumTransportModel_.mesh().changing())
static word group(const word &name)
Return group (extension part of name)
#define forAll(list, i)
Loop across all elements in list.
layerAndWeight max(const layerAndWeight &a, const layerAndWeight &b)
FvWallInfoData< WallInfo, label > label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
errorManipArg< error, int > exit(error &err, const int errNo=1)
const volVectorField & n() const
Return reference to cached normal-to-wall field.
A list of keyword definitions, which are a keyword followed by any number of values (e...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
Abstract base class for LES deltas.
static tmp< GeometricField< scalar, fvPatchField, volMesh > > New(const word &name, const Internal &, const PtrList< fvPatchField< scalar >> &)
Return a temporary field constructed from name,.
addToRunTimeSelectionTable(LESdelta, cubeRootVolDelta, dictionary)
Ostream & endl(Ostream &os)
Add newline and flush stream.
Vector< scalar > vector
A scalar version of the templated Vector.
void read(const dictionary &)
Read the LESdelta dictionary.
GeometricField< vector, fvPatchField, volMesh > volVectorField
Macros for easy insertion into run-time selection tables.
const dimensionSet dimLength
GeometricField< scalar, fvPatchField, volMesh > volScalarField
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)
IDDESDelta(const word &name, const momentumTransportModel &turbulence, const dictionary &)
Construct from name, mesh and IOdictionary.
bool readIfPresent(const word &, T &, bool recursive=false, bool patternMatch=true) const
Find an entry if present, and assign to T.
layerAndWeight min(const layerAndWeight &a, const layerAndWeight &b)
List< label > labelList
A List of labels.
const Mesh & mesh() const
Return mesh.
static wallDist & New(fvMesh &mesh)
defineTypeNameAndDebug(cubeRootVolDelta, 0)
Abstract base class for turbulence models (RAS, LES and laminar).
const volVectorField & U() const
Access function to velocity field.
vector point
Point is a vector.
T lookupOrDefault(const word &, const T &, bool recursive=false, bool patternMatch=true) const
Find and return a T,.
#define WarningInFunction
Report a warning using Foam::Warning.
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.
Field< vector > vectorField
Specialisation of Field<T> for vector.
List< cell > cellList
list of cells