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

待定係數法:有根據的猜測

當強迫項是多項式、指數、正弦或餘弦時,你不必靠積分去求特解——你可以先猜出它的形狀,把數字留空,再讓方程把它們填上。這是非齊次工具箱中最快的一把工具,而它能奏效的理由優美而簡單。

已知結構中缺的一塊

在上一篇你認識了每一個受迫線性方程的主結構:通解為 y = y_c + y_p,即互補解 y_c(齊次方程的完整雙參數解)加上右端所挑出的任一個特解 y_p。從上一節你已經會求 y_c——寫下特徵方程,讀出其根,再拼出 c1 * y1 + c2 * y2。所以唯一還缺的一塊就是 y_p:一個函數,任何一個皆可,只要它真能滿足 a y'' + b y' + c y = g(x),其中右邊是強迫函數 g(x)。

尋找 y_p 有兩條老實的路。慢而萬能的一條是參數變異法,你會在第 4 篇遇到它——無論 g(x) 多麼古怪,它都能一路積分出答案。快而偶爾管用的一條是待定係數法,正是本篇的主題。它不是通用演算法,而是一個聰明的捷徑,僅當 g(x) 屬於一份簡短而友善的清單時才適用。但只要它適用,就能把一道微積分題化為一道小小的代數題——這筆交易值得一做。

為何可以用猜的

此法立基於一個觀察:某些函數族對求導是封閉的。把多項式求導,得到的仍是次數不增的多項式;把 e^(rt) 求導,得到的是常數乘上 e^(rt);把 sin(wt) 求導得 cos(wt),再求導又回到正弦。這每一族都是一個小巧而自足的世界——你永遠無法靠求導走出它。所以若 g(x) 住在這樣的世界裡,有理由懷疑某個 y_p 也住在那裡,因為左邊 a y'' + b y' + c y 只是把各階導數加起來,而求導讓你始終待在族內。

於是策略如下:猜 y_p 與 g(x) 有相同的*形狀*,但把係數寫成未知的字母,而非固定的數字。接著把這個猜測代回方程。由於兩邊如今同住一族,你便能逐項比對——左邊所有 e^(rt) 的部分必須等於右邊 e^(rt) 的部分,所有 cos 項必須對上 cos 項,依此類推。比對把微分方程化為對那些未知字母而言的幾條尋常代數式。這就是全部的把戲,而名字恰如其分地說明了發生的事:係數起初是待定的,再由方程把它們定下來。

一次完整的試解

取 y'' - 3 y' + 2 y = 4 e^(3t)。強迫項是單一指數,故猜 y_p = A e^(3t),帶一個待定係數 A。求導:y_p' = 3 A e^(3t),y_p'' = 9 A e^(3t)。代入左邊,每一項都帶著同樣的 e^(3t),於是可以提出來:(9 A - 9 A + 2 A) e^(3t) = 2 A e^(3t)。令它等於右邊 4 e^(3t),消去公因子 e^(3t),便剩下一行代數 2 A = 4,故 A = 2。特解就是 y_p = 2 e^(3t)——全程沒有用到一個積分。

g(x) on the right            guess y_p (undetermined coeffs)
--------------------------   -------------------------------
constant  k                  A
polynomial deg n             A_n x^n + ... + A_1 x + A_0
k e^(rt)                     A e^(rt)
k cos(wt)  or  k sin(wt)     A cos(wt) + B sin(wt)
k e^(at) cos(wt)             e^(at) (A cos(wt) + B sin(wt))
sum of the above             sum of the matching guesses
友善清單:在左欄讀出 g(x) 的形狀,把右欄對應的範本連同空白係數抄下來。
  1. 先解齊次方程並寫出 y_c——你需要手上握有它的根,以備第 5 步的警示。
  2. 讀出 g(x) 的形狀,寫下對應的 y_p 試解,以字母 A、B…… 取代數字。
  3. 將試解求導得 y_p' 與 y_p'',再把這三者一併代入方程左邊。
  4. 與右邊逐項比對,得到一個小型線性方程組,解出各係數。
  5. 信任答案之前,先檢查試解是否與 y_c 重疊——若有重疊,就必須乘上 x(或 x^2)。這便是共振規則,下一篇將專門講它。

三個讓你免於踩雷的習慣

第一個習慣:永遠帶上*整個*族,而非只帶你看見的那部分。若 g(x) = 5 sin(2t),人會忍不住只猜 y_p = B sin(2t),但正弦求導會生出餘弦,於是餘弦會出現在左邊,卻無物與之平衡。正確的猜測是 A cos(2t) + B sin(2t),兩塊都要,即使右邊只露出一個正弦。漏掉那個搭檔項,是此法最常見的單一錯誤,而它會讓代數無解,而不只是算錯。

第二個習慣:對多項式強迫項,要猜一個*完整*的同次多項式,每一個冪次直到常數項都不漏。若 g(x) = 3 t^2,要猜 y_p = A t^2 + B t + C,而非只有 A t^2——求導會把較低的冪次餵回來,你需要為它們留位子。第三個習慣:在腦中把 y_p 與 y_c 嚴格分開。y_c 中的常數 c1 與 c2 直到最後一刻仍是自由的,只由初始條件來定;而 y_p 中的係數 A、B、C 則由方程本身釘死,從不自由。把兩者混為一談,便會有人不慎想用 y_p 去滿足初始條件——那是行不通的。

有根據的猜測在何處失靈

有一種情形,樸素的猜測會悄無聲息地失敗,而它重要到下一篇就以它為核心。設你要解 y'' - 3 y' + 2 y = 4 e^(t)。強迫項是 e^(t),於是自然的猜測是 A e^(t)。但 e^(t) *本來*就是齊次方程的解——它就住在 y_c 裡。代入 A e^(t),左邊便塌縮為零,給出 0 = 4 e^(t),沒有任何 A 值能補救。你所猜的那個族,被 y_c 吞沒了,於是沒有空間容得下那種形狀的特解。

這種重疊正是一個共振強迫項——方程被以它自身的某個固有頻率推動,響應傾向增長而非安定。修正既小又精準:把試解乘上 x(若是重根則乘上 x^2),直到它不再與 y_c 重疊,再照常進行。那個修正,以及它所編碼的共振,正是下一篇的全部故事。有句話得說明白:這裡的共振是數學的特性,而非錯誤——它與順勢一推便盪得更高的鞦韆是同一現象,而且它甚至不需要零阻尼才會出現。