MCPで接続 →

計算を入力してください

公式

広告

結果

第1種ベッセル関数
J0(x) table — 51 rows
初期値から一定の刻み幅で変化する x
i x Jv(x)
0 0 1
1 0.2 0.9900249722
2 0.4 0.9603982267
3 0.6 0.9120048635
4 0.8 0.8462873528
5 1 0.7651976866
6 1.2 0.6711327443
7 1.4 0.5668551204
8 1.6 0.4554021676
9 1.8 0.339986411
10 2 0.2238907791
11 2.2 0.1103622669
12 2.4 0.0025076833
13 2.6 -0.0968049544
14 2.8 -0.1850360334
15 3 -0.2600519549
16 3.2 -0.3201881697
17 3.4 -0.3642955968
18 3.6 -0.3917689837
19 3.8 -0.4025564102
20 4 -0.3971498099
21 4.2 -0.3765570544
22 4.4 -0.34225679
23 4.6 -0.2961378166
24 4.8 -0.2404253273
25 5 -0.1775967713
26 5.2 -0.1102904398
27 5.4 -0.0412101012
28 5.6 0.0269708847
29 5.8 0.0917025676
30 6 0.1506452573
31 6.2 0.2017472229
32 6.4 0.2433106048
33 6.6 0.2740433606
34 6.8 0.2930956031
35 7 0.3000792705
36 7.2 0.2950706914
37 7.4 0.2785962327
38 7.6 0.2516018338
39 7.8 0.2154078077
40 8 0.1716508071
41 8.2 0.1222153018
42 8.4 0.0691572617
43 8.6 0.0146229913
44 8.8 -0.0392338032
45 9 -0.0903336112
46 9.2 -0.1367483708
47 9.4 -0.1767715728
48 9.6 -0.2089787184
49 9.8 -0.2322760276
50 10 -0.2459357645

この計算ツールでできること

このツールは、次数 \(v\) を固定したまま引数 \(x\) を変化させて、第1種ベッセル関数 \(J_v(x)\) の数表を作成します。\(x\) の初期値・刻み幅・行数を指定すると、\(x\) と \(J_v(x)\) を並べた見やすい2列の表が得られます。第1種ベッセル関数は物理学や工学のあらゆる場面に登場します。円形の太鼓(膜)の振動、円柱内の熱伝導、導波管を伝わる電磁波、そして信号処理(FM変調の側帯波)などが代表例です。

次数 0、1、2 における第一種ベッセル関数のグラフ。減衰する振動を示す
次数 v = 0, 1, 2 における第一種ベッセル関数 J_v(x)。振幅がゆっくり減衰する振動を示す。

使い方

次数 \(v\) を入力します(0、1、2 のような整数のほか、0.5 などの小数や負の値も指定可能です)。続いて \(x\) の初期値増分(隣り合う \(x\) の間隔。負の値にすれば降順、0 にすれば同じ点を繰り返します)、繰り返し回数(行数。1 から最大 10000 まで)を設定します。\(i\) 行目では \(x = \text{初期値} + i \times \text{増分}\) が用いられます。

計算式の解説

この関数は次のべき級数で定義されます。$$J_v(x) = \sum_{k=0}^{\infty} \frac{(-1)^k}{k!\,\Gamma(k+v+1)} \left(\frac{x}{2}\right)^{v+2k}$$ここで \(\Gamma\) はガンマ関数です。本ツールは安定した漸化式を用いて、この級数を1項ずつ評価します。各項は前の項に \(-\dfrac{x^2/4}{(k+1)(k+v+1)}\) を掛けて求めるため、階乗のオーバーフローを回避できます。ガンマ関数はランチョス近似で計算しているので、非整数次数や負の次数にも対応します。負の整数次数の場合は恒等式 \(J_{-n}(x) = (-1)^n J_n(x)\) を利用します。

項が収束に向かって小さくなる交代無限級数の図
級数は符号が交互に変わり、項が急速に小さくなるため、和は J_v(x) に収束する。

計算例

\(v = 0\)、初期値 = 0、増分 = 0.2、繰り返し回数 = 6 とすると、表は \(J_0(0) = 1\)、\(J_0(0.2) \approx 0.990025\)、\(J_0(0.4) \approx 0.960398\)、\(J_0(0.6) \approx 0.912005\)、\(J_0(0.8) \approx 0.846287\)、\(J_0(1.0) \approx 0.765198\) となり、標準的な数表の値 \(J_0(1) = 0.7651976866\) と一致します。

J_v(x)の参照値

以下の表は、複数の標準的な引数におけるv=0,1,2の次数でのベッセル関数(第一種)\(J_v(x)\)を示しています。値は小数第6位に四捨五入され、級数\(J_{v}(x)=\sum_{k=0}^{\infty}\frac{(-1)^{k}}{k!\,\Gamma(v+k+1)}\left(\frac{x}{2}\right)^{2k+v}\)から得られます。

\(x\) \(J_0(x)\) \(J_1(x)\) \(J_2(x)\)
0 1.000000 0.000000 0.000000
0.5 0.938470 0.242268 0.030604
1 0.765198 0.440051 0.114903
2 0.223891 0.576725 0.352834
3 −0.260052 0.339059 0.486091
5 −0.177597 −0.327579 0.046565
10 −0.245936 0.043473 0.254630

検算として、\(J_0(1)\)を評価します。先頭の項を計算すると、\(1-\tfrac{(0.5)^2}{1}+\tfrac{(0.5)^4}{4}-\tfrac{(0.5)^6}{36}+\dots = 1-0.25+0.015625-0.000434+\dots\approx\) 0.765198です。

注目すべきゼロ点(根)

正のゼロ点は、\(J_v(x)=0\)となるxの値です。これらはドラムモード、導波管のカットオフ、および同様の境界条件を設定します。

根指標\(s\) \(J_0\)の第\(s\)ゼロ点 \(J_1\)の第\(s\)ゼロ点
1 2.404826 3.831706
2 5.520078 7.015587
3 8.653728 10.173468
4 11.791534 13.323692

注意:x=0は全ての次数v>0に対して\(J_v\)のゼロ点ですが、上記の正の根には含まれていません。

定義と用語集

次数 \(v\)
ベッセル族のどの関数を計算するかを選択するパラメータ(ここではフォームフィールドorder)です。任意の実数値を取ることができます。整数次数は円筒問題で発生し、半整数次数\(v=n+\tfrac12\)は球ベッセル関数を与えます。
引数 \(x\)
\(J_v\)を評価する独立変数です。この表ではstartXから始まり、stepXだけ進行してloopCount行分計算されます。
ガンマ関数\(\Gamma\)
階乗の連続拡張で、非負整数に対して\(\Gamma(n+1)=n!\)が成り立ちます。級数の分母\(\Gamma(v+k+1)\)に表れることで、非整数次数が適切に定義されます。
ベッセル関数(第一種)\(J_v(x)\)
ベッセルの微分方程式\(x^2 y''+x y'+(x^2-v^2)y=0\)の解で、原点で有限である(v≥0の場合)もの。上記の公式の累乗級数で与えられます。
ゼロ点・根
\(J_v(x)=0\)となるxの値です。各次数は無限に多くの正のゼロ点を持ち、次々と均等に間隔が広がり、漸近的には\(\pi\)だけ離れています。
半整数(球)次数
\(v=n+\tfrac12\)の場合、\(J_v\)は球ベッセル関数\(j_n(x)=\sqrt{\tfrac{\pi}{2x}}\,J_{n+1/2}(x)\)に関連し、これは球座標における波動方程式の動径部分を記述します。
再帰項の比
級数の連続する項は\(\frac{a_{k+1}}{a_k}=\frac{-(x/2)^2}{(k+1)(v+k+1)}\)を満たし、これは内部で前の項から次の項を生成し、収束を評価するために使用されます。

表の読み方

スイープで生成した表を読むのに役立つ事実を挙げます:

  • 初期値\(J_0(0)=1\)で、すべての次数v>0に対して\(J_v(0)=0\)です。したがって、x=0から始まる表は、0次のときだけ1から始まります。
  • 振動と減衰大きなxに対して、\(J_v(x)\approx\sqrt{\tfrac{2}{\pi x}}\cos\!\left(x-\tfrac{v\pi}{2}-\tfrac{\pi}{4}\right)\)です。関数は位相がシフトされたコサインのように振動し、その振幅は\(1/\sqrt{x}\)として減衰します。したがって、xが増加するにつれて連続する最大値はゆっくり減少します。
  • 符号変化はゼロ点を示す列が2行間で符号を変える場合、\(J_v\)の根がその区間に存在します(例:\(J_0\)はx=2とx=3の間で符号が変わり、最初のゼロ点≈2.4048を含みます)。大きな引数に対して、連続するゼロ点は約\(\pi\)だけ間隔が広がっています。
  • 物理的なノードこれらのゼロ点は物理的な境界条件に対応します:振動する円形ドラムの動径モード、円筒導波管のカットオフ周波数、光ファイバーの場パターンはすべて\(J_v\)のゼロ点でインデックス付けされています。
  • 大きさ固定されたxに対して、より高い次数vはゼロに近く始まり、より遅く上昇します。小さいxに対して、先頭の振る舞いは\(J_v(x)\sim \frac{1}{\Gamma(v+1)}\left(\frac{x}{2}\right)^{v}\)であり、より大きいvはxが\(v\)と比較可能になるまで小さいままです。

これらの観察は上記で確立された級数と漸近形から従い、入力したすべての次数に適用されます。

よくある質問

次数は小数や負の値でもよいですか? はい。ガンマ関数を用いた級数なので、半整数(球ベッセル関数の形になります)や負の値を含む任意の実数次数に対応します。

\(x = 0\) のときはどうなりますか? \(J_0(0) = 1\) で、\(v > 0\) では \(J_v(0) = 0\) になります。これは先頭の \((x/2)^v\) の因子が 0 になるためです。

\(x\) が大きいときの精度はどうですか? 倍精度の級数計算は通常の範囲(\(x\) がおよそ 20〜30 まで)で十分な精度を保ちます。\(x\) が非常に大きい場合は桁落ち(catastrophic cancellation)により精度が低下することがあり、その領域では漸近形 \(J_v(x) \approx \sqrt{\dfrac{2}{\pi x}} \cos\left(x - \dfrac{v\pi}{2} - \dfrac{\pi}{4}\right)\) を用いる方が適しています。

最終更新: