• The nutURoughWallFunction boundary condition provides a wall constraint on the turbulent viscosity, i.e. nut, based on velocity i.e. U, for low- and high-Reynolds number turbulence models for rough walls.
  • The nutURoughWallFunction condition inherits the traits of the nutWallFunction boundary condition.

Required fields:

nut  | Turbulent viscosity         [m2/s]

Model equations

The model expressions:

\[ \nu_t = 0 \qquad if \quad y^+ <= y^+_{lam} \]

\[ \nu_t = \nu_w \left( \frac{(y^+)^2}{Re} -1 \right) \qquad if \quad y^+ > y^+_{lam} \]


\[ Re = \frac{u_p y}{\nu_w} + \zeta \]


\( \nu_t \) = Turbulent viscosity [m2/s]
\( Re \) = Reynolds number [-]
\( \nu_w \) = Kinematic viscosity of fluid near wall [m2/s]
\( y^+ \) = Estimated wall-normal height of the cell centre in wall units
\( \zeta \) = Small value to prevent floating point exceptions


Example of the boundary condition specification:

    // Mandatory entries (unmodifiable)
    type                nutURoughWallFunction;
    roughnessHeight     1e-5;
    roughnessConstant   0.5;
    roughnessFactor     1;

    // Optional entries (unmodifiable)
    maxIter             10;
    tolerance           0.0001;

    // Optional (inherited) entries

where the entries mean:

Property Description Type Required Default
type Type name: nutURoughWallFunction word yes -
roughnessHeight Roughness height scalar yes -
roughnessConstant Roughness constant scalar yes -
roughnessFactor Scaling factor scalar yes -
maxIter Number of Newton-Raphson iterations label no 10
tolerance Convergence tolerance scalar no 0.0001

The inherited entries are elaborated in:

Notes on entries

  • Suffers from non-exact restart since correctNut() (called through turbulence->validate) returns a slightly different value every time it is called. See nutUSpaldingWallFunction.
  • Please refer to Foam::nutURoughWallFunctionFvPatchScalarField::calcYPlus function for the details on how \(y^+\) is computed.
  • The inherited wall-function blending methods are not available for this wall function.

Further information

Source code