SPMODEL implements a parallel algorithm for deriving a large-scale (continental) landscape evolution governed by several generalized classes of processes, namely:
short-range (hill-slope) sediment transport processes
long-range (channel) sediment transport processes
flexural response to surface loading-unloading
kinematic imposed surface displacements designed to simulate surface rupturing faulting
generalized tectonic displacements not associated with surface rupturing faults
Short range transport is treated as a linear diffusive process while long-range transport is a treated as a first-order kinetic reaction dependant on the local power of accumulated downstream overland flow. As such the SPModel fluvial model is a derivative of a series of Surface Process Models that built on the insights of, amongst others, Kooi & Beaumont (1996). In this &beta-release, marine deposition is modeled as a generalized linear diffusive process. Future releases will be extended by incorporating hydrodynamic approximations, that allow simulation of slope-independant transport processed. The transport equations encoded in this release, and relation to input parameters, are outlined in Section 6: Equations.
SPMODEL is further based on an irregular spatial discretization, following Braun & Sambridge (1977) CASCADE algorithms. Indeed we have used CASCADE as a basis to build this parallel version. The main code base for SPModel is C++. The CASCADE algorithms are described in Braun & Sambridge (1977), to which the reader is referred for more details.
In keeping with this ancestry, it is important to note that there is no explicit differentiation in SPMODEL between channel and hillslope processes at the discretization level and hence SPMODEL is not suited to simulating processes associated with specific geomorphic transport mechanisms. Rather it's purpose is to simulate continental-scale linkages between tectonic and climatic forcing, and denudation, generalized sediment yield and basin filling. In as much as all transport algorithms are encoded in terms of an explicit differencing schemes, there are strict limits on time stepping, which impose limits the scale of problems that previous serial-implementations can be applied to. Our motivation in building a parallel Surface Process Model code has been to provide a significant improvement of the scale of problems we can tackle. At the stage of this &beta-release some of the functionality of previous serial code versions have yet to be implemented. For example, we do not yet explicitly consider water storage in lakes associated with landscape pits.
SPMODEL is built on a MPI framework that partitions the discretization across the processors by taking advantage of the structure of the drainage network. Because drainage networks evolve in time, care is needed to apportion computational nodes across available processors in an efficient way (in this case - one that minimizes the communication overhead entailed in routing water flow and calculating the associated sediment transport). The algorithms which deal with this are in the process of being improved, at the stage of this &beta-release, and we envisage considerable improvements in parallel performance as we move towards a final release.
SPMODEL is one of a number of geophysical simulation codes developed at VPAC under the StGermain framework. An important functionality of this framework is the ability to add “plugins” without the need to engage with the underlying algorithms relating to the MPI parallel implementation. The “plugin” architecture facilitates extension of SPModel by addition, for example, of different transport laws. We provide a brief discussion of how this can be done in Section 6: Plugins .
SPMODEL uses and xml based input structure (Section 3: Input Files ). A number of the field variables are implemented as time and/or space dependant properties and are encoded in separate input files. Ouput of field variables at user-fdeefined intervals is stored in ASCII files. Runtime visualisation is available through an SDL (simple direct media layer) interface. A post-processing package is written in IDL*. This is currently available as an object-oriented code-base that requires a licensed version of IDL. Future versions will be made available as a GUI driven application that can run in IDL runtime mode without the necessity for an IDL license (Section 7: Output).
SPMODEL is an ACcESS MNRF initiative built in collaboration with
University of Melbourne and VPAC. The chief contributors have been Mike Sandiford
(at the University of Melbourne) and Raquibal Hassan, Steve Quenette, Keith
Hsuan and Ogar Widjaja (at VPAC). We are indebted to Jean Braun for providing
his CASCADE code
base. Some components of the CASCADE code-base are retained in this &beta-release,
mainly relating to triangulation. Theuse of these issubject to the following
provisos. The CASCADE software system is classified as Background Intellectual
is defined as the following collection of software routines:
Cascade.f, Change-sea-level.f, Check-for-removal.f, Check-mesh.f, Debug.f, Diffusion-erosion.f, Erosional-properties.f, Find-catchment.f, Find-centre.f, Find-donors.f, Find-neighbour-list.f, Find-neighbours.f, Find-order.f, Find-surface.f, Flexure.f, Fluvial-erosion.f, Four1.f, Initialize-general-parameters.f, Initialize-nodal-geometry.f, Iread-but-skip-comment.f, Orography.f, Random.f, Read-but-skip-comment.f, Realft.f, Show.f, Sinft.f, Tectonic-movement.f, Tectonic-uplift.f, Update-bedrock.f, Update-time-step.f, Write-output.f
The Intellectual Property rights for CASCADE are owned by the Australian National University. The Australian National University has granted The University of Melbourne the right to use CASCADE for the purposes of this Project. If CASCADE, or any of its constituent software routines, are required for the commercialisation of Project Intellectual Property then prior to this commercialisation agreement must be reached with the Australian National University and the authors of the CASCADE software, J. Braun and M. Sambridge.
Examples of SPModel outputs can be seen at http://jaeger.earthsci.unimelb.edu.au/SPM
*IDL - interactive data language from Research Systems www.rsinc.com. IDL is a commercial product, however a freely available IDL virtual machine can be used to run the GUI application spmIDL.