duneweb: Cellular automata for bedforms
Last modification on
Demo: andersdamsgaard.dk/duneweb.
duneweb is an interactive educational tool demonstrating how cellular automata and self-organizing complexity explain bedforms: the ripples and dunes that rivers, oceans, and deserts build under flowing fluids.
Motivation
Sediment on a river bed does not stay flat. Small perturbations grow into regular ripples, which merge and evolve into larger dunes. This is a consequence of feedback between flow, sediment transport, and topography.
Systems like these appear in many places, from the stripes on sandy beaches to the linear dunes sweeping across the Sahara, and studying them reveals general patterns of complexity that emerge from local interactions alone.
Mechanics
duneweb simulates a thin layer of sediment on a two dimensional grid. Each cell holds a height representing the local bed elevation. The rules are simple:
- Upslope erosion: fluid motion lifts grains from the sediment bed.
- Downslope transport: grains hop or slide downhill.
- Deposition: grains settle when the local shear stress drops.
- Avalanching: when a slope exceeds a critical angle, grains cascade to neighboring cells until stability is restored.
These rules encode physical processes such as saltation (the hopping of grains along the bed) and fluid driven transport, following Werner (1995). No global coordination is involved: each cell only “talks” to its neighbors. From these local interactions, entire fields of dunes emerge.
You can adjust parameters directly in the browser: grain size, flow speed, sediment supply, grid resolution. Watch how ripples form, migrate, merge, and disappear as conditions change. The tool runs entirely client side; no data is sent to a server.
Scale
Werner’s model is deliberately abstract. Sand is moved as discrete slabs on a lattice, governed by a hop length (counted in lattice sites), two deposition probabilities, a shadow zone angle, and an angle of repose. None of these parameters carry inherent physical units. The model is scale free: macroscopic dune morphology emerges from local rules regardless of what physical dimensions are assigned to the grid.
To relate the simulation to a real landscape, a user must choose a physical cell size and scale time accordingly. The model does not prescribe these choices.
C implementation
A command-line C implementation is available for large grids and long times. It implements the same algorithms with better performance, suitable for batch experiments and quantitative analysis.