Euler Method for Solving Ordinary Differential Equations

advertisement
Euler Method
Major: All Engineering Majors
Authors: Autar Kaw, Charlie Barker
http://numericalmethods.eng.usf.edu
Transforming Numerical Methods Education for STEM
Undergraduates
3/22/2016
http://numericalmethods.eng.usf.edu
1
Euler Method
http://numericalmethods.eng.usf.edu
Euler’s Method
y
dy
 f x, y , y 0  y 0
dx
Slope

Rise
Run

y1  y0
x1  x0
 f  x0 , y 0 
y1  y0  f x0 , y0 x1  x0 
 y0  f x0 , y0 h
3
True value
Φ
x0,y0
y1, Predicted
value
Step size, h
x
Figure 1 Graphical interpretation of the first step of Euler’s method
http://numericalmethods.eng.usf.edu
Euler’s Method
y
yi 1  yi  f xi , yi h
True Value
h  xi 1  xi
yi+1, Predicted value
Φ
yi
h
Step size
xi
xi+1
x
Figure 2. General graphical interpretation of Euler’s method
4
http://numericalmethods.eng.usf.edu
How to write Ordinary Differential
Equation
How does one write a first order differential equation in the form of
dy
 f  x, y 
dx
Example
dy
 2 y  1.3e  x , y 0   5
dx
is rewritten as
dy
 1.3e  x  2 y, y 0   5
dx
In this case
f x, y   1.3e  x  2 y
5
http://numericalmethods.eng.usf.edu
Example
A ball at 1200K is allowed to cool down in air at an ambient temperature
of 300K. 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108 , 0  1200 K
dt

Find the temperature at

t  480 seconds using Euler’s method. Assume a step size of
h  240 seconds.
6
http://numericalmethods.eng.usf.edu
Solution
Step 1:
d
 2.2067  10 12  4  81 10 8
dt



f t ,   2.2067 10 12  4  81108

 i 1   i  f ti ,  i h
1   0  f t0 ,  0 h
 1200  f 0,1200 240



 1200   2.2067 10 12 1200 4  81108 240
 1200   4.5579 240
1
7
 106.09 K
is the approximate temperature at t  t1  t0  h  0  240  240
 240  1  106.09K
http://numericalmethods.eng.usf.edu
Solution Cont
Step 2:
For i  1,
t1  240, 1  106.09
 2  1  f t1 ,1 h
 106.09  f 240,106.09 240



 106.09   2.2067  10 12 106.09 4  81108 240
 106.09  0.017595240
 110.32 K
 2 is the approximate temperature at t  t2  t1  h  240  240  480
 480  2  110.32K
8
http://numericalmethods.eng.usf.edu
Solution Cont
The exact solution of the ordinary differential equation is given by the
solution of a non-linear equation as
0.92593 ln
  300
 1.8519 tan 1 0.00333   0.22067 10 3 t  2.9282
  300
The solution to this nonlinear equation at t=480 seconds is
 (480)  647.57 K
9
http://numericalmethods.eng.usf.edu
Comparison of Exact and
Numerical Solutions
Temperature, θ(K)
1400
1200
1000
Exact Solution
800
600
400
h=240
200
0
0
100
200
300
400
500
Time, t(sec)
Figure 3. Comparing exact and Euler’s method
10
http://numericalmethods.eng.usf.edu
Effect of step size
Table 1. Temperature at 480 seconds as a function of step size, h
Step, h
(480)
Et
|єt|%
480
240
120
60
30
−987.81
110.32
546.77
614.97
632.77
1635.4
537.26
100.80
32.607
14.806
252.54
82.964
15.566
5.0352
2.2864
 (480)  647.57 K
11
(exact)
http://numericalmethods.eng.usf.edu
Comparison with exact results
Temperature, θ(K)
1500
1000
Exact solution
500
h=120
h=240
0
0
-500
100
200
Tim e, t (sec)
300
400
500
h=480
-1000
-1500
Figure 4. Comparison of Euler’s method with exact solution for different step sizes
12
http://numericalmethods.eng.usf.edu
Effects of step size on Euler’s
Method
Temperature,θ(K)
800
400
0
0
100
200
300
400
500
-400
Step size, h (s)
-800
-1200
Figure 5. Effect of step size in Euler’s method.
13
http://numericalmethods.eng.usf.edu
Errors in Euler’s Method
It can be seen that Euler’s method has large errors. This can be illustrated using
Taylor series.
dy
1 d2y
1 d3y
2
3
xi 1  xi  




y i 1  y i 
x

x

x

x
 ...
i

1
i
i

1
i
2
3
dx xi , yi
2! dx x , y
3! dx x , y
i
yi 1  yi  f ( xi , yi )xi 1  xi  
i
i
i
1
1
2
3
f ' ( xi , yi )xi 1  xi   f ' ' ( xi , yi )xi 1  xi   ...
2!
3!
As you can see the first two terms of the Taylor series
yi 1  yi  f xi , yi h are the Euler’s method.
The true error in the approximation is given by
Et 
14
f xi , yi  2 f xi , yi  3
h 
h  ...
2!
3!
Et  h 2
http://numericalmethods.eng.usf.edu
Additional Resources
For all resources on this topic such as digital audiovisual
lectures, primers, textbook chapters, multiple-choice
tests, worksheets in MATLAB, MATHEMATICA, MathCad
and MAPLE, blogs, related physical problems, please
visit
http://numericalmethods.eng.usf.edu/topics/euler_meth
od.html
THE END
http://numericalmethods.eng.usf.edu
Download