Smoke Ring Cross-Section

2D twin of the 3D page: a laser-sheet style cut through the axis of a smoke ring, where the two vortex cores and the smoke tracers can be followed.

Switch to 3D

Presets

Playback

Generator and air

Orifice, puff speed and duration, diffusion and the delay of the second tap.

Mode

Layers

Model checks

The science

What is modelled

Tap the back of a box with a round hole and a ring of smoke shoots out and keeps travelling, turning over like a rolling doughnut. The ring is a vortex: a thin loop of spinning air. The page represents it as a closed loop of 96 nodes (a vortex filament) that moves in the flow it creates itself, and carries thousands of smoke particles in that same flow. With the second mode you can launch two rings in a row and watch them leapfrog.

Equations

  • Generator, slug model: the membrane pushes a plug of air of length L = U τ out of a hole of diameter D; the circulation of the ring formed is Γ = U² τ / 2. A puff with L/D larger than about 4 (the formation number) cannot be absorbed by one ring; the page then caps Γ at the value for L/D = 4.
  • Induced flow of the filament (Biot-Savart): u(x) = (Γ / 4π) ∑ dl × (x − xj) / (|x − xj|² + δ²)3/2 with a smoothing length δ = a e−3/4 tied to the core radius a, so that a thin ring moves at the Kelvin speed U = Γ / (4πR) (ln(8R/a) − 1/4) (uniform vorticity in the core).
  • Core growth by viscous diffusion (Lamb-Oseen): a² = a0² + 4 ν t; the page multiplies the kinematic viscosity of air (1.5 × 10−5 m²/s) by your factor to represent turbulence in the smoke.
  • Conserved quantities: circulation (Kelvin), linear impulse P = ρ Γ π R² (the page sums (Γ/2) ∑ x × dl over the nodes) and energy E = (ρ Γ² R / 2)(ln(8R/a) − 7/4). For two rings, the rear one shrinks and speeds up, the front one widens and slows (leapfrogging).
  • Smoke: tracer particles relax in about 30 ms to the local induced flow; the puff leaving the hole is moved with the piston speed until the ring has formed.

Checks run in the page

  • Filament ring speed against the Kelvin formula.
  • The dependence of speed on the core radius.
  • Impulse conservation during a leapfrog pass.
  • A finite-difference solution of vorticity diffusion against the Lamb-Oseen law.
  • Slug-model circulation, formation-number cap and the discrete impulse against Γ π R².

Honest simplifications

  • The ring is created instantly at the end of the tap at half the puff length, with radius D/2 and core a = 0.3 R; the real roll-up of the vortex sheet and the exact radius and core size depend on the edge of the hole and are not simulated.
  • The core is assumed to be a uniform-vorticity disc and its size follows pure diffusion; real smoke rings also shed vorticity into a wake, become wavy (Widnall instability) and turn turbulent. The filament model stops being valid when two filaments come within about a core radius of each other (the page warns you), which happens after one leapfrog pass; it cannot show merging or reconnection.
  • Discretising the ring with 96 nodes gives a speed 2 % to 6 % below the Kelvin value for cores of a/R = 0.3 to 0.15; smaller cores need more nodes and a smaller step, so the core is kept at a/R = 0.3 at formation.
  • The smoke has no buoyancy and no weight; the room air is still, with no walls or draughts; the viscosity multiplier is a stand-in for turbulence, not a measured value. The membrane motion is drawn for show, and the box is a fixed model.
What to try
  • Watch the default ring: its two cores (yellow circles) travel at the Kelvin speed, which grows as the core thins; the third graph compares the filament simulation with the formula.
  • Choose the long puff preset: above L/D = 4 the ring cannot take more circulation and the rest of the puff trails behind as a jet.
  • Switch to two rings: the rear ring shrinks and speeds up, slips through the front one, which widens and slows (leapfrogging).
Distance from the hole against time
Ring radius against time
Ring speed against the Kelvin formula
Made with 🟠 Blender