This is the 1-D column view of the same pH-driven sorption chemistry as the 3D particle simulator: instead of watching individual ions flip between bound and free, it solves the retarded advection–dispersion equation for pore-water concentration C(x,t) as contaminated water infiltrates straight down a soil profile toward the water table:
R · ∂C/∂t = −v · ∂C/∂x + D · ∂²C/∂x²
R(pH) = 1 + K_d(pH)·CEC, K_d(pH) = K_max / (1 + exp(−s·(pH−pH₅₀)))
D = α_L · v (mechanical dispersion)
R is the retardation factor: at R = 1 nothing sorbs and the plume travels at the raw pore-water velocity v; at R = 20 the front creeps 20× slower than the water itself because most of the metal is constantly being captured and released by exchange sites along the way. Because pH sets K_d, and K_d sets R, the same acidification that desorbs metal in the particle view here shows up directly as a faster-advancing front — an analytically checkable relationship (front position ≈ v·t / R), not just a visual effect.
- pH slider — resets K_d(pH) and therefore R for the whole column; low pH (acidic) → small R → fast front. High pH (limed) → large R → the plume barely moves.
- CEC slider — soil organic-matter/clay content; higher CEC means more exchange capacity, which multiplies K_d's contribution to R.
- Infiltration rate — the raw pore-water (Darcy) velocity v driving advection; also sets the dispersion coefficient D = α_L·v.
- Pulse button — injects a finite contamination event at the surface on top of a small chronic baseline leach, so you can watch a single plume travel, spread and reach (or fail to reach) the water table.
The right-hand panels show the two complementary readouts a soil scientist actually uses: the K_d(pH) isotherm the whole simulation is built on, and the breakthrough curve — concentration at the water table over time — which is exactly what a real monitoring well measures.