Chapter 7
数值积分与数值微分
内容提纲( Outline)
? 求积公式的代数精度
? 插值型求积公式
? 复化求积法
为什么要数值积分?
在微积分里,按 Newton-Leibniz公式求定积分
要求被积函数 f(x)
? 有解析表达式;
? f(x)的原函数 F(x)为初等函数.
( ) ( ) ( ) ( )baI f f x dx F b F a? ? ??
Why do we do
numerical
integral?
问题
? f(x)没有解析表达式,只有数表形式
e.g,
?
f(x)有表达式,但原函数不是初等函数
e.g.,
它们的原函数都不是初等函数,
21
0
xe dx??
1
0 ( a r c t a n )x x d x?
x 1 2 3 4 5
f(x) 4 4.5 6 8 8.5
求定积分就得通过近似计算-数值积分求得积分
近似值
基本思想是对被积函数进行近似,给出数值积分,
同时考虑近似精度。
下面首先给出代数精确度的概念
7.1 代数精确度
本章讨论的是形如
的定积分的数值计算,其中 为权函数,
要满足 5.4节中所提的条件,
( ) ( ) ( )baI f x f x d x?? ?
()x?
一般把积分区间 n个点 {xk}上的函数值 f(xk)加权 Ak
的和
作为积分 I(f)的近似,
即
或记
(2)
1
( ) ( ) (,)
n
kk
k
I f A f x R f?
?
???
1
()
n
kk
k
A f x
?
?
1
( ) ( )
n
kk
k
A f x I f
?
??
上式中 xk,Ak分别称为求积节点, 求积系数,求积
系数与被积函数 f(x)无关,而与求积节点, 求积
区间, 权函数有关, 称公式 (2)为 n点求积公式,
有时也称
为一个 n点求积公式, 为求积公式的误
差, 用此公式 )求积分近似值的计算称为数值积
分或数值微分,
1
( ) ( ) (,)
n
kk
k
I f A f x R f?
?
???
1
( ) ( )
n
n k k
k
I f A f x
?
? ?
(,)Rf?
构造或确定一个求积公式,要讨论解决的问题有
(i) 确定求积系数 Ak和求积节点 n;
(ii) 求积公式的误差估计和收敛性.
用什么标准来判定两个节点数相同的求积
公式的“好”与“差”呢?通常用“代数精确
度”的高低作为求积公式“好”与“差”的一
个标准.在后面的讨论中我们将看到,节点相
同的求积公式,代数精确度越高,求出的积分
近似值精确度一般越好.下面给出代数精确度
的定义.
定义1 若对任意的,
求积公式 (2)的误差都满足,则称
该求积公式具有 n次代数精确度.
验证一个求积公式所具有的代数精确度用
定义1是极不方便的,为此给出另一个定义.
( ) [,]nnp x P a b?
1(,) 0nRx? ? ?
定义 2 若对函数,
求积公式 (2)精确成立,即
而,
则称其具有 n次代数精确度.
因为函数组 是 的
一组基函数,所以两个定义是等价的,但在具体
应用时,定义 2比定义 1要方便的多.
23( ) 1,,,.,,,nf x x x x?
(,) 0Rf? ?
1(,) 0nRx? ? ?
23( 1,,,.,,,)nx x x [,]nP a b
例1 验证求积公式
具有 3次代数精确度.
解,当
而
有
3( ) ( ) (,) { ( ) 4 ( ) ( ) } (,)62
b a a bI f I f R f f a f f b R f????? ? ? ? ? ?
( ) 1 ( ) 1baf x I f d x b a? ? ? ??时,,
3 ( ) ( 1 4 1 ) ( )6
baI f b a?? ? ? ? ?
(,1 ) 0R ? ?
( 1)当
( 2)当
( 3)当
3( ) ( ) (,) { ( ) 4 ( ) ( ) } (,)62
b a a bI f I f R f f a f f b R f????? ? ? ? ? ?
22
( ) ( ) 2baf x x I f ???时,
22
3 ( ) ( 2 2 )62
b a b aI f a a b b??? ? ? ? ?
(,) 0Rx? ?
33
2( ) ( )
3
baf x x I f ???时,
2(,) 0Rx? ?
44
3( ) ( )
4
baf x x I f ???时,
3 4 4
33
3
()( ) ( )
6 2 4
b a a b b aI f a b? ? ?? ? ? ?
3(,) 0Rx? ?
33
2 2 2
3 ( ) ( ( ) )63
b a b aI f a a b b??? ? ? ? ?
( 1)当
故求积公式具有三次代数精确度.
3( ) ( ) (,) { ( ) 4 ( ) ( ) } (,)62
b a a bI f I f R f f a f f b R f????? ? ? ? ? ?
55
4( ) ( )
5
baf x x I f ???时,
4
44
3
()( ) ( ) ( )
64
b a a bI f a b I f??? ? ? ?
4(,) 0Rx? ?
7.2 插值型求积公式
这一节所讨论的求积公式,都是用在区间 [a,b]上对
被积函数 f(x)作插值所得插值多项式 Pn(x)代替被积
函数 f(x)导出的公式.这一类求积公式的求积节点
xk,就是对 f(x)作插值时的插值节点,所以这类求
积公式称为插值型求积公式.
为简便起见,这节讨论节点分布为等距并且
权函数
时的插值型求积公式的构造等问题.
()x?
7.2.1 Newton-Cotes求积公式
一、公式的推导
设将积分区间 [a,b]n等分,求积节点为,
那么,
令 x=a+th,则 t=(x-a)/h,且由
可知,
由 Lagrange插值基函数有
而,所以
[,]x a b?
0{}nkkx ?
0,,,njx a x b x a jh? ? ? ?0,1,..,,;
baj n h
n
???
[0,]tn?
0,0,
( ) ( )
nn
i
kk
i i k i i kki
xx til x l a t h
x x k i? ? ? ?
? ?? ? ? ?
????
0,
( 1 )
! ( ) !
nk n
i i k
tik n k
?
??
???
? ?
bad x h d t d t
n
???
00 0,
( 1 )( ) ( ) ( )
! ( ) !
nk nb n n
kka
i i k
bal x d x l a th h d t t i d t
n k n k
?
??
??? ? ? ?
? ?? ? ?
将 n次 Lagrange插值多项式 Ln(x)代替被积函数 f(x)得
记
称为 Cotes求积系数.它与 (3)式中的求积系数 Ak相差一
个常数 b-a
即
()
1
0
( ) ( ) ( 1,) ( ) ( ) ( 1,)
n
n
n k k
k
I f I f R f b a C f x R f?
?
? ? ? ? ??
0
( ) ( 1,)n kk
k
A f x R f
?
???
()
0 0,
( 1 ) ( ),0,1,.,,,,
!, ( ) !
nk nn
n
k
i i k
C t i d t k nk n n k
?
??
?? ? ?
? ??
()( ),0,1,.,,,.nkkA b a C k n? ? ?
把 Ak代入到 (3)式中,得到 Newton-Cotes求积公式.例如
当 n=4,5时,Newton-Cotes公式分别为
n=0,1,2三种情形,在讨论 (3)式中的余项 R(1,f)后再详细讨
论.
6 0 1 7 3 4 5( ) ( 1 9 7 5 5 0 5 0 7 5 1 9 )288
baI f f f f f f f?? ? ? ? ? ?
5 0 1 7 3 4( ) ( 7 3 2 1 2 3 2 7 )90
baI f f f f f f?? ? ? ? ?
二、误差估计
求积公式 (3)计算出的积分 I(f)的近似值 In+1(f)的误差多大?
若被积函数,记,
对 n次 Lagrange插值余项求积,可得 n+1个节点的 Newton-
Cotes求积公式的误差估计式为
(5)
1( ) [,]nf x C a b??
21
0 0
| ( 1,) | ( )( 1 ) !
nn
nn
i
MR f h t i d t
n
??
?
??? ??
( 1 )1 m a x | ( ) |nn
a x bM f x
??
???
验证求积公式 (3)的代数精确度,不用误差估计的 (4)式,
而用直接对插值余项求积的形式,即
(5)
由 (5)式,显而易见,当 时,因
可知,R(1,f)=0,所以我们所 n+1点的求积公式 (3)至少具
有 n次的代数精确度.进一步可以证明,当 n为偶数时,
求积公式 (3)的代数精确度可以达到 n+1次.
( 1 ) ( ) 0nf ?? ?
( 1 )1 m a x | ( ) |nn
a x bM f x
??
???
( ) 1,,.,,,nf x x x?
三、几种常见的 Newton-Cotes求积公式
对 n=0,1,2,按公式 (3)可以得出下面三种常见的 Newton-Cotes
求积公式,
1,n=0时的矩形求积公式
分别以积分区间 [a,b]的左、右端点和区间中点,即 x=a,b,
(a+b)/2为求积节点得到:
左 矩形求积公式:
右 矩形求积公式:
中 矩形求积公式:
三个求积公式的误差估计,可将函数 f(x) 分别在
处展开到含 f(x)的一阶导数的 Taylor公式在区间 [a,b]上积分
推得.
1( ) ( ) ( )I f f a b a R? ? ?
3( ) ( ) ( )2
abI f f b a R?? ? ?
3( ) ( ) ( )2
abI f f b a R?? ? ?
,,2abx a b ??
2,n=1时的梯形求积公式
按 Cotes系数公式计算得
故求积系数 A0,A1为,
梯形求积公式为
记
(6)式的几何意义如图 7-2所示(见 p327)
容易验证公式 (6)的代数精确度的次数为 1.
考虑梯形求积公式 (6)的误差估计 R(1,f).假定
时,用推广的积分中植定理,将过 (a,f(a)),(b,f(b))点的线性
插值的余项 在 [a,b]上积分,可得
其中
' ()
( ) ( )2!f x a x b? ??
( 1 ) ( 1 )
01
1
2CC??
( ) ( ( ) ( ) ) ( 1,)2baI f f a f b R f?? ? ?
01
1 ()
2A A b a? ? ?
( ) ( ( ) ( ) )2baT f f a f b???
2( ) [,]f x C a b?
3
''(1,) ( )
12
hR f f ??
,h b a a b?? ? ? ?
也称为梯
形求公式
3,n=2时的 Simpson求积公式
按 Cotes系数公式可以计算出
为此,,
所以
(8)
公式 (8) 称为 Simpson求积公式.由 7.1节例 1可知
Simpson求积公式 (8)具有3次的代数精确度.
Simpson求积公式 (8)的误差估计 R(1,f)不能直接有插值
余项 利用推广的积分中值定理在
[a,b]上积分推出.原因是 在 [a,b]上要变号.
( 2 ) ( 2 ) ( 2 )
0 2 1
12,
63C C C? ? ?
02
1 ()
6A A b a? ? ?1
4 ()
6A b a??
3( ) ( ) ( 1,)I f I f R f??
{ ( ) 4 ( ) ( ) } ( 1,)62b a a bf a f f b R f??? ? ? ?
''' ()
( ) ( ) ( )32f a bx a x x b? ?? ? ?
2
abx ??
数值积分与数值微分
内容提纲( Outline)
? 求积公式的代数精度
? 插值型求积公式
? 复化求积法
为什么要数值积分?
在微积分里,按 Newton-Leibniz公式求定积分
要求被积函数 f(x)
? 有解析表达式;
? f(x)的原函数 F(x)为初等函数.
( ) ( ) ( ) ( )baI f f x dx F b F a? ? ??
Why do we do
numerical
integral?
问题
? f(x)没有解析表达式,只有数表形式
e.g,
?
f(x)有表达式,但原函数不是初等函数
e.g.,
它们的原函数都不是初等函数,
21
0
xe dx??
1
0 ( a r c t a n )x x d x?
x 1 2 3 4 5
f(x) 4 4.5 6 8 8.5
求定积分就得通过近似计算-数值积分求得积分
近似值
基本思想是对被积函数进行近似,给出数值积分,
同时考虑近似精度。
下面首先给出代数精确度的概念
7.1 代数精确度
本章讨论的是形如
的定积分的数值计算,其中 为权函数,
要满足 5.4节中所提的条件,
( ) ( ) ( )baI f x f x d x?? ?
()x?
一般把积分区间 n个点 {xk}上的函数值 f(xk)加权 Ak
的和
作为积分 I(f)的近似,
即
或记
(2)
1
( ) ( ) (,)
n
kk
k
I f A f x R f?
?
???
1
()
n
kk
k
A f x
?
?
1
( ) ( )
n
kk
k
A f x I f
?
??
上式中 xk,Ak分别称为求积节点, 求积系数,求积
系数与被积函数 f(x)无关,而与求积节点, 求积
区间, 权函数有关, 称公式 (2)为 n点求积公式,
有时也称
为一个 n点求积公式, 为求积公式的误
差, 用此公式 )求积分近似值的计算称为数值积
分或数值微分,
1
( ) ( ) (,)
n
kk
k
I f A f x R f?
?
???
1
( ) ( )
n
n k k
k
I f A f x
?
? ?
(,)Rf?
构造或确定一个求积公式,要讨论解决的问题有
(i) 确定求积系数 Ak和求积节点 n;
(ii) 求积公式的误差估计和收敛性.
用什么标准来判定两个节点数相同的求积
公式的“好”与“差”呢?通常用“代数精确
度”的高低作为求积公式“好”与“差”的一
个标准.在后面的讨论中我们将看到,节点相
同的求积公式,代数精确度越高,求出的积分
近似值精确度一般越好.下面给出代数精确度
的定义.
定义1 若对任意的,
求积公式 (2)的误差都满足,则称
该求积公式具有 n次代数精确度.
验证一个求积公式所具有的代数精确度用
定义1是极不方便的,为此给出另一个定义.
( ) [,]nnp x P a b?
1(,) 0nRx? ? ?
定义 2 若对函数,
求积公式 (2)精确成立,即
而,
则称其具有 n次代数精确度.
因为函数组 是 的
一组基函数,所以两个定义是等价的,但在具体
应用时,定义 2比定义 1要方便的多.
23( ) 1,,,.,,,nf x x x x?
(,) 0Rf? ?
1(,) 0nRx? ? ?
23( 1,,,.,,,)nx x x [,]nP a b
例1 验证求积公式
具有 3次代数精确度.
解,当
而
有
3( ) ( ) (,) { ( ) 4 ( ) ( ) } (,)62
b a a bI f I f R f f a f f b R f????? ? ? ? ? ?
( ) 1 ( ) 1baf x I f d x b a? ? ? ??时,,
3 ( ) ( 1 4 1 ) ( )6
baI f b a?? ? ? ? ?
(,1 ) 0R ? ?
( 1)当
( 2)当
( 3)当
3( ) ( ) (,) { ( ) 4 ( ) ( ) } (,)62
b a a bI f I f R f f a f f b R f????? ? ? ? ? ?
22
( ) ( ) 2baf x x I f ???时,
22
3 ( ) ( 2 2 )62
b a b aI f a a b b??? ? ? ? ?
(,) 0Rx? ?
33
2( ) ( )
3
baf x x I f ???时,
2(,) 0Rx? ?
44
3( ) ( )
4
baf x x I f ???时,
3 4 4
33
3
()( ) ( )
6 2 4
b a a b b aI f a b? ? ?? ? ? ?
3(,) 0Rx? ?
33
2 2 2
3 ( ) ( ( ) )63
b a b aI f a a b b??? ? ? ? ?
( 1)当
故求积公式具有三次代数精确度.
3( ) ( ) (,) { ( ) 4 ( ) ( ) } (,)62
b a a bI f I f R f f a f f b R f????? ? ? ? ? ?
55
4( ) ( )
5
baf x x I f ???时,
4
44
3
()( ) ( ) ( )
64
b a a bI f a b I f??? ? ? ?
4(,) 0Rx? ?
7.2 插值型求积公式
这一节所讨论的求积公式,都是用在区间 [a,b]上对
被积函数 f(x)作插值所得插值多项式 Pn(x)代替被积
函数 f(x)导出的公式.这一类求积公式的求积节点
xk,就是对 f(x)作插值时的插值节点,所以这类求
积公式称为插值型求积公式.
为简便起见,这节讨论节点分布为等距并且
权函数
时的插值型求积公式的构造等问题.
()x?
7.2.1 Newton-Cotes求积公式
一、公式的推导
设将积分区间 [a,b]n等分,求积节点为,
那么,
令 x=a+th,则 t=(x-a)/h,且由
可知,
由 Lagrange插值基函数有
而,所以
[,]x a b?
0{}nkkx ?
0,,,njx a x b x a jh? ? ? ?0,1,..,,;
baj n h
n
???
[0,]tn?
0,0,
( ) ( )
nn
i
kk
i i k i i kki
xx til x l a t h
x x k i? ? ? ?
? ?? ? ? ?
????
0,
( 1 )
! ( ) !
nk n
i i k
tik n k
?
??
???
? ?
bad x h d t d t
n
???
00 0,
( 1 )( ) ( ) ( )
! ( ) !
nk nb n n
kka
i i k
bal x d x l a th h d t t i d t
n k n k
?
??
??? ? ? ?
? ?? ? ?
将 n次 Lagrange插值多项式 Ln(x)代替被积函数 f(x)得
记
称为 Cotes求积系数.它与 (3)式中的求积系数 Ak相差一
个常数 b-a
即
()
1
0
( ) ( ) ( 1,) ( ) ( ) ( 1,)
n
n
n k k
k
I f I f R f b a C f x R f?
?
? ? ? ? ??
0
( ) ( 1,)n kk
k
A f x R f
?
???
()
0 0,
( 1 ) ( ),0,1,.,,,,
!, ( ) !
nk nn
n
k
i i k
C t i d t k nk n n k
?
??
?? ? ?
? ??
()( ),0,1,.,,,.nkkA b a C k n? ? ?
把 Ak代入到 (3)式中,得到 Newton-Cotes求积公式.例如
当 n=4,5时,Newton-Cotes公式分别为
n=0,1,2三种情形,在讨论 (3)式中的余项 R(1,f)后再详细讨
论.
6 0 1 7 3 4 5( ) ( 1 9 7 5 5 0 5 0 7 5 1 9 )288
baI f f f f f f f?? ? ? ? ? ?
5 0 1 7 3 4( ) ( 7 3 2 1 2 3 2 7 )90
baI f f f f f f?? ? ? ? ?
二、误差估计
求积公式 (3)计算出的积分 I(f)的近似值 In+1(f)的误差多大?
若被积函数,记,
对 n次 Lagrange插值余项求积,可得 n+1个节点的 Newton-
Cotes求积公式的误差估计式为
(5)
1( ) [,]nf x C a b??
21
0 0
| ( 1,) | ( )( 1 ) !
nn
nn
i
MR f h t i d t
n
??
?
??? ??
( 1 )1 m a x | ( ) |nn
a x bM f x
??
???
验证求积公式 (3)的代数精确度,不用误差估计的 (4)式,
而用直接对插值余项求积的形式,即
(5)
由 (5)式,显而易见,当 时,因
可知,R(1,f)=0,所以我们所 n+1点的求积公式 (3)至少具
有 n次的代数精确度.进一步可以证明,当 n为偶数时,
求积公式 (3)的代数精确度可以达到 n+1次.
( 1 ) ( ) 0nf ?? ?
( 1 )1 m a x | ( ) |nn
a x bM f x
??
???
( ) 1,,.,,,nf x x x?
三、几种常见的 Newton-Cotes求积公式
对 n=0,1,2,按公式 (3)可以得出下面三种常见的 Newton-Cotes
求积公式,
1,n=0时的矩形求积公式
分别以积分区间 [a,b]的左、右端点和区间中点,即 x=a,b,
(a+b)/2为求积节点得到:
左 矩形求积公式:
右 矩形求积公式:
中 矩形求积公式:
三个求积公式的误差估计,可将函数 f(x) 分别在
处展开到含 f(x)的一阶导数的 Taylor公式在区间 [a,b]上积分
推得.
1( ) ( ) ( )I f f a b a R? ? ?
3( ) ( ) ( )2
abI f f b a R?? ? ?
3( ) ( ) ( )2
abI f f b a R?? ? ?
,,2abx a b ??
2,n=1时的梯形求积公式
按 Cotes系数公式计算得
故求积系数 A0,A1为,
梯形求积公式为
记
(6)式的几何意义如图 7-2所示(见 p327)
容易验证公式 (6)的代数精确度的次数为 1.
考虑梯形求积公式 (6)的误差估计 R(1,f).假定
时,用推广的积分中植定理,将过 (a,f(a)),(b,f(b))点的线性
插值的余项 在 [a,b]上积分,可得
其中
' ()
( ) ( )2!f x a x b? ??
( 1 ) ( 1 )
01
1
2CC??
( ) ( ( ) ( ) ) ( 1,)2baI f f a f b R f?? ? ?
01
1 ()
2A A b a? ? ?
( ) ( ( ) ( ) )2baT f f a f b???
2( ) [,]f x C a b?
3
''(1,) ( )
12
hR f f ??
,h b a a b?? ? ? ?
也称为梯
形求公式
3,n=2时的 Simpson求积公式
按 Cotes系数公式可以计算出
为此,,
所以
(8)
公式 (8) 称为 Simpson求积公式.由 7.1节例 1可知
Simpson求积公式 (8)具有3次的代数精确度.
Simpson求积公式 (8)的误差估计 R(1,f)不能直接有插值
余项 利用推广的积分中值定理在
[a,b]上积分推出.原因是 在 [a,b]上要变号.
( 2 ) ( 2 ) ( 2 )
0 2 1
12,
63C C C? ? ?
02
1 ()
6A A b a? ? ?1
4 ()
6A b a??
3( ) ( ) ( 1,)I f I f R f??
{ ( ) 4 ( ) ( ) } ( 1,)62b a a bf a f f b R f??? ? ? ?
''' ()
( ) ( ) ( )32f a bx a x x b? ?? ? ?
2
abx ??