流動河面上的一道染料
你已經爬過單變數微積分、認識了偏導數,也解過常微分方程。現在,一個未知量同時依賴於兩件事——位置 x 與時間 t——我們把它寫成 u(x,t)。在本學科任何一條著名方程之前,先從最溫和的那一條開始。想像一條又長又細的河,河面上漂著一道染料。河水穩定地向右滑動,而染料既不擴散也不褪色。一秒鐘後拍下的照片,會和現在的照片一模一樣,只是順流稍微往下游平移了一點。這幅畫面就是 傳輸方程,而整個學習階梯都從它生長出來。
令 u(x,t) 為位置 x、時間 t 處的染料量。傳輸方程說它純粹被帶著走:u_t + c u_x = 0,其中 c 是(常數)流速。把這兩項對照著讀。u_t 是隨著時間滴答、在固定一點上染料量變化的快慢;u_x 是染料輪廓在空間中上升或下降的陡峭程度。方程堅持這兩者恰好抵消——時間上的局部變化,無非就是空間斜率以速度 c 從你身旁掃過。沒有任何東西被產生、被消滅,或被抹開;圖案只是被搬了位置。由於是介質在搬運,這也被稱為對流方程。
答案是一個行波
重點來了,而且很美:解為 u(x,t) = f(x - c t),其中 f 是起始輪廓,由初始條件 u(x,0) = f(x) 給定。時間 t 時 u 的圖形,就是 f 的圖形整體向右滑動了距離 c t——高度相同、寬度相同、形狀相同,只是移動了。這就是一個 行波解:一個凍結的輪廓,以穩定速度 c 滑過空間。關於 u 的一切,都藏在單一組合變數 x - c t 之中,這常被稱為特徵變數。這個組合正是下一篇導讀 特徵線法的種子。
讓我們確認它確實成立,因為親眼看見抵消能把概念鞏固下來。若 u(x,t) = f(x - c t),則由連鎖律得 u_t = -c f'(x - c t)、u_x = f'(x - c t)。代入方程:u_t + c u_x = -c f' + c f' = 0。對任何可微的 f 它都為零。最後這個詞正是誠實而重要的部分:單一條常微分方程用幾個常數就把解釘住,但偏微分方程卻留下一整個任意函數自由。在這裡,每個形狀 f 都是一個通解,直到你說出 t = 0 時染料長什麼樣。資料,就是從無窮多個 f 中挑出唯一一個的東西。
u_t + c u_x = 0, u(x,0) = f(x) --> u(x,t) = f(x - c t) t = 0: f( . ) bump centred at x = 0 t = 1: f( . - c ) same bump, now at x = c t = 3: f( . - 3c ) same bump, now at x = 3c
一個小小的算例
取 c = 2,並以單一的高斯隆起作為初始資料,u(x,0) = e^(-x^2),以 x = 0 為中心。公式說 u(x,t) = f(x - 2t) = e^(-(x - 2t)^2)。現在讀出各時刻的快照。在 t = 1 時,峰值——指數為零之處——位於 x - 2 = 0,即 x = 2。在 t = 3 時它位於 x = 6。隆起在每一刻都維持高度 1、寬度不變;它只是以速度 2 隨水流前進。這就是這條方程的全部行為,化為了具體。
親手追蹤一條路徑很值得。假設你沿著曲線 x(t) = x0 + c t 行走,與水流同步前進。你看見的染料值 U(t) = u(x(t), t),其變化率為 dU/dt = u_t + (dx/dt) u_x = u_t + c u_x,方程使這恰為零。所以 u 沿每條這樣的直線都是常數——這些就是特徵線 x - c t = 常數——而僅憑這一個觀察,就是喬裝過後的完整答案。這正是下一篇導讀將其長成「能對付遠遠更難的方程的方法」的種子。對這裡的線性一階方程而言,這些直線是固定的軌道,在解尚未知道之前就已畫好。
它的位置,以及該留意之處
小心別把 u_t + c u_x = 0 與你再往上幾級會遇到的二階波動方程 u_tt = c^2 u_xx 搞混。傳輸方程是它的一個因式——它只把訊號往單一方向傳,而波動方程同時承載左行波與右行波。傳輸是有限速度、不平滑化過程最簡單的例子:f 中一個尖銳的轉角會永遠是尖銳的轉角,只是換了位置。這與擴散方程 u_t = k u_xx 恰好相反,後者會把每個轉角瞬間抹糊。誠實的定位:傳輸保留特徵;擴散抹除它們。
兩個誠實的提醒。第一,乾淨的答案 u(x,t) = f(x - c t) 仰賴 c 為常數。若流速會變化,c(x,t),或者——更戲劇性地——若速度依賴於 u 本身,那些整齊的直線軌道就會彎曲,快的部分追上慢的部分,平滑的圖景便可能崩潰成一個震波。這個真正非線性的故事,是本學習階梯的高潮。第二,f 中的一個轉角會給出一個 u,它在除了那條移動的轉角以外處處滿足方程;要讓這類不平滑的解說得通,正是後面幾級要建立弱解與分布解的原因。眼下,先好好享受最乾淨的這個情形。