2. 泊松方程数学基础
在动手写离散代码之前,必须先弄清楚我们到底在解什么。泊松方程看起来只是一个二阶偏微分方程,但它背后涉及四个层层递进的问题:方程以什么形式成立(强形式还是弱形式)、边界上给什么条件、解是否存在且唯一、解有多光滑。这四个问题直接决定了有限元或有限差分离散格式的构造方式、刚度矩阵的性质,以及数值解能达到的收敛精度。本节围绕这条主线展开,为后续的离散求解打下严格的数学地基。
强形式:逐点成立的微分方程
设求解区域为 Ω,边界为 ∂Ω。泊松方程的强形式写作:
-Δu = f 在 Ω 内
u = g_D 在 Γ_D 上
∂u/∂n = g_N 在 Γ_N 上
其中 Δ 为拉普拉斯算子,f 为源项,n 为外法向单位向量。强形式要求解 u 在 Ω 内具有二阶连续导数(即 u ∈ C²(Ω)),并且方程在每个内点逐点成立。这个要求在实际问题中往往过于苛刻:当 f 存在跳跃、区域有凹角、或系数不连续时,经典意义下的二阶导数可能根本不存在。强形式是物理模型的精确表述,但它不是数值方法直接处理的出发点。
弱形式:降低光滑性要求的等价表述
弱形式的推导分三步:两边乘以检验函数 v、在 Ω 上积分、对二阶项使用格林公式(分部积分)。以一维类比理解,二维情形下得到:
求 u ∈ H¹(Ω),u|_ΓD = g_D,使得对任意 v ∈ H¹_0(Ω):
∫_Ω ∇u·∇v dx = ∫_Ω f v dx + ∫_ΓN g_N v ds
关键变化在于:二阶导数 −Δu 被转移为两个一阶导数的乘积 ∇u·∇v,对 u 的光滑性要求从 C² 降到 H¹(一阶导数平方可积)。同时,Neumann 边界条件作为自然边界条件自动出现在右端积分中,无需强加;而 Dirichlet 条件则必须通过试探空间显式施加,称为本质边界条件。这一区分对离散实现有直接影响:本质条件要修改自由度或罚函数处理,自然条件只需在载荷向量中增加边界积分项。
弱形式与强形式的等价性依赖于解具有足够光滑性(通常要求 u ∈ H²),这就是所谓的正则性前提。若解不够光滑,弱形式仍是合理的推广,而强形式可能无意义。
解的存在唯一性与边界条件的相容性
弱形式把问题转化为 Hilbert 空间中的变分问题。由 Lax–Milgram 定理,只要双线性形式 a(u,v)=∫∇u·∇v 在 H¹_0(Ω) 上满足连续性与强制性(椭圆性),且右端泛函连续,则弱解存在且唯一。强制性来自 Poincaré 不等式:在 H¹_0(Ω) 上,∫|∇u|² 可以控制 ∫u²,因此 a(u,u) ≥ c‖u‖²_{H¹}。
这里有一个必须警惕的陷阱:纯 Neumann 问题不唯一。当 Γ_D 为空、全部边界都是 Neumann 条件时,常数函数属于零空间,a(u,u)=0 对非零 u 成立,强制性失效。此时解只在相差一个常数的意义下存在,且要求相容性条件 ∫_Ω f dx + ∫_∂Ω g_N ds = 0 成立。数值上表现为刚度矩阵奇异、解漂移。工程中的处理办法是固定一个参考点、施加零均值约束,或改用极小位移约束。相比之下,只要 Γ_D 非空(哪怕只有一个点),强制性恢复,解唯一。
正则性假设及其对离散的影响
正则性回答的是“解到底有多光滑”,它决定了有限元收敛阶能否达到理论最优。对于凸多边形区域、f ∈ L²(Ω)、边界分段光滑的情形,有 u ∈ H²(Ω),此时线性元在能量范数下达到 O(h) 最优收敛。但若区域存在内凹角(例如 L 形域的内角为 270°),解在角点附近出现奇性,一般只有 u ∈ H^{1+α}(Ω),α 取决于角的大小。以 L 形域为例,α 约为 2/3,此时均匀网格上的收敛阶会从 O(h) 退化到 O(h^{2/3}) 左右,误差集中在角点附近。
这一事实对离散实践有两条直接指导:其一,不能盲目相信“加密网格就一定按理论阶收敛”,遇到凹角、裂纹、材料界面时应先判断正则性;其二,针对奇性区域应采用局部加密(h 自适应)或提高多项式阶次(p 方法),把计算资源投到解变化剧烈的位置。此外,若 f 仅属于 L² 而非更光滑,解一般达不到 H²,混合方法的选取和误差估计都要相应调整。
从数学性质到离散矩阵的对应
把上述性质落到矩阵层面,可以得到一张清晰的对照:弱形式的对称双线性形式对应对称刚度矩阵;强制性对应矩阵正定(在施加本质边界条件后);纯 Neumann 的零空间对应矩阵奇异、存在常数零特征向量;正则性不足则对应误差估计中的收敛阶下降。理解这层对应关系,在调试时就能从现象反推原因:若求解器报告矩阵奇异,先查边界条件是否缺失;若残差收敛但精度不达标,先查区域奇性与网格分布。这正是数学基础对工程实践的真正价值所在。