It is our intention to produce a number of tutorials over the next few years that teach modellers how to take full advantage of PEST and its utility support programs when calibrating ground and surface water models, and when analyzing the pre- and post-calibration uncertainties of predictions made by these models.

Right now, only two tutorials are available. One of these is a few years old, but is still instructive. The other is new. Hopefully there will be others soon.

When you download a tutorial and unzip it, you will find a document that provides step-by-step instructions that you should follow in order to complete it. You will also find all of the files that are required for undertaking the tutorial, including executable versions of all PEST, PEST++ and utility programs that must be run. These are not the latest versions of these programs; they are versions of these programs that were new when the tutorials were written. So use these executables only when doing the tutorials. For your own work, use the latest versions of PEST and its utility support software that you can obtain from the downloads page. The latest versions of the PEST++ suite of programs can be downloaded from its GitHub repository.

Two simple models

This tutorial is based on two simple models. One is a groundwater model and the other is a surface water model. Calibration of the former requires solution of an ill-posed inverse problem. Calibration of the latter requires solution of an almost well-posed problem, but requires formulation of an innovative multi-component objective function.

This tutorial explores the following:

  • Calibration using regularized inversion
  • Evaluation of parameter identifiability
  • Linear parameter and predictive uncertainty analysis
  • Nonlinear parameter and predictive uncertainty analysis
  • Direct predictive hypothesis testing.

Click here to download the tutorial.


PESTPP-IES is a powerful ensemble smoother written by Jeremy White of the USGS. It is part of the PEST++ suite.

This tutorial takes as its starting point a tutorial that is supplied with the Groundwater Vistas graphical user interface. That tutorial describes use of the so-called "null space Monte Carlo" (NSMC) methodology to calculate an ensemble of "realistic" parameter fields that all support a good fit between model outputs and a calibration dataset. Model parameterization is based on pilot points.

The follow-up tutorial, downloadable from this site, shows how application of NSMC can be improved for that example. It then presents a strategy through which a suite of random parameter fields can be generated. This ensemble of parameter realizations begins by sampling the prior parameter probability distribution; however it ends up sampling the posterior parameter probability distribution. This transition from prior to posterior is accomplished in only a few hundred model runs. Use of PEST utilities which were written to support PESTPP-IES is also demonstrated.

Click here to download the tutorial.