HomeAerospace Engineering & Orbital MechanicsWind Tunnel

🛩️ Wind Tunnel

Interactive wind-tunnel simulator. Watch potential-flow streamlines and smoke streaklines around an aerofoil, cylinder, sphere or flat plate. Pressure colouring from Bernoulli Cp=1−(v/U)², stagnation points, circulation Γ and lift L=ρUΓ (Kutta–Joukowski), plus separation/stall cues at high angle of attack.

Aerospace Engineering & Orbital Mechanics3DAdvanced60 FPS💨 Air & Wind
wind-tunnel ↗ Open standalone

About this simulation

This simulator builds real potential-flow solutions by superposing a uniform stream, a doublet (which forms a cylinder), and a vortex of strength Γ that adds circulation — the aerofoil shape is generated as a mapped, cambered teardrop using the same field. Streamline colour follows the actual pressure coefficient Cp = 1 − (v/U)² from Bernoulli's equation, lift is computed from the Kutta-Joukowski theorem L = ρ·U·Γ, and a simple boundary-layer cue kicks in past a critical angle of attack to simulate flow separation and stall.

🔬 What it shows

How wings actually generate lift: circulation around the body speeds up flow on one side and slows it on the other, and by Bernoulli's principle the faster side has lower pressure — the pressure difference across the body is the lift force, exactly as described by the Kutta-Joukowski theorem.

🎮 How to use

Pick a Preset (Low-AoA cruise, High-AoA stall, Cylinder Kármán, Flat plate) or choose a Body shape directly (Aerofoil, Cylinder, Sphere, Flat plate); drag Angle of attack α, Wind speed U, and Camber/circulation to reshape the flow; watch Lift coefficient, Drag coefficient, Reynolds number, Circulation Γ, and Flow state update live as smoke streaklines and pressure-coloured streamlines respond.

💡 Did you know?

Potential-flow theory alone predicts zero drag on any shape (d'Alembert's paradox) and never stalls — real stall only happens because of viscosity in the thin boundary layer, which is why this simulator has to add a separate, explicit rule to reproduce the sudden lift collapse seen at high angle of attack.

Frequently asked questions

What is circulation Γ and why does it create lift?

Circulation is a net rotational component added to the flow around the body; per the Kutta-Joukowski theorem, lift per unit span equals ρ·U·Γ, so more circulation — from more camber or a higher angle of attack — directly produces more lift.

Why do the streamlines change colour along their length?

The colour encodes the local pressure coefficient Cp = 1 − (v/U)², derived from Bernoulli's equation; where streamlines crowd together the flow speeds up and Cp drops (blue, suction), while near stagnation points the flow slows and pressure rises (red).

What causes a wing to stall?

Past a critical angle of attack, the adverse pressure gradient on the upper surface becomes too strong for the thin boundary layer to overcome, so the flow separates from the surface, lift collapses, and drag rises sharply — visualised here as the smoke breaking into a turbulent wake.

What is the Kármán vortex street seen behind the cylinder?

It's the alternating pattern of vortices shed from opposite sides of a bluff body like a cylinder as fluid flows past it, a classic unsteady wake phenomenon that occurs across a wide range of Reynolds numbers and is hinted at in this model's cylinder mode.

Why does the Reynolds number matter here?

Re = ρUL/μ compares inertial to viscous forces and determines how thin the boundary layer is and when the flow transitions to turbulence — it governs real drag and stall behaviour even though this simulation's core potential-flow solution itself is Reynolds-number independent.

⚙ Under the hood

Potential-flow streamlines over an aerofoil, cylinder, sphere or flat plate with pressure colouring Cp=1−(v/U)², stagnation points and circulation Γ giving lift L=ρUΓ (Kutta–Joukowski). Raise the angle of attack to trigger stall.

AerospacePotential FlowLiftKutta-JoukowskiStall

3D · Three.js / WebGL renderer · 60 FPS target · runs fully client-side, no install

What did you find?

Add reproduction steps (optional)