近似数算术运算的误差和有效数位
- 近似数算术运算的误差
给定函数
u
=
f
(
x
,
y
)
u=f(x,y)
u=f(x,y),设
x
,
y
x,y
x,y分别为
x
∗
,
y
∗
x^*,y^*
x∗,y∗的近似值,则绝对误差为
e
(
u
)
=
f
(
x
∗
,
y
∗
)
−
f
(
x
,
y
)
≈
∂
f
(
x
,
y
)
∂
x
(
x
∗
−
x
)
+
∂
f
(
x
,
y
)
∂
y
(
y
∗
−
y
)
e(u)=f(x^*,y^*)-f(x,y)\approx \frac{\partial f(x,y)}{\partial x}(x^*-x)+\frac{\partial f(x,y)}{\partial y}(y^*-y)
e(u)=f(x∗,y∗)−f(x,y)≈∂x∂f(x,y)(x∗−x)+∂y∂f(x,y)(y∗−y)
即
e
(
u
)
=
∂
f
(
x
,
y
)
∂
x
e
(
x
)
+
∂
f
(
x
,
y
)
∂
y
e
(
y
)
(3)
e(u)=\frac{\partial f(x,y)}{\partial x}e(x)+\frac{\partial f(x,y)}{\partial y}e(y) \tag{3}
e(u)=∂x∂f(x,y)e(x)+∂y∂f(x,y)e(y)(3)
而相对误差为
e
r
(
u
)
=
e
(
u
)
u
≈
∂
f
(
x
,
y
)
∂
x
e
(
x
)
u
+
∂
f
(
x
,
y
)
∂
y
e
(
y
)
u
e_r(u)=\frac{e(u)}{u}\approx \frac{\partial f(x,y)}{\partial x}\frac{e(x)}{u}+\frac{\partial f(x,y)}{\partial y}\frac{e(y)}{u}
er(u)=ue(u)≈∂x∂f(x,y)ue(x)+∂y∂f(x,y)ue(y),即
e
r
(
u
)
=
∂
f
(
x
,
y
)
∂
x
x
u
e
r
(
x
)
+
∂
f
(
x
,
y
)
∂
y
y
u
e
r
(
y
)
(4)
e_r(u)=\frac{\partial f(x,y)}{\partial x}\frac{x}{u}e_r(x)+\frac{\partial f(x,y)}{\partial y}\frac{y}{u}e_r(y) \tag{4}
er(u)=∂x∂f(x,y)uxer(x)+∂y∂f(x,y)uyer(y)(4)
由(3)、(4)两式可得到两个近似数进行算术运算的计算公式为:
e
(
x
+
y
)
=
e
(
x
)
+
e
(
y
)
,
e
r
(
x
+
y
)
=
x
x
+
y
e
r
(
x
)
e
(
x
−
y
)
=
e
(
x
)
−
e
(
y
)
,
e
r
(
x
−
y
)
=
x
x
−
y
e
r
(
x
)
+
y
x
−
y
e
r
(
y
)
e
(
x
y
)
≈
y
⋅
e
(
x
)
−
x
⋅
e
(
y
)
y
2
,
e
r
(
x
y
)
≈
e
r
(
x
y
)
≈
e
r
(
x
)
−
e
r
(
y
)
⋅
y
≠
0
e(x+y)=e(x)+e(y),\quad e_r(x+y)=\frac{x}{x+y}e_r(x) \\ e(x-y)=e(x)-e(y),\quad e_r(x-y)=\frac{x}{x-y}e_r(x)+\frac{y}{x-y}e_r(y) \\ e(\frac{x}{y})\approx \frac{y·e(x)-x·e(y)}{y^2},\quad e_r(\frac{x}{y})\approx e_r(\frac{x}{y})\approx e_r(x)-e_r(y)·y\neq 0
e(x+y)=e(x)+e(y),er(x+y)=x+yxer(x)e(x−y)=e(x)−e(y),er(x−y)=x−yxer(x)+x−yyer(y)e(yx)≈y2y⋅e(x)−x⋅e(y),er(yx)≈er(yx)≈er(x)−er(y)⋅y=0
- 近似数算运算的有效数位
1)加减运算
近似数进行加减运算时,把其中小数位数较多的数四舍五入,使其比小数位数最少的数多一位小数,计算结果保留的小数位数与原近似数中小数位数最少者相同。例如:
x
=
2.718
,
y
=
3.40823
x
+
y
≈
2.718
+
3.4082
≈
6.126
x
−
y
≈
2.718
−
3.4082
≈
−
0.690
x=2.718,y=3.40823 \\ x+y\approx 2.718+3.4082\approx 6.126 \\ x-y\approx 2.718-3.4082\approx -0.690
x=2.718,y=3.40823x+y≈2.718+3.4082≈6.126x−y≈2.718−3.4082≈−0.690
2)乘除运算
近似数进行乘除运算时,各因子保留的位数应比有效数字位数最少者的位数多一位,所得结果的有效位数字与原近似数中有效数字位数最少者的位数最多少一位。例如:
x
=
2.501
,
y
=
1.2
x
×
y
=
2.50
×
1.2
≈
3.0
x
÷
y
=
2.50
÷
1.2
≈
2.1
x=2.501,y=1.2 \\ x\times y = 2.50\times 1.2 \approx 3.0\\ x\div y=2.50\div 1.2 \approx 2.1
x=2.501,y=1.2x×y=2.50×1.2≈3.0x÷y=2.50÷1.2≈2.1
3)乘方与开方运算
近似数在进行乘方与开方运算时,原来近似数有几位有效数字,计算结果仍然保留几位有效数字。例如
x
=
1.2
x
2
≈
1.4
,
x
≈
1.1
x=1.2 \\ x^2\approx 1.4,\quad \sqrt x\approx 1.1
x=1.2x2≈1.4,x≈1.1
4)对数运算
近似数在进行对数运算时,所取对数的位数与其真数的有效数字位数相同。例如:
l
g
2.718
≈
0.4343
,
l
g
0.0618
≈
−
1.21
lg2.718\approx 0.4343 , \quad lg0.0618\approx -1.21
lg2.718≈0.4343,lg0.0618≈−1.21
在实际计算过程中,中间计算结果应比上述各法则规定的位数多一位,在进行最后一次计算时这一位要进行四舍五入。