Skip to content

Simulation Domain

The structured simulation grid is defined by the drawn Simulation Domain action. scenarify uses uniform Cartesian simulation domains with quadratic cells. The cell size of the simulation domain is the resolution used in the simulation and for resampling simulation input data, e.g. terrain and roughness.

Supported Domain Sizes

The maximum number of cells and valid simulation areas supported are dependent on the chosen model components and the available GPU memory. The table below outlines rough estimates for different scenarios and GPU memory sizes:

Model Components Accuracy GPU Memory Size Maximum Number of Wet Cells Maximum Valid Area with 1 m Resolution
Rainfall-Runoff Interactive 48 GB 400 millions 400 km²
River modeling High 48 GB 300 millions 600 km²
Rainfall-Runoff Interactive 24 GB 200 millions 200 km²
River modeling High 24 GB 150 millions 300 km²
Rainfall-Runoff Interactive 12 GB 100 millions 100 km²
River modeling High 12 GB 75 millions 150 km²

For rainfall-runoff scenarios, the model components included are rain, interception, infiltration and surface flow. For river flood scenarios, the model includes surface flow generated from river inflows and outflows, but not rainfall. In this case, many cells in the simulation domain are dry thus enabling larger simulation domains than in rainfall-runoff scenarios.
Choosing interactive accuracy instead of high accuracy reduces memory usage by about one third. With 48 GB of GPU memory, this allows the simulation of an area of approximately 900 km² in a river flood scenario.

Invalid Cells

No water flow occurs at invalid cells within the simulation domain, as they are excluded from the surface water simulation. Cells in the simulation grid are automatically flagged as invalid if the terrain data is invalid. Invalid cells can also be specified by Valid Zones and Invalid Zones or with an Invalidation Point. Also cells outside of catchments are flagged as invalid, for example if the simulation domain is set up from derived catchments. Cell interfaces between valid and invalid cells or at the border of the simulation domain are modelled with free outflow boundary conditions (BCs).

Hint: Polygonal simulation domains can be achieved by either marking it out as a Valid Zone or by defining Invalid Zones, where no simulation results are needed.

Simulation Domain from Derived Catchment

A simulation domain can also be set up from one or multiple Catchment Derivation Zones. The catchment derivation zone marks the outlet of the catchment. Additionally, a bounding box can be specified which bounds the catchment inside. If no bounding box is specified, the catchment derivation zone will be iteratively expanded until it fully encompasses the catchment.

Catchment Derivation Algorithm

The catchment derivation algorithm derives catchments from terrain data. The speed of the algorithm relies on the key concept of spill heights. The spill height at cell \(i\) is defined as:

\[ s(i) = \begin{cases} b(i) & \text{if $i$ is on the border of the bounding box }, \\ \max(b(i), \min_{j \, \in \, N_i}(s(j))) & \text{otherwise.} \end{cases} \]

where \(b(i)\) is the elevation of \(i\) and \(N_i\) is the neighborhood of \(i\). The neighborhood can be specified in the Catchment Derivation Zone action.

The following steps are performed in this algorithm:

  1. Queue Initialization: The algorithm starts by calculating flow paths for all cells within the bounding box. A priority queue is initialized with border cells, prioritized by their spill height.

  2. Queue Processing: Cells are processed by priority. As each cell \(i\) is processed, neighboring cells that are not in the queue or have not been processed are added, and their spill heights are calculated. The flow path \((j,i)\) is recorded if cell \(j\) is discovered by cell \(i\).

  3. Catchment Derivation: Once processing is complete, the catchment is identified by tracing flow paths from cells to the catchment outlet. Cells outside this flow are invalidated.

Buffering Derived Catchments

When creating a domain from a derived catchment, the software can buffer the catchment area by shifting boundaries as needed. This helps manage edge effects and ensures a more accurate simulation. Cells outside of the buffered catchment boundaries are flagged as invalid. Finally, the simulation domain is set to include the entire buffered catchment.

Simulation Domain for River Modeling

It is best practice to follow these steps for positioning the simulation domain in the specific case of river modeling.

How to Split Large Regions?

Large regions can be effectively managed by splitting them into smaller, more manageable sub-domains. This technique helps distribute the computational workload and allows for parallel processing. For a practical example, see the Working with Large Models use case tutorial.

Hint: Avoid creating multiple projects for different domains. Instead, create scenarios for each domain within a single scenarify project by using the simulation domain as a scenario parameter, see also Working with Large Models. This approach streamlines project management.

Why Not Use Triangular or Adaptive Grids to Support Small Structures?

Scenarify uses structured rectangular grids over triangular meshes or adaptive grids due to their simplicity, efficiency, and performance. Historically, triangular and adaptive grids were introduced to reduce cell counts, thinning out terrain models to meet past performance and memory limitations. With modern GPUs and optimized solvers, however, these limitations no longer apply; structured grids can handle small cell sizes and large cell counts efficiently. This shift is supported by the expanded memory capacities of current GPUs, enabling sub-meter resolutions for structured grids across large domains, see Supported Domain Sizes.

While adaptive grids and triangular meshes were designed to provide finer resolution only where needed, they require extra memory to store quadtrees and neighborhood data, introducing significant computational overhead. The process of generating these meshes is also time-consuming and resource-intensive. Although adaptive grids can capture intricate geometry, the associated memory and data management costs often outweigh the minor gains in the actual accuracy in the results of the simulation model. In scenarify, small linear features, such as thin walls, are stored as vector formats and rasterized on-the-fly onto the simulation domain's structured grid. This method maintains watertight structural representations, ensuring exact wall levels and thus accurate modeling of overtopping flow conditions, regardless of grid resolution. With scenarify's high-resolution support, accurate modeling of water levels, velocities, and flow conditions near walls is fully achievable, removing the need for adaptive grids.

When assessing the robustness and accuracy of hydraulic models, validation on real-world flood events is crucial. Extensive validation efforts have demonstrated that scenarify's structured grid simulation solver consistently delivers reliable and precise representations of observed data. For further details and specific examples, please refer to Validation and Use Cases.

References

  • Wang, L., and Liu, H. 2006. An efficient method for identifying and filling surface depressions in digital elevation models for hydrologic analysis and modelling. International Journal of Geographical Information Science 20 (2): 193-213.
    DOI: 10.1080/13658810500433453