一、绪论
误差的基本概念
绝对误差
- 设 x ∗ x^* x∗ 为准确值, x x x 是 x ∗ x^* x∗ 的一个近似值,记 e ( x ) = x ∗ − x \pmb{ {e(x)}=x^*-x} e(x)=x∗−xe(x)=x∗−xe(x)=x∗−x,称 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)∣=∣x∗−x∣≤ϵ∣e(x)∣=∣x∗−x∣≤ϵ∣e(x)∣=∣x∗−x∣≤ϵ,则 ϵ \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)=x∗x∗−x=x∗e(x)er(x)=x∗x∗−x=x∗e(x)er(x)=x∗x∗−x=x∗e(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)=xx∗−xer(x)=xx∗−xer(x)=xx∗−x 作为相对误差
有效数
- 如果近似值 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×10−2,所以 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 展开得
KaTeX parse error: No such environment: align at position 8: \begin{̲a̲l̲i̲g̲n̲}̲ e(y) &= y^*-y=…
利用 ① 和 ② 可得
KaTeX parse error: No such environment: align at position 8: \begin{̲a̲l̲i̲g̲n̲}̲ &e(x_1+x_2)=e(…
例子
设 x = 0.1230 , y = 1.234 x=0.1230,\ y=1.234 x=0.1230, y=1.234 均为有效数字,试分析 ( x − y ) (x-y) (x−y) 和 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×10−4, ∣e(y)∣≤21×10−3,则
KaTeX parse error: No such environment: align at position 8: \begin{̲a̲l̲i̲g̲n̲}̲ |e(x-y)| &= |e…
由上可知,
∣ 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(x−y)∣≤0.55×10−3<21×10−2, x−y=−1.111,所以 ( x − y ) (x-y) (x−y) 具有 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×10−4, x2cosy=0.0049996,所以 x 2 cos y x^2\cos{y} x2cosy 具有 2 位有效数字
数值稳定性
- 对于某一算法,如果初始数据很小的误差仅使最终结果产生较小的误差,则称该算法是**(数值)稳定**的,否则称为(数值)不稳定的
- 例 1.4.1 一定要去看
实际计算中应注意的一些问题
- 尽量避免除数绝对值远远小于被除数绝对值
- 尽量避免两个相近的数相减
- 防止大数 “吃” 小数
- 简化计算步骤,减少运算次数
秦九韶算法
TODO
二、非线性方程的求解
判断方程根的分布
简单迭代 f(x)=0 => x_k+1 = \phi(x_k),定理2.2.1:条件内容结论和一部分证明;定理2.2.2:知道即可;定理2.2.4:知道
Newton 迭代,局部二阶收敛,大范围收敛会用:定理2.3.1,
概述
求根的方法一般分为 2 步:
- 根的搜索,分析方程存在多少个实根,找出每个根所在的区间
- 图解法:通过画函数的图形,了解根的分布情况
- 解析法:用微积分基本理论来分析
- 定步长搜索法:利用连续函数的介值定理
- 根的精确化,求满足给定精度的根的近似值
二分法
三、线性方程组的数值解法
消去法、列主元消去法
方程组性态,误差分析(范数、条件数、半径)
Jacobi、Gauss-seidel、SOR(*)
幂法?