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

在積分號下求導

把一個參數偷偷塞進一個頑固的積分裡,對它求導,解出隨之掉出來的那個更簡單的積分,再積回去。把費曼最愛的技巧講清楚。

當工具箱見底時

到現在,你已經攢下一套像樣的兵器。你可以拿出 換元法、靠 分部積分、用 部分分式 展開一個有理函數,或用 三角換元 理順一個根號。可有些 定積分 偏偏紋絲不動,抱著胳膊,把這些招數一個一個擋回去。一個著名的例子是從 0 到無窮的 (sin x)/x dx——(sin x)/x 根本沒有初等原函數,所以「先求原函數、再代上下限」這條慣用路就直接走不通了。

我們這裡要見的技巧,不是硬逼出答案,而是改寫問題。我們故意「破壞」這個積分,往裡偷偷塞進一個旋鈕——一個參數,記作 alpha——把一個固定的數變成一整族積分 I(alpha)。這個計畫聽起來幾乎有點魯莽:加一個變量、讓問題看上去更難,然後對那個變量給整族積分求導,指望導數恰好是一個我們真能算出來的積分。

萊布尼茨法則:交換兩個運算

一切的核心是一個乾淨的想法。設 I(alpha) = 從 a 到 b 的 f(x, alpha) dx,其中上下限 a、b 是固定的,alpha 是我們的參數。那麼,在我們馬上會老實點名的條件下,dI/dalpha = 從 a 到 b 的 (partial f / partial alpha) dx。用話說:積分的導數等於導數的積分。你被允許把 d/dalpha 推過積分號,讓它落到被積函數上,變成對 alpha 的 偏導數

為什麼交換這兩個運算是合法的?把積分想成無窮多片薄板 f(x, alpha) dx 的累加。微微挪動 alpha,會讓每片板的高度都變一點點。面積的總變化,正是這些微小高度變化的總和——而那恰好就是 partial f / partial alpha 的積分。每片板都用它自己對 alpha 的普通 導數 來回應,把這些回應加起來:你是先加再求導,還是先求導再加,結果一樣。這就是全部的直覺。

如果上下限也依賴 alpha,完整的 萊布尼茨法則 會多出兩個邊界項:d/dalpha 關於從 a(alpha) 到 b(alpha) 的 f dx = f(b, alpha) b'(alpha) - f(a, alpha) a'(alpha) + (partial f / partial alpha) 的積分。這兩塊恰好是 微積分基本定理 在捕捉移動的端點。用費曼技巧時,我們幾乎總把上下限固定,於是它們消失,只剩「導數的積分」這一項。

一個完整的例子,慢慢來

我們來求 I = 從 0 到 1 的 (x^3 - 1) / ln(x) dx。下面那個自然對數,正是堵死一切初等方法的東西。於是我們在已有冪次的地方插進一個參數:定義 I(alpha) = 從 0 到 1 的 (x^alpha - 1) / ln(x) dx,其中 alpha 大於 -1。注意 I(3) 就是我們真正想要的數,而 I(0) = 0 是白送的,因為 x^0 - 1 = 0 讓整個被積函數為零。最後這個事實,給了我們一個已知的錨點,好讓我們積回去。

現在在積分號下求導。關鍵的抵消是:x^alpha 對 alpha 的偏導等於 x^alpha ln(x),而這個 ln(x) 把分母裡那個討厭的 ln(x) 幹掉了:partial/partial alpha 關於 (x^alpha - 1)/ln(x) = (x^alpha ln x)/ln x = x^alpha。那個頑固的積分塌縮成了一個大一學生就能做的東西。於是 I'(alpha) = 從 0 到 1 的 x^alpha dx = 1/(alpha + 1)。

I(alpha)  = integral_0^1 (x^alpha - 1)/ln(x) dx       (want alpha = 3)
I'(alpha) = integral_0^1 d/dalpha[(x^alpha-1)/ln x] dx
          = integral_0^1 x^alpha dx        (ln x cancels!)
          = 1/(alpha + 1)
integrate back, using anchor I(0) = 0:
I(alpha)  = integral_0^alpha 1/(t+1) dt = ln(alpha + 1)
=> I(3)   = ln(4)
整套動作濃縮在一頁:破壞、求導、解出簡單積分、再從一個已知值積回去。

最後一棒是積回去。我們知道 dI/dalpha = 1/(alpha + 1),又知道錨點 I(0) = 0,於是 I(alpha) = 從 0 到 alpha 的 dt/(t+1) = ln(alpha + 1)。代入 alpha = 3 得 I = ln(4)。一個分母裡塞著對數的亂糟糟積分,結果竟等於 ln 4——而我們自始至終都沒去找過原被積函數的原函數。

配方,以及把旋鈕藏在哪裡

每個費曼技巧的題目都踩著同樣的五拍。真正有創造性的,是第一拍:決定參數放在哪裡。它沒有演算法,只有靠練習磨出來的眼光。一個好的插法,會讓 alpha-導數把障礙抵消掉(就像上面 ln x 抵消 ln x),或把一個彆扭的因子變成對 x 可積的東西。

  1. 插入一個參數 alpha,使得 I(alpha) 在某個取值上化為你的目標,在另一個取值上化為某個輕鬆已知的量(常是 0 或一個標準積分)——後一個取值就是你的錨點。
  2. 在積分號下求導:I'(alpha) = (partial f / partial alpha) 的積分,指望結果是一個你能算的積分。
  3. 把那個更簡單的關於 x 的積分算出來,給 I'(alpha) 留下一個純粹關於 alpha 的函數。
  4. 把 I'(alpha) 關於 alpha 積回去,恢復出 I(alpha),帶一個任意常數。
  5. 用錨點值把常數釘死,再在你真正想要的 alpha 取值處讀出答案。

同一台機器驅動著許多著名結果。把 高斯積分 從 0 到無窮的 e^{-alpha x^2} dx = (1/2) sqrt(pi/alpha) 對 alpha 求導,立刻就得到 x^2 e^{-alpha x^2} dx 的積分,毫不費力——一次求導就給你一整梯子的矩積分。弗魯拉尼積分 從 0 到無窮的 (f(ax) - f(bx))/x dx = (f(0) - f(無窮)) ln(b/a) 同樣能用參數求導法哄出來。而開篇那個 (sin x)/x 積分,則靠插入 e^{-alpha x}、求導以消掉正弦的彆扭、再積回去而被攻破。

什麼時候你才被允許這麼做

說實話:交換導數和積分並不總是合法的,假裝它總合法,遲早會反咬你一口。當 f 及其偏導 partial f / partial alpha 在區域上對兩個變量都連續時,這個交換是有理的;而對無窮區間——這一點至關重要——還要求那個求過導的積分關於 alpha 一致收斂。一致收斂才是真正的守門人:它保證沒有質量逃向無窮的速度,快過你的求導能追上的速度。

確實存在反例:盲目求導會給出錯誤的數,原因恰恰是 收斂 不是一致的。所以在認真的工作裡,你要麼核對前提條件,要麼至少用數值方法驗一下答案。實踐中,對於本方法通常瞄準的那些光滑、快速衰減的被積函數,條件成立、技巧穩如磐石——但養成「我被允許嗎?」這一問的紀律,正是把一種方法和一種迷信區分開來的東西。

為什麼它該握在你手裡

退一步,看看真正發生了什麼。我們拒絕正面強攻這個積分,而是把它嵌進一個族裡,再利用這樣一個事實:對參數的 導數 有時遠比積分本身溫柔得多。這種「參數化、求導、再積分」的節奏,在高等數學裡到處迴響——它和生成函數背後的精神、和變換方法背後的精神、和大部分數學物理背後的精神是同一個;在那些領域,往問題裡塞個參數把它軟化,是一種反射,而非一招雜耍。

把這個技巧當作國際象棋的開局來對待:研究少數幾個範例插法,直到你能感覺到參數想住在哪裡。遇上對數的冪 x^alpha、馴服振盪的指數 e^{-alpha x}、藏在反正切或根號裡的 alpha——這些模式會反覆出現。一旦你的眼睛被訓練出來,那些看似不可能的積分,會開始明明白白告訴你它們想把旋鈕安在哪兒;而你拿起這個方法,就會像今天你不假思索拿起 分部積分 一樣自然。