從一串鬆散的解,到一個整齊的物件
你登上本節時,已經會解無外力的線性系統 x' = A x。特徵值法交給你一把積木式的解:對每個特徵值 lambda 配上特徵向量 v,你得到一條直線解 e^(lambda t) v,而對於複數或重根的特徵值,你也學過對應的形狀。這 n 個彼此獨立的解合起來構成一個基本解組,而系統的每個解都是它們的常數組合 c_1 x_1(t) + ... + c_n x_n(t)。這就是整個解空間——一個由向量值函數組成的 n 維空間。
把這個解集當成一串鬆散的向量帶來帶去很笨拙。底下這個小小的點子把一切都整理好了:把每個解向量豎起來,當作一個矩陣的行(column)。若 x_1(t), ..., x_n(t) 是你那 n 個獨立解,就把它們並排歸檔成一個 n×n 矩陣 Psi(t) = [x_1(t) | x_2(t) | ... | x_n(t)]。這就是基本矩陣——一個矩陣值的 t 之函數,一口氣裝下整個解集。這裡沒有算出任何新東西;你只是把已有的東西重新打包成一個將來會大有回報的形狀。
x_1(t), ..., x_n(t) independent solutions of x' = A x
| | | |
Psi(t) = |x_1 x_2 ... x_n| (each solution is one column)
| | | |
General solution: x(t) = Psi(t) c , c = (c_1, ..., c_n) constant什麼讓一個矩陣成為基本矩陣
有兩條性質讓 Psi(t) 配得上這個頭銜,而兩者都是直接從它的各行繼承來的。第一,每一行都解 x' = A x,所以整個矩陣滿足矩陣方程 Psi'(t) = A Psi(t)——你逐行對矩陣求導,而每一行都服從這個系統,於是矩陣方程不過是把同一條法則收集了 n 份。第二,各行必須真正獨立,而非暗中重複。這正是朗斯基行列式的工作:構造數值 W(t) = det Psi(t),若它不為零,各行就張滿整個解空間。
由於各行獨立,把 Psi(t) 從右邊乘上一個常數行向量 c,就挑出組合 c_1 x_1 + ... + c_n x_n——所以 x(t) = Psi(t) c 就是通解,而當 c 跑遍所有常數向量時,它恰好不多不少地掃過每一個解。這個矩陣悄悄地把 n 個函數之和變成了單一個乘積。不過基本矩陣並不唯一:你大可隨意把各行重新縮放或重新組合。若 Psi 滿足矩陣方程,則對任何可逆常數矩陣 C,Psi(t) C 也滿足,因為 (Psi C)' = Psi' C = A Psi C。對同一個系統而言,存在著一整族基本矩陣。
那個抹去帳目的歸一化選擇
在這一整族裡,有一個成員是特別的。設你想滿足一個初始條件 x(t0) = x_0。用一般的 Psi,你得代入 t0 得到 x_0 = Psi(t0) c,再解 c = Psi(t0)^(-1) x_0——每次都得磨一個小小的線性系統。聰明的一招,是挑出那個讓這一步消失的基本矩陣。主基本矩陣 Phi(t) 就是被歸一化、使得在所選起始時刻有 Phi(t0) = I(單位矩陣)的那一個。
看看這替你換來什麼。有了 Phi(t0) = I,初始條件 x(t0) = x_0 直接逼出 c = x_0——沒有逆矩陣要算——而解就只是 x(t) = Phi(t) x_0。你過去得追著跑的那些常數不見了;起始狀態本身就是那個常數。你總能從任一其他基本矩陣經歸一化造出 Phi:Phi(t) = Psi(t) Psi(t0)^(-1),因為這個乘積滿足矩陣方程、且在 t0 等於 I。主基本矩陣把每個解從它的初始狀態直接讀出,中間不夾任何代數。
為何這是通往矩陣指數的門
現在把主基本矩陣與最簡單的情形並排比較:單一純量方程 x' = a x,它從 t0 = 0 起的主解是 x(t) = e^(a t) x_0。Phi(t) 這個物件,正扮演著 e^(a t) 對單一變量所扮演的角色——它滿足 Phi' = A Phi(呼應 (e^(a t))' = a e^(a t))、在 t = 0 時等於 I(呼應 e^(0) = 1)、並透過左乘把初始狀態往前傳播。這份相似並非只供讚嘆便丟在一旁的巧合;它是一個承諾。x' = A x 的主基本矩陣,配得上被稱為矩陣指數 e^(At),而下一篇會把這個定義做得名實相符。
這樣看來,Phi(t) 是把系統當作運動、而非當作方程來看。餵給它一個起點 x_0,它就告訴你經過時間 t 後那個點被帶到了哪裡;對每個可能的起點同時這麼做,你就得到系統的流——一整片像流體般川流而行的點場。由於映射 x_0 映到 Phi(t) x_0 不過是乘上一個矩陣,線性系統的流是線性的——直線保持為直線、原點留在原處、把起點放大會把整條軌跡一同放大。這一個矩陣,就是對系統所能提出的每一個初值問題的完整答案。
把這些線索攏在一起
讓這些層次沉澱下來。一個基本解組是 n 個獨立的解向量。把它們疊成行,你得到一個基本矩陣 Psi(t),用朗斯基行列式檢查一次便對所有時間有效,其通解是單一乘積 x(t) = Psi(t) c。歸一化使矩陣在起始時為單位矩陣,Psi 就成了主基本矩陣 Phi(t),它把解讀作 x(t) = Phi(t) x_0、沒有常數要解。而 Phi 正是後續幾篇將命名為 e^(At) 的那個物件。每一層都是同一個解集,只是為了更大的施力而換了包裝。
刻意留一條線索鬆著,因為本節之後會去拉它。到此為止的一切都關乎無外力系統 x' = A x。系統一旦被一個輸入推動 x' = A x + g(t),光靠特徵向量的把戲就給不出答案——但基本矩陣可以。把 x = Psi(t) c 中的常數 c 提升為時間的函數,這一招就叫參數變易法,而它行得通,恰恰是因為 Psi(t) 處處可逆——這正是先前那條朗斯基事實在做它真正的工作。你已經造出了這個物件;本節接下來,就是學會計算它、並倚靠它。