Formula
Forth order R-K method
`k_1=hf(x_n,y_n)`
`k_2=hf(x_n+h/2,y_n+k_1/2)`
`k_3=hf(x_n+h/2,y_n+k_2/2)`
`k_4=hf(x_n+h,y_n+k_3)`
`y_(n+1)=y_n+1/6(k_1+2k_2+2k_3+k_4)`
|
Examples
1. Find y(0.2) for `y'=(x-y)/2`, `x_0=0, y_0=1`, with step length 0.1 using Runge-Kutta 4 method (1st order derivative) Solution:Given `y'=(x-y)/(2), y(0)=1, h=0.1, y(0.2)=?`
Fourth order Runge-Kutta (RK4) method formula
`k_1=h f(x_n,y_n)
`k_2=h f(x_n+h/2,y_n+k_1/2
`k_3=h f(x_n+h/2,y_n+k_2/2
`k_4=h f(x_n+h,y_n+k_3
`y_(n+1)=y_n+1/6(k_1+2k_2+2k_3+k_4)`
for `n=0,x_0=0,y_0=1`
`k_1=hf(x_0,y_0)`
`=(0.1)f(0,1)`
`=(0.1)*(-0.5)`
`=-0.05`
`k_2=hf(x_0+h/2,y_0+k_1/2)`
`=(0.1)f(0.05,0.975)`
`=(0.1)*(-0.4625)`
`=-0.0462`
`k_3=hf(x_0+h/2,y_0+k_2/2)`
`=(0.1)f(0.05,0.9769)`
`=(0.1)*(-0.4634)`
`=-0.0463`
`k_4=hf(x_0+h,y_0+k_3)`
`=(0.1)f(0.1,0.9537)`
`=(0.1)*(-0.4268)`
`=-0.0427`
`y_1=y_0+1/6(k_1+2k_2+2k_3+k_4)`
`=1+1/6[-0.05+2(-0.0462)+2(-0.0463)+(-0.0427)]`
`=0.9537`
`x_1=x_0+h=0+0.1=0.1`
for `n=1,x_1=0.1,y_1=0.9537`
`k_1=hf(x_1,y_1)`
`=(0.1)f(0.1,0.9537)`
`=(0.1)*(-0.4268)`
`=-0.0427`
`k_2=hf(x_1+h/2,y_1+k_1/2)`
`=(0.1)f(0.15,0.9323)`
`=(0.1)*(-0.3912)`
`=-0.0391`
`k_3=hf(x_1+h/2,y_1+k_2/2)`
`=(0.1)f(0.15,0.9341)`
`=(0.1)*(-0.3921)`
`=-0.0392`
`k_4=hf(x_1+h,y_1+k_3)`
`=(0.1)f(0.2,0.9145)`
`=(0.1)*(-0.3572)`
`=-0.0357`
`y_2=y_1+1/6(k_1+2k_2+2k_3+k_4)`
`=0.9537+1/6[-0.0427+2(-0.0391)+2(-0.0392)+(-0.0357)]`
`=0.9145`
`x_2=x_1+h=0.1+0.1=0.2`
`:.y(0.2)=0.9145`
| `n` | `x_n` | `y_n` | `k_1` | `k_2` | `k_3` | `k_4` | `x_(n+1)` | `y_(n+1)` |
| 0 | 0 | 1 | -0.05 | -0.0462 | -0.0463 | -0.0427 | 0.1 | 0.9537 |
| 1 | 0.1 | 0.9537 | -0.0427 | -0.0391 | -0.0392 | -0.0357 | 0.2 | 0.9145 |
This material is intended as a summary. Use your textbook for detail explanation.
Any bug, improvement, feedback then