Numerical tool for perfroming uncertainty quantification
Chaospy is a numerical tool for performing uncertainty quantification using polynomial chaos expansions and advanced Monte Carlo methods implemented in Python.
If you are using this software in work that will be published, please cite the journal article: Chaospy: An open source tool for designing methods of uncertainty quantification
Table of Contents:
Installation should be straight forward:
pip install chaospy
And you should be ready to go.
Alternatively, to get the most current experimental version, the code can be installed from Github as follows:
git clone email@example.com:jonathf/chaospy.git # first time only cd chaospy/ git pull # after the first time pip install .
chaospy is created to be simple and modular. A simple script to implement point collocation method will look as follows:
import chaospy import numpy # your code wrapper goes here coordinates = numpy.linspace(0, 10, 100) def foo(coordinates, params): """Function to do uncertainty quantification on.""" return params * numpy.e**(-params*coordinates) # bi-variate probability distribution distribution = chaospy.J(chaospy.Uniform(1, 2), chaospy.Uniform(0.1, 0.2)) # polynomial chaos expansion polynomial_expansion = chaospy.generate_expansion(8, distribution) # samples: samples = distribution.sample(1000) # evaluations: evals = [foo(coordinates, sample) for sample in samples.T] # polynomial approximation foo_approx = chaospy.fit_regression( polynomial_expansion, samples, evals) # statistical metrics expected = chaospy.E(foo_approx, distribution) deviation = chaospy.Std(foo_approx, distribution)
For a more extensive description of what going on, see the collection of tutorials.
Development is done using Poetry manager. Inside the repository directory, install and create a virtual environment with:
To run tests:
poetry run pytest chaospy/ tests/ doc/ --doctest-modules
To build documentation, run:
cd doc/ make html
The documentation will be generated into the folder doc/.build/html.
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size chaospy-3.2.11-py2.py3-none-any.whl (238.2 kB)||File type Wheel||Python version py2.py3||Upload date||Hashes View|
|Filename, size chaospy-3.2.11.tar.gz (148.0 kB)||File type Source||Python version None||Upload date||Hashes View|
Hashes for chaospy-3.2.11-py2.py3-none-any.whl