⚡ Open Source · Apache 2.0

Automated 2D HEC-RAS Hydraulic Modeling — Terrain to Flood Maps

RAS Agent runs the complete HEC-RAS 2D workflow in a single command — from raw terrain data through watershed delineation, peak flow estimation, mesh build, model execution, and GIS results export.

125 tests passing Apache 2.0 Docker ready HEC-RAS 2D Python 3.11

Eight stages. One command.

Each stage is independently testable and produces typed result objects. Run the full pipeline or individual stages — with mock mode for testing without live data or a HEC-RAS license.

01
🗺️
Terrain
Download & mosaic LiDAR DEMs (ILHMP + USGS 3DEP fallback). Reproject to EPSG:5070.
02
🌊
Watershed
D8 flow direction & accumulation via pysheds. Delineate contributing area and main channel.
03
📈
StreamStats
Query USGS StreamStats API for peak flows. Falls back to IL regression equations (SIR 2008-5176).
04
〰️
Hydrograph
Generate NRCS Dimensionless Unit Hydrographs. Compute Tc via Kirpich method.
05
🔲
Mesh Build
Select cell size by drainage area. Write 2D mesh perimeter geometry to HEC-RAS project.
06
🏗️
Model Build
Clone template project. Assign Manning's n from NLCD. Set boundary conditions and simulation window.
07
⚙️
HEC-RAS Run
Execute RasUnsteady via SQLite job queue. Monitor run status and capture logs.
08
📦
Results Export
Extract HDF5 outputs. Write Cloud-Optimized GeoTIFFs, GeoPackage, and Shapefile per return period.

Engineered for the H&H workflow

Built by engineers for engineers. Designed to handle the unglamorous parts of hydraulic modeling — data wrangling, format conversion, and model assembly — so you can focus on review and QA.

Fully Automated
One command runs the entire pipeline from coordinates to flood maps. Batch mode processes multiple watersheds in parallel. Human-in-the-loop pauses route scientific decisions to the engineer — never silent autonomy on regulatory choices.
python pipeline/orchestrator.py \ --lon -88.578 --lat 40.021 \ --output ./output/test
🐳
Docker Ready
Reproducible environment with GDAL, pysheds, and all geospatial dependencies pre-installed. FastAPI server and web dashboard included. Deploy anywhere Docker runs — workstation, HPC, or cloud.
docker-compose up api # With web dashboard: docker-compose \ --profile dev up
🧪
Mock Mode
Run the complete pipeline workflow without real terrain data, a live StreamStats connection, or a HEC-RAS license. 125 tests pass in CI. Every HTTP call is mocked — no network access required to run the test suite.
python pipeline/orchestrator.py \ --lon -88.578 --lat 40.021 \ --output ./output/test \ --mock python -m pytest tests/ -v

Built by the H&H community

Primary Developer
CHAMP Section
Illinois State Water Survey
Prairie Research Institute, UIUC
In Collaboration With
CLB Engineering Corporation
Hydraulic modeling expertise
and workflow validation
Community
RAS Commander
Open source HEC-RAS automation
tooling community
Project
reepworks.com