これは,Wolfram言語の以前のバージョンに基
づくMathematica 5のためのドキュメントです.
最新のドキュメント(バージョン11.1)もご覧ください.

Documentation / Mathematica / アドオンとリンク / 標準パッケージ / NumericalMath /

NumericalMath`BesselZeros`

多くの偏微分方程式の厳密解は,特定のベッセル関数のゼロの無限和で表すことができる.例えば,初期温度境界条件の単位円板上の標準単位における熱方程式の解 は以下で与えられる.

ここで,の正のゼロの 等である.FindRootを使うと,初期値のペアをうまく見付けられれば,任意のひとつの希望するゼロを見つけることは難しいことではない.このパッケージは自動的に初期値を選びFindRootを使ってさまざまなBessel関数の正のゼロのリストを効果的に作成する.

Bessel関数でゼロを求める

FindRootは初期値が1つでも使うことができる.この場合はニュートン法に基づいたメソッドを用いる.しかし,通常Bessel関数の導関数は他の2つのBessel関数を用いて表される.そのような場合には割線法の方がニュートン法より効果的である.割線法はペアになっている初期値を必要とする.できれば望ましいゼロの両側にあり,独自にゼロを決定できるだけ近いとよい.

番目のゼロをとして近似するための漸近式があるが,この近似はが小さく次数 が大きい場合にFindRootの初期値として用いるにしても不正確すぎる.このため,このパッケージはよい近似結果が得られるくらい大きなを求める.連続するいくつかのゼロが求まると既知の最小のゼロの直前のゼロのための初期値を求めるために後ろ向きに外挿することができる.このような方法で進んで行くと所望のゼロを求めることができる.

BesselZero関数のオプション

パッケージをロードする.

In[1]:= << NumericalMath`BesselZeros`

次での最初の5つのゼロが得られる.

In[2]:= BesselJZeros[0, 5]

Out[2]=

次はの17番目,18番目,19番目のゼロである.

In[3]:= BesselYPrimeZeros[3, {17, 19}]

Out[3]=

次はの最初の3つのゼロの高精度の値である.

In[4]:= BesselJYJYZeros[2, 6/5, 3,
WorkingPrecision -> 30]

Out[4]=

Bessel関数の2数間のゼロを見付ける

このパッケージは,2つの正の初期値間のゼロを見付ける二分法も実装する.

1と10の間の1次Bessel J関数のゼロである.

In[5]:= BesselJZerosInterval[1, {1, 10}]

Out[5]=