Sandbox — LSD is in active testing. All systems operational·payments are test-mode (no real charges).
Overview Use Cases News Docs Tool Store Support Community Get LSD
Use cases/ Geoscience/ Groundwater flow at mine-closure time scale
Time slider scrubbing 28 years of water-table rebound around the pit replace with clip · 1600 × 900

Groundwater flow at mine-closure time scale

Kriging quarterly heads from 14 monitoring bores and coupling a NetCDF recharge grid gives you a living model of pit-lake rebound. The whole pipeline — clean, krige, difference, report — re-runs itself whenever a new water-level CSV lands.

▶ Video walkthrough Intermediate ⏱ 40 min groundwaterkrigingmine-closurenetcdfhydrogeology

The project#

An open pit stopped dewatering in 2014, and the closure plan hinges on one question — when does the pit lake reach its spill elevation, and what does the water table around it look like on the way there? The regulator wants a defensible answer every quarter, not a one-off study. The deliverable is a 3D drawdown model plus a closure report that stays current as monitoring continues.

The data#

Fourteen monitoring bores export water levels as CSVs — 31,000 readings from 1998 to 2026, each logger with slightly different column names and its own idea of a timestamp. Recharge comes from the regional climate model as a 3.8 GB NetCDF with 336 monthly slices on a 500 m grid. A collar survey supplies bore elevations, and the pit shell arrives as a DEM.

Why this hurts without pipelines#

The classic setup is a folder of notebooks — one to clean each logger's quirks, one to krige, one to plot — plus a Word document assembled by hand. Every quarterly export means re-running everything in the right order and hoping nothing silently broke. In LSD each stage is a live node with cached intermediates, so the kriging step never re-runs unless the heads actually changed, and the report is a delivery step rather than a Friday-afternoon chore.

Step by step

How it's built

  1. 01

    Load the water-level CSVs

    Drop the 14 monitoring-bore CSVs onto the canvas and LSD stacks them into one @load node. Columns type themselves — bore_id as text, date as timestamps, depth_to_water as metres — and the preview table shows 31,000 readings spanning 1998 to 2026.

    Stacked bore CSVs previewing as one water-level table replace with screenshot · 1200 × 750
  2. #001 · Load 02

    Add the recharge grid

    Drag the climate model's NetCDF onto the canvas and pick the rch variable from the node's dropdown. The 500 m recharge grid drapes over the terrain in the 3D viewer, and a time chip appears on the node showing 336 monthly slices.

    NetCDF recharge grid draped over the pit terrain replace with screenshot · 1200 × 750
  3. 03

    Convert depths to heads

    Add a @shape step that joins collar elevations and computes head as elevation minus depth-to-water. The join exposes six artesian readings to flag, then a resample step collapses everything to quarterly medians. Each change previews instantly against the cached load.

    Head-conversion step with flagged artesian outliers replace with screenshot · 1200 × 750
  4. #002 · Shape 04

    Krige each quarter's water table

    Drop a kriging node on the head table and set a spherical variogram with a 1,200 m range on 250 m cells. LSD grids all 112 quarters in one pass, and the variance map shades the pit's north wall red — that's where the next bore should go.

    Kriged head surface with variance shading replace with screenshot · 1200 × 750
  5. #003 · Deliver 05

    Build the drawdown volume

    Difference each quarterly surface against the 1998 pre-mining baseline and stack the results into one time-enabled volume. Scrub the time slider in the 3D viewer to watch the drawdown cone relax and the pit lake step toward its spill level.

    Drawdown cone collapsing on the time slider replace with screenshot · 1200 × 750
  6. 06

    Deliver the model and report

    Wire the volume into a @deliver node and export a georeferenced glTF alongside a PDF report with per-bore hydrographs and rebound statistics. When the next quarterly CSV drops into the watched folder, both regenerate without touching a thing.

    Export node producing the glTF model and closure report replace with screenshot · 1200 × 750
The pipeline

Every step used, at a glance

Load

Bores & recharge

Stack 14 monitoring-bore CSVs and a monthly NetCDF recharge grid into typed entities.

CSVNetCDF
Shape

Krige heads through time

Convert depths to heads, resample to quarters, and krige every water table in one pass.

Deliver

Drawdown model & report

Export a time-enabled 3D drawdown volume plus a closure report that rebuilds itself.

glTF
112 quarters
of heads kriged in one pass
14 bores
driving one live rebound model
0 re-runs
new CSVs rebuild model and report

More use cases