nutURoughWallFunction

- 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]

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} \]

with

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

where

\( \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:

<patchName> { // 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:

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

Source code