- 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 should be straight forward from pip:
pip install chaospy
Or if Conda is more to your liking:
conda install -c conda-forge chaospy
Then go over to the tutorial collection to see how to use the toolbox.
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:
poetry install
This will install all required dependencies and chaospy into a virtual environment. If you are not already managing your own virtual environment, you can use poetry to activate and deactivate with:
poetry shell exit
To ensure that the code run on your local system, run the following:
poetry run pytest --nbval-lax --doctest-modules \
chaospy/ tests/ docs/*/*.{rst,ipynb}
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:
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
.