AdaptiveStieltjesAlgorithm

class AdaptiveStieltjesAlgorithm(*args)

AdaptiveStieltjes algorithm used to build the orthonormal basis.

The algorithm builds a polynomial basis orthonormal with respect to a specific distribution.

Parameters
measureDistribution

A measure for which the orthonormal polynomial basis is built.

Notes

It implements an adaptive Stieltjes algorithm that builds the polynomial family orthonormal with respect to the distribution measure, using the GaussKronrod adaptive integration method to compute the following dot-products: R_n=\langle Q_n, Q_n\rangle and S_n=\langle xQ_n, Q_n\rangle where Q_n is the monic polynomial associated to the orthonormal polynomial P_n, needed to compute the coefficients of the three-terms recurrence relation that defines P_n (see OrthogonalUnivariatePolynomialFamily):

a_n = 1/\sqrt{\beta_{n+1}}\quad b_n = -\alpha_n/sqrt{\beta_{n+1}}\quad c_n = -\sqrt{\beta_n/\beta_{n+1}}

where \alpha_n = S_n / R_n and \beta_n  = R_n / R_{n-1}, n>0, \beta_0 = 0.

Methods

getClassName(self)

Accessor to the object’s name.

getId(self)

Accessor to the object’s id.

getMeasure(self)

Accessor to the measure.

getName(self)

Accessor to the object’s name.

getRecurrenceCoefficients(self, n)

Accessor to the recurrence coefficients.

getShadowedId(self)

Accessor to the object’s shadowed id.

getVisibility(self)

Accessor to the object’s visibility state.

hasName(self)

Test if the object is named.

hasVisibleName(self)

Test if the object has a distinguishable name.

setMeasure(self, measure)

Accessor to the measure.

setName(self, name)

Accessor to the object’s name.

setShadowedId(self, id)

Accessor to the object’s shadowed id.

setVisibility(self, visible)

Accessor to the object’s visibility state.

__init__(self, \*args)

Initialize self. See help(type(self)) for accurate signature.

getClassName(self)

Accessor to the object’s name.

Returns
class_namestr

The object class name (object.__class__.__name__).

getId(self)

Accessor to the object’s id.

Returns
idint

Internal unique identifier.

getMeasure(self)

Accessor to the measure.

Returns
mDistribution

The measure for which the orthonormal polynomial basis is built.

getName(self)

Accessor to the object’s name.

Returns
namestr

The name of the object.

getRecurrenceCoefficients(self, n)

Accessor to the recurrence coefficients.

Parameters
ninteger

Index ot the recurrence step.

Returns
coefsequence of float

Calculate the coefficients of recurrence a_0, a_1, a_2 such that P_{n+1}(x) = (a_0 \times x + a_1) \times P_n(x) + a_2 \times P_{n-1}(x).

getShadowedId(self)

Accessor to the object’s shadowed id.

Returns
idint

Internal unique identifier.

getVisibility(self)

Accessor to the object’s visibility state.

Returns
visiblebool

Visibility flag.

hasName(self)

Test if the object is named.

Returns
hasNamebool

True if the name is not empty.

hasVisibleName(self)

Test if the object has a distinguishable name.

Returns
hasVisibleNamebool

True if the name is not empty and not the default one.

setMeasure(self, measure)

Accessor to the measure.

Parameters
mDistribution

The measure for which the orthonormal polynomial basis is built.

setName(self, name)

Accessor to the object’s name.

Parameters
namestr

The name of the object.

setShadowedId(self, id)

Accessor to the object’s shadowed id.

Parameters
idint

Internal unique identifier.

setVisibility(self, visible)

Accessor to the object’s visibility state.

Parameters
visiblebool

Visibility flag.