The water layer
How water moves through this landscape before anybody builds anything.
How water moves through this landscape before anybody builds anything.
This is the third layer of the model. It sits on top of the geology and underneath everything a scheme would do:
AREA MAPPING ──▶ GEOLOGY ──▶ WATER ──▶ [ SYSTEM MODEL ] ──▶ [ OPTIMISATION ]
terrain, what the how water a scheme which scheme
catchments, rock is, arrives, imposed on is best
rivers, sites where, how moves and the natural
much it leaves layers
can hold
Nothing here models a scheme. No reservoir, no injection, no abstraction, no operating rule. This layer answers a prior question — how does the place work — and it has to be answered first, because a scheme is a perturbation of it and you cannot measure a perturbation against a baseline you have not established.
The worked example throughout is Somerset. The point of grounding it in one place is that the difficulties are real ones: where the example is awkward, that is the method being tested rather than a distraction from it.
The chain, and where each chapter sits
RAINFALL
(areal, daily)
│
▼
SOIL MOISTURE ──────▶ AET (evaporated, gone)
│
effective rainfall
│
┌─────────┴─────────┐
│ THE SPLIT f │ ◀── ch.4 measures this
▼ ▼
QUICK RUNOFF RECHARGE
│ │
▼ ▼
┌───────────┐ ┌───────────┐
│ RIVER │◀─────▶│ AQUIFER │ ◀── signed exchange,
│ (stage, │ k(h− │ (head, │ never one-way
│ flow) │ h_r) │ storage) │
└───────────┘ └───────────┘
│ │
▼ ▼
to the sea ...to the AQUIFER LAYER
(tidal gates — (see papers/aquifers)
NOT YET MODELLED)
| ch | chapter | question it answers | status |
|---|---|---|---|
| 1 | Water table (static) | how much rock is dry? | fitted, R² 0.83 |
| 2 | Water table dynamics | how far and when does it move? | measured |
| 3 | Rainfall-driven water table | can we reproduce it from rain? | validated, NSE 0.80 |
| 4 | The runoff model & the split | where does effective rainfall go? | validated, 8 of 9 |
| 5 | River routing | flow at a point that is not a gauge | built, LOO NSE 0.66 |
| 6 | The rhynes | what drains and waters the moors? | network built, volume assumed |
| — | river stage | level at any point, not just gauges | not built |
| — | tidal boundary | can it drain at all? | not built |
The rhynes were missing from every dataset until now. OS Open Rivers carries the channels that take water out of the Levels; the ditch network that holds water in them was in nothing. 1,694 km of it sits below 10 m AOD, holding roughly 3.9 Mm³ at a penned summer level — about as much as the whole scheme irrigates with in a year. That makes it both the destination for environmental releases and a demand in its own right. See
rhynes.md, and note that a level-controlled system with a tide-locked outfall brings the tidal boundary back into scope even though attenuation is not claimed.
What the layer currently says about Somerset
Numbers, with the evidence behind each. All are outputs of the chapters above, not assumptions carried into them.
| quantity | value | how it was got |
|---|---|---|
| rainfall | 1,079 mm/yr | areal, Thiessen-weighted, 9 catchments |
| evapotranspiration | 470 mm/yr | fitted, runoff model |
the split f |
0.59 | fitted to river flow, IQR 0.57–0.64 |
| recharge | 217 mm/yr | = (1−f) × effective rainfall |
| water table | 0.77 × ground | subdued replica, n=100, R² 0.83 |
| dry rock above it | 36% of thickness | applied per body |
| annual swing (Chalk) | 11.9 m | 18 stations, ≥3 yr each |
| headroom at seasonal high | 52.8 m | the constraint on injection |
| baseflow index | 0.34 – 0.75 | by catchment |
Three findings worth carrying forward
The water table is fullest exactly when surplus water exists. 29 of 47 stations peak in January or February. Any scheme banking winter water meets an aquifer that is already at its annual maximum — so headroom, not storage, is the binding constraint. The Chalk happens to pass that test with 52.8 m to spare; that was not guaranteed.
The aquifer turns over only ~8% of its calculated store each year. Seasonally active volume is ~41 Mm³/yr against ~489 Mm³ drainable. Large, and mostly idle — which matters only if a well can reach it.
Two independent datasets agree on evapotranspiration. The water-table model had to assume 430–520 mm/yr to break a degeneracy. The runoff model, fitted only to river flow and never to head, returns 470. That agreement is the strongest internal check the layer contains.
The interface with the aquifer layer
These two must match, and each side names the other. The
corresponding section in papers/aquifers carries the
same table from its side.
| flux | direction | who owns it | value |
|---|---|---|---|
| recharge | water → aquifer | water layer computes, aquifer layer consumes | 217 mm/yr |
| saturated thickness | water → aquifer | water layer’s table sets it | removes 36% of rock |
| baseflow / leakage | aquifer → water | signed exchange, k(h − h_river) |
net positive: aquifer feeds rivers |
specific yield Sy |
aquifer → water | aquifer layer publishes, water layer uses | Chalk ≈ 0.012 |
| storativity for volume | aquifer only | NOT the same number | Chalk ≈ 0.0015 |
The one trap on this interface.
Syis not a single quantity. The value that governs how far a water table MOVES is the one at the water table (Chalk 3–5×10⁻², top band of WD/97/34 Table 4.1.6). The value that governs how much water a body HOLDS is averaged over the whole saturated column (Chalk ~1.5×10⁻³, because most of the column is below 30 m where storage collapses). They differ by more than an order of magnitude and this project conflated them once already, making head 25× too responsive. Dynamics take the shallow value; volumes take the depth-averaged one.
How the split closed a circle
The water-table model constrains recharge / Sy ≈ 29.8 m/yr and
cannot separate the two — a three-arm sensitivity test confirmed the
ratio holds to 2.5% while Sy merely tracks whatever recharge is
assumed. The runoff model estimates recharge independently, from
river flow. Dividing gives Sy ≈ 0.012 for the Chalk — which lands
in the independently modelled range (0.010–0.015) and below the
pumping-test band (0.03–0.05), exactly as predicted and for a stated
reason: pumping tests are sited on productive, well-fractured Chalk.
Two datasets, two models, one parameter neither could resolve alone.
What this layer cannot do yet
Stated plainly, because an outward-facing description that hides its holes is a brochure.
- No river stage anywhere but a gauge. Level is not routed, so “what is the level at a candidate intake” has no answer. 33 stations of 15-minute stage are on disk for this; 7 sit where a flow gauge falls inside a recorded flood outline, which is the strongest calibration evidence available.
- No tidal boundary. The Levels drain through gates that discharge only at low tide, so drainage is tide-limited, not channel-limited. Any attenuation claim made without this assumes an open outlet the system does not have.
- Daily timestep. Flood peaks are often sub-daily. The 15-minute
data refines them — but the split
fmust not be re-tuned to absorb a timestep error, which would bury a numerical artefact inside a physical parameter. - One monitoring borehole on the prime candidate aquifer. The Sherwood has a single station, so its response is uncalibrated. Said rather than smoothed over.
- No injection in 14 years of record, so nothing here is validated for one. Natural amplitude bounds the answer — an aquifer that swings 12 m unaided will not absorb a 50 m mound quietly — but a bound is not a model.
Generated chapters rebuild with build_water_table.py,
build_wt_dynamics.py, build_wt_coupled.py and
build_runoff_model.py. The pipeline that ties the layers together
is papers/pipeline.