数值分析复习——绪论

一、绪论

误差的基本概念

绝对误差
  • x ∗ x^* x 为准确值, x x x x ∗ x^* x 的一个近似值,记 e ( x ) = x ∗ − x \pmb{{e(x)}=x^*-x} e(x)=xxe(x)=xxe(x)=xx,称 e ( x ) e(x) e(x) 为近似值 x x x绝对误差
  • 绝对误差不是误差的绝对值
  • 若存在 ϵ > 0 \epsilon > 0 ϵ>0,使得 ∣ e ( x ) ∣ = ∣ x ∗ − x ∣ ≤ ϵ \pmb{|e(x)|=|x^*-x| \leq \epsilon} e(x)=xxϵe(x)=xxϵe(x)=xxϵ,则 ϵ \epsilon ϵ 称为近似值的绝对误差限
相对误差
  • x ∗ x^* x 为准确值, x x x x ∗ x^* x 的一个近似值,记 e r ( x ) = x ∗ − x x ∗ = e ( x ) x ∗ \pmb{e_r(x)=\frac{x^*-x}{x^*}=\frac{e(x)}{x^*}} er(x)=xxx=xe(x)er(x)=xxx=xe(x)er(x)=xxx=xe(x),则称 e r ( x ) e_r(x) er(x) 为近似值 x x x相对误差
  • 由于精确值难以求得,通常以 e ‾ r ( x ) = x ∗ − x x \pmb{\overline{e}_r(x)=\frac{x^*-x}{x}} er(x)=xxxer(x)=xxxer(x)=xxx 作为相对误差
有效数
  • 如果近似值 x x x 的绝对误差限是其某一位的半个单位,且该位直到 x x x 的第一个非零数字之间共有 n 位,则称 x x x 具有 n 位有效数字,用这 n 位有效数字表示的近似值称为有效数
  • π \pi π 的近似值取 x 1 = 3.14 x_1=3.14 x1=3.14,则 ∣ π − x 1 ∣ = 0.00159... < 0.005 = 1 2 × 1 0 − 2 |\pi-x_1|=0.00159...<0.005=\frac{1}{2} \times 10^{-2} πx1=0.00159...<0.005=21×102,所以 x 1 x_1 x1 有 3 位有效数字

数据误差对函数值的影响

x 1 ∗ ,   x 2 ∗ x^*_1,\ x^*_2 x1, x2 为准确值, y ∗ = f ( x 1 ∗ , x 2 ∗ ) ,   x 1 ,   x 2 y^*=f(x^*_1, x^*_2),\ x_1,\ x_2 y=f(x1,x2), x1, x2 为对应的近似值, y = f ( x 1 ,   x 2 ) y=f(x_1,\ x_2) y=f(x1, x2),由二元函数 Taylor 展开得
e ( y ) = y ∗ − y = f ( x 1 ∗ , x 2 ∗ ) − f ( x 1 , x 2 ) ≈ ∂ f ( x 1 , x 2 ) ∂ x 1 ( x 1 ∗ − x 1 ) + ∂ f ( x 1 , x 2 ) ∂ x 2 ( x 2 ∗ − x 2 ) ≈ ∂ f ( x 1 , x 2 ) ∂ x 1 e ( x 1 ) + ∂ f ( x 1 , x 2 ) ∂ x 2 e ( x 2 )   ① e r ( y ) = e ( y ) y ≈ ∂ f ( x 1 , x 2 ) ∂ x 1 x 1 f ( x 1 , x 2 ) e r ( x 1 ) + ∂ f ( x 1 , x 2 ) ∂ x 2 x 2 f ( x 1 , x 2 ) e r ( x 2 )   ② \begin{aligned} e(y) &= y^*-y=f(x_1^*,x_2^*)-f(x_1, x_2) \\ &\approx \frac{\partial f(x_1, x_2)}{\partial x_1}(x^*_1-x_1)+\frac{\partial f(x_1, x_2)}{\partial x_2}(x^*_2-x_2) \\ &\approx \frac{\partial f(x_1, x_2)}{\partial x_1}e(x_1)+\frac{\partial f(x_1, x_2)}{\partial x_2}e(x_2) \ ①\\ \\ e_r(y) &= \frac{e(y)}{y} \approx \frac{\partial f(x_1, x_2)}{\partial x_1} \frac{x_1}{f(x_1, x_2)}e_r(x_1)+\frac{\partial f(x_1, x_2)}{\partial x_2}\frac{x_2}{f(x_1, x_2)}e_r(x_2)\ ② \end{aligned} e(y)er(y)=yy=f(x1,x2)f(x1,x2)x1f(x1,x2)(x1x1)+x2f(x1,x2)(x2x2)x1f(x1,x2)e(x1)+x2f(x1,x2)e(x2) =ye(y)x1f(x1,x2)f(x1,x2)x1er(x1)+x2f(x1,x2)f(x1,x2)x2er(x2) 
利用 ① 和 ② 可得
e ( x 1 + x 2 ) = e ( x 1 ) + e ( x 2 ) e ( x 1 − x 2 ) = e ( x 1 ) − e ( x 2 ) e ( x 1 x 2 ) ≈ x 2 e ( x 1 ) + x 1 e ( x 2 ) e ( x 1 x 2 ) ≈ 1 x 2 e ( x 1 ) − x 1 x 2 2 e ( x 2 ) e r ( x 1 + x 2 ) ≈ x 1 x 1 + x 2 e r ( x 1 ) + x 2 x 1 + x 2 e r ( x 2 ) e r ( x 1 − x 2 ) ≈ x 1 x 1 − x 2 e r ( x 1 ) − x 2 x 1 − x 2 e r ( x 2 ) e r ( x 1 x 2 ) ≈ e r ( x 1 ) + e r ( x 2 ) e r ( x 1 x 2 ) ≈ e r ( x 1 ) − e r ( x 2 ) \begin{aligned} &e(x_1+x_2)=e(x_1)+e(x_2) \\ &e(x_1-x_2) = e(x_1)-e(x_2) \\ &e(x_1x_2) \approx x_2e(x_1)+x_1e(x_2) \\ &e(\frac{x_1}{x_2}) \approx \frac{1}{x_2}e(x_1)-\frac{x_1}{x_2^2}e(x_2) \\ &e_r(x_1+x_2) \approx \frac{x_1}{x_1+x_2}e_r(x_1)+\frac{x_2}{x_1+x_2}e_r(x_2) \\ &e_r(x_1-x_2) \approx \frac{x_1}{x_1-x_2}e_r(x_1)-\frac{x_2}{x_1-x_2}e_r(x_2) \\ &e_r(x_1x_2) \approx e_r(x_1)+e_r(x_2) \\ &e_r(\frac{x_1}{x_2}) \approx e_r(x_1)-e_r(x_2) \end{aligned} e(x1+x2)=e(x1)+e(x2)e(x1x2)=e(x1)e(x2)e(x1x2)x2e(x1)+x1e(x2)e(x2x1)x21e(x1)x22x1e(x2)er(x1+x2)x1+x2x1er(x1)+x1+x2x2er(x2)er(x1x2)x1x2x1er(x1)x1x2x2er(x2)er(x1x2)er(x1)+er(x2)er(x2x1)er(x1)er(x2)

例子

x = 0.1230 ,   y = 1.234 x=0.1230,\ y=1.234 x=0.1230, y=1.234 均为有效数字,试分析 ( x − y ) (x-y) (xy) x 2 cos ⁡ ( y ) x^2 \cos(y) x2cos(y) 得绝对误差限、相对误差限和有效数字

:由条件有 ∣ e ( x ) ∣ ≤ 1 2 × 1 0 − 4 ,   ∣ e ( y ) ∣ ≤ 1 2 × 1 0 − 3 |e(x)| \leq \frac{1}{2} \times 10^{-4},\ |e(y)| \leq \frac{1}{2} \times 10^{-3} e(x)21×104, e(y)21×103,则
∣ e ( x − y ) ∣ = ∣ e ( x ) − e ( y ) ∣ ≤ ∣ e ( x ) ∣ + ∣ e ( y ) ∣ ≤ 0.55 × 1 0 − 3 ∣ e r ( x − y ) ∣ = ∣ e ( x − y ) x − y ∣ ≤ ∣ 0.55 × 1 0 − 3 0.123 − 1.234 ∣ = 0.4950 × 1 0 − 3 ∣ e ( x 2 cos ⁡ y ) ∣ ≈ ∣ 2 x cos ⁡ y e ( x ) − x 2 sin ⁡ y e ( y ) ∣ ≤ 2 x ∣ cos ⁡ y ∣ ∣ e ( x ) ∣ + x 2 ∣ sin ⁡ y ∣ ∣ e ( y ) ∣ ≤ 0.1120 × 1 0 − 4 ∣ e r ( x 2 cos ⁡ y ) ∣ = ∣ e ( x 2 cos ⁡ y ) x 2 cos ⁡ y ∣ ≤ 0.2240 × 1 0 − 2 \begin{aligned} |e(x-y)| &= |e(x)-e(y)| \leq |e(x)|+|e(y)| \leq 0.55 \times 10^{-3} \\ |e_r(x-y)| &= |\frac{e(x-y)}{x-y}| \leq |\frac{0.55 \times 10^{-3}}{0.123-1.234}|=0.4950 \times 10^{-3} \\ |e(x^2\cos{y})| &\approx |2x\cos{y}e(x)-x^2\sin{y}e(y)| \\ &\leq 2x|\cos{y}||e(x)|+x^2|\sin{y}||e(y)| \leq 0.1120 \times 10^{-4} \\ |e_r(x^2\cos{y})| &= |\frac{e(x^2\cos{y})}{x^2\cos{y}}| \leq 0.2240 \times 10^{-2} \end{aligned} e(xy)er(xy)e(x2cosy)er(x2cosy)=e(x)e(y)e(x)+e(y)0.55×103=xye(xy)0.1231.2340.55×103=0.4950×1032xcosye(x)x2sinye(y)2xcosye(x)+x2sinye(y)0.1120×104=x2cosye(x2cosy)0.2240×102
由上可知,

∣ e ( x − y ) ∣ ≤ 0.55 × 1 0 − 3 < 1 2 × 1 0 − 2 ,   x − y = − 1.111 |e(x-y)|\leq0.55 \times10^{-3} \lt \frac{1}{2} \times 10^{-2}, \ x-y=-1.111 e(xy)0.55×103<21×102, xy=1.111,所以 ( x − y ) (x-y) (xy) 具有 3 位有效数字

∣ e ( x 2 cos ⁡ y ) ∣ < 1 2 × 1 0 − 4 ,   x 2 cos ⁡ y = 0.0049996 |e(x^2\cos{y})| \lt \frac{1}{2} \times 10^{-4},\ x^2\cos{y}=0.0049996 e(x2cosy)<21×104, x2cosy=0.0049996,所以 x 2 cos ⁡ y x^2\cos{y} x2cosy 具有 2 位有效数字

数值稳定性

  • 对于某一算法,如果初始数据很小的误差仅使最终结果产生较小的误差,则称该算法是数值稳定的,否则称为数值不稳定
  • :建立计算积分 ∫ 0 1 x n x + 5 d x ,   n = 0 , 1 , 2 , . . . , 10 \int_0^1\frac{x^n}{x+5}dx,\ n=0,1,2,...,10 01x+5xndx, n=0,1,2,...,10 的递推公式,并研究其误差传播

I n = ∫ 0 1 x n + 5 x n − 1 − 5 x n − 1 x + 5 d x = ∫ 0 1 x n − 1 d x − 5 ∫ 0 1 x n − 1 x + 5 d x = 1 n − 5 I n − 1 → 不 稳 定 若 上 式 转 换 为 : I n − 1 = 1 5 ( 1 n − I n ) ,   ( n = 10 , 9 , . . . , 2 , 1 ) → 稳 定 \begin{aligned} I_n &= \int_0^1\frac{x^n+5x^{n-1}-5x^{n-1}}{x+5}dx \\ &= \int_0^1x^{n-1}dx - 5\int_0^1\frac{x^{n-1}}{x+5}dx \\ &= \frac{1}{n} -5I_{n-1} \rightarrow 不稳定 \\ 若上式转换为:I_{n-1} &= \frac{1}{5}(\frac{1}{n}-I_n),\ (n=10,9,...,2,1) \rightarrow 稳定 \end{aligned} InIn1=01x+5xn+5xn15xn1dx=01xn1dx501x+5xn1dx=n15In1=51(n1In), (n=10,9,...,2,1)

  • 如果输入数据有微小的误差,引起输出数据只有微小的改变,称这类问题为良态的,否则称为病态

实际计算中应注意的一些问题

  • 尽量避免除数绝对值远远小于被除数绝对值
  • 尽量避免两个相近的数相减
  • 防止大数 “吃” 小数
  • 简化计算步骤,减少运算次数

秦九韶算法

将多项式 f ( x ) = a 0 x n + a 1 x n − 1 + . . . + a n − 1 x + a n f(x)=a_0x^n+a_1x^{n-1}+...+a_{n-1}x+a_n f(x)=a0xn+a1xn1+...+an1x+an 转换为如下嵌套形式:
f ( x ) = ( . . . ( ( a 0 x + a 1 ) x + a 2 ) x + . . . + a n − 1 ) x + a n f(x) = (...((a_0x+a_1)x+a_2)x+...+a_{n-1})x+a_n f(x)=(...((a0x+a1)x+a2)x+...+an1)x+an
改成表格形式如下:

a 0 a_0 a0 a 1 a_1 a1 a 2 a_2 a2 a n − 1 a_{n-1} an1 a n a_n an
x = x 0 x=x_0 x=x0 b 0 x 0 b_0x_0 b0x0 b 1 x 0 b_1x_0 b1x0 b n − 2 x 0 b_{n-2}x_0 bn2x0 b n − 1 x 0 b_{n-1}x_0 bn1x0
b 0 b_0 b0 b 1 b_1 b1 b 2 b_2 b2 b n − 1 b_{n-1} bn1 b n = f ( x 0 ) b_n=f(x_0) bn=f(x0)

:已知 f ( x ) = 8 x 5 + 4 x 3 − 9 x + 1 f(x)=8x^5+4x^3-9x+1 f(x)=8x5+4x39x+1 用秦九韶法求 f ( 3 ) f(3) f(3)

:使用表格可得

8 8 8 0 0 0 4 4 4 0 0 0 − 9 -9 9 1 1 1
x 0 = 3 x_0=3 x0=3 3 × 8 = 24 3\times 8 = 24 3×8=24 24 × 3 = 72 24 \times 3 = 72 24×3=72 76 × 3 = 228 76 \times 3 = 228 76×3=228 228 × 3 = 684 228 \times 3 = 684 228×3=684 675 × 3 = 2025 675 \times 3=2025 675×3=2025
8 8 8 24 + 0 = 24 24+0=24 24+0=24 72 + 4 = 76 72+4=76 72+4=76 228 + 0 = 228 228+0=228 228+0=228 684 + ( − 9 ) = 675 684+(-9)=675 684+(9)=675 2025 + 1 = f ( 3 ) 2025+1=f(3) 2025+1=f(3)

f ( 3 ) = 2026 f(3)=2026 f(3)=2026

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值