Gravity currents — the lock-release experiment
What you’re looking at
The classic gravity-current experiment is a long rectangular tank divided in half by a vertical gate. On one side you put dense fluid (cold, salty, or particle-laden — it doesn’t matter which, as long as it’s heavier per unit volume than the fluid on the other side). At time zero the gate is removed. The dense fluid does not just sit there; it collapses under its own weight and races along the bottom of the tank in a recognisable head-and-tail structure, with a counter-current of the lighter fluid running back along the ceiling. The interface in between is unstable: shear at the boundary rolls up into Kelvin–Helmholtz billows that mix the two fluids together over time.
In the demo, blue = dense, red = light. The channel is four times as wide as it is tall. You can pause, restart, and turn the shallow-water overlay on or off.
Why it matters
Gravity currents drive a remarkable amount of natural and engineered transport: thunderstorm outflows propagating across the boundary layer, sea-breeze fronts arriving inland in the afternoon, turbidity currents carrying sediment along ocean trenches, lava flows, avalanches, coffee-and-cream when you don’t stir. The lock-release experiment is the canonical setup that lets all of these be studied — in tanks, in numerical simulations, and through shallow-water theory.
How fast does the current move?
The remarkable thing about a lock-release current is that, after a brief startup, the front advances at constant speed. Dimensional analysis says the only velocity scale you can build out of gravity , the density contrast , and the channel depth is the buoyancy velocity
where is the reduced gravity. Theory and experiment agree that the front of a full-depth lock-release moves at a fixed fraction of :
This is the Benjamin front speed for an energy-conserving, no-mixing two-layer flow. The factor holds for the canonical full-depth setup; partial-depth releases give a slightly different prefactor, but the same scaling.
In the demo we non-dimensionalise on and , so the front speed is simply in those units — i.e. it crosses half the channel (, since the channel is four units long) in . The simulation clock at the top right tells you where you are; the predicted “front-to-wall” time is shown next to it for comparison.
The shallow-water prediction
When you toggle “Show shallow-water model”, the dashed line overlaid on the canvas is what a two-layer shallow-water theory without mixing predicts the heavy/light interface should look like. The model assumes:
- Two immiscible layers of equal depth ( each), one heavy below, one light above, separated by a sharp interface.
- The flow is hydrostatic and inviscid — pressure varies linearly with height in each layer.
- Energy is conserved across the front (the energy-conserving Benjamin solution).
- The lid and floor are rigid walls; nothing crosses them.
Under those assumptions the dense layer occupies the strip with and (the symmetric back-current propagates at the same speed in the opposite direction). The interface is a flat horizontal segment at , with vertical steps at the front and the back-current head. That is what the dashed staircase shows.
Three differences between the simulation and the model are worth noticing:
- The simulated front runs a bit slower than the dashed prediction. This is mostly an initial-transient effect: the shallow-water solution treats the current as if it were already propagating at from , but the simulation has to start from rest and accelerate through the first half-channel-depth’s worth of motion before it settles onto the constant-speed regime. Viscous drag on the floor and the head shaves a few more percent off the steady speed on top of that.
- The simulated dense layer is more wedge-shaped than the flat-topped slab the model predicts. The model puts the interface at exactly everywhere between and — a perfect rectangular block of dense fluid. The real current has a thicker, raised head, a tapering tail behind it, and Kelvin–Helmholtz billows along the upper interface. None of those features fit into a flat horizontal interface; they live in the part of the physics the model has chosen to ignore.
- The side walls aren’t in the model at all. The shallow- water solution above is written for an effectively unbounded channel; the dashed staircase you see overlaid is just clamped at the walls when the front gets there. In the simulation, the head reaches the right wall, bounces, and sends a return current back along the bottom; meanwhile the back-current head has done the same on the left side. After this point the channel fills with reflected waves and the analytical prediction stops being meaningful — the model is most informative during the slumping phase, before either front has reached its wall (left of the dashed “front-to-wall” marker in the time readout).
About this demo
This browser version uses the site’s NS2D Boussinesq solver — the same one that powers the Rayleigh–Bénard demo — at a 400×100 grid with semi-Lagrangian advection and an SOR pressure projection. The Reynolds number slider lets you walk from a smoothly-laminar regime (low Re, thicker viscous boundary layers, suppressed billows) into a more vigorously mixed one (high Re, the Kelvin–Helmholtz instability dominates the interface). The shallow-water reference is the same regardless of Re — it’s a purely inviscid prediction — so the gap between the two grows as you push Re higher. Read the methods page →