误差

什么是误差?

一个数的精确值与其近似值的差称为误差。
一个数的观察值与其估计值之差称为残差。
  在实际测量中,得到的精确值一般都是离散量。例如:一个教室中有40个学生,显然40就是一个精确值。相反,得到的近似值一般都是连续量。例如:一支铅笔的长度约为13.3cm,13.3cm就是一个近似值。
  在数值计算中,绝大多数情况都不存在精确值,因为误差在数值计算中是不可避免的,我们能够考虑的不是消除误差,而是将误差限制在允许的精度以内。

误差的来源

模型误差

  定量分析客观事物时,要抓住其本质,忽略其次要因素,建立已知量和未知量之间的数学关系式,即数学模型。因为数学模型重点在于客观事物的本质,因而只是客观事物的近似描述,所以必然存在模型误差。
  例如:物体在重力作用下的自由落体运动,下落距离h和时间之间满足自由落体公式 h = 1 2 t 2 h=\frac{1}{2}t^2 h=21t2

这个公式忽略的次要因素是空气阻力,突出的主要因素是下落距离和时间之间的关系。

观测误差

  通过测量和实验得到的数值受工具和方法限制,会有观测误差。

截断误差

  高等数学中引入了极限的定义,具体为离散的无穷级数,连续的微积分,普通的计算机每秒能进行几亿次浮点运算,但是如果运算次数是无穷的话计算机再快也不可能算完的。因而实际计算中用有限来近似无限,也就是无穷过程的截断,这就产生了截断误差。

舍入误差

  数学中的数的位数理论上可以无限长,但是计算机的字长有限,因而只能进行有限位的计算,因而需要将待运算的数进行四舍五入,这就产生了舍入误差。
  例如:圆周率 π \pi π=3.14159265…, 2 \sqrt{2} 2 =1.41421356…等等,在计算机中计算时只能取有限位小数,如对小数点后四位进行四舍五入, π ≈ \pi\approx π 3.1416,舍入误差e=3.1416 − π -\pi π

近似数的误差表示

近似数表示为 近似值 ± \pm ±误差限

绝对误差

  绝对误差就是精确值与近似值的差,记为 e ( x ∗ ) = x − x ∗ e(x*) = x - x* e(x)=xx ∣ e ( x ∗ ) ∣ |e(x*)| e(x)越小,精度越高。
  绝对误差限是绝对误差的上界,记为 ε ( x ∗ ) ≥ \varepsilon(x*)\geq ε(x) ∣ e ( x ∗ ) ∣ |e(x*)| e(x)。引入绝对误差限的目的是方便近似数的误差表示,如果直接使用 近似值 ± \pm ±绝对误差 的方式来表示近似数的话,绝对误差本身便是无限小数(因为连续量可以无限细分),显然很不方便。而有了绝对误差限的概念,将精确值所在的区间准确地表达,而且绝对误差限通常只有一位有效数字。
  四舍五入得到的近似数的绝对误差限为其末位的半个单位。证明略。

相对误差

  相对误差就是绝对误差与精确值的比值,记为 e r = e ( x ∗ ) x = x − x ∗ x e_r=\frac{e(x*)}{x}=\frac{x-x*}{x} er=xe(x)=xxx。在实际问题中,精确值是未知的,因而在计算相对误差时用近似值代替精确值。
  相对误差限是是相对误差的上界,记为 ε r ( x ∗ ) ≥ ε ( x ∗ ) ∣ x ∗ ∣ \varepsilon_r(x*) \geq\frac{\varepsilon(x*)}{|x*|} εr(x)xε(x)

绝对误差和相对误差
  1. 绝对误差是有量纲的,而相对误差是无量纲的,因而相对误差只能用百分数来表示。
  2. 通过绝对误差可以求得相对误差,当然,通过相对误差也可以求得绝对误差。
有效数字

  为什么引入有效数字?
  因为使用误差加减误差限的方式表示近似数,计算近似值的绝对误差或相对误差较为繁琐,而使用有效数字表示近似数不但能够表示近似数而且可以根据有效数字的位数简单计算其精度。
  有效数字就是从第一个非零数开始到绝对误差限的位数的数字的个数。

有效数字
  1. 四舍五入取精确值的前n位作为有效数字,那么该近似数必有n位有效数字。
  2. 有效数字位数相同的两个近似数,绝对误差不一定相同,因为要看其第一个非零的数是第几位。
  3. 精确值可以看作有无穷多位有效数字。

误差传播分析

通过近似值进行运算后的结果一般也是近似值,这一现象称为误差传播。

函数运算误差

一元函数运算误差

ε [ f ( x ∗ ) ] ≈ ∣ f ( x ∗ ) ˙ ∣ e ( x ∗ ) \varepsilon[f(x*)]\approx|\dot{f(x*)}|e(x*) ε[f(x)]f(x)˙e(x)

ε r [ f ( x ∗ ) ] ≈ ∣ f ( x ∗ ) ˙ f ( x ∗ ) ∣ e ( x ∗ ) \varepsilon_r[f(x*)]\approx|\frac{\dot{f(x*)}}{f(x*)}|e(x*) εr[f(x)]f(x)f(x)˙e(x)

推导思路:在x附近将f(x)一阶泰勒展开。
多元函数运算误差

ε [ y ∗ ] ≈ ∑ i = 1 n ∣ ∂ f ( x i ) ∂ x i ∣ e ( x ∗ ) \varepsilon[y*]\approx\sum_{ i=1}^{n}| \frac{ \partial f(x_i) }{\partial x_i} |e(x*) ε[y]i=1nxif(xi)e(x)

ε r [ y ∗ ] ≈ ∑ i = 1 n ∣ ∂ f ( x i ) ∂ x i ∣ e ( x ∗ ) y ∗ \varepsilon_r[y*]\approx\sum_{ i=1}^{n}| \frac{ \partial f(x_i) }{\partial x_i} |\frac{e(x*)}{y*} εr[y]i=1nxif(xi)ye(x)

算术运算误差

  算术运算误差可以通过多元函数运算误差推导得到。
  加法运算时各个加数的系数为1,偏导数也为1,所以加法运算的绝对误差不超过各个加数的绝对误差之和,加法运算的相对误差不超过各个加数中最不准确的那一项的相对误差。
  同理可以得到乘法和除法运算的相对误差和绝对误差公式。这里以两数运算为例写出,

∣ e ( x 1 ∗ x 2 ∗ ) ∣ ≈ ∣ x 1 ∗ ∣ ∣ e ( x 2 ∗ ) ∣ + ∣ x 2 ∗ ∣ ∣ e ( x 1 ∗ ) ∣ |e(x1^* x2^*)| \approx |x1^*||e(x2^*)|+|x2^*||e(x1^*)| e(x1x2)x1e(x2)+x2e(x1)

∣ e ( x 1 ∗ x 2 ∗ ) ∣ ≈ ∣ x 1 ∗ ∣ ∣ e ( x 2 ∗ ) ∣ + ∣ x 2 ∗ ∣ ∣ e ( x 1 ∗ ) ∣ ( x 2 ∗ ) 2 , x 2 ∗ 不 等 于 0 |e(\frac{x1^* }{ x2^*})| \approx \frac{|x1^*||e(x2^*)|+|x2^*||e(x1^*)|}{(x^*_2)^2}, x^*_2 不等于 0 e(x2x1)(x2)2x1e(x2)+x2e(x1),x20

减小算术误差的方法
  1. 避免相近的数相减,两个相近的数相减,会严重损失有效数字
  2. 避免大数加小数,大数和小数相加会将小数隐掉(“吃掉")
  3. 避免绝对值小的数做除数
  4. 减少计算次数
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值