Two reacting, diffusing chemicals on agar: tune the feed and the diffusion ratio, click the dish to add a drop, and watch spots or stripes grow at the wavelength that the dispersion relation predicts.
-Turing threshold B_turing
-Hopf threshold B_hopf = 1 + A^2
-what happens
-fastest growing wave (theory)
-its growth rate
The science
The reaction. The Brusselator is a textbook model of an autocatalytic chemical system with two species, an activator u and an inhibitor v: du/dt = A - (B + 1) u + u^2 v + Du lap(u), dv/dt = B u - u^2 v + Dv lap(v). A is a constant feed, B converts u into v, and the term u^2 v makes u catalyse its own production. The uniform steady state is u* = A, v* = B / A.
Turing's idea. Without diffusion this state can be perfectly stable. Alan Turing (1952) showed that if the inhibitor spreads much faster than the activator (Dv > Du) a stable state can become unstable to waves of a particular length, so spots or stripes grow out of tiny noise. Linearising about (u*, v*) gives the Jacobian J = [[B - 1, A^2], [-B, -A^2]]; a mode of wavenumber k grows with the largest eigenvalue of J - k^2 diag(Du, Dv). That growth rate versus k is the "dispersion relation" plotted in the panel.
Closed forms. Patterns appear when B exceeds B_turing = (1 + A sqrt(Du / Dv))^2, at the critical wavenumber k_c = sqrt(A / sqrt(Du Dv)), so the pattern wavelength 2 pi / k_c scales as A^(-1/2) (and as (Du Dv)^(1/4)). A different instability, a spatially uniform oscillation (Hopf), sets in at B_hopf = 1 + A^2; patterns are the story only when B_turing is the lower of the two. Above threshold the fastest-growing wavenumber is slightly larger than k_c, which is what the fastest-mode marker shows.
The solver. The dish is a disc on a 96 x 96 grid with no-flux walls (each cell only exchanges with its neighbours that are inside the disc); explicit Euler steps of size 0.8 dx^2 / (4 max(Du, Dv)) keep it stable. Small random noise (about 5 %) around the steady state seeds the pattern. Clicking the dish adds a Gaussian drop of activator, which either dies out (below threshold) or seeds a local pattern (above it).
Independent checks. The closed-form threshold is compared with a numerical scan of the matrix eigenvalues; the critical wavenumber with the numerical maximum of the growth rate; the diffusion operator with the exact variance growth 2 D t of a Gaussian; and the pattern wavenumber of a full nonlinear run on a periodic grid (read off its Fourier spectrum) with the linear prediction. The last agrees to within one Fourier step (a box of 40 units holds only whole numbers of wavelengths).
Honest limits. The Brusselator is a toy model (the trimolecular step u^2 v is not an elementary reaction) and the dish colours are an illustrative indicator, not a real dye. Real morphogens (animal coats, fingerprints, vegetation bands) involve more species, growth of the domain and geometry; the Turing mechanism is a hypothesis for them, firmly demonstrated in some chemical systems such as the CIMA reaction. The length unit is dimensionless; the dish is not calibrated in millimetres. Late-time patterns of this model can drift and coarsen slowly, so the live wavelength is a snapshot, not a constant.