PolyChaos.jl icon indicating copy to clipboard operation
PolyChaos.jl copied to clipboard

A Julia package to construct orthogonal polynomials, their quadrature rules, and use it with polynomial chaos expansions.

PolyChaos -- Orthogonal Polynomials, Quadrature, and Polynomial Chaos

Join the chat at https://julialang.zulipchat.com #sciml-bridged Stable Global Docs

codecov Build Status

ColPrac: Contributor's Guide on Collaborative Practices for Community Packages SciML Code Style

Code DOI Paper@arXiv

A Julia package to construct orthogonal polynomials, their quadrature rules, and use it with polynomial chaos expansions.

The package requires Julia 1.3 or newer. In Julia switch to the package manager

julia> ]
(v1.3) pkg> add PolyChaos

This will install PolyChaos and its dependencies. Once that is done, load the package:

julia> using PolyChaos

That's it.

Let's take a look at a simple example. We would like to solve the integral

equation

Exploiting the underlying uniform measure, the integration can be done exactly with a 3-point quadrature rule.

opq = Uniform01OrthoPoly(3)
integrate(x -> 6x^5, opq)

For more information please visit the documentation.

Citing

If you like PolyChaos.jl, consider citing our paper

@ARTICLE{2020arXiv200403970M,
       author = {{M{\"u}hlpfordt}, Tillmann and {Zahn}, Frederik and {Hagenmeyer}, Veit and {Faulwasser}, Timm},
        title = "{PolyChaos.jl -- A Julia Package for Polynomial Chaos in Systems and Control}",
      journal = {arXiv e-prints},
     keywords = {Electrical Engineering and Systems Science - Systems and Control, Mathematics - Numerical Analysis, Mathematics - Optimization and Control},
         year = 2020,
        month = apr,
          eid = {arXiv:2004.03970},
        pages = {arXiv:2004.03970},
archivePrefix = {arXiv},
       eprint = {2004.03970},
 primaryClass = {eess.SY},
}