In-browser App

StageCurve

Generate stage curves for open pits, underground mines and surface dams. Load a floor and a roof surface and StageCurve derives the stage–area and stage–storage (volume) relationships from the volume between them at every elevation – pit water rebound and dewatering targets, underground void capacity and mine flooding, dam and reservoir capacity, tailings and pollution-control dam freeboard. Everything runs in your browser; your elevation data never leaves your machine.

1. Load Surfaces

StageCurve measures the volume between a floor surface (the pit floor, the mine floor, the dam basin or a liner) and a roof surface (the original topography, the mine roof or hangingwall, a cap or a design surface). Each surface is drawn as soon as it loads so you can confirm the data is right before anything is computed from it.

Each surface must be supplied as a ZIP file containing an ESRI ASCII grid (.asc) and its projection file (.prj). The .asc header (ncols / nrows / xllcorner / cellsize / NODATA_value) states the cell size, the NODATA value and the grid regularity, so none of it has to be inferred. The .prj is read to confirm the coordinate system and to check that both surfaces are in the same one. The DEM must be in metres – a projected coordinate system with metre units (UTM, Transverse Mercator, a Lo. system). Grids in degrees (geographic coordinates) or in feet are rejected, because every area and volume here is computed in metres. Elevations must be in metres too.

Floor surface

No floor surface loaded.

Roof surface

No roof surface loaded.

Offset for the missing surface

Upload both surfaces, or upload just one and let the offset generate the other at a uniform separation. A floor surface on its own with a zero offset gives the open stage curve, with nothing capping the storage from above.

Upload a floor surface, a roof surface, or both.
No surfaces loaded yet.

Elevation distribution

2. Grid

Cell size is taken from the .asc header (or detected from the point spacing for a CSV) and sets the horizontal area each cell represents – the single most important control on the resulting volumes. Two surfaces can only be subtracted cell by cell if they sit on the same grid, so both are snapped onto one grid built at this cell size, and a cell counts only where both surfaces have data. All coordinates and elevations are in metres, as required in step 1.

Load a surface to detect the grid.

3. Stage Range & Pond Method

At each stage (water surface elevation) the app sums the volume between the two surfaces below it: every cell fills from its floor elevation up to the stage, and stops once the stage passes its roof surface. All cells below stage is the simple bathtub calculation over the whole area. Connected pool flood-fills outward from a seed cell instead, so only volume hydraulically connected to the pond is counted – the correct choice when the surfaces cover more than one pit, void or depression. Both work off the floor surface. In connected mode the spill elevation (the stage at which the pool first reaches the edge of the usable area) is reported; stages above it are extrapolations beyond what the data can support.

4. Stage–Area & Stage–Volume Curves

Elevation runs up the vertical axis, with inundated area on the lower axis and cumulative storage on the upper axis – the conventional presentation for a pit, void or reservoir rating curve. Hover any point for the exact figures.

Compute the curves in step 3 to see them here.

Query the curve

Linear interpolation between computed stages, in both directions.

5. Water Level & Inundation Extent

The floor surface rendered as terrain, with the flooded cells shaded blue and darker with depth. Drag the water level slider to raise and lower the pool – it is restricted to the minimum of the floor surface and the maximum of the roof, and the area and storage below it are reported live. The extent shown always respects the pond method chosen in step 3, and works as soon as the surfaces are loaded.

Load a DEM to set the water level range.

6. Results Table

One row per stage. Incremental volume is the storage gained since the previous stage – useful for checking that the stage interval is fine enough near the bottom of the pond, where the curve changes shape fastest. "Cells full" counts cells where the water has reached the roof surface and can hold no more; once every cell is full the volume stops growing and the curve goes vertical.

No results yet.
Stage (m) Depth (m) Area (m²) Area (ha) Volume (m³) Volume (Mm³) Incremental volume (m³) Cells Cells full

7. Report

Generates a standalone report of the run: DEM and grid properties, method settings, the curve chart and inundation map, and the full stage table – ready to print or save as PDF.

8. Export

Download the results as CSV. "Stage curve" is the table from step 6; "Surfaces" is the gridded floor and roof elevation of every usable cell with the void thickness between them, in metres – exactly what the volumes are computed from.