大家好,欢迎来到IT知识分享网。
误差
1. 误差的类型
- 实际问题转化为数学模型时产生的误差称为模型误差
- 在数学模型中观察数据产生的误差叫观察误差
以上两种误差我们在数值分析中不讨论,只研究求解数学模型产生的误差 - 截断误差(方法误差):在设计算法时近似处理寻求一些简化
- 舍入误差:计算机的字长是有限的,每一步运算需要四舍五入
计算机的浮点数系,如果采用 β \beta β进制,则浮点数表示为 x = ± ( d 1 β + d 2 β 2 + . . . + d t β t ) × β e x=\pm(\frac{d_1}{\beta}+\frac{d_2}{\beta^2}+…+\frac{d_t}{\beta^t})\times\beta^e x=±(βd1+β2d2+...+βtdt)×βe
其中 d 1 , d 2 , . . . , d t d_1,d_2,…,d_t d1,d2,...,dt为整数,且$0\le d_i\le \beta-1 $ ( i = 1 , 2 , . . . , t ) (i=1,2,…,t) (i=1,2,...,t)
β \beta β为浮点数的基底,一般取 β = 10 , 2 , 16 \beta=10,2,16 β=10,2,16,自然数t为尾数字长,整数e为浮点数的阶码,有固定的下限L和上限U,即 L ≤ e ≤ U L \le e \le U L≤e≤U,L,U具体数值由计算机规定
可以验证:F中共有 2 ( β − 1 ) β t − 1 ( U − L + 1 ) + 1 2(\beta-1) \beta^{t-1}(U-L+1)+1 2(β−1)βt−1(U−L+1)+1
个规格化的浮点数
记 m = β L − 1 , M = β U ( 1 − β − t ) m=\beta^{L-1},M=\beta^U(1-\beta^{-t}) m=βL−1,M=βU(1−β−t),若 f ∈ F , f ≠ 0 f\in F,f \neq0 f∈F,f=0,则 m ≤ ∣ f ∣ ≤ M m \le |f| \le M m≤∣f∣≤M
注意:浮点数并不充满整个区间 [ M , m ] [M,m] [M,m]和 [ − M , − m ] [-M,-m] [−M,−m],且分布不等距
F是一个有限集,不可能把区间内所有实数都表示出来,由此便产生舍入误差
2. 误差与误差限
- 误差:设 x x x是精确值, x ∗ x^* x∗是他的一个近似值,称 e = x − x ∗ e=x-x^* e=x−x∗
是近似值 x x x的绝对误差,有量纲可正可负 - 误差限: ∣ x − x ∗ ∣ ≤ ϵ |x-x^*|\le \epsilon ∣x−x∗∣≤ϵ称是近似值 x ∗ x^* x∗的误差限, x x x可表示为 x = x ± ϵ x=x\pm \epsilon x=x±ϵ
3.相对误差与相对误差限
- 相对误差 e r = e x = x − x ∗ x ≅ x − x ∗ x ∗ = e x ∗ e_r=\frac{e}{x}=\frac{x-x^*}{x}\cong\frac{x-x^*}{x^*}=\frac{e}{x^*} er=xe=xx−x∗≅x∗x−x∗=x∗e
- 相对误差限 ∣ e r ∣ ≤ ϵ r |e_r|\le \epsilon_r ∣er∣≤ϵr,即 ∣ x − x ∗ ∣ ∣ x ∗ ∣ ≤ ϵ ∣ x ∗ ∣ ≤ ϵ r \frac{|x-x^*|}{|x^*|}\le \frac{\epsilon}{|x^*|}\le \epsilon_r ∣x∗∣∣x−x∗∣≤∣x∗∣ϵ≤ϵr
4.有效数字
如果近似值 x ∗ x^* x∗的误差限是某一位的半个单位,该位到 x ∗ x^* x∗的第一位非零数字共有n位,则称 x ∗ x^* x∗有n位有效数字
例如对10进制数: ( X n ) 10 = ± ( a 1 10 + a 2 1 0 2 + . . . + a n 1 0 n ) × 1 0 m (X_n)_{10}=\pm(\frac{a_1}{10}+\frac{a_2}{10^2}+…+\frac{a_n}{10^n})\times 10^m (Xn)10=±(10a1+102a2+...+10nan)×10m
其中 a 1 a_1 a1是1到9的数字, a 2 , . . . , a n a_2,…,a_n a2,...,an是0到9的数字,则误差界为; ∣ X − X ∗ ∣ ≤ ϵ = 1 2 × 1 0 m × 1 1 0 n = 1 2 × 1 0 m − n |X-X^*|\le \epsilon=\frac{1}{2}\times10^m\times\frac{1}{10^n}=\frac{1}{2}\times10^{m-n} ∣X−X∗∣≤ϵ=21×10m×10n1=21×10m−n
5.有效数字与相对误差限的关系
定理1:设近似值 x ∗ = ± 0. a 1 a 2 . . . a n × 1 0 m x^*=\pm0.a_1a_2…a_n\times10^m x∗=±0.a1a2...an×10m有n位有效数字,则其相对误差限为: ∣ x − x ∗ ∣ ∣ x ∣ ≤ 1 2 a 1 × 1 0 − ( n − 1 ) \frac{|x-x^*|}{|x|}\le\frac{1}{2a_1}\times10^{-(n-1)} ∣x∣∣x−x∗∣≤2a11×10−(n−1)
定理2:设近似值 x ∗ = ± 0. a 1 a 2 . . . a n × 1 0 m x^*=\pm0.a_1a_2…a_n\times10^m x∗=±0.a1a2...an×10m的相对误差限不大于 1 2 ( a 1 + 1 ) × 1 0 − ( n − 1 ) \frac{1}{2(a_1+1)} \times10^{-(n-1)} 2(a1+1)1×10−(n−1)则他至少有n位有效数字
6.和差积商的绝对误差限
- ϵ ( x ∗ + y ∗ ) = ϵ ( x ∗ ) + ϵ ( y ∗ ) \epsilon(x^*+y^*)=\epsilon(x^*)+\epsilon(y^*) ϵ(x∗+y∗)=ϵ(x∗)+ϵ(y∗)
- ϵ ( x ∗ − y ∗ ) = ϵ ( x ∗ ) + ϵ ( y ∗ ) \epsilon(x^*-y^*)=\epsilon(x^*)+\epsilon(y^*) ϵ(x∗−y∗)=ϵ(x∗)+ϵ(y∗)
- ϵ ( x ∗ ⋅ y ∗ ) ≈ ϵ ( x ∗ ) ⋅ ∣ y ∗ ∣ + ϵ ( y ∗ ) ⋅ ∣ x ∗ ∣ \epsilon(x^*\cdot y^*)\approx \epsilon(x^*)\cdot |y^*|+\epsilon(y^*)\cdot |x^*| ϵ(x∗⋅y∗)≈ϵ(x∗)⋅∣y∗∣+ϵ(y∗)⋅∣x∗∣
- ϵ ( x ∗ y ∗ ) ≈ ϵ ( x ∗ ) ⋅ ∣ y ∗ ∣ + ϵ ( y ∗ ) ⋅ ∣ x ∗ ∣ ∣ y ∗ ∣ 2 \epsilon(\frac{x^*}{y^*})\approx\frac{\epsilon(x^*)\cdot|y^*|+\epsilon(y^*)\cdot|x^*|}{|y^*|^2} ϵ(y∗x∗)≈∣y∗∣2ϵ(x∗)⋅∣y∗∣+ϵ(y∗)⋅∣x∗∣
7.函数的误差限
- 一元函数:设 f ( x ) f(x) f(x)是一元函数, x x x的近似值为 x ∗ x^* x∗,以 f ( x ∗ ) f(x^*) f(x∗)近似 f ( x ) f(x) f(x),
则函数的误差限为 ϵ ( f ( x ∗ ) ) ≈ ∣ f ′ ( x ∗ ) ∣ ⋅ ϵ ( x ∗ ) \epsilon(f(x^*))\approx|f'(x^*)|\cdot \epsilon(x^*) ϵ(f(x∗))≈∣f′(x∗)∣⋅ϵ(x∗) - 多元函数:设 A = f ( x 1 , x 2 , . . . , x n ) , x 1 , x 2 , . . . , x n A=f(x_1,x_2,…,x_n),x_1,x_2,…,x_n A=f(x1,x2,...,xn),x1,x2,...,xn的近似值是 x 1 ∗ , x 2 ∗ , . . . , x n ∗ x_1^*,x_2^*,…,x_n^* x1∗,x2∗,...,xn∗,则A的近似值 A ∗ = f ( x 1 ∗ , x 2 ∗ , . . . , x n ∗ ) A^*=f(x_1^*,x_2^*,…,x_n^*) A∗=f(x1∗,x2∗,...,xn∗),则函数误差限为 ϵ ( A ∗ ) ≈ ∑ k = 1 n ∣ ( ∂ f ∂ x k ) ∗ ∣ ⋅ ϵ ( x k ∗ ) \epsilon(A^*)\approx \sum_{k=1}^n|( \frac{\partial f}{\partial x_k} )^*|\cdot\epsilon(x^*_k) ϵ(A∗)≈k=1∑n∣(∂xk∂f)∗∣⋅ϵ(xk∗)
相对误差限:
ϵ r ( A ∗ ) = ϵ ( A ∗ ) A ∗ ≈ ∑ k = 1 n ∣ ( ∂ f ∂ x k ) ∗ ∣ ⋅ ϵ ( x k ∗ ) ∣ A ∗ ∣ \epsilon_r(A^*)=\frac{\epsilon(A^*)}{A^*}\approx\sum_{k=1}^n|( \frac{\partial f}{\partial x_k} )^*|\cdot\frac{\epsilon(x^*_k)}{|A^*|} ϵr(A∗)=A∗ϵ(A∗)≈k=1∑n∣(∂xk∂f)∗∣⋅∣A∗∣ϵ(xk∗)
8.误差分析的基本原则
- 避免两个相近数相减
两个相近数相减,有效数字会大大损失 - 避免除数的绝对值远小于被除数的绝对值
- 防止大数吃掉小数
由于计算机位数有限,在数域中成立的运算法则在数值运算中可能不成立,比如结合律 - 简化计算步骤,减少运算次数
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/132950.html