Professional Documents
Culture Documents
Numerical Differentiation
Richardson Extrapolation
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Outline
Scientific Computing: An Introductory Survey
Chapter 8 Numerical Integration and Differentiation
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Scientific Computing
1 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Integration
Scientific Computing
2 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Numerical Quadrature
i=1
Scientific Computing
3 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Quadrature Rules
Scientific Computing
4 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
n
X
wi f (xi )
i=1
a
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Scientific Computing
5 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Scientific Computing
6 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Z
w1 1 + w2 1 + w3 1
1 dx = x|ba = b a
=
a
w1 a + w2 (a + b)/2 + w3 b =
a
w1 a2 + w2 ((a + b)/2)2 + w3 b2
Z
=
Michael T. Heath
Scientific Computing
7 / 61
Michael T. Heath
Scientific Computing
8 / 61
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Example, continued
1
1
1
w1
ba
a
(a + b)/2
b w2 = (b2 a2 )/2
a2 ((a + b)/2)2 b2
w3
(b3 a3 )/3
1
1
1
ba
w1
2
2
x1
x2
xn w2 (b a )/2
..
..
.. .. =
..
.
.
.
.
.
. .
.
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
2(b a)
w2 =
,
3
xn1
xn1
1
2
ba
w3 =
6
xn1
n
(bn an )/n
wn
determines weights w1 , . . . , wn
Michael T. Heath
Scientific Computing
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
9 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Scientific Computing
10 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
1
4
hn+1 kf (n) k
Scientific Computing
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
11 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Scientific Computing
12 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Newton-Cotes Quadrature
Newton-Cotes quadrature rules use equally spaced nodes in
interval [a, b]
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Midpoint rule
M (f ) = (b a)f
|wi |
a+b
2
i=1
Trapezoid rule
T (f ) =
Simpsons rule
Michael T. Heath
Scientific Computing
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
S(f ) =
13 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
exp(x2 ) dx
ba
6
f (a) + 4f
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
ba
(f (a) + f (b))
2
a+b
2
+ f (b)
Scientific Computing
14 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Error Estimation
0.746824
M (f ) = (1 0) exp(1/4) 0.778801
T (f ) = (1/2)[exp(0) + exp(1)] 0.683940
f 00 (m)
(x m)2
2
f 000 (m)
f (4) (m)
(x m)3 +
(x m)4 +
+
6
24
I(f ) = f (m)(b a) +
Scientific Computing
15 / 61
Michael T. Heath
Scientific Computing
16 / 61
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
T (f ) M (f ) = 3E(f ) + 5F (f ) +
so
T (f ) M (f )
3
Weighted combination of midpoint and trapezoid rules
eliminates E(f ) term from error expansion
2
1
2
I(f ) =
M (f ) + T (f ) F (f ) +
3
3
3
2
= S(f ) F (f ) +
3
which gives alternate derivation for Simpsons rule and
estimate for its error
E(f )
I(f ) = T (f ) 2E(f ) 4F (f )
Thus, provided length of interval is sufficiently small and
f (4) is well behaved, midpoint rule is about twice as
accurate as trapezoid rule
Halving length of interval decreases error in either rule by
factor of about 1/8
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Scientific Computing
17 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Scientific Computing
18 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Also,
S(f ) = (2/3)M (f )+(1/3)T (f ) = (2/3)(1/4)+(1/3)(1/2) = 1/3
which is exact for this integral, as expected
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Scientific Computing
19 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Scientific Computing
20 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Scientific Computing
21 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Clenshaw-Curtis Quadrature
22 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Scientific Computing
Gaussian Quadrature
Michael T. Heath
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
23 / 61
Michael T. Heath
Scientific Computing
24 / 61
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Example, continued
G2 (f ) = w1 f (x1 ) + w2 f (x2 )
Z
where nodes xi and weights wi are chosen to maximize
degree of resulting rule
w1 + w2 =
w1 x 1 + w2 x 2 =
1
Z 1
w1 x21 + w2 x22 =
Scientific Computing
w1 x31 + w2 x32 =
25 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
1
Z 1
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Example, continued
1
1
1 dx = x|11 = 2
x dx = (x2 /2)|11 = 0
x2 dx = (x3 /3)|11 = 2/3
x3 dx = (x4 /4)|11 = 0
Scientific Computing
26 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Change of Interval
Gaussian rules are somewhat more difficult to apply than
Newton-Cotes rules because weights and nodes are
usually derived for some specific interval, such as [1, 1]
x1 = 1/ 3, x2 = 1/ 3, w1 = 1, w2 = 1
G2 (f ) = f (1/ 3) + f (1/ 3)
Scientific Computing
i=1
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Scientific Computing
28 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Gaussian Quadrature
Gaussian quadrature rules have maximal degree and
optimal accuracy for number of nodes used
(b a)x + a b
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Scientific Computing
29 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Scientific Computing
30 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
1.5
(200|Gn K2n+1 |)
Michael T. Heath
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Scientific Computing
31 / 61
Michael T. Heath
Scientific Computing
32 / 61
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Composite Quadrature
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
k
X
(xj xj1 ) f
j=1
xj1 + xj
2
=h
k
X
xj1 + xj
f
2
j=1
Scientific Computing
j=1
= h
33 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Michael T. Heath
Scientific Computing
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Scientific Computing
Scientific Computing
36 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
34 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Scientific Computing
Adaptive Quadrature
Michael T. Heath
1
2 f (a)
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
k
X
(xj xj1 )
(f (xj1 ) + f (xj ))
2
37 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Scientific Computing
38 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Michael T. Heath
Scientific Computing
39 / 61
Michael T. Heath
Scientific Computing
40 / 61
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Improper Integrals
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Double Integrals
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Scientific Computing
41 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Multiple Integrals
Scientific Computing
42 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Scientific Computing
43 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Integral Equations
Scientific Computing
44 / 61
Quadrature Rules
Adaptive Quadrature
Other Integration Problems
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
i = 1, . . . n
Regularization
j=1
Constrained optimization
Scientific Computing
45 / 61
Numerical Differentiation
Finite Difference Approximations
Automatic Differentiation
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Numerical Differentiation
Scientific Computing
46 / 61
Numerical Differentiation
Finite Difference Approximations
Automatic Differentiation
Michael T. Heath
Scientific Computing
47 / 61
Michael T. Heath
Scientific Computing
48 / 61
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Numerical Differentiation
Finite Difference Approximations
Automatic Differentiation
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Numerical Differentiation
Finite Difference Approximations
Automatic Differentiation
f (x) f (x h) f 00 (x)
+
h +
h
2
f (x) f (x h)
h
which is also first-order accurate
f (x + h) = f (x) + f 0 (x)h +
f 00 (x)
f 0 (x) =
f 000 (x)
h2 +
h3 +
2
6
f 00 (x) 2 f 000 (x) 3
h
h +
f (x h) = f (x) f 0 (x)h +
2
6
0
Solving for f (x) in first series, obtain forward difference
approximation
h +
2h
6
f (x + h) f (x h)
2h
which is second-order accurate
f (x + h) f (x) f 00 (x)
f (x + h) f (x)
h +
h
2
h
which is first-order accurate since dominant term in
remainder of series is O(h)
f 0 (x) =
f 0 (x) =
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Scientific Computing
49 / 61
Numerical Differentiation
Finite Difference Approximations
Automatic Differentiation
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Scientific Computing
50 / 61
Numerical Differentiation
Finite Difference Approximations
Automatic Differentiation
Automatic Differentiation
h +
h2
12
f (x + h) 2f (x) + f (x h)
h2
which is also second-order accurate
Scientific Computing
51 / 61
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Richardson Extrapolation
Romberg Integration
Richardson Extrapolation
Scientific Computing
52 / 61
Richardson Extrapolation
Romberg Integration
Suppose that
F (h) = a0 + a1 hp + O(hr )
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Scientific Computing
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Richardson Extrapolation
Romberg Integration
Scientific Computing
54 / 61
Richardson Extrapolation
Romberg Integration
Then we have
F (h) = a0 + a1 hp + O(hr )
F (h/q) = a0 + a1 (h/q)p + O(hr ) = a0 + a1 q p hp + O(hr )
This system of two linear equations in two unknowns a0
and a1 is easily solved to obtain
a0 = F (h) +
F (h) F (h/q)
+ O(hr )
q p 1
Scientific Computing
55 / 61
Michael T. Heath
Scientific Computing
56 / 61
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Richardson Extrapolation
Romberg Integration
Richardson Extrapolation
Romberg Integration
Example, continued
F (0) = a0 = F (h)+
F (h) F (h/2)
= 2F (h/2)F (h) = 0.548061
(1/2) 1
F (h) = a0 + a1 h + O(h2 )
so p = 1 and r = 2 in this instance
Using step sizes of h = 0.5 and h/2 = 0.25 (i.e., q = 2), we
obtain
sin(1.5) sin(1)
F (h) =
= 0.312048
0.5
sin(1.25) sin(1)
F (h/2) =
= 0.430055
0.25
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Scientific Computing
Michael T. Heath
Numerical Integration
Numerical Differentiation
Richardson Extrapolation
Richardson Extrapolation
Romberg Integration
Scientific Computing
58 / 61
Richardson Extrapolation
Romberg Integration
Example, continued
Extrapolated value is then given by
F (h) F (h/2)
4F (h/2) F (h)
=
= 1.002280
22 1
3
which is substantially more accurate than values previously
computed (exact answer is 1)
F (0) = a0 = F (h)+
/2
sin(x) dx
0
Scientific Computing
59 / 61
Richardson Extrapolation
Romberg Integration
Romberg Integration
Michael T. Heath
Scientific Computing
61 / 61
Michael T. Heath
Scientific Computing
60 / 61