The eSCAPE model is a Python-based landscape evolution model that simulates over geological time (1) the dynamics of the landscape, (2) the transport of sediment from source to sink, and (3) continental and marine sedimentary basin formation under different climatic and tectonic conditions. The eSCAPE model is open-source, cross-platform, distributed under the GPLv3 licence, and available on GitHub (
Since the 1990s, many software programmes have been designed to estimate long-term catchment dynamics, drainage evolution, and sedimentary basin formation in response to various mechanisms such as tectonic or climatic forcing
In most of these models, climatic and tectonic conditions are imposed and often consist of rather simple forcing, such as uniform spatial precipitation and vertical displacements (uplift or subsidence), far from reflecting the complexity of the natural system. In addition, such approaches are unable to properly explore potential feedback mechanisms between each of the Earth's components. In fact, only a handful of these models are able to account more completely for the dynamics of the lithosphere and mantle, the role of sedimentation, and a more quantitative representation of climate relative to its interactions with topography (such as orographic rain)
Yet, we are still missing a tool to evaluate the global-scale evolution of the Earth's surface and its interaction with the atmosphere, the hydrosphere, and the tectonic and mantle dynamics. Such a tool will certainly provide new insights and help us to better characterise many aspects of the Earth system ranging from the role of atmospheric circulation in physical denudation, to the influence of the erosion and deposition of sediments on mantle convection, to the location and abundance of natural resources, to the evolution of life.
The model presented in this paper is a first step toward the development of a parallel global-scale landscape evolution model. It allows researchers to couple the Earth's surface with global climatic perturbations and geodynamic forces acting within the Earth's interior.
Landscapes and sedimentary basin evolution in eSCAPE are driven by a series of standard stream power incision and diffusion laws
First, this paper presents the implicit, iterative approaches that are used to solve the multiple flow direction water routing and the erosion–deposition processes (Sect. 2). Then in Sect. 3, I provide a list of all the parameters required to run the eSCAPE model and I discuss the input and output formats. In addition, three examples based on both generic and global-scale experiments are described in detail and showcase the code main capabilities. Finally, in Sect. 4, I analyse the scalability of eSCAPE and discuss some of the limitations and future implementations that are necessary to improve the performance of the code on parallel architectures.
The eSCAPE model
Flow accumulation (FA) calculations are a core component of landscape evolution models as they are often used as proxy to estimate flow discharge, sediment load, river width, bedrock erosion, and sediment deposition. Until recently, conventional FA algorithms were serial and limited to small spatial problems
In addition, when using the aforementioned implementation strategies, several problems might arise in (1) load balancing, when catchment size greatly changes in the simulated domain, or (2) handling very high resolutions at which multiple processes are needed for a single catchment. In addition, most of these methods assume a single flow direction (SFD – Fig.
To overcome these limitations,
As explained in
In eSCAPE, this matrix is built in parallel using compressed sparse row matrix functionality available from SciPy
River incision, associated sediment transport, and subsequent deposition are critical elements of landscape evolution models. Commonly these are defined based on either a transport-limited
As mentioned above and following
The entrainment rate of sediment (
Once the entrainment rates have been obtained, the sediment flux moving out at every node
In most landscape evolution models, internally draining regions (e.g. depressions and pits) are usually filled before the calculation of flow discharge and erosion–deposition rates. This ensures that all flows conveniently reach the coast or the boundary of the simulated domain. In models intended to simulate purely erosional features, such depressions are usually treated as transient features and often ignored. However, eSCAPE is designed to not only address erosion problems but also to simulate source-to-sink transfer and sedimentary basin formation and evolution in potentially complex tectonic settings. In such cases, depressions may be formed at different periods during runtime and may be filled or remain internally drained (e.g. endorheic basins) depending on the volume of sediment transported by upstream catchments.
Depression-filling approaches have received some attention in recent years with the development of new and more efficient algorithms
Priority-flood algorithms consist of finding the minimum elevation to which a cell needs to be raised (e.g. spill elevation of a cell) to prevent a downstream ascending path from occurring. They rely on priority-queue data structure used to efficiently find the lowest spill elevation in a grid. Depending on the chosen method, priority-queue implementation approaches affect the time complexity of the algorithm
Illustration of the two cases that may arise depending on the volume of sediment entering an internally drained depression
In eSCAPE, this part of the algorithm is not parallelised and is performed on the master processor. It starts from the grid border vertices and processes vertices that are in their immediate neighbourhoods one by one in the ascending order of their spill elevations
To track nodes that have already been processed by the algorithm, a Boolean array is used in which edge nodes (that are by definition at the correct elevation) are marked as solved. The next step consists of removing (i.e. popping) from the priority queue the first element (i.e. the lowest node). This node
The filling algorithm presented above is used to calculate the volume of each depression at any time step. Once the volumes of these depressions are obtained, their subsequent filling is dependent on the sediment flux calculation defined in Sect.
If the cumulative sediment volume transported by the rivers draining in a specific depression is above the volume of the depression (
In the marine realm, sedimentation computation follows a different approach to the one described above. First, the flow accumulation is computed using the filled elevation in both the aerial and marine domains, and a maximum volumetric deposition rate
Hillslope processes are known to strongly influence catchment morphology and drainage density, and several formulations of hillslope transport laws have been proposed
Under such assumptions and via the Exner's law, the mass conservation equation widely applied in landscape modelling is of the form
For a discrete element, considering a node
Input parameters relative to initial surface, temporal extent, and output.
Input parameters relative to forcing conditions.
In addition to hillslope processes, a second type of diffusion is available in eSCAPE and consists of distributing freshly deposited marine sediments in deeper regions. This process is the only one treated explicitly, and in this case the length of the diffusion time step
In this section, I present the main files used to run eSCAPE and to visualise the generated outputs. I then illustrate the capability of the code using a series of three examples presenting two generic models and one global-scale experiment.
Input parameters relative to physical processes.
The eSCAPE model uses YAML syntax for its input file. YAML structure is done through indentation (one or more spaces) and sequence items are denoted by a dash. When parsing the input file, the code searches for some specific keywords defined in Tables
All the input parameters that are defined in external files, like the initial surface, different precipitation, or displacement maps, are read from VTK files.
These input files are defined on an irregular triangular grid (TIN). Examples of how to produce these files are provided in the eSCAPE demo repository on GitHub and Docker (
The domain and time keywords (Table
The climate and tectonic keywords (Table
Surface process parameters (Table
The model outputs are located in the output folder (dir keyword – Table
Resulting topographies of an initial flat squared surface (100 km side) after 100 000 years of uniform precipitation and linear uplift from west to east. Three simulations are performed in which the time step
The first example illustrates the effect of increasing time step length on the resulting landscape evolution. The initial surface consists of a flat triangulated squared grid with 100 km sides and approximately 100 m resolution containing
Three cases are presented after
As mentioned in Sect.
Effect of flow-routing algorithms on flow accumulation patterns and associated erosion. Panel
In this second example, I present a series of three experiments in which the flow-routing calculations are based on one (SFD), two, and multiple (MFD) flow direction approaches (Fig.
For this example, the initial surface consists of a rotationally symmetric surface (Fig.
After 20 000 years, the dendritic flow accumulation pattern observed on the surface for the SFD case (Fig.
Landscape evolution models tend to be highly dependent on grid resolution, and this dependency is mostly related to the approach used to route water down the surface
The last example showcases a global-scale experiment with eSCAPE. The simulation looks at the evolution of the Earth 200 000 years into the future starting with present-day elevation and precipitation maps. The model is run forward in time without changing the initial forcing conditions, is primarily used to highlight the capabilities of eSCAPE, and does not represent any particular geological situation.
The eSCAPE global-scale experiment of Earth's morphological evolution over 200 000 years. Panel
Similar to Fig.
Sunburst visualisation obtained from the SnakeViz package showing the profiling results of multiple eSCAPE experiments. The analysis is performed for different numbers of processors (up to 256). On the left-hand side, the fraction of time spent in each function is represented by the angular extent of the different arcs. On the right-hand side the results of the computational runtime versus processor number over a series of time steps are given for experiments of different size. Panel
The elevation is obtained from the ETOPO1 1 arcmin global relief model of the Earth's surface that integrates land topography and ocean bathymetry
In addition to these grids, the following parameters are chosen: flowdir is set to 5 (similar to the MFD flow-routing approach), the time step
From this set of input parameters, eSCAPE can predict the global evolution of topography (Figs.
This simulation illustrates a global-scale model of Earth's surface evolution. In cases in which paleoclimatic conditions are known, eSCAPE can in principle be used to perform a quantitative analysis of different tectonic forcings with complex spatial and temporal variations. The results of these tests can then be compared with available geological records (such as denudation rates, paleotopographies, and basin sedimentary thicknesses and volumes). In addition to climate and tectonic conditions, it is also possible to impose varying sea level fluctuations over geological times.
As such and even with the limited number of simulated processes, eSCAPE can be used to retrieved global sedimentary basin formation and evolution based on temporal and spatial responses of both landscape and sediment fluxes to different sea level conditions and tectonic and precipitation regimes.
The performance of the implicit flow accumulation, erosion, and sediment transport algorithms is strongly dependent on the choice of solver and preconditioner. As shown in Sect.
The analysis of the profiling work realised in Fig.
For experiments accounting for marine deposition and pit filling, a similar trend is found when comparing performance against processor number (right-hand side of Fig.
In this paper, I describe eSCAPE, an open-source, Python-based software designed to simulate sediment transport, landscape dynamics, and sedimentary basin evolution under the influence of climate, sea level, and tectonics. In its current form, eSCAPE relies on the stream power and creep laws to simulate the physical processes acting on the Earth's surface. The main difference with other landscape evolution models relies on the formulation used to solve the system of equations. The approach builds upon the implicit drainage area calculation from
Performance analysis shows good parallel scaling for a small number of processors (under 64 processors as shown in Sect.
Examples are provided in the paper and available through the Docker container. They illustrate the extent of temporal and spatial scales that can be addressed using eSCAPE. As such, this code is highly versatile and useful for geological applications related to source to sink problems at a regional, continental, and, for the first time, global scale. It is already possible to use eSCAPE to simulate the global geological evolution of the Earth's landscape at about 1 km resolution, providing accurate estimates of quantities such as large-scale erosion rates, sediment yields, and sedimentary basin formation. In the future, the code will be coupled with atmospheric and geodynamic models to bridge the gap between local- and global-scale predictions of Earth's past and future evolutions.
The source code with examples (Jupyter Notebooks) is archived as a
release version v2.0 from Zenodo (
The author declares that there is no conflict of interest.
The author acknowledges the Sydney Informatics Hub and the University of Sydney's high-performance computing cluster Artemis for providing the high-performance computing resources that have contributed to the research results reported within this paper. The author also acknowledges the technical assistance of David Kohn from the Sydney Informatics Hub, which was supported by project no. 3789, and from the Artemis HPC Grand Challenge. I also thank John Armitage, Benoit Bovy, and the journal editor for their comments that greatly improved the paper.
This paper was edited by Thomas Poulet and reviewed by Benoit Bovy and John Armitage.