Documentation

SimScale allows different methods to model the turbulent effects appearing in a CFD simulation. This document sheds light on the popular and robust k-epsilon turbulence model.

The k-epsilon (\(k-\epsilon\)) model for turbulence is the most common to simulate the mean flow characteristics for turbulent flow conditions. It belongs to the Reynolds-averaged Navier Stokes (RANS) family of turbulence models where all the effects of turbulence are modeled.

It is a two-equation model. That means that in addition to the conservation equations, it solves two transport equations (PDEs), which account for the history effects like convection and diffusion of turbulent energy. The two transported variables are turbulent kinetic energy (\(k\)), which determines the energy in turbulence, and turbulent dissipation rate (\(\epsilon\)), which determines the rate of dissipation of turbulent kinetic energy.

The \(k-\epsilon\) model is shown to be reliable for free-shear flows, such as the ones with relatively small pressure gradients, but might not be the best model for problems involving adverse pressure gradients, large separations, and complex flows with strong curvatures.

There exist different variations of the k-epsilon model such as **Standard**, **Realizable**, **RNG**, etc. each with certain modifications to perform better under certain conditions of the fluid flow.

The turbulent energy \(k\) is given by:

$$k=\frac { 3 }{ 2 } { \left( UI \right) }^{ 2 }\tag{1}$$

where \(U\) is the mean flow velocity and \(I\) is the turbulence intensity.

The turbulence intensity gives the level of turbulence and can be defined as follows:

$$I = \frac { u’ }{ U }\tag{2}$$

where \(u’\) is the root-mean-square of the turbulent velocity fluctuations given as:

$$u’ = \sqrt { \frac { 1 }{ 3 } \left( { { u’ }_{ x } }^{ 2 } + { { u’ }_{ y } }^{ 2 } + { { u’ }_{ z } }^{ 2 } \right) } =\sqrt { \frac { 2 }{ 3 } k }\tag{3}$$

The mean velocity \(U\) can be calculated as follows:

$$U = \sqrt { { { U }_{ x } }^{ 2 }+{ { U }_{ y } }^{ 2 }+{ { U }_{ z } }^{ 2 }}\tag{4}$$

The turbulent dissipation rate can be calculted using the following formula:

$$\epsilon ={ { C }_{ \mu } }^{ \frac { 3 }{ 4 } }\frac { { k }^{ \frac { 3 }{ 2 } } }{ l }\tag{5}$$

where \({ { C }_{ \mu } }\) is the turbulence model constant which usually takes the value 0.09, \(k\) is the turbulent energy, \(l\) is the turbulent length scale.

The turbulence length scale describes the size of large energy-containing eddies in a turbulent flow.

The turbulent viscosity \(\nu_t\) is, thus, calculated as:

$$\nu_{t} = 0.09\frac{k^2}{\epsilon}\tag{6}$$

To realistically model a given problem, it is important to define the turbulence intensity at the inlets. Here are a few examples of common estimations of the incoming turbulence intensity:

**High-turbulence (between 5% and 20%):**Cases with high velocity flow inside complex geometries. Examples: heat exchangers, flow in rotating machinery like fans, engines, etc.**Medium-turbulence (between 1% and 5%)**: Flow in not-so-complex geometries or low speed flows. Examples: flow in large pipes, ventilation flows, etc.**Low-turbulence (well below 1%):**Cases with fluids that stand still or highly viscous fluids, very high-quality wind tunnels. Examples: external flow across cars, submarines, aircraft, etc.

Did you know?

The turbulent intensity at the core of a pipe for a fully developed pipe flow can be estimated as follows:
$$I=0.16 { { Re }_{ { d }_{ h } } }^{ -\frac { 1 }{ 8 } }\tag{7}$$
where \({ { Re }_{ { d }_{ h } } }\) is the Reynolds number for a pipe of hydraulic diameter \({ { d }_{ h } }\).

The turbulence length scale in this case is
$$l=0.07{ d }_{ h }\tag{8}$$.

The k-epsilon turbulence model needs to be chosen at the beginning of the simulation setup, in the global settings panel. This is shown in the figure below:

By default, SimScale defines the initial values of turbulence variables \(k\) and \(\epsilon\) depending on the domain of the problem. If needed, they can be changed under *Initial conditions*. Further, if the user wants to specifically define the boundary conditions for these turbulence variables, then the *custom*** **boundary condition can be used.

References

- Bardina, J.E., Huang, P.G., Coakley, T.J. (1997), “Turbulence Modeling Validation, Testing, and Development”, NASA Technical Memorandum 110446
- Wilcox, David C (1998). “Turbulence Modeling for CFD”. Second edition. Anaheim: DCW Industries, 1998. pp. 174.
- http://www.cfd-online.com/Wiki/Turbulence_free-stream_boundary_conditions

Last updated: May 25th, 2021

We appreciate and value your feedback.