Fluid Vorticity & Kelvin–Helmholtz Instability

N-vortex Biot–Savart · 2D inviscid flow · Vortex sheet rollup · Shear instability

t = 0.000  |  step = 0  |  N = 32 vortices  |  KH mode: m=1  |  σ = Γ/4πλ (theoretical growth rate)

🌊 Kelvin–Helmholtz Instability

When two fluid layers move at different velocities, any perturbation at their interface grows exponentially — this is the Kelvin–Helmholtz instability (KHI). It is one of the most important mechanisms driving turbulence in nature: cloud billows, ocean surface waves, Jupiter's Great Red Spot, solar corona jets, and the magnetopause all show characteristic KH rolls.

🔬 Physics

A continuous vortex sheet (sheet of vorticity separating two uniform streams) is approximated by N discrete point vortices of circulation Γ. Each vortex moves with the velocity induced by all others via the inviscid Biot–Savart law: v = Σ Γ_j/(2π) × r̂⊥/|r|² (regularised with a finite core ε to prevent numerical singularities). Small sinusoidal perturbations grow exponentially at rate σ = |Γ|k/4π (k = wavenumber) — the Kaden–Birkhoff rollup. Eventually distinct spiral vortex structures emerge and merge (vortex pairing).

🎮 How to Use

Press Pause to freeze. Reset re-initialises with current parameters. Use the Vortices N slider to change the resolution of the vortex sheet. Increase Perturbation to trigger faster rollup. Double Layer adds a counter-rotating vortex row 0.08 units above — this creates a vortex street (classic Kármán configuration). Random Vortices seeds chaotic initial conditions.

💡 Occurrences in Nature

KHI creates the characteristic curling wave-cloud patterns (Kelvin–Helmholtz clouds), ocean internal waves visible from satellite, mixing layers in stellar interiors, plasma instabilities at Earth's magnetopause, Rayleigh–Taylor fingers in supernova remnants, and shear instabilities in accretion discs around black holes. The same mathematics governs vortex shedding behind bluff bodies.

About the Kelvin–Helmholtz Instability

This simulation models a two-dimensional inviscid vortex sheet at the boundary between two fluid streams moving at different speeds. The continuous sheet is discretised into N point vortices, each carrying circulation Γ, that move under the velocity field induced by all the others through the regularised Biot–Savart law: vx = −(Γ/2π)·dy/r², vy = +(Γ/2π)·dx/r², with a finite core ε preventing singularities. Periodicity in x is enforced using image columns.

The sliders set the number of vortices N (8–64), the circulation Γ per vortex, the core radius ε, the explicit Euler time step dt, and the amplitude of the initial sinusoidal perturbation. Larger perturbations seed faster roll-up. The Single, Double and Random Layer buttons change the initial configuration. This shear instability drives turbulence in cloud billows, ocean waves, Jupiter's atmosphere and the solar wind, making it foundational to fluid dynamics.

Frequently Asked Questions

What is the Kelvin–Helmholtz instability?

It is the instability that arises when two fluid layers slide past each other at different velocities. Any small perturbation at the shared interface grows exponentially, curling the boundary into a row of spiral vortices. It is one of the most common routes to turbulence in nature.

How does this simulation compute the motion?

The vortex sheet is represented by N discrete point vortices. At each step every vortex is advected by the combined velocity induced by all the others through the inviscid Biot–Savart law, integrated forward with a simple explicit Euler scheme using time step dt.

Why is there a core radius ε?

A pure point vortex induces a velocity that diverges as 1/r when two vortices approach, causing numerical blow-up. Adding ε² to the denominator regularises the kernel, giving each vortex a smooth finite core. This keeps the simulation stable while barely affecting the large-scale roll-up.

What do the Vortices N and Circulation Γ sliders do?

N (8–64) sets how finely the continuous vortex sheet is sampled by discrete vortices; more vortices resolve sharper spiral cores. Γ is the circulation carried by each vortex, which scales the strength of the induced velocity field and hence how quickly the instability develops.

What is the growth rate of the instability?

For a vortex sheet, a perturbation of wavenumber k grows exponentially with rate σ = |Γ|k/4π in the inviscid limit. Shorter wavelengths grow fastest, which is why the discretised sheet rapidly forms small-scale rolls that later merge into larger structures through vortex pairing.

What does the Double Layer mode show?

Double Layer adds a second, counter-rotating row of vortices about 0.08 units above the first. The opposing circulations produce a vortex-street arrangement reminiscent of the Karman vortex street shed behind a bluff body, illustrating how paired shear layers interact.

Is the simulation physically accurate?

It is an exact two-dimensional inviscid (zero-viscosity) point-vortex model, so it faithfully captures the early roll-up and pairing predicted by classical theory. However, it omits viscosity, three-dimensional effects and compressibility, so the very late chaotic stages are qualitative rather than quantitatively predictive.

Why does the flow become chaotic over time?

Point-vortex systems with more than three vortices are generally non-integrable and exhibit sensitive dependence on initial conditions. As vortices roll up and pair, tiny differences amplify, producing the chaotic, mixing-dominated state characteristic of developed shear turbulence.

Why are the vortices coloured differently?

Blue vortices carry positive circulation (Γ > 0) and red ones carry negative circulation (Γ < 0), indicating opposite senses of rotation. In Single Layer all vortices share one sign, while Double Layer and Random modes mix both signs, which you can see in the trails they leave behind.

Where does the Kelvin–Helmholtz instability appear in the real world?

It produces the breaking wave-like Kelvin–Helmholtz clouds in the sky, ocean internal waves, mixing layers in stars, plasma instabilities at Earth's magnetopause, and the banded shear flows of Jupiter. The same mathematics underlies vortex shedding behind obstacles and mixing in jets.