Professional Documents
Culture Documents
Runge-Kutta 4th Order Method For
Runge-Kutta 4th Order Method For
04
Runge-Kutta 4th Order Method for
Ordinary Differential Equations
How does one write a first order differential equation in the above form?
Example 1
Rewrite
dy
+ 2 y = 1.3e −x , y ( 0 ) = 5
dx
in
dy
= f ( x, y ), y (0) = y 0 form.
dx
08.04.1
08.04.2 Chapter 08.04
Solution
dy
+ 2 y = 1.3e −x , y ( 0 ) = 5
dx
dy
= 1.3e −x − 2 y, y ( 0 ) = 5
dx
In this case
f ( x, y ) = 1.3e −x − 2 y
Example 2
Rewrite
dy
ey + x 2 y 2 = 2 sin( 3 x), y ( 0 ) = 5
dx
in
dy
= f ( x, y ), y (0) = y 0 form.
dx
Solution
dy
ey + x 2 y 2 = 2 sin( 3 x), y ( 0 ) = 5
dx
dy 2 sin( 3 x) − x 2 y 2
= , y( 0) = 5
dx ey
In this case
2 sin( 3 x) − x 2 y 2
f ( x, y ) =
ey
The Runge-Kutta 4th order method is based on the following
yi +1 = yi + ( a1k1 + a2 k 2 + a3 k 3 + a4 k 4 ) h
(1)
where knowing the value of y = y i at xi , we can find the value of y = yi +1 at xi +1 , and
h = xi +1 − xi
Equation (1) is equated to the first five terms of Taylor series
dy 1 d2y 1 d3y
xi , yi ( xi +1 − xi ) + ( ) ( xi +1 − xi )
2 3
yi +1 = yi + x , y xi +1 − xi + xi , y i
dx 2! dx 2 i i 3! dx 3
1 d4y
+ 4 xi , yi
( xi +1 − xi ) 4
4! dx
(2)
dy
Knowing that = f ( x, y ) and xi +1 − xi = h
dx
1 1
y i +1 = y i + f ( xi , y i ) h + f ' ( xi , y i ) h 2 + f ''
( xi , y i ) h 3 + 1 f '''
( xi , y i ) h 4
2! 3! 4!
(3)
Based on equating Equation (2) and Equation (3), one of the popular solutions used is
Runge-Kutta 4th Order Method 08.04.3
1
y i +1 = y i + ( k1 + 2 k 2 + 2k 3 + k 4 ) h
6
(4)
k1 = f ( x i , y i ) (5a)
1 1
k 2 = f xi + h, yi + k1h
2 2
(5b)
1 1
k 3 = f xi + h, y i + k 2 h (5c)
2 2
k 4 = f ( xi + h, y i + k 3 h )
(5d)
Example 3
A ball at 1200 K is allowed to cool down in air at an ambient temperature of 300 K.
Assuming heat is lost only due to radiation, the differential equation for the temperature of
the ball is given by
dθ
= −2.2067 ×10 −12 (θ 4 − 81 ×10 8 ), θ ( 0 ) = 1200 K
dt
where θ is in K and t in seconds. Find the temperature at t = 480 seconds using Runge-
Kutta 4th order method. Assume a step size of h = 240 seconds.
Solution
dθ
= −2.2067 ×10 −12 (θ 4 − 81 ×10 8 )
dt
(
f ( t , θ ) = −2.2067 ×10 −12 θ 4 − 81 ×10 8 )
1
θi +1 = θi + ( k1 + 2k 2 + 2k 3 + k 4 ) h
6
For i = 0 , t 0 = 0 , θ0 = 1200 K
k1 = f ( t0 , θ0 )
= f ( 0,1200 )
= −2.2067 ×10 −12 (1200 4 − 81 ×10 8 )
= −4.5579
1 1
k 2 = f t 0 + h, θ0 + k1h
2 2
1 1
= f 0 + ( 240 ) ,1200 + ( − 4.5579 ) × 240
2 2
= f (120 ,653 .05 )
= −2.2067 ×10 −12 ( 653 .05 4 − 81 ×10 8 )
= −0.38347
1 1
k 3 = f t 0 + h, θ 0 + k 2 h
2 2
08.04.4 Chapter 08.04
1 1
= f 0 + ( 240 ) ,1200 + ( − 0.38347 ) × 240
2 2
= f (120 ,1154 .0 )
= −2.2067 ×10 −12 (1154 .0 4 − 81 ×10 8 )
= −3.8954
k 4 = f ( t0 + h, θ0 + k3 h )
= f ( 0 + 240,1200 + ( − 3.894 ) × 240 )
= f ( 240 ,265 .10 )
= −2.2067 ×10 −12 ( 265 .10 4 − 81 ×10 8 )
= 0.0069750
1
θ1 = θ0 + (k1 + 2k 2 + 2k 3 + k 4 )h
6
1
= 1200 + ( − 4.5579 + 2( − 0.38347 ) + 2( − 3.8954 ) + ( 0.069750 ) ) 240
6
= 1200 + ( − 2.1848 ) × 240
= 675 .65 K
θ1 is the approximate temperature at
t = t1
= t0 + h
= 0 + 240
= 240
θ1 = θ ( 240 )
≈ 675 .65 K
For i = 1, t1 = 240 ,θ1 = 675 .65 K
k1 = f ( t1 ,θ1 )
= f ( 240 ,675 .65 )
= −2.2067 ×10 −12 ( 675 .65 4 − 81 ×10 8 )
= −0.44199
1 1
k 2 = f t1 + h, θ1 + k1h
2 2
1 1
= f 240 + ( 240 ) ,675 .65 + ( − 0.44199 ) 240
2 2
= f ( 360 ,622 .61)
(
= −2.2067 ×10 −12 622 .614 − 81 ×10 8 )
= −0.31372
1 1
k3 = f t1 + h, θ1 + k 2 h
2 2
1 1
= f 240 + ( 240 ) ,675 .65 + ( − 0.31372 ) × 240
2 2
= f ( 360 ,638 .00 )
= −2.2067 ×10 −12 ( 638 .00 4 − 81 ×10 8 )
Runge-Kutta 4th Order Method 08.04.5
= −0.34775
k 4 = f ( t1 + h, θ1 + k3 h )
= f ( 240 + 240,675.65 + ( − 0.34775 ) × 240 )
= f ( 480 ,592 .19 )
= 2.2067 ×10 −12 (592 .19 4 − 81 ×10 8 )
= −0.25351
1
θ 2 = θ1 + (k1 + 2k 2 + 2k 3 + k 4 )h
6
1
= 675 .65 + ( − 0.44199 + 2( − 0.31372 ) + 2( − 0.34775 ) + ( − 0.25351 ) ) × 240
6
1
= 675 .65 + ( − 2.0184 ) × 240
6
= 594 .91 K
θ2 is the approximate temperature at
t = t2
= t1 + h
= 240 + 240
= 480
θ2 = θ ( 480 )
≈ 594 .91 K
Figure 1 compares the exact solution with the numerical solution using the Runge-Kutta 4th
order method with different step sizes.
1600
Temperature, θ(K)
1200
h=120
800 Exact
h=240
400
h=480
0
0 200 400 600
-400
Time,t(sec)
Table 1 and Figure 2 show the effect of step size on the value of the calculated temperature at
t = 480 seconds.
08.04.6 Chapter 08.04
0
0 100 200 300 400 500
-200
Step size, h
In Figure 3, we are comparing the exact results with Euler’s method (Runge-Kutta 1st order
method), Heun’s method (Runge-Kutta 2nd order method), and Runge-Kutta 4th order
method.
The formula described in this chapter was developed by Runge. This formula is same as
Simpson’s 1/3 rule, if f ( x, y ) were only a function of x . There are other versions of the 4th
order method just like there are several versions of the second order methods. The formula
developed by Kutta is
1
y i +1 = y i + ( k1 + 3k 2 + 3k 3 + k 4 ) h (6)
8
where
k1 = f ( x i , y i ) (7a)
1 1
k 2 = f xi + h, y i + hk 1 (7b)
3 3
2 1
k 3 = f xi + h, y i − hk 1 + hk 2 (7c)
3 3
k 4 = f ( xi + h, y i + hk1 − hk 2 + hk 3 ) (7d)
This formula is the same as the Simpson’s 3/8 rule, if f ( x, y ) is only a function of x.
Runge-Kutta 4th Order Method 08.04.7
1400
Temperature, θ(K)
1200
4th order
1000
800
Exact
600
Heun
400
200 Euler
0
0 100 200 300 400 500
Time, t(sec)
Figure 3 Comparison of Runge-Kutta methods of 1st (Euler), 2nd, and 4th order.