This boundary condition provides a wall constraint on the turbulent viscosity (i.e. nut) based on the turbulent kinetic energy (i.e. k) and velocity (i.e. U) for atmospheric boundary layer modelling.
More...
#include <atmNutWallFunctionFvPatchScalarField.H>


Public Member Functions | |
| TypeName ("atmNutWallFunction") | |
| Runtime type information. | |
| atmNutWallFunctionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &) | |
| Construct from patch and internal field. | |
| atmNutWallFunctionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &) | |
| Construct from patch, internal field and dictionary. | |
| atmNutWallFunctionFvPatchScalarField (const atmNutWallFunctionFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &) | |
| Construct by mapping given atmNutWallFunctionFvPatchScalarField onto a new patch. | |
| atmNutWallFunctionFvPatchScalarField (const atmNutWallFunctionFvPatchScalarField &) | |
| Construct as copy. | |
| atmNutWallFunctionFvPatchScalarField (const atmNutWallFunctionFvPatchScalarField &, const DimensionedField< scalar, volMesh > &) | |
| Construct as copy setting internal field reference. | |
| virtual tmp< fvPatchField< scalar > > | clone () const |
| Return a clone. | |
| virtual tmp< fvPatchField< scalar > > | clone (const DimensionedField< scalar, volMesh > &iF) const |
| Clone with an internal field reference. | |
| virtual void | autoMap (const fvPatchFieldMapper &) |
| Map (and resize as needed) from self given a mapping object. | |
| virtual void | rmap (const fvPatchScalarField &, const labelList &) |
| Reverse map the given fvPatchField onto this fvPatchField. | |
| virtual void | write (Ostream &) const |
| Write. | |
| Public Member Functions inherited from nutkWallFunctionFvPatchScalarField | |
| TypeName ("nutkWallFunction") | |
| Runtime type information. | |
| nutkWallFunctionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &) | |
| Construct from patch and internal field. | |
| nutkWallFunctionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &) | |
| Construct from patch, internal field and dictionary. | |
| nutkWallFunctionFvPatchScalarField (const nutkWallFunctionFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &) | |
| Construct by mapping given nutkWallFunctionFvPatchScalarField onto a new patch. | |
| nutkWallFunctionFvPatchScalarField (const nutkWallFunctionFvPatchScalarField &) | |
| Construct as copy. | |
| nutkWallFunctionFvPatchScalarField (const nutkWallFunctionFvPatchScalarField &, const DimensionedField< scalar, volMesh > &) | |
| Construct as copy setting internal field reference. | |
| virtual tmp< scalarField > | yPlus () const |
| Calculate and return the yPlus at the boundary. | |
| Public Member Functions inherited from nutWallFunctionFvPatchScalarField | |
| TypeName ("nutWallFunction") | |
| Runtime type information. | |
| nutWallFunctionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &) | |
| Construct from patch and internal field. | |
| nutWallFunctionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &) | |
| Construct from patch, internal field and dictionary. | |
| nutWallFunctionFvPatchScalarField (const nutWallFunctionFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &) | |
| Construct by mapping given nutWallFunctionFvPatchScalarField onto a new patch. | |
| nutWallFunctionFvPatchScalarField (const nutWallFunctionFvPatchScalarField &) | |
| Construct as copy. | |
| nutWallFunctionFvPatchScalarField (const nutWallFunctionFvPatchScalarField &, const DimensionedField< scalar, volMesh > &) | |
| Construct as copy setting internal field reference. | |
| const wallFunctionCoefficients & | wallCoeffs () const noexcept |
| Return wallFunctionCoefficients. | |
| virtual void | updateCoeffs () |
| Update the coefficients associated with the patch field. | |
Protected Member Functions | |
| virtual tmp< scalarField > | calcNut () const |
| Calculate the turbulent viscosity. | |
| void | writeLocalEntries (Ostream &) const |
| Write local wall function variables. | |
| Protected Member Functions inherited from nutkWallFunctionFvPatchScalarField | |
| void | writeLocalEntries (Ostream &) const |
| Write local wall function variables. | |
| Protected Member Functions inherited from nutWallFunctionFvPatchScalarField | |
| virtual const volVectorField & | U (const turbulenceModel &turb) const |
| Helper to return the velocity field either from the turbulence model (default) or the mesh database. | |
| virtual void | checkType () |
| Check the type of the patch. | |
| void | writeLocalEntries (Ostream &) const |
| Write local wall function variables. | |
Additional Inherited Members | |
| Static Public Member Functions inherited from nutWallFunctionFvPatchScalarField | |
| static const nutWallFunctionFvPatchScalarField & | nutw (const turbulenceModel &turbModel, const label patchi) |
| Return the nut patchField for the given wall patch. | |
| Protected Attributes inherited from nutWallFunctionFvPatchScalarField | |
| word | UName_ |
| Name of velocity field. | |
| wallFunctionCoefficients | wallCoeffs_ |
| Wall-function coefficients. | |
This boundary condition provides a wall constraint on the turbulent viscosity (i.e. nut) based on the turbulent kinetic energy (i.e. k) and velocity (i.e. U) for atmospheric boundary layer modelling.
The governing equation of the boundary condition:
![\[ \tau_w = {U^*_u} {U^*_k}
\]](form_33.png)
with
![\[ {U^*_u} = \frac{\kappa U_w}{ln(z_p / z_0)}
\]](form_34.png)
![\[ {U^*_k} = C_{\mu}^{1/4} \sqrt{k}
\]](form_35.png)
where
![]() | = | wall shear stress |
![]() | = | local friction velocity based on near-ground velocity |
![]() | = | local friction velocity based on near-ground k |
![]() | = | von Kármán constant |
![]() | = | near-ground velocity |
![]() | = | vertical coordinate |
![]() | = | surface roughness length [m] |
![]() | = | empirical model constant |
![]() | = | turbulent kinetic energy |
References:
Theoretical expressions (tags:RH, SBJM, SM):
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
Sørensen, N. N., Bechmann, A., Johansen, J., Myllerup, L.,
Botha, P., Vinther, S., & Nielsen, B. S. (2007).
Identification of severe wind conditions using
a Reynolds Averaged Navier-Stokes solver.
In Journal of Physics: Conference
series (Vol. 75, No. 1, p. 012053).
DOI:10.1088/1742-6596/75/1/012053
Sumner, J., & Masson, C. (2012).
k−ε simulations of the neutral atmospheric boundary layer:
analysis and correction of discretization errors on practical grids.
International journal for numerical
methods in fluids, 70(6), 724-741.
DOI:10.1002/fld.2709
Required fields:
nut | Turbulent viscosity [m2/s]
k | Turbulent kinetic energy [m2/s2]
<patchName>
{
// Mandatory entries
type atmNutWallFunction;
z0Min <scalar>;
z0 <PatchFunction1<scalar>>;
// Inherited entries
...
}
where the entries mean:
| Property | Description | Type | Reqd | Deflt |
|---|---|---|---|---|
type | Type name: nutAtmWallFunction | word | yes | - |
z0Min | Minimum surface roughness length [m] | scalar | yes | - |
z0 | Surface roughness length [m] | PatchFunction1<scalar> | yes | - |
The inherited entries are elaborated in:
Definition at line 200 of file atmNutWallFunctionFvPatchScalarField.H.
| atmNutWallFunctionFvPatchScalarField | ( | const fvPatch & | p, |
| const DimensionedField< scalar, volMesh > & | iF ) |
Construct from patch and internal field.
Definition at line 124 of file atmNutWallFunctionFvPatchScalarField.C.
References nutkWallFunctionFvPatchScalarField::nutkWallFunctionFvPatchScalarField(), and p.
Referenced by atmNutWallFunctionFvPatchScalarField(), atmNutWallFunctionFvPatchScalarField(), atmNutWallFunctionFvPatchScalarField(), and TypeName().


| atmNutWallFunctionFvPatchScalarField | ( | const fvPatch & | p, |
| const DimensionedField< scalar, volMesh > & | iF, | ||
| const dictionary & | dict ) |
Construct from patch, internal field and dictionary.
Definition at line 150 of file atmNutWallFunctionFvPatchScalarField.C.
References dict, Foam::New(), nutkWallFunctionFvPatchScalarField::nutkWallFunctionFvPatchScalarField(), and p.

| atmNutWallFunctionFvPatchScalarField | ( | const atmNutWallFunctionFvPatchScalarField & | ptf, |
| const fvPatch & | p, | ||
| const DimensionedField< scalar, volMesh > & | iF, | ||
| const fvPatchFieldMapper & | mapper ) |
Construct by mapping given atmNutWallFunctionFvPatchScalarField onto a new patch.
Definition at line 136 of file atmNutWallFunctionFvPatchScalarField.C.
References atmNutWallFunctionFvPatchScalarField(), clone(), nutkWallFunctionFvPatchScalarField::nutkWallFunctionFvPatchScalarField(), and p.

| atmNutWallFunctionFvPatchScalarField | ( | const atmNutWallFunctionFvPatchScalarField & | rwfpsf | ) |
Construct as copy.
Definition at line 171 of file atmNutWallFunctionFvPatchScalarField.C.
References atmNutWallFunctionFvPatchScalarField(), clone(), and nutkWallFunctionFvPatchScalarField::nutkWallFunctionFvPatchScalarField().

| atmNutWallFunctionFvPatchScalarField | ( | const atmNutWallFunctionFvPatchScalarField & | rwfpsf, |
| const DimensionedField< scalar, volMesh > & | iF ) |
Construct as copy setting internal field reference.
Definition at line 182 of file atmNutWallFunctionFvPatchScalarField.C.
References atmNutWallFunctionFvPatchScalarField(), clone(), and nutkWallFunctionFvPatchScalarField::nutkWallFunctionFvPatchScalarField().

|
protectedvirtual |
Calculate the turbulent viscosity.
Reimplemented from nutkWallFunctionFvPatchScalarField.
Definition at line 36 of file atmNutWallFunctionFvPatchScalarField.C.
References Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAll, IOobject::groupName(), k, Foam::log(), Foam::mag(), magUp, Foam::max(), tmp< T >::New(), nutWallFunctionFvPatchScalarField::nutw(), fvPatchField< Type >::patchInternalField(), Foam::pow025(), turbulenceModel::propertiesName, Foam::sqrt(), tauw, nutWallFunctionFvPatchScalarField::wallCoeffs_, and y.

|
protected |
Write local wall function variables.
Definition at line 108 of file atmNutWallFunctionFvPatchScalarField.C.
References os().
Referenced by write().


| TypeName | ( | "atmNutWallFunction" | ) |
Runtime type information.
References atmNutWallFunctionFvPatchScalarField().

|
inlinevirtual |
Return a clone.
Reimplemented from nutkWallFunctionFvPatchScalarField.
Definition at line 295 of file atmNutWallFunctionFvPatchScalarField.H.
References fvPatchField< Type >::Clone().
Referenced by atmNutWallFunctionFvPatchScalarField(), atmNutWallFunctionFvPatchScalarField(), and atmNutWallFunctionFvPatchScalarField().


|
inlinevirtual |
Clone with an internal field reference.
Reimplemented from nutkWallFunctionFvPatchScalarField.
Definition at line 303 of file atmNutWallFunctionFvPatchScalarField.H.
References fvPatchField< Type >::Clone().

|
virtual |
Map (and resize as needed) from self given a mapping object.
Definition at line 196 of file atmNutWallFunctionFvPatchScalarField.C.
|
virtual |
Reverse map the given fvPatchField onto this fvPatchField.
Definition at line 210 of file atmNutWallFunctionFvPatchScalarField.C.
References Foam::refCast().

|
virtual |
Write.
Reimplemented from nutkWallFunctionFvPatchScalarField.
Definition at line 228 of file atmNutWallFunctionFvPatchScalarField.C.
References os(), nutWallFunctionFvPatchScalarField::write(), writeLocalEntries(), and fvPatchField< Type >::writeValueEntry().
