文档介绍:第四章数值积分与数值微分
§ Romberg算法
§ Romberg算法
综合前几节的内容,我们知道
梯形公式,Simpson公式,Cotes公式的代数精度分别为
1次,3次和5次
复合梯形、复合Simpson、复合Cotes公式的收敛阶分别为
2阶、4阶和6阶
无论从代数精度还是收敛速度,复合梯形公式都是较差的
有没有办法改善梯形公式呢?
一、复合梯形公式的递推化
b
将定积分I = f (x)dx的积分区间[a,b]分割为n等份
òa
b ­ a
各节点为 xk = a + jh , j = 0,1,L,n h =
n
复合梯形(Trapz)公式为
b ­ a n ­1
Tn = [ f (a) + 2å f (x j ) + f (b)] --------(1)
2n j=1
如果将[a,b]分割为2n等份,而h = (b ­ a)/n不变,则
b ­ a n­1 n­1
T2n = [ f (a) + 2å f (x j ) + 2å f (x 1 ) + f (b)]
4n j +
j=1 j =0 2 --------(2)
1 1
其中x 1 = x j + h = a + ( j + )h
j +
2 2 2
b ­ a n­1 n­1
T2n = [ f (a) + 2 f (x j ) + 2 f (x 1 ) + f (b)]
å å j +
4n j=1 j =0 2
b ­ a n ­1 b ­ a n ­1
= [ f (a) + 2 f (x j ) + f (b)]+ 2 f (x 1 )
å å j+
4n j =1 4n j=0 2
1 b ­ a n ­1 1 b ­ a n ­1 1
= Tn + f (x 1 ) = Tn + f (a + ( j + )h)
å j + å
2 2n j=0 2 2 2n j=0 2
b ­ a n­1 b ­ a
1 --------(3)
= Tn + å f (a + (2 j + 1) )
2 2n j=0 2n
n = 1时,h = b ­ a
则由(1)(2)(3)式,有
b ­ a
T = [ f (a) + f (b)] = T (0)
1 2 0
1 b ­ a 1
T = T + f (a + h) = T0 (1)
2 2 1 2 2
k ­1
若n = 2 记Tn = T0 (k ­ 1) k = 1,2,L
b ­ a b ­ a
h = x j = a + jh = a + j k ­1
2k ­1 2
1 1 b ­ a b ­ a
x 1 = x j + h = a + ( j + ) = a + (2 j + 1)
j + k ­1 k
2 2 2 2 2
因此(1)(2)(3)式可化为如下递推公式
b ­ a
T (0) = [ f (a) + f (b)]
ì 0 2
ï 2 k­1 ­1
(4)------- 1 b ­ a b ­ a
í T0 (k) = T0 (k ­ 1) + k å f (a + (2 j + 1) k )
2 2 j =0 2
îï
k = 1,2,L
上式称为递推的梯形公式
思考
递推梯形公式加上一个控制精度,即
可成为自动选取步长的复合梯形公式
具体的方法请同学们完成
二、外推加速公式
由复合梯形公式的余项公式
1
I ­ T » (T ­ T )
2 n 3 2 n n
4 1
可得 I » T ­ T
3 2 n 3 n
n­1
由(3)式 4 1 b ­ a 1
I » ( Tn + f (x 1 )) ­ Tn
å j+
3 2 2n j=0 2 3
1 4(b ­ a) n­1
» Tn + f (x 1 )
å j +
3 6n j=0 2
1 b ­ a n ­1 4(b ­ a) n ­1
I » [ ( f (a) + f (b) + 2 f (x j )] + f (x 1 )
å å j+
3 2n j =1 6n j=0 2
b ­ a n­1 n­1
= ( f (a)+ f (b)+ 2 f (x j ) + 4 f (x 1 )]
å å j+
6n j=1 j=0 2
= Sn 复合Simpson公式
k ­1 4 1 4 1
设n = 2 I » T2 n ­ T