Skip to main content

PUQ Uncertainty Quantification Tool

Project description


Martin Hunt

Web site:



MIT License.


PUQ is a framework for building response surfaces and performing Uncertainty Quantification (UQ) and sensitivity analysis. It was created with the goal of making an easy to use framework that could be easily integrated and extended.


  • Implemented as a Python library but can be used from the command line with a minimum of Python knowledge.

  • Collects all results into a single HDF5 file.

  • Implements Monte Carlo and Latin Hypercube sampling.

  • For better scalability, includes a Smolyak sparse grid method.

  • Builds response surfaces from sample points.

  • Includes GUIs to visualize and compare PDFs and response surfaces.

  • Can use PyMC to perform Bayesian calibration on input parameters.


PUQ is tested to work under Python 2.7+.

PUQ requires the following Python modules:

  • numpy >= 1.6

  • scipy >= 0.8

  • matplotlib >= 1.1

  • sympy >= 0.7.1

  • h5py >= 1.3

  • jsonpickle

  • poster

  • pytest

  • pymc


This package uses distutils, which is the default way of installing python modules. To install in your home directory, use:

python install --user

To install for all users on Unix/Linux or Mac:

python build
sudo python install


PUQ is based upon work supported by the Department of Energy [National Nuclear Security Administration] under Award Number DE-FC52-08NA28617.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

puq-2.6.1.tar.gz (8.2 MB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page