David A. Sheen
National Institute of Standards and Technology
Download this software from GitHub
Welcome to the home page for the Method of Uncertainty Minimization using Polynomial Chaos Expansions (MUM-PCE). This software is a Python package that implements the methodology presented in Sheen & Wang (2011), Wang & Sheen (2015), and Sheen & Manion (2014). The software does the following things:
- Compiles a database of experimental measurements
- Constrains a physical model against the measurements in the database (optimization)
- Determines the uncertainty in the physical model parameters based on the uncertainty in the measurements (uncertainty analysis)
- Identifies measurements that are inconsistent with the constrained model (outlier detection)
- Identifies measurements that do not strongly constrain the constrained model (experimental design)
This implementation cannot be used out of the box. Instead, it is necessary for the user to create an interface to the user's own code, which will be specific to that application. Two examples of how to do this are provided. One is a toy model which demonstrates how an interface might be written; it is intended to be as complete as possible while also being simple. The other example is an interface to the reaction kinetics program Cantera; this sort of interface probably represents the worst use case possible, with multiple heterogeneous measurements and a highly complex interface to a detailed model.
The package is implemented in a way to be as general as possible, which means that efficiency is often sacrificed in order to implement this generality. Expert users may be able to modify the code in such a way as to make it more efficient for their particular application. No support is provided for this adventure, but please let me know if you are successful.
This software is subject to the NIST Software License (revised as of July 2017). This license can be found in the GitHub repo in the file named LICENSE.
A good starting point is to follow the examples located at https://pages.nist.gov/mumpce_py/, for which there are jupyter notebooks (cantera_examples.ipynb and toy_model_example.ipynb) along with raw data files located within mumpce_py/source/
David Sheen