本指南要解开的谜
在本阶梯里,你已见过三大线性偏微分方程——热方程、波方程,以及定常的拉普拉斯方程 nabla^2 u = 0——你也在矩形上用分离变量法驯服了它们,得到的是普通的正弦、余弦模式和一个傅里叶级数。但世界很少是矩形的。鼓面是一张圆盘,受热的导线是一根圆柱,行星的引力场活在一个球面之外。诚实的问题是:当区域变圆时,同一套方法会发生什么?
这里有一句可以贯穿整篇指南的点睛之语。分离变量法依然有效——但这只因为我们先把拉普拉斯算子改写到贴合边界的坐标里;一旦这样做,剩下的单变量方程就不再是那个温和的 y'' + lambda y = 0 了。它们正是你在级数解阶梯和特殊函数阶梯里学过的贝塞尔方程与勒让德方程。圆形的几何并非仅仅把代数弄复杂;它伸进你的工具箱,精确地挑出哪些特殊函数获准住在那个形状上。读到最后你会明白,为什么圆盘逼出贝塞尔函数、球面逼出勒让德多项式,而这种选择会让你觉得是必然的,而非死记硬背的。
当空间弯曲,拉普拉斯算子变成什么
首先,从直觉上看,拉普拉斯算子究竟是什么?在笛卡尔坐标里 nabla^2 u = d^2u/dx^2 + d^2u/dy^2 + d^2u/dz^2,是若干二阶偏导之和。但那个公式只是一个无关坐标的想法的局部面孔:nabla^2 u 度量的是某点处的 u 与它周围一个小球面上 u 的平均值相差多少。若某点比四周更凉,那里的 nabla^2 u 就为正,热量会流入;而拉普拉斯方程 nabla^2 u = 0 恰恰是说「每一点都已经等于它邻居的平均」——一个彻底松弛下来的调和场,再没有热点或冷点需要抹平。这幅取平均的图景在任何坐标系里都一样;改变的只是记账方式。
为什么记账方式非改不可?因为在曲线坐标里,网格线并非均匀分布。在圆盘中心附近,把角度 theta 拨过一格,你几乎没动;在边缘附近拨过同样一格,你却扫出一道长长的弧。这些把每个坐标拨动一格对应多少真实距离记录下来的换算因子,就是度规因子(scale factors),而它们正是全部关键。对极坐标 (r, theta),度规因子是 h_r = 1、h_theta = r:沿 r 移动是诚实的距离,但沿 theta 拨一格扫过的弧长是 r·d(theta),r 越大弧越长。拉普拉斯算子必须除以这些因子,以抵消网格的拉伸。
圆盘:那些 1/r 项如何孕育出贝塞尔方程
取最平、却仍有趣的情形:写在极坐标里的拉普拉斯方程(或亥姆霍兹方程),定义在一张圆盘上。把度规因子 h_r = 1、h_theta = r 代入配方,得到 nabla^2 u = d^2u/dr^2 +(1/r)du/dr +(1/r^2)d^2u/d(theta)^2。前面带 1/r 和 1/r^2 的那两块,正是曲率的指纹;它们在平直的笛卡尔形式里并不存在,而它们即将包办全部的活。它们不是错误也不是近似——它们是角度 theta 越往外覆盖越多地盘所付出的、精确的代价。
现在分离:猜一个乘积 u(r, theta) = R(r) Theta(theta),代入,再整体除以 R Theta。角度与半径干净地分到等号两侧,这只有在两侧都等于同一个常数时才可能——把它叫做 m^2。角度那一半给出 Theta'' + m^2 Theta = 0,跟矩形上一样友好的振子,解为 cos(m theta) 与 sin(m theta)。但这里几何提出了矩形从不曾提的要求:绕圆盘一圈,从 theta 到 theta + 2pi,会回到同一个物理点,所以 Theta 必须以 2pi 为周期重复。这种单值性强迫 m 取整数 0, 1, 2, 3, ...——这个整数是圆的拓扑递给你的,而非手工选定的。
径向那一半,正是那个有名字的函数诞生之处。把角度导数换成 -m^2,并(对振动的鼓面)带上一个频率常数 k^2 之后,半径满足 R'' +(1/r)R' +(k^2 - m^2/r^2)R = 0。令 x = k r,这就是一字不差的 m 阶贝塞尔方程:x^2 R'' + x R' +(x^2 - m^2)R = 0。你并没有从外面搬来贝塞尔方程;是曲线拉普拉斯算子留下的 1/r 与 1/r^2,加上圆所供给的整数 m,当着你的面把它拼了出来。它的有界解是贝塞尔函数 J_m(k r),而要求鼓面在边缘被夹紧——R(a) = 0——便逼得 k a 必须是 J_m 的一个零点,这正是鼓的允许频率(它的泛音)被量子化的方式。
Laplacian on a disk (polar): nabla^2 u = u_rr + (1/r) u_r + (1/r^2) u_thetatheta
Separate u(r,theta) = R(r) Theta(theta) , divide by R Theta:
R''/R + (1/r) R'/R + (1/r^2) Theta''/Theta = -k^2
|__________ depends on r only _________| |__ theta only __|
=> Theta'' + m^2 Theta = 0 (period-2pi => m = 0,1,2,...)
=> R'' + (1/r) R' + (k^2 - m^2/r^2) R = 0
Let x = k r : x^2 R'' + x R' + (x^2 - m^2) R = 0 <-- BESSEL of order m
bounded solution R = J_m(k r) ; clamp R(a)=0 => k a = zero of J_m球面:cos(theta) 如何孕育出勒让德方程
登到三维,选球坐标 (r, theta, phi),其中 theta 是从北极量起的极角,phi 是经度。度规因子是 h_r = 1、h_theta = r、h_phi = r sin(theta),把它们送进配方,得到一个含三个嵌套部分的拉普拉斯算子:一个径向部分、一个带 1/sin(theta) 因子的极角部分,以及一个方位项 1/(r^2 sin^2(theta)) d^2u/d(phi)^2。那个孤零零的 sin(theta) 是曲率的新指纹——它是经线向两极挤拢时的那种压缩,正是这种压缩让平面世界地图把格陵兰拉得老大。
分三步分离:u = R(r) Theta(theta) Phi(phi)。经度因子最先分出,给出 Phi'' + m^2 Phi = 0,又一次,2pi 周期性逼着 m 取整数——和圆盘相同的圆形拓扑,如今作用在经度上。半径因子接着分出,给出一个等维方程 r^2 R'' + 2r R' - l(l+1) R = 0,其解是干净的幂 r^l 与 r^{-(l+1)}——那些随距离的幂次增长或衰减的熟悉场,后者在 l = 0 时恰是点电荷或质点的 1/r 势。
极角,正是第二个有名字的函数登场之处。Theta 方程仍带着那个别扭的 1/sin(theta),但一个灵光的替换就把它清掉:令 x = cos(theta),于是从极到极、theta 从 0 到 pi 的扫掠,变成 x 走过整洁的区间 -1 到 1。在这一变换下,那个杂乱的三角算子坍缩成 d/dx[(1 - x^2) dTheta/dx] + [l(l+1) - m^2/(1 - x^2)] Theta = 0——即连带勒让德方程。当不依赖经度(m = 0)时,它就是普通的勒让德方程 (1 - x^2) y'' - 2x y' + l(l+1) y = 0。几何再一次替你选定了函数:要求解在两极 x = +1 与 x = -1 处保持有限,便逼得 l 取非负整数,而能存活下来的唯一解,正是勒让德多项式 P_l(cos theta)。
为什么这非如此不可:更深的规律
退后一步,每个坐标系里的规律都是相同的。分离把多变量偏微分方程一层层剥成每个坐标一个常微分方程,而这些单变量方程中的每一个都是一个斯图姆–刘维尔问题——一个区间上的自伴本征值问题,正是占据了本阶梯整整一级的那种结构。在矩形上,区间平平无奇,斯图姆–刘维尔问题是平凡的 y'' + lambda y = 0,所以本征函数是正弦与余弦。在圆盘和球面上,区间自带曲线坐标的权重,同一台斯图姆–刘维尔机器吐出的便改成贝塞尔函数与勒让德多项式。几何不同,机器相同,吐出的有名字的本征函数也不同。
这条斯图姆–刘维尔血统并非脚注——它正是让整套方法可用的关键。因为每个径向或角向问题都是自伴的,它的本征函数正交且完备,于是你能把任何合理的边界数据展开成 J_m 的贝塞尔–傅里叶级数,或 P_l 的勒让德级数,正如你在矩形上用普通傅里叶级数展开那样。配方在精神上是完全一样的:分离、找出本征函数,再借助正交性、用匹配边界条件来定下剩余的系数。特殊函数不过是适配圆形边界的正确字母表,而正交性就是让你能用那套字母表读出任意函数的词典。
- 选与边界相符的坐标——圆而直的形状用极坐标/柱坐标,球状的用球坐标——使边界变成某个坐标取定值(比如 r = a)。
- 用度规因子把 nabla^2 改写到那些坐标里,再代入乘积 u = R(r) Theta(theta) Phi(phi) 并整体相除,把变量分开。
- 先解容易的周期性角向部分;它们的单值性把分离常数 (m, l) 量子化为整数,再喂入径向/极角方程。
- 认出剩下的方程是贝塞尔或勒让德方程,只保留在该有限处保持有限的那个解,再把答案拼成一个正交级数,其系数由边界数据定下。
诚实的告诫,以及魔法在何处止步
要看清楚是什么让这一切奏效,因为它很脆弱。分离变量法不是通用求解器;只有当几何与方程彼此配合时它才成功。边界必须是某个坐标的等值面(一个圆 r = a,一个球面 r = a),而坐标系必须是那少数几个走运的之一——三维拉普拉斯算子能分离的坐标系恰好只有十一个,不能再多。把区域歪成一个椭圆,或一个偏心的圆环,变量便拒绝分开;干净的乘积 u = R(r)Theta(theta) 那时干脆就是错的,你必须诉诸数值方法,或一种全然不同的攻法。那些有名字的函数是对称性的馈赠,且只是对称性的馈赠。
再说两点诚实话。第一,每个径向方程都有两个独立解,而我们只保留一个——保留在区域所及之处不会炸掉的那个。在实心圆盘上我们舍弃第二类贝塞尔函数 Y_m,因为它在中心 r = 0 处发散;在球上当区域包含原点时我们丢掉 r^{-(l+1)}。这种舍弃是一个物理判断(真实的鼓面在正中并非无穷大),而非数学上的条件反射——而对外部问题它会翻转:那时你反过来保留衰减的解,扔掉在无穷远处增长的那个。永远要问:你实际的区域能容忍哪一个解。