CSDMS 2013 annual meeting poster Greg Tucker
A Generic "Gridding Engine" for 2D Modeling of Earth-Surface Dynamics
Nicole Gasparini, Tulane Univ New Orleans Louisiana, United States.
Erkan Istanbulluoglu, Univ Washington Seattle Washington, United States.
Eric Hutton, CSDMS Boulder Colorado, United States.
Dan Hobley, Univ Colorado Boulder Colorado, United States.
This presentation addresses an important limitation to scientific productivity in fields that rely on computational modeling of landscape processes. Landscape models compute flows of mass, such as water, sediment, glacial ice, volcanic material, or landslide debris, across a gridded terrain surface. Science and engineering applications of these models range from short-term flood forecasting to long-term landform evolution. At present, software development behind these models is highly compartmentalized and idiosyncratic, despite the strong similarity in core algorithms and data structures between otherwise diverse models.
We report progress on a proof-of-concept study in which an existing landscape model code is adapted and enhanced to provide a set of independent, interoperable components (written initially in C++). These include: (1) a gridding engine to handle both regular and unstructured meshes, (2) an interface for space-time rainfall input, (3) a surface hydrology component, (4) an erosion-deposition component, (5) a vegetation component and (6) a simulation driver. The components can communicate with each other in one of two ways: using a simple C++ driver script, or using the Community Surface Dynamics Modeling System (CSDMS) Model Coupling Framework.
A central element is the gridding engine, which provides the ability to rapidly instantiate and configure a 2D simulation grid. Initially, the grid is an unstructured Delaunay/Voronoi mesh. Because the internal representation of geometry and topology is quite generic—consisting of nodes (cells), directed edges, polygon faces, etc.—the software can be enhanced to provide other grid formats, such as a simple raster or a quad-tree representation. The gridding engine also provides basic capabilities for finite-volume numerics, such as calculation of scalar gradients between pairs of neighboring cells, and calculation of flux divergence within cells.
Our hope is that these interoperable and interchangeable components with simple, standardized interfaces, will transform the nature and speed of progress in the landscape sciences by allowing scientist-programmers to focus on the processes of interest rather than on the underlying software infrastructure.
* Please acknowledge the original contributors when you are using this material. If there are any copyright issues, please let us know and we will respond as soon as possible.