Skip to content

v0.2.1 — Surcharge Volume, HEC-22 Inlets, and RCMK Cell Renumbering Fix

Choose a tag to compare

@aspragueumkc aspragueumkc released this 10 Jul 03:48

New Features

  • 1D Pipe Surcharge Volume Decomposition — Pipes now model surcharge (pressurized flow above the crown) with overflow gating, supporting circular, rectangular, and elliptical cross-sections with table-lookup geometry.
  • HEC-22 Inlet Capture — Grate, curb, slotted, and combination inlet types now use HEC-22 on-sag capture equations. Geometry/type fields added to the drainage inlets schema.
  • Open Boundary Relaxation (open_bc_relaxation) — Boundary condition edges can now use a relaxation scheme for smoother wave reflection / open-outflow behavior. Controlled via spin-box UI and optional bc_relax field on BC layers.
  • Simulation Config Reload — Can now load simulation configs from run logs when the configs table is empty.
  • Hyetograph / Hydrograph Editor Dialog — Graph editor for defining rainfall hyetographs and inflow hydrographs.
    Bug Fixes
  • RCMK Cell Renumbering — Inlet, outfall, and pipe-end cell IDs are now correctly remapped through the GPU renumbering permutation, fixing drainage sources/sinks that were landing on wrong cells.
  • Internal Flow Forcing — Force accumulation and RCMK permutation now correctly applied on the native coupling path and via dataclasses.replace.
  • QGIS / GPKG Compatibility — QgsWkbTypes WKB integers now wrapped in enum for geometry type checks. QML style path corrected. surface_area, outfall_area, zero_storage fields added to GPKG adapter.
  • Drainage Network — _DS_ENSURE shared-capacity bug fixed; Ao_total now computed before depth check; node_depth reset between test iterations.
    Performance & Testing
  • ANUGA Validation Suite — 35 GPU tests across 18 cases now pass, confirming OpenCV + ANUGA accuracy.
  • Pipe1D Refactor — Geometry lookup moved to device-side pipe1d_lookup_geometry; table precomputation wired into mesh build.
  • GPU Dead Code Cleanup — Stale ANUGA test files removed; unused CPU ghost paths pruned.