| 层面 | 含义 |
|---|---|
| 计算步骤有限 | 算法必须在有限步内完成,能在计算机上实现 |
| 收敛 | 近似解序列必须收敛到精确解(关注收敛性和收敛速度) |
| 接近精确解 | 计算结果要有足够的精度(关注误差/余项) |
| 数值稳定 | 算法对舍入误差不敏感,误差不会被放大 |
| 良好的计算复杂度 | 计算量小、存储空间少 |
考题形式:简答题——"评价一个数值算法的标准有哪些?" 直接答这五点即可。
误差来源分类:
| 误差类型 | 定义 | 例子 |
|---|---|---|
| 截断误差 | 用有限过程代替无限过程产生的误差 | 用泰勒展开的前几项近似函数 |
| 舍入误差 | 计算机字长有限,数字被四舍五入产生的误差 | $\pi \approx 3.14159$ |
考题形式:选择题/判断题——给一个场景,判断属于哪种误差。
绝对误差与绝对误差限:
有效数字(重点考点):
四舍五入得到的近似数,其绝对误差限不超过末位的半个单位。
判断有效数字位数的方法:
考试示例 [例1.1 类型]:
近似数 $0.03080$ 有几位有效数字?
解:从第一个非零数字"3"开始数:3, 0, 8, 0,共 4 位有效数字。
近似数 $2.50$ 有几位有效数字?
解:2, 5, 0,共 3 位有效数字。末尾的0是有效数字。
概念:一个算法如果在执行过程中舍入误差的累积对结果影响很小,则称该算法是数值稳定的;反之则数值不稳定。
控制误差的策略:
考题形式:简答题——"简述数值稳定性的概念及控制误差的策略"
秦九韶算法将多项式求值由
$$P(x) = a_n x^n + a_{n-1} x^{n-1} + \cdots + a_1 x + a_0$$改写为嵌套形式:
$$P(x) = (((a_n x + a_{n-1})x + a_{n-2})x + \cdots + a_1)x + a_0$$计算量:
体现的误差控制策略:简化计算步骤,减少运算次数。
考题形式:
1. 简答题——"秦九韶算法体现了什么误差控制策略?"
2. 计算题——"用秦九韶算法计算 $P(2)$,其中 $P(x)=3x^4+2x^3-5x^2+x-7$,并统计乘法和加法次数"
| 二分法 | 不动点迭代法 | 牛顿迭代法 | |
|---|---|---|---|
| 迭代原理 | 取有根区间中点,判断 $f(a)$ 与 $f(x)$ 是否同号,更新有根区间 | 将 $f(x)=0$ 改写为 $x=\varphi(x)$,迭代 $x_{k+1}=\varphi(x_k)$ | $x_{k+1} = x_k - \frac{f(x_k)}{f'(x_k)}$ |
| 收敛性 | 总是收敛(有根区间内) | 依赖于初值选择 | |
| 收敛条件 | 无额外条件 | $|\varphi'(x)| \le L \lt 1$(全局);$|\varphi'(x^*)| \lt 1$(局部) | 局部平方收敛($f'(x^*) \neq 0$ 时) |
| 收敛速度 | 慢(线性收敛,收敛比 $1/2$) | $|\varphi'(x^*)|$ 越小越快 | 最快(至少平方收敛) |
| 停止条件 | $(b_k-a_k)/2 \lt \varepsilon$ | $|x_{k+1} - x_k| \lt \varepsilon$ | $|x_{k+1} - x_k| \lt \varepsilon$ |
经过 $k$ 次二分后,近似解 $x_k$ 与精确解 $x^*$ 的误差:
$$|x_k - x^*| \le \frac{b-a}{2^k}$$若要求精度 $\varepsilon$,需要的二分次数 $k$ 满足:
$$k \ge \frac{\ln((b-a)/\varepsilon)}{\ln 2}$$考题 [习题3(1)]:已知有根区间 $[1, 2]$,求至少需多少次二分才能使误差不超过 $10^{-4}$?
解:由 $|x_k - x^*| \le \frac{b-a}{2^k} = \frac{1}{2^k} \le 10^{-4}$
得 $2^k \ge 10^4$,取对数 $k \ge \frac{4\ln 10}{\ln 2} \approx 13.29$
至少需要 14 次二分。
function [x, k] = bisection(f, a, b, eps)
% 二分法求解 f(x)=0
% 输入: f-函数句柄, [a,b]-有根区间, eps-精度要求
% 输出: x-近似根, k-迭代次数
k = 0;
while (b - a) / 2 >= eps
x = (a + b) / 2; % 取中点
if f(a) * f(x) < 0 % 根在左半区间
b = x;
elseif f(a) * f(x) > 0 % 根在右半区间
a = x;
else % f(x)=0, 找到精确根
break;
end
k = k + 1;
end
x = (a + b) / 2;
end
将 $f(x) = 0$ 改写为 $x = \varphi(x)$,构造迭代格式:
$$x_{k+1} = \varphi(x_k)$$$\varphi(x)$ 称为迭代函数。
在 $xOy$ 平面画 $y = x$ 和 $y = \varphi(x)$ 两条曲线,迭代过程是在两条曲线之间作水平-垂直线段的"楼梯"或"螺旋"路径,交点即为不动点(方程的根)。
定理 7.1(区间收敛/全局收敛):
若在区间 $[a, b]$ 上:
则迭代 $x_{k+1} = \varphi(x_k)$ 对任意初值 $x_0 \in [a, b]$ 收敛到唯一不动点 $x^*$。
定理 7.3(局部收敛):
若 $x^*$ 是 $\varphi(x)$ 的不动点,$\varphi'(x)$ 在 $x^*$ 附近连续,且 $|\varphi'(x^*)| \lt 1$,则迭代局部收敛。
实际考试常用的简化判据:$|\varphi'(x_0)| \lt 1$,则迭代局部收敛。
考题 [例7.4 类型]:判断迭代 $x_{k+1} = e^{-x_k}$ 在 $x_0 = 0.5$ 处是否收敛。
解:$\varphi(x) = e^{-x}$,$\varphi'(x) = -e^{-x}$
$|\varphi'(0.5)| = |{-e^{-0.5}}| = e^{-0.5} \approx 0.6065 \lt 1$
因此收敛。
$|\varphi'(x^*)|$ 越小,收敛越快。若 $0 \lt |\varphi'(x^*)| \lt 1$ 则线性收敛。
区间收敛性分析示例 [P.198]:判断迭代 $x_{k+1} = \frac{1}{2}(x_k + \frac{2}{x_k})$ 在区间 $[1, 2]$ 上是否收敛(用于求 $\sqrt{2}$)。
解:$\varphi(x) = \frac{1}{2}(x + \frac{2}{x})$
① 保域性:当 $x \in [1,2]$,$\varphi(x) = \frac{1}{2}(x + \frac{2}{x}) \in [\sqrt{2}, 1.5] \subset [1, 2]$ ✓
② $|\varphi'(x)| = \left|\frac{1}{2}(1 - \frac{2}{x^2})\right| = \frac{1}{2}\left|1 - \frac{2}{x^2}\right|$
当 $x \in [1,2]$,$|\varphi'(x)| \le \frac{1}{2}|1 - \frac{2}{4}| = \frac{1}{4} \lt 1$ ✓
满足定理 7.1 条件,迭代收敛。
function [x, k] = fixed_point(phi, x0, eps, max_iter)
% 不动点迭代法求解 x = phi(x)
% 输入: phi-迭代函数句柄, x0-初值, eps-精度, max_iter-最大迭代次数
% 输出: x-近似解, k-迭代次数
x = x0;
for k = 1:max_iter
x_new = phi(x); % 迭代: x_{k+1} = phi(x_k)
if abs(x_new - x) < eps % 检查停止条件
x = x_new;
return;
end
x = x_new;
end
end
推导:由泰勒展开 $f(x) \approx f(x_k) + f'(x_k)(x - x_k) = 0$,解出 $x$。
过 $(x_k, f(x_k))$ 作切线,切线与 $x$ 轴的交点即为 $x_{k+1}$。切线法。
考题 [习题12 估计立方根]:用牛顿法求 $\sqrt[3]{a}$ 的迭代公式。
解:令 $f(x) = x^3 - a = 0$,则 $f'(x) = 3x^2$
牛顿迭代公式:$x_{k+1} = x_k - \frac{x_k^3 - a}{3x_k^2}$
化简得:$x_{k+1} = \dfrac{2x_k + a/x_k^2}{3}$
类似题:用牛顿法求 $\sqrt{a}$。令 $f(x) = x^2 - a = 0$
得:$x_{k+1} = \dfrac{x_k + a/x_k}{2}$
function [x, k] = newton(f, df, x0, eps, max_iter)
% 牛顿迭代法求解 f(x)=0
% 输入: f-函数句柄, df-导数句柄, x0-初值, eps-精度, max_iter-最大迭代次数
% 输出: x-近似根, k-迭代次数
x = x0;
for k = 1:max_iter
x_new = x - f(x) / df(x); % 牛顿迭代公式
if abs(x_new - x) < eps % 检查停止条件
x = x_new;
return;
end
x = x_new;
end
end
| 直接法 | 迭代法 | |
|---|---|---|
| 思路 | 经有限步运算得精确解(忽略舍入误差) | 从初始近似解出发逐步逼近 |
| 代表方法 | 高斯消元法、LU分解法 | Jacobi迭代、Gauss-Seidel迭代 |
| 适用 | 中小规模方程组 | 大规模稀疏方程组 |
消元过程(化为上三角):
回代过程(从上三角求解):
列主元高斯消元法:
function x = gauss_elimination(A, b)
% 顺序高斯消元法求解 Ax = b
% 输入: A-系数矩阵(n×n), b-右端向量(n×1)
% 输出: x-解向量
n = length(b);
Aug = [A, b]; % 增广矩阵
% ---- 消元过程 ----
for k = 1:n-1
for i = k+1:n
m = Aug(i,k) / Aug(k,k); % 计算乘数
Aug(i, k:n+1) = Aug(i, k:n+1) - m * Aug(k, k:n+1);
end
end
% ---- 回代过程 ----
x = zeros(n, 1);
x(n) = Aug(n, n+1) / Aug(n, n);
for i = n-1:-1:1
x(i) = (Aug(i, n+1) - Aug(i, i+1:n) * x(i+1:n)) / Aug(i, i);
end
end
定理 5.7:若 $A$ 的顺序主子式均不为零,则 $A$ 可唯一分解为 $A = LU$。
其中:$L$ 为单位下三角矩阵(对角元全为1),$U$ 为上三角矩阵
解题步骤:
考题 [例5.4 类型]:用LU分解求解方程组
$$\begin{bmatrix} 2 & 1 & 1 \\ 4 & -6 & 0 \\ -2 & 7 & 2 \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \\ x_3 \end{bmatrix} = \begin{bmatrix} 4 \\ -2 \\ 9 \end{bmatrix}$$解(步骤化):
第一步:消元,构造 $U$ 和 $L$
消去第2行:$m_{21} = 4/2 = 2$,第2行 = 第2行 − 2×第1行
→ 新第2行: $[0, -8, -2 \mid -10]$消去第3行:$m_{31} = -2/2 = -1$,第3行 = 第3行 − (−1)×第1行
→ 新第3行: $[0, 8, 3 \mid 13]$消去第3行第2列:$m_{32} = 8/(-8) = -1$,第3行 = 第3行 − (−1)×新第2行
$$U = \begin{bmatrix} 2 & 1 & 1 \\ 0 & -8 & -2 \\ 0 & 0 & 1 \end{bmatrix} \qquad L = \begin{bmatrix} 1 & 0 & 0 \\ 2 & 1 & 0 \\ -1 & -1 & 1 \end{bmatrix}$$
→ 新第3行: $[0, 0, 1 \mid 3]$第二步:前代 $Ly = b$
$y_1 = 4$
$2y_1 + y_2 = -2 \;\to\; y_2 = -10$
$-y_1 - y_2 + y_3 = 9 \;\to\; -4 + 10 + y_3 = 9 \;\to\; y_3 = 3$第三步:回代 $Ux = y$
$x_3 = 3$
$-8x_2 - 2x_3 = -10 \;\to\; -8x_2 - 6 = -10 \;\to\; x_2 = 0.5$
$2x_1 + x_2 + x_3 = 4 \;\to\; 2x_1 + 0.5 + 3 = 4 \;\to\; x_1 = 0.25$答案:$x_1 = 0.25,\; x_2 = 0.5,\; x_3 = 3$
向量范数:
矩阵范数(算子范数):
速记口诀:向量1范数→全加起来;向量∞范数→找最大的;
矩阵1范数→先加列,再找最大列;矩阵∞范数→先加行,再找最大行
考题:计算矩阵 $A = \begin{bmatrix} 1 & -2 \\ 3 & -4 \end{bmatrix}$ 的 $\|A\|_1$ 和 $\|A\|_\infty$。
解:
$\|A\|_1 = \max( |1|+|3|,\; |{-2}|+|{-4}| ) = \max(4, 6) = \mathbf{6}$
$\|A\|_\infty = \max( |1|+|{-2}|,\; |3|+|{-4}| ) = \max(3, 7) = \mathbf{7}$
病态/良态:若系数矩阵或右端项的微小变化引起解的巨大变化,则为病态方程组。
条件数:$\mathrm{cond}(A) = \|A\| \cdot \|A^{-1}\|$
将 $Ax = b$ 改写为 $x = Bx + f$,迭代格式:
$$x^{(k+1)} = Bx^{(k)} + f$$其中 $B$ 为迭代矩阵。
谱半径 $\rho(B)$:矩阵 $B$ 特征值的模的最大值。
收敛的充要条件:迭代法收敛 $\iff$ $\rho(B) \lt 1$
收敛的充分条件:存在某种范数使得 $\|B\| \lt 1$ $\implies$ 迭代收敛
收敛速度:$\rho(B)$ 越小,收敛越快。
考题 [例6.3/6.4/6.5 类型]:给定迭代矩阵 $B$,判断迭代是否收敛。
$$B = \begin{bmatrix} 0 & 0.5 \\ -0.5 & 0 \end{bmatrix}$$解:求特征值 $\to$ $|\lambda I - B| = \begin{vmatrix} \lambda & -0.5 \\ 0.5 & \lambda \end{vmatrix} = \lambda^2 + 0.25 = 0$
$\lambda = \pm 0.5i$,$|\lambda| = 0.5$
$\rho(B) = 0.5 \lt 1$,迭代收敛。
口诀:第 $i$ 个方程解出第 $i$ 个变量,右边全部用旧值(上一步的值)。
令 $A = D - L - U$($D$=对角,$-L$=严格下三角,$-U$=严格上三角)
$J = D^{-1}(L+U) = I - D^{-1}A$
迭代格式:$x^{(k+1)} = Jx^{(k)} + D^{-1}b$
与Jacobi的关键区别:计算 $x_2$ 时用刚算出的 $x_1^{(k+1)}$(最新值),而不是 $x_1^{(k)}$。
$G = (D-L)^{-1}U$
迭代格式:$x^{(k+1)} = Gx^{(k)} + (D-L)^{-1}b$
| 条件 | Jacobi | Gauss-Seidel |
|---|---|---|
| 充要条件 | $\rho(J) \lt 1$ | $\rho(G) \lt 1$ |
| 充分条件1 | 存在范数 $\|J\| \lt 1$ | 存在范数 $\|G\| \lt 1$ |
| 充分条件2(定理6.8) | $A$ 严格对角占优 | $A$ 严格对角占优 |
严格对角占优矩阵的定义:对每个 $i$,$|a_{ii}| \gt \sum_{j \neq i} |a_{ij}|$
考试结论:$A$ 严格对角占优时,Jacobi 和 GS 都收敛,且 GS 通常比 Jacobi 快。
考题 [习题2 类型]:方程组
$$\begin{bmatrix} 4 & -1 & 1 \\ 4 & -8 & 1 \\ -2 & 1 & 5 \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \\ x_3 \end{bmatrix} = \begin{bmatrix} 1 \\ 4 \\ -5 \end{bmatrix}$$(1) 写出 Jacobi 迭代公式
(2) 写出 Gauss-Seidel 迭代公式
(3) 判断 Jacobi 和 GS 迭代的收敛性解:
(1) Jacobi 迭代公式:
$x_1^{(k+1)} = (1 + x_2^{(k)} - x_3^{(k)}) / 4$
$x_2^{(k+1)} = (4 - 4x_1^{(k)} - x_3^{(k)}) / (-8)$
$x_3^{(k+1)} = (-5 + 2x_1^{(k)} - x_2^{(k)}) / 5$(2) Gauss-Seidel 迭代公式:
$x_1^{(k+1)} = (1 + x_2^{(k)} - x_3^{(k)}) / 4$
$x_2^{(k+1)} = (4 - 4x_1^{(k+1)} - x_3^{(k)}) / (-8)$ ← 用新值 $x_1^{(k+1)}$
$x_3^{(k+1)} = (-5 + 2x_1^{(k+1)} - x_2^{(k+1)}) / 5$ ← 用新值 $x_1^{(k+1)}, x_2^{(k+1)}$(3) 收敛性判断:
检查严格对角占优:
第1行:$|4| = 4$ vs $|{-1}|+|1| = 2 \;\to\; 4 \gt 2$ ✓
第2行:$|{-8}| = 8$ vs $|4|+|1| = 5 \;\to\; 8 \gt 5$ ✓
第3行:$|5| = 5$ vs $|{-2}|+|1| = 3 \;\to\; 5 \gt 3$ ✓$A$ 严格对角占优,故 Jacobi 和 GS 都收敛。
函数插值:已知函数 $f(x)$ 在 $n+1$ 个互异节点 $x_0, x_1, \ldots, x_n$ 上的函数值 $y_0, y_1, \ldots, y_n$,构造一个简单函数 $P(x)$ 满足 $P(x_i) = y_i\;(i=0,1,\ldots,n)$,用 $P(x)$ 近似 $f(x)$。
几何意义:找一条经过所有给定数据点的曲线。
$n$ 个节点的拉格朗日插值基函数:
$$l_i(x) = \prod_{j \neq i} \frac{x - x_j}{x_i - x_j}$$基函数性质:$l_i(x_j) = 1$(当 $i=j$),$l_i(x_j) = 0$(当 $i \neq j$)
考题:已知 $f(0)=1, f(1)=2, f(2)=0$,用 Lagrange 插值求 $f(x)$ 的二次插值多项式。
解:
$l_0(x) = \dfrac{(x-1)(x-2)}{(0-1)(0-2)} = \dfrac{(x-1)(x-2)}{2}$
$l_1(x) = \dfrac{(x-0)(x-2)}{(1-0)(1-2)} = \dfrac{x(x-2)}{-1} = -x(x-2)$
$l_2(x) = \dfrac{(x-0)(x-1)}{(2-0)(2-1)} = \dfrac{x(x-1)}{2}$
$$\begin{aligned} L_2(x) &= 1 \cdot l_0(x) + 2 \cdot l_1(x) + 0 \cdot l_2(x) \\ &= \frac{(x-1)(x-2)}{2} - 2x(x-2) \\ &= \frac{x^2-3x+2}{2} - 2x^2 + 4x \\ &= 0.5x^2 - 1.5x + 1 - 2x^2 + 4x \\ &= \mathbf{-1.5x^2 + 2.5x + 1} \end{aligned}$$
| $x_i$ | $f(x_i)$ | 一阶均差 | 二阶均差 | 三阶均差 |
|---|---|---|---|---|
| $x_0$ | $f(x_0)$ | |||
| $f[x_0,x_1]$ | ||||
| $x_1$ | $f(x_1)$ | $f[x_0,x_1,x_2]$ | ||
| $f[x_1,x_2]$ | $f[x_0,x_1,x_2,x_3]$ | |||
| $x_2$ | $f(x_2)$ | $f[x_1,x_2,x_3]$ | ||
| $f[x_2,x_3]$ | ||||
| $x_3$ | $f(x_3)$ |
考题:已知 $f(0)=1, f(1)=2, f(2)=0$,用 Newton 插值法。
解(列均差表):
$x_i$ $f(x_i)$ 一阶 二阶 0 1 $\frac{2-1}{1-0}=1$ 1 2 $\frac{-2-1}{2-0}=-1.5$ $\frac{0-2}{2-1}=-2$ 2 0 一阶均差:$f[0,1]=1,\; f[1,2]=-2$
$$\begin{aligned} N_2(x) &= 1 + 1\cdot(x-0) + (-1.5)\cdot(x-0)(x-1) \\ &= 1 + x - 1.5(x^2 - x) \\ &= 1 + x - 1.5x^2 + 1.5x \\ &= \mathbf{-1.5x^2 + 2.5x + 1} \end{aligned}$$
二阶均差:$f[0,1,2] = \frac{-2-1}{2-0} = -1.5$(与 Lagrange 結果一致)
增加新节点时,牛顿插值只需添加新的一项,无需重新计算全部系数。拉格朗日插值则需全部重算。
常考判断题:牛顿插值法具备承袭性,拉格朗日插值法不具备。✓
| 函数插值 | 曲线拟合 | |
|---|---|---|
| 要求 | 曲线经过所有数据点 | 曲线不一定经过数据点 |
| 目标 | $P(x_i) = y_i$ | 使偏差的平方和最小 |
| 适用场景 | 数据精确,节点较少 | 数据有误差,节点较多 |
即:使拟合函数在节点处的值与观测值的偏差平方和最小。
法方程组:
$$\begin{cases} n \cdot a &+ (\sum x_i) \cdot b &= \sum y_i \\ (\sum x_i) \cdot a &+ (\sum x_i^2) \cdot b &= \sum x_i y_i \end{cases}$$考题 [例3.10/3.11 类型]:已知数据点 $(-1, 0), (0, 1), (1, 1), (2, 3)$,求最小二乘直线拟合 $y = a + bx$。
解:$n=4$
$\sum x_i = -1+0+1+2 = 2$
$\sum y_i = 0+1+1+3 = 5$
$\sum x_i^2 = 1+0+1+4 = 6$
$\sum x_i y_i = 0+0+1+6 = 7$法方程组:
$$\begin{cases} 4a + 2b = 5 \\ 2a + 6b = 7 \end{cases}$$解:第1式×3 − 第2式:$12a+6b=15,\;2a+6b=7 \;\to\; 10a=8 \;\to\; a=0.8$
代入:$4 \times 0.8 + 2b = 5 \;\to\; 3.2 + 2b = 5 \;\to\; b = 0.9$拟合直线:$y = 0.8 + 0.9x$
最小二乘法的应用范围不仅限于线性关系的拟合。对于指数型、幂函数型等非线性关系,可通过变量代换转化为线性问题处理:
| 非线性模型 | 变量代换 | 线性化后形式 |
|---|---|---|
| $y = ae^{bx}$(指数型) | 令 $Y = \ln y$ | $Y = \ln a + bx$ |
| $y = ax^b$(幂函数型) | 令 $Y = \ln y,\; X = \ln x$ | $Y = \ln a + bX$ |
| $y = \frac{1}{a+bx}$(倒数型) | 令 $Y = \frac{1}{y}$ | $Y = a + bx$ |
转化后即可套用法方程求解,再代回原变量得到非线性拟合公式。
| 梯形公式 | 辛普森(Simpson)公式 | |
|---|---|---|
| 公式 | $\displaystyle\int_a^b f(x)dx \approx \frac{b-a}{2}[f(a)+f(b)]$ | $\displaystyle\int_a^b f(x)dx \approx \frac{b-a}{6}[f(a)+4f(\frac{a+b}{2})+f(b)]$ |
| 代数精度 | 1 次(对 $x^2$ 不精确) | 3 次(对 $x^4$ 不精确) |
| 是否插值型 | 是(基于一次插值) | 是(基于二次插值) |
定义:若求积公式对所有不超过 $m$ 次的多项式都精确成立,但存在某个 $m+1$ 次多项式不精确成立,则称该求积公式具有 $m$ 次代数精度。
验证方法:依次取 $f(x) = 1, x, x^2, \ldots, x^m, x^{m+1}$ 代入,直到不精确成立为止。
考题:验证梯形公式 $\int_a^b f(x)dx \approx \frac{b-a}{2}[f(a)+f(b)]$ 的代数精度。
解:取 $a=0, b=1$ 方便验证
$f(x)=1$:左边 $=\int_0^1 1\,dx = 1$,右边 $=\frac{1}{2}(1+1)=1$ ✓
$f(x)=x$:左边 $=\int_0^1 x\,dx = \frac{1}{2}$,右边 $=\frac{1}{2}(0+1)=\frac{1}{2}$ ✓
$f(x)=x^2$:左边 $=\int_0^1 x^2dx = \frac{1}{3}$,右边 $=\frac{1}{2}(0+1)=\frac{1}{2}$ ✗梯形公式代数精度为 1 次。
考题 [习题1 类型]:构造以 $x_0=0, x_1=1$ 为节点的求积公式,使其代数精度尽可能高。
解:设公式为 $\int_0^1 f(x)dx \approx A_0 f(0) + A_1 f(1)$
令 $f(x)=1$ 精确:$A_0 + A_1 = 1$
令 $f(x)=x$ 精确:$A_0 \cdot 0 + A_1 \cdot 1 = \frac{1}{2} \;\to\; A_1 = \frac{1}{2}$得 $A_0 = \frac{1}{2},\; A_1 = \frac{1}{2}$
得到的就是梯形公式,验证 $f(x)=x^2$ 不精确,故代数精度为 1。
求积系数的重要规律:求积系数之和 = 求积区间长度(令 $f(x) \equiv 1$ 即得)
基本思想:将积分区间分成若干等份,每份上用低阶求积公式,再求和。
其中 $x_{i+1/2} = x_i + h/2$。
考题:用复合梯形公式($n=4$)计算 $\int_0^1 \frac{1}{1+x} dx$ 的近似值。
解:$h = (1-0)/4 = 0.25$
$x_0=0,\; x_1=0.25,\; x_2=0.5,\; x_3=0.75,\; x_4=1$
$f(x)=\frac{1}{1+x}$:$f(0)=1,\; f(0.25)=0.8,\; f(0.5)=\frac{2}{3},\; f(0.75)=\frac{4}{7}\approx 0.5714,\; f(1)=0.5$
$$\begin{aligned} T_4 &= \frac{0.25}{2} \times [1 + 2 \times (0.8 + \tfrac{2}{3} + 0.5714) + 0.5] \\ &= 0.125 \times [1 + 2 \times 2.0381 + 0.5] \\ &= 0.125 \times [1 + 4.0762 + 0.5] \\ &= 0.125 \times 5.5762 \\ &= \mathbf{0.6970} \end{aligned}$$
| 公式 | 类型 | 误差阶 |
|---|---|---|
| $f'(x) \approx \dfrac{f(x+h)-f(x)}{h}$ | 向前差分 | $O(h)$ |
| $f'(x) \approx \dfrac{f(x)-f(x-h)}{h}$ | 向后差分 | $O(h)$ |
| $f'(x) \approx \dfrac{f(x+h)-f(x-h)}{2h}$ | 中心差分 | $O(h^2)$ |
记忆口诀:中心差分比单侧差分精度高($O(h^2)$ vs $O(h)$)
总误差 = 截断误差 + 舍入误差。当 $h \to 0$ 时:
因此,步长 $h$ 不能太小也不能太大,存在最优步长。
该公式由中心差分自然推广,误差阶为 $O(h^2)$。
| # | 公式 | 所属章节 |
|---|---|---|
| 1 | $|x_k - x^*| \le \dfrac{b-a}{2^k}$ | Ch7 二分法误差限 |
| 2 | $k \ge \dfrac{\ln((b-a)/\varepsilon)}{\ln 2}$ | Ch7 二分次数估计 |
| 3 | $x_{k+1} = x_k - \dfrac{f(x_k)}{f'(x_k)}$ | Ch7 牛顿迭代 |
| 4 | $J = D^{-1}(L+U),\; G = (D-L)^{-1}U$ | Ch6 迭代矩阵 |
| 5 | $\|A\|_1 = \max_j \sum_i |a_{ij}|$ | Ch5 矩阵1-范数 |
| 6 | $\|A\|_\infty = \max_i \sum_j |a_{ij}|$ | Ch5 矩阵∞-范数 |
| 7 | $l_i(x) = \prod_{j \neq i} \dfrac{x-x_j}{x_i-x_j}$ | Ch2 Lagrange基函数 |
| 8 | 梯形:$\frac{b-a}{2}[f(a)+f(b)]$ | Ch4 数值积分 |
| 9 | Simpson:$\frac{b-a}{6}[f(a)+4f(\frac{a+b}{2})+f(b)]$ | Ch4 数值积分 |
| 10 | 中心差分:$f'(x) \approx \frac{f(x+h)-f(x-h)}{2h}$ | Ch4 数值微分 |
| 题型 | 章节 | 分数预期 |
|---|---|---|
| 二分法次数估计 | Ch7 | 5-8分 |
| 牛顿迭代公式推导+计算 | Ch7 | 10-15分 |
| 高斯消元/LU分解 | Ch5 | 10-15分 |
| 向量/矩阵范数计算 | Ch5 | 5-8分 |
| Jacobi/GS迭代公式+收敛性 | Ch6 | 10-15分 |
| Lagrange/Newton插值 | Ch2 | 10-15分 |
| 最小二乘拟合法方程 | Ch3 | 10-12分 |
| 数值积分/代数精度验证 | Ch4 | 8-10分 |
| 复合梯形/Simpson计算 | Ch4 | 8-10分 |