数值分析例题供参习.docVIP

  • 29
  • 0
  • 约1.08万字
  • 约 30页
  • 2017-02-09 发布于江苏
  • 举报
数值分析例题供参习

绪论: 例 已知,作为=3.141592…的近似值,试分别求出它们有效数字的位数及相对误差限 解:(1)3.142-3.14159=0.000410.5×10-3 3.142=0.3142×101 ,1-n=-3,∴n=4 ∴3.142有4位有效数字 (2)0.0005930.5×10-2 ∴1-n=-2 ∴n=3 ∴3.141有3位有效数字 ∴当3.141作为的近似数时有3位有效数字,不具有4位有效数字,3.14有效,千分位1不是有效数字。 练习 已知x1=2.71,x2=2.72,x3=2.7181作为e=2.71828…的近似值,求这3个近似数的有效数字的位数。 (n=2, 3, 4 ) 推论1 对于给出的一个有效数,其绝对误差限不大于其末位数字的半个单位。 推论2 若近似值x=± 0.a1a2…an*10m (其中a1≠0) 具有n位有效数字,则其相对误差≤。 证明:∵x=±0. a1…an*10m ∴| x |≥a1*10m-1 又x具有n位有效数字,则| x- x*|≤ | e* r |= ∴n越大,|e* r |就越小,一般应用中取= 例1:求的近似值,使其相对误差不超过。 解:=2.4494……取=2,设x*=有n位有效数字,由推论2, =≤,∴n=4,取x*=2.449 练习:要使的近似值相对误差不超过0.1%,则至少要求几位有效数字? 解:设x*=,其近似数x具有n位有效数字,其相对误差限满足 =≤0.1%n≥3.097 ∴n=4 例1 求有效数3.150950,15.426463, 568.3758, 7684.388之和。 解 ∑=……=8271.341 213 而这和的绝对误差限为 2*0.5*10-6+0.5*10-4+0.5*10-3 ≈0.5*10-3 ∴∑应舍入成8271.341最末3位的计算没有意义,合理的做法是将小数位较多的各位数按小数位最少的位数多取1位作舍入处理,再相加 3.1510+15.4265+568.3758+7684.388=8271.3413 3*0.5*10-4+0.5*10-3=0.000650.5*10-2 和8271.3413舍入至小数后2位得 8271.34 例2:求x2+()x+109 =0的根,求根公式x=,=-109 ,=-1 b==-0.1*1010-0.0000000001*1010=-0.1*1010(设为八位机运算) b2-4ac=1018-4*1*109=0.1*1019=1018 x1,2= 换一种算法 注意:(1)大量运算时,可能很大。(举例,如高考估分) (2)两个相差很大的数进行加减时,要防止大数“吃”小数现象,在多个数求和时,如果被加数的绝对值之间差异较大,且包含许多绝对值较小的数,则应按绝对值从小到大的次序相加。 (3)要避免两个相近数相减 例:cos20=0.9994,但1-cos20=0.0006却只有一位有效数字……,遗失有效位。为避免这种情况,改变计算公式 (当x很大) sin(x+)-sinx=2cos(x+)sin lnx1- lnx2= ln(当x与x2接近时) 4.2 y=a*x (a为常数) 易知| |=| a*|≤|a|*,若a增大,则| | 也增大 (4)避免小数作除数和大数作乘数 (5)尽量简化计算步骤,减少运算次数。 例如,如果直接计算x255 的值须进行254次乘法运算若采用公式 x255=x* x2* x4* x8* x16* x32* x64* x128,只需做14次乘法运算 (6)注意运算次序 例 计算 解 算法一: D1 =A/B= 0.176 47 D的真值为0.169 481 48…,只精确到小数后一位 算法二: a = 0.0005/0.0003≈1.666 667 b = 0.0143/0.0125=1.14400 c = 0.0012/0.0135≈0.088 889 D2 = abc = … = 0.169 482, 则D1 精确到小数后五位 例 计算 (n= 0, 1, 2, 3…), 解 用分部积分公式得递推式: 。 用四位有效数字计算: I0 = 0.6321, , , , , , , , . 估算In 故 ,。 于是I7,I8与精确值已经面目全非,一位有效数字也没有。这是由于如果I0有误差, ( 其截断误差 , 不计中间再产生的舍入误差,该误差随着计算过程分别乘以2,3…7,8,到I8时已经变成了,误差扩大了4万倍。因而该算法不是稳定的。

文档评论(0)

1亿VIP精品文档

相关文档