This boundary condition provides a wall constraint on the turbulent kinetic energy dissipation rate, i.e. epsilon, and the turbulent kinetic energy production contribution, i.e. G, for atmospheric boundary layer modelling.
More...
Public Member Functions | |
| TypeName ("atmEpsilonWallFunction") | |
| Runtime type information. More... | |
| atmEpsilonWallFunctionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &) | |
| Construct from patch and internal field. More... | |
| atmEpsilonWallFunctionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &) | |
| Construct from patch, internal field and dictionary. More... | |
| atmEpsilonWallFunctionFvPatchScalarField (const atmEpsilonWallFunctionFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &) | |
| atmEpsilonWallFunctionFvPatchScalarField (const atmEpsilonWallFunctionFvPatchScalarField &) | |
| Construct as copy. More... | |
| virtual tmp< fvPatchScalarField > | clone () const |
| Construct and return a clone. More... | |
| atmEpsilonWallFunctionFvPatchScalarField (const atmEpsilonWallFunctionFvPatchScalarField &, const DimensionedField< scalar, volMesh > &) | |
| Construct as copy setting internal field reference. More... | |
| virtual tmp< fvPatchScalarField > | clone (const DimensionedField< scalar, volMesh > &iF) const |
| Construct and return a clone setting internal field reference. More... | |
| virtual | ~atmEpsilonWallFunctionFvPatchScalarField ()=default |
| Destructor. More... | |
| virtual void | autoMap (const fvPatchFieldMapper &) |
| Map (and resize as needed) from self given a mapping object. More... | |
| virtual void | rmap (const fvPatchScalarField &, const labelList &) |
| Reverse map the given fvPatchField onto this fvPatchField. More... | |
| virtual void | write (Ostream &) const |
| Write. More... | |
Public Member Functions inherited from epsilonWallFunctionFvPatchScalarField | |
| TypeName ("epsilonWallFunction") | |
| Runtime type information. More... | |
| epsilonWallFunctionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &) | |
| Construct from patch and internal field. More... | |
| epsilonWallFunctionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &) | |
| Construct from patch, internal field and dictionary. More... | |
| epsilonWallFunctionFvPatchScalarField (const epsilonWallFunctionFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &) | |
| epsilonWallFunctionFvPatchScalarField (const epsilonWallFunctionFvPatchScalarField &) | |
| Construct as copy. More... | |
| epsilonWallFunctionFvPatchScalarField (const epsilonWallFunctionFvPatchScalarField &, const DimensionedField< scalar, volMesh > &) | |
| Construct as copy setting internal field reference. More... | |
| virtual | ~epsilonWallFunctionFvPatchScalarField ()=default |
| Destructor. More... | |
| scalarField & | G (bool init=false) |
| Return non-const access to the master's G field. More... | |
| scalarField & | epsilon (bool init=false) |
| Return non-const access to the master's epsilon field. More... | |
| virtual void | updateCoeffs () |
| Update the coefficients associated with the patch field. More... | |
| virtual void | updateWeightedCoeffs (const scalarField &weights) |
| Update the coefficients associated with the patch field. More... | |
| virtual void | manipulateMatrix (fvMatrix< scalar > &matrix) |
| Manipulate matrix. More... | |
| virtual void | manipulateMatrix (fvMatrix< scalar > &matrix, const scalarField &weights) |
| Manipulate matrix with given weights. More... | |
Public Member Functions inherited from fixedValueFvPatchField< scalar > | |
| TypeName ("fixedValue") | |
| Runtime type information. More... | |
| fixedValueFvPatchField (const fvPatch &, const DimensionedField< scalar, volMesh > &) | |
| Construct from patch and internal field. More... | |
| fixedValueFvPatchField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const scalar &value) | |
| Construct from patch, internal field and value. More... | |
| fixedValueFvPatchField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &, const bool valueRequired=true) | |
| Construct from patch, internal field and dictionary. More... | |
| fixedValueFvPatchField (const fixedValueFvPatchField< scalar > &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &) | |
| Construct by mapping the given fixedValueFvPatchField<Type> More... | |
| fixedValueFvPatchField (const fixedValueFvPatchField< scalar > &) | |
| Construct as copy. More... | |
| fixedValueFvPatchField (const fixedValueFvPatchField< scalar > &, const DimensionedField< scalar, volMesh > &) | |
| Construct as copy setting internal field reference. More... | |
| virtual bool | fixesValue () const |
| Return true if this patch field fixes a value. More... | |
| virtual bool | assignable () const |
| Return false: this patch field is not altered by assignment. More... | |
| virtual tmp< Field< scalar > > | valueInternalCoeffs (const tmp< scalarField > &) const |
| Return the matrix diagonal coefficients corresponding to the. More... | |
| virtual tmp< Field< scalar > > | valueBoundaryCoeffs (const tmp< scalarField > &) const |
| Return the matrix source coefficients corresponding to the. More... | |
| virtual tmp< Field< scalar > > | gradientInternalCoeffs () const |
| Return the matrix diagonal coefficients corresponding to the. More... | |
| virtual tmp< Field< scalar > > | gradientBoundaryCoeffs () const |
| Return the matrix source coefficients corresponding to the. More... | |
| virtual void | operator= (const UList< scalar > &) |
| virtual void | operator= (const fvPatchField< scalar > &) |
| virtual void | operator= (const scalar &) |
| virtual void | operator+= (const fvPatchField< scalar > &) |
| virtual void | operator+= (const Field< scalar > &) |
| virtual void | operator+= (const scalar &) |
| virtual void | operator-= (const fvPatchField< scalar > &) |
| virtual void | operator-= (const Field< scalar > &) |
| virtual void | operator-= (const scalar &) |
| virtual void | operator*= (const fvPatchField< scalar > &) |
| virtual void | operator*= (const Field< scalar > &) |
| virtual void | operator*= (const scalar) |
| virtual void | operator/= (const fvPatchField< scalar > &) |
| virtual void | operator/= (const Field< scalar > &) |
| virtual void | operator/= (const scalar) |
Public Member Functions inherited from fvPatchField< scalar > | |
| TypeName ("fvPatchField") | |
| Runtime type information. More... | |
| declareRunTimeSelectionTable (tmp, fvPatchField, patch,(const fvPatch &p, const DimensionedField< scalar, volMesh > &iF),(p, iF)) | |
| declareRunTimeSelectionTable (tmp, fvPatchField, patchMapper,(const fvPatchField< scalar > &ptf, const fvPatch &p, const DimensionedField< scalar, volMesh > &iF, const fvPatchFieldMapper &m),(dynamic_cast< const fvPatchFieldType & >(ptf), p, iF, m)) | |
| declareRunTimeSelectionTable (tmp, fvPatchField, dictionary,(const fvPatch &p, const DimensionedField< scalar, volMesh > &iF, const dictionary &dict),(p, iF, dict)) | |
| fvPatchField (const fvPatch &, const DimensionedField< scalar, volMesh > &) | |
| Construct from patch and internal field. More... | |
| fvPatchField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const scalar &value) | |
| Construct from patch, internal field and value. More... | |
| fvPatchField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const word &patchType) | |
| Construct from patch and internal field and patch type. More... | |
| fvPatchField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const Field< scalar > &) | |
| Construct from patch and internal field and patch field. More... | |
| fvPatchField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &, const bool valueRequired=true) | |
| Construct from patch, internal field and dictionary. More... | |
| fvPatchField (const fvPatchField< scalar > &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &) | |
| Construct by mapping the given fvPatchField onto a new patch. More... | |
| fvPatchField (const fvPatchField< scalar > &) | |
| Construct as copy. More... | |
| fvPatchField (const fvPatchField< scalar > &, const DimensionedField< scalar, volMesh > &) | |
| Construct as copy setting internal field reference. More... | |
| Foam::tmp< Foam::fvPatchField< scalar > > | NewCalculatedType (const fvPatchField< Type2 > &pf) |
| virtual | ~fvPatchField ()=default |
| Destructor. More... | |
| virtual bool | coupled () const |
| Return true if this patch field is coupled. More... | |
| const objectRegistry & | db () const |
| Return local objectRegistry. More... | |
| const fvPatch & | patch () const |
| Return patch. More... | |
| const DimensionedField< scalar, volMesh > & | internalField () const |
| Return dimensioned internal field reference. More... | |
| const Field< scalar > & | primitiveField () const |
| Return internal field reference. More... | |
| const word & | patchType () const |
| Optional patch type. More... | |
| word & | patchType () |
| Optional patch type. More... | |
| bool | updated () const |
| Return true if the boundary condition has already been updated. More... | |
| bool | manipulatedMatrix () const |
| Return true if the matrix has already been manipulated. More... | |
| virtual tmp< Field< scalar > > | snGrad () const |
| Return patch-normal gradient. More... | |
| virtual tmp< Field< scalar > > | snGrad (const scalarField &deltaCoeffs) const |
| Return patch-normal gradient for coupled-patches. More... | |
| virtual tmp< Field< scalar > > | patchInternalField () const |
| Return internal field next to patch as patch field. More... | |
| virtual void | patchInternalField (Field< scalar > &) const |
| Return internal field next to patch as patch field. More... | |
| virtual tmp< Field< scalar > > | patchNeighbourField () const |
| Return patchField on the opposite patch of a coupled patch. More... | |
| virtual void | initEvaluate (const Pstream::commsTypes commsType=Pstream::commsTypes::blocking) |
| Initialise the evaluation of the patch field. More... | |
| virtual void | evaluate (const Pstream::commsTypes commsType=Pstream::commsTypes::blocking) |
| Evaluate the patch field, sets Updated to false. More... | |
| virtual tmp< Field< scalar > > | valueInternalCoeffs (const tmp< Field< scalar >> &) const |
| Return the matrix diagonal coefficients corresponding to the. More... | |
| virtual tmp< Field< scalar > > | valueBoundaryCoeffs (const tmp< Field< scalar >> &) const |
| Return the matrix source coefficients corresponding to the. More... | |
| virtual tmp< Field< scalar > > | gradientInternalCoeffs (const scalarField &deltaCoeffs) const |
| Return the matrix diagonal coefficients corresponding to the. More... | |
| virtual tmp< Field< scalar > > | gradientBoundaryCoeffs (const scalarField &deltaCoeffs) const |
| Return the matrix source coefficients corresponding to the. More... | |
| void | check (const fvPatchField< scalar > &) const |
| Check fvPatchField<Type> against given fvPatchField<Type> More... | |
| virtual void | operator== (const fvPatchField< scalar > &) |
| virtual void | operator== (const Field< scalar > &) |
| virtual void | operator== (const scalar &) |
Protected Member Functions | |
| virtual void | calculate (const turbulenceModel &turbulence, const List< scalar > &cornerWeights, const fvPatch &patch, scalarField &G, scalarField &epsilon) |
| Calculate the epsilon and G. More... | |
Protected Member Functions inherited from epsilonWallFunctionFvPatchScalarField | |
| virtual void | setMaster () |
| virtual void | createAveragingWeights () |
| virtual epsilonWallFunctionFvPatchScalarField & | epsilonPatch (const label patchi) |
| Helper function to return non-const access to an epsilon patch. More... | |
| virtual void | calculateTurbulenceFields (const turbulenceModel &turbulence, scalarField &G0, scalarField &epsilon0) |
| Main driver to calculate the turbulence fields. More... | |
| virtual label & | master () |
| Return non-const access to the master patch ID. More... | |
Protected Attributes | |
| autoPtr< PatchFunction1< scalar > > | z0_ |
| Surface roughness length field [m]. More... | |
Protected Attributes inherited from epsilonWallFunctionFvPatchScalarField | |
| const bool | lowReCorrection_ |
| Apply low-Re correction term (default = no) More... | |
| bool | initialised_ |
| Initialised flag. More... | |
| label | master_ |
| Master patch ID. More... | |
| scalarField | G_ |
| Local copy of turbulence G field. More... | |
| scalarField | epsilon_ |
| Local copy of turbulence epsilon field. More... | |
| List< List< scalar > > | cornerWeights_ |
| List of averaging corner weights. More... | |
Additional Inherited Members | |
Public Types inherited from fvPatchField< scalar > | |
| typedef fvPatch | Patch |
| typedef calculatedFvPatchField< scalar > | Calculated |
Static Public Member Functions inherited from fvPatchField< scalar > | |
| static tmp< fvPatchField< scalar > > | New (const word &, const fvPatch &, const DimensionedField< scalar, volMesh > &) |
| Return a pointer to a new patchField created on freestore given. More... | |
| static tmp< fvPatchField< scalar > > | New (const word &, const word &actualPatchType, const fvPatch &, const DimensionedField< scalar, volMesh > &) |
| Return a pointer to a new patchField created on freestore given. More... | |
| static tmp< fvPatchField< scalar > > | New (const fvPatchField< scalar > &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &) |
| Return a pointer to a new patchField created on freestore from. More... | |
| static tmp< fvPatchField< scalar > > | New (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &) |
| Return a pointer to a new patchField created on freestore. More... | |
| static tmp< fvPatchField< scalar > > | NewCalculatedType (const fvPatch &) |
| Return a pointer to a new calculatedFvPatchField created on. More... | |
| static tmp< fvPatchField< scalar > > | NewCalculatedType (const fvPatchField< Type2 > &) |
| Return a pointer to a new calculatedFvPatchField created on. More... | |
| static const word & | calculatedType () |
| Return the type of the calculated for of fvPatchField. More... | |
Static Public Attributes inherited from fvPatchField< scalar > | |
| static int | disallowGenericFvPatchField |
| Debug switch to disallow the use of genericFvPatchField. More... | |
Static Protected Attributes inherited from epsilonWallFunctionFvPatchScalarField | |
| static scalar | tolerance_ = 1e-5 |
| Tolerance used in weighted calculations. More... | |
This boundary condition provides a wall constraint on the turbulent kinetic energy dissipation rate, i.e. epsilon, and the turbulent kinetic energy production contribution, i.e. G, for atmospheric boundary layer modelling.
Theoretical expressions (tags:PGVB, RH):
Parente, A., Gorlé, C., Van Beeck, J., & Benocci, C. (2011).
Improved k–ε model and wall function formulation
for the RANS simulation of ABL flows.
J. of wind engineering and industrial aerodynamics, 99(4), 267-278.
DOI:10.1016/j.jweia.2010.12.017
Richards, P. J., & Hoxey, R. P. (1993).
Appropriate boundary conditions for computational wind
engineering models using the k-ε turbulence model.
In Computational Wind Engineering 1 (pp. 145-153).
DOI:10.1016/B978-0-444-81688-7.50018-8
Required fields:
epsilon | Turbulent kinetic energy dissipation rate [m2/s3]
<patchName>
{
// Mandatory entries (unmodifiable)
type atmEpsilonWallFunction;
// Mandatory entries (runtime modifiable)
z0 uniform 0.001;
// Optional (inherited) entries
...
}
where the entries mean:
| Property | Description | Type | Req'd | Dflt |
|---|---|---|---|---|
type | Type name: atmEpsilonWallFunction | word | yes | - |
z0 | Surface roughness length [m] | PatchFunction1<scalar> | yes | - |
The inherited entries are elaborated in:
Definition at line 127 of file atmEpsilonWallFunctionFvPatchScalarField.H.
| atmEpsilonWallFunctionFvPatchScalarField | ( | const fvPatch & | p, |
| const DimensionedField< scalar, volMesh > & | iF | ||
| ) |
Construct from patch and internal field.
Definition at line 121 of file atmEpsilonWallFunctionFvPatchScalarField.C.
Referenced by atmEpsilonWallFunctionFvPatchScalarField::clone().
| atmEpsilonWallFunctionFvPatchScalarField | ( | const fvPatch & | p, |
| const DimensionedField< scalar, volMesh > & | iF, | ||
| const dictionary & | dict | ||
| ) |
Construct from patch, internal field and dictionary.
Definition at line 147 of file atmEpsilonWallFunctionFvPatchScalarField.C.
| atmEpsilonWallFunctionFvPatchScalarField | ( | const atmEpsilonWallFunctionFvPatchScalarField & | ptf, |
| const fvPatch & | p, | ||
| const DimensionedField< scalar, volMesh > & | iF, | ||
| const fvPatchFieldMapper & | mapper | ||
| ) |
Construct by mapping given atmEpsilonWallFunctionFvPatchScalarField onto a new patch
Definition at line 133 of file atmEpsilonWallFunctionFvPatchScalarField.C.
Construct as copy.
Definition at line 160 of file atmEpsilonWallFunctionFvPatchScalarField.C.
| atmEpsilonWallFunctionFvPatchScalarField | ( | const atmEpsilonWallFunctionFvPatchScalarField & | ewfpsf, |
| const DimensionedField< scalar, volMesh > & | iF | ||
| ) |
Construct as copy setting internal field reference.
Definition at line 171 of file atmEpsilonWallFunctionFvPatchScalarField.C.
|
virtualdefault |
Destructor.
|
protectedvirtual |
Calculate the epsilon and G.
Reimplemented from epsilonWallFunctionFvPatchScalarField.
Definition at line 38 of file atmEpsilonWallFunctionFvPatchScalarField.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryField(), nutWallFunctionFvPatchScalarField::Cmu(), Foam::constant::electromagnetic::epsilon0, Foam::exit(), FatalErrorInFunction, Foam::FatalIOError, forAll, Foam::constant::electromagnetic::G0, k, turbulenceModel::k(), nutWallFunctionFvPatchScalarField::kappa(), Foam::mag(), turbulenceModel::nu(), Foam::foamVersion::patch, Foam::pow(), Foam::pow025(), fvPatchField< Type >::snGrad(), Foam::sqr(), Foam::sqrt(), turbulenceModel::U(), y, turbulenceModel::y(), yPlus, and nutWallFunctionFvPatchScalarField::yPlusLam().
| TypeName | ( | "atmEpsilonWallFunction" | ) |
Runtime type information.
|
inlinevirtual |
Construct and return a clone.
Reimplemented from epsilonWallFunctionFvPatchScalarField.
Definition at line 193 of file atmEpsilonWallFunctionFvPatchScalarField.H.
References atmEpsilonWallFunctionFvPatchScalarField::atmEpsilonWallFunctionFvPatchScalarField().
|
inlinevirtual |
Construct and return a clone setting internal field reference.
Reimplemented from epsilonWallFunctionFvPatchScalarField.
Definition at line 210 of file atmEpsilonWallFunctionFvPatchScalarField.H.
References atmEpsilonWallFunctionFvPatchScalarField::atmEpsilonWallFunctionFvPatchScalarField().
|
virtual |
Map (and resize as needed) from self given a mapping object.
Reimplemented from fvPatchField< scalar >.
Definition at line 184 of file atmEpsilonWallFunctionFvPatchScalarField.C.
|
virtual |
Reverse map the given fvPatchField onto this fvPatchField.
Reimplemented from fvPatchField< scalar >.
Definition at line 194 of file atmEpsilonWallFunctionFvPatchScalarField.C.
References atmEpsilonWallFunctionFvPatchScalarField::z0_.
|
virtual |
Write.
Reimplemented from epsilonWallFunctionFvPatchScalarField.
Definition at line 209 of file atmEpsilonWallFunctionFvPatchScalarField.C.
References Foam::vtk::write().
|
protected |
Surface roughness length field [m].
Definition at line 136 of file atmEpsilonWallFunctionFvPatchScalarField.H.
Referenced by atmEpsilonWallFunctionFvPatchScalarField::rmap().