This summer, we have a few students joining us on summer research projects. I will update this page with any relevant information.
It can be quite difficult to get a great introduction to rainfall-runoff modelling that's both short and also mathematical. To help your initial foray into this area, I want to highlight only three references. You will be able to find these in the Zotero group library under `Summer2026-Introductory`.
Simon Mathias' Chapter 20 of his new book: Mathias, S. A. (2024). Rainfall runoff modelling. In Hydraulics, hydrology and environmental engineering (pp. 447–478). Springer.
Chapter 20 covers an introduction to the basic model (though focussing on a special model known as the Probability Distributed Model). It is pitched at the audience of an undergraduate Engineering course (actually this is delivered as a fourth-year or MSc-level year), but it is generally not too sophisticated and can be understood with some help. I like how there is a little Matlab script to try.
The initial model that is used in that chapter is as simple as this [from (20.7)]: $$ \frac{dS}{dt} = q_p - E_a - q_s, $$ where the goal is to solve for the storage $S = S(t)$.
To do this, you take in precipitation rate, $q_p$ (provided by data), the actual evapotranspiration rate $E_a$, given by [eqn (20.11)]: $$ E_a = H(S) E_p, $$ where $E_p$ is a potential evapotranspiration rate (provided by data), and $H$ is a Heaviside function, which is $1$ if $S > 0$ and zero otherwise. Finally, the runoff, $q_s$, is the key quantity to be obtained, which is modelled by: $$ q_s = H(S - c) q_p. $$ In other words, if the storage $S$ inceeds some capacity, $c$, all of the rain $q_p$ goes into runoff. In theory, $c$ is chosen by calibration, but if you read around Sec. 20.2.3.1 in the reference, it discusses graphs for the case of c = 80mm. This is the kind of graph that you produce for the storage.
You can read in that chapter why this is a poor model and how it is then improved.
The next reference I want to provide is just a general review of the state of hydrology given by James Kirchner in 2006:
Kirchner, J. W. (2006). Getting the right answers for the right reasons: Linking measurements, analyses, and models to advance the science of hydrology. Water Resources Research, 42(3). https://doi.org/10.1029/2005WR004362
There is not much to add to this. I think it is a nice article to begin to understand why model differentiation and complexity are difficult topics in the area of hydrology.
The last reference I want to share is this one:
Knoben, W. J. M., & Spieler, D. (2022). Teaching hydrological modelling: Illustrating model structure uncertainty with a ready-to-use computational exercise. Hydrology and Earth System Sciences, 26(12), 3299–3314. https://doi.org/10.5194/hess-26-3299-2022
In this article, they discuss how a teaching exercise was designed to investigate some issues of hydrological modelling and uncertainty. The toolbox here is the excellent MARRMoT Matlab Toolbox.
As part of your investigations, I would like you to experience the little exercise that is discussed in the 2022 article, which is then shared in this code here.