線型多段法

提供: testwiki
2024年8月1日 (木) 02:44時点における192.5.98.28 (トーク)による版 (Dahlquist barrier)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

線型多段法(linear multistep method)は、常微分方程式の数値解法の一つである[1][2]

概要

常微分方程式の数値解法では、初期値から始めて微小な刻み幅の分だけ時間を進め、次の点での解を求める。このステップを繰り返せば解曲線が得られる。

過去のs個の時刻における値を用いて次の値を算出する方法を、s段法またはs次の多段法という。特にsが1の場合は1段法または単段法と呼ばれる[1][2]

1段法(single-step method)の例として、オイラー法ルンゲ=クッタ法が挙げられる[1][2]オイラー法では、過去の1時刻での値のみを用いて最新の値を決定する。ルンゲ=クッタ法では、間にある複数のステップ(例えば中点)の値を用いることで良い近似値を得ているが、2番目のステップの値を得る前に過去の情報を全て捨てている。

多段法では、過去の情報を捨てずに保持して用いることで有効な値を得る。すなわち、多段法では過去の複数の時刻での値を用いる。線型多段法の場合は、それらの線型結合が用いられる。

定義

常微分方程式とその初期値問題を次のように定める。

y=f(t,y),y(t0)=y0.

離散的な時間tiにおけるy(t)の値は次のようになる。

ti=t0+ih
yi=y(ti)=y(t0+ih)
yi=f(ti,yi)

ここでhは時間の刻み幅であり、Δtとも書かれる。

線型多段法では、求めるyの値を計算するためにyiyiの線型結合を用いる。s段法では次の値を計算するため、過去のs個の値yn,,yn+s1を用いる。そのため、求める最新の値はyn+sとなる。

線型多段法は次の形で表される。

yn+s+as1yn+s1+as2yn+s2++a0yn=h(bsf(tn+s,yn+s)+bs1f(tn+s1,yn+s1)++b0f(tn,yn)),

2s+1個の係数a0,,as1b0,,bsがこの方法を定める。各係数は使用者が決めるが、多くの係数がゼロとされることがよくある。y(t)n次の多項式であれば、使用者はこれを厳密に補間するように係数を選ぶのが一般的である。

特徴

準備

上記のように、s段法では過去のs個の時刻における値が必要となる。初期値として1時刻の値のみが与えられている場合は、1段法をs1回実行するなどして必要な値を用意しておく。

陽公式と陰公式

bs=0であればこの方法は陽公式と呼ばれる。陽公式はyn+sを直接算出できる。

bsの値がゼロでなければ、yn+sの値はf(tn+s,yn+s)の値に依存する。この方法は陰公式と呼ばれ、yn+sを求めるための式があらかじめ解かれていなければならない。陰公式を解くためにはニュートン法のような反復法がよく用いられる。

陽公式はyn+sの値を「予測」するために用いられることがある。陽公式から求めたyn+sの値(予測子)を陰公式のf(tn+s,yn+s)に代入すれば、より正確なyn+sに「修正」できる。これが予測子修正子法である[1][2]

収束性

出発値を一定の誤差以内に選べばm次の安定な線形多段法はm次収束することが知られている[1][3](ただしm次のルンゲ=クッタ法は出発値に関係なくm次収束する[1])。

Dahlquist barrier

m次の安定なN次多段法において、Nが偶数の時mN+2Nが奇数の時mN+1である[1][4][5]。よってN+2次より高次の安定な線形N段法は存在しない[1]

2次のアダムス・バッシュフォース(Adams-Bashforth)法

これは簡単な線型2段法の一つである。

yn+2=yn+1+32hf(tn+1,yn+1)12hf(tn,yn).

この方法では2つの値ynyn+1を用いてyn+2を計算する。しかし初期値問題ではy0だけが与えられていて、y1はこの公式では求められない。そこで計算の開始にあたってy1だけは、別の方法たとえば2次のルンゲクッタ法などで求める必要がある。

脚注

テンプレート:Reflist

外部リンク

  1. 1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 テンプレート:Cite book
  2. 2.0 2.1 2.2 2.3 テンプレート:Cite book
  3. Ortega, J. M. (1990). Numerical analysis: a second course. Society for Industrial and Applied Mathematics.
  4. Dahlquist, Germund (1956), "Convergence and stability in the numerical integration of ordinary differential equations", Mathematica Scandinavica, 4: 33--53.
  5. Hairer, Ernst; Nørsett, Syvert Paul; Wanner, Gerhard (1993), Solving ordinary differential equations I: Nonstiff problems (2nd ed.), Berlin: Springer Verlag, ISBN 978-3-540-56670-0.