This boundary condition provides a wall constraint on the turbulent viscosity, i.e. nut
, based on velocity, i.e. U
, for atmospheric boundary layer modelling. It is designed to be used in conjunction with the atmBoundaryLayerInletVelocity
boundary condition.
More...
Public Member Functions | |
TypeName ("atmNutUWallFunction") | |
Runtime type information. More... | |
atmNutUWallFunctionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &) | |
Construct from patch and internal field. More... | |
atmNutUWallFunctionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &) | |
Construct from patch, internal field and dictionary. More... | |
atmNutUWallFunctionFvPatchScalarField (const atmNutUWallFunctionFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &) | |
atmNutUWallFunctionFvPatchScalarField (const atmNutUWallFunctionFvPatchScalarField &) | |
Construct as copy. More... | |
virtual tmp< fvPatchScalarField > | clone () const |
Construct and return a clone. More... | |
atmNutUWallFunctionFvPatchScalarField (const atmNutUWallFunctionFvPatchScalarField &, 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 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 nutUWallFunctionFvPatchScalarField | |
TypeName ("nutUWallFunction") | |
Runtime type information. More... | |
nutUWallFunctionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &) | |
Construct from patch and internal field. More... | |
nutUWallFunctionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &) | |
Construct from patch, internal field and dictionary. More... | |
nutUWallFunctionFvPatchScalarField (const nutUWallFunctionFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &) | |
nutUWallFunctionFvPatchScalarField (const nutUWallFunctionFvPatchScalarField &) | |
Construct as copy. More... | |
nutUWallFunctionFvPatchScalarField (const nutUWallFunctionFvPatchScalarField &, const DimensionedField< scalar, volMesh > &) | |
Construct as copy setting internal field reference. More... | |
virtual tmp< scalarField > | yPlus () const |
Calculate and return the yPlus at the boundary. More... | |
Public Member Functions inherited from nutWallFunctionFvPatchScalarField | |
TypeName ("nutWallFunction") | |
Runtime type information. More... | |
nutWallFunctionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &) | |
Construct from patch and internal field. More... | |
nutWallFunctionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &) | |
Construct from patch, internal field and dictionary. More... | |
nutWallFunctionFvPatchScalarField (const nutWallFunctionFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &) | |
nutWallFunctionFvPatchScalarField (const nutWallFunctionFvPatchScalarField &) | |
Construct as copy. More... | |
nutWallFunctionFvPatchScalarField (const nutWallFunctionFvPatchScalarField &, const DimensionedField< scalar, volMesh > &) | |
Construct as copy setting internal field reference. More... | |
scalar | Cmu () const |
Return Cmu. More... | |
scalar | kappa () const |
Return kappa. More... | |
scalar | E () const |
Return E. More... | |
scalar | yPlusLam () const |
Return the estimated y+ at the two-sublayer intersection. More... | |
scalar | blend (const scalar nutVis, const scalar nutLog, const scalar yPlus) const |
Return the blended nut according to the chosen blending treatment. More... | |
virtual void | updateCoeffs () |
Update the coefficients associated with the patch field. More... | |
Protected Member Functions | |
virtual tmp< scalarField > | calcNut () const |
Calculate the turbulent viscosity. More... | |
Protected Member Functions inherited from nutUWallFunctionFvPatchScalarField | |
virtual tmp< scalarField > | calcYPlus (const scalarField &magUp) const |
Calculate yPlus. More... | |
Protected Member Functions inherited from nutWallFunctionFvPatchScalarField | |
virtual const volVectorField & | U (const turbulenceModel &turb) const |
virtual void | checkType () |
Check the type of the patch. More... | |
virtual void | writeLocalEntries (Ostream &) const |
Write local wall function variables. More... | |
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. More... | |
static scalar | yPlusLam (const scalar kappa, const scalar E) |
Estimate the y+ at the intersection of the two sublayers. More... | |
Protected Types inherited from nutWallFunctionFvPatchScalarField | |
enum | blendingType { STEPWISE, MAX, BINOMIAL, EXPONENTIAL } |
Options for the blending treatment of viscous and inertial sublayers. More... | |
Protected Attributes inherited from nutWallFunctionFvPatchScalarField | |
enum blendingType | blending_ |
Blending treatment (default = blendingType::STEPWISE) More... | |
const scalar | n_ |
word | UName_ |
Name of velocity field. More... | |
scalar | Cmu_ |
Empirical model coefficient. More... | |
scalar | kappa_ |
von Kármán constant More... | |
scalar | E_ |
Wall roughness parameter. More... | |
scalar | yPlusLam_ |
Static Protected Attributes inherited from nutWallFunctionFvPatchScalarField | |
static const Enum< blendingType > | blendingTypeNames |
Names for blendingType. More... | |
This boundary condition provides a wall constraint on the turbulent viscosity, i.e. nut
, based on velocity, i.e. U
, for atmospheric boundary layer modelling. It is designed to be used in conjunction with the atmBoundaryLayerInletVelocity
boundary condition.
The governing equation of the boundary condition:
\[ \u = \frac{\u^*}{\kappa} ln \left(\frac{z + z_0}{z_0}\right) \]
where
\( \u^* \) | = | Friction velocity |
\( \kappa \) | = | von Kármán constant |
\( z_0 \) | = | Surface roughness length [m] |
\( z \) | = | Ground-normal coordinate |
Required fields:
nut | Turbulent viscosity [m2/s] U | Velocity [m/s]
<patchName> { // Mandatory entries (unmodifiable) type atmNutUWallFunction; // Mandatory entries (runtime modifiable) z0 uniform 0.001; // Optional entries (unmodifiable) boundNut true; // Optional (inherited) entries ... }
where the entries mean:
Property | Description | Type | Req'd | Dflt |
---|---|---|---|---|
type | Type name: atmNutUWallFunction | word | yes | - |
z0 | Surface roughness length [m] | PatchFunction1<scalar> | yes | - |
boundNut | Flag: zero-bound nut near wall | bool | no | true |
The inherited entries are elaborated in:
Definition at line 153 of file atmNutUWallFunctionFvPatchScalarField.H.
atmNutUWallFunctionFvPatchScalarField | ( | const fvPatch & | p, |
const DimensionedField< scalar, volMesh > & | iF | ||
) |
Construct from patch and internal field.
Definition at line 103 of file atmNutUWallFunctionFvPatchScalarField.C.
Referenced by atmNutUWallFunctionFvPatchScalarField::clone().
atmNutUWallFunctionFvPatchScalarField | ( | const fvPatch & | p, |
const DimensionedField< scalar, volMesh > & | iF, | ||
const dictionary & | dict | ||
) |
Construct from patch, internal field and dictionary.
Definition at line 129 of file atmNutUWallFunctionFvPatchScalarField.C.
atmNutUWallFunctionFvPatchScalarField | ( | const atmNutUWallFunctionFvPatchScalarField & | ptf, |
const fvPatch & | p, | ||
const DimensionedField< scalar, volMesh > & | iF, | ||
const fvPatchFieldMapper & | mapper | ||
) |
Construct by mapping given atmNutUWallFunctionFvPatchScalarField onto a new patch
Definition at line 115 of file atmNutUWallFunctionFvPatchScalarField.C.
atmNutUWallFunctionFvPatchScalarField | ( | const atmNutUWallFunctionFvPatchScalarField & | rwfpsf | ) |
Construct as copy.
Definition at line 142 of file atmNutUWallFunctionFvPatchScalarField.C.
atmNutUWallFunctionFvPatchScalarField | ( | const atmNutUWallFunctionFvPatchScalarField & | rwfpsf, |
const DimensionedField< scalar, volMesh > & | iF | ||
) |
Construct as copy setting internal field reference.
Definition at line 153 of file atmNutUWallFunctionFvPatchScalarField.C.
|
protectedvirtual |
Calculate the turbulent viscosity.
Reimplemented from nutUWallFunctionFvPatchScalarField.
Definition at line 42 of file atmNutUWallFunctionFvPatchScalarField.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryField(), Foam::constant::electromagnetic::e, Foam::exit(), FatalErrorInFunction, Foam::FatalIOError, forAll, Foam::constant::atomic::group, IOobject::groupName(), nutWallFunctionFvPatchScalarField::kappa_, Foam::log(), Foam::mag(), Foam::max(), turbulenceModel::nu(), nutWallFunctionFvPatchScalarField::nutw(), Foam::foamVersion::patch, fvPatchField< Type >::patchInternalField(), turbulenceModel::propertiesName, tmp< T >::ref(), Foam::sqr(), nutWallFunctionFvPatchScalarField::U(), y, and turbulenceModel::y().
TypeName | ( | "atmNutUWallFunction" | ) |
Runtime type information.
|
inlinevirtual |
Construct and return a clone.
Reimplemented from nutUWallFunctionFvPatchScalarField.
Definition at line 216 of file atmNutUWallFunctionFvPatchScalarField.H.
References atmNutUWallFunctionFvPatchScalarField::atmNutUWallFunctionFvPatchScalarField().
|
inlinevirtual |
Construct and return a clone setting internal field reference.
Reimplemented from nutUWallFunctionFvPatchScalarField.
Definition at line 233 of file atmNutUWallFunctionFvPatchScalarField.H.
References atmNutUWallFunctionFvPatchScalarField::atmNutUWallFunctionFvPatchScalarField().
|
virtual |
Map (and resize as needed) from self given a mapping object.
Definition at line 167 of file atmNutUWallFunctionFvPatchScalarField.C.
|
virtual |
Reverse map the given fvPatchField onto this fvPatchField.
Definition at line 177 of file atmNutUWallFunctionFvPatchScalarField.C.
|
virtual |
Write.
Reimplemented from nutUWallFunctionFvPatchScalarField.
Definition at line 191 of file atmNutUWallFunctionFvPatchScalarField.C.
References nutUWallFunctionFvPatchScalarField::write(), and Ostream::writeEntry().