Gauss-Legendre求積公式の導出

Gauss-Legendre 求積公式の導出
千葉豪
平成 26 年 4 月 9 日
以下の (N − 1) 次の多項式 f (x) を考える。
f (x) = aN −1 xN −1 + aN −2 xN −2 + ... + a1 x + a0
(1)
この多項式の区間 [−1, 1] の積分を以下の求積公式で求めるとする。
M
1
−1
f (x)dx =
f (xm )wm
(2)
m=1
上式右辺における xm が求積公式の離散点、wm がその重みに対応する。
式 (2) の左辺は、以下のように解析的に解くことが出来る。
1
−1
1
f (x)dx =
−1
aN −1 xN −1 + aN −2 xN −2 + ... + a1 x + a0 dx
1
1
1
aN −1 xN +
aN −2 xN −1 + ... + a1 x2 + a0 x
N
N −1
2
=
1
−1
N −1
=
an αn
(3)
n=0
ここで、αn は定数であり、次のように書ける。


2
, (n = even),
αn =
n+1

0,
(n = odd)
(4)
一方、式 (2) の右辺も以下のように書き下せる。
M
M
−1
−2
aN −1 xN
+ aN −2 xN
+ ... + a1 xm + a0 wm
m
m
f (xm )wm =
m=1
m=1
M
= aN −1
M
−1
xN
m wm
+ ... + a1
m=1
M
xm wm + a0
m=1
wm
m=1
N −1
=
an βn
(5)
n=0
ここで、
M
xnm wm
βn =
m=1
1
(6)
である。
以上より、式 (2) が任意の多項式で成り立つ、すなわち任意の an の値について成り立つ
ためには、以下の条件が必要となることが分かる。
αn = βn ,
n = 0, 1, ..., N − 1
(7)
いま我々は求積セットとして、M 個の (xm , wm ) のセットを考えているが、式 (7) から明
らかなように方程式の数は N 本であるため、M = N/2 のときに一意的に xm 、wm の値が
得られる。すなわち、N/2 点の求積セットにより (N − 1) 次の多項式の求積が厳密に行われ
る(N 点の求積セットにより (2N − 1) 次の多項式の求積が厳密に行われる)ということが
分かる。
(2N − 1) 次多項式の積分が N 点の Gauss-Legendre 求積により厳密に求まることが知ら
れている。従って、上記で述べたような決め方に基づく求積セットは Gauss-Legendre 求積
セットとなるはずである。ここでは、(2N − 1) 次多項式の積分が N 点の Gauss-Legendre
求積により厳密に求まることを、文献 [1] の記述に従って示す。
(2N − 1) 次の任意の多項式 g2N −1 (x) が [−1, 1] で定義されているとする。そして、(N − 1)
次の多項式 GN −1 (x) が以下の条件を満たすとする。
GN −1 (xm ) = g2N −1 (xm ), xm ∈ [−1, 1],
1 1
1 1
(ii)
GN −1 (x)dx =
g2N −1 (x)dx
2 −1
2 −1
(i)
m = 1, 2, ..., N
(8)
(9)
すなわち、GN −1 (x) は、区間 [−1, 1] の積分が g2N −1 (x) の積分と同一となり、また、区間
[−1, 1] の N 個の点で g2N −1 (x) と交差する、g2N −1 (x) よりも低次の関数である。
xm が与えられている場合に GN −1 (x) の x ∈ (−1, 1) における積分を求積によって求める
ことを考えよう。任意の GN −1 (x) に対して求積が成立するためには式 (7) が成り立つ必要
がある。この方程式の本数は N なので、未知数 wm として N 個が必要となる。すなわち、
N 点の求積により、GN −1 (x) の積分は以下の式で厳密に行うことが出来る。
N
1
−1
GN −1 (x)dx =
wm GN −1 (xm )
(10)
m=1
従って、条件 (i)(ii) を満足する GN −1 (x) を用いることにより、多項式 g2N −1 (x) の積分を
求積法によって以下のように厳密に計算できることが分かる。
1
2
1
−1
g2N −1 (x)dx =
1
2
1
−1
GN −1 (x)dx =
1 N
1 N
wm GN −1 (xm ) =
wm g2N −1 (xm ) (11)
2 m=1
2 m=1
さて、それでは、条件 (i)(ii) を満足する xm はどのように決められるであろうか。
ここで、(2N − 1) 次の多項式 f2N −1 (x) を、g2N −1 (x) と GN −1 (x) を用いて次のように定
義できるであろう。
f2N −1 (x) = g2N −1 (x) − GN −1 (x)
(12)
2
関数 f2N −1 (x) は GN −1 (x) と g2N −1 (x) の差異に対応しているが、条件 (i) より f2N −1 (xm ) = 0
となることから、f2N −1 (x) は N − 1 次の多項式 FN −1 (x) を用いて次のように書くことが出
来る。
f2N −1 (x) = (x − x1 )(x − x2 )...(x − xN )FN −1 (x)
(13)
さらに、条件 (ii) より
1
2
1
−1
f2N −1 (x)dx = 0
(14)
であるため、FN −1 (x) について以下の式が成り立たなければならない。
1
−1
(x − x1 )(x − x2 )...(x − xN )FN −1 (x)dx = 0
(15)
FN −1 (x) は (N − 1) 次の多項式であるため、(N − 1) 次までの Legendre 多項式で記述する
ことが出来る。従って、上式が任意の g2N −1 (x) について成り立つためには、(x − x1 )(x −
x2 )...(x − xN ) が PN (x) の定数倍でなければならないことになる。以上より、関数 GN −1 (x)
と g2N −1 (x) の交差する点 xm は、Legendre 多項式 PN (x) の零点に対応することが分かる。
3
A
Legendre 多項式の基礎
Legendre 多項式は −1 ≤ x ≤ 1 の範囲で以下のように定義される。
P0 (x) = 1
Pl (x) =
(16)
dl
1
x2 − 1
2l l! dxl
l
(17)
このうち、低次のものは次のように書ける。
P1 (x) = x
(18)
P2 (x) = 1/2(3x − 1)
(19)
P3 (x) = 1/2(5x3 − 3x)
(20)
2
Legendre 多項式は次の直交性を満たす。
1
2
1
−1
dxPl (x)Pl (x) =
δll
2l + 1
(21)
ただし、
δll
= 1,
l=l
(22)
0,
l=l
(23)
である。
また、Legendre 多項式は次の漸化式を満たす。
xPl (x) =
(x2 − 1)
1
[(l + 1)Pl+1 (x) + lPl−1 (x)]
2l + 1
d
Pl (x) = l [xPl (x) − Pl−1 (x)]
dx
(24)
(25)
次は、任意の関数を Legendre 多項式で展開することを考える。
関数 f (x) が Legendre 多項式を用いて以下のように書けるとする。
L
f (x) =
al Pl (x)
(26)
l=0
この展開係数 al は以下のようにして求める。式 (26) の両辺に Pl (x) を乗じ、−1 ≤ x ≤ 1
で積分すると以下の式を得る。
L
1
−1
1
dxf (x)Pl (x) =
al
l=0
−1
dxPl (x)Pl (x)
(27)
これに対し Legendre 多項式の直交性を適用すると以下の式を得る。
1
−1
dxf (x)Pl (x) = al
2
2l + 1
(28)
これより、展開係数 al は以下の式で得られることが分かる。
al =
2l + 1
2
1
−1
4
dxf (x)Pl (x)
(29)
参考文献
[1] Alcouffe R. E., O’Dell R. D., ‘Transport calculations for nuclear reactors,’ CRC Handbook of Nuclear Reactors Calculations, Vol.1, p.380, CRC Press, Boca Raton, Florida
(1986).
5