This boundary condition provides a turbulent kinematic viscosity condition when using wall functions for rough walls, based on velocity, using Spalding's law to give a continuous nut profile to the wall (y+ = 0) More...

Inheritance diagram for nutUSpaldingWallFunctionFvPatchScalarField:
Collaboration diagram for nutUSpaldingWallFunctionFvPatchScalarField:

Public Member Functions

 TypeName ("nutUSpaldingWallFunction")
 Runtime type information. More...
 
 nutUSpaldingWallFunctionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &)
 Construct from patch and internal field. More...
 
 nutUSpaldingWallFunctionFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 nutUSpaldingWallFunctionFvPatchScalarField (const nutUSpaldingWallFunctionFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &)
 Construct by mapping given. More...
 
 nutUSpaldingWallFunctionFvPatchScalarField (const nutUSpaldingWallFunctionFvPatchScalarField &)
 Construct as copy. More...
 
virtual tmp< fvPatchScalarFieldclone () const
 Construct and return a clone. More...
 
 nutUSpaldingWallFunctionFvPatchScalarField (const nutUSpaldingWallFunctionFvPatchScalarField &, const DimensionedField< scalar, volMesh > &)
 Construct as copy setting internal field reference. More...
 
virtual tmp< fvPatchScalarFieldclone (const DimensionedField< scalar, volMesh > &iF) const
 Construct and return a clone setting internal field reference. More...
 
virtual tmp< scalarFieldyPlus () const
 Calculate and return the yPlus at the boundary. More...
 
virtual void write (Ostream &os) const
 Write. 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 &)
 Construct by mapping given. More...
 
 nutWallFunctionFvPatchScalarField (const nutWallFunctionFvPatchScalarField &)
 Construct as copy. More...
 
 nutWallFunctionFvPatchScalarField (const nutWallFunctionFvPatchScalarField &, const DimensionedField< scalar, volMesh > &)
 Construct as copy setting internal field reference. More...
 
virtual void updateCoeffs ()
 Update the coefficients associated with the patch field. More...
 

Protected Member Functions

virtual tmp< scalarFieldcalcNut () const
 Calculate the turbulence viscosity. More...
 
virtual tmp< scalarFieldcalcUTau (const scalarField &magGradU) const
 Calculate the friction velocity. More...
 
- Protected Member Functions inherited from nutWallFunctionFvPatchScalarField
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 scalar yPlusLam (const scalar kappa, const scalar E)
 Calculate the Y+ at the edge of the laminar sublayer. More...
 
- Protected Attributes inherited from nutWallFunctionFvPatchScalarField
scalar Cmu_
 Cmu coefficient. More...
 
scalar kappa_
 Von Karman constant. More...
 
scalar E_
 E coefficient. More...
 
scalar yPlusLam_
 Y+ at the edge of the laminar sublayer. More...
 

Detailed Description

This boundary condition provides a turbulent kinematic viscosity condition when using wall functions for rough walls, based on velocity, using Spalding's law to give a continuous nut profile to the wall (y+ = 0)

\[ y^+ = u^+ + \frac{1}{E} \left[exp(\kappa u^+) - 1 - \kappa u^+\, - 0.5 (\kappa u^+)^2 - \frac{1}{6} (\kappa u^+)^3\right] \]

where

$ y^+ $ = non-dimensional position
$ u^+ $ = non-dimensional velocity
$ \kappa $ = Von Karman constant


Patch usage

Example of the boundary condition specification:

    myPatch
    {
        type            nutUSpaldingWallFunction;
    }
See Also
Foam::nutWallFunctionFvPatchScalarField
Source files

Definition at line 94 of file nutUSpaldingWallFunctionFvPatchScalarField.H.

Constructor & Destructor Documentation

nutUSpaldingWallFunctionFvPatchScalarField ( const fvPatch p,
const DimensionedField< scalar, volMesh > &  iF 
)

Construct from patch and internal field.

Definition at line 126 of file nutUSpaldingWallFunctionFvPatchScalarField.C.

nutUSpaldingWallFunctionFvPatchScalarField ( const fvPatch p,
const DimensionedField< scalar, volMesh > &  iF,
const dictionary dict 
)

Construct from patch, internal field and dictionary.

Definition at line 150 of file nutUSpaldingWallFunctionFvPatchScalarField.C.

Construct by mapping given.

nutUSpaldingWallFunctionFvPatchScalarField onto a new patch

Definition at line 137 of file nutUSpaldingWallFunctionFvPatchScalarField.C.

Construct as copy setting internal field reference.

Definition at line 172 of file nutUSpaldingWallFunctionFvPatchScalarField.C.

Member Function Documentation

tmp< scalarField > calcNut ( ) const
protectedvirtual

Calculate the turbulence viscosity.

Implements nutWallFunctionFvPatchScalarField.

Definition at line 41 of file nutUSpaldingWallFunctionFvPatchScalarField.C.

References Foam::mag(), Foam::max(), nu, turbulenceModel::nu(), Foam::sqr(), and turbulenceModel::U().

Here is the call graph for this function:

tmp< scalarField > calcUTau ( const scalarField magGradU) const
protectedvirtual

Calculate the friction velocity.

Definition at line 62 of file nutUSpaldingWallFunctionFvPatchScalarField.C.

References E_, Foam::exp(), f(), forAll, iter, kappa_, Foam::mag(), magUp, Foam::max(), Foam::min(), nu, turbulenceModel::nu(), Foam::sqr(), Foam::sqrt(), turbulenceModel::U(), uTau, y, and turbulenceModel::y().

Here is the call graph for this function:

TypeName ( "nutUSpaldingWallFunction"  )

Runtime type information.

virtual tmp<fvPatchScalarField> clone ( ) const
inlinevirtual

Construct and return a clone.

Definition at line 150 of file nutUSpaldingWallFunctionFvPatchScalarField.H.

References nutUSpaldingWallFunctionFvPatchScalarField::clone().

Referenced by nutUSpaldingWallFunctionFvPatchScalarField::clone().

Here is the call graph for this function:

Here is the caller graph for this function:

virtual tmp<fvPatchScalarField> clone ( const DimensionedField< scalar, volMesh > &  iF) const
inlinevirtual

Construct and return a clone setting internal field reference.

Definition at line 167 of file nutUSpaldingWallFunctionFvPatchScalarField.H.

tmp< scalarField > yPlus ( ) const
virtual

Calculate and return the yPlus at the boundary.

Implements nutWallFunctionFvPatchScalarField.

Definition at line 183 of file nutUSpaldingWallFunctionFvPatchScalarField.C.

References Foam::mag(), nu, turbulenceModel::nu(), patchi, turbulenceModel::U(), y, and turbulenceModel::y().

Here is the call graph for this function:

void write ( Ostream os) const
virtual

Write.

Reimplemented from nutWallFunctionFvPatchScalarField.

Definition at line 199 of file nutUSpaldingWallFunctionFvPatchScalarField.C.

References write().

Here is the call graph for this function:


The documentation for this class was generated from the following files: