21.41421356=长的限制, 无穷小数和位数很多的数必须舍入成一定的位数(机器字长)。 舍入方法: a) 舍入机。
采用四舍五入的办法, 如将截断机。
采用截尾的办法。
如 2在八位字长的截断机里取成1.4142135。 这样产生的误差称为舍入误差。
少量的舍入误差是微不足道的, 但在计算机是作了成千
受
舍为1.4142136; b)
机器字 上万次运算后, 舍入误差的累积有时可能是十分惊人的。 它取决于方法的稳定性。
如果方法能够累积大量的误差, 此算法是不稳定的, 反之为稳定算法。 如算法 1: 1nnyany=+。
显然是不稳定的; 算法 2:
11nnyayn=+, 研究计算结果的误差是否满足精度要求就是误差估计问题, 本书主要讨论算法的截断误差与舍入误差, 而截断误差将结合具体算法讨论。
为分析数值运算的舍入误差, 先要对误差基本概念做简单介绍。 2.2 绝对误差与相对误差 定义 1 设x为准确值,称exx= 为
---------------------------------------------------------------最新资料推荐------------------------------------------------------
近似值的绝对误差, 简称误差。
注意这样定义的误差差为正时近似值偏大, 叫强(赢) 近似值; 当绝对误差为负时近似值偏小, 叫弱(亏) 近似值。 通常我们不能算出准确值x, 当然也不能算出误差*x 为 x的一个近似值,***e 可正可负, 当绝对误*e 的准确值, 只能根据测量工具或计算 情况估计出误差的绝对值不超过某正数就是误差绝对值的一个上界。 误差限, 它总是正数。
一般情形xx* , 也* 叫做近似值的**, 即****xxx*+。 这个不等式有时也表示为我们把近似值的误差*xx=。
*e 与准确值x的比值 *xx *exx=称为近似值在实际计算中, 由于真值x总是不知道的,*****rexx***rex****()eee xx==*x 的相对误差, 记作*re 。
通常取exx==作为*x 的相对误差, 条件是e=较小, 此时 * 2** 2)*******( )e(/()1(/)exxxx xx xeex= 是*r 的平方项级, 故可忽略不计。
相对误差也可正可负, 它的绝对值上界叫做相对误差限, 记作*r , 即**r*x =。 注 1:
1) 绝对误差是有量纲的量, 它与所研究问题的背景有关, 因此我们不能单单从绝对误差值的大小来判断计算结果的精度, 还必
7 / 21
须考虑到实际问题的应用背景; 2) 通过引入相对误差, 我们可比较不同算法, 不同应用问题的计算精度, 这一点是无法通过比较绝对误差做到的, 因为不同值的东西, 在量上是无法比较的。 正如我们不能通过比较两个商品的使用价值来判定商品的真贵,只能通过抽象的价值。
2.3 有效数字 有效数字是近似值的一种表示法, 它既能表示近似值的大小, 又能表示其精确程度。
定义 2 若近似值个单位, 该位到则称近似值有n位有效数字。 在科学记数法中, 将近似值式为
其中m为整数,
10,aa i*x 的误差限是某一位的半*x 的第一位非零数字共有n位,*x 写成规格化形间的整数。
按照定义 2, 近似值字当且仅当 *x 有n位有效数*1102m nxx (1-2) 因此在m相同的情形下, n越大则误差越小,亦即一个近似值的有效位数越多其误差限越小。
例 1 按四舍五入原则写出下列各数具有5位有 效 数 字 的 近 似 数 :187.9325,0.03785551, 8.000033, 2.7182818。
按定义, 上述各数具有 5 位有效数字的近似数分别是 187.93, 0.037856, 8.0000, 2.7183 注意8.000033x =的 5 位有效数字的近似数是 8.0000 而不是 8, 因为 8 只有 1 位有效数字。
例 2 重力 常 数 g , 如果以120.980 10/gm s;若 以220.980 10/gkm s, 它们都具有 3 位有效数字, 因为按第一种写法
为 0 到 9 之
-1) (1,2,)i
---------------------------------------------------------------最新资料推荐------------------------------------------------------
19.801022/m s 为单位,2/km s 为 单 位 ,21 31102g=, 按第二种写法 52 3 110.00980101022g=, 他们虽然写法不同, 但都具有 3 位有效数字。
至于绝对误差限, 由于单位不同结果也不同,1110/,22差都是0.005/9.80=例 2 说明有效位数与小数点后有多少位数有关。 然而, 从(2-2)可以得到具有n位有效数*122*25210/m skm s==, 而相对误*0.000005/0.00980r =。
字的近似数*x , 其绝对误差限为*1102m n=,在m相同的情况下, n越大则10m n效位数越多, 绝对误差限越小。
关于一个近似数的有效位数与其相对误差的关系, 有下面的定理 定理 1.1 设近似数(1)若为 1ra越小, 故有*x 具有规格化形式
(1-1), *x 具有n位有效数字, 则其相对误差限*11102n + (1-3) (2) 如果 *r111102(1)na ++ (1-4) 则*x 至少具有n位有效数字。
证明 由(1-1)可得到 1110a*x 有n位有效数字时 *xx=*11(1) 10mmxa+ 当*r11*110.5 10110102m nnmaax += 即证(1)。
反之, 由 1***r11110(1) 102(1)1102nmm nxxxaa +=++= 即说明定理说明, 有效位数越多, 相对误差限越少。
例 3 要使 20 的近似值的相对误差限小于0.1%, 要取几位有效数字? 设 取 n 位 有 效 数 字 ,*x 具有n位有效数字, (2)得证。
9 / 21
由 定 理 1.1 , *r111102na +。 由于
, 知14a = ,故只要取40.125 10n = , 就有
*r33100.1%= 即只要对 20的近似值取 4 位有效数字, 其相对 误 差 就 小 于 0.1% 。
此 时 由 开 方 表 得204.472。
3 数值计算中误差的传播 3.1 基本运算中的误差估计 数值运算中误差传播情况比较复杂, 估计起来比较困难。 本节所讨论的运算是四则运算与一些常用函数的计算。 由微分学, 当自变量改变(误差) 很小时,函数的微分作为函数的改变量的主要线性部分可以近似函数的改变量, 故可以利用微分运算公式可导出误差运算公式。
设数值计算中求得的解与参量(原始数据)为
有关, 记
参量的误差必然引起解的误差。
设的近似值分别为1x x*y=假设 f 在点12(,,x x较小时, 解的绝对误差为 应的解为
, 相
可微, 则当数据误差
,f
x
*1*2*n12*1*2*n*1*2*n*i1*1*2*n**i1(,,,)(
x,,)(,,,)(,,,)()(,,,)()nniiiniif x xxxdf x xxf x xxxxxf x xxe
-5)
其
相
对
误
差
为
***r***1*2*n**i*1*2*n1*1*2*n*i*r*i*1*2*n1()()(ln )( ,f x x,,)( )( ,f x x,,)( ,f x x,,)( )( ,f x x,,)niiniie ye ydfyxe
-6) 注 2: