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, \beta_n  = R_n / R_{n-1}, n>0 and \beta_0 = 0.

Methods

getClassName()

Accessor to the object's name.

getMeasure()

Accessor to the measure.

getName()

Accessor to the object's name.

getRecurrenceCoefficients(n)

Accessor to the recurrence coefficients.

hasName()

Test if the object is named.

setMeasure(measure)

Accessor to the measure.

setName(name)

Accessor to the object's name.

__init__(*args)
getClassName()

Accessor to the object’s name.

Returns:
class_namestr

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

getMeasure()

Accessor to the measure.

Returns:
mDistribution

The measure for which the orthonormal polynomial basis is built.

getName()

Accessor to the object’s name.

Returns:
namestr

The name of the object.

getRecurrenceCoefficients(n)

Accessor to the recurrence coefficients.

Parameters:
nint

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).

hasName()

Test if the object is named.

Returns:
hasNamebool

True if the name is not empty.

setMeasure(measure)

Accessor to the measure.

Parameters:
mDistribution

The measure for which the orthonormal polynomial basis is built.

setName(name)

Accessor to the object’s name.

Parameters:
namestr

The name of the object.