Handout 6 06/08/02 1 Lecture 5: Numerical integration Discretizing the integral In this lecture we will derive methods of computing integrals of functions that cannot be solved analytically. A typical function that cannot be solved analytically is the error function, 2 Z y −x2 Erf(y) = √ e dx . π 0 (1) To leave the analysis in its most general form, we will consider an evaluation of the integral Z b f (x) dx . (2) a This integral is evaluated numerically by splitting up the domain [a, b] into N equally spaced intervals as shown in Figure 1. Because we assume that the intervals are constant, then the interval width is given by Figure 1: Discretization of a function f (x) into N = 8 equally spaced subintervals over [a, b]. h = ∆x = xi+1 − xi . (3) The idea behind the numerical integration formulas is to approximate the integral in each subinterval and add up the N approximate integrals to obtain the integral over [a, b]. Handout 6 06/08/02 2 Trapezoidal rule The Trapezoidal rule approximates the function within each subinterval using the first term in the Taylor series expansion about xi , such that, in the range [xi , xi+1 ], 1 f (x) = fi + (x − xi )fi0 + (x − xi )2 fi00 + O (x − xi )3 . 2 (4) Using this approximation, we can evaluate the integral over [xi , xi+1 ] with Z xi+1 f (x) dx = xi Z xi+1 xi 1 fi + (x − xi )fi0 + (x − xi )2 fi00 dx , 2 (5) where we have omitted the truncation error term since the last term will end up being the error term in the analysis. Making a change of variables such that s= x − xi x − xi = , xi+1 − xi h (6) we have xi+1 1 1 fi + hsfi0 + h2 s2 fi00 ds , 2 xi 0 1 2 2 0 1 3 3 00 1 = hsfi + h s fi + h s fi , 2 6 0 1 2 0 1 3 00 = hfi + h fi + h fi . 2 6 Substituting in an approximation for the first derivative Z f (x) dx = h fi0 = Z fi+1 − fi h 00 − fi , h 2 (7) we have ! fi+1 − fi h 00 1 1 − fi + h3 fi00 , f (x) dx = hfi + h2 2 h 2 6 xi 1 1 h (fi + fi+1 ) − h3 fi00 . (8) = 2 12 Which shows that the Trapezoidal rule approximates the integral of the function over the subinterval [xi , xi+1 ] as the area of the trapezoid created by the function values at fi and fi+1 , as shown in Figure 2. The integral over [a, b] is evaluated by taking the sum of the approximate integrals evaluated in each subinterval as Z Z xi+1 b f (x) dx = a = N −1 Z xi+1 X i=0 xi N −1 X i=0 = f (x) dx , 1 1 h (fi + fi+1 ) − h3 fi00 , 2 12 −1 1 h3 NX h (f0 + 2f1 + 2f2 + . . . + 2fN −2 + 2fN −1 + fN ) − f 00 . 2 12 i=0 i Handout 6 06/08/02 3 Figure 2: Depiction of how the trapezoidal rule approximates the integral on the subinterval [xi , xi+1 ]. The error term is given by h3 00 f0 + f100 + f200 + . . . + fN00 −1 , 12 ! N h3 f000 + f100 + f200 + . . . + fN00 −1 = − . 12 N Error = − If the mean value of fi00 is given by f000 + f100 + f200 + . . . + fN00 −1 N ! , (9) then we know that it must lie within the bounds of f 00 (x), and hence it can be represented as f 00 (ξ) for some ξ such that 00 f (ξ) = f000 + f100 + f200 + . . . + fN00 −1 N ! . (10) Therefore, since N h = (b − a), the error becomes Error = − (b − a)h2 00 f (ξ) = O h2 , 12 (11) which shows that the trapezoidal rule is second order accurate. Simpson’s rules Simpson’s 1/3 rule Simpson’s 1/3 rule approximates the function within the interval [xi , xi+2 ] as a quadratic, as shown in Figure 3. This is done by writing the Taylor series expansion of f (x) about Handout 6 06/08/02 4 Figure 3: Depiction of how the Simpson’s 1/3 rule approximates the function f (x) with a quadratic through xi , xi+1 , and xi+2 . x = xi+1 to obtain 1 1 00 000 0 f (x) = fi+1 + (x − xi+1 )fi+1 + (x − xi+1 )2 fi+1 + (x − xi+1 )3 fi+1 2 6 1 4 (iv) 5 + (x − xi+1 ) fi+1 + O (x − xi+1 ) . 24 The integral in the subinterval [xi , xi+2 ] is then given by xi+2 Z f (x) dx = xi Z xi+2 xi 1 1 0 00 000 + (x − xi+1 )3 fi+1 fi+1 + (x − xi+1 )fi+1 + (x − xi+1 )2 fi+1 2 6 1 (iv) (x − xi+1 )4 fi+1 dx , + 24 where the truncation error has been left off since the last term will end up being the error. Making a change of variables such that s= 2(x − xi+1 ) x − xi+1 = , xi+2 − xi h (12) we have xi+2 Z f (x) dx = h Z +1 −1 xi 1 1 1 (iv) 00 000 0 + h3 s3 fi+1 + h4 s4 fi+1 ds , fi+1 + hsfi+1 + h2 s2 fi+1 2 6 24 (13) which becomes Z xi+2 xi 1 1 1 1 5 5 (iv) +1 0 00 000 f (x) dx = hsfi+1 + h2 s2 fi+1 + h3 s3 fi+1 + h4 s4 fi+1 + h s fi+1 , 2 6 24 120 −1 1 3 00 1 5 (iv) = 2hfi+1 + h fi+1 + h fi+1 . 3 60 Handout 6 06/08/02 5 Using the second order accurate approximation to the second derivative 00 fi+1 = fi − 2fi+1 + fi+2 h2 (iv) − fi+1 , h2 12 (14) the integral becomes Z xi+2 xi 1 3 fi − 2fi+1 + fi+2 h2 (iv) 1 (iv) f (x) dx = 2hfi+1 + h − fi+1 + h5 fi+1 . 2 3 h 12 60 1 1 5 (iv) = h (fi + 4fi+1 + fi+2 ) − h fi+1 . 3 90 ! (15) The integral over [a, b] is taken by taking the sum of the approximate integrals, as in Z b f (x) dx = a = N/2 Z x X i+2 f (x) dx , i=0 xi N/2 1 (iv) h (fi + 4fi+1 + fi+2 ) − h5 fi+1 . 3 90 X 1 i=0 The sum is given by 1 h( 3 f0 + fN −6 4f1 + + 4fN −5 f2 f2 + + + ... + fN −4 fN −4 4f3 + + + + f4 f4 + + 4fN −3 + fN −2 fN −2 4f5 + + + f6 4fN −1 + fN ) , which becomes Z b a 1 (f0 + 4f1 + 2f2 + 4f3 + . . . + 4fN −3 + 2fN −2 + 4fN −1 + fN ) 3 X (iv) 1 5 N/2 − h f . 90 i=0 i+1 f (x) dx = The error term is given by Error = − X (iv) 1 5 N/2 h f , 90 i=0 i+1 (16) which, using the same arguments as those for the Trapezoidal rule, becomes Error = − 1 (b − a)h4 f (iv) (ξ) = O h4 , 180 which shows that Simpson’s 1/3 rule is fourth order accurate. (17) Handout 6 06/08/02 6 Simpson’s 3/8 rule Simpson’s 3/8 rule approximates the function within the subinterval [xi , xi+3 ] using a quartic. The Taylor series expansion is performed about xi+3/2 to obtain 1 1 0 00 000 + (x − xi+3/2 )2 fi+3/2 f (x) = fi+3/2 + (x − xi+3/2 )fi+3/2 + (x − xi+3/2 )3 fi+3/2 2 6 1 + (x − xi+3/2 )4 f ( iv)i+3/2 + O (x − xi+3/2 )5 . (18) 24 Integrating this function in a similar manner to that used for the 1/3 rule yields Z b 3 h (f0 + 3f1 + 3f2 + 2f3 + 3f4 + 3f5 + . . . 8 + 2fN −3 + 3fN −2 + 3fN −1 + fN ) 1 − (b − a)h4 f (iv) (ξ) . 80 f (x) dx = a (19) Summary of integration formulas and pseudocodes Trapezoidal rule Z b a 1 h (f0 + 2f1 + 2f2 + . . . + 2fN −2 + 2fN −1 + fN ) + Error 2 1 Error = − (b − a)h2 f 00 (ξ) = O h2 12 f (x) dx = 1. If fi and h are already known discretely on an equispaced grid with N + 1 points, then proceed to step 2. Otherwise, choose interval [a, b] and set h = (b − a)/N . for i = 1 to N + 1 Set xi = a + h(i − 1) Set fi = f (xi ) end 2. Set I = 0 for i = 2 to N Set I = I + hfi end Set I = I + 21 h(f1 + fN +1 ) 3. The integral is given by I. Handout 6 06/08/02 Simpson’s 1/3 rule (N divisible by 2) Z b a 1 (f0 + 4f1 + 2f2 + 4f3 + . . . + 4fN −3 + 2fN −2 + 4fN −1 + fN ) 3 + Error 1 Error = − (b − a)h4 f (iv) (ξ) = O h4 180 f (x) dx = 1. If fi and h are already known discretely on an equispaced grid with N + 1 points, where N is even, then proceed to step 2. Otherwise, choose interval [a, b] and set h = (b − a)/N , with N even. for i = 1 to N + 1 Set xi = a + h(i − 1) Set fi = f (xi ) end 2. Set I = 0 for i = 1 to N2 Set I = I + 43 hf2i end for i = 1 to N2 − 1 Set I = I + 23 hf2i+1 end Set I = I + 13 h(f1 + fN +1 ) 3. The integral is given by I. 7 Handout 6 06/08/02 8 Simpson’s 3/8 rule (N divisible by 3) Z b a 3 h (f0 + 3f1 + 3f2 + 2f3 + 3f4 + 3f5 + . . . 8 + 2fN −3 + 3fN −2 + 3fN −1 + fN ) + Error 1 Error = − (b − a)h4 f (iv) (ξ) . 80 f (x) dx = (20) 1. If fi and h are already known discretely on an equispaced grid with N + 1 points, where N is divisible by 3, then proceed to step 2. Otherwise, choose interval [a, b] and set h = (b − a)/N , with N divisible by 3. for i = 1 to N + 1 Set xi = a + h(i − 1) Set fi = f (xi ) end 2. Set I = 0 for i = 2 to N Set I = I + 89 hfi end for i = 1 to N3 − 1 Set I = I − 83 hf3i+1 end Set I = I + 38 h(f1 + fN +1 ) 3. The integral is given by I.
0
You can add this document to your study collection(s)
Sign in Available only to authorized usersYou can add this document to your saved list
Sign in Available only to authorized users(For complaints, use another form )