diff --git a/jose.00240/10.21105.jose.00240.crossref.xml b/jose.00240/10.21105.jose.00240.crossref.xml new file mode 100644 index 0000000..f2ea584 --- /dev/null +++ b/jose.00240/10.21105.jose.00240.crossref.xml @@ -0,0 +1,195 @@ + + + + 20241224182406-5f77e1707cc0f9610f8d11180b9b39ade2e29e17 + 20241224182406 + + JOSS Admin + admin@theoj.org + + The Open Journal + + + + + Journal of Open Source Education + JOSE + 2577-3569 + + 10.21105/jose + https://jose.theoj.org + + + + + 12 + 2024 + + + 7 + + 82 + + + + Self-Guided Decision Support Groundwater Modelling with Python + + + + Rui T. + Hugman + + INTERA Geosciences, Perth, Western Australia, Australia + + https://orcid.org/0000-0003-0891-3886 + + + Jeremy T. + White + + INTERA Geosciences, Perth, Western Australia, Australia + + https://orcid.org/0000-0002-4950-1469 + + + Michael N. + Fienen + + U.S. Geological Survey, Upper Midwest Water Science Center, Madison, WI USA + + https://orcid.org/0000-0002-7756-4651 + + + Brioch + Hemmings + + Wairakei Research Centre, GNS Science, Taupō, New Zealand + + https://orcid.org/0000-0001-6311-8450 + + + Katherine H. + Markovich + + INTERA Geosciences, Perth, Western Australia, Australia + + https://orcid.org/0000-0002-4455-8255 + + + + 12 + 24 + 2024 + + + 240 + + + 10.21105/jose.00240 + + + http://creativecommons.org/licenses/by/4.0/ + http://creativecommons.org/licenses/by/4.0/ + http://creativecommons.org/licenses/by/4.0/ + + + + Software archive + 10.5281/zenodo.13933751 + + + GitHub review issue + https://github.com/openjournals/jose-reviews/issues/240 + + + + 10.21105/jose.00240 + https://jose.theoj.org/papers/10.21105/jose.00240 + + + https://jose.theoj.org/papers/10.21105/jose.00240.pdf + + + + + + Approaches to highly parameterized inversion: PEST++ version 5, a software suite for parameter estimation, uncertainty analysis, management optimization and sensitivity analysis + White + 10.3133/tm7C26 + 2020 + White, J. T., Hunt, R. J., Fienen, M. N., & Doherty, J. E. (2020). Approaches to highly parameterized inversion: PEST++ version 5, a software suite for parameter estimation, uncertainty analysis, management optimization and sensitivity analysis. US Geological Survey Techniques; Methods 7-C26. https://doi.org/10.3133/tm7C26 + + + A python framework for environmental model uncertainty analysis + White + Environmental Modelling & Software + 85 + 10.1016/j.envsoft.2016.08.017 + 2016 + White, J. T., Fienen, M. N., & Doherty, J. E. (2016). A python framework for environmental model uncertainty analysis. Environmental Modelling & Software, 85, 217–228. https://doi.org/10.1016/j.envsoft.2016.08.017 + + + A python framework for environmental model uncertainty analysis + White + Environmental Modelling & Software + 85 + 10.1016/j.envsoft.2016.08.017 + 2016 + White, J. T., Fienen, M. N., & Doherty, J. E. (2016). A python framework for environmental model uncertainty analysis. Environmental Modelling & Software, 85, 217–228. https://doi.org/10.1016/j.envsoft.2016.08.017 + + + Towards improved environmental modeling outcomes: Enabling low-cost access to high-dimensional, geostatistical-based decision-support analyses + White + Environmental Modelling & Software + 139 + 10.1016/j.envsoft.2021.105022 + 2021 + White, J. T., Hemmings, B., Fienen, M. N., & Knowling, M. J. (2021). Towards improved environmental modeling outcomes: Enabling low-cost access to high-dimensional, geostatistical-based decision-support analyses. Environmental Modelling & Software, 139, 105022. https://doi.org/10.1016/j.envsoft.2021.105022 + + + MODFLOW 6 Modular Hydrologic Model + Langevin + 10.5066/F76Q1VQV + 2022 + Langevin, C. D., Hughes, J. D., Provost, A. M., Russcher, M., Niswonger, R. G., Panday, S., Merrick, D., Morway, E. D., Reno, M. J., Bonelli, W. P., & Banta, E. R. (2022). MODFLOW 6 Modular Hydrologic Model (Version 6.4.1). https://doi.org/10.5066/F76Q1VQV + + + PEST and Its Utility Support Software + Doherty + 2015 + Doherty, J. (2015). PEST and Its Utility Support Software. https://pesthomepage.org/ + + + Scripting MODFLOW model development using python and FloPy + Bakker + Groundwater + 5 + 54 + 10.1111/gwat.12413 + 2016 + Bakker, M., Post, V., Langevin, C. D., Hughes, J. D., White, J. T., Starn, J. J., & Fienen, M. N. (2016). Scripting MODFLOW model development using python and FloPy. Groundwater, 54(5), 733–739. https://doi.org/10.1111/gwat.12413 + + + AN EXERCISE IN GROUND-WATER MODEL CALIBRATION AND PREDICTION + Freyberg + Groundwater + 3 + 26 + 10.1111/j.1745-6584.1988.tb00399.x + 1988 + Freyberg, D. L. (1988). AN EXERCISE IN GROUND-WATER MODEL CALIBRATION AND PREDICTION. Groundwater, 26(3), 350–360. https://doi.org/10.1111/j.1745-6584.1988.tb00399.x + + + + + + diff --git a/jose.00240/10.21105.jose.00240.pdf b/jose.00240/10.21105.jose.00240.pdf new file mode 100644 index 0000000..7306ed7 Binary files /dev/null and b/jose.00240/10.21105.jose.00240.pdf differ diff --git a/jose.00240/paper.jats/10.21105.jose.00240.jats b/jose.00240/paper.jats/10.21105.jose.00240.jats new file mode 100644 index 0000000..a3de9ec --- /dev/null +++ b/jose.00240/paper.jats/10.21105.jose.00240.jats @@ -0,0 +1,541 @@ + + +
+ + + + +Journal of Open Source Education +JOSE + +2577-3569 + +Open Journals + + + +240 +10.21105/jose.00240 + +Self-Guided Decision Support Groundwater Modelling with +Python + + + +https://orcid.org/0000-0003-0891-3886 + +Hugman +Rui T. + + + + +https://orcid.org/0000-0002-4950-1469 + +White +Jeremy T. + + + + +https://orcid.org/0000-0002-7756-4651 + +Fienen +Michael N. + + + + +https://orcid.org/0000-0001-6311-8450 + +Hemmings +Brioch + + + + +https://orcid.org/0000-0002-4455-8255 + +Markovich +Katherine H. + + + + + +INTERA Geosciences, Perth, Western Australia, +Australia + + + + +U.S. Geological Survey, Upper Midwest Water Science Center, +Madison, WI USA + + + + +Wairakei Research Centre, GNS Science, Taupō, New +Zealand + + + + +20 +9 +2023 + +7 +82 +240 + +Authors of papers retain copyright and release the +work under a Creative Commons Attribution 4.0 International License (CC +BY 4.0) +2024 +The article authors + +Authors of papers retain copyright and release the work under +a Creative Commons Attribution 4.0 International License (CC BY +4.0) + + + +Python +groundwater modelling +environmental modelling +decision-support +uncertainty analysis + + + + + + Summary +

The + GMDSI + tutorial notebooks repository provides learners with a + comprehensive set of tutorials for self-guided training on + decision-support groundwater modelling using Python-based tools. + Although targeted at groundwater modelling, the tutorials are based + around model-agnostic tools and readily transferable to other + environmental modelling workflows. The tutorials are divided into + three parts. The first covers fundamental theoretical concepts. These + are intended as background reading for reference on an as-needed + basis. Tutorials in the second part introduce learners to some of the + core concepts of parameter estimation in a groundwater modelling + context, as well as provide a gentle introduction to the + PEST, PEST++ and + pyemu software. Lastly, the third part + demonstrates how to implement highly parameterized applied + decision-support modelling workflows. The tutorials aim to provide + examples of both “how to use” the software as well as “how to think” + about using the software. A key advantage to using notebooks in this + context is that the workflows described run the same code as + practitioners would run on a large-scale real-world application. Using + a small synthetic model facilitates rapid progression through the + workflow.

+
+ + Story of the Project +

The Groundwater Modelling Decision Support Initiative + (GMDSI) + is an industry-backed and industry-aligned initiative. Established in + mid-2019, its primary goal is to enhance the role of groundwater + modelling in groundwater management, regulatory processes, and + decision-making. GMDSI promotes the improved use of modelling in + decision support, with activities focused on industry engagement, + education, practical examples, research, and software development. It + also emphasizes the importance of tools for uncertainty quantification + (UQ) and parameter estimation (PE) in these processes.

+

The roots of the materials making up the tutorial notebooks were + from a traditional, week-long classroom course curriculum developed + for internal training at the US Geological Survey (USGS) by a subset + of the authors of this paper. After three iterations of teaching the + in-person class, the authors, with support from the GMDSI, endeavored + to build on the positive aspects of using Jupyter Notebooks and + explore alternative teaching environments. The first major change was + to add sufficient narration and explanation to the notebooks to + improve possibilities for self-study. The next change was to + reorganize the content from a strictly linear progression to a + three-part structure. This led to a hybrid model of self-study + accompanied by discussion and background lectures online.

+
+ + Statement of Need +

Many groundwater modelers typically rely on Graphical User + Interfaces (GUIs) for their modelling needs. However, each GUI has its + unique characteristics and varying degrees of compatibility with + external software like PEST + (Doherty, + 2015) and PEST++ + (Jeremy + T. White et al., 2020). Creating educational materials for + these GUIs would necessitate tailoring content to each GUI’s specific + features, obtaining cooperation from the GUI developers themselves and + potentially lagging behind the latest developments. Many GUIs are + commercial products as well which limits accessibility.

+

Decision-support modelling often demands capabilities that surpass + what current GUIs can offer. Thus, the use of Python for environmental + modelling has increased in recent years, due to its open-source + nature, user-friendly syntax, and extensive scientific libraries. + Python-based tools have been developed to facilitate UQ and PE + analyses, such as pyemu + (Jeremy + T. White et al., 2016b; + Jeremy + T. White et al., 2021). pyemu is a Python package that provides + a framework for implementing UQ and PE analyses with PEST and PEST++. + It offers a range of capabilities, including parameter estimation, + uncertainty analysis, and management optimization. Although initially + designed for groundwater modelling, pyemu’s methodologies are + versatile and can be applied to diverse numerical environmental + models, Anecdotally, we have seen that more modelers are turning to + Python packages like FloPy + (Bakker + et al., 2016) and pyemu + (Jeremy + T. White et al., 2016a) for model and PEST++ setup. + Unfortunately, the adoption of this approach is hindered by a steep + learning curve primarily due to the scarcity of user-friendly training + materials.

+

The GMDSI tutorial notebooks aim to address this gap by providing a + comprehensive, self-guided, and open-source resource for learning + decision-support modelling workflows with Python. They are designed to + be accessible to a broad audience, including students, researchers, + and practitioners who aim to undertake applied environmental + decision-support modelling.

+
+ + Contents and Instructional Design +

The tutorial notebooks are structured into three main parts:

+ + Part 0: Introductory Background +

Part 0 serves as the foundation, providing essential background + material. Each notebook in Part 0 is standalone and covers a unique + topic. These include:

+ + +

Introduction to a synthetic model known as the “Freyberg” + model + (Freyberg, + 1988). This model is used as a consistent example + throughout the tutorial exercises, allowing learners to apply + concepts in a practical context.

+
+ +

An introduction to the pyemu Python + package that is used to complement and interface with + PEST/PEST++.

+
+ +

Explanation of fundamental mathematical concepts that are + relevant and will be encountered throughout the tutorial + notebooks.

+
+
+

Pre-requisites for Part 0 include a basic understanding of + Python, Jupyter Notebooks, and MODFLOW 6 + (Langevin + et al., 2022). Familiarity with git is a bonus but not + fundamental.

+
+ + Part 1: Introduction to <monospace>PEST</monospace> and the + Gauss-Levenberg Marquardt Approach +

Part 1 focuses on the Gauss-Levenberg Marquardt (GLM) approach to + parameter estimation and associated uncertainty analysis in a + groundwater modelling context.

+

Part 1 is designed to be accessible without strict sequential + dependencies. Learners have the flexibility to explore its contents + in any order that suits their preferences or needs. These + include:

+ + +

Introduction to concepts such as non-uniqueness, + identifiability, and equifinality.

+
+ +

Introduction to the PEST control file + and the PEST/PEST++ interface.

+
+ +

Exploring the challenges of parameterization schemes on + predictive ability, as well as how to mitigate them.

+
+ +

Introducing first-order second-moment (FOSM) and prior Monte + Carlo uncertainty analysis approaches.

+
+
+

Pre-requisites for Part 1 include a basic understanding of + numerical groundwater modelling and familiarity with MODFLOW 6. + Familiarity with Python and Jupyter Notebooks is assumed.

+
+ + Part 2: Python-based Decision-Support Modelling + Workflows +

Part 2 expands on the foundational knowledge gained in Part 1 and + delves into advanced topics related to ensemble-based parameter + estimation, uncertainty analysis and optimization methods. These + advanced topics include management optimization and sequential data + assimilation and assume a highly parameterized approach, as + motivated in Part 1. Topics are laid out in manner that reflects + real-world workflows, with a focus on practical application of + concepts and problem solving.

+

Learners have the option to explore various sequences, in line + with real-world applied workflows, such as:

+ + +

Prior Monte Carlo analysis

+
+ +

Highly parameterized Gauss-Levenberg Marquardt history + matching and associated Data Worth analysis using First Order, + Second Moment (FOSM) technique,

+
+ +

Ensemble-based history matching and uncertainty analysis with + the iterative ensemble smoother approach as implemented in + PEST++IES,

+
+ +

Sequential data assimilation with + PEST++DA, and

+
+ +

Single-objective and multi-objective optimization under + uncertainty with PEST++OPT and + PEST++MOU.

+
+
+

Each of these sequences comprises multiple notebooks to be + executed in a specified order. They demonstrate how to execute the + workflow, interpret results, and apply the concepts to real-world + problems.

+

The flowchart below gives an example of a curated learning flow + for a common decision support modelling application. Over time, + referring back through Part 1 will provide a deeper understanding of + some concepts and techniques taken for granted in the highly + parameterized, largely ensemble-based approaches of Part 2.

+ +

Example notebook learning flow demonstrating a + comprehensive workflow for an applied, ensemble-based management + optimization + .

+ +
+

Pre-requisites for Part 2 include a basic understanding of + PEST/PEST++ and the PEST interface, as well + as familiarity with the Freyberg model. Familiarity with Python and + Jupyter Notebooks is assumed.

+
+
+ + Experience of use in teaching and learning situations +

The notebooks were employed during the + Applied + Decision Support Groundwater modelling With Python: A Guided + Self-Study Course hosted by GMDSI. This self-guided course + comprised 5 online sessions, each lasting 1 to 2 hours and focused on + the workflows of Part 2. During each session the instructors go + through a section of the tutorials and expand on some of the concepts. + Sessions were recorded and can be accessed + on + the GMDSI YouTube channel. Beyond the live online sessions, + learners were encouraged to make use of the GitHub + Discussions + feature to retain a search-engine findable record of common questions + that persist beyond the time frame of the course .

+

Feedback from the 65 students who participated in the course was + anecdotal but informative. + [fig:responses] + summarizes the responses by 34 respondents to four questions, + comprising 52%. The majority of respondents indicated a preference for + this hybrid self-guided/online instruction approach over an in-person + week-long intensive class.

+

Open-ended feedback from the participants was generally positive + and also included some constructive criticism. Participants + appreciated the opportunity to ask questions and several reported + hearing the discussion around other peoples’ questions as being + valuable and clarifying aspects of the material.

+ +

Summary of responses to post-course survey based on 34 + responses. Panel A summarizes whether respondents would prefer an + intensive in-person workshop or this hybrid option. Panel B + summarizes how much of the notebooks respondents were able to + complete throughout the course. Panel C summarizes respondent + comfort level with PEST++ before and after + the course. Panel D highlights individual changes in comfort level + reported due to the + course.

+ +
+
+ + Acknowledgements +

The tutorials were originally developed with support from the US + Geological Survey (USGS) and support from USGS continues through the + HyTest training project. Continued development and support is funded + by the Groundwater Modelling Decision Support Initiative (GMDSI). + GMDSI is jointly funded by BHP and Rio Tinto. We thank Dr. John + Doherty for his tireless and pioneering efforts starting + PEST and continuing to innovate and Dr. Randall + Hunt for his leadership in PEST and + PEST++ applications and development and + contributions to the initial curriculum for this material and the + early version of the notebooks. We thank Kalle Jahn (USGS), + Ines + Rodriguez and + codyalbertross + who made reviews that improved this manuscript. Lastly, we thank users + and stress-testers for their valuable feedback and continued community + contributions to the repository.

+
+ + Disclaimer +

Any use of trade, firm, or product names is for descriptive + purposes only and does not imply endorsement by the US Government.

+
+ + + + + + + + WhiteJeremy T + HuntRandall J + FienenMichael N + DohertyJohn E + + Approaches to highly parameterized inversion: PEST++ version 5, a software suite for parameter estimation, uncertainty analysis, management optimization and sensitivity analysis + US Geological Survey Techniques; Methods 7-C26 + 2020 + 10.3133/tm7C26 + + + + + + WhiteJeremy T + FienenMichael N + DohertyJohn E + + A python framework for environmental model uncertainty analysis + Environmental Modelling & Software + Elsevier + 2016 + 85 + 10.1016/j.envsoft.2016.08.017 + 217 + 228 + + + + + + WhiteJeremy T. + FienenMichael N. + DohertyJohn E. + + A python framework for environmental model uncertainty analysis + Environmental Modelling & Software + 201611 + 85 + 10.1016/j.envsoft.2016.08.017 + 217 + 228 + + + + + + WhiteJeremy T + HemmingsBrioch + FienenMichael N + KnowlingMatthew J + + Towards improved environmental modeling outcomes: Enabling low-cost access to high-dimensional, geostatistical-based decision-support analyses + Environmental Modelling & Software + Elsevier + 2021 + 139 + 10.1016/j.envsoft.2021.105022 + 105022 + + + + + + + LangevinChristian D. + HughesJoseph D. + ProvostAlden M. + RusscherMartijn + NiswongerRichard G. + PandaySorab + MerrickDamian + MorwayEric D. + RenoMichael J. + BonelliWesley P. + BantaEdward R. + + MODFLOW 6 Modular Hydrologic Model + 202212 + https://github.com/MODFLOW-USGS/modflow6 + 10.5066/F76Q1VQV + + + + + + DohertyJ. + + PEST and Its Utility Support Software + 2015 + https://pesthomepage.org/ + + + + + + BakkerM. + PostV. + LangevinC. D. + HughesJ. D. + WhiteJ. T. + StarnJ. J. + FienenM. N. + + Scripting MODFLOW model development using python and FloPy + Groundwater + 2016 + 54 + 5 + https://ngwa.onlinelibrary.wiley.com/doi/abs/10.1111/gwat.12413 + 10.1111/gwat.12413 + 733 + 739 + + + + + + FreybergDavid L. + + AN EXERCISE IN GROUND-WATER MODEL CALIBRATION AND PREDICTION + Groundwater + 1988 + 26 + 3 + https://ngwa.onlinelibrary.wiley.com/doi/abs/10.1111/j.1745-6584.1988.tb00399.x + 10.1111/j.1745-6584.1988.tb00399.x + 350 + 360 + + + + +
diff --git a/jose.00240/paper.jats/64cf776d53a854baf2005b4ee29e529237149890.png b/jose.00240/paper.jats/64cf776d53a854baf2005b4ee29e529237149890.png new file mode 100644 index 0000000..db89573 Binary files /dev/null and b/jose.00240/paper.jats/64cf776d53a854baf2005b4ee29e529237149890.png differ diff --git a/jose.00240/paper.jats/responses.png b/jose.00240/paper.jats/responses.png new file mode 100644 index 0000000..9c3c2f1 Binary files /dev/null and b/jose.00240/paper.jats/responses.png differ