Kelvin-Helmholtz

WebGL 2 is needed to display this simulation.
t = 0.00
Live

No snapshots

Preparing simulation…

Estimated buffers

Settings for the next run

Wavelength 0.667

Advanced options
Material A Mixed Material B

What is this?

The Kelvin-Helmholtz instability happens whenever two fluids slide past each other at different speeds. The easiest physical example is wind blowing across the surface of a lake. The speed difference across between the air and water creates friction and shear. That shear wants to spin the fluid and roll the boundary up into swirling vortices. Even a microscopic ripple will catch the flow and trigger the instability to develop.

As the fluids slide past each other, the boundary rolls up into wave-like structures called billows. These swirling billows look exactly like crashing ocean waves. As they grow and spin faster, the layers stretch and fold until they break down into a chaotic turbulent mess. Kelvin-Helmholtz instabilities are seen everywhere from gas planets to ocean waves, and they are incredibly important for understanding mixing in these environments.

How to use

This tool lets you set up an initial domain of the instability and watch it evolve in real time. During the early stage of the instability with fluids of the same density, the height of the ripple grows exponentially according to linear stability theory.

η(t) = η0 exp((k ΔU / 2) t)

The starting disturbance height is η0, and the terms inside the exponent control how fast that ripple explodes. Here is how the main settings tie into that growth and the simulation grid:

  • Velocity Difference (ΔU) is the shear speed between the upper and lower layers. A larger speed difference directly and rapidly speeds up the instability growth.
  • Waves and Domain Width determine the wavenumber k = 2π / λ. Setting more waves packs shorter wavelengths into the domain. The linear growth equation shows that shorter wavelengths with higher k grow the fastest.
  • Amplitude sets the initial height (η0) of the ripple. Larger values skip past the early linear predictions almost immediately, and quicken growth.

Hit Run to start the calculation, or use Next Snapshot to step forward by your chosen save interval. You can scrub through recorded snapshots using the slider to inspect earlier stages of the mixing layer, or switch back to Live to continue the run.

Resources