Numerical tool for perfroming uncertainty quantification
Project description
Chaospy is a numerical tool for performing uncertainty quantification using polynomial chaos expansions and advanced Monte Carlo methods implemented in Python 2 and 3.
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
Installation
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 git@github.com:jonathf/chaospy.git cd chaospy git checkout <tag or branch of interest> pip install .
Example Usage
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
def foo(coord, prm):
"""Function to do uncertainty quantification on."""
return prm[0] * numpy.e ** (-prm[1] * numpy.linspace(0, 10, 100))
# bi-variate probability distribution
distribution = chaospy.J(chaospy.Uniform(1, 2), chaospy.Uniform(0.1, 0.2))
# polynomial chaos expansion
polynomial_expansion = chaospy.orth_ttr(8, distribution)
# samples:
samples = distribution.sample(1000)
# evaluations:
evals = [foo(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 tutorial.
For a collection of recipes, see the cookbook.
Questions & Troubleshooting
For any problems and questions you might have related to chaospy, please feel free to file an issue.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for chaospy-3.2.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cff93e04d174e27c5c247172c0cac4564d3104e221670e24bfda48314fd9009b |
|
MD5 | 92952a4a3013be7985f500c33b8fd058 |
|
BLAKE2b-256 | cca5fdc8054e199f23a05681eaa94993527d2d2b74be4f381a55e2dd8392766e |