Submitted as: development and technical paper
02 Aug 2022
Submitted as: development and technical paper | 02 Aug 2022
Status: this preprint is currently under review for the journal GMD.

A simple, efficient, mass conservative approach to solving Richards’ Equation (openRE, v1.0)

Andrew M. Ireson1,2, Raymond J. Spiteri3, Martyn P. Clark4, and Simon A. Mathias5 Andrew M. Ireson et al.
  • 1Global Institute for Water Security, University of Saskatchewan, Saskatoon, Saskatchewan, Canada
  • 2School for Environment and Sustainability, University of Saskatchewan, Saskatoon, Saskatchewan, Canada
  • 3Department of Computer Science, University of Saskatchewan, Saskatoon, Saskatchewan, Canada
  • 4Department of Geography and Planning, University of Saskatchewan, Saskatoon, Saskatchewan, Canada
  • 5Department of Engineering, Durham University, Durham, UK

Abstract. We show that a simple numerical solution procedure – namely the method of lines combined with an off-the-shelf ODE solver – can provide efficient, mass conservative solutions to the pressure-head form of Richards’ equation. We present a novel method to quantify the boundary fluxes that reduces water balance errors without negative impacts on model runtimes. We compare this solution with alternatives, including the classic Modified Picard Iteration method of Celia et al. (1990) and the Hydrus 1D model (Šimůnek et al., 2005, 2016). We reproduce a set of benchmark solutions with all models. We find that Celia’s solution has the best water balance, but it can incur significant truncation errors in the simulated boundary fluxes, depending on the time steps used. Our solution has comparable run-times to Hydrus and better water balance performance (though both models have excellent water balance closure for all the problems we considered). Our solution can be implemented in an interpreted language, such as MATLAB or Python, making use of off-the-shelf ODE solvers. We investigated alternative scipy ODE solvers in Python and make practical recommendations about the best way to implement them for Richards’ equation. There are two advantages of our approach: i) the code is short and simple, making it ideal for teaching purposes; and ii) the method can be easily extended to represent alternative properties (e.g., novel ways to parameterize the K(ψ) relationship) and processes (e.g., it is straightforward to couple heat or solute transport), making it ideal for testing alternative hypotheses.

Andrew M. Ireson et al.

Status: open (until 27 Sep 2022)

Comment types: AC – author | RC – referee | CC – community | EC – editor | CEC – chief editor | : Report abuse

Andrew M. Ireson et al.

Model code and software

openRE Ireson, A. M.

Andrew M. Ireson et al.


Total article views: 116 (including HTML, PDF, and XML)
HTML PDF XML Total BibTeX EndNote
88 24 4 116 1 1
  • HTML: 88
  • PDF: 24
  • XML: 4
  • Total: 116
  • BibTeX: 1
  • EndNote: 1
Views and downloads (calculated since 02 Aug 2022)
Cumulative views and downloads (calculated since 02 Aug 2022)

Viewed (geographical distribution)

Total article views: 113 (including HTML, PDF, and XML) Thereof 113 with geography defined and 0 with unknown origin.
Country # Views %
  • 1
Latest update: 08 Aug 2022
Short summary
Richards' Equation (RE) is used to describe the movement and storage of water in a soil profile, and is a component of many hydrological and earth-system models. Solving RE numerically is challenging due to the non-linearities in the properties. Here, we present a simple but effective and mass-conservative solution to solving RE, which is ideal for teaching/learning purposes, but also useful in prototype models that are used to explore alternative process representations.