一个方程,两台机器
把一个质量挂在弹簧上,往下拉,松手。牛顿第二定律说,质量乘加速度等于受力之和,而力有三种:弹簧按你拉伸的距离成比例地往回拉(-k x),一种阻力按速度成比例地与运动作对(-c dx/dt),以及你从外面施加的任何推力(F(t))。把它们汇齐,就得到 m d^2x/dt^2 + c dx/dt + k x = F(t)。这便是整篇指南的全部内容——一个二阶线性方程,系数为常数,正是你在本级前面用特征方程驯服过其齐次部分的那一类。
现在改造一台电路:一个线圈(电感 L)、一个电阻 R、一个电容 C 串成回路,由电压 V(t) 驱动。用基尔霍夫定律把各处的电压降加起来,就得到 L d^2q/dt^2 + R dq/dt + q/C = V(t),其中 q 是电容上的电荷。仔细看——它是*同一个方程*。质量 m 变成了电感 L,阻力 c 变成了电阻 R,弹簧劲度 k 变成了 1/C,位移 x 变成了电荷 q。这不是松散的类比;两个系统受完全相同的数学支配,所以你关于弹簧学到的每一条事实,同时也是关于电路的一条事实。这份省俭,正是线性常微分方程值得如此仔细研究的原因。
无人打扰的弹簧:自由振动
先去掉阻力,也去掉推力:m d^2x/dt^2 + k x = 0。整理一下,d^2x/dt^2 = -(k/m) x——加速度永远指回中心,离得越远,回拉越猛。特征方程 m r^2 + k = 0 有一对纯虚根 r = ±i omega_0,其中 omega_0 = sqrt(k/m),解为 x(t) = A cos(omega_0 t) + B sin(omega_0 t),一条永远摆动下去的纯正弦。常数 omega_0 就是固有频率——你拨它一下、转身离开后,系统自己鸣响的节拍。更硬的弹簧或更轻的质量鸣响得更快;这一个数,就是系统的签名。
值得看清,为什么实指数和余弦在这里是同一种动物。当特征根算出来是复数 r = ±i omega_0 时,最自然的构件就是复指数 e^{i omega_0 t}。欧拉公式 e^{i theta} = cos(theta) + i sin(theta) 把它拆成一个余弦和一个正弦,于是两个实解 cos(omega_0 t) 和 sin(omega_0 t) 不过是同一个旋转复数的实部和虚部。物理学家和工程师把复数形式一路保留到最后,只在最后一步取实部——这让振幅与相位的代数几乎变得不费吹灰之力,等强迫登场时你就会看到。
两个常数 A 和 B,恰是二阶方程总要携带的那份自由——回想前面讲过的,阶数数的是你必须提供多少条起始事实。在这里,它们由质量从哪里出发、运动得多快来定死,即 x(0) 与 dx/dt(0)。等价地,把解写成单个平移过的余弦 x(t) = R cos(omega_0 t - phi);这时 R 是振幅(摆多远),phi 是相位(从一个周期的哪里开始)。能量在被拉伸的弹簧(势能)和运动的质量(动能)之间来回晃荡,总量始终不变,因为还没有任何东西去排干它。
阻尼:能量去了哪里
真实的弹簧会慢下来;真实的电路会散热。把阻力放回去:m d^2x/dt^2 + c dx/dt + k x = 0,这就是阻尼谐振子。特征方程是 m r^2 + c r + k = 0,它的判别式 c^2 - 4 m k 决定了系统性格的一切。求根公式给出 r = (-c ± sqrt(c^2 - 4mk)) / (2m),根据那个平方根下面的符号,会发生三种本质不同的情形。
- 欠阻尼(c^2 < 4mk):根为复数,r = -gamma ± i omega_d,其中 gamma = c/(2m)。解为 x(t) = R e^{-gamma t} cos(omega_d t - phi)——它仍在振荡,但被裹在一个不断收缩的包络 e^{-gamma t} 之内。拨响的吉他弦、逐渐停下的秋千。注意鸣响频率 omega_d = sqrt(omega_0^2 - gamma^2) 比固有的 omega_0 略*低*;阻尼不仅让它衰减,也让它摆得稍慢一点。
- 临界阻尼(c^2 = 4mk):判别式消失,两根合并成一个重根 r = -c/(2m)。重根逼出一个带有额外因子 t 的第二解,于是 x(t) = (A + B t) e^{-gamma t}。质量不越过中心、径直滑回原位,而且关键在于它以*尽可能短的时间*做到这一点——这正是好的闭门器和汽车减震器被调到此处的原因,恰在振荡与爬行之间的刀锋上。
- 过阻尼(c^2 > 4mk):两根都是负实数,于是 x(t) = A e^{r1 t} + B e^{r2 t} 衰减下来,完全不振荡——系统像蜂蜜里的勺子般慢慢渗回静止,比临界情形还要慢。一扇配了太强闭门器的纱门,要花上老半天才合拢。
无论哪种情形,注意这条统一的事实:只要有正的阻尼,齐次解就带着一个衰减因子 e^{-gamma t},因而随时间流逝*淡向零*。这个 x_h(t) 被称作瞬态——它记得初始条件,短暂地鸣响一阵,然后便消失了。请记住这一点,因为它正是理解一个稳定推力会对系统做什么的钥匙。
驱动它:瞬态对稳态
现在用你自己的节拍去推这个质量:取一个正弦力 F(t) = F_0 cos(omega t),以*你的*频率 omega 驱动,而它未必与系统的固有频率 omega_0 相符。完整解是齐次瞬态加上一个强迫特解部分,x(t) = x_h(t) + x_p(t)。求 x_p 最干净的工具是待定系数法:既然右端是一个频率为 omega 的正弦,就猜 x_p 是一个*同一*频率的正弦,x_p(t) = R cos(omega t - phi),再代回去解出振幅 R 与相位滞后 phi。
好处正是在这里兑现的。瞬态 x_h 会衰亡(我们刚看到它带着 e^{-gamma t}),于是过一阵子只剩下 x_p。这个幸存的部分就是稳态:系统已经忘了自己当初是怎么开始的,现在只是*以驱动频率 omega* 一路摆动,而非以它自己的 omega_0。这个结论确实有用——把任何阻尼线性系统驱动得足够久,它就会锁定到你的节拍上。早期那段混乱的运动,是系统固有的鸣响与你的推力相争,那便是瞬态;最终那段干净的节拍,就是稳态。
稳态的振幅才是奖品。把猜测代入,得到 R = F_0 / sqrt((k - m omega^2)^2 + (c omega)^2)。把它当作驱动频率 omega 的函数来读:它告诉你,一推接一推,对给定的推力你得到多大的响应。输出振幅与输入之比——传递函数——正是工程师思考每一个滤波器、天线和减震座架的核心。再看看那个分母在哪里变小:当 m omega^2 趋近 k,也就是 omega 趋近 omega_0 = sqrt(k/m) 时。那便是通往共振的门户。
共振,以及它温和的表亲:拍
恰好以系统的固有频率去驱动它,omega = omega_0,弹簧便在每一刻都与你的推力一拍即合:你总是顺着它已经运动的方向往里加能量,一推接一推又一推。在轻阻尼下,稳态振幅 R 膨胀到约 F_0/(c omega_0)——很大,且随着阻尼 c 缩向零而无界地增长。这就是共振:一个微小的周期力,以恰好对的节拍施加,便堆起一个巨大的响应。正是它,让一个恰在刻度频率上的微弱无线电信号从空气中被挑选出来、而其余全被忽略;让歌唱家的一个音符震碎酒杯;也正是被归咎于塔科马海峡大桥在垮塌前那狂野振荡的机制。
现在以*接近*但不恰好等于固有频率去驱动它——omega 在 omega_0 附近,阻尼可忽略。把固有的鸣响与强迫响应叠加起来,两个频率几乎相等的余弦,一条三角恒等式便把它们的和变成一个以平均频率快速振荡、却包裹在一个以*差*频 (omega_0 - omega)/2 缓慢起伏的包络之内的波。振幅胀大又消退,胀大又消退。这就是[[beats|拍]]:当两根稍微跑调的吉他弦一起发声时,你听见的那种一涨一落的搏动,那缓慢的「哇——哇——」声,你把拍调得越来越慢,直到它消失、两弦相合,便算调准了。拍是共振温和的表亲——系统与驱动来回交换能量,只因它始终差那么一点跟不上步。
把它合起来,以及它通向何处
退一步看,整个故事就是一幅图。完整的运动永远是 x(t) = x_h(t) + x_p(t):一个瞬态,记着你的起始条件,并(在阻尼下)淡去;加上一个稳态响应,只要驱动还在,它就一直延续。自由、阻尼、强迫、共振、拍——它们不是五个互不相干的话题,而是同一个方程的五种读法,区别只在于你打开了什么。下面这幅图一眼勾出这片地形。
m x'' + c x' + k x = F(t) omega_0 = sqrt(k/m) gamma = c/(2m)
F = 0, c = 0 free x = R cos(omega_0 t - phi) rings forever
F = 0, c > 0 transient x = R e^{-gamma t} cos(omega_d t - phi) fades
underdamped c^2 < 4mk (oscillates, decaying)
critical c^2 = 4mk (fastest return, no overshoot)
overdamped c^2 > 4mk (creeps back, no oscillation)
F = F0 cos(omega t) x = [transient] + [steady state at omega]
amplitude R = F0 / sqrt((k - m omega^2)^2 + (c omega)^2)
omega ~ omega_0 R blows up -> RESONANCE
omega near omega_0, c~0 slow envelope -> BEATS通向这一切还有一条更利落的路,留待后面的指南完整展开:拉普拉斯变换把整个微分方程连同初始条件一起,化成关于变量 s 的寻常代数,传递函数 1/(m s^2 + c s + k) 在那里直接现身,而共振则表现为极点向虚轴爬近。眼下,你搭起的这套手算图景才是要留住的:猜一个正弦,读出振幅与相位,盯住那个分母。
再往上一级,把整件事推广开来:耦合两个弹簧,或一整串弹簧,一个标量方程就变成一组耦合的线性常微分方程*系统*。你在这里找到的固有频率,会裂成若干个简正模式,每个以自己的节奏鸣响,而一举解出它们全部的优雅工具,正是矩阵指数 e^{A t}——下一篇指南的主题。本篇所讲的一切,都是那朵更大的花的一维种子。