File: chaos_basis.rst

package info (click to toggle)
openturns 1.24-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 66,204 kB
  • sloc: cpp: 256,662; python: 63,381; ansic: 4,414; javascript: 406; sh: 180; xml: 164; yacc: 123; makefile: 98; lex: 55
file content (75 lines) | stat: -rw-r--r-- 3,051 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
.. _chaos_basis:

Polynomial chaos basis
----------------------

This page introduces *polynomial chaos expansion*.
We consider the notations introduced in :ref:`functional_chaos`.

Let :math:`T : \Rset^{n_X} \rightarrow \Rset^{n_X}` be the isoprobabilistic
transformation such that :math:`\vect{Z} = T(\vect{X})` has independent
marginals.
Therefore, the probability density function of the standard random vector
:math:`\vect{Z}` is the product of the marginal probability density functions:

  .. math::

        \mu_{\vect{Z}}(\vect{z})= \prod_{i=1}^{n_X} \mu_{Z_i}(z_i)

for any :math:`\vect{z} \in \Rset^{n_X}` where :math:`\mu_{\vect{Z}}`
is the joint PDF of the random vector :math:`\vect{Z}` and :math:`\mu_{Z_i}`
is the marginal PDF of the random variable :math:`Z_i`.

For any :math:`i \in \{0, ..., n_X\}`, let
:math:`\left(\pi_k^{(i)}\right)_{k \geq 0}` be the family of univariate
polynomials of the :math:`i`-th marginal orthogonal with respect to the
marginal distribution :math:`\mu_{Z_i}`, where :math:`k` represents the
polynomial degree.
The multivariate polynomial basis can be built using the *tensor product* of
univariate polynomials which are orthonormal with respect to :math:`\mu_{\vect{Z}}`.
The orthonormal polynomials are:

  .. math::

        \Psi_\vect{\alpha}(\vect{z}) = \prod_{i=1}^{n_X} \pi_{\alpha_i}^{(i)}(z_i)

where :math:`\vect{\alpha} = (\alpha_1, \dots, \alpha_{n_X}) \in \Nset^{n_X}` is the multi-index
representing the marginal polynomial degrees and :math:`\pi_{\alpha_i}^{(i)}`
is the :math:`i`-th marginal univariate orthonormal polynomial of degree
:math:`\alpha_i`.
The orthonormal polynomial basis with respect to the marginal :math:`\mu_{Z_i}` is
known for some distributions: see :ref:`orthogonal_polynomials` for more
details on classical orthonormal polynomial families.

For classical polynomials, the :class:`~openturns.StandardDistributionPolynomialFactory`
class implements the three-term recurrence.
If the family is not already known, the polynomials can be represented by
their three-term recurrence, using the adaptive Stieljes algorithm (see
:class:`~openturns.AdaptiveStieltjesAlgorithm`).
Once the sequence of recurrence coefficients is known, the reverse Clenshaw
algorithm enables fast, stable evaluation of the polynomials
at any point (see :class:`~openturns.OrthogonalUniVariatePolynomial`).

.. topic:: API:

    - See :class:`~openturns.StandardDistributionPolynomialFactory`
    - See :class:`~openturns.AdaptiveStieltjesAlgorithm`
    - See :class:`~openturns.OrthogonalUniVariatePolynomial`
    - See :class:`~openturns.OrthogonalUniVariatePolynomialFactory`
    - See :class:`~openturns.OrthogonalUniVariatePolynomialFamily`
    - See :class:`~openturns.IntegrationExpansion`
    - See :class:`~openturns.LeastSquaresExpansion`


.. topic:: Examples:

    - See :doc:`/auto_meta_modeling/polynomial_chaos_metamodel/plot_functional_chaos`


.. topic:: References:

    - [soizeghanem2004]_
    - [ghanem1991]_
    - [lemaitre2010]_
    - [dahlquist2008]_
    - [rudin1987]_