Audit corrections, input checks, two-tab dialog and verified value passing (v1.1) What changed Numerics and physics (core/solver.py, core/rheology.py) Yield stress is subtracted from the trial discharge vector before the semi-implicit friction division (start threshold now exactly h·S = τy/γm, isotropic). Coupled friction with the transverse discharge (Cozzolino et al. 2021), optional θ-weighting (de Almeida et al. 2012). CFL also limited by the depth added by the inflow; exact hydrograph volume per step; nodata source cells dropped without losing volume. New outputs: instantaneous peak h·v² (HV2_max) and Froude number at that moment (Fr_hv2); warnings when the flow hits the closed boundary or the 30 m/s velocity cap. Dialog (dialog.py) Two top-level tabs: Single run and Multiple-run analysis (LHS), one shared log, Stop buttons, best LHS run re-run to write the selected layers. Input checks: DEM CRS (geographic / non-metre units rejected), reprojection of vector layers, hydrograph table/CSV parsing, rotated rasters, output folder checked before the run. Reproducibility: all solver settings in the JSON file, <prefix>_run.json next to the rasters, LHS CSV written after every run plus _context.json. ρs and ρw now reach the solver in the single run (12be4e8). Spin-box defaults fixed: α₁ = 0.00423 and α₂ = 0.0311 (were 0.0001 and 0.03 → τy 0.019 Pa instead of 0.80 Pa in exponential mode), arrival threshold 0.005 m (was 0.01 m), Cv_max 0.615 (was 0.61); LHS η fields no longer accept 0 (crashed with log10(0)). New plugin icon (EN and RU). EN and RU copies are kept token-identical in code. Why A technical audit of the plugin (used for a master's thesis on debris-flow risk, Montecito 2018 validation) found errors in the yield-stress treatment, inflow volume, CFL step and several UI paths where user values were lost or altered. Verification Headless PyQGIS checks (QGIS 3.44.8, Numba and NumPy backends, EN and RU): every user-editable value reaches the solver exactly (single run in both rheology modes, all LHS runs, best-run re-run with identical h_max); steady uniform channel flow matches the analytic normal depth (relative error 1e-4 … 4e-14 for Fr < 0.35), mass balance ±1e-13 %, lake at rest stays at rest, rest threshold h·S = τy/γm; JSON save/load round trip without losses.
yes
Oidorrr
2026-10-18T15:15:41.630482+00:00
3.16.0
3.99.0
None
yes
Plugin Tags