Computes a single-mesh resolution index according to Pope's index, which is used as a LES/DES quality/post-verification metric that does not require any experimental or DNS data. More...
Public Member Functions | |
TypeName ("PopeIndex") | |
Runtime type information. More... | |
PopeIndex (const word &name, const fvMesh &mesh, const dictionary &dict) | |
Construct from components. More... | |
PopeIndex (const PopeIndex &)=delete | |
No copy construct. More... | |
void | operator= (const PopeIndex &)=delete |
No copy assignment. More... | |
virtual | ~PopeIndex ()=default |
virtual bool | read (const dictionary &dict) |
Read top-level dictionary. More... | |
virtual bool | execute () |
Calculate the result field. More... | |
virtual bool | write () |
Write the result field. More... | |
Public Member Functions inherited from resolutionIndexModel | |
TypeName ("resolutionIndexModel") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, resolutionIndexModel, dictionary,(const word &name, const fvMesh &mesh, const dictionary &dict),(name, mesh, dict)) | |
resolutionIndexModel (const word &name, const fvMesh &mesh, const dictionary &dict) | |
Construct from components. More... | |
resolutionIndexModel (const resolutionIndexModel &)=delete | |
No copy construct. More... | |
void | operator= (const resolutionIndexModel &)=delete |
No copy assignment. More... | |
virtual | ~resolutionIndexModel ()=default |
Destructor. More... | |
const fvMesh & | mesh () const noexcept |
Return const reference to the mesh. More... | |
const word & | resultName () const noexcept |
Return const reference to the result name. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from resolutionIndexModel | |
static autoPtr< resolutionIndexModel > | New (const word &name, const fvMesh &mesh, const dictionary &dict) |
Return a reference to the selected resolutionIndex model. More... | |
Protected Member Functions inherited from resolutionIndexModel | |
template<class GeoFieldType > | |
GeoFieldType & | getOrReadField (const word &fieldName) const |
Return requested field from the object registry or read+register the field to the object registry. More... | |
tmp< volScalarField > | V () const |
Return cell volume field. More... | |
Computes a single-mesh resolution index according to Pope's index, which is used as a LES/DES quality/post-verification metric that does not require any experimental or DNS data.
with
where
= | Pope's index [-] | |
= | Total turbulent kinetic energy [m^2/s^2] | |
= | Resolved turbulent kinetic energy [m^2/s^2] | |
= | Subgrid-scale turbulent kinetic energy [m^2/s^2] | |
= | Numerical turbulent kinetic energy [m^2/s^2] |
Inclusion of is optional, and set as true
by default:
where
= | Empirical constant [-] | |
= | Characteristic length scale with [m] | |
= | Cell volume [m^3] | |
= | Filter length scale [m] |
Typical criterion for acceptable-quality resolution:
Required fields:
U | Velocity [m/s] UMean | Mean velocity [m/s] k | Subgrid-scale turbulent kinetic energy [m^2/s^2] delta | Filter length [m]
References:
Governing equation (tag:P): Pope, S. B. (2000). Turbulent flows. Cambridge, UK: Cambridge Univ. Press DOI:10.1017/CBO9780511840531 Governing equations for the denominator kNum term (tag:CKJ): Celik, I., Klein, M., & Janicka, J. (2009). Assessment measures for engineering LES applications. Journal of fluids engineering, 131(3). DOI:10.1115/1.3059703
system/controlDict.functions
: resolutionIndex1 { // Inherited entries ... model PopeIndex; // Optional entries U <word>; UMean <word>; k <word>; delta <word>; includeKnum <bool>; // Conditional entries // when includeKnum = true Cn <scalar>; }
where the entries mean:
Property | Description | Type | Reqd | Deflt |
---|---|---|---|---|
model | Model name: PopeIndex | word | yes | - |
U | Name of velocity field | word | no | U |
UMean | Name of mean velocity field | word | no | UMean |
k | Name of subgrid-scale turbulent kinetic energy field | word | no | k |
delta | Name of filter field | word | no | delta |
includeKnum | Flag to include numerical k field | bool | no | true |
Cn | Empirical constant | choice | no | 1.0 |
Definition at line 238 of file PopeIndex.H.
PopeIndex | ( | const word & | name, |
const fvMesh & | mesh, | ||
const dictionary & | dict | ||
) |
Construct from components.
Definition at line 55 of file PopeIndex.C.
References dict, and Foam::read().
|
virtualdefault |
TypeName | ( | "PopeIndex" | ) |
Runtime type information.
|
delete |
No copy assignment.
|
virtual |
Read top-level dictionary.
Reimplemented from resolutionIndexModel.
Definition at line 75 of file PopeIndex.C.
References dict, and resolutionIndexModel::read().
|
virtual |
Calculate the result field.
Implements resolutionIndexModel.
Definition at line 96 of file PopeIndex.C.
References Foam::mag(), Foam::magSqr(), Foam::max(), tmp< T >::ref(), U, and UMean().
|
virtual |
Write the result field.
Implements resolutionIndexModel.
Definition at line 127 of file PopeIndex.C.
References Foam::endl(), Foam::Info, Foam::tab, and Ostream::write().