Need help with chaospy?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

jonathf
327 Stars 76 Forks MIT License 619 Commits 41 Opened issues

Description

Chaospy - Toolbox for performing uncertainty quantification.

Services available

!
?

Need anything else?

Contributors list

.. image:: https://github.com/jonathf/chaospy/raw/master/docs/static/chaospylogo.svg :height: 200 px :width: 200 px :align: center

|circleci| |codecov| |readthedocs| |downloads| |pypi|

.. |circleci| image:: https://img.shields.io/circleci/build/github/jonathf/chaospy/master :target: https://circleci.com/gh/jonathf/chaospy/tree/master .. |codecov| image:: https://img.shields.io/codecov/c/github/jonathf/chaospy :target: https://codecov.io/gh/jonathf/chaospy .. |readthedocs| image:: https://img.shields.io/readthedocs/chaospy :target: https://chaospy.readthedocs.io/en/master/?badge=master .. |downloads| image:: https://img.shields.io/pypi/dm/chaospy :target: https://pypistats.org/packages/chaospy .. |pypi| image:: https://img.shields.io/pypi/v/chaospy :target: https://pypi.org/project/chaospy

  • Documentation 
    _
  • Interactive tutorials with Binder 
    _
  • Code of conduct 
    _
  • Contribution guideline 
    _
  • Changelog 
    _
  • License 
    _

Chaospy is a numerical toolbox for performing uncertainty quantification using polynomial chaos expansions, advanced Monte Carlo methods implemented in Python. It also include a full suite of tools for doing low-discrepancy sampling, quadrature creation, polynomial manipulations, and a lot more.

The philosophy behind

chaospy
is not to be a single tool that solves every uncertainty quantification problem, but instead be a specific tools to aid to let the user solve problems themselves. This includes both well established problems, but also to be a foundry for experimenting with new problems, that are not so well established. To do this, emphasis is put on the following:
  • Focus on an easy to use interface that embraces the
    pythonic code style
    
    _.
  • Make sure the code is "composable", such a way that changing one part of the code with something user defined should be easy and encouraged.
  • Try to support a broad width of the various methods for doing uncertainty quantification where that makes sense to involve
    chaospy
    .
  • Make sure that
    chaospy
    plays nice with a large set of of other other similar projects. This includes
    numpy 
    ,
    scipy
    
    ,
    scikit-learn 
    ,
    statsmodels 
    ,
    openturns
    
    , and
    gstools 
    to mention a few.
  • Contribute all code to the community open source.

Installation

Installation should be straight forward from

pip 
_:

.. code-block:: bash

pip install chaospy

Or if

Conda 
_ is more to your liking:

.. code-block:: bash

conda install -c conda-forge chaospy

Then go over to the

documentation 
_ to see how to use the toolbox.

Development

Chaospy uses

poetry
_ to manage its development installation. Assuming
poetry
_ installed on your system, installing
chaospy
for development can be done from the repository root with the command:

.. code-block:: bash

poetry install

This will install all required dependencies and chaospy into a virtual environment.

.. _poetry: https://poetry.eustace.io/

Testing

To ensure that the code run on your local system, run the following:

.. code-block:: bash

poetry run pytest --doctest-modules chaospy/ tests/

Documentation

The documentation build assumes that

pandoc
is installed on your system and available in your path.

To build documentation locally on your system, use

make
from the
docs/
folder:

.. code-block:: bash

cd docs/
make html

Run

make
without argument to get a list of build targets. The HTML target stores output to the folder
doc/.build/html
.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.