Skip to content

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

License

Notifications You must be signed in to change notification settings

SciML/PolyChaos.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PolyChaos -- Orthogonal Polynomials, Quadrature, and Polynomial Chaos

Join the chat at https://julialang.zulipchat.com #sciml-bridged 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.

Tutorials and Documentation

For information on using the package, see the stable documentation. Use the in-development documentation for the version of the documentation, which contains the unreleased features.

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

using Pkg
Pkg.add("PolyChaos")

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

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},
}