You can build a beautiful mesh, choose a respected turbulence model, run for three days on a cluster — and still get drag wrong by 30%. Very often the culprit is a single number that beginners overlook and experts obsess over: y⁺. It decides whether your turbulence model is even being used correctly, and it is set before you ever press "solve". This guide covers the full theory of y⁺, gives you a free first-cell-height calculator (validated against published data), and shows exactly how to choose, achieve, and verify the right value for your simulation.
Table of Contents
The y⁺ / First Cell Height Calculator
Enter your flow conditions and target y⁺. The tool returns the required first cell height, plus friction velocity, wall shear stress, Reynolds number, boundary-layer thickness and a suggested prism-layer count. It supports both external flow (flat plate / airfoil / vehicle) and internal pipe flow.
📐 y⁺ & First Cell Height Calculator
What Is y⁺? (Theory)
y⁺ is a dimensionless wall distance. Instead of asking "how many millimetres is my first cell from the wall?", it asks a far more useful question: "how far is it in units that the flow itself cares about?"
The formal definition is:
where:
- y — physical distance from the wall to the centroid of the first cell (m)
- uτ — friction velocity, defined as
u_τ = √(τ_w/ρ)(m/s) - ν — kinematic viscosity,
ν = μ/ρ(m²/s) - τw — wall shear stress (Pa)
Notice that uτ is not a real flow speed you can measure with a probe — it is a velocity scale built from the wall shear stress. Together, ν/uτ forms the viscous length scale, the natural "ruler" of the near-wall region. So y⁺ is simply your first cell distance measured with that ruler.
You will also meet its companion, u⁺ = u/uτ, the dimensionless velocity. Plotting u⁺ against log(y⁺) produces the famous law of the wall, a curve that is remarkably universal across almost all wall-bounded turbulent flows.
Structure of the Boundary Layer
Why does one number matter so much? Because the turbulent boundary layer is not one uniform region — it has distinct zones, each governed by different physics:
| Region | Range | Physics | Velocity law |
|---|---|---|---|
| Viscous sublayer | y⁺ < 5 | Viscous stress dominates; turbulence almost absent | u⁺ = y⁺ (linear) |
| Buffer layer | 5 < y⁺ < 30 | Viscous and turbulent stresses comparable — most complex zone | No simple law ⚠️ |
| Log-law layer | 30 < y⁺ < 300 | Turbulent stress dominates | u⁺ = (1/κ)·ln(y⁺) + B |
| Outer layer | y⁺ > 300 | Large-scale turbulence, wake region | Defect law |
In the log law, κ ≈ 0.41 (von Kármán constant) and B ≈ 5.0–5.5 for smooth walls. Both are experimentally established constants that appear in essentially every CFD wall function.
Why y⁺ Matters So Much
Your turbulence model makes an assumption about what happens between the wall and the first cell centre. y⁺ determines whether that assumption is valid.
- Wall shear stress → drag. Get y⁺ wrong and skin friction drag can be off by tens of percent — fatal for aerodynamic or hydraulic design.
- Heat transfer. Nusselt number and wall heat flux are extremely sensitive to near-wall resolution. Electronics cooling and heat-exchanger work demand correct y⁺.
- Flow separation. Predicting where flow detaches requires resolving the viscous sublayer (y⁺ ≈ 1). Wall functions systematically struggle with separation.
- Pressure drop. In pipes and ducts, wall friction is the answer you are computing.
- Cost. y⁺ = 1 meshes can be 5–20× larger than wall-function meshes. Choosing wisely is a direct budget decision.
The Formula, Step by Step
Here's the practical problem: y⁺ depends on uτ, which depends on τw — and you don't know τw until after you solve. So we estimate it using boundary-layer correlations. This is exactly what the calculator does.
Step 1 — Reynolds number
Use chord length for an airfoil, body length for a vehicle, or hydraulic diameter for internal flow.
Step 2 — Skin friction coefficient
For external flow over a smooth surface (flat-plate theory, White):
For pipe flow, use the Blasius correlation instead: f = 0.316·Re^(−0.25), then τ_w = (f/8)·ρU².
Step 3 — Wall shear stress
Step 4 — Friction velocity
Step 5 — First cell height
y above is the distance to the cell centroid. Most mesh tools ask for the full first-layer thickness, which is approximately 2 × y. Getting this wrong gives you exactly double the intended y⁺. The calculator lets you switch between conventions.Target y⁺ for Each Turbulence Model
| Turbulence model / approach | Target y⁺ | Strategy |
|---|---|---|
| k-ω SST | ≈ 1 (≤ 5) | Wall-resolved |
| Spalart–Allmaras | ≈ 1 | Wall-resolved |
| k-ε + Enhanced Wall Treatment | ≈ 1 (or > 30) | Either (blended) |
| Standard / Realizable / RNG k-ε | 30 – 300 | Wall functions |
| Reynolds Stress Model (RSM) | 30 – 300 (or ≈1 with EWT) | Either |
| LES / DES (wall-resolved) | < 1 | Wall-resolved (also needs fine x⁺, z⁺) |
| Transition models (γ-Reθ) | < 1 | Wall-resolved (mandatory) |
The Buffer Layer Trap
This is the single most common y⁺ error, and it deserves its own section. The buffer layer (5 < y⁺ < 30) is where viscous and turbulent stresses are of similar magnitude. Wall models assume the flow is either fully viscous (u⁺ = y⁺) or fully logarithmic. In the buffer layer, neither holds.
Place your first cell there and the wall shear stress is badly mispredicted — errors of 20–50% are commonly reported. Worse, the simulation will converge happily and give you smooth, professional-looking contours. Nothing warns you.
Prism Layers, Growth Rate & Total Thickness
Achieving y⁺ = 1 with a single thin cell is a mistake. You must resolve the whole boundary layer, not just touch it. Three parameters work together:
- First layer height — set by your target y⁺ (from the calculator).
- Growth rate — how fast layers thicken. Keep it 1.1–1.25; above ~1.3 you lose resolution and accuracy.
- Number of layers — enough to cover the boundary layer thickness δ. For wall-resolved meshes, aim for 15–30 layers, with at least 10–15 cells inside y⁺ < 30.
Boundary layer thickness for a turbulent flat plate is approximately:
The calculator reports δ and estimates how many prism layers your chosen growth rate needs to span it. A worked example: air at 30 m/s over a 1 m plate gives δ ≈ 20 mm; starting from y⁺ = 1 at a growth rate of 1.2 needs roughly 32 layers to cover it.
How to Verify y⁺ After Solving
Everything above is an estimate based on correlations. The real y⁺ comes from the solved wall shear stress, so always check it after convergence:
- ANSYS Fluent: Results → Contours → Turbulence → Wall Yplus. Also check Reports → Surface Integrals for min/max/average on each wall.
- OpenFOAM: run the post-processing utility for y⁺ (e.g.
simpleFoam -postProcess -func yPlus), then inspect the field in ParaView. - Star-CCM+ / others: plot the "Wall Y+" field function on all no-slip boundaries.
Look at the distribution, not just the average. A mean y⁺ of 1 hides trouble if stagnation points sit at 0.1 and high-speed regions reach 40. Judge by where the bulk of the wall area lies, and pay attention to regions that matter physically (leading edges, separation zones, heat-transfer surfaces).
Common Mistakes
- Targeting the buffer layer (5–30). The most damaging and most frequent error.
- Confusing centroid distance with full cell height — gives exactly 2× the intended y⁺.
- Using free-stream velocity for internal flows. Use bulk velocity and hydraulic diameter for pipes/ducts.
- One thin cell, no layers. y⁺ = 1 without prism layers doesn't resolve the boundary layer at all.
- Never verifying after solving. The pre-mesh number is an estimate, not a result.
- Ignoring roughness. On rough walls the law of the wall shifts; a cell smaller than the roughness height is physically meaningless. Best practice is a cell height around twice the sand-grain roughness.
- Chasing ever-lower y⁺. Below the model's requirement you gain nothing but cost — and with standard wall functions it is actively wrong.
- Forgetting to check y⁺ after changing the flow. Doubling the inlet velocity roughly doubles y⁺ on the same mesh.
Frequently Asked Questions
What is y⁺ in CFD?
y⁺ is a dimensionless wall distance measuring how far the first cell centroid sits from the wall in viscous length units: y⁺ = y·u_τ/ν. It tells you which part of the boundary layer your first cell resolves, and therefore whether your turbulence model is being applied correctly.
What is a good y⁺ value?
It depends on the near-wall treatment. Wall-resolved models (k-ω SST, Spalart–Allmaras, k-ε with enhanced wall treatment, LES) want y⁺ ≈ 1 and no more than 5. Wall-function approaches (standard/realizable k-ε) want 30–300. The buffer layer, 5–30, must be avoided.
How do you calculate the first cell height for a target y⁺?
Compute Re = UL/ν, estimate Cf ≈ 0.058·Re⁻⁰·², get τw = ½·Cf·ρU², then uτ = √(τw/ρ), and finally y = y⁺·ν/uτ. That gives the centroid distance; full cell height is about twice that. The calculator above does all of it.
Why must the buffer layer be avoided?
Because between y⁺ of 5 and 30, viscous and turbulent stresses are comparable, so neither u⁺ = y⁺ nor the log law is valid. Placing the first cell there mispredicts wall shear stress, with 20–50% errors commonly reported.
Does y⁺ change during the simulation?
Yes. The mesh fixes y, but y⁺ depends on the solved wall shear stress. Any pre-mesh y⁺ is an estimate — always plot the achieved y⁺ after convergence and refine if it falls outside your intended range.
Is a lower y⁺ always better?
No. Very low y⁺ helps only if the model integrates to the wall and you have enough prism layers. Otherwise you get extreme aspect ratios, slower convergence and higher cost for no gain — and with standard wall functions, an excessively small y⁺ is simply incorrect.
Conclusion
y⁺ is the bridge between your mesh and your turbulence model. It is not a box to tick — it is the parameter that decides whether the near-wall physics in your simulation is real or invented. The workflow is straightforward once you internalise it: choose a strategy (resolve or model), compute the first cell height, build proper prism layers, and verify the achieved y⁺ after solving.
Use the calculator above as your starting point, keep out of the buffer layer, and always check the result on the solved field. Do that consistently and you eliminate one of the most common — and most silent — sources of error in CFD.
For more CFD theory, meshing guides, and free engineering calculators, explore Free CFD Tutorial. If this guide helped, please share it with your classmates and colleagues.


Comments
Post a Comment