| BASEMENTBasic Simulation Environment for computation of environmental flow and natural hazard simulationLaboratory of Hydraulics, Hydrology and Glaciology (VAW)ETH Zurich | ![]() |
You are not logged in.
Dear BASEMENT Team and Community,
I am reaching out for help regarding a persistent MASS BALANCE PROBLEM: h < 0 error (negative water depth) when simulating a debris flow event in a steep mountain gully using BASEHPC v4.2.0.
I have read through similar topics on this forum and tried various suggested solutions (e.g., disabling safe_mode, adjusting CFL, checking mesh quality), but the simulation still aborts almost immediately after start-up.
1. Model Context
Software: BASEMENT v4.2.0 (Windows), running on GPU (RTX 5070) with Double Precision.
Geometry: Unstructured triangular mesh (~270k elements).
Topography: Steep slopes. The inflow boundaries are located at slopes of 7.4% and 11.7%.
Initial Condition: Dry bed .
2. The Problem
The simulation starts but crashes at t≈0.1s with severe mass balance errors. The negative water depth is significant (up to -0.3m), indicating a major numerical instability, not just floating-point noise.
Log Snippet:
MASS BALANCE PROBLEM: h = -0.299052 < 0.0 ... in cell 184564
MASS BALANCE PROBLEM: h = -0.050049 < 0.0 ... in cell 196383
-> ERROR in kernel_GLOBAL_Update... MASS not conserved
-> ... unfortunately BASEMENT is killed!
3. Troubleshooting Steps Taken (What I have tried)
Based on previous forum discussions, I have attempted the following measures, but none have solved the issue:
A. Mesh Inspection:
I inspected the crashing elements (e.g., ID 184564) in QGIS.
Result: The mesh geometry looks regular (no sliver triangles). The elevation is smooth (no "spikes" or "pits" relative to neighbors). The crashing cells are located in the upstream tributaries, not exactly at the boundary line but downstream of it.
B. Simplified Physics:
I completely disabled the MORPHOLOGY block to run a Pure Hydraulics simulation.
Result: Still crashes with the same error.
C. Boundary Conditions:
Changed inflow type from uniform_in to froude (setting froude_number = 1.0 and 0.8) to avoid the sensitivity of Manning's equation on steep slopes.
Result: Still crashes.
D. Inflow Data (Soft Start):
Modified the hydrograph to have a very slow ramp-up. Starting from 0.001 m³/s and slowly increasing over 1000s, instead of a sudden shock.
Result: Still crashes.
E. Numerical Parameters:
CFL: Reduced from 0.9 to 0.4.
safe_mode: Set to "off".
min_water_depth: Increased to 0.05m.
max_velocity: Added a limiter of 30.0 m/s.
Friction: Temporarily increased Manning's n to 0.1 to slow down the flow.
F. Initial Conditions:
Tried setting a region_defined initial water depth of 0.2m (instead of dry bed).
Result: Still crashes.
4. Project Files
To better illustrate the issue, I have uploaded the complete project files (model.json, .2dm mesh, inflow files) to the following Google Drive link:
https://drive.google.com/drive/folders/ … sp=sharing
5. My Question
Given the steep slopes (>10%), are there specific settings in BASEHPC to handle the wetting process more robustly? Or does this error indicate a hidden issue with the mesh topology that I might have missed?
Any advice would be greatly appreciated. Thank you!
Offline