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

格林函數的核心思想

在一個點上戳一下線性系統,記下它如何回應——這一個回應,即格林函數,悄悄藏著對每一種可能源的解。疊加隨後把完整答案拼成一個對它的積分。

每個非齊次方程背後的問題

退後一步,看看整本書裡幾乎每一個方程真正在問什麼。有一個線性微分算子 L——它接過一個函數,按一套固定的、線性的配方去微分它,比如振動弦的 L = d^2/dx^2 + k,或者穩態溫度的拉普拉斯算子 nabla^2。有一個 f(x)——驅動、負載、被泵入的熱、安放在空間裡的電荷。而方程 L u = f 在問:給定這個源,系統會安頓到什麼樣的響應 u?一個非齊次方程的全部戲劇性就在於:右邊的 f 不為零;有什麼東西在驅動這個系統,而我們想要它產生的答案。

你已經有好幾種方法可以攻克這類方程。本書前面你學過參數變易法、拉普拉斯變換和傅立葉方法——每一種都是一台機器,把某個特定的 f 碾成它特定的 u。但其中每一種,換一個新的 f 重跑,都得從頭碾起。格林函數提出一個更尖銳、更慵懶、也遠更優美的問題:是否存在一個普適的對象,對算子 L 及其邊界只算一次,就讓我們能為任意源寫出答案、而無需再解一遍方程?本篇要引出的驚人事實是:能。

把源拆成一百萬次微小的戳

下面這幅畫讓整個思想變得不可避免。暫且忘掉古怪的源,把 f(x) 想成壓在一根繃緊的彈性梁上的載荷。現在做一件物理上很自然的事:把梁切成許多薄片,並把每一片上的載荷當作就在那一片位置上的一次集中推力。一個光滑的分布載荷於是變成密密一排彼此分開的小戳,每一戳在它自己的點上、各有自己的強度。只要切片足夠薄,所有這些孤立的戳加起來,就能把原來的光滑載荷複現得任你要多準有多準——這恰恰是你從第一卷起就信賴的黎曼和的精神,那裡的積分正是靠切片再相加搭起來的。

現在是關鍵的一步。因為 L 是線性的,樑對整個載荷的響應,等於它對每一次單獨的戳的響應之和。沒有串擾,沒有干涉:線性系統對「若干原因之和」的回答,就是「各個回答之和」。這就是疊加原理,整套方法所立足的那一條性質。於是,只要我知道樑對一次位於任意點的標準戳的響應,我就能把構成真實載荷的所有小戳的響應加起來——積分起來——得到對真實載荷的響應。為複雜的 f 求解 L u = f 這個問題,悄悄變成了一個單一而更簡單的問題:找出對一次孤立的戳的響應。

什麼是一次完美尖銳的戳?

要把「一次孤立的戳」說精確,我們需要一個數學對象,代表把一單位的源整個擠到單獨一個點上。這個對象就是 [[dirac-delta-function|狄拉克 delta]],寫作 delta(x - x')。把它想成一段寬度為 epsilon 的微小切片上分布的載荷的極限:保持總量固定為 1,同時把寬度往零裡擠,於是高度暴漲。在極限處這道尖峰無窮高、無窮窄,整個坐落在 x = x' 這一點上,而它的總含量——delta(x - x') 對所有 x 的積分——恰好仍是 1。它是「整整一單位的東西、全在一個點上」的理想化。

篩選法則恰恰是把我們的切片圖景化為精確代數的工具。它說,任何源 f 都能寫成點源的連續疊加:f(x) = integral of f(x') delta(x - x') dx'。慢慢讀這一句——它聲稱 f 就是在所有位置 x' 上、各以局部強度 f(x') 加權的 delta 尖峰之和(積分)。這就是「切成戳」的圖景被做到精確、再沒有剩下任何近似。delta 是那一次完美的戳;積分則是把無窮多個戳鋪下去、各自縮放以拼出 f 的動作。

格林函數:對一次戳的響應

現在可以為主角命名了。[[greens-function|格林函數]] G(x, x') 被定義為系統對放在點 x' 處的一次單位戳的響應。用符號寫,它是 L G(x, x') = delta(x - x') 的解,其中 L 作用於第一個變量 x,而第二個變量 x' 只標記戳坐落在哪裡。於是 G(x, x') 回答一個精確的問題:「若我用一個位於 x' 的完美點源去驅動算子 L,它在每個觀測點 x 處讀出的響應是什麼?」對一個給定的算子與邊界,這樣的 G 只有一個——一份為每一個可能的源位置 x' 都編好目錄的點源響應

這裡有一條要緊的小字:僅憑方程 L G = delta 還釘不死 G。算子 L 本身有許多解(回想齊次方程 L u = 0 自有一族解,你總能把它加上去)。把那一個格林函數挑出來的,是 G 還必須滿足與你所解問題相同的邊界條件——夾死的兩端、絕熱的邊、在無窮遠處衰減。因此格林函數與它的邊值問題密不可分:換了邊界,就換了 G。它編碼的不只是算子,還有系統所棲身的那間「房間」。

疊加拼出答案:一個積分

現在看那兩半「咔」地扣在一起,因為這就是回報所在。我們把源寫成了點戳的疊加,f(x) = integral of f(x') delta(x - x') dx'。而對每一次單獨的戳 delta(x - x') 的響應,按定義就是格林函數 G(x, x')。由線性——又是疊加——對 f 的響應,就是那些各自響應的同一種疊加,每一個都以同樣的強度 f(x') 加權。結果便是[[superposition-integral|疊加積分]],整門學問的總公式:u(x) = integral of G(x, x') f(x') dx'。

THE LOGIC IN FOUR LINES

  (1)  Solve once:        L G(x, x') = delta(x - x'),  G obeys the boundary conditions
  (2)  Split the source:  f(x) = integral  f(x') delta(x - x') dx'      (sifting property)
  (3)  Apply L u = f and pull L through the integral (L acts on x, not x'):
         L u(x) = integral  f(x') [ L G(x, x') ] dx' = integral  f(x') delta(x - x') dx' = f(x)
  (4)  So a solution is:  u(x) = integral  G(x, x') f(x') dx'

  One precomputed G  ->  the answer for EVERY source f, by a single integration.
總公式為何成立:L 能滑進積分內,因為它作用於 x、而我們對 x' 積分;它落在 G 上,把 G 變成 delta,篩選性質便精確地重建出 f。G 只解一次;以後永遠只對它做積分。

在這條公式上多停留一會兒,因為它確實了不起。最難的活兒——真正去解一個微分方程、對付算子與邊界——只發生一次,就在求 G 的時候。此後,任何源 f,無論多醜,都靠一次積分搞定。樑上來了新的載荷、換了不同的熱輸入、另一種電荷分布:你再也不去碰那個微分方程;只把新的 f 對那同一個老 G 積分一下。格林函數就是算子的「響應指紋」,算一次,無限次複用。這正是本級承諾所指向的優雅:知道對一次尖銳戳的響應,你就知道了對一切的響應。

誠實的邊界,以及穿越本級的路

把這些誠實的小字放在眼前,你才能正確地駕馭它。其一,整套方法立足於線性——疊加是那面承重牆,而一個非線性算子(把源加倍、響應卻不加倍的那種)在這個意義上根本沒有單一的格林函數。其二,公式給出的答案,是源在尊重邊界的前提下所強迫出的響應;若你的問題本身還帶著非零的邊界數據或初始數據,那些會貢獻額外的部分(一個單獨處理的齊次部分),後面的指南會小心地把它們加進來。其三,G 的存在與良好性態並非自動——它們要求邊值問題被恰當地提出,而某些共振情形(L u = 0 有滿足邊界的非零解時)需要特別小心。

關於 delta 本身還有一句誠實話:因為它是分布、不是函數,方程 L G = delta 要在分布的意義下理解,而 G 通常會在 x = x' 處帶一個折角——斜率的一個跳變——那是無窮集中的源留下的疤。這個折角不是缺陷;它是那一次單位戳的可見標記,而精確算出它該有多大,正是構造 G 的標準配方,下一篇指南將把它完整走一遍。我們在這裡搭起了思想;真正去求出 G 的機器,緊隨其後。

  1. 認出形態:你的問題是 L u = f,帶一個線性算子 L、一個源 f 和邊界條件——這正是格林函數的天然歸宿。
  2. 把點源問題解一次:求滿足 L G = delta(x - x') 且服從相同邊界條件的 G(x, x')。
  3. 對真實的源,靠一次積分拼出答案:u(x) = integral of G(x, x') f(x') dx'。
  4. 把滿足非零邊界或初始數據所需的任何齊次部分補回去,你就得到了完整的解。