数值计算引论
本文参考书为马东升著《数值计算方法》
误差的来源
-
观测误差(测量误差)
观测或实验所得到的参数与真值的误差
-
模型误差(描述误差)
建立的数学模型与实际事物的差距。如自由落体的数学模型 s = 1 2 g t 2 s=\dfrac 12gt^2 s=21gt2 忽略了空气阻力
-
截断误差(方法误差)
许多数学运算是通过极限过程来定义的,而计算机只能完成有限次运算。故实际应用需要将解题方案加工成有限序列,即表现为无穷过程的截断
例:数学模型是无穷级数
∑ k = 0 + ∞ 1 k ! f ( k ) ( x 0 ) \sum_{k=0}^{+\infty}\frac 1{k!}f^{(k)}(x_0) k=0∑+∞k!1f(k)(x0)
实际计算中,只能截取前面的有限项
∑ k = 0 n − 1 1 k ! f ( k ) ( x 0 ) \sum_{k=0}^{n-1}\frac 1{k!}f^{(k)}(x_0) k=0∑n−1k!1f(k)(x0)
即舍去无穷级数后半段,产生了截断误差
-
舍入误差(计算误差)
因为受计算机字长限制,参与运算的数据总是只能具有有限位,原始数据表示可能产生误差,每一次运算又可能产生新的误差
例:圆周率只能存储有限位,如 π \pi π 存储为四位小数 3.1416 3.1416 3.1416 ,则
3.1416 − π = 0.0000073 ⋯ 3.1416-\pi=0.0000073\cdots 3.1416−π=0.0000073⋯
即为舍入误差
近似数的误差表示
-
绝对误差
设 x ∗ x^* x∗ 为准确值 x x x 的一个近似值,称
e ( x ∗ ) = x − x x e(x^*)=x-x^x e(x∗)=x−xx
是近似值 x x x 的绝对误差。简记为 e ∗ e^* e∗因为准确值往往不知道,故定义:若
∣ e ∗ ∣ = ∣ x − x ∗ ∣ ≤ ε ( x ∗ ) |e^*|=|x-x^*|\le \varepsilon(x^*) ∣e∗∣=∣x−x∗∣≤ε(x∗)
则称 ε ( x ∗ ) \varepsilon(x^*) ε(x∗) 为绝对误差限。简记为 ε ∗ \varepsilon^* ε∗例:
四舍五入误差限
∣ x − x ∗ ∣ ≤ 1 2 × 1 0 m − n |x-x^*|\le \dfrac 12 \times 10^{m-n} ∣x−x∗∣≤21×10m−n
即四舍五入得到的近似数的误差限是末位的半个单位例: 圆周率四舍五入近似数3.1416,求其误差限
解:
- 法1,误差限是末位的半个单位
ε ∗ = 1 2 × 1 0 − 4 \varepsilon ^*=\dfrac 12\times 10^{-4} ε∗=21×10−4
- 法2(主要方法)
ε ∗ = 1 2 × 1 0 m − n , m = 1 , n = 5 \varepsilon^*=\dfrac 12\times10^{m-n}\ ,\ m=1\ ,\ n=5 ε∗=21×10m−n , m=1 , n=5
故
m − n = − 4 , ε ∗ = 1 2 × 1 0 − 4 m-n=-4\ ,\ \varepsilon ^*=\dfrac 12\times 10^{-4} m−n=−4 , ε∗=21×