2022 CSDMS meeting-099

From CSDMS



(if you haven't already)




Log in (or create account for non-CSDMS members)
Forgot username? Search or email:CSDMSweb@colorado.edu


Browse  abstracts


The Depression Hierarchy and Python Bindings: Quantifying Internally-Drained Regions

Campbell Dunn, (she/her),University of Wisconsin Madison Wisconsin, United States. cndunn@wisc.edu
Richard Barnes, Lawrence Berkeley National Laboratory Berkeley California, United States. rbarnes@umn.edu
Andrew Wickert, University of Minnesota Minneapolis Minnesota, United States. awickert@umn.edu
Kerry Callaghan, Lamont-Doherty Earth Observatory Palisades New York, United States. kerryc@ldeo.columbia.edu



Depressions are inwardly-draining regions of digital elevation models (DEMs). For modeling purposes, depressions are often removed to create a "hydrologically corrected" DEM. However, this compromises model realism and creates perfectly flat surfaces that must be handled in some other way. If depressions are not removed, the movement of water within them must be modeled. This is challenging because depressions are often deeply nested, one inside the other.

Here, we present a novel data structure – the depression hierarchy – which uses a forest of binary trees to capture and abstract the full topographic and the topologic complexity of depressions. The depression hierarchy can be used to quickly manipulate individual depressions or depression networks, as well as to accelerate dynamic models of hydrological flow, as shown in our Fill-Spill-Merge poster. While the algorithm is implemented in C++ for performance reasons, we have also developed a Python wrapper using the pybind11 library. This enables users to capitalize on the strengths of both languages. The Python wrapper also streamlines the process of integrating the depression hierarchy into the CSDMS model interfaces and Landlab.

Open source code is available on GitHub at https://github.com/r-barnes/Barnes2019-DepressionHierarchy and https://github.com/r-barnes/pydephier.