A python framework for environmental model uncertainty analysis

Jeremy T. White, Michael N. Fienen, John E. Doherty

Research output: Contribution to journalArticlepeer-review

82 Citations (Scopus)


We have developed pyEMU, a python framework for Environmental Modeling Uncertainty analyses, open-source tool that is non-intrusive, easy-to-use, computationally efficient, and scalable to highly-parameterized inverse problems. The framework implements several types of linear (first-order, second-moment (FOSM)) and non-linear uncertainty analyses. The FOSM-based analyses can also be completed prior to parameter estimation to help inform important modeling decisions, such as parameterization and objective function formulation. Complete workflows for several types of FOSM-based and non-linear analyses are documented in example notebooks implemented using Jupyter that are available in the online pyEMU repository. Example workflows include basic parameter and forecast analyses, data worth analyses, and error-variance analyses, as well as usage of parameter ensemble generation and management capabilities. These workflows document the necessary steps and provides insights into the results, with the goal of educating users not only in how to apply pyEMU, but also in the underlying theory of applied uncertainty quantification.

Original languageEnglish
Pages (from-to)217-228
Number of pages12
JournalEnvironmental Modelling and Software
Publication statusPublished - Nov 2016
Externally publishedYes


  • Data worth analysis
  • FOSM
  • Highly-parameterized
  • Model independent
  • Python
  • Uncertainty analysis


Dive into the research topics of 'A python framework for environmental model uncertainty analysis'. Together they form a unique fingerprint.

Cite this