数值计算方法-误差
误差的来源与分类
1.模型误差
数学模型,即表示计算的公式或方程,本身就是近似的,就不就不精确,这种情况导致的误差,就叫模型误差。
2.观测误差
对物理世界中的参数进行观测时产生的误差,比如测定温度,长度,电压,无论用多么精密的工具,肯定都会存在误差。
3.截断误差(方法误差)
当数学模型不能得到精确解时,常要用数值方法求出它的近似解,近似解与精准解之间的误差,即为截断误差。可微函数f(x)用在x=0附近的值可以用泰勒展开式
近似公式代替,那么此刻的截断误差为
4.舍入误差
由于计算机字长有限和浮点数表示方法的问题,计算机会按照舍入原则对超出其表示精度的数据舍入,导致结果的不精确。
例如
模型误差和截断误差的区别
根据前面所说,这两种误差都是公式上存在误差。
实际上泰勒公式本身这个模型是精确的,只是我们实际计算的数值方法是近似的,这就是二者区别。数学模型是精确的情况下,为了能够计算(无穷多项是计算不出来的),我们会使用带有截断误差的近似数值方法。
不言而喻在数值分析和计算方法这门课中,我们主要研究后面两种,即截断误差和舍入误差。
误差与有效数字
设 x 为 精 准 值 , x ∗ 为 x 的 近 似 值 , 则 称 e ∗ = x ∗ − x 为 近 似 值 的 绝 对 误 差 , 简 称 误 差 。 设x为精准值,x^{*}为x的近似值,则称e^{*}=x^{*}-x为近似值的绝对误差 ,简称误差。 设x为精准值,x∗为x的近似值,则称e∗=x∗−x为近似值的绝对误差,简称误差。
∣ e ∗ ∣ < ε |e^{*}|<\varepsilon ∣e∗∣<ε 则 称 ε 为 近 似 值 x 的 绝 对 误 差 限 或 者 绝 对 误 差 界 , 简 称 误 差 限 、 误 差 界 , 它 总 是 正 数 则称\varepsilon为近似值x的绝对误差限或者绝对误差界,简称误差限、误差界,它总是正数 则称ε为近似值x的绝对误差限或者绝对误差界,简称误差限、误差界,它总是正数
当然误差限不能完全表示近似值的好坏。(例如x=10±1,与y=1000±5)所以,除了考虑误差大小之外,还应该考虑x本身的大小。
相对误差为 e r ∗ = e x ∗ = x ∗ − x x ∗ e^{*}_{r } = \frac{e}{x^*}=\frac{x^*-x}{x^*}\mathcal{} er∗=x∗e=x∗x∗−x
同 时 , 相 对 误 差 绝 对 值 的 上 界 ∣ e r ∣ ≤ ε r = ε ∣ x ∣ 称 ε 为 相 对 误 差 限 或 相 对 误 差 界 同时,相对误差绝对值的上界 |e_r|\le\varepsilon_r=\frac{\varepsilon}{|x|} 称\varepsilon为相对误差限或相对误差界 同时,相对误差绝对值的上界∣er∣≤εr=∣x∣ε称ε为相对误差限或相对误差界
相对误差也可正可负,它的绝对值上限称为相对误差限
当 精 确 值 x 有 多 位 数 时 , 常 常 使 用 四 舍 五 入 的 原 则 得 到 x 的 前 几 位 近 似 值 x ∗ 当精确值x有多位数时,常常使用四舍五入的原则得到x的前几位近似值x^* 当精确值x有多位数时,常常使用四舍五入的原则得到x的前几位近似值x∗
例 如 x = π = 3.14159265.... 例如x=\pi=3.14159265.... 例如x=π=3.14159265....
取 三 位 x 3 ∗ , ε 3 ∗ < = 0.002 取三位 x^*_3,\varepsilon^*_3<=0.002 取三位x3∗,ε3∗<=0.002
有效数字
设 数 x 是 x ∗ 的 近 似 值 , 如 果 x 的 绝 对 误 差 限 是 它 的 某 一 数 位 的 半 个 单 位 , 并 且 从 x 左 起 第 一 个 非 零 数 字 到 该 位 共 有 n 位 , 那 么 就 称 这 n 个 数 字 为 x 的 有 效 数 字 , 也 称 用 x 近 似 x ∗ 时 具 有 n 位 有 效 数 字 。 设数x是 x^* 的近似值,如果x的绝对误差限是它的某一数位的半个单位,并且从x左起第一个非零数字到该位共有n位,那么就称这n个数字为x的有效数字,也称用x近似x^* 时具有n位有效数字。 设数x是x∗的近似值,如果x的绝对误差限是它的某一数位的半个单位,并且从x左起第一个非零数字到该位共有n位,那么就称这n个数字为x的有效数字,也称用x近似x∗时具有n位有效数字。
则 x ∗ = ± 1 0 m ∗ ( a 1 + a 2 ∗ 1 0 − 1 + . . . + a n ∗ 1 0 − ( n − 1 ) ) 其 中 a i 是 0 到 9 中 的 一 个 数 字 , a 1 ! = 0 , 且 则x^*=\pm10^m*(a_1+a_2*10^{-1}+...+a_n*10^{-(n-1)})其中a_i是0到9中的一个数字,a_1!=0,且 则x∗=±10m∗(a1+a2∗10−1+...+an∗10−(n−1))其中ai是0到9中的一个数字,a1!=0,且
∣ x − x ∗ ∣ < = 1 2 ∗ 1 0 m − n + 1 |x-x^*|<=\frac12*10^{m-n+1} ∣x−x∗∣<=21∗10m−n+1
注意相对误差与相对误差限是无量纲的,而绝对误差与误差限是有量纲。
定理一
设 近 似 数 x ∗ 表 示 为 x ∗ = ± 1 0 m ∗ ( a 1 + a 2 ∗ 1 0 − 1 + . . . + a l ∗ 1 0 − ( l − 1 ) ) 设近似数x^*表示为x^*=\pm10^m*(a_1+a_2*10^{-1}+...+a_l*10^{-(l-1)}) 设近似数x∗表示为x∗=±10m∗(a1+a2∗10−1+...+al∗10−(l−1))
若 x ∗ 有 n 位 有 效 数 字 , 则 其 相 对 误 差 限 ε r ∗ < = 1 ( 2 a 1 ) ∗ 1 0 − ( n − 1 ) 若x^*有n位有效数字,则其相对误差限\varepsilon^*_r<=\frac1{(2a_1)}*10^{-(n-1)} 若x∗有n位有效数字,则其相对误差限εr∗<=(2a1)1∗10−(n−1)
反 之 , 若 x ∗ 其 相 对 误 差 限 ε r ∗ < = 1 ( 2 a 1 ) ∗ 1 0 − ( n − 1 ) , 则 x ∗ 至 少 具 有 n 位 有 效 数 字 反之,若x^*其相对误差限\varepsilon^*_r<=\frac1{(2a_1)}*10^{-(n-1)},则x^*至少具有n位有效数字 反之,若x∗其相对误差限εr∗<=(2a1)1∗10−(n−1),则x∗至少具有n位有效数字