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
© Copyright 2024