Sub-catchment Distributed Landscape Evolution Model

AbstractAbstract here, ca. 100 words.ff ffff

Introduction

Introduce the scientific background and the motivation for developing this code.

Ordering and sub-catchment partitioning

Here, the topography is represented with a triangulated irregular network (TIN) data structure. Using a point selection criterion and constrained Delaunay triangulation, dense or high-resolution DEMs obtained from remote sensing are automatically sampled to construct initial triangulated topography. Taking advantage of the Triangle library, it is possible to define higher resolution domains within the entire simulation area.

Various factors motivate the use of irregular triangular elements to represent landscape evolution. The primary advantage is the variable resolution offered by the irregular domain, as opposed to the single resolution inherent in raster grids. Regions of high terrain variability can be modeled more precisely than areas of lower variability. Multiple resolutions could translate into computational savings as the number of nodes could be reduced in areas of low terrain variability (􏰴Goodrich et al., 1991)􏰪. While the TIN data structure is more complex to implement (􏰴Tucker et al., 2001b)􏰪, the reduction achieved in the number of model nodes results in a significant savings that can allow TIN-based landscape evolution models to operate over large regions􏰪. A second advantage is that TINs permit linear features to be preserved within the model mesh. For example, this allows the terrain to mimic natural terrain stream networks without introducing any raster artifacts inherent in grid methods. For a landscape model, TINs allow the stream network to be precisely depicted through the geomorphologic evolution.

Stream network algorithm

Independently of the mathematical complexity one wishes to use to simulate river evolution and associated sediment transport, all models efficiency will be mainly limited to their ability to compute river discharge and sediment yield at each point on the landscape. Thus, key to any implementation is to find the order in which rivers are progressively flowing from one node to the other.

The computation of river flow is typically an \(\mathcal{O}(n_p^2)\) problem where \(n_p\) is the number of points of the TIN on which it is calculated. Such a dependency greatly limits the applicability of landscape evolution model for large values of \(n_p\). Most of the flow routing algorithms, which have been routinely used, are \(\mathcal{O}(n_p\log{}n_p)\) (Wilson et al., 2008). Freeman (1991) developed a recursive algorithm that is \(\mathcal{O}(n_p)\). More recently, Braun & Willett (2013) proposed a new algorithm to compute drainage area that is also \(\mathcal{O}(n_p)\) and adapted to parallel computing architecture. According to the authors, their approach can be used to solve basic landscape equation (stream power law) on meshes that are several orders of magnitude finer than those commonly used with previous ordering algorithms. Here, the flow routing takes advantage of this new algorithm.

This algorithm falls in the SFD’s family (single flow direction approximation) where it is assumed that water goes down to the path of the steepest slope (O’Gallaghan and Mark, 1984; Gallant and Wilson, 2000). Assuming that the landscape is discretized in \(n_p\) nodes each node \(i\) has a single receiver \(r(i)\) except base level or local minima nodes which are their own receiver. Then, the approach consists in inverting the list of receiver nodes to find the list of donor nodes. Nodes with no donors are thus the ones to start the computation of the flow routing. From the receiver information and the number of neighbors to a given node \(i\), the procedure is based on inverting \(r(i)\) into donor array \(D(i,j)\) and number of donors per node array, \(d_i\). This information is then stored in a single dimension array \(D_i\) and an index table/array \(\delta_i\). Next a stack (\(s(i)\)) that contains the list of nodes per catchment is built recursively. Note only are the nodes within the stack or vector grouped by catchment but they are also ordered from downstream to upstream nodes. By inverting the order of the nodes on the stack, one go through the \(n_p\) nodes in an order that is appropriate to compute river discharge and associated sediment transport. The succession of operations used in the algorithm is fully explained in Braun and Willett (2013).

Once the stack is built, the water received from net precipitation \(\nu(i)\) for each node \(i\) is given by: \[\phi(i) = a(i) \nu(i) , \text{ for } i=1,\dots,n_p\] with \(a(i)\) the Voronoi area associated with node \(i\). The computation of the flow discharge is then expressed in the following manner: \[\phi(r(s(i))) = \phi(r(s(i)))+\phi(s(i)), \text{ for } i=n_p,\dots,1,-1\] The algorithm can take into account any spatial variation in rainfall/precipitation such as that resulting from an orographic model. The algorithm could also take into account more complex situations, involving water storage and/or release between adjacent cells.