非齐次方程、待定系数法与共振
上一章的弹簧被拉开、松手,接下来就靠自身的惯性、恢复力和阻尼运动。我们已经能从特征根看出它会不会振荡、振幅会不会衰减。现在给这个装置接上一台往复施力的小电机:弹簧还没来得及停下来,下一轮外力又到了。运动当然会改变,但究竟是跟着电机走,还是坚持自己的节奏?把电机转速调快一点,位移一定会更大吗?
这些问题把我们带到非齐次方程。先把“机器一直在推”写成数学语言:系统每一刻受到的合力,除了原来的恢复力和阻力,还多了一项由外界指定的力。一般的二阶常系数线性方程于是写成
ay′′+by′+dy=g(t),a=0.
这里用 d 表示常数项系数,把 c 留给稍后弹簧模型的阻尼系数。g(t) 描述输入怎样随时间变化,y(t) 描述系统怎样回应。接下来,我们先解决“怎样把输入算进去”,再回到那台电机,看看频率为什么能把同一个系统推向完全不同的运动。
找到一个受迫解,为什么就够了
假设两套完全相同的装置,受到完全相同的外力,只是开始的位置和速度不同。外力在两套装置里做的事一样,我们把两条位移曲线相减,外力项就抵消了。剩下的差异,应当只按系统原来的自由运动规律演化。
把这个想法写清楚。记
L[y]=ay′′+by′+dy.
这只是为左边的一串运算起一个短名字。求导和乘常数都保持线性,因此 L[u+v]=L[u]+L[v]。如果已经找到一个函数 yp,满足 ,那么任意另一个解 都满足
L[y−yp]=L[y]−L[yp
所以 y−yp 必须是齐次方程的解。上一章已经会求齐次通解 yh=C,于是非齐次通解必定是
y=C1y1+C2y
反过来,把这个式子代回去,前两项产生零,最后一项产生 g(t),确实得到原方程。两个方向都说明白了,我们才知道这不是恰好凑出一些解,而是找到了全部解。
这里的“一个特解”也要理解准确:它只需满足微分方程,暂时不必满足题目给出的初始条件。不同特解之间可以相差一个齐次解,因此特解本身并不唯一;一旦选定 yp,再让完整的 yh+yp 满足初值,最终曲线才被确定。若 在一个开区间连续,常数 ,该区间内任一点给定 和 ,就有唯一解覆盖这个区间。
还有一个容易误用的叠加关系。同一输入 g 的两个解直接相加,会产生输入 2g,通常不再解原方程。能直接相加的是不同输入所对应的特解:如果 L[yp1]=g1、,就有
L[yp1+yp2]=g1
后面遇到“恒定力加周期力”,我们就可以分开计算,再把结果合起来。
待定系数法究竟在猜什么
假设外力随时间匀速增大,右端出现 t。我们很自然地想:响应会不会也是某个多项式?这不是靠外形碰运气。多项式求导后仍然是多项式,而且次数只会降低;指数 eλt 求导后只多一个常数;正弦和余弦求导后互相转换。只要把可能出现的同类项备齐,代回方程就只剩有限个常数需要确定。
例如 tcos2t 的导数是 cos2t−2tsin2t。继续求导,会出现 tcos2t、tsin2t、、,但不会生出 或 。因此可以在这四个函数的线性组合里寻找响应。
先暂时排除与齐次解重复的情况,常用试探式可以放在一起比较。表中的 Pn 表示次数为 n 的已知多项式,Qn、R 表示系数尚待确定、次数至多为 的完整多项式。
最后一行中,n 取输入的两个多项式次数中的较大者;若其中一个为零,就用另一个的次数。两边的试探多项式都要保留从常数到 tn 的各项,即使输入里缺少某些项,也先给它们留位置。求出的系数可以为零,但不该在计算前随意删掉自由度。
这也解释了两个常见失误。输入是 t2 时,只试 At2 往往不够,因为导数会产生 t 和常数,需要另外的系数把它们调整好。输入只有余弦时,只试余弦也往往不够,因为一阶导数会带入正弦。把函数族补全,看似多写了几项,却让后面的比较系数有了解的余地。
方法还有边界。lnt 反复求导会得到 1/t、1/t2 等越来越多的形式;tant 也不会停留在上述有限模板中。对这类输入,我们暂时没有理由相信一张待定系数表能给出答案。变系数方程则可能把有限函数族中的项送到族外,同样不能机械套表。个别特殊题可以巧妙猜出特解,但那不等于这套常系数方法已经成为通法。
把多项式和指数输入真正算完
先看一个逐渐增强的输入。为集中练习计算,这里的变量和参数都视为无量纲,要求解
y′′+3y′+2y=2t
齐次特征方程 (r+1)(r+2)=0,给出 yh=C。右端是二次多项式,齐次解里又没有多项式项,因此设
yp=At2+Bt+D.
它的一、二阶导数分别是 2At+B 和 2A,代入得到
L[yp]=2At2+(6A+2B)t
与右端逐项比较:2A=2,6A+2B=6,2A+3B+2D=,所以 、、。我们找到 。现在才轮到初始条件:
y=C1e−t+C2e
C1+C2+1=0,−C
解出 C1=−2、C2=1,最终
y=t2+1−2e−t+e−2t
如果一开始误把 yh(0)=0、yh′(0)=0,就会把两个常数都设为零,得到初始位移为 的错误曲线。初值约束的是完整运动,不能提前只交给齐次部分。
再让输入带一个指数因子:
y′′+3y′+2y=et(6t
齐次根仍然是 −1,−2,与输入指数中的 1 不重合。设 yp=et(At+ 可以直接求导,但我们可以少展开几行:令 ,由乘积法则
y′=et(u′+u)
所以方程等价于
u′′+5u′+6u=6t+5.
设 u=At+B,得到 6At+5A+6B=6t+5,因此 、。特解是 ,通解为
y=C1e−t+C2e
这个小替换并没有换一种神秘方法,只是先把共同的指数提出来,让待定系数运算落在更简单的多项式上。此题齐次部分衰减,但特解持续增长;所以即使系统的自由运动会衰减,也不能把任意特解都叫作“长期有界的稳态振动”。输入本身怎样变化,同样决定输出怎样变化。
与齐次解重合时,为什么要乘时间
现在把输入换成系统原本就拥有的模式:
y′′+3y′+2y=4e−t.
若试 Ae−t,无论 A 是多少,代入左边都等于零。它确实是一个很好的齐次解,却没法产生右边的 4e−t。出现 0=4e,失败的是试探式,而不是微分方程。
让原来的指数模式乘一个随时间变化的幅度,设 y=e−tu。代入并消去共同的 e−t,原方程变成
u′′+u′=4.
我们只需要一个特解,试 u=At 就够了,因为 u′′+u′=A。得到 A=,所以
yp=4te−t,y=C
多出来的 t 让求导时留下一个非零项,恰好提供输入。你还可以立刻检查一个事实:te−t 最终仍趋于零。这道题需要乘 t,却没有振幅无限增长,更没有一个持续的周期外力。把“试探式重复”一律说成物理共振,会在这里出错。
如果重复不止一层呢?考虑
y′′+4y′+4y=6e−2t.
特征方程 (r+2)2=0,齐次解同时包含 e−2t 和 te。所以试 不行,试 仍不行。令 后,左边只剩 ,于是
u′′=6.
取 u=3t2,得到
yp=3t2e−2t,y=
这次需要 t2,因为算子把幅度函数的零阶和一阶部分都消去了,必须让二阶导数留下东西。
把规律收拢起来,记特征多项式 p(r)=ar2+br+d。对于输入 eλtP,若 是特征根,重数为 ,就在整组基础试探式外乘 ;不是根则取 。对于带正弦余弦的输入,检查的是复数 是否为根,同样按其重数乘 。实系数二阶方程中的非实根只能是单根,因此这类重复最多乘一次 。
为什么多项式项也遵守这个规则?同样把 y=eλtu 代回去,就得到
L[eλtu]=eλt[au
若 p(λ)=0,左边保留 u,同次数多项式就有机会匹配右端。若 λ 是单根,u 项消失但 u 项仍在,试探多项式要多一阶;若是二重根, 和 都消失,必须多两阶。乘 恰好给出所需次数,同时避开已经属于齐次解的低次部分。这里按每一个指数与频率相同的输入组判断,不要因为一组重复,就把所有互不相关的输入一起乘 。
用一个最简单的同频例子检查规则:在 y″+y=sin t 中,正弦和余弦都已是齐次模式,原试探式被算子消去;乘 t 后求得特解 −(t/2)cos t。图中展示的是一个特解,完整解还需加上齐次部分。
正弦输入、混合输入与相位
回到周期性推动。先求
y′′+2y′+5y=10cost.
它的齐次根为 −1±2i,基础试探式 Acost+Bsint 与齐次解不重复。代入得到
L[yp]=(4A+2B)cost+(4B−2A)
为了让左边恰好只留下 10cost,必须同时满足
4A+2B=10,4B−2A=0.
得到 A=2、B=1,所以特解是 2cost+sint。正弦项并不是多出一种外力,它用来表示输出峰值相对于输入峰值的时间错位。利用和角公式,可以写成
yp=5cos
于是 ϕ=arctan(1/2),输入在 t=0 取最大值,而这个周期特解在 t=ϕ 才取最大值。我们把这种时间上的落后称为相位滞后。
如果装置最初静止于平衡位置,完整初值解还需要齐次部分补上起步过程。通解是
y=e−t(C1cos2t+C
代入 y(0)=0 得 C1=−2;代入 y′ 得 ,因此 。最终
y=e−t(−2cos2t−23
开始时两部分相互配合,让位移和速度都为零;时间久了,指数项退去,只剩跟外力同频的周期运动。这里衰减的齐次部分叫暂态响应,留下的周期特解叫稳态响应。若没有阻尼,齐次振荡不衰减,我们就不能说初始条件的影响会自行消失。
更复杂一点的输入也不必另背一套方法。例如求
y′′+2y′+2y=e
先设 y=e−tu,方程变成 u′′+u=2cos2t。试 ,代入得 、。因此
yp=e−t(−32
指数、正弦和余弦混在一起,仍能通过有限次比较系数求出结果。
如果周期输入的强弱还在缓慢增加,例如 y′′+4y=3tcost,我们就要把一次多项式放在正弦和余弦前。设
yp=(At+B)cost+(Dt+E)sint.
这里输入角频率 1 与固有角频率 2 不同,不乘额外的 t。求导、合并同类项得到
yp′′+4yp=(3A
比较系数依次得到 A=1、D=0、B=0、E=2/3,所以
yp=tcost+32sint.
输入没有单独的正弦项,答案却需要它抵消求导带来的项;这正是“备齐整个函数族”真正派上用场的地方。
还有一种组合能把前面的规则串起来:输入既有指数包络,又与系统的复特征根重复。例如
y′′+2y′+5y=8e−tcos
齐次解含有 e−tcos2t 和 e−tsin2t,所以不能只设 e。按规则,整组要乘一次 。仍用 ,方程化为
u′′+4u=8cos2t.
设 u=t(Acos2t+Bsin2t),左边成为 −4Asin2t+4Bcos2t。比较系数得到 、,于是
yp=2te−tsin2t,y=
从代数上说,输入和齐次模式的重复确实要求乘 t。从运动上看,外力幅度在衰减,特解的包络 2te−t 先增加后减小,最终仍趋于零。只盯着式子里出现了 t 就宣布“发生无限增长的共振”,会忽略同一个式子里更强的指数衰减。
到这里,可以形成一个不依赖死记表格的检查习惯:先把齐次根算出来,再把输入拆成指数与频率相同的几组,为每组备齐多项式和三角函数,按根的重数决定是否额外乘时间。系数比较完成以后,至少代回原方程一次;若给了初值,再检查完整解的位移和速度。一个只满足方程却不满足初值的漂亮公式,还不是题目所问的那条运动轨迹。
最后看叠加。对 y′′+4y=8+5et+6cos2t,常数输入给出特解 ,指数输入给出特解 ,而 与齐次模式重复,需要试 。由于
(dt2d2
可得 A=0、B=3/2。通解于是为
y=C1cos2t+C2sin2t+
只有余弦那一组乘了时间。线性让三种输入可以分开处理,最后再由同一个总解接受初始条件。
电机持续推动时,弹簧怎样回应
现在把数学符号换回有单位的装置。设质量块只沿一条直线运动,位移 x 从没有电机外力时的静态平衡位置量起。弹簧在所考虑的位移范围内服从线性恢复力 −kx,阻尼力近似为 −cx′,电机提供给定外力 F(t);质量和参数均视为常数。牛顿第二定律是“质量乘加速度等于合力”,所以
mx′′=−cx′−kx+F(t),
也就是
mx′′+cx′+kx=F(t),m
若装置竖直放置,重力已经由静态平衡伸长抵消,不再额外写进以平衡位置为原点的方程。使用国际单位时,m 是千克,c 是牛顿秒每米,k 是牛顿每米,F 是牛顿,x 是米;左边每一项都必须是力。除以质量后,右端是 F(t)/m,不能把原来的力幅值直接当作加速度幅值。
同一个二阶非齐次方程可以同时解释机械振动、电路响应和许多工程系统。
我们先研究 F(t)=F0cosωt,其中 F0>0, 是外力角频率,单位为弧度每秒;对应每秒振动次数是 。取 时,上一章的三种阻尼情形都会使齐次解趋于零,因此只需找一个周期特解,就能知道足够久以后的运动。
设 xp=Acosωt+Bsinωt,比较系数得
(k−mω2)A+cωB=F0,
记 D=(k−mω2)2+c2ω2,解这个二元一次方程组,得到
A=DF0(k−mω2)
于是可以写成振幅与相位的形式
xp=R(ω)cos(ωt−ϕ),R(ω)
cosϕ=Dk−
不要只记 tanϕ=cω/(k−mω2) 再随手按反正切。ω 越过 k 后,余弦为负、正弦为正, 应当在第二象限;普通反正切的主值可能给出错误的负角。上面同时指定正弦和余弦的写法,就把象限保留下来了。对 、,取 ,输出相对外力滞后 的时间。
相位也有可以直接检验的极端情况。低频时 k−mω2 为正且占主导,ϕ 接近零,外力往哪边推,位移大致就往哪边偏。恰好在 ω=ω0= 时,弹性项与惯性项在系数方程中抵消,,响应是 ,位移落后外力四分之一周期。此时振幅有限,而且这个频率一般并不是位移振幅的最大点。再继续提高频率, 接近 ,位移近似与外力反相。这些判断能帮助我们发现算式中的符号错误,也让相位角不再只是计算器给出的一个数。
这个公式还能回答“转得越快,位移越大吗”。很慢的外力下,R(ω) 接近 F0/k,质量块近似跟着不断移动的静态平衡位置走。很快的外力下,R(ω) 近似为 F,反而变小,因为要让质量块快速来回加速,需要很大的力。最大的响应若存在,就应当出现在两者之间。
串联 RLC 电路有同样的数学结构。以电荷 q 为未知量,把电感、电阻、电容分别记为 L,R,C,外加电压记为 E(t),回路中的电压平衡给出
Lq′′+Rq′+C1q
电流为 q′。这里机械位移对应电荷,力对应电压;因此位移振幅的共振结论对应电荷振幅,若改研究电流,还要多考虑求导带来的频率因子,不能不加区分地套用。
有阻尼时,共振峰出现在哪里
把外力幅值 F0 和装置参数固定,只改变频率,画出的 R(ω) 叫振幅频率响应。它讨论的是多次实验中各个频率对应的长期振幅,不是一条运动曲线里的位移随时间变化。
要让 R 最大,只需让分母的平方最小。对
D(ω)=(k−mω2)2+c2ω
求导,得到
D′(ω)=2ω(2m2ω2+c
若 0<c2<2mk,括号内的式子在某个正频率由负变正,分母先减后增,因此振幅在
ωr=mk−2
取得峰值。代回振幅公式还能得到
Rmax=ck/m−c
这个有限的峰值通常叫作阻尼系统的共振峰。若 c2≥2mk,则 D 随正频率增加而增加,振幅从零频率的静态值 F0/k 开始下降,没有正频率的位移共振峰。这里把 ω 也纳入比较时,输入就是恒力,不再是来回振动。
注意三个频率各自回答的问题。ω0=k/m 是无阻尼自由振动的固有角频率; 是欠阻尼自由振动的角频率; 则使受迫稳态的位移振幅最大。存在正频率峰且阻尼为正时,。欠阻尼只要求 ,所以某些系统虽然自由运动会振荡,位移频率响应却没有正频率峰。
算一个具体装置。设 m=1 千克、c=2 牛顿秒每米、k=10 牛顿每米,外力幅值 F0= 牛顿。它有 ,因此
ωr=8=
若实际电机取 ω=3 弧度每秒,代入系数方程可得
xp(t)=376cos3t+
相位满足 tanϕ=6 且位于第一象限,所以 ϕ=arctan6。这次的振幅略小于 1 米,和“3 已稍稍越过峰值频率 22”一致。这些数值是理想模型的计算示例;若实际弹簧只在线性范围内允许很小的位移,就应降低力幅值或更换参数,而不是把大位移预测无条件外推。
无阻尼时,接近同频与精确同频有什么不同
把阻尼设为零,弹簧不再持续耗散机械能。先考虑从平衡位置静止开始、外力频率还没有精确对上的情形:
mx′′+kx=F0cos
待定系数给出 xp=F0cosωt/[m(ω0。但这个特解在 的位移不为零,必须加上齐次振荡抵消它。由初值得到
x(t)=m(ω02−ω
这里两个频率的振荡会一直共存,因为齐次部分没有衰减。当频率很接近时,它们有时互相加强,有时互相抵消,出现一阵强、一阵弱的拍频现象。把余弦差写成乘积,就能看见这种节奏:
x(t)=m(ω02−ω
后一项快速振动,前一项缓慢改变振幅。取绝对值后的包络每隔 2π/∣ω0−ω∣ 重复一次,这是强弱变化的拍周期。对任意固定的不同频率,位移始终满足
∣x(t)∣≤m∣ω02−ω2∣
分母虽小,仍是非零常数,运动会反复增强再减弱,不会一直线性长大。例如 m=1、k=4、F0=1、ω=,则
x(t)=39100(cos1.9t−cos2t)=
拍周期是 20π 秒,包络最大值为 200/39 米。这是忽略阻尼、并假定弹簧在预测位移范围内仍保持线性的模型结果。
现在让外力精确满足 ω=ω0。普通余弦试探式成为齐次解,必须改用 t(Acosω0t+B。由
(dt2d2+ω
可得
xp(t)=2mω0F
这个特解恰好满足零初始位移和速度,因此就是上述静止起步问题在精确同频时的完整解。它振荡的上下包络为 ±F0t/(2mω0),随时间线性展开。例如 m=2 千克、k 牛顿每米、 牛顿,固有角频率为 弧度每秒,同频施力得到 ,按这些单位位移以米计。
这就是理想无阻尼的精确共振。它没有在某个有限时刻突然变成无穷大,解在每一个有限时刻都存在;说“无界”,指的是时间继续推进时会出现任意大的位移峰值。实际装置会在此之前遇到阻尼、非线性或位移限制,方程的假设需要重新检查。
还可以从拍频解走到精确共振:固定一个有限时刻 t,令 ω→ω0,虽然分母趋于零,分子也趋于零,两者的比值趋于 tsinω0t/。因此完整初值解连续地接上共振解。不能只看特解分母变小,就断言系统在输入刚开启时立刻出现巨大位移;齐次部分负责满足初值,早期会发生关键的抵消。
长期振动,其实是一笔能量账
最后用能量把刚才的公式连起来。质量块的动能加上弹簧势能是
E(t)=21m[x′(t)]
对时间求导,再用运动方程替换 mx′′+kx:
E′=x′(mx′′+k
F(t)x′ 是外力做功的瞬时功率:力与速度同向时为正,反向时为负。c[x′]2 是阻尼每秒耗散的能量,永远非负。这条等式说明了“持续推动”为什么不一定让能量永远增加:外力并非每一刻都在补能,阻尼也在不断耗能。
对于有阻尼的周期稳态 xp=Rcos(ωt−ϕ),系统经过一个周期回到相同位置和速度,机械能也回到原值。对整个周期取平均,能量变化率为零,于是平均输入功率恰好等于平均耗散功率:
⟨F(t)xp′(t)⟩=21
中间的式子可由三角函数一个周期的平均值算出,最后一个等号也可以用 sinϕ=cωR/F0 检查。位移振幅达到有限值,正是每周期输入和耗散能够平衡的结果。稳态仍在运动,仍有能量流过,不能把“稳态”理解成停在原地。
无阻尼且精确共振时,耗散项消失。令 K=F0/(2mω0),零初值解是 x=Ktsin,其速度为 。代入能量后,随时间增长最快的部分为
E(t)=8mF02t
这里 O(t) 表示其余项至多按时间的一次幂增长。位移包络按 t 增长,能量的主导项就按 t2 增长。它是外力长期做功积累出来的,不是一个代数分母在瞬间“制造了无穷大”。
代数重复、无阻尼精确共振、阻尼系统的共振峰是三个相关但不同的判断。te−t 可能来自试探式重复,且仍然衰减;无阻尼同频周期输入会产生随时间增长的振荡;有正阻尼时,普通正弦余弦试探式并不与衰减的齐次模式重复,却仍可能在一段频率附近出现有限的振幅峰。判断时要把方程参数、输入形式和所研究的量一起说清。
练习:从试探式走到运动解释
练习一:求 y′′+3y′+2y=8 在 y(0)=、 下的解,并解释长期行为。
试常数特解 yp=A,代入得 2A=8,所以 A=4。齐次根为 −1,总解为 。初值给出 和 ,得到 、。因此
练习二:求 y′′+2y′+y=6te−t 的通解。为什么不能只把普通试探式乘一次 ?
特征根 −1 是二重根,应取 yp=t2e−t(At+。也可以令 ,把方程化为 ,两次积分取一个特解 。因此
练习三:求 y′′+4y=6cos2t+10et 的通解,指出哪一组需要额外乘 t。
齐次解为 C1cos2t+C2sin2t。余弦输入对应的特解是 (3/2)t,因为 ;指数输入试 ,由 得 。因此
练习四:求 x′′+2x′+5x=10cos3t 的周期稳态响应,给出振幅,并判断相位位于哪个象限。
设 xp=Acos3t+Bsin3t,代入得到 −4A+6B=、,解得 、。因此
练习五:装置参数为 m=1、k=9、c=5,采用一致的国际单位。它的自由运动会振荡吗?周期外力的位移振幅有正频率共振峰吗?
自由运动的判别式为 c2−4mk=25−36=−11<0,属于欠阻尼,其角频率为 11。但位移共振峰要求 ,这里 ,不满足。因此自由运动有衰减振荡,受迫位移振幅却随正频率增加而下降。把有自由振荡等同于有位移共振峰,是把两个不同条件混在了一起。
练习六:对 x′′+4x=4cosωt,取零初始位移和速度。分别写出 ω=2 与 的解,并说明为什么前一个公式的分母趋于零,不代表固定时刻的位移趋于无穷。
不同频率时,先取特解 4cosωt/(4−ω2),再由初值补上齐次项,得到
x(t)=
练习七:一个阻尼系统的周期稳态为 xp=0.2cos(3t−ϕ) 米,阻尼系数 c=4 牛顿秒每米。求平均耗散功率,并说明为什么它等于平均外力输入功率。
速度是 xp′=−0.6sin(3t−ϕ) 米每秒,所以瞬时耗散功率为 c( 瓦。平方正弦在一个周期的平均值为 ,因此平均耗散功率是 瓦。周期稳态中,经过一个周期后位置和速度回到原值,机械能没有净变化;对 在这一周期积分并除以周期,便得到平均外力输入功率也为 瓦。外力某些时刻可以做负功,但整周期的净输入为正,用来补偿阻尼耗散。
走到这里,我们已经能处理多项式、指数、周期力及它们的有限组合,也能从一个解里分清初始状态、持续输入和能量收支。接下来只改动一个地方:假设外力变成 1/(1+t2),或者系数随时间改变,有限函数模板就未必能封闭。齐次方程仍然给出两种基本运动方式;下一章要尝试让它们前面的两个常数变成函数,用方程决定这些函数怎样变化,从而直接构造更一般的受迫响应。