把摩擦打開
在上一篇指南中,你看著一個掛在理想彈簧上的質量做簡諧運動:它永遠擺盪,一個完美不滅的正弦波,因為沒有任何東西耗掉它的能量。那是一個虛構——而且是有用的虛構——但每一座真實的鐘最終都會安靜,每一個真實的單擺最終都會垂止。缺少的成分是阻尼:一個與速度反向、把能量當作熱耗散出系統的阻力。本篇指南把那個力打開,並追問會有什麼改變。
最簡單而誠實的模型,是一個與速度成正比的力 b y',方向逆著運動。把它加進本層第一篇指南中的彈簧-質量-阻尼器平衡,就得到自由阻尼振動的方程:m y'' + b y' + k y = 0。把它讀作三項之間的對話——質量抗拒加速度、阻尼器 b y' 抗拒速度、彈簧 k y 把東西拉回靜止。當 b = 0 時它塌縮成上次那個純振盪器;把 b 打開,故事就徹底改變。
這仍然是一個常係數的齊次二階方程,所以你已經建好的機器原封不動地適用。猜 y = e^(rt),方程就交給你特徵方程 m r^2 + b r + k = 0。接下來的一切——每一種阻尼情況——都不過是這一個二次式的判別式 b^2 - 4mk,在決定根號下的正負號。阻尼不是新理論;它就是你上一篇遇見的三情形故事,如今披上了一件物理的外衣。
一個決定一切的無因次數字
在求解之前,把三個常數 m、b、k 壓縮成真正要緊的兩個量是划算的。上一篇定義了自然頻率 omega0 = sqrt(k/m),即無阻尼彈簧會振盪的速率。現在定義阻尼比 zeta = b / (2 sqrt(mk))。把方程整個除以 m,它就變成 y'' + 2 zeta omega0 y' + omega0^2 y = 0——一個只有 zeta 與 omega0 出現的乾淨形式。單一數字 zeta 衡量阻尼相對於彈簧的強弱,而它獨自就把三種情況分了類。
為什麼一個比值就夠了?因為判別式 b^2 - 4mk 與 zeta^2 - 1 同號。於是 zeta < 1 意味判別式為負(複根、振盪),zeta = 1 恰好坐在邊界上(重根),而 zeta > 1 使它為正(兩個實根、不振盪)。整張行為地圖,就是一個數字與 1 比大小——小於、等於、或大於。欠阻尼、臨界阻尼、過阻尼這些名字,就是從這裡來的。
m y'' + b y' + k y = 0 -> m r^2 + b r + k = 0
natural frequency omega0 = sqrt(k/m)
damping ratio zeta = b / (2 sqrt(m k))
discriminant sign = sign( zeta^2 - 1 ):
zeta < 1 complex roots -> UNDERDAMPED (decaying ring)
zeta = 1 repeated root -> CRITICAL (fastest no overshoot)
zeta > 1 two real roots -> OVERDAMPED (slow crawl home)欠阻尼:逐漸消逝的鳴響(zeta < 1)
當 zeta < 1 時阻尼溫和,判別式為負,根成為一對複共軛 r = -zeta omega0 +/- i omega_d,其中 omega_d = omega0 sqrt(1 - zeta^2)。經由歐拉公式,這變成實數解 y = e^(-zeta omega0 t) (C1 cos(omega_d t) + C2 sin(omega_d t))。把它分成兩塊讀:一個以頻率 omega_d 振盪的 cos/sin,騎在一個逐漸縮小的包絡 e^(-zeta omega0 t) 之內。這就是欠阻尼運動——系統仍然來回擺盪,但每一次擺幅都比上一次小。
兩個物理事實藏在那些公式裡。其一,阻尼不只縮小擺幅——它也使擺動變慢:鳴響頻率 omega_d 嚴格小於自然頻率 omega0,所以一座有阻尼的鐘,響起來會比同一座鐘在真空中略低沉一點。其二,包絡呈指數衰減,這給了一個漂亮而簡單的診斷。比較相隔一個週期的相鄰峰高,它們的比值是常數,而它的對數,即對數衰減率,讓你直接從測得的軌跡讀出 zeta,完全不必知道 m、b 或 k。
過阻尼與臨界:不鳴響地回家的兩種方式
把阻尼推過 zeta = 1,判別式轉正:根成為兩個相異的實數 r1、r2,兩者皆為負,解是 y = C1 e^(r1 t) + C2 e^(r2 t)——純粹衰減的指數,看不到任何正弦。這就是過阻尼運動。摩擦多到質量再也無法衝過頭;從一個位移釋放後,它只是滲流般地回到靜止。一扇配了強力門弓的厚重門、一根浸在油裡游動的指針、一個太硬的避震器——它們爬回原位,從不彈跳。
人們很容易以為阻尼越多就越快安定。並非如此。一個過阻尼系統有一個接近零的慢根,主宰了長長的尾巴,所以把摩擦堆過邊界,反而讓回歸變得「遲緩」——那扇太硬、永遠關不完的門。在欠與過之間某處,必定有一個甜蜜點,而它正是邊界 zeta = 1:臨界阻尼運動,在不過衝的前提下盡可能最快地回到靜止。
在 zeta = 1 時,兩個實根碰撞合成單一重根 r = -omega0。正如上一篇所警告的,重根只交給你一個指數,所以第二個解帶著那個洩露天機的額外因子 t,通式為 y = (C1 + C2 t) e^(-omega0 t)。那單獨的 t e^(-omega0 t) 項可以讓系統在指數把它壓下去之前略微向前爬一點——所以「臨界」最多允許一次溫和的趨近,絕不會有真正的振盪。這正是工程師為汽車懸吊、類比儀表與門弓所追求的情況:現在就安定、乾淨地安定、別彈跳。
同樣三種情況,在一個電路裡
這一切其實都無關彈簧。本層第一篇指南建立了力學-電學類比:一個串聯 RLC 電路遵守 L q'' + R q' + (1/C) q = 0,正是同一個方程,由電感 L 扮演質量、電阻 R 扮演阻尼器、1/C 扮演彈簧。所以電阻就是阻尼,而一個 RLC 電路恰好活在同樣三種情況之一——欠阻尼(你能在示波器上看到逐漸衰減的鳴響電流)、臨界阻尼,或過阻尼——由它自己的 zeta = (R/2) sqrt(C/L) 決定。
這就是把方程寫成無因次形式 y'' + 2 zeta omega0 y' + omega0^2 y = 0 的安靜回報。一位調校懸吊的機械工程師,和一位設計濾波器的電機工程師,在數學上做的是完全相同的事:選擇 zeta。一種語言,兩個世界。阻尼比是那個通用的旋鈕,而「欠、臨界、過」是它通用的詞彙。