Runs the current obstacle at Re = 20, 60, 100 and 150 (settle, then measure), and tabulates the time-averaged Cd and the Strouhal number. The flow is not restarted between Reynolds numbers. Takes about a minute.
The science
What is solved. The lattice-Boltzmann method (LBM) tracks populations fi of fictitious particles moving along 9 directions (D2Q9) on a square lattice. Each step they stream to neighbours and relax towards a local equilibrium (BGK collision):
f_i(x+e_i, t+1) = f_i(x,t) − (f_i − f_i^eq)/τ
f_i^eq = w_i ρ [1 + 3 e_i·u + 9/2 (e_i·u)² − 3/2 u²]
ν = (τ − 1/2)/3 p = ρ/3 (lattice units)
A Chapman–Enskog expansion shows this recovers the weakly compressible Navier–Stokes equations (Mach number here Ma = √3 u0 ≈ 0.14, so compressibility errors are a few percent).
Reynolds number. Re = U L / ν, where L is the body's own reference length (cylinder diameter, plate height, square side, airfoil chord = 20 cells per unit). The slider changes ν at fixed U.
Forces. Momentum exchange on every fluid–solid link gives F; Cd = Fx / (½ ρ U² L), Cl = Fy / (½ ρ U² L). The Strouhal number is St = f L / U where f comes from the upward zero-crossings of Cl(t).
Vortex street. Below Re ≈ 47 (unconfined cylinder) the wake is steady with two attached eddies; above it a Hopf bifurcation produces alternating vortices with St ≈ 0.165 near Re = 100. Here the walls are only 2.5 units away (blockage 20 %) so shedding is faster (St ≈ 0.2) and Cd is higher than the textbook unconfined values (≈ 1.3–1.4 at Re = 100).
Boundaries. Bodies: halfway bounce-back (no-slip, second order). Inlet: equilibrium at U. Outlet: zero-gradient. Top/bottom: far-field equilibrium at U (a stand-in for a slip wall, not a boundary layer).
Honest simplifications. Strictly 2D laminar flow: no turbulence model and no three-dimensional instabilities, which appear for a real cylinder above Re ≈ 190 (the slider stops at 200). The sphere-less “depth” of the 3D tunnel is just a visual extrusion; real tunnel results depend on span, free-stream turbulence and wall boundary layers. Colour layers are normalised for readability. Literature numbers quoted here are typical values to be spot-checked, not a benchmark claim. The airfoil case is a low-Re laminar section (stall at high angle is a laminar separation bubble effect, not the high-Re stall of an aircraft wing). Independent educational model.
Numerical verification. See “Independent checks” below: Poiseuille channel, Taylor–Green vortex decay and mass conservation are compared with closed forms.
Independent educational model. Made with Blender and Three.js.