数值方法:速成包

公式表、每个专题的关键方法步骤和 8 道练习题,完整解答附在最后。

新题目返回课程

在打印窗口中选择“另存为 PDF”,即可在设备上保存一份副本。

1公式与方法

数值方法

二分法
c = (a + b)/2, width after n steps (b − a)/2ⁿ
牛顿–拉弗森法
xn+1 = xₙ − f(xₙ)/f′(xₙ)
线性插值
y = y₁ + (y₂ − y₁)(x − x₁)/(x₂ − x₁)
梯形法则
T = (h/2)[f₀ + 2f₁ + … + 2fn−1 + fₙ], h = (b − a)/n
辛普森法则(n 为偶数)
S = (h/3)[f₀ + 4f₁ + 2f₂ + … + 4fn−1 + fₙ]
梯形法则的误差界
|E| ≤ (b − a)h²M/12, M = max|f″|
欧拉
yn+1 = yₙ + h·f(tₙ, yₙ)
休恩法
yn+1 = yₙ + (h/2)(k₁ + k₂), k₂ = f(tₙ + h, yₙ + hk₁)
RK4
yn+1 = yₙ + (h/6)(k₁ + 2k₂ + 2k₃ + k₄)

方法

  1. 求根:二分法要检查变号,牛顿法要计算 f 和 f′,并在迭代值表中保留六位或更多位数字。
  2. 求表中的值:在两个相邻的点之间做线性插值。
  3. 求积分:求出 h = (b − a)/n,列出每个节点处的 f,应用权重(梯形法则为 1, 2, …, 2, 1;n 为偶数时辛普森法则为 1, 4, 2, …, 4, 1),再乘以 h/2 或 h/3。
  4. 求常微分方程:从 t₀ 出发,用 yₙ₊₁ = yₙ + h·f(tₙ, yₙ)(欧拉法)或平均斜率(休恩法)逐步前进,每步一行,直到到达所要求的 t。

数列与级数

等差数列
aₙ = a₁ + (n − 1)d, Sₙ = n(a₁ + aₙ)/2
等比数列
aₙ = a₁rⁿ⁻¹, Sₙ = a₁(1 − rⁿ)/(1 − r)
无穷等比级数
S = a₁/(1 − r), |r| < 1
p-级数
Σ1/kᵖ converges only for p > 1
比值判别法
L = lim |ak+1/ak|: L < 1 converges, L > 1 diverges
收敛半径
R = lim |ck/ck+1|
泰勒多项式
Pₙ(x) = Σ f⁽ᵏ⁾(a)(x − a)ᵏ/k!
麦克劳林级数
eˣ = Σxᵏ/k!, sin x = x − x³/3! + …, cos x = 1 − x²/2! + …, ln(1 + x) = x − x²/2 + …
拉格朗日误差界
|Rₙ| ≤ M·|x − a|ⁿ⁺¹/(n + 1)!

方法

  1. 判断类型:等差(公差恒定)、等比(公比恒定)、标准级数、幂级数还是泰勒多项式。
  2. 求和时使用 Sₙ = n(a₁ + aₙ)/2、Sₙ = a₁(1 − rⁿ)/(1 − r),或 |r| < 1 时使用 S = a₁/(1 − r),其中 a₁ 是和的第一项。
  3. 判断收敛性:先用通项判别法,再与 Σ1/kᵖ 或等比级数比较,含阶乘和 k 次幂的级数用比值判别法或根值判别法。
  4. 对于泰勒多项式,列出 f(a)、f′(a)、f″(a)、…,把第 k 阶导数除以 k!,并用 M·|x − a|ⁿ⁺¹/(n + 1)! 估计误差。

矩阵与行列式

2×2 行列式
det = ad − bc
2×2 逆矩阵
A⁻¹ = (1/det)·[d −b; −c a]
产品
(AB)ij = Σk AikBkj
特征值
det(A − λI) = 0
克拉默法则
xi = det(Ai)/det(A)

微分方程

指数增长/衰减
dy/dt = ky → y = y0ekt
半衰期
k = ln 2 / t½
牛顿冷却定律
T(t) = Ta + (T0 − Ta)e−kt
积分因子
y′ + p(x)y = q(x): μ = e∫p dx, (μy)′ = μq
混合槽
dm/dt = r·c − (r/V)·m

2练习题

1.数值方法中等
xy00.3750.751.1251.5

用辛普森法则取 n = 4 条窄条,近似计算 ∫01.5 √(1 + x³) dx。给出 S。

f(x) = √(1 + x³)[a, b] = [0, 1.5]n = 4
S =
2.数值方法困难
00.20.40.50.60.7ty(0, 0.5)

对 y′ = t² + y²,y(0) = 0.5,取 h = 0.5,做一步经典龙格–库塔法 (RK4)。求 y₁ ≈ y(0.5)。

y′ = t² + y²y(0) = 0.5h = 0.5
y1 =
3.数列与级数中等
AΣ (1/3)ᵏk = 1 … ∞BΣ k/5ᵏk = 1 … ∞CΣ (−1)ᵏ/kk = 1 … ∞DΣ (1 + 1/k)ᵏk = 1 … ∞

四个级数中恰有一个发散。点选它。

A: Σ (1/3)ᵏB: Σ k/5ᵏC: Σ (−1)ᵏ/kD: Σ (1 + 1/k)ᵏ
  1. 1A: Σ (1/3)ᵏ
  2. 2B: Σ k/5ᵏ
  3. 3C: Σ (−1)ᵏ/k
  4. 4D: Σ (1 + 1/k)ᵏ
4.数列与级数困难

f(x) = ln(1 + x) 在 x = 0.3 处用其 5 次麦克劳林多项式近似。用拉格朗日误差界 M·|x|ⁿ⁺¹/(n + 1)!(M = 5! = 120)求最大可能误差 |R₅|。

f(x) = ln(1 + x)n = 5x = 0.3M = 120
|R₅| =
5.矩阵与行列式中等
A =40−24−21−5−5−2

求所示 3×3 矩阵 A 的行列式 det A。

A = [4 0 −2; 4 −2 1; −5 −5 −2]
det A =
6.矩阵与行列式困难
A =54−5−4

求所示矩阵 A 的较大特征值 λ。

A = [5 4; −5 −4]
λ =
7.微分方程中等
tyy(0) = 1y(1) = ?

解 y″ + 7y′ + 12y = 0,其中 y(0) = 1,y′(0) = 6。求 y(1)。

y″ + 7y′ + 12y = 0y(0) = 1y′(0) = 6
y(1) =
8.微分方程困难
tyK = 10y(0.25) = ?

一个系统在 t ≥ 0 时满足 y″ + y′ + 9.25y = 92.5,从静止开始:y(0) = 0,y′(0) = 0。求 y(0.25);角度以弧度为单位。

y″ + y′ + 9.25y = 92.5y(0) = 0y′(0) = 0
y(0.25) =

3溶液

1.数值方法

答案: S = 1.976

数值积分:把 [a, b] 分成 n 条宽度为 h = (b − a)/n 的窄条,节点为 x₀ … xₙ。梯形法则:T = (h/2)[f₀ + 2f₁ + 2f₂ + … + 2fn−1 + fₙ]。辛普森法则(n 为偶数):S = (h/3)[f₀ + 4f₁ + 2f₂ + 4f₃ + … + 4fn−1 + fₙ]。梯形法则的误差按 h² 缩小(误差界 (b − a)h²·M/12,其中 M = max|f″|),辛普森法则按 h⁴ 缩小,所以在节点数相同时辛普森法则通常精确得多。

ixᵢf(xᵢ)体重001110.3751.026028420.751.192424231.1251.556865441.52.091651

节点与函数值

h = 0.375
Σ wᵢfᵢ = 1 + 4·1.026028 + 2·1.192424 + 4·1.556865 + 2.09165 = 15.808071

辛普森法则

S = (0.375/3)·15.808071 = 1.976

答案

S = 1.976

这个积分没有初等原函数,这正是需要数值方法的情形。

2.数值方法

答案: y1 = 0.716

y′ = f(t, y) 的数值解:欧拉法沿每一步起点处的斜率前进:yn+1 = yₙ + h·f(tₙ, yₙ)。休恩法(改进欧拉法)取起点处斜率与欧拉预测点处斜率的平均:k₁ = f(tₙ, yₙ),k₂ = f(tₙ + h, yₙ + h·k₁),yn+1 = yₙ + (h/2)(k₁ + k₂)。经典龙格–库塔法 (RK4) 结合四个斜率:yn+1 = yₙ + (h/6)(k₁ + 2k₂ + 2k₃ + k₄)。欧拉法的整体误差与 h 成正比,休恩法与 h² 成正比,RK4 与 h⁴ 成正比。

四个斜率

k₁ = f(0, 0.5) = 0.25
k₂ = f(0.25, 0.5625) = 0.378906
k₃ = f(0.25, 0.594727) = 0.4162
k₄ = f(0.5, 0.7081) = 0.751405

合并

y₁ = 0.5 + (0.5/6)(0.25 + 2·0.378906 + 2·0.4162 + 0.751405) = 0.716

答案

y1 = 0.716
3.数列与级数

答案: D: Σ (1 + 1/k)ᵏ

收敛性:如果各项不趋于 0,级数发散(通项判别法)。Σ1/kᵖ 仅当 p > 1 时收敛,Σrᵏ 仅当 |r| < 1 时收敛。当一个级数的项在 k 很大时与这些级数的项相近时,可与之比较。比值判别法:L = lim |ak+1/ak|;根值判别法:L = lim |ak|1/k。L < 1 收敛,L > 1 发散,L = 1 无法判断。幂级数 Σck(x − x₀)ᵏ 在 |x − x₀| < R 时收敛,其中 R = lim |ck/ck+1|;项递减趋于 0 的交错级数收敛。

检验每个级数

A: Σ (1/3)ᵏ → 等比级数,r = 1/3,|r| < 1:收敛。
B: Σ k/5ᵏ → 比值判别法:L = 1/5 < 1,收敛。
C: Σ (−1)ᵏ/k → 交错级数,1/k 递减趋于 0:收敛(条件收敛)。
D: Σ (1 + 1/k)ᵏ → 各项趋于 e,而不是 0:由通项判别法,发散。

答案

D: Σ (1 + 1/k)ᵏ

答案

D: Σ (1 + 1/k)ᵏ
4.数列与级数

答案: |R₅| = 0.0001215

泰勒多项式:在 x = a 附近,光滑函数可用 Pₙ(x) = f(a) + f′(a)(x − a) + f″(a)(x − a)²/2! + … + f⁽ⁿ⁾(a)(x − a)ⁿ/n! 近似;当 a = 0 时这就是麦克劳林多项式。标准级数:eˣ = Σxᵏ/k!,sin x = x − x³/3! + x⁵/5! − …,cos x = 1 − x²/2! + x⁴/4! − …,ln(1 + x) = x − x²/2 + x³/3 − …,1/(1 − x) = Σxᵏ。拉格朗日误差界:|f(x) − Pₙ(x)| ≤ M·|x − a|ⁿ⁺¹/(n + 1)!,其中 M 是 |f⁽ⁿ⁺¹⁾| 在 a 与 x 之间的最大值。

导数的上界

M = 5! = 120

拉格朗日误差界

|R₅| ≤ 120·0.3⁶/6! = 0.0001215

答案

|R₅| = 0.0001215

真实误差更小:|f(0.3) − P₅(0.3)| = 9.674 × 10⁻⁵。

5.矩阵与行列式

答案: det A = 96

矩阵:2×2 矩阵的行列式为 ad − bc。对于 3×3,按某一行展开:每个元素乘以划去其所在行和列后剩下的 2×2 矩阵的行列式,符号按 + − + 交替。特征值 λ 满足 det(A − λI) = 0;对于 2×2,即 λ² −(迹)·λ + det = 0。

第一行的 2×2 余子式

M₁₁ = 9, M₁₂ = −3, M₁₃ = −30

代数余子式展开

det A = 4·9 − 0·(−3) + (−2)·(−30) = 96

答案

det A = 96
6.矩阵与行列式

答案: λ = 1

矩阵:2×2 矩阵的行列式为 ad − bc。对于 3×3,按某一行展开:每个元素乘以划去其所在行和列后剩下的 2×2 矩阵的行列式,符号按 + − + 交替。特征值 λ 满足 det(A − λI) = 0;对于 2×2,即 λ² −(迹)·λ + det = 0。

特征方程

λ² − (1)λ + (0) = 0

求解

λ = (1 ± √(1))/2 → λ = 0, 1
λ = 1

答案

λ = 1
7.微分方程

答案: y(1) = 0.333

二阶线性方程:对 y″ + b·y′ + c·y = 0,试 y = ert:得到特征方程 r² + b·r + c = 0。两个不等实根 r₁ ≠ r₂ 给出 y = A·er₁t + B·er₂t(过阻尼);二重根 r 给出 y = (A + Bt)·ert(临界阻尼);复根 −α ± jω 给出 y = e−αt(A cos ωt + B sin ωt)(欠阻尼,振荡)。初值 y(0) 和 y′(0) 决定 A 和 B。写成 y″ + 2ζωny′ + ωn²y = 0 时,ωn 是固有频率,ζ 是阻尼比:ζ < 1 时振荡。在常值输入下,y″ + by′ + cy = c·K 的解是稳态值 K 加上自由响应。

特征根

(r + 3)(r + 4) = 0 → r = −3, −4

由初值求常数

A + B = 1, −3A − 4B = 6
A = 10, B = −9

求值

y(1) = 10·e−3 + (−9)·e−4 = 0.333

答案

y(1) = 0.333
8.微分方程

答案: y(0.25) = 2.54

二阶线性方程:对 y″ + b·y′ + c·y = 0,试 y = ert:得到特征方程 r² + b·r + c = 0。两个不等实根 r₁ ≠ r₂ 给出 y = A·er₁t + B·er₂t(过阻尼);二重根 r 给出 y = (A + Bt)·ert(临界阻尼);复根 −α ± jω 给出 y = e−αt(A cos ωt + B sin ωt)(欠阻尼,振荡)。初值 y(0) 和 y′(0) 决定 A 和 B。写成 y″ + 2ζωny′ + ωn²y = 0 时,ωn 是固有频率,ζ 是阻尼比:ζ < 1 时振荡。在常值输入下,y″ + by′ + cy = c·K 的解是稳态值 K 加上自由响应。

稳态值与根

yss = 10, r = −0.5 ± 3j

由初值求常数

y(0) = 10 + A = 0 → A = −10
y′(0) = −0.5A + 3B = 0 → B = −1.667

求值

y(0.25) = 10·(1 − e−0.125(cos 0.75 + 0.1667·sin 0.75)) = 2.54

答案

y(0.25) = 2.54

ExamProblems · examproblems.com/courses/numerical-methods