数值计算方法笔记01——绪论

参考教材:孙志忠, 吴宏伟, 等. 计算方法与实习[M]. 第五版. 南京: 东南大学出版社, 2011:1-16.

误差的来源

  1. 模型误差:数学建模与实际问题之间出现的误差
  2. 观测误差:观测时得到的误差
  3. 截断误差:有限过程代替无限过程的误差,是本课中需要特别重视的
  4. 舍入误差

误差是不可避免的,要求绝对准确、绝对严格实际上是办不到的。前两种误差是客观存在的,后两种误差是由计算方法及计算过程所引起的。本课程研究数学问题的数值解法,因此只涉及后两种误差。

绝对误差与绝对误差限

设 $x^*$ 为准确值, $x$ 是 $x^*$ 的一个近似值,称 $e=x^*-x$ 为近似值 $x$ 的绝对误差,简称误差

误差 $e$ 可正可负,绝对误差不是误差绝对值。因为通常不能算出准确值 $x^*$ 和误差 $e$ ,只能得到误差的某个范围,即:

$|e|=|x^*-x|\leq\varepsilon$

称 $\varepsilon$ 为近似值 $x$ 的绝对误差限,简称误差限。也可以表示为 $x^*=x\pm\varepsilon$

对于给定的 $\varepsilon$ ,若 $|x^*-x|\leq\varepsilon$ ,则在允许误差 $\varepsilon$ 范围内认为 $x$ 就是 $x^*$ ,也即近似值 $x$ 和真值 $x^*$ 关于允许误差 $\varepsilon$ 可以看成是“重合”的,或者说值 $x$ 关于允许误差 $\varepsilon$ 是“准确”的。

相对误差与相对误差限

相对误差是误差与真值的比值,记作 $e_r=\frac{x^*-x}{x^*}=\frac{e}{x^*}$

实际计算中,真值 $x^*$ 难以求得。所以常以 $\bar{e}_r=\frac{x^*-x}{x}$ 作为相对误差。

因为 $\bar e_r-e_r=\frac{\bar e^2_r}{1+\bar e_r}=\frac{e^2_r}{1-e_r}$ ,所以当 $\bar e_r$ 与 $e_r$ 有一为小量时, $\bar e_r-e_r$ 为该小量的二阶小量。

计算相对误差与计算绝对误差有相同的困难,所以通常也只考虑相对误差限。若存在正数 $\epsilon_r$ 使 $|e_r|\leq\epsilon_r$ 或 $|\bar e_r|\leq\epsilon_r$ ,则称 $\epsilon_r$ 为 $x$ 的相对误差限

有效数字

如果近似值 $x$ 的误差限是其某一位上的半个单位,且该位直到 $x$ 的第 1 位非零数字一共有 $n$ 位,则称近似值 $x$ 有 $n$ 位有效数字

如: $x^*=\sqrt{3}=1.732050808\cdots$ 。取 3 位有效数字, $x=1.73,\varepsilon\lt0.005$ 。

需要注意, $x=1.731$ 时 $e=0.00150808\cdots\lt0.005$ ,仍是三位有效数字。有效数字与数字位数相等的数叫做有效数

有效数位 $n$ 越多,则绝对误差 $e$ 越小

若近似数 $x$ 具有 $n$ 位有效数字,则其相对误差限 $|e_r(x)|\le\frac{1}{2a_1}\times10^{1-n}$

数据误差的影响

一元函数情形

设 $y=f(x)$ ,则 $y^*=f(x^*)$ ,由 Taylor 公式展开

$e(y)=y^*-y=f(x^*)-f(x)\approx f’(x)(x^*-x)=f’(x)e(x)$

发现当 $f’(x)\gt1$ 时误差扩大, $f’(x)\lt1$ 时误差减小

两遍除以 $y=f(x)$ 得

$e_r(y)=\frac{e(y)}y\approx\frac{f’(x)}{f(x)}xe_r(x)$

多元函数情形

由多元函数 Taylor 展开,类似可得

$e(y)\approx\sum_{i=1}^nf_i’(x_1,x_2,\cdots,x_n)e(x_i)$

$e_r(y)\approx\sum_{i=1}^n\frac{f_i’(x_1,x_2,\cdots,x_n)}{f(x_1,x_2,\cdots,x_n)}x_ie_r(x_i)$

运算的误差估计

机器数系

略(P7)

误差危害的防止

  1. 选用数值稳定性好的算法,以控制舍入误差高速增长
  2. 防止大数“吃掉”小数
  3. 尽量避免相近数相减
  4. 尽量避免用绝对值很大的数作乘数
  5. 注意简化计算步骤,减少运算次数