當輕鬆的圍道用完之後
前兩篇指南給了你一套可靠的節奏:選一條包住你想要的實積分的圍道,補上一段封閉弧,證明那段弧消失(常藉由喬丹引理),再把答案讀成 2 pi i 乘以一堆留數之和。這套節奏能拿下極廣的三角與有理積分。本篇要對付naive 配方卡住的三類問題——並指出每個障礙都有一條量身打造的圍道,能讓機器重新運轉。
三個麻煩製造者如下。第一,被積函數含有分數冪或對數,例如 0 到無窮的 x^(a-1)/(1 + x) dx——這裡函數是多值的,所以在你能積分之前,必須先選一個分支並鋪下一道分支切割。第二,被積函數有一個真正的極點正坐落在實軸上,此時積分只在一種微妙、平衡的意義下存在。第三,要算的是無窮級數而非積分,例如 sum over n of 1/n^2。每一類各佔一節。
分支切割積分與鑰匙孔圍道
取 0 到無窮的 x^(a-1)/(1 + x) dx,其中 0 < a < 1。要用留數來算,你必須把 x^(a-1) 延拓成複數的 z^(a-1),而麻煩就從這裡開始:複數冪是透過 z^(a-1) = e^((a-1) Log z) 定義的,對數是多值的,Log z 只有在你禁掉一條射線之後才誠實。標準的選法沿著正實軸切開平面——正是你的積分所在之處——使得 arg z 從切口正上方的 0 跑到切口正下方的 2 pi。這就是鑰匙孔圍道登場了。
keyhole contour around the positive real axis: *------------------------>------* top edge, arg z = 0 / big circle R \ | o pole at z = -1 | <- residue lives here \ small circle e / *------------------------<------* bottom edge, arg z = 2 pi top edge integrand : x^(a-1) / (1 + x) bottom edge integrand: (x e^(2 pi i))^(a-1) / (1 + x) = e^(2 pi i (a-1)) * (same)
魔法在此。半徑 R 的外大圓在 R 趨於無窮時消失(被積函數像 R^(a-1)/R 般衰減),而內小圓在半徑趨於 0 時消失(它像 e^a 般縮小)。存活下來的是兩條直邊——而由於跨越切口的跳躍,函數繞一圈後不會回到起始值。上邊的 z^(a-1) 就是 x^(a-1);下邊已繞行一圈,是 x^(a-1) 乘以 e^(2 pi i (a-1))。兩條邊方向相反、幾乎抵消,留下你想要的那個積分的乾淨非零倍數。
令它等於 2 pi i 乘以唯一被圍極點 z = -1 處的留數。在這個分支上把 -1 寫成 e^(i pi),留數便是 e^(i pi (a-1))。把代數理清,一切坍縮成著名的答案:0 到無窮的 x^(a-1)/(1 + x) dx = pi / sin(pi a)。撐起這一切的,是對對數多值性的誠實:你本來會稱之為瑕疵的那個不連續,恰恰是不會抵消的量,因此也正是交出答案的量。
路徑上的極點:主值與凹陷圍道
現在假設有個極點正落在你的圍道上——課本範例是 sin(x)/x 在整條實軸上的積分,它的延拓 f(z) = e^(iz)/z 在 z = 0 有個極點,正好壓在軸上。你不能圍住這個極點(它在邊界上),也不能無視它(被積函數在那裡爆掉)。解法是主值:在麻煩點周圍切出一個半寬為 e 的對稱缺口,對缺口外的一切積分,再取 e 趨於 0 的極限。對稱是關鍵所在——極點左側的發散恰好平衡了右側的發散。
圍道上的修補對應於分析上的修補:一條凹陷圍道。與其讓路徑直直穿過 z = 0,不如沿著一個半徑 e 的小半圓繞過它。這段小弧是新的成分。和會消失的喬丹大弧不同,繞單極點的小半圓不會消失——當 e 縮小,它恰好貢獻 i pi 乘以該處的留數,是完整圓所給 2 pi i 的一半。正負號取決於你是從極點上方還是下方凹進去,也就是半迴路朝哪個方向走。
- 把實被積函數換成它的複數延拓;對 sin(x)/x 用 f(z) = e^(iz)/z,最後再取虛部還原,因為 e^(ix) = cos x + i sin x。
- 沿實軸建一條圍道,但用一個半徑 e 的小半圓凹陷避開 z = 0 的極點,再用上半平面的一個大半圓封閉。
- 用喬丹引理殺掉大弧(e^(iz) 在上半平面衰減),並把小弧算成 -i pi 乘以 0 處的留數,負號來自它的順時針方向。
- 因為封閉圍道沒有圍住任何極點,其積分為 0;移項便得直線段的主值,取虛部即得 sin(x)/x 在實軸上的積分等於 pi。
級數求和:在每個整數都有極點的函數
最令人意外的應用,是把留數放出去對付無窮級數。訣竅是請來一個極點恰好落在整數上、留數已知的函數,使得對它的留數求和,就變成對級數求和。經典選擇是 pi cot(pi z) = pi cos(pi z)/sin(pi z)。它的分母 sin(pi z) 在每個整數 n 都為零,於是那裡有一個單極點,而一行留數計算便顯示 pi cot(pi z) 在 z = n 的留數恰好是 1——對每個整數皆然,無論大小。
現在把那個輔助函數乘上你要求和的那一項。要算 sum over n of 1/(n^2 + a^2),就看 g(z) = pi cot(pi z) / (z^2 + a^2)。在每個整數 n 處,餘切提供一個留數為 1 的單極點,所以 g 在那裡的留數是 1/(n^2 + a^2)——正是你級數的那一項。同時 g 在 z = +i a 與 z = -i a 還有兩個額外極點,來自分母 z^2 + a^2。把 g 沿一個逐漸長大、最終吞下整個平面的大正方形積分。
當正方形長大,它的積分趨於 0(pi cot(pi z) 在那些邊上遠離整數處保持有界,而 1/z^2 因子勝出)。由級數求和公式,所有留數的總和因此必為零:每個整數處的留數——也就是你的整個無窮級數——加上 +i a 與 -i a 處的兩個留數,總和為零。解出級數便得 sum over all integers n of 1/(n^2 + a^2) = (pi/a) coth(pi a)。那兩個離軸極點,用尋常留數配方一算,就承載著無窮多個整數極點加總出來的閉形式值。
三者背後共享的想法
退一步看,這三個訣竅其實是一個訣竅。每一次你都選一條配合障礙的圍道,證明它不想要的部分會消失或乾淨地合併,再讓留數定理把存活下來的邊界積分轉成有限個留數之和。分支切割藉著貼著一條禁射線的兩側來處理多值性;凹陷藉著貢獻半個留數來處理路徑上的極點;整數極點的輔助函數藉著讓每一項成為一個留數來處理無窮級數。藝術在於選圍道;引擎始終如一。
對這些方法的要求要誠實。每一個都依賴一個你有義務證明而非假設的「消失」主張——大弧靠喬丹引理或一個衰減估計,小弧靠一個小心的半留數極限,長大的正方形靠 pi cot(pi z) 的一個界。略過那道驗證,你就可能寫下一個自信滿滿、卻完全錯誤的數。留數定理是精確的;功夫在於檢查你畫的圍道是否真的隔離出你所宣稱的那些留數。
有了本篇,這一階梯便告完成。你從把留數當作單一個羅朗係數出發,攀過作為柯西宏大推廣的留數定理,如今你能算一個週期上的三角積分、經喬丹的瑕積分、分支切割與主值積分,以及無窮級數——全部出自附在每個奇點上的一個局部量。這正是這門學科靜默的勝利:一個鋪展在整條實軸上的問題,坍縮成在少數幾個點上做的算術。