ルンゲ=クッタ法

数値解析において微分方程式の初期値問題に対して近似解を与える一連の方法
ルンゲクッタ法から転送)

数値解析においてルンゲ=クッタ法: Runge–Kutta method)とは、初期値問題に対して近似解を与える常微分方程式の数値解法に対する総称である。この技法は1900年頃に数学者カール・ルンゲマルティン・クッタによって発展を見た。

古典的ルンゲ=クッタ法

編集

= (RK4 =: the (classical) RungeKutta method) 4



 

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

 tn yn= y(tn)  h yn+1, tn+1 yn+1  y(tn+1) 4 y0  tn yn

 



 

[1][2] (yn+1)  (yn)  hk1, ..., k44k1, ..., k4 (t, y)  f

k1  tn ()

k2  tn+ h/2  () y k1

k3  y k2

k4  tn+ hk3  y

[3]

 

RK44RK441    y      

ルンゲ゠クッタ法

編集

 RK4  s s (stage) 

 

[4]

 

()[5]

 aij()bi ()cj ()  ( )[6]        (ERK: explicit RungeKutta methods)   (IRK: implicit RungeKutta methods) 

 yn yn+1     pp  () p 22 ,  ,    [7]

 (Butcher tableau) [8]:

 

 0  RK4 

 


 

収束性

編集

 (quadrature)  tn tn+1 = tn+ h

 

 [0, 1] 

 

bi  ci p 1 0 pp [9] s2s  s

[6]

 

  ki  y(tn + cih) 

陽的ルンゲ゠クッタ法

編集

陽的ルンゲ゠クッタ法では   ( ) が満たされるので、ブッチャー配列は以下の形になる。

0
   
     
     
         
         

 k1, ..., ks[10]

 

()[5]

 p s ( ) 5 ( ) [11] p s[12]:

 
 
 (RK4)          124 1, 2, 4 [13]

1段1次の公式

編集

11 () 

 


0
1

2段2次の公式

編集

2段2次の方法は1パラメータの自由度 α を持ち、以下のブッチャー配列で与えられる。

0
   
   

対応する公式は[14]

 

である。  の場合が 中点法 (または修正オイラー法, modified Euler method)

 

に対応し、以下のブッチャー配列で与えられる。

0
1/2 1/2
0 1

  の場合は ホイン法英語版(または改良オイラー法, improved Euler method)として知られ、ブッチャー配列は以下の通りである[3]

0
1 1
1/2 1/2

4段4次の公式

編集

古典的ルンゲ゠クッタ法 (RK4) は既に述べた通り以下のブッチャー配列で与えられる[8]:

0
1/2 1/2
1/2 0 1/2
1 0 0 1
1/6 1/3 1/3 1/6

修正版としてクッタの3/8公式 (: Kutta's 3/8-rule) が知られている[15]

0
1/3 1/3
2/3 -1/3 1
1 1 -1 1
1/8 3/8 3/8 1/8

他に使われている方法は、ルンゲ=クッタ法のリストに参照。

計算例:2段2次陽的方法の条件の導出

編集

22 ,  ,    [7]

2(   ) 

 

    f(tn,yn) 

 

ft  f t     

 

    t y'  f(t,y) 

 

 y(t)  y(tn+1)  tn

 

2    ,  ,    

埋め込み型ルンゲ=クッタ法

編集

 Embedded Runge-Kutta method (adaptive RungeKutta method) [16]


0
   
     
     
         
         
         

bi  pb *
i   p-1  aij ci tn en

 

0 h調[17]

 δ  h yn+1  y *
n+1    h       h    

使1/2 h hmin   使 

もっとも単純な埋め込み型ルンゲ=クッタ法は、ホイン法(2次)とオイラー法(1次)を組み合わせる方法である。以下の拡張ブッチャー配列で与えられる。

0
1 1
1/2 1/2
1 0

そして実践でよく使われているのが5次と4次の陽的方法を組み合わせる ルンゲ=クッタ=フェールベルグ法 である。対応する拡張ブッチャー配列は以下の通りである[18]

0
1/4 1/4
3/8 3/32 9/32
12/13 1932/2197 −7200/2197 7296/2197
1 439/216 −8 3680/513 -845/4104
1/2 −8/27 2 −3544/2565 1859/4104 −11/40
16/135 0 6656/12825 28561/56430 −9/50 2/55
25/216 0 1408/2565 2197/4104 −1/5 0

他に使われている方法は、Bogacki–Shampine法英語版(次数3と2)、Cash–Karp法英語版ドルマン=プリンス法(両方次数5と4)である。

陰的ルンゲ=クッタ法

編集

region of absolute stability[19]



 



 

[4]s 使 m    mss 使 m s[20]

退

 



 



 



 

  

 

[21]

s  2s[22]2
  [22]

安定性

編集

数値分析における安定性は、それぞれ異なる定義が複数存在する。ルンゲ=クッタ法の安定性を反映できる概念は、主に以下の二つである。

A-安定性

編集

   使   

  [23]

 Ce 1[][24]s  r(z)  s  r(z)  s[25]

   ( )  z  region of absolute stability   A- (A-stable) A-[25]

 p    ez m nA-  ,  [26]   [27]

s 2s  s   A-[28]A-A-2[29]


B-安定性

編集

A-    使調 G- G-stability B- (B-stability)[30]     調    f        B-  yn  zn   B-A-[31]

脚注

編集


(一)^ Press et al. 2007, p. 908.

(二)^ Süli & Mayers 2003, p. 328.

(三)^ abSüli & Mayers 2003, p. 328.

(四)^ abIserles 2008, p. 41; Süli & Mayers 2003, pp. 351352.

(五)^ abAtkinson (1989, p. 423), Hairer, Nørsett & Wanner (1993, p. 134), Kaw & Kalu (2008, §8.4) and Stoer & Bulirsch (2002, p. 476) leave out the factor hin the definition of the stages. Ascher & Petzold (1998, p. 81), Butcher (2008, p. 93) and Iserles (2008, p. 38) use the yvalues as stages.

(六)^ abIserles 2008, p. 38.

(七)^ abIserles 2008, p. 39.

(八)^ abSüli & Mayers 2003, p. 352.

(九)^ Iserles 2008, p. 34.

(十)^ Press et al. 2007, p. 907.

(11)^ Butcher 2008, p. 187.

(12)^ Butcher 2008, pp. 187196.

(13)^   172017107ISBN 9784320992740 

(14)^ Süli & Mayers 2003, p. 327.

(15)^ Hairer, Nørsett & Wanner (1993, p. 138) refer to Kutta (1901).

(16)^ Iserles 2008, p. 107.

(17)^ Iserles 2008, p. 109.

(18)^ Hairer, Nørsett & Wanner 1993, p. 177.

(19)^ Süli & Mayers 2003, pp. 349351.

(20)^ Süli & Mayers 2003, p. 353.

(21)^ Iserles 2008, pp. 4344.

(22)^ abIserles 2008, p. 47.

(23)^ Hairer & Wanner 1996, pp. 4041.

(24)^ Hairer & Wanner 1996, p. 40.

(25)^ abIserles 2008, p. 60.

(26)^ Iserles (2008)  A-acceptable 

(27)^ Iserles 2008, pp. 6263.

(28)^ Iserles 2008, p. 63.

(29)^ second Dahlquist barrier Dahlquist (1963) 

(30)^ Butcher 1975.

(31)^ Hairer & Wanner 1996, p. 181.

参考文献

編集
  • John C. Butcher: "B-Series : Algebraic Analysis of Numerical Methods", Springer(SSCM, volume 55), ISBN 978-3030709556 (April, 2021).

関連項目

編集