Class GaussianOrthogonalPolynomial
An orthogonal polynomial for Gaussian quadratures, defined by the three-term recurrence P_{k+1}(x) = (x − α_k)·P_k(x) − β_k·P_{k−1}(x) and μ₀ = ∫ w(x) dx: G.H. Golub and J.H. Welsch, "Calculation of Gauss quadrature rules", Math. Comput. 23 (1969), 221-230; "Numerical Recipes in C", 2nd edition, Press, Teukolsky, Vetterling, Flannery.
public abstract class GaussianOrthogonalPolynomial
- Inheritance
-
GaussianOrthogonalPolynomial
- Derived
- Inherited Members
Constructors
GaussianOrthogonalPolynomial()
protected GaussianOrthogonalPolynomial()
Methods
Alpha(int)
The recurrence's α_i.
public abstract double Alpha(int i)
Parameters
iintThe index, non-negative.
Returns
- double
α_i.
Exceptions
- ArgumentOutOfRangeException
iis negative.
Beta(int)
The recurrence's β_i.
public abstract double Beta(int i)
Parameters
iintThe index, non-negative.
Returns
- double
β_i.
Exceptions
- ArgumentOutOfRangeException
iis negative.
LogW(double)
log(w(x)), kept finite past the range where w(x) itself underflows to zero. The default is log(w(x)); a polynomial whose w can underflow while log(w) stays representable overrides it.
public virtual double LogW(double x)
Parameters
xdoubleThe point.
Returns
- double
log(w(x)).
Mu_0()
μ₀, the integral of the weight function.
public abstract double Mu_0()
Returns
- double
μ₀.
Value(int, double)
The polynomial P_n at x, by the recurrence.
public double Value(int n, double x)
Parameters
Returns
- double
P_n(x).
Exceptions
- ArgumentOutOfRangeException
nis negative.
W(double)
The weight function w(x).
public abstract double W(double x)
Parameters
xdoubleThe point.
Returns
- double
w(x).
WeightedValue(int, double)
The polynomial weighted by the square root of the weight, √w(x)·P_n(x).
public double WeightedValue(int n, double x)
Parameters
Returns
- double
√w(x)·P_n(x).
Exceptions
- ArgumentOutOfRangeException
nis negative.