k-ε Model (k-epsilon Model) — CAE Glossary

Category: Glossary | 2026-03-28
CAE visualization for k epsilon - technical simulation diagram

What is the k-ε Model

🧑‍🎓

What is the k-ε model? I hear it's particularly well-used in RANS.


🎓

The k-ε model is a turbulence model that solves transport equations for two quantities: the turbulent kinetic energy $k$ and its dissipation rate $\varepsilon$, a RANS approach. Since Launder & Spalding systematized it in the 1970s, it has been the most widely used model in industrial CFD.


🧑‍🎓

So $k$ is the turbulence energy and $\varepsilon$ is the rate at which it disappears?


🎓

Exactly. $k = \frac{1}{2}\overline{u_i' u_i'}$ represents the mean-square turbulent velocity fluctuation. And $\varepsilon$ is the rate at which $k$ dissipates into heat due to molecular viscosity. Roughly speaking, $k$ is the "turbulence power" and $\varepsilon$ is the "power decay rate." With these two quantities, we can compute eddy viscosity $\mu_t = \rho C_\mu \frac{k^2}{\varepsilon}$, which approximates momentum transport from turbulence.


🧑‍🎓

I see. For example, when computing flow inside a building's air duct, turbulence effects are captured through $\mu_t$?


🎓

Exactly. Ducts, pipes, heat exchangers, automotive aerodynamics — most industrial internal and external flows use k-ε as a "first-try" model. It converges reliably and has abundant experimental validation data.


Transport Equations

🧑‍🎓

What form do the k-ε model equations take? I'd like to see the math.


🎓

The Standard k-ε transport equations are as follows. First, the $k$ equation:

$$\frac{\partial (\rho k)}{\partial t} + \frac{\partial (\rho u_j k)}{\partial x_j} = \frac{\partial}{\partial x_j}\left[\left(\mu + \frac{\mu_t}{\sigma_k}\right)\frac{\partial k}{\partial x_j}\right] + P_k - \rho\varepsilon$$

The left side is time change plus convection, the right side is diffusion plus generation plus dissipation. $P_k = \mu_t S^2$ is the production term where turbulent kinetic energy is generated from mean flow velocity gradients.


🧑‍🎓

Is the $\varepsilon$ equation nearly the same form?


🎓

The structure is similar but the coefficients differ:

$$\frac{\partial (\rho \varepsilon)}{\partial t} + \frac{\partial (\rho u_j \varepsilon)}{\partial x_j} = \frac{\partial}{\partial x_j}\left[\left(\mu + \frac{\mu_t}{\sigma_\varepsilon}\right)\frac{\partial \varepsilon}{\partial x_j}\right] + C_{\varepsilon 1}\frac{\varepsilon}{k}P_k - C_{\varepsilon 2}\rho\frac{\varepsilon^2}{k}$$

Standard k-ε model constants are $C_\mu = 0.09$, $C_{\varepsilon 1} = 1.44$, $C_{\varepsilon 2} = 1.92$, $\sigma_k = 1.0$, $\sigma_\varepsilon = 1.3$. These were tuned from simple shear flow experimental data.


🧑‍🎓

There are five constants? Can users change them?


🎓

Generally, you use default values. However, research on combustion or spray flows sometimes adjusts $C_{\varepsilon 1}$. But the standard approach is to compute with defaults, and if results don't match experiments, switch to another model (RNG, Realizable, k-ω SST, etc.).


Three Variants — Standard, RNG, and Realizable

🧑‍🎓

Besides Standard k-ε, I hear about RNG and Realizable. What's the difference?


🎓

There are three major variants. Let me outline their characteristics.

Standard k-ε (Launder & Spalding, 1974): The simplest with good convergence. Constants are from experimental fitting. However, accuracy drops in strong swirl flows or flows with large separation.

RNG k-ε (Yakhot & Orszag, 1986): Uses Renormalization Group theory to derive coefficients analytically. The $\varepsilon$ equation includes an additional term $R_\varepsilon$. This corrects $\varepsilon$ production in regions with rapid strain rate changes, giving better results than Standard in moderate Reynolds numbers and gentle swirl.

Realizable k-ε (Shih et al., 1995): Makes $C_\mu$ variable (not constant) to satisfy "realizability conditions" (non-negative eigenvalues of Reynolds stress tensor). The $\varepsilon$ equation is rederived. Jet spreading angle prediction improves dramatically, and it's stronger for separation flows.


🧑‍🎓

In practice, which should I use? Different solvers have different defaults.


🎓

ANSYS Fluent recommends Realizable k-ε as default. OpenFOAM offers kEpsilon (Standard), kEpsilonRNG, and realizableKE. STAR-CCM+ popularizes Realizable Two-Layer k-ε. Practically, unless you have a specific reason, choosing Realizable makes fewer mistakes. Standard remains for backward compatibility but has no strong reason for new analyses.


🧑‍🎓

For example, if I'm computing pressure drop in a factory ventilation duct, which is best?


🎓

For duct flow, Standard often gives sufficient accuracy. But if there are bends or T-junctions where separation occurs, Realizable is safer. Computational cost is nearly identical to Standard, so switching to Realizable has little downside.


Wall Functions and Wall Treatment

🧑‍🎓

I hear k-ε requires "wall functions." What are they for?


🎓

Near walls, there's a "viscous sublayer" where molecular viscosity, not turbulence, dominates. The k-ε model struggles to solve this directly because $\varepsilon$ boundary conditions have singularities at the wall.

So, we place the first cell center outside the sublayer (in the log-layer, $y^+ \approx 30$–$300$) and connect wall shear stress $\tau_w$ and near-wall velocity through the log-law. This is the wall function, which greatly reduces mesh elements.


🧑‍🎓

What is $y^+$? I hear it's something I must always check in meshing.


🎓

$y^+$ is the dimensionless distance from wall: $y^+ = \frac{\rho u_\tau y}{\mu}$, where $u_\tau = \sqrt{\tau_w / \rho}$ is friction velocity.

For wall functions, target $y^+ \approx 30$–$300$. Conversely, to resolve to the wall (low-Reynolds models or Enhanced Wall Treatment), you need $y^+ \approx 1$.


🧑‍🎓

What if the first cell falls in the buffer region between $y^+ = 5$ and $25$?


🎓

Good question. That's the "buffer layer" where neither log-law nor viscous law is accurate. If the first cell lands there, accuracy plummets. Modern solvers offer "Enhanced Wall Treatment" (Fluent) or "All-y+ Wall Treatment" (STAR-CCM+) that automatically blends regardless of $y^+$. Using this with k-ε is best practice.


Applicable Range and Limitations

🧑‍🎓

Are there weaknesses or cases where k-ε shouldn't be used?


🎓

Three major weaknesses:

1. Strong swirling flows: In cyclone separators or turbine blade passages with strong swirl, k-ε tends to overestimate eddy viscosity, causing the swirl to decay too quickly.

2. Large-scale separation: Wake regions downstream of buildings or sudden expansions show poor accuracy in separation point and reattachment length predictions.

3. Strong anisotropy: k-ε assumes isotropic Reynolds stress (Boussinesq hypothesis). Flows where stress anisotropy dominates—like secondary flow in duct corners—need RSM (Reynolds Stress Model) for better accuracy.


🧑‍🎓

Is k-ε okay for automotive aerodynamics around the car body? There's a large wake behind.


🎓

That's actually a typical "k-ε weakness" problem. The car's rear undergoes large-scale separation vortices that dominate drag. Automotive CFD teams typically use k-ω SST or DES (Detached Eddy Simulation). However, for internal flows like engine bay cooling, k-ε works fine.


🧑‍🎓

How should I think about choosing between k-ε and k-ω SST?


🎓

A rough guideline:

When uncertain, k-ω SST is safer, but k-ε is valued for convergence speed on complex geometries.


Selection Guidelines for Practical Use

🧑‍🎓

In summary, what's the correct workflow for using k-ε?


🎓

A practical flowchart is:

  1. Determine Reynolds number → Assess if turbulence modeling is needed
  2. Classify flow type → Internal or external? Large separation? Swirl?
  3. Start with Realizable k-ε + Enhanced Wall Treatment → Verify convergence and stability
  4. Validate results → Compare against experiments or benchmarks; if accuracy is lacking, switch to k-ω SST or RSM
  5. Check mesh sensitivity → Confirm wall $y^+$ is within wall function range

This workflow prevents wasting resources on oversized models for k-ε-suitable problems or getting stuck with k-ε for problems that need better models.


🧑‍🎓

When using k-ε in OpenFOAM, how do you set inlet initial values for $k$ and $\varepsilon$? I always struggle.


🎓

Standard inlet correlation formulas are:

$$k = \frac{3}{2}(U_{\mathrm{avg}} \cdot I)^2$$ $$\varepsilon = C_\mu^{3/4} \frac{k^{3/2}}{l}$$

$I$ is turbulence intensity (5–10% for pipe flow, ~1% for free stream). $l$ is turbulent length scale, with $l \approx 0.07D$ (D = diameter) common for pipes. OpenFOAM offers turbulentIntensityKineticEnergyInlet and turbulentMixingLengthDissipationRateInlet boundary conditions for automatic calculation—use those.


Related Terms

Precise understanding of CAE terminology is the foundation for team communication. — Project NovaSolver supports practitioner learning too.

Share challenges you face with k-ε models in practice

Project NovaSolver aims to solve problems CAE engineers face daily—setup complexity, computational cost, result interpretation. Your practical experience drives better tool development.

Contact (Coming Soon)
Rate this article
Thank you for your feedback!
Helpful
More
Detail
Report
Error
Helpful
0
More Detail
0
Report Error
0
Written by NovaSolver Contributors
Anonymous Engineers & AI — Site Map
View Profile