当前课程知识点:计算方法 > 第1章 计算方法概论 > 1.4 误差与有效数字 > 1.4 误差与有效数字
今天我们学习第四节
误差与有效数字 在上一节
谈到评价算法
主要依据两个标准 算法的计算效率
与计算结果的精度
计算结果的精度就是计算结果
误差大小
要获得高精度的计算结果
就必须很好地控制误差
因此
我们必须了解误差的产生过程
误差是怎样产生的呢
我们说
通常是由以下四个方面产生
第一方面模型误差
我们曾经讲过
一个实际问题
我们要抓住主要因素
忽略次要因素
来建模
数学模型
它是用数学语言
模拟现实而建立起来的一个量化关系
那么因此
这种数学模型它与实际问题是有误差的
这种误差我们称为模型误差也称为问题的固有误差
第二种误差:观测误差
在观测数据时产生的误差称为观测误差
观测值的精度通常要受到仪器设备的限制
因此观测误差也称为仪器误差
第三种误差,截断误差,是指数学模型的解
与某种数值方法的解之间的误差
比如我们用
收敛的无穷级数的部分和
来代替无穷和
这种近似产生的误差称为截断误差
也称为方法误差
第四种误差,舍入误差
舍入误差是指在计算机作数值计算的时候
由于这些数的字长有限
我们在接收数据
和运算数据时产生的误差
我们计算方法主要关心
后两者误差也就是截断误差与
舍入误差
为了更好的研究误差
我们介绍
两个误差的重要概念
绝对误差
设x*是精确值,x是x*的近似数
我们将e记为x*-x
称e为近似值x的绝对误差,简称误差
从上述定义可以看出
绝对误差可正可负
当e大于零时
我们称此时的误差为正偏差,表示近似数偏小
当误差小于零时称为负偏差
此时近似数偏大
另外
误差是有量纲的
下面我们举个例子
某人目测房间的高度
是3米
房间的实际高度
是2.9米,
这样就产生了目测误差-0.1米
说明近似值偏大
由于精确值通常是未知的
因此绝对误差也是未知的
这样我们来定义
近似值的误差限的概念
绝对误差限我们用来表示
如果存在正数ε
使得误差的绝对值小于等于ε
我们就称正数ε为近似值
x的绝对误差限,简称误差限
当给定误差限之后
我们就可以确定精确值的范围
x*大于等于x-ε
小于等于x+ε
注意误差限也是有量纲的
而且误差限是不唯一的
下面我们举一个例子.设x*是根号3
x1 等于1.7321
x2等于1.7320
x1, x2都是根号3的近似值
我们来求他们的绝对误差限
首先x*-x1的绝对值
等于
0.0000491
小于0.5乘10的负四次方
这样0.5乘10的负四次方就是
x1的一个误差限
x*-x2绝对值等于
0.0000508
它小于0.6乘10的负四次方
我们又得到了一个x2的误差限
是0.6乘10的负四次方
很显然比这两个误差限更大的数
还是误差限
所以我们说误差限是不唯一的
那么绝对误差能判断近似数的优劣吗?
我们看一个例子
考场人数统计, 假设我们有两个考场
甲考场和乙考场分别进行考试
监考人员做人数统计
假设两个考场
统计人数的误差都是1人
我们能否说这两个统计值的精度是相同的
一般来讲我们说答案是不一定
不能说两个统计值的精度是相同的
那么
为什么会有这样的结果
主要是因为
统计值质量不仅与误差的大小有关
而且还与精确值的大小有关系
比如说
甲考场有一千人在进行考试
乙考场只有十人在进行考试
虽然两考场人数统计的误差都是1人
但是人们会认为
甲考场的统计值更精确一些
也就是说
单看绝对误差
不能够评价近似值的优劣
下面我们介绍@
近似值的相对误差.设精确值
x*不等于零
将er记为
x*-x/ x*,分子就是绝对误差
我们称er为近似数x的相对误差
由于精确值是未知的
我们也可以把
分母中的x*替换为近似值x
相对误差通常也是难以获取的
因为精确值是未知的
这样我们来定义相对误差限εr
如果存在一个正数
εr
使得相对误差的
绝对值小于等于这个正数
那么我们就将这个正数εr
称为近似值
X的相对误差限
相对误差限可以取为
误差限比上x的绝对值
这里请大家注意
相对误差与相对误差限是没有量纲
下面举两个例子. 已知精确值
x*=10,近似值x=11
那么我们求出它的绝对误差是-1,
在给一组数据,精确值y*=1000
近似值
Y=1001,仍然得到绝对误差
是e等于-1
这两组数据近似值的绝对误差是相同的
都是-1
那么这两个近似值的质量是否相同
我们再来算一下它们的相对误差
第一组数据x的相对误差是-0.1
第二组数据y的相对误差是-0.001
很显然
我们认为近似值y的质量更高
通常相对误差比绝对误差
更能反映准确数和近似数的差异
再看一个例子
给定一组数据精确值等于3
近似值x等于3.1
我们算出绝对误差
e等于-0.1
再给一组数据
y*等于0.3乘10的负3次方
近似值y
等于0.31乘10的负3次方
第二组数据近似值的
绝对误差等于负的0.1
乘10的负4次方
很显然
第二组数据近似值的绝对误差比
第一组数据近似值的绝对误差要小
那么
我们再来计算它们的相对误差
第一组数据的近似值的相对误差
是-0.3333
乘10的负一次方
第二组数据
近似值的相对误差也是这个数
那么这两组数据哪个近似值比较好
我们说仍然是相对误差的意义更大
因此
我们认为
这两组数据两个近似值的质量
是相同的
下面我们再来看一个例子
计算e的0.5次方
的近似值,使近似值的
相对误差不超过0.5
乘10的-3次方
首先我们要写出eX的
Maclaurin级数
注意这个级数的收敛域是整个整个实轴
特别在x=0.5处
它也收敛
这样
我们将x=0.5代入
上式得到了一个数项级数
很显然
等号的右边这个数项级数有无穷多项
计算机是无法直接求和的
那么我们取数项级数的
部分和记为Sn
根据级数理论
当n趋于无穷时
Sn的极限就是数项级数的和
e的0.5次方
我们需要选择一个适当的n
用部分和Sn来近似e的0.5次方
这样
我们需要定义部分和的相对误差
大家知道当n较大时
Sn比Sn-1
更接近e的0.5次方
这样
我们按照如上方式
定义近似值的相对误差为en
等于Sn- Sn-1比上Sn
它就是近似值的相对误差
我们逐项计算Sn
再来检验,给出一个满足要求的近似值
那首先我们算出
S0=1 ,s1=1.5
计算一下相对误差e1
得到的值是0.333
不满足要求
继续算S2=1. 625
再计算相对误差
e2=0.0769
也不满足要求
我们将计算的结果列成表
从表中可以看出
当n取5的时候
Sn等于1.648698
这时候相对误差达到了0.000158
已经满足了精度要求
因此我们就可以用
S5作为e的0.5次方的一个近似值
以上我们介绍了绝对误差和相对误差的概念以及误差的应用
下面我们要介绍另外一个重要概念
有效数字
我们给出如下定义
设近似值x
等于正负10的n次方乘以
0.a1a2…ak
如果近似值x的绝对误差
的绝对值小于等于0.5
乘10的n-k次方
我们就称
近似值X准确到小数点后第k位
从小数点后第k位
直到最左边的非零数字
之间的所有数字都称为有效数字
特别的
如果x的表达式中尾数中的第一位
a1不等于零
那么
满足上述不等式的近似值x就有k位有效数字
下面我们举个例子
设x等于根号3,
x1=1.73
X2=1.7321
X3=1.7320
是它的近似值
问这三个近似值
分别有几位有效数字
我们先来考察x1算一下x1的绝对误差限
得到
X-X1绝对值小于0.5
乘10的-2次方
我们将x1表示成规格化的浮点数
0.173乘10的1次方
那么
-2就可以表示为1-3
从而确定近似值X1
有三位有效数字
再来考察近似值X2
我们仍然算一下X2的绝对误差限
它的误差限为0.5
乘10的-4次方
将X2表示
成规格化的浮点数
-4
又可以表示为1-5
我们得到x2有五位有效数字
最后考察x3
它的绝对误差限
是0.5乘10的-3次方.注意
我们将x与x3相减
得到的是0.0000508
那么它的误差限达不到0.5
乘10的-4次方
所以是0.5乘十的-3次方
那么同样-3=1-4
因此我们说x3
有四位有效数字
归纳一下
X1有3位有效数字,
x2有5位有效数字
也就说
它们的有效数字的位数
就等于这两个近似值本身的位数
而X3
它是五位近似值
它只有四位有效数字
分析一下
我们发现有这样的一个特点
就是
用四舍五入得到的规范化的浮点数
每一位都是有效数字
我们说有效数字越多
误差就越小,计算结果
越精确
我们再看一个例子
设计算机数系为F(10, t,L,U)
实数X等于
正负尾数乘以十的c次方
这里a1不等于零
是一个规范化的浮点数
用四舍五入法
把X表示成机器数FL(x)
求机器数的有效数字
绝对误差限
相对误差限
我们首先来求X的机器数
Fl(x)
将fl(x)表示成
正负尾数乘以10的c次方
这里我们将尾数呢
表示成a
首先我们来求尾数a
按照四舍五入法来确定a
如果x的尾数的第t+1位小于5
我们就截取x的尾数的前t位
如果第t+1位大于等于5
我们就向第t位进1
这样
我们获得
机器数的绝对误差限
X减去fl(x)绝对值小于等于
0.5乘10的c-t次方
从而机器数的有效数字的位数
是t位
下面推导机器数
fl(x)的相对误差限
我们将fl(x)的相对误差记为er
er的绝对值
等于X减去fl(x)的绝对值
比上X的绝对值
根据X的表达式
等于正负号尾数乘以10的c次方
那么X的绝对值
大于其尾数的第一位0.a1
乘10的C次方小于
0.(a1+1)乘10的c次方
那么我们可以得到
er的绝对值
它就小于等于
0.5乘10的c-t次方
比上0.a1乘10的C次方
化简之后等于1/2a1
乘10的1-t次方
从相对误差的误差限可以看出
机器数的相对误差限与X无关
只与字长t有关
我们将机器数的相对误差限
定义为机器精度
记为
EPS
也就是EPS等于0.5乘10的-t+1次方
本节介绍了误差与有效数字的概念
通过这一节的介绍
我们要了解相对误差比绝对误差
更能反映
精确数与近似数的差异
因此也更有意义
另外
我们在上一节曾说过
字长t规定了机器数的精度
机器数有单精度与双精度之分一般
单精数的字长是23
约为十进制的七位有效数字
双精度的字长是52
约为十进制的15位有效数字
-1.1 引言
--1.1 引言
-1.2 算法与效率
-1.3 计算机数系与浮点运算
-1.4 误差与有效数字
-1.5 四则运算与函数求值的误差
-1.6 问题的性态与条件数
-1.7 算法数值稳定性
-第1章 作业
--第一章 作业
-2.1 引言 2.2 线性空间
-2.3 内积空间与元素的夹角
-2.4 赋范线性空间
-2.5 向量范数与向量序列极限
-2.6 矩阵范数
--2.6 矩阵范数
-第二章 作业
--第二章 作业
-3.1 引言
--3.1 引言
-3.3 不动点迭代法
--3.2 二分法
-3.4 不动点迭代法的收敛条件
-3.5 牛顿迭代法及其变形
-3.6 迭代法收敛阶
-3.7 重根的计算与加速收敛
-3.8 数值实验
--3.8 数值实验
-第3章 作业
--第3章 作业
-4.1 引言
--4.1 引言
-4.2 Lagrange插值
-4.3 Lagrange插值余项
-4.4 Newton差商插值
-4.5 Hermite插值
-4.6 分段多项式插值
-4.7 三次样条插值
-4.8 数值实验
--4.8 数值实验
-第4章 作业
--第4章 作业
-5.1 函数逼近与曲线拟合基本概念
-5.2 连续函数的最佳平方逼近
-5.3 曲线拟合的最小二乘法
-第5章 作业
--第5章 作业
-6.1 引言 6.2 高斯消元法
-6.3 矩阵分解与应用
-6.4 误差分析 6.5 数值实验
-第6章 作业
--第6章 作业
-7.1 引言 7.2 线性方程组的迭代法(上)
-7.2 线性方程组的迭代法
-7.3 非线性方程组的迭代法
-7.4 数值实验
--7.4 数值实验
-第7章 作业
--第7章 作业
-8.1 引言
--8.1 引言
-8.2 幂法与反幂法
-8.3 矩阵的正交分解
-8.4 QR方法
--8.4 QR方法
-8.5 Jacobi方法
-第8章 作业
--第8章 作业
-9.1 引言
-9.2 牛顿-柯特斯公式
-9.3 复合牛顿-柯特斯公式
-9.4 龙贝格算法
-9.5 高斯型求积公式
-9.6 数值微分
--9.6 数值微分
-10.1 引言
--10.1 引言
-10.2 梯形公式和改进的欧拉方法
-10.3 单步法的误差与稳定性收敛性
-10.4 高阶单步方法
-10.5 线性多步法
-10.6 多步法的误差与稳定性
-10.7 一阶微分方程组与高阶微分方程
-第10章 作业
--第10章 作业