Skip to content
SHD Sim
Menu

Validation/Unsteady flow

Flow over a circular cylinder

The only case with no steady state: the answer is a frequency, not a field. It found that a more symmetric mesh needs a LONGER run, not a shorter one.

ValidationStrouhal number within 1.67 % of Roshko at three Reynolds numbers

Why this case

A cylinder in a steady stream sheds vortices alternately from each side. Below about Re = 47 it does not shed at all; above it, the wake becomes a periodic street with a frequency that depends only on the Reynolds number.

This is the only case here with no steady answer. Everything else on this site reaches a steady state and is compared field against field. Here the answer is a frequency, and getting it requires the unsteady solver, the time scheme and the force integration all to be right at once. A code can produce a beautiful steady wake and be completely wrong about this.

PhysicsIncompressible, laminar, unsteady
Reynolds numberRe = U D / ν, on the cylinder diameter — 60, 100 and 150
Strouhal numberSt = f D / U, f the shedding frequency of the lift signal
Domain12.5 D upstream, 32.5 D downstream, ±16.5 D lateral
Blockage ratio3.0 % — D over a 33 D lateral width
MeshsnappyHexMesh on an imported cylinder, surface level 5, wake region level 3 over 14.5 D. 54 482 cells, 92 around the circumference, no prism layers
Run controlpimpleFoam, backward time scheme, adjustable time step at Courant ≤ 1, end time 25 s. 313 steps per shedding period at Re = 100
ReferenceRoshko, A. (1954), NACA Report 1191, equation (2a), transcribed from the report itself

The reference

Roshko’s equation (2a) gives St = 0.212 (1 − 21.2/Re) over 50 < Re < 150, which brackets all three cases here. It is an empirical fit, not an exact solution, and Roshko states the scatter of his own measurements about it as 4 %.

That is the floor on what agreement can mean. A computed Strouhal number inside 4 % has matched the correlation as closely as the correlation matches the data behind it. Comparing against it is validation, not verification.

Result — Strouhal number

Strouhal number against Roshko's correlation at three Reynolds numbers
ReRoshko (1954)SHD Simvs Roshkomeasured over
600.13710.1374+0.23 %t = 27.1 to 80 s
1000.16710.1642−1.67 %t = 12.8 to 25 s
1500.18200.1812−0.48 %t = 10.8 to 25 s

Every point is inside Roshko’s own 4 % scatter, and the three sit on a curve of the right shape — St rising with Re, tracking the fit rather than crossing it.

Re-measured on 27 August 2026 on a genuinely two-dimensional mesh — one cell thick, with the thin faces an empty pair rather than the roughly eight-cell slab the earlier figures were measured on.

Result — forces

Mean drag, lift oscillation amplitude and mean lift, our measurements
Remean C_dC_l amplitudemean C_l
601.42830.1317−0.00069
1001.35420.3194+0.00456
1501.32780.4871+0.00460

What this case found

No prism layers, and that is not a shortcut. The layer thickness is sized from a turbulent flat-plate correlation, which asks for 2.792 m of boundary layer on a 1 m cylinder at Re = 100 — four decades outside the correlation’s range. snappyHexMesh attempts the extrusion, the quality floor rejects it, and the removal leaves inside-out cells that diverge the pressure solve on its first iteration. A laminar cylinder has no log layer to resolve, so the layers are switched off.

Domain extent and blockage are recorded because they change the answer. The published data are for effectively unbounded flow. A cylinder in a narrow domain sheds at a measurably different frequency, and that is not a solver error — it is a different problem. It is the most common reason a cylinder case “fails” validation.

Repeat this yourself

Every case here is set up from the worked examples in the product, with no hand-editing of solver files — so you can run it, and get the same numbers. The free tier runs real cases up to 250,000 cells of fluids, or 100,000 nodes of solid, with no account needed to download and no time limit.

All validation cases · Written by the team building SHD Sim.