ラゲール多項式の数表計算ツールとは?
このツールは、連続した x の値に対してラゲール多項式 \(L_n(x)\) を数表化し、グラフに描画します。ラゲール多項式は、微分方程式 \(x\cdot y'' + (1 - x)\cdot y' + n\cdot y = 0\) の解として得られる直交多項式で、量子力学(水素原子の動径方向の波動関数)、数値積分(ガウス・ラゲール求積法)、信号処理など幅広い分野で登場します。本計算では \(L_n(0) = 1\) となる標準的な正規化を採用しています。
使い方
次の4つの値を入力します。次数 n(0以上の整数)、x の初期値、x を1つずつ進めるときの刻み幅(増分)、そして行数です。計算ツールは \(x = \text{startX},\ \text{startX} + \text{stepX},\ \text{startX} + 2\cdot\text{stepX},\ \ldots\) の値を生成し、それぞれの点で \(L_n(x)\) を評価して、2列の数表と折れ線グラフを返します。
計算式の解説
本計算では多項式を直接展開するのではなく、数値的に安定した3項漸化式を用いています。すなわち $$L_n(x_i),\quad x_i = \text{Start } x + i\cdot\text{Step},\quad i = 0,\dots,\text{Rows}-1$$ $$\text{where}\quad \left\{ \begin{aligned} L_0(x) &= 1 \\ L_1(x) &= 1 - x \\ L_{k+1}(x) &= \frac{(2k+1-x)\,L_k(x) - k\,L_{k-1}(x)}{k+1} \end{aligned} \right.$$ です。これにより各点あたり \(O(n)\) の計算量で求められます。低次の多項式は \(L_2(x) = 1 - 2x + x^2/2\)、\(L_3(x) = 1 - 3x + 1.5x^2 - x^3/6\) となります。
計算例
n = 3、x = -1 の場合: $$L_3(-1) = 1 + 3 + 1.5 + 0.16667 = 5.66667$$ 漸化式で確認すると、\(L_0 = 1\)、\(L_1 = 2\)、\(L_2 = 3.5\)、\(L_3 = (6\cdot 3.5 - 2\cdot 2)/3 = 17/3 = 5.66667\) となります。また x = 0 のとき \(L_3(0) = 1\)、x = 1 のとき \(L_3(1) = -0.66667\) です。
よくある質問
どの正規化を使っていますか? \(L_n(0) = 1\) となる標準形を採用しています。一部の文献に見られる正規化前の \(n!\cdot L_n(x)\) ではありません。
n = 0 のときはどうなりますか? \(L_0(x) = 1\) で、どこでも一定の水平な直線になります。n = 1 のときは直線 \(1 - x\) が得られます。
n はどこまで大きくできますか? 漸化式は中程度の n まで安定しています。n が非常に大きい場合や \(|x|\) が大きい場合は値が急速に増大し、最終的に浮動小数点のオーバーフローが起こる可能性があります。