Skip to content

The lsdtt3 command-line tools

lsdtt3 ships 45 command-line programs. This page lists all of them, grouped by what they are for, so you can find the one you need without reading 45 reference pages.

Every tool is driven by a parameter file rather than command-line flags — if you have not met one yet, start with Your first analysis. Every tool also documents itself: <tool> --help prints its full parameter list, and the same content is on this site under Command line reference.

If you only read one line of this page

Run lsdtt-raster-preprocessing on your DEM before anything else. It enforces the projection, fills or breaches pits, and gives you a hillshade to check the data loaded the way you expected.


Getting and preparing data

Tool What it does
lsdtt-fetch-raster Fetch a DEM for a bounding box and write it as a raster. Keyless COP30 and Planetary Computer sources; OpenTopography needs a key.
lsdtt-fetch-lithology Fetch geological map units from Macrostrat (keyless, CC BY 4.0) for a bounding box, as a polygon layer in the box's UTM zone, with an attribution file.
lsdtt-fetch-erosion-rates Fetch basin-averaged cosmogenic erosion rates from OCTOPUS (keyless) for a bounding box: an erosion-rate sample CSV, the basin polygons, a suggested DEM box and the CC BY 4.0 attribution.
lsdtt-fetch-river-lines Fetch (OS Open Rivers for Great Britain, keyless) or read river centrelines for an area, and prepare them for stream burning: clipped, noded, oriented downstream, with a topology table and attribution.
lsdtt-raster-preprocessing The preparation pipeline: projection enforcement and reprojection, masking, nodata filling, breaching, pit filling, hillshade.
lsdtt-raster-calculator Two-raster algebra.
lsdtt-stream-burning Conditions a DEM using a supplied vector channel network (Burning mapped rivers into a DEM).

Surfaces, slopes and curvature

Tool What it does
lsdtt-surface-metrics Slope, aspect, curvature and related derived rasters from polynomial surface fitting, plus the SMAP shape classification.
lsdtt-spectral-analysis Perron-style spectral analysis of a DEM. Requires FFTW3.
lsdtt-feature-finder Experimental terrain-feature detection for LiDAR-derived DEMs.
lsdtt-mountain-front Identifies mountain masses via adaptive relief thresholding.
lsdtt-linear-stats Statistics of a raster sampled along linear vector features.
lsdtt-slope-area Slope–area statistics for one or more polynomial-fit smoothing lengths, binned by logarithmic drainage area.
lsdtt-swath-profile Swath profile along an ordered polyline baseline.
lsdtt-cross-sections Channel network from supplied source points, with extracted cross sections.
lsdtt-bankfull-width Bankfull channel width and depth per cross section from Manning's equation, on a high-resolution DEM. Needs source points and a reach table of Manning's n and target discharge.

Flow routing and drainage

Tool What it does
lsdtt-drainage-analysis Static topographic indices: drainage area, TWI, STI, and the Cavalli connectivity index. No time dimension.
lsdtt-channel-extraction Extract a channel network from a DEM; snap field points to it with drainage area and channel slope (Field points).
lsdtt-channel-network-analysis Build a channel and junction network, then run one or more network analyses on it.
lsdtt-internal-drainage Detect, review, route, tag and analyse internally drained basins — moulins, playas, quarries.
lsdtt-outlet-matching Match reference-DEM outlets to target-DEM cells by comparing D8 contributing areas.

Basins

Tool What it does
lsdtt-basin-extraction Extract a channel network and select basins from it.
lsdtt-basin-stats Basins from a CSV of outlet points, with per-basin statistics.
lsdtt-basin-surface-metrics Basins from outlet coordinates, with multiscale surface metrics per basin.

Channel profiles and chi

Tool What it does
lsdtt-chi-analysis End-to-end chi workflow. Requires Eigen3.
lsdtt-sediment-routing 1-D reach-scale bedload sediment routing on a D8 channel network. Also where the GIUH lives.

Hillslopes and divides

Tool What it does
lsdtt-ridgeline-analysis Drainage divides and their elevation profiles.
lsdtt-divide-migration Divide-migration metrics from supplied outlets.
lsdtt-hillslope-channel-coupling Hilltop curvature, hillslope length and relief, and the non-dimensional E*/R* pair, traced from ridgeline to channel.

Floodplains, terraces and valleys

Tool What it does
lsdtt-flat-surface-finder Identifies broadly flat surfaces — floodplains, alluvial fans, fluvial and marine terraces.
lsdtt-fluvial-surfaces Stratifies flat ground into fluvial levels: floodplain, terrace treads, fan surfaces.
lsdtt-valley-centreline Per-channel valley identification and a medial-axis valley centreline.
lsdtt-water-centreline Centreline from each water-area polygon, for wide river reaches.
lsdtt-water-line-repair Reconnects stream polylines truncated where roads cross.

Hydrology and hydraulics

Tool What it does
lsdtt-distributed-hydrology Two hydrologic models, one driven by TOPMODEL equations and the other driven by S-HYPE: time-evolving, rainfall-driven runoff simulation with distributed stores.
lsdtt-graphflood Stationary graph-based hydraulic routing. Solves for steady-state flow depths given a rainfall-rate field.

See Hydrological modelling for which of these answers which question — they are complementary, not alternatives, and neither is a flood-timing model.

Coastal and tidal

Tool What it does
lsdtt-marsh-topography Marsh and tidal-channel analysis workflow.

Cosmogenic nuclides

Tool What it does
lsdtt-cosmo-tool Erosion-rate inversion from measured nuclide concentrations at sample points.
lsdtt-cosmo-prediction Predicts nuclide concentrations across a DEM: steady state, step change, or accumulated downstream.
lsdtt-cosmo-column-tool 1-D column simulation. No DEM required.
lsdtt-cosmo-landslides Triggered landslides with an imposed size distribution, excavated and written out for the cosmogenic and sediment-routing tools.

The physics, the scaling schemes and the CRONUS/OCTOPUS comparisons are in Cosmogenic nuclides.

Landscape evolution and synthetic landscapes

Tool What it does
lsdtt-lem Landscape evolution model descended from MuddPILE and DONKmodel. Fluvial incision plus a choice of hillslope solvers.
lsdtt-advection-diffusion A deliberately small transient model (D8 or D-infinity fluvial incision, linear hillslope diffusion, uniform uplift) for controlled numerical experiments.
lsdtt-lithology-erodibility Turns a lithology map and a lithology → erodibility table into an erodibility (K) raster for lsdtt-lem.
lsdtt-synthetic-surfaces Synthetic rasters for testing analysis routines.
lsdtt-synthetic-networks Synthetic Optimal Channel Networks with tunable branching.

Choosing a synthetic landscape tool explains which of the three to reach for.


Other ways to drive lsdtt3

The command-line tools are not the only interface:

  • Python bindings expose much of the library directly, which is often easier for exploratory work and for stitching steps together.
  • The QGIS plugin runs a subset of the tools from inside QGIS.
  • Snakemake workflows chain tools into reproducible multi-step pipelines.