この計算ツールでできること
本ツールは、固定した実数の階数 \(v\) に対して第一種変形ベッセル関数 \(I_{v}(x)\) の値を、\(x\) の数列に沿って表にします。階数、\(x\) の初期値、増分(ステップ)、生成する行数を入力すると、\(x_{i} = \text{初期値} + i\times\text{増分}\) の数列を作り、各点で \(I_{v}(x_{i})\) を計算して、表とグラフの両方を出力します。純粋数学の特殊関数ツールであり、地域固有のルールや単位とは無関係で、どこでも同じように利用できます。
計算式
第一種変形ベッセル関数 \(I_{v}(x)\) は、変形ベッセル方程式 \(x^{2}y'' + xy' - (x^{2} + v^{2})y = 0\) の解です。ここでは次のべき級数から計算しています。
$$I_{v}(x) = \sum_{k=0}^{\infty} \frac{1}{k!\;\Gamma(v+k+1)}\left(\frac{x}{2}\right)^{v+2k}$$階乗とガンマ関数を用いることで、\(v\) に任意の実数を指定できます。数値計算の安定性のため、各項は Lanczos 近似による \(\ln\Gamma\) を使って対数空間で評価し、項が無視できる大きさになるまで加算します。
使い方
階数 \(v\)(例:0、1、2.5 など)、\(x\) の初期値、各行ごとに \(x\) へ加える増分、そして繰り返し回数(行数)を入力します。「計算」を押すと、\(x\) と \(I_{v}(x)\) の2列からなる表と、同じ範囲のグラフが表示されます。
計算例
\(v = 0\)、初期値 \(= 0\)、増分 \(= 0.5\)、回数 \(= 5\) とすると、\(x = 0, 0.5, 1, 1.5, 2\) となり、結果は次のようになります。
\(I_{0}(0) = 1\)、\(I_{0}(0.5) \approx 1.0634834\)、\(I_{0}(1) \approx 1.2660658\)、\(I_{0}(1.5) \approx 1.6467232\)、\(I_{0}(2) \approx 2.2795853\)。これらは標準的な数表の値と一致します。
よくある質問
階数は負や非整数でもよいですか? はい。負の整数の階数には恒等式 \(I_{-n}(x) = I_{n}(x)\) が使われます。非整数の \(v\) は \(x \ge 0\) で計算できます。\(x < 0\) で \(v\) が非整数の場合は値が複素数になるため、NaN を返します。
なぜ \(I_{v}(x)\) はこれほど急速に増大するのですか? 振動する通常のベッセル関数 \(J_{v}\) とは異なり、変形ベッセル関数は \(x\) が大きいとおおよそ \(e^{x}/\sqrt{2\pi x}\) のように増大します。そのため \(x\) が大きすぎると無限大にオーバーフローすることがあります。
\(I_{v}(0)\) はいくつですか? \(I_{0}(0) = 1\) で、\(v > 0\) のときは \(I_{v}(0) = 0\) です。