Skip to main content

Polynomial approximations

Project description

# equadratures

equadratures is an open-source library for uncertainty quantification, machine learning, optimisation, numerical integration and dimension reduction – all using orthogonal polynomials. It is particularly useful for models / problems where output quantities of interest are smooth and continuous; to this extent it has found widespread applications in computational engineering models (finite elements, computational fluid dynamics, etc). It is built on the latest research within these areas and has both deterministic and randomised algorithms.

Key words associated with this code: polynomial surrogates, polynomial chaos, polynomial variable projection, Gaussian quadrature, Clenshaw Curtis, polynomial least squares, compressed sensing, gradient-enhanced surrogates, supervised learning.

## Code

The latest version of the code is v10 Baby Blue, released March 2022.

![](https://travis-ci.com/equadratures/equadratures.svg?branch=master) [![](https://coveralls.io/repos/github/equadratures/equadratures/badge.svg?branch=master)](https://coveralls.io/github/Effective-Quadratures/Effective-Quadratures) [![](https://badge.fury.io/py/equadratures.svg)](https://pypi.org/project/equadratures/) [![](https://joss.theoj.org/papers/10.21105/joss.00166/status.svg)](https://joss.theoj.org/papers/10.21105/joss.00166) [![](https://img.shields.io/pypi/pyversions/equadratures.svg)](https://pypi.python.org/pypi/equadratures) ![](https://img.shields.io/github/stars/Effective-Quadratures/Effective-Quadratures.svg?style=flat-square&logo=github&label=Stars&logoColor=white) ![](https://static.pepy.tech/badge/equadratures/week) [![](https://img.shields.io/discourse/status?server=https%3A%2F%2Fdiscourse.equadratures.org)](https://discourse.equadratures.org)

If you use pip you can install the code with:

`python pip install equadratures `

or pip can be replaced with python -m pip, where python is the python version you wish to install equadratures for. Use of a virtual enviroment such as [virtualenv](https://pypi.org/project/virtualenv/) or [pyenv](https://github.com/pyenv/pyenv)/[pipenv](https://pypi.org/project/pipenv/) is also encouraged. Alternatively you can click either on the Fork Code button or Clone, and install from your local version of the code.

For issues with the code, please do raise an issue on our Github page; do make sure to add the relevant bits of code and specifics on package version numbers. We welcome contributions and suggestions from both users and folks interested in developing the code further.

Our code is designed to require minimal dependencies; current package requirements include numpy, scipy and matplotlib.

If, and only if using the GraphPolys class, additional requirements would include the networkx, and torch modules.

## Documentation, tutorials, Discourse

Code documentation and details on the syntax can be found [here](https://equadratures.org/index.html).

We’ve recently started a Discourse forum! Check it out [here](https://discourse.equadratures.org/).

## Code objectives

Specific goals of this code include:

  • probability distributions and orthogonal polynomials

  • supervised machine learning: regression and compressive sensing

  • numerical quadrature and high-dimensional sampling

  • transforms for correlated parameters

  • computing moments from models and data-sets

  • sensitivity analysis and Sobol’ indices

  • data-driven dimension reduction

  • ridge approximations

  • surrogate-based design optimisation

## Get in touch

Feel free to follow us via [Twitter](https://twitter.com/EQuadratures) or email us at mail@equadratures.org.

## Community guidelines

If you have contributions, questions, or feedback use either the Github repository, or get in touch. We welcome contributions to our code. In this respect, we follow the [NumFOCUS code of conduct](https://numfocus.org/code-of-conduct).

## Acknowledgments

This work was supported by wave 1 of The UKRI Strategic Priorities Fund under the EPSRC grant EP/T001569/1, particularly the [Digital Twins in Aeronautics](https://www.turing.ac.uk/research/research-projects/digital-twins-aeronautics) theme within that grant, and [The Alan Turing Institute](https://www.turing.ac.uk).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

equadratures-10.tar.gz (117.4 kB view details)

Uploaded Source

Built Distribution

equadratures-10-py3.8.egg (333.3 kB view details)

Uploaded Source

File details

Details for the file equadratures-10.tar.gz.

File metadata

  • Download URL: equadratures-10.tar.gz
  • Upload date:
  • Size: 117.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.9.5

File hashes

Hashes for equadratures-10.tar.gz
Algorithm Hash digest
SHA256 7b54bd50f67feb1316a2e546da4dd59185476c3792a1770b02f65e18022e5663
MD5 792d2648145f8a83ca303b273a93f924
BLAKE2b-256 e2e57946afc96be3ab4eaf48baa8e312aa33c69db2e09573ff252e9a584a1982

See more details on using hashes here.

File details

Details for the file equadratures-10-py3.8.egg.

File metadata

  • Download URL: equadratures-10-py3.8.egg
  • Upload date:
  • Size: 333.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.9.5

File hashes

Hashes for equadratures-10-py3.8.egg
Algorithm Hash digest
SHA256 2531ac698ec3e9e15ad50debd64661eb4e4802b3ae4ce0636c9756a4a6ead048
MD5 f1832f29e6647a94b5458bd2edb39aa4
BLAKE2b-256 1284d3c7973895e6232a44bf5d6a31bd534520b145f8d8322815097328028755

See more details on using hashes here.

Supported by

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