常系数齐次方程与自由振动
上一章我们弄清楚了二阶方程为什么要给两个初始条件,也知道了:只要找到两个线性无关的齐次解,就能用它们拼出全部解。现在欠下的那一步是,这两个函数究竟从哪里找?
先想象一块连着弹簧的物体。把它拉离平衡位置,然后松手。弹簧把它往回拉,可物体回到中间时往往还带着速度,于是又冲到另一边;如果阻力很强,它也可能慢慢挪回中间,不再来回摆动。同样是“拉开再松手”,为什么会出现这么不同的运动?
这章要把两件事接起来:一边是代数里二次方程的根,另一边是你能想象出来的衰减、回弹和振动。我们先找出常系数齐次方程的基本解,再把每一种解放回弹簧模型中,看初始位置和初始速度如何决定一条具体轨迹。
指数函数为什么会成为第一个候选
弹簧的位移、速度和加速度会同时进入运动方程。如果质量、阻力参数和弹簧硬度都固定,方程中的系数也就固定。先暂时把物理单位放在一边,研究一般形式
ay′′+by′+cy=0,a=0.
这里 a,b,c 都是实常数,自变量用 t。“齐次”说的是右端为零,并没有要求初值也为零。一个已经被拉开的弹簧,即使松手后没有外部驱动力,也完全可以继续运动。在这个线性模型里,初始状态储存的影响会通过齐次解保留下来。
我们想找一种函数,连续求导以后形状还尽量简单。多项式求一次导会降一次次数,三角函数会在正弦、余弦之间转换,而指数函数有个格外方便的性质:求导只多出一个常数倍。于是先试
y=ert,y′=re
把它们放回方程,每一项都带着相同的 ert:
ar2ert+brert+
指数函数从不为零,因而这个候选函数能满足方程,当且仅当
ar2+br+c=0.
这就是特征方程。原来的问题问“哪一个函数能协调自身与自身的导数”,现在先缩成了“哪个增长或衰减速率 r 能让三个系数恰好抵消”。求出的 r 不是位移,也不是初始条件,它是基本运动方式中的速率参数。
不过,试出一个解还不等于找到通解。我们仍然要兑现上一章的要求:凑齐两个线性无关的解。二次方程的判别式
Δ=b2−4ac
把接下来的工作分成三种情况:两个不同实根、一个二重实根、一对共轭复根。它们恰好会给出三种不同的解形状。
这些公式在整个实数轴上都有定义,常系数方程的任意两个初始数据也会决定全局唯一解。物理实验通常从 t=0 开始,所以讨论运动时我们只取 t≥0;这与解的数学定义域是两回事。
两个实根:两种变化速度一起出现
假设特征方程有两个不同实根 r1,r2。刚才的代入已经告诉我们,er1 和 都是解。它们能否算作两个独立的基本解?用上一章的 Wronskian 检查:
W(t)=
因此全部解就是
y(t)=C1er1t+C
你可以把它读成:“系统允许两种指数变化,初始状态决定各放进去多少。”这里的“多少”可以是负数。两个分量反向叠加时,合成曲线可能先往外走一段,再掉头回来,不能只看每个指数各自的图像就断言总位移单调。
具体求解
y′′+5y′+4y=0,y(0)
特征方程是
r2+5r+4=(r+1)(r+4)=0,
所以先写出保留两个常数的通解,再求导:
y=C1e−t+C
初值给出的条件是
C1+C2=3,−C1
第二式与第一式相加得到 −3C2=3,于是 C2=−1,C。这条初值轨迹为
y(t)=4e−t−e−4t.
回头检查:y(0)=4−1=3,y′(0)=−4+4=,而两个指数各自满足原方程,所以它们的组合也满足。对 ,有
y′(t)=4(e−4t−e−t)<
因此这一组初值确实对应从 3 开始下降的曲线。这里的单调性是我们算出来的,不是“两个负根”自动附送的结论。
长期以后,e−4t 比 e−t 小得多,因为两者之比是 e−3t→0。于是 的尾部越来越接近 。我们常说“慢衰减项控制长期行为”,需要补上一个条件:那一项的系数不能为零。如果初值恰好只激发快衰减项,那么尾部当然也只剩快衰减。
两个独立的指数为什么能够满足任意初始位置和初始速度,也可以直接从代数看出来。在 t=0 时,条件总是 C1+C2=y、。这个方程组的系数行列式为 ,因为两根不同,所以它永远可解且解唯一。这里和前面 Wronskian 出现的是同一个非零因子:函数的独立性,落在初值上就成了两个权重能否唯一确定。
一般常系数方程的根未必为负。一个正根会提供增长项;但某条特殊初值轨迹可能把该项系数设为零。零根提供的是常数解。判断一条具体解如何演化,要先读根,再读初值给出的系数。
重根:第二个解为什么要乘一个时间
如果两个实根挤到一起,变成同一个 r0,写成
C1er0t+C
显然只剩一个有效常数。我们并没有因为代数方程出现重根,就失去指定初始速度的自由。缺的仍然是第二个独立函数。
这时不要急着背 ter0t。既然知道 er0t 是一个解,就让它前面的倍数也有机会随时间变化,设
y=u(t)er0t.
特征多项式有重根,意味着
ar2+br+c=a(r−r0)
比较系数并除以 a,原方程可以写成
y′′−2r0y′+r
现在把新设的函数求两次导数:
y′=er0
代回去,所有带 u′ 和 u 的项恰好抵消,只留下
er0tu′′=0.
所以 u′′=0,即 u=C1+C2。这就找到了
y(t)=(C1+C2t)er
这里的 t 来自一次很具体的计算:把已知指数因子剥开后,剩下的倍数只能是一条直线。两个函数的 Wronskian 为 e2r0t,处处非零,因此它们也确实构成基本解组。
还可以从“两个根靠近”的角度理解。两个相近的指数直接相减会越来越小,但把差除以根之间的距离,会留下可比较的变化量:
h→0limhe(r
这个极限是帮助你理解第二个函数从哪里来的;前面的代入计算则已经直接证明它是原方程的解。
例如
y′′+6y′+9y=0,y(0)
特征方程为 (r+3)2=0,所以
y=(C1+C2t)e
初始位置给出 C1=2,初始速度给出 C2−6=1,所以
y(t)=(2+7t)e−3t.
这个例子也提醒我们,衰减不等于“从一开始就下降”。它在 t=0 的导数是 1,会先上升;由 y′=(1−21t)e 可知,经过 个时间单位后才转为下降。虽然多项式 变大,指数衰减最终仍会胜过它,所以 。
复根:指数包在正弦波外面
弹簧为什么会反复穿过中间位置?单个实指数办不到这件事,正弦和余弦却正好会反复换符号。特征根出现虚部时,三角函数就进入了解。
设两个根为
r=α±iβ,β>0.
根虽然是复数,我们要找的位移仍然可以全部用实函数写出来。为了看清原因,把特征多项式写成
a[(r−α)2+β2].
原微分方程因而等价于
y′′−2αy′+(α2+β
照着刚才的做法,先把共同的指数变化取出来,设 y=eαtu。乘积求导后代入,得到
eαt(u′′+β2u)=0.
剩下的方程是 u′′=−β2u:函数的二阶导数总与函数反号,而且比例固定。你可以直接验证,cosβt 和 sinβt 都满足它。因此
y(t)=eαt(C1cosβt+C
这两个基本解的 Wronskian 是 βe2αt=0,所以又找齐了二阶方程所需的全部解。熟悉复指数时,也可以用 eiθ=cos 得到同样的形式;这里的推导只需要实函数求导。
公式里的两部分分工很明确。β 决定三角函数走完一次循环有多快;α 决定外面的尺度如何变化。α<0 时振动逐渐缩小,α=0 时保持固定幅度,α>0 时振动越来越大。零解则始终静止,不应称为“来回振动”。
例如
y′′+2y′+10y=0,y(0)
特征根是 −1±3i,先写
y=e−t(C1cos3t+C2
代入初始位置得到 C1=2。求导时,外面的指数和里面的三角函数都会贡献一项:
y′=e−t[−C1
因此 y′(0)=−C1+3C2=1,解得 ,最终为
y(t)=e−t(2cos3t+sin3t).
如果只对括号里的三角函数求导,就会误把条件写成 3C2=1。检查初速度,往往能立刻发现这类漏项。
从弹簧上的力,写到微分方程
现在把刚才的函数放回一套明确的装置:一个质量为 m>0 的物体沿直线运动,弹簧的劲度系数为 k>0,阻尼器的系数为 c≥0。这里 c 专门表示阻尼系数,和前面一般方程中的系数记号按各自语境使用。
我们假设弹簧质量可忽略、形变保持在线性弹性范围内,弹力符合“偏离平衡越远,拉回去的力越大”的关系;阻力与速度成正比且方向相反。干摩擦、碰撞、弹簧大变形等情形不在这个模型里。
选定向右为正,把平衡位置作为 x=0。物体若在右侧,回复力向左,所以弹力为 −kx;若向右运动,阻力向左,所以阻尼力为 −cx′。加速度由合力决定,松手后没有持续的外部驱动力时,
mx′′=−cx′−kx,
整理得
mx′′+cx′+kx=0.
“自由”指没有继续施加外部驱动力,弹力和阻力当然仍然存在。若 x 用米、t 用秒,那么 m 的单位是千克,c 是牛顿·秒/米,k 是牛顿/米。三项 mx′′、、 都是力;特征根的单位则是每秒,保证 没有单位。
竖直悬挂的弹簧还受重力,为什么也常见相同的齐次方程?这与坐标原点有关。若取向下为正,z 表示从弹簧自然长度起算的伸长量,那么
mz′′=mg−cz′−kz.
静止时伸长 ze=mg/k。改用偏离平衡的位移 x=z−ze,就有 、,而 ,于是仍得到同一个自由振动方程。重力在这里决定平衡位置,已经通过坐标平移处理掉了。
还有一个很实用的检查是力的方向。若一个写出的“阻尼项”在移到右边后成了 +cx′,而又规定 c>0,它就会沿运动方向继续推物体,不再是我们这里的被动阻尼。类似地,若回复项成了 +kx,物体偏到哪边,力就继续把它往那边拉,平衡位置也就失去了拉回作用。许多计算错误在求根以前,就能靠这样一句物理解释发现。
从静态测量也能推算参数:若已知质量和静止伸长量 d,那么 k=mg/d。必须先统一单位,例如把厘米换成米,再与以米/秒平方表示的 g 一起计算。看到“弹簧伸长了多少”,要分清说的是平衡伸长,还是从平衡位置又拉开了多少;它们在模型中承担不同角色。
例如,在一个理想竖直装置中挂上 0.5kg 的物体,静止后弹簧比自然长度伸长 0.049m。取 g=9.8m/s2,算出 。假设阻尼系数为 ,然后从平衡位置再向下拉开 静止释放,向下为正的初值问题就是
0.5x′′+x′+100x=0,x(0)=
除以 0.5 后,根为 −1±i199。初始位置给余弦项系数 0.01,初始速度给正弦项系数 ,因此
x(t)=0.01e−t(cos199
这里 0.049 用来识别弹簧参数,0.01 用来指定初始位移,不能互换。实际总伸长是 z(t)=0.049+x(t);我们求出的 x 趋于零,并不表示弹簧最终缩回自然长度,而是表示它回到承受重力时的平衡长度。
无阻尼:位置和速度怎样决定振幅与相位
先去掉阻尼,令 c=0。物体只在弹簧拉力下运动,方程为
x′′+ω02x=0,ω0
ω0 叫固有角频率。弹簧更硬,拉回作用更强,循环更快;质量更大,改变运动状态更费力,循环更慢。特征根为 ±iω0,由初值 x(0)=x、 可得
x(t)=x0cosω0t+
这个式子尤其适合检查初值:余弦负责初始位置,正弦前面的 v0/ω0 经过求导后恰好还原成初始速度。即使最初就在中间位置,x0=0,只要给了速度,物体仍会摆起来。
想直接读出摆动幅度,可以把两个三角函数合在一起。对于一般组合 Acosω0t+Bsinω0t,定义
R=A2+B2
便有
x(t)=Rcos(ω0t−ϕ).
这里暂时假设 R>0;R=0 时是静止解,不需要给它指定相位。R 是最大偏离距离,ϕ 描述起始时刻处在振动循环的哪个位置。求相位必须同时看正弦和余弦的符号,不能仅凭 tanϕ=B 就丢掉象限。
例如取 m=2kg、k=18N/m,把物体从平衡位置向正方向拉开 0.04m,并赋予正方向初速度 0.09m/s。此时 ,所以
x(t)=0.04cos3t+0.03sin3t=0.05cos(3t−ϕ),
其中 cosϕ=4/5、sinϕ=3/5,可取 ϕ=arctan(3/4)。振幅是 0.05,比初始位移大:初始时还有动能,物体会继续向外运动一小段,直到速度降到零。
角频率、周期和普通频率要分开。一次完整循环对应角度增加 2π,因此
T0=ω02π,
本例周期为 2π/3 秒,频率为 3/(2π) 赫兹;“角频率为 3”不等于“每秒振动三次”。在理想线性模型里,改变初始位移或初速度会改变振幅与相位,不会改变 ω0。
把平衡位置取为零点。物体向右偏离时 x>0,弹簧施加向左的恢复力 −kx;没有阻尼与外部驱动力时,牛顿第二定律给出 mx″+kx=0。
加上阻尼:同一套弹簧的三种自由响应
恢复 c>0 后,把方程除以质量并记
γ=2mc,ω0=
便得到
x′′+2γx′+ω0
为什么物理模型中不会突然冒出一个正根?当根为实数时,它们的和是 −c/m<0,积是 k/m>0。积为正说明两根同号,和为负就把它们都限定为负数;当根为复数时,共同实部为 −c/(2m)<0。因此只要这些物理参数保持约定的正值,所有自由响应都在长期衰减。前面一般方程允许增长解,是因为一般系数没有被要求满足这些物理条件。
根型由阻尼与质量、劲度的相对大小决定。下面一直取 m>0,k>0,先把无阻尼单列出来,避免把“不衰减”混进有阻尼振动。
为了比较得具体,我们用同一套 m=1kg、k=4N/m 的装置,每次都从 x(0)=0.06m 静止释放,即 ,只改变 。
欠阻尼:每次摆回来,范围都更小
取 c=2N⋅s/m,方程为 x′′+2x′+4,根为 。于是
x=e−t(C1cos3
初始位置给出 C1=0.06,初始速度给出 −C1+3。所以
x(t)=0.06e−t(cos3
它反复穿过 x=0,但越来越贴近中间。一般欠阻尼解的角频率和包络为
ωd=ω02−γ
给定一般初值时,甚至可以直接读出两个常数:C1=x0,而求导在 t=0 处给出 v,因此 。与无阻尼时的 相比,多出的 用来补偿外面指数因子在一开始贡献的变化率。尤其“静止释放”并不意味着正弦项系数为零;只有无阻尼时才有这种简单对应。
阻尼既使外面的包络衰减,也使 ωd<ω0。本例中 R=0.043,,因而上下包络是 。包络在 的高度大于 并不矛盾,它给的是振幅尺度和界限,并不要求曲线从包络顶端出发。
有时把 Td=2π/ωd 称为阻尼振动的准周期。本例为 2π/3 秒。完整位移函数并不周期重复,因为
x(t+Td)=e−γTdx(
过了同样长的一段时间,振动相位回到原位,幅度却又缩小了一圈。如果每次记录同一侧相邻两个峰值的大小,它们也相差因子 e−γTd。原因是导数同样满足 x′(t+,所以极值时刻会间隔一个准周期重复出现,而极值的数值继续衰减。由此可以理解,观察曲线时“间隔有规律”和“整个函数周期重复”不是同一个条件。另外,真正的位移极值需要解 ;不能直接把余弦等于 的时刻都当成峰值,因为指数包络也在变。
临界阻尼:重根恰好落在分界上
取 c=4N⋅s/m,方程为 x′′+4x′+4,特征根为二重根 。写出
x=(C1+C2t)e−2t.
初值依次给出 C1=0.06、C2−2C1,所以
x(t)=0.06(1+2t)e−2t.
对 t>0,有 x′=−0.24te−2t<0,而 ,因此这次运动一直从正侧靠近中间,既不回摆,也不穿过平衡位置。
但这个“不穿过”依赖初值。仍用同一套临界阻尼装置,若初速度改为 −0.18m/s,则 C2=−0.06,得到 x=0.06(1−,它会在 秒穿过中间一次,之后从另一边慢慢回来。临界阻尼保证非振荡,并没有禁止一次越过平衡点。
过阻尼:没有回摆,也可能有掉头
取 c=5N⋅s/m,方程为 x′′+5x′+4,根为 。继续使用最初的静止释放条件,得到
x=C1e−t+C2
解出 C1=0.08,C2=−0.02,因此
x(t)=0.08e−t−0.02e−4t.
这条轨迹也从正侧单调趋于零,但长期主要剩下 0.08e−t,比临界情形的 (0.06+0.12t)e−2t 衰减得慢。阻力更强,并不意味着每一种运动都更快消失。
为什么把过阻尼叫非振荡?非零解的零点必须满足
C1+C2e(r2
当两个系数都非零时,指数严格单调,这个等式至多成立一次;有系数为零时根本没有零点。因此物体不会无休止地在中间位置两侧交替穿越。这个结论没有声称位移必定单调,也没有声称一次穿越都不允许。
拿同一套过阻尼装置,改成从平衡位置向右推一下,令 x(0)=0、x′(0)=0.09m/s,会得到
x(t)=0.03(e−t−e−4t).
它先向右走,在 t=ln4/3 秒达到最大位移,然后返回。这是一个最直接的反例:两个负实根保证长期衰减,初速度仍然可以让位移先增加。
“临界阻尼最快回到平衡”也需要说清比较的是什么。对固定 m,k,比较非振荡情形中一般会出现的慢衰减速率,临界值确实处在最佳分界:过阻尼的慢根 −γ+γ2−ω02 比 更靠近零。实际问多久进入某个误差范围、是否允许越过中间、初速度是多少,都还会影响答案;特殊初值甚至能消掉慢项。不能把这句简略说法当作对所有初值和所有到达标准都成立的定理。
能量去哪了,比曲线更容易看清
光盯着位移容易产生一个疑问:物体每次朝中间运动时速度明明在增大,为什么又说能量在减少?因为位移、速度和能量并不是同一件东西。
相对于平衡位置,机械能写成
E(t)=21m[x′(t)]
前一项是动能,后一项是弹性势能;竖直装置以平衡位置计量时,这个势能形式包含了重力势能与弹性势能合并后去掉的常数。物体靠近中间时,势能可以转成动能,所以速度增加与总能量减少可以同时发生。
直接求导,再用运动方程替换:
E′=mx′x′′+
这个等式把阻尼的含义说得很具体:每一刻消耗能量的速率为 c(x′)2。物体速度暂时为零时,能量导数也为零;这不代表有阻尼系统从此守恒,只代表这一瞬间没有因运动而耗散。积分以后,
E(t)+∫0tc[x′(s)]
也就是“现在还储存着的能量,加上此前耗散的能量,等于初始总量”。
当 c=0 时,E 恒定。前面无阻尼例子的初始能量为
E(0)=21(2)(0.09)2+
在最大位移 R=0.05m 处,速度为零,能量应当全是势能;代入 21kR2=0.0225J,正好对上。这是对振幅计算的另一条独立检查。
还有一个经常被“最终停下来”遮住的小区别:这套理想线性模型中的非零运动,不会在某个有限时刻突然永久停住。假如某一时刻同时有 x=0、x′=0,那么零函数就满足该时刻的两个初值;根据上一章的唯一性,原解只能一直都是零函数。因此普通非零轨迹会不断接近平衡状态,实际测量中低于仪器分辨率后通常可以近似视为停下,但数学上的“趋于零”与“在某秒起恒等于零”并不相同。
这也说明,只看位移不足以判断物体是否已经恢复平衡。欠阻尼曲线会多次经过 x=0,那时往往恰好仍有明显速度,下一瞬间就要走向另一侧。真正的静止平衡状态要求位置和速度同时为零。这与上一章强调“二阶初值必须给两个数”的道理是连着的。
当 c>0 且 m,k>0 时,前面三种根型已经说明 x、x′ 都趋于零,所以能量也趋于零。仅从 本身只能立即得出“能量不增加”,不能跳过推理就断言一定降到零;这里的结论还使用了已经求出的解的长期行为。
电荷也会来回摆动:串联 RLC 电路
把一个已经储存电荷的电容、电感和电阻连成闭合串联回路,即使没有继续接入外部电压,回路也可能有电流。电容中的储能与电感中的储能相互转换,电阻则不断消耗能量。这个过程与弹簧的势能、物体的动能和阻尼耗散有相同的方程结构。
设电荷为 q(t),统一选择参考方向,使电流 i=q′。理想元件参数取电感 L>0、电容 C>0、电阻 ,并在所研究的时间内保持常量。三个元件的电压降分别为
Li′,Ri,Cq.
没有外加电压时,闭合回路中的电压降代数和为零,所以
Li′+Ri+Cq=
电荷 q 用库仑,电流 i 用安培,L 用亨利,R 用欧姆,C 用法拉,各项都具有伏特这一电压单位。这里电容参数 C 与积分常数 C 不同。
机械振动和 RLC 电路看起来不同,但自由响应由同一类二阶齐次方程描述。
例如取 L=1H、R=2Ω、C=1/5F,并给定 q(0、。方程和特征根是
q′′+2q′+5q=0,r=−1
因此 q=e−t(C1cos2t+C2。由初值,,,故
q(t)=0.01e−t(cos2t+21sin
题目还关心电流,不能求完电荷就停下。求导整理得
i(t)=−0.025e−tsin2t.
电流为负表示流向与参考正方向相反,不表示“不可能的电流”。电荷改变符号,也表示相对于事先约定的极性发生了反转。
电路储能为
Eelec=21Li2+
沿解求导,Eelec′=i(Li′+q/C)=。这与机械系统的 完全对应,也说明为什么被动电阻不会让自由振动越摆越大。
把方程、初值和运动放在一起练
下面的练习都先写清基本解,再代入初值,最后解释所得函数。计算中的常数需要满足原方程和全部初始条件,图像上的结论则需要从导数、零点或包络中得到。
两种指数的权重
求解 y′′−y′−6y=0,y(0)=、。再找出所有会在 时趋于零的初值关系。
特征方程为 (r−3)(r+2)=0,所以 y=C1。初值给出 、,解得 ,因此 ,它会增长。
重根与非零初始时刻
求解 y′′−4y′+4y=0,y(1)=、。
特征方程为 (r−2)2=0。令 τ=t−1,由于系数不随时间变化,直接用 τ 写通解更方便:。
从位移和速度读振幅
一个无阻尼装置的 m=1kg、k=16N/m,初始位移为 −0.03m,初速度为 0.16m/s。求位移、振幅、周期和相位所在象限。
固有角频率为 4rad/s。方程 x′′+16x=0 的初值解是
x=
欠阻尼并不是周期运动
某装置满足 2x′′+4x′+10x=0,x(0)=、,位移用米、时间用秒。求位移、阻尼角频率、准周期,以及一个准周期后相同相位处的位移缩放比例。
除以 2 后,特征方程为 r2+2r+5=0,根为 −1±2i,所以 。初值给出 、,得到
不振荡是否意味着不会越过平衡
一个 m=1kg、c=5N⋅s/m、k=4N/m 的装置,初始位移为 ,初速度为 。判断阻尼类型,求解,并确定它是否穿过平衡位置。
判别式为 25−16=9>0,是过阻尼,特征根为 −1,−4。初值方程组为 C1+、,得到 、。
用能量核对自己的解
对 m,k>0、c≥0 的自由系统证明 E′=−c(x,并解释:为什么无阻尼时即使位移为零,也不能说系统能量为零?若初始能量为 ,写出任意时刻位移绝对值的上界。
由 E=21m(x′)2+,求导得 ,再用 ,就有 。
我们现在已经能回答“松手以后会怎样”:方程参数选出允许的基本运动,两个初始条件选出实际轨迹,能量关系检查这条轨迹是否符合耗散规律。接下来把手重新放回系统上,持续施加一个随时间变化的力,问题就多了一层:系统自身的振动,会怎样与外界的推动相互配合?下一章从 mx′′+cx′+kx=F(t) 出发,求出受迫响应,并追问为什么某些推动频率会使振动格外明显。