上一节备好了梯度、散度、旋度三把钥匙,本节补齐行囊里剩下的三件装备:柱、球坐标系(选对坐标系,对称问题的算量能少一个数量级)、δ 函数(描述点源的合法语言)、格林函数(把"点源响应叠加成一般解"的程序写成一个公式)。三者将直接服务于第 2 章的静电场求解。
直角坐标对一般问题最通用,但电磁学的经典景观常有天然对称:一根带电长直导线是柱对称,一个带电导体球是球对称。硬用直角坐标算这些题,等于在盘山公路上走直线——不是不行,是又笨又累。
柱坐标 (ρ, φ, z) 与球坐标 (r, θ, φ) 下,梯度、散度、旋度各有专门表达式。不必死背全部系数,只需记住两条结构性事实:
其一,算子在曲线坐标下不再"均质"。 直角坐标下 ∇·F 只是三个偏导数相加;球坐标下则为
∇·F = (1/r²) ∂(r²Fr)/∂r + (1/(r sinθ)) ∂(sinθ Fθ)/∂θ + (1/(r sinθ)) ∂Fφ/∂φ
多出来的 r²、sinθ 因子来自"坐标网格本身在伸缩"——球面上离轴越远,一格 φ 对应的弧长越长。这些因子错一个,答案就错一个量级。
其二,对称性让表达式自我坍缩。 球对称场只有径向分量 Fr 且只依赖 r,散度立刻缩成 (1/r²)d(r²Fr)/dr 一项,旋度各项全为零。第 2 章用高斯定律秒杀球、柱、面对称问题,靠的正是这个坍缩。
体积元同理要换装:直角 dV = dx dy dz,柱坐标 ρ dρ dφ dz,球坐标 r² sinθ dr dθ dφ。这些权重因子在算总电荷、总能量时极易遗漏,是作业与考试的高频失分点。
点电荷是电磁学最常用的源,但"电量集中在体积为零的点上"意味着密度无穷大,普通函数装不下它。狄拉克 δ 函数为此而生:它在原点外处处为零、在原点无限尖锐,且全空间积分为 1。严格地说它不是函数而是分布——它的意义只在于被积分的时候:
∫ f(x) δ(x − a) dx = f(a)
这条"筛选性质"是说:δ 函数是一个取样器,把它放在哪,积分就把哪里的函数值抽出来。有了它,位于原点、电量为 q 的点电荷密度就可以写成解析形式 ρ(r) = q δ³(r),三维 δ 是三个一维 δ 的乘积。原先"无穷大密度"的尴尬表述被替换成一套自洽的运算规则。
δ 的三个常用性质务必熟练,后面各章直接引用:
静电学的基本方程是泊松方程 ∇²φ = −ρ/ε₀。它线性——两组源产生的电势直接相加。于是产生一个雄心勃勃的思路:只要知道"一个单位点源"产生的解,把所有点源的解加起来,就得到任意源的解。 这个单位点源解就是格林函数 G(r, r′):位于 r′ 的单位点源在 r 处产生的响应。
对无界空间,它有一个极简洁的闭式:
G(r, r′) = 1/(4π|r − r′|)
任意电荷分布的解随之为一个积分:
φ(r) = (1/ε₀) ∫ G(r, r′) ρ(r′) d³r′
这个积分你其实早就认识——把 ρ 切成无数小体元,每个体元当点电荷,按 1/(4πε₀r) 贡献电势,再求和,正是大学物理里学过的电势叠加公式。格林函数只是给这个"切、当、加"的程序起了名字、立了户口。
它的价值在第 2 章边值问题中才真正显现:边界存在时,点电荷的"响应"会被导体面扭曲(镜像法就是手工构造格林函数的绝活),不同边界对应不同 G。换一批边界,只需换一个格林函数,"点源响应叠加"的总思路不变——这种"框架不动、只换内核"的结构在数学物理方法里反复出现,值得专门记住。
下面用数值积分直接验证"点源响应叠加"能重现连续带电球的电势。设半径 R 的球体均匀带电,体密度 ρ。解析解(第 2 章将推导):球内 φ = ρ(R² − r²/3)/(2ε₀)... 我们先用程序叠加算,再与解析式对比。
# 均匀带电球的电势:数值叠加(格林函数思想)对比解析解 import math eps0, R, rho = 8.854e-12, 1.0, 1e-9 # 单位制随意,比例正确即可 k = 1.0 / (4 * math.pi * eps0) def phi_numeric(r, n=60): """把球切成 n 层薄球壳,每壳按点电荷公式叠加(薄壳内部抵消,此处直接积分)""" total = 0.0 dr = R / n for i in range(n): rp = (i + 0.5) * dr # 壳半径 dq = rho * 4 * math.pi * rp**2 * dr # 壳上电量 total += k * dq / max(r, rp) # 壳对外点的贡献 k dq / max(r, rp) return total def phi_exact(r): if r >= R: return k * (4/3 * math.pi * R**3 * rho) / r return rho * (3 * R**2 - r**2) / (6 * eps0) # 球内解析解 for r in (0.3, 0.8, 1.0, 2.0): print(f"r={r}: 数值 {phi_numeric(r):.4g} V, 解析 {phi_exact(r):.4g} V")
运行后两列数值应在小数点后多位吻合。注意 max(r, rp) 这一行:薄壳对壳内一点贡献恒定(这是壳层定理,第 2 章将用高斯定律两行证出),对壳外一点按 1/r 衰减——一个细节浓缩了叠加原理的全部力量。试着把 rho 换成随 r 衰减的分布 rho*math.exp(-2*rp),数值框架一行不改,解析式却要重推——这就是"框架不动、只换源"的格林函数哲学。
坐标系换装漏权重:柱、球坐标的体积元与算子系数(ρ、r²、sinθ)是初学者第一大错源。自查办法:对一个已知散度的场(如 (r², 0, 0) 球坐标,散度 (1/r²)d(r⁴)/dr = 4r)数值验证。
把 δ 函数当普通函数运算:δ(2x) 不是 δ(x) 而是 δ(x)/2;对 δ 乘函数也不能随手约去——一切操作都要回到积分里做才有定义。
混淆格林函数与基本解的适用条件:1/(4π|r−r′|) 只是无界空间的基本解。有接地导体板时直接套它会得到错误答案,必须先按镜像法修正(第 2 章第 4 节详述)。