MCPで接続 →

計算を入力してください

公式

広告

結果

Gauss-Hermite Quadrature (20-point)
n = 20
物理学者の流儀による重み e^(-x^2) に対する分点と重み
i 分点 x_i 重み w_i
1 -5.38748089001123 2.22939364553414e-13
2 -4.60368244955075 4.39934099227314e-10
3 -3.94476404011563 1.08606937076927e-07
4 -3.34785456738322 7.80255647853208e-06
5 -2.78880605842813 0.000228338636016353
6 -2.25497400208928 0.00324377334223785
7 -1.73853771211659 0.0248105208874637
8 -1.23407621539532 0.109017206020023
9 -0.737473728545394 0.286675505362834
10 -0.245340708300901 0.462243669600610
11 0.245340708300901 0.462243669600610
12 0.737473728545395 0.286675505362835
13 1.23407621539532 0.109017206020023
14 1.73853771211659 0.0248105208874636
15 2.25497400208928 0.00324377334223785
16 2.78880605842813 0.000228338636016355
17 3.34785456738322 7.80255647853212e-06
18 3.94476404011563 1.08606937076928e-07
19 4.60368244955074 4.39934099227318e-10
20 5.38748089001123 2.22939364553414e-13

Self-check: sum of all weights = 1.7724538509055163, which should equal sqrt(pi) = 1.7724538509055159.

ガウス・エルミート求積法とは

ガウス・エルミート求積法は、ガウス型の重み \(e^{-x^2}\) を伴う実数全体にわたる積分を近似するための数値積分法です。n 点公式では、巧みに選ばれた n 個の点で被積分関数を評価し、それらの重み付き和として積分を近似します。すなわち、マイナス無限大からプラス無限大までの \(e^{-x^2}f(x)\) の積分は、おおよそ \(\sum w_i f(x_i)\) に等しくなります。$$\int_{-\infty}^{\infty} e^{-x^2} f(x)\,dx \approx \sum_{i=1}^{\text{Order }n} w_i\, f(x_i)$$分点 \(x_i\) は物理学者の流儀によるエルミート多項式 \(H_n\) の根であり、重み \(w_i\) はこれらの多項式の直交性から定まります。

標本点と節点上の縦棒を備えた釣鐘型の重み曲線
ガウス・エルミート求積法は、巧みに配置した少数の節点で \(e^{-x^2}\) を重みとする積分を近似します。

計算ツールの使い方

次数 \(n\)(点の個数。2〜100 の範囲)と表示桁数を選ぶと、分点と重みの一覧表が表示されます。本ツールは標準的な倍精度(double precision)で再計算しているため、表示精度は有効数字およそ 15 桁が上限です。それ以上の桁を意味のあるものにするには、任意精度演算が必要になります。n 点公式は、次数 \(2n-1\) までのすべての多項式を厳密に積分できます。

計算式の解説

分点は \(H_n(x)\) の n 個の実零点で、漸化式 \(H_0=1\)、\(H_1=2x\)、\(H_{k+1}=2x\,H_k - 2k\,H_{k-1}\) により定義されます。重みは $$w_i = \frac{2^{n-1}\, n!\, \sqrt{\pi}}{n^2\, [H_{n-1}(x_i)]^2}$$ で与えられます。本ツールは安定した Golub-Welsch 法を採用しています。対称三重対角のヤコビ行列(対角成分は 0、非対角成分は \(\sqrt{k/2}\))を構成し、その固有値(=分点)と固有ベクトルを求め、各重みを「対応する正規化固有ベクトルの第 1 成分の 2 乗 × \(\sqrt{\pi}\)」とします。$$\left\{ \begin{aligned} J\,v_i &= x_i\,v_i, \quad J_{kk}=0,\; J_{k,k+1}=J_{k+1,k}=\sqrt{\tfrac{k}{2}} \\ w_i &= \sqrt{\pi}\,\big(v_{i,1}\big)^2 \end{aligned} \right.$$この方法なら、大きな階乗によるオーバーフローを避けられます。

計算例(n = 2 の場合)

\(H_2(x) = 4x^2 - 2\) の根は \(x = \pm\tfrac{1}{\sqrt{2}} = \pm 0.7071067811865475\) です。各重みは \(\dfrac{2^1 \cdot 2! \cdot \sqrt{\pi}}{2^2 \cdot [H_1(x_i)]^2}\) で求められます。\(H_1(x)=2x\) より \([H_1]^2 = 2\) なので、各重みは $$\frac{2\cdot 2\cdot 1.7724538509055160}{4\cdot 2} = 0.8862269254527580$$ となります。これらの和は \(\sqrt{\pi} = 1.7724538509055160\) となり、計算が正しいかどうかの確認に役立ちます。

釣鐘曲線の下で、軸上に対称な2つの節点と同じ高さの重み棒
n = 2 では、2つの節点が \(\pm\sqrt{1/2}\) に対称に並び、重みは等しくなります。

よくある質問(FAQ)

なぜ重みの和は必ず \(\sqrt{\pi}\) になるのですか? \(f(x)=1\) とおくと、実数全体にわたる \(e^{-x^2}\) の積分となり、その値は \(\sqrt{\pi}\) に等しくなります。求積公式はこれを厳密に再現します。

どのエルミート多項式の流儀を使っていますか? 重み \(e^{-x^2}\) を用いる物理学者の流儀(physicists' convention)です。重み \(e^{-x^2/2}\) を用いる確率論者の流儀(probabilists' convention)では、分点と重みがスケーリングによって異なります。

\(e^{-x^2}\) の因子を含まない関数を積分できますか? はい。\(g(x) = e^{x^2}f(x)\) と置けば、g の積分はおおよそ \(\sum w_i\, e^{x_i^2}\, g(x_i)\) として近似できます。

最終更新: