Abstract

Abstract. Computational modeling occupies a unique niche in Earth and environmental sciences. Models serve not just as scientific technology and infrastructure but also as digital containers of the scientific community's understanding of the natural world. As this understanding improves, so too must the associated software. This dual nature – models as both infrastructure and hypotheses – means that modeling software must be designed to evolve continually as geoscientific knowledge itself evolves. Here we describe design principles, protocols, and tools developed by the Community Surface Dynamics Modeling System (CSDMS) to promote a flexible, interoperable, and ever-improving research software ecosystem. These include a community repository for model sharing and metadata, interface and ontology standards for model interoperability, language-bridging tools, a modular programming library for model construction, modular software components for data access, and a Python-based execution and model-coupling framework. Methods of community support and engagement that help create a community-centered software ecosystem are also discussed.

Highlights

  • Our planet’s surface is a dynamic place, changing on timescales from the momentary triggering of a landslide, to year-by-year resculpting of coastlines, to the formation of mountains and sedimentary basins over geologic time.The challenge of living sustainably on a dynamic, humanimpacted planet is multi-faceted and multi-disciplinary and requires a deeper understanding of a diverse set of processes ranging from permafrost thawing to wildfire impacts, and from river delta sinking to changes in flooding

  • Codes are written by hundreds of authors, in different languages, and from a diverse range of domains; operate on timescales and space scales that span orders of magnitude, and are oftentimes written in isolation – never intended for use by someone outside the core development team

  • In Community Surface Dynamics Modeling System (CSDMS), Basic Model Interface (BMI) works in tandem with the CSDMS Standard Names (CSN) (Peckham et al, 2013) to ensure proper alignment between resources

Read more

Summary

Introduction

Our planet’s surface is a dynamic place, changing on timescales from the momentary triggering of a landslide, to year-by-year resculpting of coastlines, to the formation of mountains and sedimentary basins over geologic time. We describe software tools, standards, and practices that are designed to enhance research productivity by reducing the “time to science” in Earth modeling Such tools and concepts form the key elements behind the Community Surface Dynamics Modeling System (CSDMS). This sets the stage for a review of tools and practices designed to make these various tasks more efficient and their products more sustainable through sharing, standardization, education, and a set of enabling tools We conclude with a discussion of opportunities, needs, and challenges (Sect. 8)

Scientific computing is here to stay
Growing pains
New community practices
A community-based modeling system for Earth surface processes
A taxonomy of model operation
Reproducing
Applying
Linking
Coupling
Building
Modifying
The CSDMS Workbench
Execution and coupling framework: pymt
Data components
Creating new models
HyLands: an example of a component-based integrated model
Standard Names
Community engagement
Findings
Discussion and conclusions
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call