分享

计算方法

 帅到爆胎了 2018-03-08

第一章 误差

221 3.1423.141分别作为π的近似值各具有几位有效数字, 7

分析 利用有效数字的概念可直接得出。

π=3.141 592 65

22x=3.142x=3.141x=. 1237

π- x=3.141 59-3.142=-0.000 40„知 1

11,,34 ,,,,,,10||10x122

因而x具有4位有效数字。 1

π- x=3.141 59-3.141=-0.000 59„知 2

11,3,2 10,|,,x|,10222

因而x具有3位有效数字。 2

22π-=3.141 59 -3.142 85=-0.001 26„知 7

1221,3,2 10,|,,|,10272

因而x具有3位有效数字。 3

2 已知近似数x*有两位有效数字,试求其相对误差限。 分析 本题显然应利用有效数字与相对误差的关系。 利用有效数字与相对误差的关系。这里n=2,a19之间的数字。 1

xx|,*|11,n1,21*x |,()|,,10,10,5%rxa|*|2211

3 已知近似数的相对误差限为0.3%,问x*至少有几位有效数字, 分析 本题利用有效数字与相对误差的关系。 a19间的数字。 1

3111,1,1* ,(x)0.3%,,,10,10r210002102(91)2(a1)1x*具有n位有效数字,令-n+1=-1,则n=2,从而x*至少具有2位有效数字。

4 计算sin1.2,问要取几位有效数字才能保证相对误差限不大于0.01%

分析 本题应利用有效数字与相对误差的关系。 设取n位有效数字,由sin1.2=0.93„,故a=9 1

xx|,*|1,n1,4*x ,()|,,10,0.01%,10rxa|*|21

1n,1,410,10解不等式知取n=4即可满足要求。 a21

11,5 计算,视已知数为精确值,用4位浮点数计算。 759760

1 / 25

1/25页

-2-2-511 0.131 8×10-0.131 6×10=0.2×10 ,,759760

结果只有一位有效数字,有效数字大量损失,造成相对误差的扩大,若通分后再计算:

1111,5 ,,,,0.17341067597607597600.576810

就得到4位有效数字的结果。

此例说明,在数值计算中,要特别注意两相近数作减法运算时,有效数字常会严重损失,遇到这种情况,一般采取两种办法:第一,应多留几位有效数字;第二,将算式恒等变形,

1,cosx然后再进行计算。例如,当x接近于0,计算时,应先把算式变形为 sinx

21,cosx1,cosxsinx,, sinxsinx(1cosx)1cosx

再计算。又例如,当x充分大时,应作变换

11x,x, 1xx

111,, xx1x(x1)

62,1.46 计算a,(2,1),取,采用下列算式计算:

1(1); 6(21)

99,702(2);

3(3)(3,22);

1(4). 3(322)

问哪一个得到的结果最好,

显然

66(2,1)(21)16a,(2,1),, 66(21)(21)

3632 ,,(2,1),(2,1),(3,22),99,702

1116(2,1),,, 3632(21)(322),,(21)

2,1.4所以(1)?(2)?(3)?(4),这4个算式是恒等的,但当取计算时,因为(2),(3)都涉及到两个相近数相减,使有效数字损失,而(1)在分母算式上的乘幂数比算式(4)

f(x)2,1.4大,所以算式(4)最好,事实上,当取时,有|?x|<>,再由的误差

,f(x,x),f(x)|,|f(1.4)||,x|也可直接估计出每个算式的误差,显然,算式(4)误差最小。

2 / 25

2/25页

具体计算可行:

1,3(1); ,5.2106(21)

99,702,1.0(2)

3,33); ((3,22),8.010

1,3(4). ,5.1103(322)

比较可得用第(4)个算式所得的结果更接近于a

2997 求二次方程x-(10+1)x+10=0的根。

2999 由于x-(10+1)x+10=(x-10)(x-1),所以方程的两个根分别为

9 x=10x=1 122但如果应用一般二次方程ax+bx+c=0的求根公式:

2bb4ac,,, x,1,22a

22|b|,b,4ac由于当遇到b>>4|ac|的情形时,有,则用上述公式求出的两个根中,总有一个因用了两个相近的近似数相减而严重不可靠,如本例若在能将规格化的数表示到小

91010数点后8位的计算机上进行计算,则-b=10+1=0.1×10+0.000 000 0001×10,由于第二项最后两位数“01”在机器上表示不出来,故它在上式的计算中不起作用,即在计算机运算时,

9-b=10.

通过类似的分析可得

92b,4ac,|b|,10

所以,求得的两个根分别为

299,bb,4ac10109 x,,,1012a2

299,b,b,4ac1010 x,,,022a2

显然,根x是严重失真的。 2

c为了求得可靠的结果,可以利用根与系数的关系式:xx,,在计算机上采用如下12a

公式:

2bsgn(b)b4ac,,, x,12a

cx, 2ax1

其中,sgn(b)是b的符号函数,当b?0sgn(b)=1;当b<>时,sgn(b)=-1。显然,上述求根公式避免了相近数相减的可能性。

8 N充分大时,如何计算

N11I,dx ,N1x

1分析 函数的原函数已知,我们自然考虑用Newton-Leibniz公式求这个定积分21x

3 / 25

3/25页

的值。由于N很大,这样会遇到两个相近的数相减,因此,应采用一些变换公式来避免这种情况。

若用定积分的Newton-Leibniz公式计算此题,有N11,则当N充分大时,因为arctan(N+1)和arctanN,arctan(N1),arctanN2,N1x

非常接近,两者相减会使有效数字严重损失,从而影响计算结果的精度,这在数值计算中是要尽量避免的,但是通过变换计算公式,例如:令tanθ=N+1, tanθ=N,则由12

,,tan,tanN1,N121,,, tan(,),,,121tan,tan,1(N1)N1(N1)N12

1,,arctan(N1),arctanN,arctan,, 121(N1)N

就可以避免两相近数相减引起的有效数字损失,从而得到较精确的结果。所以,当N充分

N111,arctan大时,用计算积分的值较好。 22,N1x1NN

1nx,19 计算积分. I,xedx(n,1,2,n,0

分析 数值计算中应采用数值稳定的算法,因此在建立算法时,应首先考虑它的稳定性。

利用分部积分法,有

11111nx,nx,nx,x,n,n,x,1111111 xedx,xde,xe,enxdx,1,nxedx|,,,,00000

得递推公式:

(1) IInIn,,,(1,2,)nn,1

110x,1,,, Ixedx1 0,0e

*利用公式(1)计算I,由于初值I有误差,不妨设求I的近似值时有大小为ε的误差,In000

, I,I,00

则由递推公式(1)得

,,I,I,I,I,I,,,I,, 0110

,, I,I,2I,I,2I2,,I2!,1221

,, I,I,3I,I,3I,32!,,I3!,2332

,, I,I,4I,I,4I43!,,I4!,3443

?

,n I,I(,1)n!,nn

显然初始数据的误差ε是按n!的倍数增长的,误差传播得快,例如当n=10时,10~?3.629

6,,×10,,这表明I时已把初始误差ε扩大了很多倍,从而的误差已把I|I,I|,10!,I1010101010

4 / 25

4/25页

的真值淹没掉了,计算结果完全失真。

但如果递推公式(1)改成

1 I,(I,I)(n,k,k,1,3,2)n,1nn

1于是,在从后往前计算时,I的误差减少为原来的,所以,若取n足够大,误并逐步减小,nn

显然,计算的结果是可靠的。所以,在构造或选择一种算法时,必须考虑到它的数值稳定性问题,数值不稳定的算法是不能使用的。

10 为了使计算

364y,10, 23x,1(x,1)(x,1)

的乘除法运算次数尽量地少,应将表达式改写为怎样的形式,

1t,,y,10(3(4,6t)t)t. x,1

在数值计算中,应注意简化运算步骤,减少运算次数,使计算量尽可能小。

11x*=3587.64x的具有六位有效数字的近似值,求x的绝对误差限。

7012为使的近似值的相对误差小于0.1,问查开方表时,要取几位有效数字,

13利用四位数学用表求x=1-cos2?的近似值,采用下面等式计算:

(1)1-cos2?

2(2)2sin1?

问哪一个结果较好,

2783,27.98214求方程x-56x+1=0的两个根,使它至少具有四位有效数字(已知)。

,15数列满足递推公式 {x},0n

x,10x,1(n,1,2,)nn,1

x2,1.41若取(三位有效数字),问按上述递推公式,从x计算到x时误差有多大,这0010个计算过程稳定吗,

,n1m,1,2,16如果近似值x,,(aa10a10a10)10的相对误差限小123n

1,n110,证明:这个数具有n位有效数字。 a2(1)1

5 / 25

5/25页

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多