ForgeGIS · Digital Twin · Capability Preview

Hoover Dam, both ways

Pause a running flood simulation. Change one decision. Keep both worlds.

A ForgeGIS GPU flood simulation over real SRTM terrain — Boulder Basin, the dam site, all of Black Canyon, upper Lake Mohave — runs to epoch 54 and is paused mid-event, then forked in place with no copy of its history. One decision is overridden in the branch: release rate, ten times higher. What comes back is two worlds that share every epoch before the anchor and diverge cleanly after it, with a ledger that conserves water across the split.

2 worlds
One paused run, forked in place at epoch 54 — identical history before the anchor, clean divergence after it
10×
The single decision overridden in the branch: release rate. Everything else held constant.
≈1.3 km³
The wedge between the two worlds after 32 epochs — about 4% of a full Lake Mead, and what the closed-form law predicts
The ForgeGIS Studio browser workspace: a dataset catalog on the left, a satellite map of Lake Mead and the canyon running south through the centre, and a Digital Twin panel overlaid at the top right showing a running twin at epoch 10
The Digital Twin panel inside the ForgeGIS Studio canvas, running a constant-rate release twin at epoch 10. Lake Mead sits at the top of the frame, the gorge runs south. Pause and Stop are live; Resume and Fork what-if are dimmed — a run has to be paused before it can be forked.

What a digital twin is here

Not a rendering, and not a one-shot simulation. A running, inspectable, branchable state.

Deterministic epochs

State lives on the GPU and advances in discrete epochs. The same twin definition and the same terrain produce the same sequence of epochs every time, which is what makes two runs comparable at all — and what lets a branch inherit a history rather than re-simulate one.

Zero-copy forking

A paused run can be forked in place. The branch does not copy the parent's history; it anchors to it. Branches differ by parameters only, so everything the two worlds disagree about after the anchor is attributable to the one value that was overridden.

A ledger that balances

Every epoch's water is accounted in a single conserved quantity across the whole corridor, so the difference between two worlds is a number you can check against a closed-form prediction rather than a picture you have to trust.

Three runs over two SRTM tiles. Every figure on this page is read back off the recordings, not from a design document — including the ones that are inconvenient.

How to read the numbers

What the units mean, and where the model stops being literal. Worth two minutes before the charts.

The corridor
The channel that carries water from the basin over the dam site is an engineered routing surface for demonstration, not a surveyed breach profile. It is a minimax path held to a strictly monotone fall — real channel lows kept, flats given 0.3 m/km, an 8 m trench. Treat “where water goes” as qualitatively scoped, the same as the timing below.
The clock
The sim clock is a model tick, not a calibrated second. Read totals and comparisons; never “flows per second.” For scale: one epoch of baseline release (≈4.4 million m³) is roughly 52 minutes of Hoover’s real maximum outlet capacity (~1,400 m³/s).
The ledger’s unit
Meter-cells. One metre of water standing on one cell ≈ 73,000 m³ ≈ 59 acre-feet. Every volume quoted here is that bookkeeping, exact to rounding — the conversion is pure geometry.
The grid
The forked run is 256 × 256 over a 0.6° × 0.8° corridor; one cell covers ≈0.073 km² (~18 acres). Depths and stages are in metres — SRTM’s native unit — with feet alongside, since the Colorado is managed in feet and acre-feet.

Act I — where water stands

The simpler question first, because it produces the curve every reservoir manager already reads. The level rides a ramp from 200 m to 320 m (656–1,050 ft), baked into the twin’s identity rather than offered as a knob, and at every stage the run asks one question: which cells sit below the line?

Black Canyon from above: a thin dark thread of water follows the channel floor, with one small pool widening mid-canyon
207 m (679 ft)
The same view one stage higher: the thread has thickened and the mid-canyon pool has grown
214 m (702 ft)
The same view higher again: water now fills more of the canyon floor and begins reaching into side pockets
221 m (725 ft)
The same view higher still: the water body is visibly wider along its whole length and its colour has shifted toward blue
228 m (748 ft)
The highest stage shown: water fills the gorge broadly, with the depth ramp climbing through blue into green at the widest reaches
261 m (856 ft)

Five stages of one ramp, same frame each time. At the lowest stage a thin thread of water follows the channel floor; by the highest it has widened through the gorge and reached into the side drainages, and the depth ramp has climbed from purple through blue into green. Nothing moves between these frames but the line.

The honest tell: by the pause the baseline stands ≈489 km² of water in the valley — against a real Lake Mohave of about 114 km². That gap is the point. The upper stages here are screening geometry, not an operating scenario, and the curve below says so plainly.

Stage-area curve: standing water against stage, 200 to 262 metres Standing water rises monotonically from about 222 square kilometres at stage 200 metres to about 489 square kilometres at stage 262 metres, steepening gently as the pool climbs the gorge walls. 0 200 400 600 200 215 230 246 262 stage (m) standing water (km²)
The stage-area curve, read off the recording. Standing water climbs from ≈222 km² at 200 m to ≈489 km² at the pause near 262 m, and never once decreases — a bathtub’s one law. For scale, Lake Mead’s full-pool surface is ≈640 km².

Act II — one decision, two worlds

Now the terrain spans both source tiles as one corridor mosaic — Boulder Basin, the dam site, all of Black Canyon, upper Lake Mohave — so the story is connected end to end: water leaves the lake, crosses the dam site, and runs the gorge under one conserved ledger.

Pause, then branch

At epoch 54 the run is paused. The what-if form opens on the paused branch and exposes exactly what is forkable: the promoted parameter. Here that is the release rate, raised ten times. Nothing else is touched — not the terrain, not the clock, not the history.

What “zero-copy” buys

The branch anchors to the parent rather than duplicating it, so forking a long-running twin costs almost nothing and can be done mid-event, while the operator is still watching. The two worlds share every epoch up to the anchor and nothing after it.

The form states the contract in one line: branches differ by parameters only; the fork anchors where this branch paused.

The Digital Twin panel showing a Paused badge, the Fork what-if control active, an inflowRate field set to 600, and a Create fork button, with the status line reading main: PAUSED at epoch 54
The what-if form on a run paused at epoch 54. inflowRate is set to 600 for the branch, and the note under the field states the rule the whole capability rests on.

Same epoch. Two rivers.

Both frames are the same epoch in the two worlds — same terrain, same imagery, same history up to epoch 54.

Baseline world
Satellite view with Lake Mead at upper right and Black Canyon running south; a narrow blue and purple ribbon of water threads down the canyon
Emergency fork
The same satellite view at the same epoch; the water is far wider, spreading across the canyon floor with a bright green and yellow core indicating greater depth

Left, the baseline release threads a narrow ribbon south down Black Canyon. Right, the branch at ten times the rate: wider everywhere the baseline reached, further down-canyon, and its core has climbed the depth ramp from blue into green and yellow. The only difference between these two frames is one number, changed once, 32 epochs earlier.

The ledger says the same thing

The pictures are persuasive; the ledger is checkable. Water in the gorge, per world, per epoch — the decision as a number.

Water in the gorge, baseline versus emergency fork, epochs 0 to 99 Both worlds share one history until epoch 54, where the run is forked. The emergency fork then rises at ten times the baseline rate, reaching about 1.65 cubic kilometres by epoch 86, where the forked run ends. At that same epoch the baseline holds about 0.38 cubic kilometres, so the wedge between the two worlds is roughly 1.3 cubic kilometres. The baseline run continues alone to epoch 99, finishing near 0.44 cubic kilometres. 0.0 0.5 1.0 1.5 2.0 0 20 40 60 80 100 fork anchor · epoch 54 epoch 54 Emergency — 1.6 km³ Baseline — 0.4 km³ ≈1.3 km³ wedge 1.3 km³ Baseline release Emergency release (10×) epoch water in gorge (km³)
One line until epoch 54, then two. At epoch 86 — the epoch shown in both frames above, and where the forked run ends — the baseline holds ≈0.38 km³ and the emergency world ≈1.6 km³ (≈1.3 million acre-feet). The shaded wedge between them at that shared epoch is ≈1.3 km³ of water — about 1.0 million acre-feet, or roughly 4% of a full Lake Mead. The baseline run continues alone to epoch 99, finishing at ≈0.44 km³ (≈0.36 million acre-feet).

The branch accumulates at exactly ten times the baseline rate from the anchor on — so the wedge is not an emergent surprise, it is what the closed-form law predicts, and the ledger lands on it. That agreement is the actual claim being made here.

Interlude · a data-archaeology finding

SRTM remembers a full lake

Run the same bathtub over the Lake Mead tile and the method exposes its own input. In February 2000 the SRTM radar mission measured the water surface of a nearly full reservoir — pixel-verified at about 372 m, dead flat, across Boulder Basin. There is no lakebed in that terrain. So a stage ramp from 273 m to 375 m shows almost nothing at all, until it crosses the frozen surface and the whole basin snaps wet in a single step. That step lands at 373.3 m rather than 372 m because the ramp advances in 1.7 m increments — 373.3 m is simply the first stage above the frozen surface, and the gap is the ramp’s resolution, not a disagreement in the measurement. The cliff measures ≈564 km² against a real full-pool surface of ≈640 km² — the radar’s lake and the model’s cliff are the same object, measured 26 years apart. We keep this in because a method worth trusting is one honest enough to expose quirks in its own inputs.

A near-empty frame: almost the entire tile is dry, with only a few wet pixels at the lower edge
Below the frozen surface — almost nothing is wet
The same frame with the entire Lake Mead basin appearing at once in green, including the arm reaching north and the basins to east and west
At the frozen surface — the whole basin appears in one step
The same basin footprint one step later, rendered in yellow to indicate greater depth
Above it — the same footprint, now deeper
Wet area against stage over the Lake Mead tile, 273 to 375 metres Wet area stays near zero across the entire ramp from 273 metres, then jumps by about 564 square kilometres in a single step at stage 373.3 metres, the water surface frozen into the terrain by the February 2000 radar mission. 0 200 400 600 800 273 298 324 349 375 the frozen surface — ~373.3 m (1,225 ft) ~373.3 m stage (m) standing water (km²)
Flat for a hundred metres of stage, then a single-step jump of ≈564 km² at 373.3 m. The cliff is February 2000, seen from a flood model run in 2026.

What this makes possible

The dam is the demonstration. These are the properties it is demonstrating.

Branch a live run

What-ifs during the event

Because forking is cheap and happens on a paused run, an operator can ask “what if we opened it further?” while the event is still unfolding — not in a post-hoc study run days later.

History without copies

Many branches, one past

Branches anchor to a shared history instead of duplicating it, so comparing several courses of action does not multiply the cost of the run that produced them.

A ledger that balances

Differences you can audit

One conserved quantity across the corridor means the gap between two worlds is a checkable number. Here it matches the closed-form prediction; where it would not, that is a finding, not a rounding error.

Corridor-scale terrain

Across tile boundaries

The state grid spans a mosaic built from more than one source tile, so a twin can follow water from a reservoir, across a structure, and down a gorge under a single ledger.

The digital twin is a ForgeGIS engine capability, driven from the ForgeGIS Studio canvas, and is targeted for an upcoming release. It is a stated direction, not a shipping feature — everything shown on this page is a real recording, but it is not yet in your hands.

Want the depth behind this?

The full technical showcase carries the validation blocks this page leaves out — definition hashes, run identifiers, wet-cell counts, the fork ordinal, and the recorded API exchanges behind every figure above. Seaglass Foundry is happy to walk an evaluator through it.

rich@seaglassfoundry.com