Skip to main content

Numerical tool for perfroming uncertainty quantification

Project description

docs/.static/chaospy_logo.svg

circleci codecov pypi readthedocs

Chaospy is a numerical tool for performing uncertainty quantification using polynomial chaos expansions and advanced Monte Carlo methods implemented in Python.

Installation

Installation should be straight forward:

pip install chaospy

And you should be ready to go.

Example Usage

chaospy is created to be simple and modular. A simple script to implement point collocation method will look as follows:

import numpy
import chaospy

# your code wrapper goes here
coordinates = numpy.linspace(0, 10, 100)
def foo(coordinates, params):
    """Function to do uncertainty quantification on."""
    param_init, param_rate = params
    return param_init*numpy.e**(-param_rate*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 = numpy.array([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 guides on what is going on, see the tutorial collection.

Questions and Contributions

Please feel free to file an issue for:

  • bug reporting

  • asking questions related to usage

  • requesting new features

  • wanting to contribute with code

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

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

chaospy-3.3.8.tar.gz (141.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

chaospy-3.3.8-py2.py3-none-any.whl (230.7 kB view details)

Uploaded Python 2Python 3

File details

Details for the file chaospy-3.3.8.tar.gz.

File metadata

  • Download URL: chaospy-3.3.8.tar.gz
  • Upload date:
  • Size: 141.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.9 CPython/3.8.3 Linux/4.15.0-1077-aws

File hashes

Hashes for chaospy-3.3.8.tar.gz
Algorithm Hash digest
SHA256 6cd873c38265334f7ab778c1be98c1b28951daf96699aaf92605d4c164ebe6f4
MD5 f5e83bd8364caf9f2947f46ee05d2da5
BLAKE2b-256 15fc4d58fe51ba5b32b57c175b1a377277c358b4553303cc04fd8a377346da36

See more details on using hashes here.

File details

Details for the file chaospy-3.3.8-py2.py3-none-any.whl.

File metadata

  • Download URL: chaospy-3.3.8-py2.py3-none-any.whl
  • Upload date:
  • Size: 230.7 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.9 CPython/3.8.3 Linux/4.15.0-1077-aws

File hashes

Hashes for chaospy-3.3.8-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 dfeab80790cd84269c30e02b92f27d6168970381aadc97ef433d5a67457cbb04
MD5 5479e4d8837eadf9992a2e539eb95493
BLAKE2b-256 b42099cd3b2f65490b68b5ed5a7655665be25849c601582507ec7b7bc7753990

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page