第一章 引论-误差分析
基本要求
1)误差是用来衡量数值方法好与坏的重要标志,需对每个方法进行误差分析,并结合实际问题理解误差概念的实际意义。
2)掌握基本概念及其内在联系,能够处理常见运算结果并解决实际问题。 > 本章主要论述误差的概念及其简单理论 —
一、基本概念
1. 绝对误差 定义:
设 x∗ 是准确值 x 的近似值,则绝对误差为 e∗=x∗−x 其中 ∣e∗∣ 的上界 ε∗ 称为误差限,满足 ∣e∗∣≤ε∗。
2. 相对误差 定义:
相对误差为绝对误差与准确值的比值,数学表达式为 δ∗=xe∗(若 x=0) 实际计算中通常以近似值 x∗ 代替分母,即 δ∗≈x∗e∗. — 注:相对误差一般用百分比表示
- 公式中的 x∗ 为近似值,x 为准确值; - 误差限 ε∗ 用于量化近似值的精度; - 相对误差可消除量纲影响,更适用于不同量级数据的误差比较。
3、有效数字 定义:
有效数字是近似值的一种表示法,其核心特征为: - 既能表示数值大小,又能反映精度级别 - 当近似值x∗满足误差限为某数位的半个单位时,该位到x∗第一个非零数字的位数即为有效位数n 数学表示: x∗=±10m×(a1+a2×10−1+⋯+an×10−(n−1)) 符号说明: - m:整数,决定数值的数量级 - a1:首位非零数字(1≤a1≤9) - ai:后续数字(0≤ai≤9, i≥2) - 误差限约束: ∣x−x∗∣≤21×10m−n+1 注: 1. 有效位数n与误差成反比:n越大,10m−n+1指数越小,误差限21×10m−n+1越小 2. 表示形式特点:通过规范化的科学计数法分离数值量级(10m)与有效数字序列(a1到an) 3. 首个非零数字的定位规则:确保有效数字的表示具有唯一性
数值运算的误差分析
一、误差分析的重要性
数值运算的误差分析是工程与科学计算中的核心问题。由于复杂问题往往涉及千万次运算,逐步骤误差分析不切实际(误差累积可能正负抵消)。现代方法如概率统计法、事后误差估计法等仅在特定问题中有效,需结合定性分析(如数值稳定性)进行综合评估。 —
二、算法的数值稳定性
1. 定义 数值稳定算法需满足:
输入数据存在误差时,计算过程中舍入误差可控 - 某步产生绝对误差 δ 后,后续计算导致的误差绝对值始终 ≤δ
三、数值计算原则
1. 运算优化策略
核心目标:减少误差累积与有效数字损失
- 避免相近数相减 相对误差公式:∣er(x1−x2)∣≤∣x1∗−x2∗∣x1∗∣er(x1)∣+∣x1∗−x2∗∣x2∗∣er(x2)∣
- 当 x≈y 时,分母趋近于零导致相对误差剧增(例:1.0001−1.0000 仅保留1位有效数字)。
- 规避病态除法 除法误差传播公式:\begin{align*} \epsilon\left(\frac{x_1}{x_2}\right) &\approx \left(\frac{\partial f}{\partial x_1}\right)^* \epsilon(x_1) + \left(\frac{\partial f}{\partial x_2}\right)^* \epsilon(x_2) \\ &= \frac{1}{x_2^*} \epsilon(x_1) - \frac{x_1^*}{(x_2^*)^2} \epsilon(x_2) \\ &= \frac{x_1^*}{x_2^*} \left( \epsilon_r^*(x_1) - \epsilon_r^*(x_2) \right) \end{align*} 当 ∣y∣≪∣x∣ 时,舍入误差被显著放大。
- 防止大数"吞噬"小数
- 浮点运算中优先累加小数量级数据,避免类似 1010+0.1−1010=0 的精度丢失。
-
2. 计算效率提升
- 关键方法:
- 代数变形(例:ln(a)−ln(b)=ln(a/b))
- 递推公式优化(反向递推减少正项累积误差)
- 并行分块计算(降低单次运算量级)
二、基本定理和公式
定理1
设近似数 x∗ 表示为: x∗=±10m×(a1+a2×10−1+⋯+an×10−(n−1)) 1. 有效数字判据 若 x∗ 具有 n 位有效数字,则其相对误差限满足: εr∗≤2a11×10−n+1 2. 误差限判据 若相对误差限满足: εr∗≤2(a1+1)1×10−n+1 则 x∗ 至少具有 n 位有效数字. — ### 多元函数误差传播 设 A=f(x1,x2,⋯,xn),若 x1,x2,⋯,xn 的近似值为 x1∗,x2∗,⋯,xn∗,则 A 的近似值为: A∗=f(x1∗,x2∗,⋯,xn∗) 其误差估算公式为:
- 绝对误差 e(A∗)≈∑k=1n(∂xk∂f)⋅ek∗ 2. 误差限 ε(A∗)≈∑k=1n∂xk∂f⋅εk∗ — 符号说明: - a1:首位有效数字(1≤a1≤9) - a2,⋯,an:次位有效数字(0≤ai≤9) - m:数值的十进制数量级指数 - εr∗:相对误差限(εr∗=∣e∗/x∗∣) - ek∗:变量 xk 的绝对误差
一些误差估计
ϵ(x1∗±x2∗)≤ϵ(x1∗)+ϵ(x2∗)
ϵ(x1∗x2∗)≤∣x1∗∣ϵ(x2∗)+∣x2∗∣ϵ(x2∗)
ϵ(x1∗/x2∗)≤∣x2∗∣2∣x1∗∣ϵ(x2∗)+∣x2∗∣ϵ(x2∗)(x2∗=0)