购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.3 数值计算的误差

1.3.1 绝对误差和相对误差

设某一个量的准确值(称为真值)为x,其近似值为x * ,则称e(x * )=x-x * 为近似值x * 的绝对误差,简称误差。有时将e(x * )简记为e * ,下面的其余记号类似。

由于真值x往往是未知或无法知道的,因此e * 的准确值也就无法求出。但一般可估计出此绝对误差e * 的一个上限,也即可以求出一个正数ε,使

ε称为近似值x * 的绝对误差限,或称为精度。通常用

来表示近似值的精度。正数ε越小,表示该近似值x * 的精度越高。

注: 一个近似值的绝对误差限不是唯一的。一般地,ε是绝对误差e x 的绝对值的一个较小上界。

在实际问题中,判断一个近似值的精确度大小不仅要观察绝对误差大小,还要考虑该量本身的大小。这就需要引进相对误差的概念。

近似值x * 的相对误差定义为绝对误差e * 与真值x之比,即

例如,测量10m的长度时产生1cm的误差与测量1m的长度时产生1cm的误差是大有区别的。虽然两者的绝对误差相同,都是1cm,但是前一种测量的相对误差为 ,而后一种测量的相对误差则为 ,是前一种的10倍。

由式(1.3)可得

相对误差不仅能表示出绝对误差来,而且在估计近似值运算结果的误差时,它比绝对误差更能反映出误差的特性。因此在误差分析中,相对误差比绝对误差更为重要。

与绝对误差一样,相对误差也无法准确求出,但可以估计它的范围,即可找到一个适当小的正数ε r ,称为近似值x * 的相对误差限,即

注: ①相对误差没有量纲,而绝对误差有量纲。

②在实际计算中,由于真值x总是无法知道的,因此往往取

作为相对误差的另一定义。当x * 较好地近似真值x时,两种定义仅相差高阶无穷小。本书后面均这样处理。

③相对误差也常用百分数来表示:

这时称它为百分误差。

1.3.2 有效数字

在表示一个近似值时,为了同时反映其准确程度,常常用到“有效数字”的概念。例如对无穷小数或循环小数,可用四舍五入的办法来取其近似值。

例1.1 我们知道,π=3.14159265…是一个无理数,按四舍五入考虑π的不同近似值:

取一位数: ,有

取四位小数: ,有

取五位小数: ,有

这种近似值取法的特点是误差限为其末位数的半个单位。当近似值x * 的绝对误差限是其某一位上的半个单位时,就称其“准确”到这一位,且从该位起直到前面第一位非零数字为止的所有数字都称为有效数字。

定义 设x的近似值x * 的规格化形式为

其中,α 1 ,α 2 ,…,α n 都是0~9中的任一整数,且α 1 ≠0;n是正整数,m是整数。若x * 的误差限为

则称x * 为具有n位有效数字的有效数,或称它精确到10 m-n 。其中每一位数字α 1 ,α 2 ,…,α n 都是x * 的有效数字。

注: ①若式(1.7)中的x * 是x经四舍五入得到的近似值,则x * 具有n位有效数字。例如,3.1416是π的具有五位有效数字的近似值,它精确到0.0001。

②有效数尾部的零不可随意省去,以免损失精度。

③另一种情况,例如x=0.1524,x * =0.154。这时x * 的误差e * =-0.0016,其绝对值超过了0.0005(第三位小数的半个单位),但却没有超过0.005(第二位小数的半个单位),即

显然x * 虽有三位小数但却只精确到第二位小数,因此它只具有二位有效数字。其中α 1 =1,α 2 =5都是准确数字,而第三位数字α 3 =4就不再是准确数字了,就称它为存疑数字。

另外,由式(1.8)可知,从有效数字可以算出近似数的绝对误差限;有效数字的位数越多,其绝对误差限也就越小。不但如此,还可以从有效数字中求出其相对误差限。

当用式(1.7)表示的近似值x * 具有n位有效数字时,显然有

故由式(1.8)可知,其相对误差的绝对值

故相对误差限为

注: ①一般地,由式(1.9)得到的相对误差限偏大。

②式(1.9)说明x * 的有效数字位数越多,其相对误差限越小。由此可见,有效数字的位数反映了近似值的相对精确度。事实上,由上面的推导可得定理如下。

定理 设非零近似数x * 有形如x * =±0.α 1 α 2 …α n ×10 m 的表示,则x * 的有效数字与x * 的相对误差之间有如下关系:

(1)若x * 具有n位有效数字,则其相对误差满足

(2)若x * 的相对误差限满足

则x * 至少具有n位有效数字。

结论(2)的证明留给读者。

例1.2 当用3.1416来表示π的近似值时,它的相对误差限是多少?

3.1416具有5位有效数字,α 1 =3,由式(1.9)有

例1.3 为了使 的近似值x * 的相对误差小于0.1%,问至少取几位有效数字?

因为 ,则近似值x * 中α 1 =4。由式(1.9)知

可解出n=4。即只要取4位有效数字,此时x * =4.472就能满足要求。

1.3.3 数值运算的误差

在实际的数值计算中,参与运算的数据往往都是些近似值,带有误差。这些数据误差在多次运算过程中会进行传播,使计算结果产生误差。而确定计算结果所能达到的精度显然是十分重要的,但这往往也是件很困难的事。不过,对计算误差做出一定的定量估计还是可以做到的。这里介绍一种常用的误差估计的一般公式,它是利用函数的泰勒(Taylor)展开得到的。

设f(x)是一元可微函数,当x的近似值为x * 时,以f * =f(x * )近似f(x),则由泰勒公式得函数值f(x * )的误差e * (f * )为

其中ξ介于x,x * 之间。

取绝对值得

假定f′(x * )与f″(x * )的比值不太大,可忽略 的高阶项,于是可得所计算函数的绝对误差限

例1.4 已知x=x * ±α(α>0),试求 的相对误差限。

因为 ,且ε(x * )=α,所以由式(1.11)得

的相对误差

于是所求的相对误差限为

下面以二元函数为例,讨论多元函数情形。

假设有二元可微函数y=f(x 1 ,x 2 ),设 分别是x 1 和x 2 的近似值,y * 是函数值y的近似值,且 ,则二元函数f(x 1 ,x 2 )在点 处的泰勒展开式为

式中, 一般都是小量值,如忽略高阶小量,即高阶的 ,则上式可简化为

因此y * 的绝对误差

式(1.12)中, 前面的系数 分别是 对y * 的绝对误差增长因子,它们分别表示绝对误差 经过传播后增大或缩小的倍数。

由式(1.12)可得到计算二元函数值y * 的绝对误差限为

一般地,对于n元可微函数y=f(x 1 ,x 2 ,…,x n ),记(x 1 ,x 2 ,…,x n )的近似值为 ,相应的解为 ,则解的绝对误差限为

由式(1.12)可得出y * 的相对误差为

式(1.14)中, 前面的系数 和x 分别是 对y * 的相对误差增长因子,它们分别表示相对误差 经过传播后增大或缩小的倍数。

由式(1.13)可得加、减法运算的绝对误差限公式为

由式(1.14)可得加、减法运算的相对误差限公式为

由式(1.16)的减法运算公式可知,当 ,即大小接近的两个同号近似值相减时,相对误差限 可能会很大,说明计算结果的有效数字将严重丢失,计算精度很低。因此在实际计算中,应尽量设法避开相近数的相减。当实在无法避免时,可用变换计算公式的办法来解决。

例如,当要求计算 ,结果精确到第5位数字时,至少取到 ,这样 5位有效数字的要求。如果变换算式:

也能达到结果具有5位有效数字的要求,而这时 所需的有效位数只要5位,远比直接相减所需有效位数(8位)为少。

同样由式(1.12)可分别得乘、除法运算的绝对误差和相对误差公式

注: 式(1.17)和式(1.18)中的相对误差公式也可由式(1.14)得到。

由式(1.17)和式(1.18)还可得到乘、除法运算的相对误差限公式分别为

由式(1.17)的第一式可知,当乘数很大时,乘积的绝对误差可能很大,应设法避免。由式(1.18)的第一式可知,当除数 的绝对值很小,接近于零时,商的绝对误差可能会很大,甚至造成计算机的“溢出”错误,故应设法避免让绝对值太小的数作为除数。

综上分析可知,大小相近的同号数相减,乘数的绝对值很大,以及除数接近于零等,在数值计算中都应设法避免。

例1.5 设已测得某长方形场地的长和宽的范围分别为L=(110±0.2)m,D=(80±0.1)m,求该场地的面积S,并估算其绝对误差限和相对误差限。

由S=LD可求出面积S的近似值

S * =110×80=8800(m 2

由式(1.13)可计算S * 的绝对误差限。由于

于是

ε(S * )≈80×0.2+110×0.1=27(m 2

由于S * 的相对误差 ,因此S * 的相对误差限为

例1.6 经过四舍五入得出 ,求x 1 +x 2 ,x 1 x 2 的绝对误差限。

由于 ,所以由式(1.15)得

由式(1.17)得 IDLH9L1FvsXbi7v01c6ueWI+MHhb/U2NRrySMoscJeI+V83FI0HoekSo1bY5wOZI

点击中间区域
呼出菜单
上一章
目录
下一章
×