Numerical modeling as software development: Application of open-source tools and best practices to improve efficiency, robustness and reproducibility; an example from the Mississippi Alluvial Plain
Abstract
Numerical modeling can arguably be considered software development, in that it produces a set of instructions for computationally solving equations and often, complex modeling workflows involve writing code. These projects must be done efficiently and robustly to meet the demands of stakeholders, and their scientific value hinges on their reproducibility. As the complexity of the workflow grows, maintaining efficiency, robustness and reproducibility in a collaborative environment becomes exceedingly difficult. Modern open-source software development faces similar challenges, and has a plethora of tools and best practices that can be helpful to modelers. These include cookiecutters to automate code repository setup, collaborative version control (Git and GitHub) and even group programming (VS Code) tools, automated testing and CI to improve robustness, and automated online documentation for more effective communication. The Mississippi Alluvial Plain (MAP), which stretches from the Ohio/Mississippi River confluence to the Gulf Coast, is a productive agricultural area with high rates of groundwater depletion. The USGS MAP Water Availability Study seeks to quantify the status of the groundwater system in the MAP and its response to future development scenarios, in an operational context where results can be readily updated as new data become available. A groundwater model of the Mississippi Delta region synthesizes inputs from a large, multidisciplinary team including other physics-based and machine learning models, a regional airborne electromagnetic survey, and waterborne electrical resistivity mapping of streambed sediments. A suite of python packages was developed to facilitate a fully reproducible workflow from data to forecast, allow for rapid updating of results as new data become available, and rapid construction of new groundwater models within the MAP study area as new stakeholder questions arise. Use of the python package ecosystem and open-source tools and best practices to achieve this workflow will be discussed.
- Publication:
-
AGU Fall Meeting Abstracts
- Pub Date:
- December 2021
- Bibcode:
- 2021AGUFMIN55D..10L