Series · ODE Foundations · Chapter 3

常微分方程(三):高阶线性微分方程

从弹簧到 RLC 电路,系统讲清高阶线性 ODE 的全部理论:叠加原理、Wronskian 行列式、特征方程、待定系数法、参数变易法,以及共振现象。

一阶 ODE 只记得一个数;二阶 ODE 同时记得两个。 这一点点额外的自由度,恰好让同一类方程能够描述被弹拨的吉他弦、汽车的悬挂、调频收音机里的 LC 谐振电路、强风中摆动的高楼。每一种现象背后都重复出现"振荡 / 略带过冲地回到平衡 / 缓慢爬回"这同样的三种状态,而决定走哪一条的,永远是同一个代数玩具——特征方程

本章把这一整套工具一次性建起来:先证结构定理,再算出标准解,然后看着同一幅图在不同的物理背景里反复出现。

本章要点

  • 为什么"惯性 + 回复力"自然给出二阶方程
  • 三条结构定理:叠加原理、Wronskian、$y = y_h + y_p$
  • 用特征多项式求解常系数齐次方程(实根、重根、复根)
  • 阻尼比 $\zeta$ 与"欠阻尼 / 临界 / 过阻尼"的三分法
  • 待定系数法:当外力是"好看的"函数时
  • 参数变易法:当外力不那么好看时
  • 共振现象与振幅曲线的解读
  • 同一方程的电路分身(RLC),以及任意 $n$ 阶 ODE 化为一阶系统的统一手法

前置知识


1. 二阶为什么是"自然单位"

只要一个系统同时具备惯性(动能、动量、电感里的电流)和回复力(弹簧、重力、电容上的电压),牛顿第二定律 $F=ma$ 就会同时出现位置的二阶导数和位置本身:

$$ m\,\ddot x \;=\; -\,k x \;-\; b\,\dot x \;+\; F_\text{ext}(t). $$

两边除以 $m$ 并采用标准的归一化记号,就得到本章反复出现的主角:

$$ \boxed{\;\ddot x + 2\zeta\omega_0\,\dot x + \omega_0^2\,x \;=\; f(t)\;} $$

其中 $\omega_0 = \sqrt{k/m}$ 是自然频率,$\zeta = b/(2\sqrt{mk})$ 是阻尼比。本章几乎所有具体例子都是它的特例。

二阶到底多给了我们什么? 一阶方程 $\dot x = F(x,t)$ 在某时刻只需要一个数 $x(t)$ 来确定状态;二阶方程则要两个初始条件 $x(0), \dot x(0)$——可以独立地指定位置和速度,于是系统就能存储并交换两类"东西"(动能与势能、电压与电流……),而振荡正是这种交换在外部世界里的可见痕迹


2. 解空间的结构

2.1 标准形式

$n$ 阶线性 ODE 的标准写法是

$$ y^{(n)} + p_{n-1}(x)\,y^{(n-1)} + \cdots + p_1(x)\,y' + p_0(x)\,y \;=\; g(x), $$

$g \equiv 0$ 时称为齐次方程,否则称为非齐次方程

2.2 三条把一切串起来的定理

(T1) 叠加原理。 若 $y_1, y_2$ 都是齐次方程的解,则任意常数线性组合 $c_1 y_1 + c_2 y_2$ 也是。这是导数算子的线性性,写一下就明白了。

(T2) 解空间的维数。 在系数 $p_i$ 连续的区间上,$n$ 阶齐次线性 ODE 恰好有 $n$ 个线性无关的解 $y_1, \dots, y_n$,全部解都是

$$ y_h(x) \;=\; c_1 y_1(x) + c_2 y_2(x) + \cdots + c_n y_n(x). $$

这是存在唯一性定理换了一种说法:$n$ 个初始条件 $y(x_0), y'(x_0), \dots, y^{(n-1)}(x_0)$ 在一个 $n$ 维向量空间里挑出唯一一个元素。

(T3) 非齐次方程的结构。 $L[y] = g$ 的通解是

$$ y \;=\; y_h \;+\; y_p, $$

其中 $y_p$ 是任意一个特解。证明:若 $y, \tilde y$ 都满足,则 $L[y - \tilde y] = 0$,差出一个齐次解。

2.3 Wronskian:用行列式检验线性无关

如何验证 $n$ 个候选解线性无关?把它们各自微分到 $n-1$ 阶,组装成 Wronskian 行列式

$$ W(y_1, \dots, y_n)(x) \;=\; \det \begin{pmatrix} y_1 & y_2 & \cdots & y_n \\ y_1' & y_2' & \cdots & y_n' \\ \vdots & \vdots & & \vdots \\ y_1^{(n-1)} & y_2^{(n-1)} & \cdots & y_n^{(n-1)} \end{pmatrix}. $$

二阶情形:$W(y_1, y_2) = y_1 y_2' - y_2 y_1'$。

判据。 只要在区间内有任何一点 $x_0$ 满足 $W(x_0) \neq 0$,这些解就线性无关;阿贝尔等式进一步保证 $W$ 在整段区间上都不为零。

$$ W = \sin x \cdot (-\sin x) - \cos x \cdot \cos x = -1 \neq 0, $$

处处非零,它们恰好构成 $y'' + y = 0$ 的解空间的一组基。

例(相关)。 $y_1 = \sin x, y_2 = 2\sin x$,$W = 2\sin x\cos x - 2\sin x\cos x \equiv 0$。两者只是数乘关系,张成空间维数是 1 而不是 2。

Wronskian 检验线性无关:左侧无关对(W 为非零常数),右侧相关对(W 恒为零)。
Wronskian 作为线性无关的判据。左:$\sin x$ 与 $\cos x$ 无关,$W \equiv -1$;右:$\sin x$ 与 $2\sin x$ 互为数乘,$W \equiv 0$。


3. 常系数情形:特征方程

3.1 关键技巧

对常系数齐次方程

$$ a_n y^{(n)} + a_{n-1} y^{(n-1)} + \cdots + a_1 y' + a_0 y \;=\; 0, $$

试 $y = e^{rx}$。每求一次导数就提出一个 $r$,方程化为特征多项式

$$ P(r) \;\equiv\; a_n r^n + a_{n-1} r^{n-1} + \cdots + a_1 r + a_0 \;=\; 0. $$

每个根贡献一块基础解。根 $\to$ 基础解这张映射,就是这一节的全部内容。

3.2 三种情形

$$ y \;=\; c_1 e^{r_1 x} + c_2 e^{r_2 x} + \cdots + c_n e^{r_n x}. $$

例。 $y'' - 5y' + 6y = 0 \Rightarrow (r-2)(r-3) = 0$,于是 $y = c_1 e^{2x} + c_2 e^{3x}$。

$$ y \;=\; (c_1 + c_2 x + c_3 x^2 + \cdots + c_k x^{k-1})\,e^{rx}. $$

原因:当 $P(r)$ 有二重根时,算子分解为 $(D - r)^2 \cdot Q(D)$,而 $(D-r)^2[x e^{rx}] = 0$ 可以直接验证。

例。 $y'' - 4y' + 4y = 0 \Rightarrow (r-2)^2 = 0$,所以 $y = (c_1 + c_2 x)e^{2x}$。

$$ y \;=\; e^{\alpha x}\bigl(c_1 \cos\beta x + c_2 \sin\beta x\bigr). $$

为何成立。 复根对原本贡献 $C_1 e^{(\alpha+i\beta)x} + C_2 e^{(\alpha-i\beta)x}$,由欧拉公式 $e^{i\beta x} = \cos\beta x + i\sin\beta x$ 重新组合便得实形式。直观上,$\alpha$ 控制指数包络的衰减或增长,$\beta$ 控制振荡的快慢

例。 $y'' + 2y' + 5y = 0 \Rightarrow r = -1 \pm 2i$,于是 $y = e^{-x}(c_1\cos 2x + c_2\sin 2x)$——一段被收缩指数包络困住的正弦波。

3.3 在复平面上"看"特征根

特征根在复平面的位置,就是解的定性行为:

  • 左半平面($\Re(r) < 0$):解衰减,稳定。
  • 右半平面($\Re(r) > 0$):解发散,不稳定。
  • 虚轴上($\Re(r) = 0$):纯振荡,临界。
  • 离开实轴($\Im(r) \neq 0$):含频率为 $|\Im(r)|$ 的振荡分量。

三种典型的特征根分布在复平面上的位置,及其对应的时域解。
三种典型的根分布。上排:复 $r$ 平面上的位置,绿色背景标出稳定的左半平面;下排:对应的时域解。重根产生 $x e^{rx}$ 在原点附近的"小拐",复根对则给出阻尼正弦。


4. 阻尼振动:用图把三分法看清

考虑标准化形式的二阶齐次方程:

$$ \ddot x + 2\zeta\omega_0\,\dot x + \omega_0^2\,x \;=\; 0. $$

特征方程 $r^2 + 2\zeta\omega_0 r + \omega_0^2 = 0$ 的判别式是 $4\omega_0^2(\zeta^2 - 1)$。判别式的正负就决定了落到哪一种情形:

状态条件特征根行为
欠阻尼$0 < \zeta < 1$$-\zeta\omega_0 \pm i\omega_d$,$\omega_d = \omega_0\sqrt{1-\zeta^2}$在指数包络 $e^{-\zeta\omega_0 t}$ 下振荡
临界阻尼$\zeta = 1$$-\omega_0$(二重根)$(c_1 + c_2 t)e^{-\omega_0 t}$,无振荡且最快回到零
过阻尼$\zeta > 1$两个负实根两个衰减指数之和,缓慢回到零

三种阻尼状态并列:欠阻尼的指数包络下振荡、临界阻尼的最快回归、过阻尼的缓慢松弛。
$\ddot x + 2\zeta\omega_0 \dot x + \omega_0^2 x = 0$ 的三种阻尼状态。左图虚线是 $\pm e^{-\zeta\omega_0 t}$——根的虚部决定振荡频率,实部决定包络衰减速率。

工程旁注。 汽车悬挂通常调到 $\zeta \approx 0.6$–$0.7$,刚好略低于临界阻尼:稳定得快,又有人感觉不到的微小过冲。纯 $\zeta = 1$ 反而显得"死板",因为末段的回归过于缓慢;而 $\zeta = 0.1$ 会让你过完一个减速带后弹跳大半条街。门吸则故意设计成过阻尼($\zeta > 1$),避免门"砰"地关上。


5. 非齐次方程:待定系数法

5.1 流程

求 $L[y] = f(x)$(常系数):

  1. 解 $L[y] = 0$ 得到 $y_h$;
  2. 根据 $f$ 的形式一个 $y_p$;
  3. 代入并匹配系数,解出未定常数;
  4. 合成:$y = y_h + y_p$。

5.2 猜解对照表

外力 $f(x)$试探解 $y_p$
$e^{\alpha x}$$A e^{\alpha x}$
$\cos\beta x$ 或 $\sin\beta x$$A\cos\beta x + B\sin\beta x$
$n$ 次多项式$n$ 次多项式
$e^{\alpha x}\cos\beta x$$e^{\alpha x}(A\cos\beta x + B\sin\beta x)$
上述的乘积 / 求和对应的乘积 / 求和

共振修正规则。 如果你的试探解本身已经是齐次解,就乘上 $x$(双重共振则乘 $x^2$)。否则代入会得到 $0 = f$,这是不可能的。

5.3 一个完整的例子

求解 $y'' + y' + y = e^{-x/2}\cos x$。

齐次部分。 $r^2 + r + 1 = 0$ 的根是 $r = -\tfrac12 \pm \tfrac{\sqrt 3}{2} i$,所以

$$ y_h \;=\; e^{-x/2}\bigl(c_1\cos\tfrac{\sqrt 3}{2}x + c_2\sin\tfrac{\sqrt 3}{2}x\bigr). $$

试探形式。 外力 $e^{-x/2}\cos x$ 的指数包络与 $y_h$ 相同,但内层振荡频率 $\beta = 1$ 与 $\sqrt 3 / 2$ 不同,不构成共振,可以直接试

$$ y_p \;=\; e^{-x/2}(A\cos x + B\sin x). $$

求解 $A, B$。 代入并整理 $\cos$ 与 $\sin$ 的系数,得到线性方程组 $\tfrac14 A + \tfrac32 B = 1,\ -\tfrac32 A + \tfrac14 B = 0$,解得 $A = \tfrac{2}{37},\ B = \tfrac{24}{37}$。

待定系数法的三步工作流:识别外力、构造试探基、求解线性方程组得到特解。
待定系数法的三步流程。① 识别外力;② 选取与之同种指数和三角的试探基;③ 求解一个小线性方程组——绿色虚线验证 $y_p'' + y_p' + y_p$ 完全重现了 $f$。

5.4 共振:当试探解恰好落在 $y_h$ 里

对一个无摩擦的振子,按其自然频率施力:

$$ \ddot x + \omega_0^2 x \;=\; F_0\cos\omega_0 t. $$

朴素的试探 $A\cos\omega_0 t + B\sin\omega_0 t$ 已经是齐次解,所以乘 $t$:

$$ x_p \;=\; \frac{F_0}{2\omega_0}\,t\,\sin\omega_0 t. $$

振幅随时间线性增长——能量每个周期被泵入而不被取走。只要加入一点点阻尼,无界增长就变成位置 $\omega_r = \omega_0\sqrt{1 - 2\zeta^2}$ 处的有限峰值,峰高与 $1/\zeta$ 成正比

不同阻尼比下稳态振幅随驱动频率的变化曲线,阻尼越小峰越尖。
稳态振幅随驱动频率的变化,依次取 $\zeta = 0.05, 0.1, 0.2, 0.4, 1/\sqrt 2$。$\zeta \to 0$ 时峰值无界增长(无阻尼共振极限);$\zeta > 1/\sqrt 2$ 时峰完全消失——系统不再有共振。


6. 参数变易法:当猜不出来时

6.1 为什么需要它

待定系数法的对照表里只装得下指数、多项式、正弦余弦及其乘积。一旦遇到 $\sec x, \tan x, \ln x, e^{x^2}$ 之类的外力,就要换一种对任何连续 $f$ 都管用的方法——参数变易法

6.2 公式(二阶)

对 $y'' + p(x)y' + q(x)y = f(x)$,已知齐次解的一组基 $y_1, y_2$。试一个特解形式 $y_p = u_1(x)\,y_1(x) + u_2(x)\,y_2(x)$——把齐次解中的"常数"提升为函数(这正是"参数变易"的字面含义)。补充一条便利约束 $u_1' y_1 + u_2' y_2 = 0$ 后代入,得到线性方程组

$$ \begin{pmatrix} y_1 & y_2 \\ y_1' & y_2' \end{pmatrix} \begin{pmatrix} u_1' \\ u_2' \end{pmatrix} = \begin{pmatrix} 0 \\ f \end{pmatrix}, $$

它的行列式正是 Wronskian $W$。Cramer 法则给出闭式公式

$$ \boxed{\;y_p \;=\; -\,y_1 \int \frac{y_2\,f}{W}\,dx \;+\; y_2 \int \frac{y_1\,f}{W}\,dx\;}. $$

6.3 例:$y'' + y = \sec x$

齐次基:$y_1 = \cos x,\ y_2 = \sin x,\ W = 1$。被积函数刚好都很干净:

$$ \frac{y_2\,f}{W} = \sin x\,\sec x = \tan x, \qquad \frac{y_1\,f}{W} = \cos x\,\sec x = 1. $$

积分得

$$ y_p \;=\; -\cos x\int\tan x\,dx + \sin x\int 1\,dx \;=\; \cos x\,\ln|\cos x| + x\,\sin x. $$

用参数变易法求解 y’’+y = sec x:上排展示齐次基与外力,下排展示 u1、u2 与拼出的特解。
参数变易法在 $y'' + y = \sec x$ 上的演示。上排:齐次基 $y_1, y_2$ 与奇异外力 $\sec x$;下排:原函数 $u_1(x) = \ln|\cos x|$ 与 $u_2(x) = x$,以及拼合得到的特解 $y_p = \cos x \ln|\cos x| + x\sin x$。

何时用谁。 待定系数法在适用范围内更快——只需猜形式并解一个小线性方程组。参数变易法对任何连续 $f$ 都成立,但代价是两个积分(这两个积分本身可能很难算)。指数 / 三角 / 多项式形式的外力首选待定系数法;其余情况就用参数变易法。


7. RLC 电路:换上电气外衣的同一个方程

串联 RLC 电路接电压源 $V(t)$,由基尔霍夫电压定律:

$$ L\,\ddot q \;+\; R\,\dot q \;+\; \frac{q}{C} \;=\; V(t), $$

其中 $q(t)$ 是电容上的电荷,$\dot q = i(t)$ 是电流。把它和力学标准形式逐项对照:

力学量电学对应
质量 $m$电感 $L$
阻尼 $b$电阻 $R$
劲度 $k$$1/C$
位移 $x$电荷 $q$
外力 $F(t)$电压 $V(t)$

标准参数变成 $\omega_0 = 1/\sqrt{LC}$(谐振角频率)、$\zeta = \tfrac{R}{2}\sqrt{C/L}$(阻尼比)、$Q = 1/(2\zeta)$(品质因数;$Q$ 大意味着共振峰窄而高)。欠阻尼 / 临界 / 过阻尼的整套分析可以原封不动地搬过来。

串联 RLC 电路示意与三种阻尼下的阶跃响应:与弹簧体系一一对应。
左:串联 RLC 电路示意;右:在 $t=0$ 突然合上电压 $V$ 后的阶跃响应。三种状态再次出现,只是物理量换了单位。调收音机本质上就是欠阻尼且 $Q$ 极高的情形


8. 化为一阶系统

数值求解器(以及第六章 的矩阵理论)只接受一阶系统。任何 $n$ 阶 ODE 都能通过"每多一阶导数就引入一个新变量"的办法压平。对

$$ y'' + a\,y' + b\,y = f(x), \qquad y_1 := y,\ y_2 := y', $$

对应的一阶系统是

$$ \begin{pmatrix} y_1' \\ y_2' \end{pmatrix} \;=\; \begin{pmatrix} 0 & 1 \\ -b & -a \end{pmatrix} \begin{pmatrix} y_1 \\ y_2 \end{pmatrix} + \begin{pmatrix} 0 \\ f(x) \end{pmatrix}. $$

矩阵 $\bigl(\begin{smallmatrix} 0 & 1 \\ -b & -a \end{smallmatrix}\bigr)$ 的特征值,恰好就是特征多项式 $r^2 + ar + b$ 的根——也就是说,本章关于特征根的全部讨论,本质上是二维线性代数的另一种叙述方式。第六章会把这条桥充分用起来。


9. 小结

方法选择

方程类型首选方法
常系数齐次特征方程
常系数非齐次,外力"好看"特征方程 + 待定系数法
变系数 / 任意连续外力先求 $y_h$,再用参数变易法
想数值求解化为一阶系统

根 → 基础解 速查表

在解空间里贡献的基
不同实根 $r$$e^{rx}$
实根 $r$,重数 $k$$e^{rx},\ x e^{rx},\ \dots,\ x^{k-1} e^{rx}$
复根对 $\alpha \pm i\beta$$e^{\alpha x}\cos\beta x,\ e^{\alpha x}\sin\beta x$

几条要带走的核心想法

  • 二阶 ODE 是"惯性 + 回复力"系统的天然语言。
  • 特征根在 $\mathbb{C}$ 上的位置就已经告诉你解的定性行为。
  • Wronskian 是检验候选解能否张成完整解空间的行列式判据。
  • 共振就是"试探解恰好已经是齐次解"的结果——乘 $x$ 既修复了代数,也物理地解释了为何振幅无界增长。
  • 力学与电学的二阶系统是同一个方程:直觉可以零成本迁移。

习题

热身。

  1. 求 $y'' - 3y' + 2y = 0$ 的通解。
  2. 求 $y'' - 4y' + 4y = 0$ 的通解(重根)。
  3. 解初值问题 $y'' + y = 0,\ y(0) = 1,\ y'(0) = 0$。
  4. 解 $y'' + 4y = \sin 2x$,并指出共振修正项。

练习。

  1. 用参数变易法求 $y'' + y = \tan x$ 在 $(-\pi/2, \pi/2)$ 上的一个特解。
  2. RLC 电路 $R = 100\,\Omega,\ L = 0.5\,\text{H},\ C = 10\,\mu\text{F}$。计算 $\omega_0$、$\zeta$、$Q$,判断它属于哪种阻尼状态。
  3. 证明 $\ddot x + 2\zeta\omega_0\dot x + \omega_0^2 x = F_0\cos\omega t$ 的稳态振幅为 $A(\omega) = F_0/\sqrt{(\omega_0^2 - \omega^2)^2 + (2\zeta\omega_0\omega)^2}$,并证明当 $\zeta < 1/\sqrt 2$ 时峰值出现在 $\omega_r = \omega_0\sqrt{1 - 2\zeta^2}$。

编程。

  1. 复现"三种阻尼"图:用 scipy.integrate.solve_ivp 画出 $\zeta = 0.1, 0.3, 0.7, 1.0, 2.0$、$\omega_0 = 2\pi$ 时的阶跃响应。
  2. 模拟双摆(一个非线性耦合二阶系统),用数值方式说明初始条件相差 $10^{-6}$ 的两条轨迹会在几秒后明显分离。这是第九章 (混沌)的预演。

参考资料

  • Boyce & DiPrima, Elementary Differential Equations and Boundary Value Problems, Wiley (2012)。逐条定理推进的标准教材。
  • Kreyszig, Advanced Engineering Mathematics, Wiley (2011)。工程应用尤其充实,RLC 与机械振动写得透。
  • Nagle, Saff & Snider, Fundamentals of Differential Equations, Pearson (2017)。参数变易法部分讲得干净。
  • Strogatz, Nonlinear Dynamics and Chaos (1994)。第 4、5 章的几何视角线性稳定性分析,可直接对接第七章
  • MIT OpenCourseWare 18.03,Differential Equations——Arthur Mattuck 的视频课。

系列导航

上一章第二章:一阶微分方程的求解方法
当前第三章:高阶线性微分方程
下一章第四章:拉普拉斯变换

Liked this piece?

Follow on GitHub for the next one — usually one a week.

GitHub