ルンゲクッタ法 となる微分方程式の解を数値的に解く方法
x=x0におけるyの値y0がわかっているときy(x0+h)のx0におけるテイラー展開は 次のようになる。 ルンゲクッタ法 x=x0におけるyの値y0がわかっているときy(x0+h)のx0におけるテイラー展開は 次のようになる。
ルンゲクッタ法 hのn次の項まで打ち切ると、 x1=x0+hのときのy1を求めることができる。 このときの誤差は、O(hn+1)となり、hのn+1乗に比例した誤差となる。 hが小さいほど、誤差も小さくなる。
ルンゲクッタ法 n=1のとき、オイラー法になる。 hの値が大きいと誤差も大きくなる。 できるだけ小さいhを求めた方が 精度よく計算できる。 そのときには計算回数が大きくなる。
ルンゲクッタ法 大きいn次まで採用→誤差は小さくなる 一回の計算に必要な処理が大きくなってしまう。 n次の導関数の算出が出来ない場合もある。 一回の計算に必要な処理が大きくなってしまう。 n次の導関数の算出が出来ない場合もある。 ↓ x0とx1の中間のxにおける値を計算し、 それらの重み付き平均を用いることで、 テイラー展開した場合とおなじ次数までをカバーする →ルンゲクッタ法
ルンゲクッタ法 ルンゲクッタ法 2次の場合 が成り立つとする。 ここで、φはx0とx1の中間のxにおけるf(x)の値k1とk2の重み付き平均 ルンゲクッタ法 2次の場合 式(1) が成り立つとする。 ここで、φはx0とx1の中間のxにおけるf(x)の値k1とk2の重み付き平均
ルンゲクッタ法 ルンゲクッタ法 2次の場合 k2に2変数関数のテイラー展開をして2次以上を無視すると、 これを式(1)に代入すると 式(2)
ルンゲクッタ法 ルンゲクッタ法 2次の場合 2次までのテイラー展開の式 式(3)
ルンゲクッタ法 ルンゲクッタ法 2次の場合 式(2) 式(3) 式(2)と式(3)が等しく条件は、w1+w2=1, w2a=w2b=1/2
ルンゲクッタ法 ルンゲクッタ法 2次の場合 数値計算的なf(x,y)の2変数導関数fx(x,y)、fy(x,y)を直接算出する代わりに ルンゲクッタ法 2次の場合 数値計算的なf(x,y)の2変数導関数fx(x,y)、fy(x,y)を直接算出する代わりに f(x,y)の重み付き平均で求めることができる。 w2=1の場合、 2次のルンゲクッタ公式(修正オイラー法)