数值分析第一章实验 误差分析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1. 计算1
1
n x n
I e
x e dx -=⎰
(n=0,1,2,……)并估计误差。
由分部积分可得计算n I 的递推公式
1111
01,1,2,e 1.n
n x I nI n I e dx e ---=-=⎧⎪⎨==-⎪⎩⎰……. (1) 若计算出0I ,代入(1)式,可逐次求出 1
2,,I I …
的值。要
算出0I 就要先算出1e -,若用泰勒多项式展开部分和
21
(1)(1)1(1),2!!
k
e k ---≈+-+++
…
并取k=7,用4位小数计算,则得10.3679e -≈,截断误差
14711
|0.3679|108!4
R e --=-≤
<⨯.计算过程中小数点后第5位的数字按四舍五入原则舍入,由此产生的舍入误差这里先不讨论。当初值取为
00
0.6321I I ≈= 时,用(1)式递推的计算公式为 0
10.6321A 1n
n I I nI -⎧=⎨=-⎩ (),n=1,2,…。 计算结果见表1的n I 列。用0I 近似0I 产生的误差000
E I I =- 就是初值误差,它对后面计算结果是有影响的.
表1 计算结果
从表1中看到8I 出现负值,这与一切0n I >相矛盾。实际上,由积分估值得
111110001011
(im )(max)11
x n n n x x e e m e x dx I e x dx n n ---≤≤≤≤=<<=++⎰⎰ (2) 因此,当n 较大时,用n I 近似n I 显然是不正确的。这里计算公式与每步计算都是正确的,那么是什么原因合计算结果出现错误呢?主要就
是初值0I 有误差000E I I =- ,由此引起以后各步计算的误差n n n
E I I =- 满足关系
1,1,2,n n E nE n -=-=….
由此容易推得
0(1)!n n E n E =-,
这说明0I 有误差0E ,则n I 就是0E 的n!倍误差。例如,n=8,若
4
01||102
E -=
⨯,则80||8!||2E E =⨯>。这就说明8I 完全不能近似8I 了。它表明计算公式(A )是数值不稳定的。
我们现在换一种计算方案。由(2)式取n=9,得
1911010
e I -<<, 我们粗略取1
*9911()0.068421010
e I I -≈+==,然后将公式(1)倒过来算,即
由*9I 算出*8I ,*7I ,…,*
0I ,公式为
*
9**
10.0684()1(1),98n n I B I I n n -⎧=⎪
=⎨=-=⎪⎩
,
,…,1; 计算结果见表1的*n I 列。我们发现*
0I 与0I 的误差不超过410-。记
**
n n n
E I I =-,则**01||||!
n E E n =,*0E 比*
n E 缩小了n!倍,因此,尽管*9E 较大,但由于误差逐步缩小,故可用*
n I 近似n I 。反之,当用方案(A )计算
时,尽管初值0I 相当准确,由于误差传播是逐步扩大的,因而计算结果不可靠。此例说明,数值不稳定的算法是不能使用的。