数值积分
张晓平
2019 年 11 月 24 日
武汉大学数学与统计学院
Table of contents
1. 简介
2. Newton-Cotes 公式
3. 复化求积公式及龙贝格求积公式
4. 高斯型求积公式
1
简介
定理 : Newton-Leibniz 公式 对于定积分 I =∫b
af(x) dx,若 f(x) 在 [a, b] 上连续,且 f(x) 的原 函数为 F(x),则
∫b a
f(x) dx = F(b) − F(a).
2
实际计算中,常遇到如下情况:
1 f(x) 形式复杂,求原函数更为困难,如 f(x) =√
ax2+ bx + c 2 f(x) 的原函数不能用初等函数形式表示,如
f(x) = 1
ln x, e−x2, sin x2, sin x x
3 f(x) 虽有初等函数表示的原函数,但其原函数表示形式相当复杂,
如
f(x) = 1 1 + x4
4 f(x) 本身没有解析表达式,其函数关系由表格或图像给出,如实验 或测量数据
以上情况都不能用牛顿-莱布尼兹公式直接计算定积分,因此有必要 研究定积分的数值计算问题。
Newton-Cotes 公式
数值积分的基本思想
数值积分的基本思想
定理 : 积分中值定理
对于连续函数 f(x),在 [a, b] 内存在点 ξ 有 I =
∫b a
f(x) dx = (b − a)f(ξ), ξ∈ [a, b].
ξ 一般不知道,从而难以准确计算 f(ξ) 的值。通常称 f(ξ) 为 f(x) 在 [a, b] 上的平均高度。若能对 f(ξ) 提供一种近似,就能得到对应的数值 积分公式。
I =
∫b a
f(x) dx≈ (b − a)f(a), ⇒ 左矩形公式 (1)
I =
∫b a
f(x) dx≈ (b − a)f(b), ⇒ 右矩形公式 (2)
I =
∫b a
f(x) dx≈ (b − a)f(a + b
2 ) ⇒ 中矩形公式 (3) 4
x y
a b
A
B y = f(x)
图 1: 左矩形公式
数值积分的基本思想
x y
a b
A
B y = f(x)
图 1: 左矩形公式
5
x y
a b
A
B y = f(x)
图 2: 右矩形公式
数值积分的基本思想
x y
a b
A
B y = f(x)
图 2: 右矩形公式
6
x y
A
B y = f(x)
a b
图 3: 中矩形公式
数值积分的基本思想
x y
A
B y = f(x)
a b
图 3: 中矩形公式
7
更一般地,f(x) 在 [a, b] 内 n + 1 个节点 xi 处的高度为
f(xi)(i = 0, 1,· · · , n),通过加权平均的方法近似地得到平均高度 f(ξ),
这类公式一般形如
I =
∫b a
f(x) dx≈
∑n i=0
Aif(xi), (4)
称xi 为求积节点,Ai为求积系数。
称
Rn(f) =
∫b a
f(x) dx −
∑n i=0
Aif(xi)
为求积公式 (4) 的截断误差。
Newton-Cotes 公式
插值型求积公式
设 [a, b] 上的节点为 a = x0< x1<· · · < xn= b,则 f(x) 的 Lagrange 插值多项式为
Ln(x) =
∑n i=0
li(x)f(xi), li(x) =
∏n j=0,j̸=i
x − xj
xi− xj
. 用 Ln(x) 作为 f(x) 的近似函数有
I =
∫b a
f(x) dx≈
∫b a
Ln(x) dx
=
∫b a
∑n i=0
li(x)f(xi) dx =
∑n i=0
(∫b a
li(x) dx )
f(xi).
记Ai=
∫b a
li(x) dx,则有插值型求积公式 I =
∫b a
f(x) dx≈
∑n i=0
Aif(xi)
插值型求积公式
上述求积公式的截断误差为
Rn(f) =
∫b a
[f(x) − Ln(x)] dx
= 1
(n + 1)!
∫b a
f(n+1)(ξ)ωn+1(x) dx 其中
ωn+1(x) =
∏n i=0
(x − xi), ξ∈ (a, b)
10
Newton-Cotes 公式
Newton-Cotes 公式
在插值型求积公式中,取等距节点,即将 [a, b] 作 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n), h = b − a
n 。
作变量替换 x = a + th,则
Ai =
∫b a
∏n j=0,j̸=i
x − xj
xi− xj
dx = h
∫n 0
∏n j=0,j̸=i
t − j i − jdt
= b − a
n · (−1)n−i i!(n − i)!
∫n 0
∏n j=0,j̸=i
(t − j) dt 记
C(n)i = 1 n
(−1)n−i i!(n − i)!
∫n 0
∏n j=0,j̸=i
(t − j) dt ⇒ Ai= (b − a)C(n)i 于是得到Newton-Cotes 求积公式
I =
∫b a
f(x) dx≈ (b − a)
∑n i=0
C(n)i f(xi)
C(n)i 成为柯特斯系数。
11
Newton-Cotes 公式
在插值型求积公式中,取等距节点,即将 [a, b] 作 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n), h = b − a
n 。作变量替换 x = a + th,则 Ai =
∫b a
∏n j=0,j̸=i
x − xj
xi− xj
dx = h
∫n 0
∏n j=0,j̸=i
t − j i − jdt
= b − a
n · (−1)n−i i!(n − i)!
∫n 0
∏n j=0,j̸=i
(t − j) dt
C(n)i = 1 n
(−1) i!(n − i)! 0
∏
j=0,j̸=i
(t − j) dt ⇒ Ai= (b − a)C(n)i 于是得到Newton-Cotes 求积公式
I =
∫b a
f(x) dx≈ (b − a)
∑n i=0
C(n)i f(xi)
C(n)i 成为柯特斯系数。
Newton-Cotes 公式
在插值型求积公式中,取等距节点,即将 [a, b] 作 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n), h = b − a
n 。作变量替换 x = a + th,则 Ai =
∫b a
∏n j=0,j̸=i
x − xj
xi− xj
dx = h
∫n 0
∏n j=0,j̸=i
t − j i − jdt
= b − a
n · (−1)n−i i!(n − i)!
∫n 0
∏n j=0,j̸=i
(t − j) dt 记
C(n)i = 1 n
(−1)n−i i!(n − i)!
∫n 0
∏n j=0,j̸=i
(t − j) dt ⇒ Ai= (b − a)C(n)i
于是得到Newton-Cotes 求积公式 I =
∫b a
f(x) dx≈ (b − a)
∑n i=0
C(n)i f(xi)
C(n)i 成为柯特斯系数。
11
在插值型求积公式中,取等距节点,即将 [a, b] 作 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n), h = b − a
n 。作变量替换 x = a + th,则 Ai =
∫b a
∏n j=0,j̸=i
x − xj
xi− xj
dx = h
∫n 0
∏n j=0,j̸=i
t − j i − jdt
= b − a
n · (−1)n−i i!(n − i)!
∫n 0
∏n j=0,j̸=i
(t − j) dt 记
C(n)i = 1 n
(−1)n−i i!(n − i)!
∫n 0
∏n j=0,j̸=i
(t − j) dt ⇒ Ai= (b − a)C(n)i 于是得到Newton-Cotes 求积公式
I =
∫b a
f(x) dx≈ (b − a)
∑n i=0
C(n)i f(xi)
Newton-Cotes 公式
柯特斯系数 C(n)i 1 对称性:
C(n)i = C(n)n−i 2 权性:
∑n i=1
C(n)i = 1
12
• n = 1(梯形 (Trapezoidal) 公式)
C(1)0 = C(1)1 =
∫1 0
t dt = 1 2 I =
∫b a
f(x) dx≈ b − a
2 [f(a) + f(b)]
x y
a b
A
B y = f(x)
Newton-Cotes 公式
• n = 1(梯形 (Trapezoidal) 公式)
C(1)0 = C(1)1 =
∫1 0
t dt = 1 2 I =
∫b a
f(x) dx≈ b − a
2 [f(a) + f(b)]
x y
a b
A
B y = f(x)
13
• n = 2(辛普森 (Simpson) 公式)
C(2)0 = C(2)2 = 1 4
∫2 0
t(t − 1) dt = 1
6, C(2)1 = 1 4
∫2 0
t(t − 2) dt = 4 6
I =
∫b a
f(x) dx≈b − a 6
[
f(a) + 4f (a + b
2 )
+ f(b) ]
• n = 3(辛普森 (Simpson)3/8 公式)
I =
∫b a
f(x) dx≈ b − a
8 [f(x0) + 3f(x1) + 3f(x2) + f(x3)]
• n = 4(柯特斯 (Cotes) 公式)
I =
∫b a
f(x) dx≈ b − a
90 [7f(x0) + 32f(x1) + 12f(x2) + 32f(x3) + 7f(x4)]
Newton-Cotes 公式
n C(n)i
1 12 12
2 16 46 16
3 18 38 38 18 4 907 3290 1290 3290 907 5 28819 28875 28850 28850 28875 28819 6 84041 216840 84027 272840 84027 216840 84041
7 17280751 172803577 172801323 172802989 172802989 172801323 172803577 17280751 8 28350989 283505888 28350−928 1049628350 −454028350 1049628350 28350−928 283505888 28350989 由表可看出,当 n 较大时,柯特斯西系数变得复杂,且出现负项,计 算过程的稳定性没有保证。梯形公式、辛普森公式和柯特斯公式是最 基本、最常用的求积公式。
15
定理 : 截断误差
1 若 f′′(x) 在 [a, b] 上连续,则梯形公式的截断误差为 R1(f) = −(b − a)3
12 f′′(ξ), ξ∈ [a, b]
2 若 f(4)(x) 在 [a, b] 上连续,则辛普森公式的截断误差为
R2(f) = −(b − a)5
2880 f(4)(ξ) = −1 90
(b − a 2
)5
f(4)(ξ), ξ∈ [a, b]
3 若 f(6)(x) 在 [a, b] 上连续,则柯特斯公式的截断误差为
R4(f) = −(b − a)7
1013760f(4)(ξ) = − 8 495
(b − a 4
)7
f(6)(ξ), ξ∈ [a, b]
Newton-Cotes 公式
例
试分别用梯形公式、辛普森公式和柯特斯公式计算 I =∫1 1/2
√x dx,
并与精确解进行比较。
解
精确解为 I = 23√ x3
1
0.5
= 0.42096441
1 梯形公式:I≈ 0.5 2 (√
0.5 + 1)≈ 0.4267767 2 辛普森公式:I≈ 0.5
6 (√
0.5 + 4√
0.75 + 1)≈ 0.43093403 3 柯特斯公式:
I≈ 0.5 90(7√
0.5 + 32√
0.625 + 12√
0.75 + 32√
0.875 + 7)≈ 0.43096407
17
例
试分别用梯形公式、辛普森公式和柯特斯公式计算 I =∫1 1/2
√x dx,
并与精确解进行比较。
解
精确解为 I = 23√ x3
1
0.5
= 0.42096441
1 梯形公式:I≈ 0.5 2 (√
0.5 + 1)≈ 0.4267767 2 辛普森公式:I≈0.5
6 (√
0.5 + 4√
0.75 + 1)≈ 0.43093403 3 柯特斯公式:
I≈ 0.5 90(7√
0.5 + 32√
0.625 + 12√
0.75 + 32√
0.875 + 7)≈ 0.43096407
复化求积公式及龙贝格求积公式
复化求积公式
复化求积公式
定义 : 复化求积公式
为提高数值积分的精度,将 [a, b] 等分为 n 个子区间,在每个区 间上用基本求积公式,然后再累加成新的求积公式,这样既可提 高结果的精度,又可使算法简便易于实现。这种求积公式成为复 化求积公式。
18
复化求积公式
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化梯形公式
在每个子区间 [xi−1, xi] 应用梯形公式,有
∫xi
xi−1
f(x) dx≈h
2[f(xi−1) + f(xi)], i = 1, 2,· · · , n 累加得复化梯形公式
I =
∫b a
f(x) dx =
∑n i=1
∫xi
xi−1
f(x) dx
≈
∑n i=1
h
2[f(xi−1) + f(xi)] = h 2
[ f(a) + 2
n−1∑
i=1
f(xi) + f(b) ]
≡ Tn
×h 2
1 1 1 1 1 1
复化求积公式
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化梯形公式
在每个子区间 [xi−1, xi] 应用梯形公式,有
∫xi
xi−1
f(x) dx≈h
2[f(xi−1) + f(xi)], i = 1, 2,· · · , n 累加得复化梯形公式
I =
∫b a
f(x) dx =
∑n i=1
∫xi
xi−1
f(x) dx
≈
∑n i=1
h
2[f(xi−1) + f(xi)] = h 2
[ f(a) + 2
n−1∑
i=1
f(xi) + f(b) ]
≡ Tn
×h 2
1 1
1 1
1 1
1 1
1 1
1 1
19
复化求积公式
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化梯形公式
在每个子区间 [xi−1, xi] 应用梯形公式,有
∫xi
xi−1
f(x) dx≈h
2[f(xi−1) + f(xi)], i = 1, 2,· · · , n 累加得复化梯形公式
I =
∫b a
f(x) dx =
∑n i=1
∫xi
xi−1
f(x) dx
≈
∑n i=1
h
2[f(xi−1) + f(xi)] = h 2
[ f(a) + 2
n−1∑
i=1
f(xi) + f(b) ]
≡ Tn
×h 2
1 1
1 1
1 1 1 1
复化求积公式
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化梯形公式
在每个子区间 [xi−1, xi] 应用梯形公式,有
∫xi
xi−1
f(x) dx≈h
2[f(xi−1) + f(xi)], i = 1, 2,· · · , n 累加得复化梯形公式
I =
∫b a
f(x) dx =
∑n i=1
∫xi
xi−1
f(x) dx
≈
∑n i=1
h
2[f(xi−1) + f(xi)] = h 2
[ f(a) + 2
n−1∑
i=1
f(xi) + f(b) ]
≡ Tn
×h 2
1 1
1 1
1 1
1 1
1 1
1 1
19
复化求积公式
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化梯形公式
在每个子区间 [xi−1, xi] 应用梯形公式,有
∫xi
xi−1
f(x) dx≈h
2[f(xi−1) + f(xi)], i = 1, 2,· · · , n 累加得复化梯形公式
I =
∫b a
f(x) dx =
∑n i=1
∫xi
xi−1
f(x) dx
≈
∑n i=1
h
2[f(xi−1) + f(xi)] = h 2
[ f(a) + 2
n−1∑
i=1
f(xi) + f(b) ]
≡ Tn
×h 2
1 1
1 1
1 1
1 1
1 1
复化求积公式
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化梯形公式
在每个子区间 [xi−1, xi] 应用梯形公式,有
∫xi
xi−1
f(x) dx≈h
2[f(xi−1) + f(xi)], i = 1, 2,· · · , n 累加得复化梯形公式
I =
∫b a
f(x) dx =
∑n i=1
∫xi
xi−1
f(x) dx
≈
∑n i=1
h
2[f(xi−1) + f(xi)] = h 2
[ f(a) + 2
n−1∑
i=1
f(xi) + f(b) ]
≡ Tn
×h 2
1 1
1 1
1 1
1 1
1 1
1 1
19
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化梯形公式
在每个子区间 [xi−1, xi] 应用梯形公式,有
∫xi
xi−1
f(x) dx≈h
2[f(xi−1) + f(xi)], i = 1, 2,· · · , n 累加得复化梯形公式
I =
∫b a
f(x) dx =
∑n i=1
∫xi
xi−1
f(x) dx
≈
∑n i=1
h
2[f(xi−1) + f(xi)] = h 2
[ f(a) + 2
n−1∑
i=1
f(xi) + f(b) ]
≡ Tn
×h 2
1 1 1 1 1 1
复化求积公式
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化梯形公式
在每个子区间 [xi−1, xi] 应用梯形公式,有
∫xi
xi−1
f(x) dx≈h
2[f(xi−1) + f(xi)], i = 1, 2,· · · , n 累加得复化梯形公式
I =
∫b a
f(x) dx =
∑n i=1
∫xi
xi−1
f(x) dx
≈
∑n i=1
h
2[f(xi−1) + f(xi)] = h 2
[ f(a) + 2
n−1∑
i=1
f(xi) + f(b) ]
≡ Tn
×h 2
1 1
1 1
1 1
1 1
1 1
1 1
1 2 2 2 2 2 1
19
复化求积公式
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化 Simpson 公式
在每个子区间 [xi−1, xi] 应用 Simpson 公式,有
∫xi
xi−1
f(x) dx≈ h
6[f(xi−1) + 4f(xi−1
2) + f(xi)], i = 1, 2,· · · , n 累加得复化 Simpson 公式
I =
∫b a
f(x) dx =
∑n i=1
∫xi
xi−1
f(x) dx
≈
∑n i=1
h
2[f(xi−1) + f(xi)] = h 6
[ f(a) + 4
n−1∑
i=0
f(xi+1
2) + 2
n−1∑
i=1
f(xi) + f(b) ]
≡ Sn
×h 6
1 4 1 1 4 1 1 4 1
复化求积公式
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化 Simpson 公式
在每个子区间 [xi−1, xi] 应用 Simpson 公式,有
∫xi
xi−1
f(x) dx≈ h
6[f(xi−1) + 4f(xi−1
2) + f(xi)], i = 1, 2,· · · , n 累加得复化 Simpson 公式
I =
∫b a
f(x) dx =
∑n i=1
∫xi
xi−1
f(x) dx
≈
∑n i=1
h
2[f(xi−1) + f(xi)] = h 6
[ f(a) + 4
n−1∑
i=0
f(xi+1
2) + 2
n−1∑
i=1
f(xi) + f(b) ]
≡ Sn
×h 6 1 4 1
1 4 1 1 4 1
1 4 1 1 4 1
1 4 1
20
复化求积公式
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化 Simpson 公式
在每个子区间 [xi−1, xi] 应用 Simpson 公式,有
∫xi
xi−1
f(x) dx≈ h
6[f(xi−1) + 4f(xi−1
2) + f(xi)], i = 1, 2,· · · , n 累加得复化 Simpson 公式
I =
∫b a
f(x) dx =
∑n i=1
∫xi
xi−1
f(x) dx
≈
∑n i=1
h
2[f(xi−1) + f(xi)] = h 6
[ f(a) + 4
n−1∑
i=0
f(xi+1
2) + 2
n−1∑
i=1
f(xi) + f(b) ]
≡ Sn
×h 6 1 4 1
1 4 1
1 4 1 1 4 1
复化求积公式
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化 Simpson 公式
在每个子区间 [xi−1, xi] 应用 Simpson 公式,有
∫xi
xi−1
f(x) dx≈ h
6[f(xi−1) + 4f(xi−1
2) + f(xi)], i = 1, 2,· · · , n 累加得复化 Simpson 公式
I =
∫b a
f(x) dx =
∑n i=1
∫xi
xi−1
f(x) dx
≈
∑n i=1
h
2[f(xi−1) + f(xi)] = h 6
[ f(a) + 4
n−1∑
i=0
f(xi+1
2) + 2
n−1∑
i=1
f(xi) + f(b) ]
≡ Sn
×h 6 1 4 1
1 4 1 1 4 1
1 4 1 1 4 1
1 4 1
20
复化求积公式
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化 Simpson 公式
在每个子区间 [xi−1, xi] 应用 Simpson 公式,有
∫xi
xi−1
f(x) dx≈ h
6[f(xi−1) + 4f(xi−1
2) + f(xi)], i = 1, 2,· · · , n 累加得复化 Simpson 公式
I =
∫b a
f(x) dx =
∑n i=1
∫xi
xi−1
f(x) dx
≈
∑n i=1
h
2[f(xi−1) + f(xi)] = h 6
[ f(a) + 4
n−1∑
i=0
f(xi+1
2) + 2
n−1∑
i=1
f(xi) + f(b) ]
≡ Sn
×h 6 1 4 1
1 4 1 1 4 1
1 4 1
1 4 1
复化求积公式
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化 Simpson 公式
在每个子区间 [xi−1, xi] 应用 Simpson 公式,有
∫xi
xi−1
f(x) dx≈ h
6[f(xi−1) + 4f(xi−1
2) + f(xi)], i = 1, 2,· · · , n 累加得复化 Simpson 公式
I =
∫b a
f(x) dx =
∑n i=1
∫xi
xi−1
f(x) dx
≈
∑n i=1
h
2[f(xi−1) + f(xi)] = h 6
[ f(a) + 4
n−1∑
i=0
f(xi+1
2) + 2
n−1∑
i=1
f(xi) + f(b) ]
≡ Sn
×h 6 1 4 1
1 4 1 1 4 1
1 4 1 1 4 1
1 4 1
20
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化 Simpson 公式
在每个子区间 [xi−1, xi] 应用 Simpson 公式,有
∫xi
xi−1
f(x) dx≈ h
6[f(xi−1) + 4f(xi−1
2) + f(xi)], i = 1, 2,· · · , n 累加得复化 Simpson 公式
I =
∫b a
f(x) dx =
∑n i=1
∫xi
xi−1
f(x) dx
≈
∑n i=1
h
2[f(xi−1) + f(xi)] = h 6
[ f(a) + 4
n−1∑
i=0
f(xi+1
2) + 2
n−1∑
i=1
f(xi) + f(b) ]
≡ Sn
×h 6
1 4 1 1 4 1 1 4 1
复化求积公式
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化 Simpson 公式
在每个子区间 [xi−1, xi] 应用 Simpson 公式,有
∫xi
xi−1
f(x) dx≈ h
6[f(xi−1) + 4f(xi−1
2) + f(xi)], i = 1, 2,· · · , n 累加得复化 Simpson 公式
I =
∫b a
f(x) dx =
∑n i=1
∫xi
xi−1
f(x) dx
≈
∑n i=1
h
2[f(xi−1) + f(xi)] = h 6
[ f(a) + 4
n−1∑
i=0
f(xi+1
2) + 2
n−1∑
i=1
f(xi) + f(b) ]
≡ Sn
×h 6 1 4 1
1 4 1 1 4 1
1 4 1 1 4 1
1 4 1 1 4 2 4 2 4 2 4 2 4 2 4 1
20
复化求积公式
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化柯特斯公式
在每个子区间 [xi−1, xi] 应用柯特斯公式,有
∫xi
xi−1
f(x) dx≈ h
90[7f(xi−1)+32f(xi−1
4)+12f(xi−1
2)+32f(xi−3
4)+7f(xi)], 累加得复化柯特斯公式
I ≈ h
90 [
7f(a) + 32
n−1∑
i=0
f(xi+1
4) + 12
n−1∑
i=0
f(xi+1
2)
+32
n−1∑
i=0
f(xi+3
4) + 14
n−1∑
i=1
f(xi) + 7f(b) ]
≡ Cn
×h 90
7 32 12 32 7 7 32 12 32 7 7 32 12 32 7
复化求积公式
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化柯特斯公式
在每个子区间 [xi−1, xi] 应用柯特斯公式,有
∫xi
xi−1
f(x) dx≈ h
90[7f(xi−1)+32f(xi−1
4)+12f(xi−1
2)+32f(xi−3
4)+7f(xi)], 累加得复化柯特斯公式
I ≈ h
90 [
7f(a) + 32
n−1∑
i=0
f(xi+1
4) + 12
n−1∑
i=0
f(xi+1
2)
+32
n−1∑
i=0
f(xi+3
4) + 14
n−1∑
i=1
f(xi) + 7f(b) ]
≡ Cn
×h 90 7 32 12 32 7
7 32 12 32 7
7 32 12 32 7
7 32 12 32 7
7 32 12 32 7
7 32 12 32 7
21
复化求积公式
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化柯特斯公式
在每个子区间 [xi−1, xi] 应用柯特斯公式,有
∫xi
xi−1
f(x) dx≈ h
90[7f(xi−1)+32f(xi−1
4)+12f(xi−1
2)+32f(xi−3
4)+7f(xi)], 累加得复化柯特斯公式
I ≈ h
90 [
7f(a) + 32
n−1∑
i=0
f(xi+1
4) + 12
n−1∑
i=0
f(xi+1
2)
+32
n−1∑
i=0
f(xi+3
4) + 14
n−1∑
i=1
f(xi) + 7f(b) ]
≡ Cn
×h 90 7 32 12 32 7
7 32 12 32 7
7 32 12 32 7 7 32 12 32 7
复化求积公式
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化柯特斯公式
在每个子区间 [xi−1, xi] 应用柯特斯公式,有
∫xi
xi−1
f(x) dx≈ h
90[7f(xi−1)+32f(xi−1
4)+12f(xi−1
2)+32f(xi−3
4)+7f(xi)], 累加得复化柯特斯公式
I ≈ h
90 [
7f(a) + 32
n−1∑
i=0
f(xi+1
4) + 12
n−1∑
i=0
f(xi+1
2)
+32
n−1∑
i=0
f(xi+3
4) + 14
n−1∑
i=1
f(xi) + 7f(b) ]
≡ Cn
×h 90 7 32 12 32 7
7 32 12 32 7
7 32 12 32 7
7 32 12 32 7
7 32 12 32 7
7 32 12 32 7
21
复化求积公式
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化柯特斯公式
在每个子区间 [xi−1, xi] 应用柯特斯公式,有
∫xi
xi−1
f(x) dx≈ h
90[7f(xi−1)+32f(xi−1
4)+12f(xi−1
2)+32f(xi−3
4)+7f(xi)], 累加得复化柯特斯公式
I ≈ h
90 [
7f(a) + 32
n−1∑
i=0
f(xi+1
4) + 12
n−1∑
i=0
f(xi+1
2)
+32
n−1∑
i=0
f(xi+3
4) + 14
n−1∑
i=1
f(xi) + 7f(b) ]
≡ Cn
×h 90 7 32 12 32 7
7 32 12 32 7
7 32 12 32 7
7 32 12 32 7
7 32 12 32 7
复化求积公式
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化柯特斯公式
在每个子区间 [xi−1, xi] 应用柯特斯公式,有
∫xi
xi−1
f(x) dx≈ h
90[7f(xi−1)+32f(xi−1
4)+12f(xi−1
2)+32f(xi−3
4)+7f(xi)], 累加得复化柯特斯公式
I ≈ h
90 [
7f(a) + 32
n−1∑
i=0
f(xi+1
4) + 12
n−1∑
i=0
f(xi+1
2)
+32
n−1∑
i=0
f(xi+3
4) + 14
n−1∑
i=1
f(xi) + 7f(b) ]
≡ Cn
×h 90 7 32 12 32 7
7 32 12 32 7
7 32 12 32 7
7 32 12 32 7
7 32 12 32 7
7 32 12 32 7
21
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化柯特斯公式
在每个子区间 [xi−1, xi] 应用柯特斯公式,有
∫xi
xi−1
f(x) dx≈ h
90[7f(xi−1)+32f(xi−1
4)+12f(xi−1
2)+32f(xi−3
4)+7f(xi)], 累加得复化柯特斯公式
I ≈ h
90 [
7f(a) + 32
n−1∑
i=0
f(xi+1
4) + 12
n−1∑
i=0
f(xi+1
2)
+32
n−1∑
i=0
f(xi+3
4) + 14
n−1∑
i=1
f(xi) + 7f(b) ]
≡ Cn
×h 90 7 32 12 32 7 7 32 12 32 7 7 32 12 32 7
复化求积公式
将 [a, b] 进行 n 等分,记节点为 xi= a + ih(i = 0, 1,· · · , n),h = b−an 称为步长,子区间为 [xi−1, xi](i = 1, 2,· · · , n)。
1. 复化柯特斯公式
在每个子区间 [xi−1, xi] 应用柯特斯公式,有
∫xi
xi−1
f(x) dx≈ h
90[7f(xi−1)+32f(xi−1
4)+12f(xi−1
2)+32f(xi−3
4)+7f(xi)], 累加得复化柯特斯公式
I ≈ h
90 [
7f(a) + 32
n−1∑
i=0
f(xi+1
4) + 12
n−1∑
i=0
f(xi+1
2)
+32
n−1∑
i=0
f(xi+3
4) + 14
n−1∑
i=1
f(xi) + 7f(b) ]
≡ Cn
×h 90 7 32 12 32 7
7 32 12 32 7
7 32 12 32 7
7 32 12 32 7
7 32 12 32 7
7 32 12 32 7 7 32 12 321432 12 321432 12 321432 12 321432 12 321432 12 32 7
21
复化求积公式
定理
设 f(x) 在 [a, b] 上有连续的二阶导数,则复化梯形公式的截断误 差为
RT(f) = −b − a
12 h2f′′(ξ), ξ∈ (a, b).
RC(f) = −2(b − a) 945
(h 4
)6
f(6)(ξ), ξ∈ (a, b).
复化求积公式
定理
设 f(x) 在 [a, b] 上有连续的二阶导数,则复化梯形公式的截断误 差为
RT(f) = −b − a
12 h2f′′(ξ), ξ∈ (a, b).
RS(f) = −b − a
2880h4f(4)(ξ), ξ∈ (a, b).
RC(f) = −2(b − a) 945
(h 4
)6
f(6)(ξ), ξ∈ (a, b).
22
定理
设 f(x) 在 [a, b] 上有连续的二阶导数,则复化梯形公式的截断误 差为
RT(f) = −b − a
12 h2f′′(ξ), ξ∈ (a, b).
RS(f) = −b − a
2880h4f(4)(ξ), ξ∈ (a, b).
RC(f) = −2(b − a) 945
(h 4
)6
f(6)(ξ), ξ∈ (a, b).
复化求积公式
例
计算 I =∫1
0exdx,若要求误差不超过 12× 10−4,分别用复化梯形 公式和复化 Simpson 公式计算,问至少需要多少个节点?
解
f(x) = f′′(x) = f(4)(x) = ex得
max
x∈[0,1]|f′′(x)| = max
x∈[0,1]|f(4)(x)| = e 由复化梯形公式的截断误差知
|RT(f)| ⩽ e 12n2 ⩽1
2 × 10−4⇒ n > 67.3
故用复化梯形公式 n 至少取 68,即需 69 个节点。由复化 Simpson 公式的截断误差知
|RS(f)| ⩽ e 2880n4 ⩽1
2 × 10−4⇒ n > 2.1 故用复化 Simpson 公式 n 至少取 3,即需 7 个节点。
23