Mathematical Background
This section is heavily based on the book "Orthogonal Polynomials: Computation and Approximation" by Walter Gautschi (Oxford University Press)
Orthogonal Polynomials
Basic Theory
We always work with absolutely continuous measures for which we write $\mathrm{d} \lambda (t) = w(t) \mathrm{d}t$, where the so-called weight function$w$
- is a nonnegative integrable function on the real line $\mathbb{R}$, i.e. $w: \mathcal{W} \subseteq \mathbb{R} \rightarrow \mathbb{R}_{\geq 0},$
- has finite limits in case $\mathcal{W} = \mathbb{R}$, i.e.
- has finite moments of all orders
For any pair of integrable functions $u, v$, their scalar product relative to $\mathrm{d} \lambda$ is defined as
Let $\mathcal{P}$ be the set of real polynomials and $\mathcal{P}_d \subset \mathcal{P}$ be the set of real polynomials of degree at most $d$ on $\mathcal{W}$, respectively. Monic real polynomials are real polynomials with leading coefficient equal to one, i.e. $\pi_k(t) = t^k + \dots$ for $k = 0, 1, \dots.$
The polynomials $u,v \in \mathcal{P}$ with $u \neq v$ are said to be orthogonal if
The norm of $u$ is given by
If the polynomials $u \in \mathcal{P}$ has unit length $\| u \|_ {\mathrm{d}\lambda} = 1$, it is called orthonormal.
Monic orthogonal polynomials are polynomials that are monic and orthogonal, hence satisfy
- \[\pi_k(t) = \pi_k(t; \mathrm{d} \lambda) = t^k + \dots\]for $k = 0, 1, \dots$, and
- \[\langle \pi_k, \pi_l \rangle_{\mathrm{d}\lambda} = 0\]for $k \neq l$ and $k, l = 0, 1, \dots$, and $\langle \pi_k, \pi_k \rangle_{\mathrm{d}\lambda} = \| \pi_k \|^2_ {\mathrm{d}\lambda} > 0$ for $k = 0, 1, \dots$.
The support $\mathcal{W}$ of $\mathrm{d} \lambda$ can be an interval (finite, half-finite, infinite), or a finite number of disjoint intervals. If the support consists of a finite or denumerably infinite number of distinct points $t_k$ at which $\lambda$ has positive jumps $w_k$, the measure is called a discrete measure. For a finite number $N$ of points, the discrete measure is denoted by $\mathrm{d}\lambda_N$, and it is characterized by its nodes and weights $\{ t_k, w_k \}_{k=1}^N$ according to
where $\delta$ is the $\delta$-function.
The inner product associated with $\mathrm{d} \lambda_N$ is
There exist only $N$ orthogonal polynomials $\{ \pi_k(\mathrm{d} \lambda_N) \}_{k=0}^{N-1}$ that are orthogonal relative to the discrete measure $\mathrm{d} \lambda_N$ in the sense
where $\delta_{kl}$ is the Dirac-delta, for $k,l = 0, 1, \dots, N-1$.
Properties
Symmetry
An absolutely continuous measure $\mathrm{d} \lambda(t) = w(t) \mathrm{d} t$ is symmetric (with respect to the origin) if its support is $\mathcal{W} = [-a,a]$ for some $0 < a \leq \infty$, and if $w(-t) = w(t)$ for all $t \in \mathcal{W}$.
Similarly, a discrete measure $\mathrm{d} \lambda_N (t) = \sum_{k=1}^N w_k \delta(t-t_k)$ is symmetric if $t_k = - t_{N+1-k}$, and $w_k = w_{N+1-k}$ for $k=1, 2, \dots, N$.
Theorem 1.17 states that: If $\mathrm{d} \lambda$ is symmetric, then
hence the parity of $k$ decides whether $\pi_k$ is even/odd.
Symmetry is exploited in computeSP
, where symmetry need not be relative to the origin, but some arbitrary point of the support.
Three-term Recurrence Relation
The fact that orthogonal polynomials can be represented in terms of a three-term recurrence formula is at the heart of all numerical methods of the package. The importance of the three-term recurrence relation is difficult to overestimate. It provides
- efficient means of evaluating polynomials (and derivatives),
- zeros of orthogonal polynomials by means of a eigenvalues of a symmetric, tridiagonal matrix
- acces to quadrature rules,
- normalization constants to create orthonormal polynomials.
Theorem 1.27 states:
Let $\pi_k(\cdot) = \pi_k(\cdot; \mathrm{d}\lambda)$ for $k = 0, 1, \dots$ be the monic orthogonal polynomials with respect to the measure $\mathrm{d} \lambda$. Then
where
Let $\tilde{\pi}_k(\cdot) = \tilde{\pi}_k(\cdot; \mathrm{d} \lambda t)$ denote the orthonormal polynomials, then
Within the package, the coefficients (α,β)
are the building block to represent (monic) orthogonal polynomials.
Notice that $\beta_0$ is arbitrary. Nevertheless, it is convenient to define it as
because it allows to compute the norms of the polynomials based on $\beta_k$ alone
Let the support be $\mathcal{W} = [a,b]$ for $0 < a,b < \infty$, then
Quadrature Rules
An $n$-point quadrature rule for the measure $\mathrm{d} \lambda t$ is a formula of the form
The quadrature rule $\{ (\tau_\nu, w_\nu) \}_{\nu=1}^n$ composed of (mutually distinct) nodes $\tau_\nu$ and weights $w_\nu$ provides an approximation to the integral. The respective error is given by $R_n(f)$. If, for polynomials $p \in \mathcal{P}_d$, the error $R_n(p)$ vanishes, the respective quadrature rule is said to have a degree of exactness $d$. Gauss quadrature rule are special quadrature rules that have a degree of exactness $d = 2n - 1$. That means, taking a $n =3$-point quadrature rule, polynomials up to degree 5 can be integrated exactly. The nodes and weights for the Gauss quadrature rules have some remarkable properties:
- all Gauss nodes are mutually distinct and contained in the interior of the support of $\mathrm{d} \lambda$;
- the $n$ Gauss nodes are the zeros of $\pi_n$, the monic orthogonal polynomial of degree $n$ relative to the measure $\mathrm{d} \lambda$;
- all Gauss weights are positive.
The Gauss nodes and weights can be computed using the Golub-Welsch algorithm. This means to solve an eigenvalue problem of a symmetric tridiagonal matrix.