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.3059703system/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 |
with
comparisons between a LES and a corresponding filtered DNS. Nonphysical results may occur.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().
