ガウス求積
pn が自明でない n 次の多項式で、次のように表されるとする。
∫ a b ω ( x ) x k p n ( x ) d x = 0 , for all k = 0 , 1 , ... , n − 1. {\displaystyle \int _{a}^{b}\omega (x)\,x^{k}p_{n}(x)\,dx=0,\quad {\text{for all }}k=0,1,\ldots ,n-1.}
この多項式 pn は、ω(x) を重み関数とする次数 n の直交多項式である。
ガウス求積(ガウスきゅうせき、英: Gaussian quadrature)またはガウスの数値積分公式とは、カール・フリードリヒ・ガウスに因んで名づけられた数値解析における数値積分法の一種であり、実数のある閉区間(慣例的に [−1, 1] に標準化される)で定義された実数値関数のその閉区間に渡る定積分値を、比較的少ない演算で精度良く求めることができるアルゴリズムである。
n を正の整数とし、f(x) を 任意の多項式関数とする。f(x) の [−1, 1] に渡る定積分値 I を、
I = ∫ − 1 1 f ( x ) d x = ∑ i = 1 n w i f ( x i ) {\displaystyle I=\int _{-1}^{1}f(x)\,dx=\sum _{i=1}^{n}w_{i}f(x_{i})}
の形でなるべく正確に近似する公式を考える。ここで、xi は積分点またはガウス点 (ガウスノード)と呼ばれる [−1, 1] 内の n 個の点であり、wi は重みと呼ばれるn個の実数である。
実は、n 次のルジャンドル多項式の n 個の零点(これらは全て [−1, 1] 内にある)を積分点として選び、wi を適切に選ぶと、f(x) が 2n − 1 次以下の多項式であれば上記の式が厳密に成立することが示せる。
ガウス求積法のノード xi と重み wi を計算するための基本的ツールは、直交多項式群と対応する重み関数が満たす3項漸化式である。
例えば、pn がモニックな n 次直交多項式(最高次の項の係数が 1 の n 次直交多項式)なら、次のような漸化式で関係を表すことができる。
p n + 1 ( x ) + ( B n − x ) p n ( x ) + A n p n − 1 ( x ) = 0 , n = 1 , 2 , ... . {\displaystyle p_{n+1}(x)+(B_{n}-x)p_{n}(x)+A_{n}p_{n-1}(x)=0,\qquad n=1,2,\ldots .}
このことから、対応する行列の固有値および固有ベクトルからノードと重みを計算することができる。これを一般に Golub–Welsch アルゴリズムと呼ぶ。
xi が直交多項式 pn の根であるとき、前掲の漸化式を k = 0 , 1 , ... , n − 1 {\displaystyle k=0,1,\ldots ,n-1} について用い、 p n ( x j ) = 0 {\displaystyle p_{n}(x_{j})=0} であることを踏まえると、次が成り立つことがわかる。
J P ~ = x j P ~ . {\displaystyle J{\tilde {P}}=x_{j}{\tilde {P}}.}
ここで
P ~ = t [ p 0 ( x j ) , p 1 ( x j ) , . . .