JOVANA
Library Glossary Getting Started Three Levels Fields How it works Mission
Join the mission
All guides

複數根、歐拉公式與振盪

當特徵方程沒有實數根時,代數會交給你虛數——而歐拉公式把它們化成貨真價實的正弦與餘弦。就在這裡,一個枯燥的二次式忽然開始擺動,方程式也開始歌唱。

當二次式拒絕分解時

在上一篇你遇見了特徵方程 a r^2 + b r + c = 0,也就是你對常係數方程 a y'' + b y' + c y = 0 猜 y = e^(rt) 後讀出的那個二次式。兩個相異實根給你兩個乾淨的指數函數;一個重根給你 e^(rt) 與 t e^(rt)。但二次式並不總是有實根。當判別式 b^2 - 4ac 為*負*時,公式 r = (-b ± sqrt(b^2 - 4ac)) / (2a) 要你對一個負數開平方——而實數線上找不到答案。

看最乾淨的例子:y'' + y = 0,這個方程式說「我的二階導數是我自己的相反數」。它的特徵方程是 r^2 + 1 = 0,所以 r^2 = -1。沒有任何實數平方後等於 -1。然而你其實*早就知道*這個方程式有解——sin(t) 與 cos(t) 都具有「微分兩次後變號」的性質。所以真實世界的擺動就明明白白地坐在那裡,儘管代數已走向虛數。這兩套說法必須調和起來。

解決之道不是放棄 e^(rt),而是允許 r 是複數。同樣的代入法依然有效;我們只是讓根住進複數平面。當 b^2 - 4ac < 0 時,兩個根成為一對複共軛根 r = alpha ± i beta,其中 alpha = -b / (2a) 是實數,而 beta = sqrt(4ac - b^2) / (2a) 是(實的、正的)剩餘部分。這兩個根是實軸兩側的鏡像。本篇全部的訣竅,就是把這兩個複指數翻譯回真實振盪的語言。

歐拉公式:通往真實世界的橋

讓一切運轉起來的那個關鍵事實,就是歐拉公式:e^(i theta) = cos(theta) + i sin(theta)。它說,把 e 升到一個虛數次方一點也不神秘——那恰恰就是一個餘弦加上一個虛數倍的正弦。你幾乎能感覺到它為何必然成立:把 cos(theta) + i sin(theta) 對 theta 微分,得到 -sin(theta) + i cos(theta),正好等於 i 乘上原式。唯一導數等於自身 i 倍的函數就是 e^(i theta)。所以指數與這對三角函數其實是*同一個對象*,只是穿著兩套戲服。

現在把一個複根代入 e^(rt)。取 r = alpha + i beta,我們得到 e^((alpha + i beta) t) = e^(alpha t) · e^(i beta t) = e^(alpha t) (cos(beta t) + i sin(beta t))。實指數 e^(alpha t) 控制整體的增長或衰減;而由歐拉公式展開的 e^(i beta t) 這一項,則是角頻率為 beta 的純振盪。共軛根 r = alpha - i beta 給出同樣的東西,只是正弦變號:e^(alpha t) (cos(beta t) - i sin(beta t))。

我們要的是*實*解,不是複數解。疊加原理救了我們:解的任意線性組合仍是解,而我們可以自由地把這兩個複指數組合起來,使虛部互相抵消。把這對共軛相加再除以 2,留下 e^(alpha t) cos(beta t);相減再除以 2i,留下 e^(alpha t) sin(beta t)。兩者都是貨真價實的實函數,也都滿足原方程式。那些複數不過是鷹架——一旦建築物立起,我們就把它撤掉。

讀懂通解

把這些拼起來,複根情形有一條乾淨的固定做法。當特徵方程給出 r = alpha ± i beta 時,通解為 y = e^(alpha t) (C1 cos(beta t) + C2 sin(beta t))。e^(alpha t) cos(beta t) 與 e^(alpha t) sin(beta t) 這兩塊線性獨立——它們的朗斯基行列式永不為零——所以它們是張開二維解空間的一對合法基底,正如第一、二篇所要求的。常數 C1 與 C2 是你用初始條件 y(0) 與 y'(0) 來定下的兩個自由參數。

discriminant b^2 - 4ac    roots                 general solution
----------------------------------------------------------------------
  > 0  (positive)         r1, r2 real, distinct  C1 e^(r1 t) + C2 e^(r2 t)
  = 0  (zero)             r  real, repeated      (C1 + C2 t) e^(r t)
  < 0  (negative)         alpha +/- i beta        e^(alpha t)(C1 cos(beta t) + C2 sin(beta t))
特徵方程三種情形並排對照;複根是最底下那一列。

看看 alpha 與 beta 各自控制什麼。alpha 的正負決定包絡:alpha < 0 表示振盪在一個收縮的指數墊子裡衰減(這就是阻尼振動),alpha > 0 表示它無界地增長,而 alpha = 0 表示它既不增長也不衰減——一個穩定、不滅的擺動。beta 的數值則設定它振盪得多快。所以單單一個複根同時承載兩重獨立的意義:它的實部是增長率,它的虛部是頻率。

振幅與相位:一個波,而非兩個

C1 cos(beta t) + C2 sin(beta t) 這個形式是對的,但看起來像兩個分開的波。它其實是*一個*平移過的餘弦。有一個整潔的恆等式:C1 cos(beta t) + C2 sin(beta t) = R cos(beta t - phi),其中 R = sqrt(C1^2 + C2^2),而角 phi 滿足 tan(phi) = C2 / C1。數 R 是振幅——擺動的峰高——而 phi 是相位,一個水平的平移,告訴你這個波從它週期中的哪個位置起步。這個振幅—相位形式正是工程師與物理學家實際閱讀答案的方式。

最乾淨的情形是 alpha = 0,此時指數包絡就只是 1,解是一個純粹的 R cos(beta t - phi),以同樣的高度永遠擺動。這就是[[simple-harmonic-motion|簡諧運動]]——無摩擦彈簧上的質量、小角度的單擺、理想的 LC 電路。這裡 beta 是系統的固有頻率:當系統不受打擾時它*想要*振盪的速率,完全由方程式的係數決定,而非由你起步時用了多大力決定。對 m y'' + k y = 0 而言,算出來是 beta = sqrt(k / m)——彈簧越硬,擺動越快;質量越重,擺動越慢。

加上一點摩擦,alpha 就變成略負:餘弦如今住在一個收縮的屋頂 e^(alpha t) 底下,所以每一次擺動都比上一次小一點。這就是欠阻尼運動——一根撥動後逐漸消逝的吉他弦、一架放任滑行的鞦韆——三種情形中最富音樂性的一種。關鍵在於,只要阻尼*輕微*(b^2 < 4ac),這就會發生;你不需要零摩擦才能振盪,只需要摩擦小到讓系統在安頓下來之前先衝過它的靜止點。更重的阻尼最終會徹底扼殺擺動,把你推進上一篇的實根情形。

一個完整範例與誠實的提醒

讓我們把整套機器跑在 y'' + 2 y' + 5 y = 0 上,配上 y(0) = 0 與 y'(0) = 4。留意 alpha、beta 與那些常數三個數依序落定,並注意每一步是如何呼應前幾篇的結構的。

  1. 寫出特徵方程:r^2 + 2 r + 5 = 0。它的判別式是 4 - 20 = -16 < 0,所以我們處於複根情形。
  2. 求根:r = (-2 ± sqrt(-16)) / 2 = -1 ± 2 i。所以 alpha = -1(衰減)而 beta = 2(頻率)。
  3. 寫出通解:y = e^(-t) (C1 cos(2 t) + C2 sin(2 t))。一個衰減的振盪——欠阻尼。
  4. 代入 y(0) = 0:在 t = 0 時指數為 1、cos 為 1、sin 為 0,所以 y(0) = C1 = 0。
  5. 微分後代入 y'(0) = 4。由於 C1 = 0,這迫使 2 C2 = 4,所以 C2 = 2。答案是 y = 2 e^(-t) sin(2 t)。