跳转至

计算方法期末复习笔记

考试信息

  • 考试时间:2026 年 6 月 23 日(周二)下午场,二教 407
  • 题型:计算/证明题 10 分 × 10
  • 不考察:伪代码、时间复杂度
  • 附公式(风格与期中一致)
  • 必须携带:科学计算器

1 插值法

考察重点:Lagrange 插值(构造原理、一般形式、误差)、Newton 插值(构造原理、与 Lagrange 的差异、≤4 点的均差)、分段线性插值(基函数、误差)、两节点与分段三次 Hermite 插值、样条插值(构造思路、三种边界条件)

不考察:一般形式 Hermite、样条误差分析、二维插值、快速 Fourier 变换

1.1 插值基本概念

给定 \(n+1\) 个互异节点 \((x_i, y_i)\),构造次数不超过 \(n\) 的多项式 \(\varphi_n(x)\),使 \(\varphi_n(x_i)=y_i\)

插值余项(通用公式)

\[ R_n(x) = f(x) - \varphi_n(x) = \frac{f^{(n+1)}(\xi)}{(n+1)!} \omega_{n+1}(x), \quad \xi \in (a,b) \]

其中 \(\omega_{n+1}(x) = \prod_{i=0}^{n} (x - x_i)\)

Runge 现象

加密插值节点并不一定能保证 \(\varphi_n(x)\) 很好地逼近 \(f(x)\)。实际应用中大多采用 分段低次插值

1.2 Lagrange 插值

构造原理

构造 \(n\) 次插值基函数 \(l_i(x)\),满足 \(l_i(x_j) = \delta_{ij}\)

\[ l_i(x) = \prod_{\substack{j=0 \\ j \neq i}}^{n} \frac{x - x_j}{x_i - x_j} \]

Lagrange 插值公式

\[ \varphi_n(x) = \sum_{i=0}^{n} y_i \, l_i(x) \]

基函数性质\(l_i(x_j) = \delta_{ij}\)\(\sum_{i=0}^{n} l_i(x) \equiv 1\)

插值余项

\[ R_n(x) = \frac{f^{(n+1)}(\xi)}{(n+1)!} \prod_{i=0}^{n} (x - x_i) \]

Lagrange 插值的核心理解

Lagrange 插值在后续多个章节中有广泛应用(如数值积分中的 Newton-Cotes 公式推导)。

1.3 Newton 插值

差商(均差)定义

一阶差商\(f[x_i, x_j] = \dfrac{f(x_i) - f(x_j)}{x_i - x_j}\)

\(k\) 阶差商

\[ f[x_0, x_1, \cdots, x_k] = \frac{f[x_0, \cdots, x_{k-1}] - f[x_1, \cdots, x_k]}{x_0 - x_k} \]

差商性质:对称性(点的顺序对值无影响)、线性性。

Newton 插值公式

\[ \varphi_n(x) = f(x_0) + \sum_{k=1}^{n} f[x_0, \cdots, x_k] \prod_{j=0}^{k-1} (x - x_j) \]

递推形式:\(\varphi_n(x) = \varphi_{n-1}(x) + f[x_0, \cdots, x_n] \prod_{j=0}^{n-1} (x - x_j)\)

Lagrange vs Newton

Lagrange Newton
增加节点 所有基函数重新计算 只需新增一项
适用场景 节点固定 节点逐步增加

1.4 分段线性插值

基函数构造

\[ l_0(x) = \begin{cases} \dfrac{x - x_1}{x_0 - x_1}, & x \in [x_0, x_1] \\ 0, & \text{otherwise} \end{cases} \]
\[ l_j(x) = \begin{cases} \dfrac{x - x_{j-1}}{x_j - x_{j-1}}, & x \in [x_{j-1}, x_j] \\ \dfrac{x - x_{j+1}}{x_j - x_{j+1}}, & x \in [x_j, x_{j+1}] \\ 0, & \text{otherwise} \end{cases} \]

误差估计

\[ |R_n(x)| \leqslant \frac{h^2}{8} M_2, \quad h = \max_i |x_{i+1} - x_i|, \quad M_2 = \max |f''(x)| \]

分段线性的局限

导数在节点处不连续(只有 \(C^0\) 连续性)。

1.5 Hermite 插值(两节点)

给定两点 \(x_0, x_1\) 及其函数值 \(y_0, y_1\) 和导数值 \(y_0', y_1'\),构造不超过三次的多项式 \(H(x)\)

基函数

\[ \begin{aligned} h_0(x) &= \left(1 + 2\frac{x - x_0}{x_1 - x_0}\right) \left(\frac{x - x_1}{x_0 - x_1}\right)^2 \\ h_1(x) &= \left(1 + 2\frac{x - x_1}{x_0 - x_1}\right) \left(\frac{x - x_0}{x_1 - x_0}\right)^2 \\ H_0(x) &= (x - x_0) \left(\frac{x - x_1}{x_0 - x_1}\right)^2 \\ H_1(x) &= (x - x_1) \left(\frac{x - x_0}{x_1 - x_0}\right)^2 \end{aligned} \]

Hermite 插值函数\(H(x) = y_0 h_0(x) + y_1 h_1(x) + y_0' H_0(x) + y_1' H_1(x)\)

余项

\[ R(x) = \frac{f^{(4)}(\xi)}{4!} (x - x_0)^2 (x - x_1)^2, \quad |R(x)| \leqslant \frac{h^4}{384} M_4 \]

分段三次 Hermite 插值

在每个小区间 \([x_i, x_{i+1}]\) 上构造三次 Hermite 插值,全局具有 \(C^1\) 连续性。

误差\(|R(x)| \leqslant \dfrac{h^4 M_4}{384}\)

1.6 三次样条插值

构造思路

\([a,b]\) 上给定节点 \(a=x_0<\cdots<x_n=b\) 及函数值 \(y_i\),构造 \(s(x)\) 满足:

  1. \(s(x_i) = y_i\)
  2. 每个小区间上是不超过三次的多项式
  3. \(s(x) \in C^2[a,b]\)(二阶导数连续)

利用 Hermite 插值形式,由 \(s''(x_i^-) = s''(x_i^+)\) 得到关于 \(m_i = s'(x_i)\) 的方程组:

\[ (1 - \alpha_i) m_{i-1} + 2 m_i + \alpha_i m_{i+1} = \beta_i, \quad i = 1, \cdots, n-1 \]

其中 \(\alpha_i = \dfrac{h_{i-1}}{h_{i-1} + h_i}\)\(\beta_i = 3\left((1 - \alpha_i) \dfrac{y_i - y_{i-1}}{h_{i-1}} + \alpha_i \dfrac{y_{i+1} - y_i}{h_i}\right)\)

三种边界条件

边界条件 补充方程 含义
固支 已知 \(m_0 = f'(x_0),\; m_n = f'(x_n)\) 端点导数给定
自然 \(s''(x_0) = s''(x_n) = 0\) 端点二阶导为零
周期 \(m_0 = m_n,\; s''(x_0) = s''(x_n)\) \(f\) 为周期函数

样条 vs 分段三次 Hermite

分段三次 Hermite 三次样条
输入 需给定所有节点导数值 \(m_i\) 只需函数值 + 边界条件
光滑性 \(C^1\) \(C^2\)
求解 直接构造 需解三对角线性方程组

2 函数逼近

考察重点:离散数据多项式最佳平方逼近(定义、求解)、指数拟合与分式线性拟合、连续函数最佳平方逼近(定义、求解)、正交函数系定义与性质

不考察:基于离散数据的一般形式(含离散正交函数族)

2.1 数据拟合与最小二乘

插值要求 \(\varphi(x_i)=y_i\);拟合允许残差,关注整体趋势。

最小二乘准则

\[ \min \sum_{i=1}^n [y_i - \varphi(x_i)]^2 \]

多项式最小二乘拟合

\(\varphi(x) = a_0 + a_1 x + \cdots + a_m x^m\)\(m < n-1\)),令偏导为零得 正规方程

\[ A^T A a = A^T b \]

其中 \(A\) 为 Vandermonde 型矩阵。

一次最小二乘拟合公式

\[ a_1 = \frac{n\sum x_i y_i - (\sum x_i)(\sum y_i)}{n\sum x_i^2 - (\sum x_i)^2}, \quad a_0 = \frac{1}{n}\sum y_i - \frac{a_1}{n}\sum x_i \]

2.2 可线性化的非线性拟合

指数拟合

\(y = b e^{ax}\) → 取对数 \(\ln y = ax + \ln b\),令 \(Y = \ln y,\; B = \ln b\),化为 \(Y = ax + B\)

分式线性拟合

  • \(y = \dfrac{1}{ax+b}\) → 令 \(Y = 1/y\),化为 \(Y = ax + b\)
  • \(y = \dfrac{x}{ax+b}\) → 令 \(Y = x/y\),化为 \(Y = ax + b\)

线性化的代价

变量变换会改变误差结构,可能偏离原始最小二乘意义下的最优解。

2.3 连续函数的最佳平方逼近

定义

\(f(x) \in C[a,b]\),在 \(H = \operatorname{span}\{\varphi_0, \cdots, \varphi_m\}\) 中求 \(\phi(x)\),使

\[ \int_a^b \omega(x) [f(x) - \phi(x)]^2 dx = \min \]

定义内积 \((u, v) = \int_a^b \omega(x) u(x) v(x) dx\),正规方程为:

\[ \sum_{k=0}^m a_k (\varphi_k, \varphi_j) = (f, \varphi_j), \quad j = 0, 1, \cdots, m \]

正交投影条件

\(\phi(x)\) 是最佳平方逼近的充要条件:\((f - \phi, \varphi_j) = 0,\; \forall j\)(误差与逼近空间正交)。

2.4 正交函数系

定义

\(\int_a^b \omega(x) \varphi_j(x) \varphi_k(x) dx = 0\)\(j \neq k\)),则 \(\{\varphi_k\}\) 为关于权函数 \(\omega(x)\) 的正交函数系。

正交基下的优势:系数可直接计算,无需解方程组:

\[ a_k = \frac{(f, \varphi_k)}{(\varphi_k, \varphi_k)} \]

常见正交多项式

名称 区间 权函数 \(\omega(x)\)
Legendre \([-1, 1]\) \(1\)
Chebyshev \([-1, 1]\) \(1/\sqrt{1-x^2}\)
Laguerre \([0, \infty)\) \(e^{-x}\)
Hermite \((-\infty, \infty)\) \(e^{-x^2}\)

3 数值微分与数值积分

考察重点:三种差商公式及 Taylor 展开误差、代数精度、Newton-Cotes(梯形、Simpson 误差)、复化求积与误差、逐次分半法、Richardson 外推与 Romberg 积分、Gauss 积分适用范围与方法、矩形域多重积分

不考察:数值积分专题(振荡、奇异、无限区间、自适应)

3.1 数值微分

三种差商公式

类型 公式 误差阶
向前差商 \(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)\)

Taylor 展开误差分析

以向前差商为例:

\[ f'(x) - \frac{f(x+h)-f(x)}{h} = -\frac{h}{2} f''(x+\theta h) = O(h) \]

中心差商因对称消去 \(O(h)\) 项,精度提升为 \(O(h^2)\)

步长选择

\(h\) 太小 → 舍入误差放大;\(h\) 太大 → 截断误差主导。存在最优步长。

3.2 代数精度

定义

若求积公式对所有次数 \(\leqslant m\) 的多项式精确成立,但对某个 \(m+1\) 次多项式不精确,则具有 \(m\) 次代数精度。

判定方法:依次检验 \(f(x) = 1, x, x^2, \cdots\) 是否精确成立。

3.3 Newton-Cotes 求积

基本思想:用 Lagrange 插值多项式代替被积函数 → \(A_i = \int_a^b l_i(x) dx\)

等距节点\(x_i = a + ih,\; h = \frac{b-a}{n}\)

梯形公式(\(n=1\)

\[ \int_a^b f(x) dx \approx \frac{b-a}{2} [f(a) + f(b)] \]

误差\(R_1 = -\dfrac{(b-a)^3}{12} f''(\eta)\),代数精度 1

Simpson 公式(\(n=2\)

\[ \int_a^b f(x) dx \approx \frac{b-a}{6} \left[f(a) + 4f\!\left(\frac{a+b}{2}\right) + f(b)\right] \]

误差\(R_2 = -\dfrac{(b-a)^5}{2880} f^{(4)}(\eta)\),代数精度 3

偶数 \(n\) 的特殊性

\(n\) 为偶数时,\(n+1\) 个节点的 Newton-Cotes 公式至少具有 \(n+1\) 次代数精度(比奇数多一阶)。

3.4 复化求积

复化梯形公式

\([a,b]\) 等分为 \(n\) 份,\(h = \frac{b-a}{n}\)

\[ T_n = \frac{h}{2} \left[f(a) + f(b) + 2\sum_{k=1}^{n-1} f(x_k)\right] \]

误差\(R = -\dfrac{b-a}{12} h^2 f''(\eta) = O(h^2)\)

复化 Simpson 公式

\([a,b]\) 进行 \(2n\) 等分:

\[ S_n = \frac{h}{3} \left[f(a) + f(b) + 4\sum_{k=1}^{n} f(x_{2k-1}) + 2\sum_{k=1}^{n-1} f(x_{2k})\right] \]

误差\(R = -\dfrac{b-a}{180} h_1^4 f^{(4)}(\eta) = O(h^4)\),其中 \(h_1 = \frac{b-a}{n}\)

3.5 逐次分半法

基本思想:不断将区间对半细分,利用前后两次近似值进行 事后误差估计

梯形递推(复用已有节点):

\[ T_{2n} = \frac{1}{2} T_n + \frac{h}{2} \sum_{k=1}^{n} f\!\left(a + \left(k-\frac{1}{2}\right)h\right) \]

事后误差估计

\[ I - T_{2n} \approx \frac{T_{2n} - T_n}{3}, \qquad I - S_{2n} \approx \frac{S_{2n} - S_n}{15} \]

停止准则:\(|T_{2n} - T_n| < 3\varepsilon\)(梯形),\(|S_{2n} - S_n| < 15\varepsilon\)(Simpson)

3.6 Richardson 外推与 Romberg 积分

Richardson 外推

\(F^* - F_1(h) = a_1 h^{p_1} + a_2 h^{p_2} + \cdots\),则

\[ F_2(h) = \frac{F_1(qh) - q^{p_1} F_1(h)}{1 - q^{p_1}} \]

消去 \(h^{p_1}\) 项,误差阶提升至 \(O(h^{p_2})\)

Romberg 求积

复化梯形误差仅含偶次幂 → 取 \(q=1/2\)\(p_m = 2m\)

\[ T_m^{(k)} = \frac{4^m T_{m-1}^{(k+1)} - T_{m-1}^{(k)}}{4^m - 1} \]
\(m\) 含义 误差阶
0 复化梯形 \(O(h^2)\)
1 等价复化 Simpson \(O(h^4)\)
2 Cotes \(O(h^6)\)
3 Romberg \(O(h^8)\)

3.7 Gauss 型求积

核心思想

\(n\) 个节点的 Gauss 求积可达 \(2n-1\) 次代数精度(普通求积只有 \(n-1\) 次)。节点为相应正交多项式的零点。

充要条件:节点多项式 \(\omega_n(x)\) 与任意次数 \(< n\) 的多项式关于权函数正交。

四种常见 Gauss 求积

类型 权函数 区间 节点来源
Gauss-Legendre \(w(x)=1\) \([-1, 1]\) Legendre 多项式零点
Gauss-Hermite \(w(x)=e^{-x^2}\) \((-\infty, \infty)\) Hermite 多项式零点
Gauss-Laguerre \(w(x)=e^{-x}\) \([0, \infty)\) Laguerre 多项式零点
Gauss-Chebyshev \(w(x)=1/\sqrt{1-x^2}\) \([-1, 1]\) Chebyshev 多项式零点

Gauss-Legendre 两点公式

\(\int_{-1}^1 f(x) dx \approx f(-\frac{1}{\sqrt{3}}) + f(\frac{1}{\sqrt{3}})\),具有 3 次代数精度。

Gauss 求积误差

\[ R = \frac{f^{(2n)}(\eta)}{(2n)!} \int_a^b w(x) \omega_n^2(x) dx \]

3.8 矩形域上的多重积分

二重积分化为累次积分:

\[ \iint_{[a,b]\times[c,d]} f(x,y) dA = \int_a^b \left[\int_c^d f(x,y) dy\right] dx \]

分别对内层和外层应用一维求积方法(如复合 Simpson 公式)。


4 非线性方程(组)的数值解法

考察重点:二分法、不动点迭代法(收敛性判定、误差分析)、松弛法与 Steffensen 加速、Newton-Raphson 法(构造过程、二阶收敛性)、非线性方程组 Newton-Raphson 迭代流程

不考察:重根改善方法、收敛域改善方法、弦位法、Müller 法、Aitken 法

4.1 二分法

条件\(f \in C[a,b]\)\(f(a)f(b) < 0\)

过程:每次取中点 \(p = \frac{a+b}{2}\),根据 \(f(a)f(p)\) 符号缩小区间。

收敛性\(k\) 次后区间长度 \(\frac{b-a}{2^k}\),所需步数 \(k \geqslant \log_2\frac{b-a}{\varepsilon}\)

特点:稳定可靠、必收敛,但线性收敛(\(p=1\)),需初始异号区间。

4.2 不动点迭代法

迭代格式

\(f(x)=0\) 改写为 \(x = \phi(x)\),迭代 \(x_{k+1} = \phi(x_k)\)

压缩映射条件(充分条件)

\(\phi(x)\)\([a,b]\) 上连续可导,且: - \(a \leqslant \phi(x) \leqslant b\)(自映射) - \(|\phi'(x)| \leqslant L < 1\)(压缩性)

则存在唯一不动点 \(x^*\),迭代对任意 \(x_0 \in [a,b]\) 收敛,且 \(|x_k - x^*| \leqslant L^k |x_0 - x^*|\)

局部收敛判据\(|\phi'(x^*)| < 1\) 则局部收敛;越小越快。

同一个方程的多种等价格式

\(f(x)=0\) 可改写为多种 \(x=\phi(x)\) 形式,但收敛性可能完全不同。需检查 \(|\phi'(x^*)|\)

收敛阶

\(\phi'(x^*) \neq 0\):线性收敛(\(p=1\)),\(e_{k+1} \approx \phi'(x^*) e_k\)

\(\phi'(x^*) = 0,\; \phi''(x^*) \neq 0\):二阶收敛(\(p=2\)),\(e_{k+1} \approx \frac{1}{2}\phi''(x^*) e_k^2\)

4.3 松弛法

迭代格式:\(x_{k+1} = x_k - \omega f(x_k)\)

对应 \(\phi(x) = x - \omega f(x)\)\(\phi'(x^*) = 1 - \omega f'(x^*)\)

收敛条件:\(|1 - \omega f'(x^*)| < 1\),即 \(0 < \omega < \frac{2}{f'(x^*)}\)(当 \(f'(x^*) > 0\) 时)

4.4 Steffensen 方法

不显式使用导数,却能达二阶收敛

基于 Aitken 加速思想,定义:

\[ \hat{\phi}(x) = x - \frac{[\phi(x) - x]^2}{\phi(\phi(x)) - 2\phi(x) + x} \]

迭代:\(x_{k+1} = \hat{\phi}(x_k)\)。每步需计算两次 \(\phi\),但收敛阶提升至 \(p=2\)

4.5 Newton-Raphson 法(单变量)

迭代格式

\(f(x)=0\),在 \(x_k\) 处 Taylor 展开取线性部分:

\[ x_{k+1} = x_k - \frac{f(x_k)}{f'(x_k)} \]

几何意义:用切线与 \(x\) 轴交点作为下一次近似。

收敛性

局部二阶收敛

\(f(x)\) 二阶可导,\(x_0\) 充分接近单根 \(x^*\)\(f'(x^*) \neq 0\),则 Newton 法二阶收敛:

\[ \lim_{k\to\infty} \frac{|x_{k+1} - x^*|}{|x_k - x^*|^2} = \left|\frac{f''(x^*)}{2f'(x^*)}\right| \]

4.6 非线性方程组的 Newton 法

\(\boldsymbol{f}(\boldsymbol{x}) = \boldsymbol{0}\),在 \(\boldsymbol{x}^{(k)}\) 处 Taylor 展开取线性部分:

\[ \boldsymbol{J}(\boldsymbol{x}^{(k)}) \Delta \boldsymbol{x}^{(k)} = -\boldsymbol{f}(\boldsymbol{x}^{(k)}) \]

其中 \(\boldsymbol{J}\) 为 Jacobi 矩阵:\(J_{ij} = \dfrac{\partial f_i}{\partial x_j}\)

迭代格式:

\[ \boldsymbol{x}^{(k+1)} = \boldsymbol{x}^{(k)} + \Delta \boldsymbol{x}^{(k)} \]

计算流程:每步需 (1) 计算 Jacobi 矩阵,(2) 解线性方程组得 \(\Delta \boldsymbol{x}^{(k)}\),(3) 更新 \(\boldsymbol{x}\)。具有局部二阶收敛性。


5 常微分方程初值问题的数值解法

考察重点:基础概念(局部/总体截断误差、显式/隐式、单步/多步、精度阶、稳定性)、Euler 法推导与误差/稳定性、向后 Euler 法推导、梯形公式推导、改进 Euler 法构造、Runge-Kutta 法属性与计算流程、Adams 外推/内插的构造理念与计算流程

不考察:预估-校正法、常微分方程组、高阶微分方程、边值问题

5.1 基本概念

考虑初值问题:

\[ \begin{cases} y'(x) = f(x, y(x)), & x \in [a, b] \\ y(a) = y_0 \end{cases} \]

步长 \(h = x_{k+1} - x_k\)(等距)。

概念 定义 要点
局部截断误差 \(l_{n+1}\) \(y(x_{n+1}) - \tilde{y}_{n+1}\) 假设前面各步精确,单步引入的误差
总体截断误差 \(e_{n+1}\) \(y(x_{n+1}) - y_{n+1}\) 实际累积误差
精度阶 \(p\) \(l_{n+1} = O(h^{p+1})\) 局部误差阶为 \(p+1\),全局为 \(p\)
显式 \(y_{n+1}\) 不依赖自身 直接计算
隐式 \(y_{n+1}\) 出现在右端 需迭代求解
单步法 仅用 \(y_n\) 计算 \(y_{n+1}\) 自启动
多步法 需多个历史值 需出发值
绝对稳定性 误差不随步数增长 对模型方程 \(y'=\lambda y\) 分析

5.2 Euler 方法

推导方式一:Taylor 展开

\[ y(x_{n+1}) = y(x_n) + h y'(x_n) + \frac{h^2}{2} y''(x_n) + \cdots \]

取线性部分,得 Euler 公式\(y_{n+1} = y_n + h f(x_n, y_n)\)

推导方式二:数值积分

\[ y(x_{n+1}) = y(x_n) + \int_{x_n}^{x_{n+1}} f(\xi, y(\xi)) d\xi \]

左矩形公式 近似积分 → Euler 公式。

误差分析

  • 局部截断误差\(l_{n+1} = \dfrac{h^2}{2} y''(x_n) + O(h^3) = O(h^2)\)1 阶精度
  • 总体截断误差\(e_n = O(h)\)(比局部低一阶)

稳定性分析

解模型方程 \(y' = \lambda y\)\(y_{n+1} = (1 + \lambda h) y_n\)

绝对稳定条件:\(|1 + \lambda h| \leqslant 1\)(复平面上以 \((-1,0)\) 为圆心、半径为 1 的圆盘)

\(\lambda < 0\):需 \(h \leqslant -2/\lambda\)

5.3 向后 Euler 方法

推导方式一:Taylor 展开(向后)

\(y(x_n) = y(x_{n+1}) - h y'(x_{n+1}) + \cdots\)

向后 Euler 公式\(y_{n+1} = y_n + h f(x_{n+1}, y_{n+1})\)

推导方式二:数值积分(右矩形)

右矩形公式 近似积分 → 向后 Euler 公式。

特点

  • 单步隐式方法,需不动点迭代求解
  • 局部截断误差 \(O(h^2)\)1 阶精度
  • A-稳定\(\text{Re}(\lambda h) \leqslant 0\) 即稳定(整个左半平面),适合刚性问题

内迭代收敛条件

用不动点迭代求解隐式方程时,需 \(hL < 1\)\(L\) 为 Lipschitz 常数)。

5.4 梯形公式

推导(数值积分)

梯形积分公式 近似 \(\int_{x_n}^{x_{n+1}} f(\xi, y(\xi)) d\xi\)

\[ y_{n+1} = y_n + \frac{h}{2} \bigl[f(x_n, y_n) + f(x_{n+1}, y_{n+1})\bigr] \]

特点

  • 单步隐式方法
  • 局部截断误差 \(O(h^3)\)2 阶精度,全局误差 \(O(h^2)\)
  • A-稳定
  • 内迭代收敛条件更宽松:\(hL/2 < 1\)

5.5 改进 Euler 方法(Heun 方法)

构造思路

梯形公式需迭代求解。固定一次校正,得到显式方法:

\[ \begin{aligned} \text{预估:}&\quad y_{n+1}^* = y_n + h f(x_n, y_n) \quad \text{(Euler 步)} \\ \text{校正:}&\quad y_{n+1} = y_n + \frac{h}{2} \bigl[f(x_n, y_n) + f(x_{n+1}, y_{n+1}^*)\bigr] \end{aligned} \]

即:\(y_{n+1} = y_n + \frac{h}{2} [f(x_n, y_n) + f(x_{n+1}, y_n + h f(x_n, y_n))]\)

特点

  • 单步显式方法,不需迭代
  • 局部截断误差 \(O(h^3)\)2 阶精度
  • PEC 结构(Predict-Evaluate-Correct)

5.6 Runge-Kutta 方法

方法属性与构造理念

核心思想:在 \([x_n, x_{n+1}]\) 内计算多个点的斜率,加权平均获得更高精度。

Butcher 表:将 RK 系数整理成表格形式。

二阶 RK 一般形式

\[ \begin{cases} k_1 = h f(x_n, y_n) \\ k_2 = h f(x_n + \alpha h, y_n + \beta k_1) \\ y_{n+1} = y_n + \omega_1 k_1 + \omega_2 k_2 \end{cases} \]

参数满足:\(\omega_1 + \omega_2 = 1\)\(\alpha\omega_2 = \beta\omega_2 = 1/2\)

  • 改进 Euler 法\(\omega_1=\omega_2=1/2,\; \alpha=\beta=1\)
  • 中点方法\(\omega_1=0,\; \omega_2=1,\; \alpha=\beta=1/2\)

经典四阶 RK 方法

\[ \begin{cases} k_1 = h f(x_n, y_n) \\ k_2 = h f(x_n + \frac{h}{2}, y_n + \frac{k_1}{2}) \\ k_3 = h f(x_n + \frac{h}{2}, y_n + \frac{k_2}{2}) \\ k_4 = h f(x_n + h, y_n + k_3) \\ y_{n+1} = y_n + \frac{1}{6}(k_1 + 2k_2 + 2k_3 + k_4) \end{cases} \]
  • 局部截断误差 \(O(h^5)\),全局误差 \(O(h^4)\)4 阶精度
  • 权重 \(\frac{1}{6}, \frac{2}{6}, \frac{2}{6}, \frac{1}{6}\) 与 Simpson 积分权重一致

四阶 RK 是最常用的 ODE 求解器

每次需要计算 4 次函数值,但精度极高。对非刚性问题是最佳选择。

5.7 Adams 方法

构造理念

线性多步法 的一般形式:

\[ y_{n+1} = \sum_{i=0}^{k} \alpha_i y_{n-i} + \sum_{i=-1}^{k} \beta_i f(x_{n-i}, y_{n-i}) \]

通过插值多项式近似 \(f(x, y(x))\),再积分得到计算格式。

Adams-Bashforth(外推公式)

构造思想:用 \([x_{n-k}, x_n]\) 上的历史点插值 → 外推到 \([x_n, x_{n+1}]\) 积分 → 显式方法

4 阶 Adams-Bashforth(4 步,使用 \(f_n, f_{n-1}, f_{n-2}, f_{n-3}\)):

\[ y_{n+1} = y_n + \frac{h}{24} (55 f_n - 59 f_{n-1} + 37 f_{n-2} - 9 f_{n-3}) \]

局部截断误差 \(O(h^5)\)4 阶精度

Adams-Moulton(内插公式)

构造思想:插值包含 \((x_{n+1}, f_{n+1})\)隐式方法,稳定性更好。

4 阶 Adams-Moulton(3 步,使用 \(f_{n+1}, f_n, f_{n-1}, f_{n-2}\)):

\[ y_{n+1} = y_n + \frac{h}{24} (9 f_{n+1} + 19 f_n - 5 f_{n-1} + f_{n-2}) \]

局部截断误差 \(O(h^5)\)4 阶精度。误差系数 \(|-19/720| < |251/720|\)(优于外推)。

Adams 外推 vs 内插

Adams-Bashforth Adams-Moulton
类型 显式 隐式
同精度所需步数 更多 更少
误差系数 较大 较小
稳定性 条件稳定 更好

出发值

多步法需要 \(y_0, y_1, \cdots, y_{k-1}\) 才能启动。通常用 同阶 RK 方法 以小步长计算出发值。


核心方法速查表

插值方法对比

方法 连续性 计算量 适用场景
Lagrange \(C^\infty\) \(O(n^2)\) 节点固定、理论分析
Newton \(C^\infty\) \(O(n^2)\) 逐步增加节点
分段线性 \(C^0\) \(O(n)\) 快速可视化
分段三次 Hermite \(C^1\) \(O(n)\) 需指定导数值
三次样条 \(C^2\) \(O(n)\) + 解方程组 精密曲线设计

ODE 方法对比

方法 类型 显/隐 局部误差 全局误差 稳定性
Euler 单步 显式 \(O(h^2)\) \(O(h)\) 条件稳定
向后 Euler 单步 隐式 \(O(h^2)\) \(O(h)\) A-稳定
梯形公式 单步 隐式 \(O(h^3)\) \(O(h^2)\) A-稳定
改进 Euler 单步 显式 \(O(h^3)\) \(O(h^2)\) 条件稳定
二阶 RK 单步 显式 \(O(h^3)\) \(O(h^2)\) 条件稳定
四阶 RK 单步 显式 \(O(h^5)\) \(O(h^4)\) 条件稳定
Adams-Bashforth 4 多步 显式 \(O(h^5)\) \(O(h^4)\) 条件稳定
Adams-Moulton 4 多步 隐式 \(O(h^5)\) \(O(h^4)\) 更好

非线性方程求根方法对比

方法 收敛阶 需要导数 特点
二分法 \(p=1\) 稳定必收敛,慢
不动点迭代 通常 \(p=1\) 依赖 \(\phi\) 构造
松弛法 通常 \(p=1\) 可调松弛因子
Newton 法(单根) \(p=2\) 局部极快
Steffensen \(p=2\) 不显式用导数
非线性方程组 Newton \(p=2\) Jacobi 计算量大

数值积分方法对比

方法 代数精度 误差阶 特点
梯形 1 \(O(h^2)\) 全局 最简单
Simpson 3 \(O(h^4)\) 全局 偶数 \(n\) 特征
复化梯形 1 \(O(h^2)\) 分段+低阶=稳定
复化 Simpson 3 \(O(h^4)\) 精度高
Romberg 逐层提升 外推加速
Gauss(\(n\) 点) \(2n-1\) 最优节点