Main content area

PRMS-Python: A Python framework for programmatic PRMS modeling and access to its data structures

Volk, John M., Turner, Matthew A.
Environmental modelling & software 2019 v.114 pp. 152-165
case studies, hydrologic models, metadata, provenance, runoff, solar radiation
A persistent problem in numerical hydrologic modeling, is tracking provenance or how particular data came to be. With multiple modules available for individual flux parameterizations and over 100 parameters, the Precipitation-Runoff Modeling System (PRMS) is a perfect example of why it is such a challenge to track the history of input and output of complex models. We present a lightweight, object-oriented Python framework with programmatic tools for management and visualization using PRMS as an example platform. Within this framework, a modeler can write intuitive code for a myriad of basic or advanced applications. The framework also includes methods that, for example, apply systematic or stochastic parameter modifications while simultaneously saving metadata on which parameters were varied and with what improvement in performance. We include a case study that uses built in Monte Carlo parameter resampling for global sensitivity analysis of eight PRMS parameters related to estimation of shortwave solar radiation.