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().