Find y(0.5) for `y'=-2x-y`, `x_0=0, y_0=-1`, with step length 0.1 using Runge-Kutta 4 method (first order differential equation) Solution:Given `y'=-2x-y, y(0)=-1, h=0.1, y(0.5)=?`
Fourth order Runge-Kutta (RK4) method formula
`k_1=f(x_n,y_n)`
`k_2=f(x_n+h/2,y_n+(hk_1)/2)`
`k_3=f(x_n+h/2,y_n+(hk_2)/2)`
`k_4=f(x_n+h,y_n+hk_3)`
`y_(n+1)=y_n+h/6(k_1+2k_2+2k_3+k_4)`
for `n=0,x_0=0,y_0=-1`
`k_1=f(x_0,y_0)`
`=f(0,-1)`
`=1`
`k_2=f(x_0+h/2,y_0+(hk_1)/2)`
`=f(0.05,-0.95)`
`=0.85`
`k_3=f(x_0+h/2,y_0+(hk_2)/2)`
`=f(0.05,-0.9575)`
`=0.8575`
`k_4=f(x_0+h,y_0+hk_3)`
`=f(0.1,-0.9142)`
`=0.7143`
`y_1=y_0+h/6(k_1+2k_2+2k_3+k_4)`
`=-1+0.1/6[1+2(0.85)+2(0.8575)+(0.7143)]`
`=-0.9145`
`x_1=x_0+h=0+0.1=0.1`
for `n=1,x_1=0.1,y_1=-0.9145`
`k_1=f(x_1,y_1)`
`=f(0.1,-0.9145)`
`=0.7145`
`k_2=f(x_1+h/2,y_1+(hk_1)/2)`
`=f(0.15,-0.8788)`
`=0.5788`
`k_3=f(x_1+h/2,y_1+(hk_2)/2)`
`=f(0.15,-0.8856)`
`=0.5856`
`k_4=f(x_1+h,y_1+hk_3)`
`=f(0.2,-0.856)`
`=0.456`
`y_2=y_1+h/6(k_1+2k_2+2k_3+k_4)`
`=-0.9145+0.1/6[0.7145+2(0.5788)+2(0.5856)+(0.456)]`
`=-0.8562`
`x_2=x_1+h=0.1+0.1=0.2`
for `n=2,x_2=0.2,y_2=-0.8562`
`k_1=f(x_2,y_2)`
`=f(0.2,-0.8562)`
`=0.4562`
`k_2=f(x_2+h/2,y_2+(hk_1)/2)`
`=f(0.25,-0.8334)`
`=0.3334`
`k_3=f(x_2+h/2,y_2+(hk_2)/2)`
`=f(0.25,-0.8395)`
`=0.3395`
`k_4=f(x_2+h,y_2+hk_3)`
`=f(0.3,-0.8222)`
`=0.2222`
`y_3=y_2+h/6(k_1+2k_2+2k_3+k_4)`
`=-0.8562+0.1/6[0.4562+2(0.3334)+2(0.3395)+(0.2222)]`
`=-0.8225`
`x_3=x_2+h=0.2+0.1=0.3`
for `n=3,x_3=0.3,y_3=-0.8225`
`k_1=f(x_3,y_3)`
`=f(0.3,-0.8225)`
`=0.2225`
`k_2=f(x_3+h/2,y_3+(hk_1)/2)`
`=f(0.35,-0.8113)`
`=0.1113`
`k_3=f(x_3+h/2,y_3+(hk_2)/2)`
`=f(0.35,-0.8169)`
`=0.1169`
`k_4=f(x_3+h,y_3+hk_3)`
`=f(0.4,-0.8108)`
`=0.0108`
`y_4=y_3+h/6(k_1+2k_2+2k_3+k_4)`
`=-0.8225+0.1/6[0.2225+2(0.1113)+2(0.1169)+(0.0108)]`
`=-0.811`
`x_4=x_3+h=0.3+0.1=0.4`
for `n=4,x_4=0.4,y_4=-0.811`
`k_1=f(x_4,y_4)`
`=f(0.4,-0.811)`
`=0.011`
`k_2=f(x_4+h/2,y_4+(hk_1)/2)`
`=f(0.45,-0.8104)`
`=-0.0896`
`k_3=f(x_4+h/2,y_4+(hk_2)/2)`
`=f(0.45,-0.8154)`
`=-0.0846`
`k_4=f(x_4+h,y_4+hk_3)`
`=f(0.5,-0.8194)`
`=-0.1806`
`y_5=y_4+h/6(k_1+2k_2+2k_3+k_4)`
`=-0.811+0.1/6[0.011+2(-0.0896)+2(-0.0846)+(-0.1806)]`
`=-0.8196`
`x_5=x_4+h=0.4+0.1=0.5`
`:.y(0.5)=-0.8196`
| `n` | `x_n` | `y_n` | `k_1` | `k_2` | `k_3` | `k_4` | `x_(n+1)` | `y_(n+1)` |
| 0 | 0 | -1 | 1 | 0.85 | 0.8575 | 0.7143 | 0.1 | -0.9145 |
| 1 | 0.1 | -0.9145 | 0.7145 | 0.5788 | 0.5856 | 0.456 | 0.2 | -0.8562 |
| 2 | 0.2 | -0.8562 | 0.4562 | 0.3334 | 0.3395 | 0.2222 | 0.3 | -0.8225 |
| 3 | 0.3 | -0.8225 | 0.2225 | 0.1113 | 0.1169 | 0.0108 | 0.4 | -0.811 |
| 4 | 0.4 | -0.811 | 0.011 | -0.0896 | -0.0846 | -0.1806 | 0.5 | -0.8196 |
This material is intended as a summary. Use your textbook for detail explanation.
Any bug, improvement, feedback then