2. 偏微分方程分类与数值求解路线选择
在真正写下一行离散代码之前,工程上最关键的一步往往不是“选哪个软件”,而是先判断手里的偏微分方程属于哪一类。方程类型决定了信息的传播方式、边界条件的提法、离散格式的稳定性要求,也直接决定了有限差分、有限元、有限体积三条技术路线中哪一条更省力、更可靠。本节围绕“先分类、再选路线”的思路展开,并用一个统一的示例把判断过程落到可操作的层面。
三类方程的本质差异:信息怎么传播
考虑二维稳态热传导、一维瞬态扩散和一维波动三个典型问题,它们分别对应椭圆型、抛物型和双曲型。判断依据来自二阶线性方程 A u_xx + B u_xy + C u_yy + ... = 0 的判别式 B² − 4AC:小于零为椭圆型,等于零为抛物型,大于零为双曲型。但工程上更值得记住的是判别式背后的物理含义。
椭圆型(如 ∇·(k∇T) = 0)没有时间方向,解在区域内每一点都受全部边界影响,扰动会瞬间“传遍”整个区域。因此它本质上是边值问题,必须给定足够多的边界条件(Dirichlet、Neumann 或 Robin 的组合),且边界上不能有多余或缺失的约束。
抛物型(如 ∂T/∂t = α∇²T)有一个时间方向,信息以无限大但衰减的速度向前扩散,初始条件的光滑性会被迅速抹平。它需要初始条件加空间边界条件,时间推进格式的稳定性是核心矛盾。
双曲型(如 ∂²u/∂t² = c²∂²u/∂x² 或一阶守恒律)信息沿特征线以有限速度传播,解可能保持间断(激波、接触间断)。它同样需要初始条件与边界条件,但边界条件的个数必须与进入区域的特征线数目匹配,否则问题会过定或欠定。
三条离散路线的适用边界
有限差分(FDM)直接在网格节点上用差商替代导数,实现最直接、编程成本最低,特别适合规则矩形网格上的抛物型和双曲型时间推进问题。它的短板在于复杂几何:阶梯状逼近边界会引入一阶误差,且难以自然处理曲线边界上的 Neumann 条件。对椭圆型问题,FDM 会生成一个大型稀疏线性系统,需要配合迭代法(如共轭梯度、多重网格)求解。
有限元(FEM)从加权残量或变分弱形式出发,用分片多项式基函数逼近解,天然适应任意复杂几何与非均匀材料。椭圆型问题(结构力学、稳态传热、静电场)几乎是 FEM 的主场,因为弱形式把 Neumann 条件自动吸收进载荷项,边界处理非常优雅。对抛物型和双曲型,FEM 通常只用于空间离散,时间方向仍需配合差分格式,形成“半离散”体系。代价是需要网格生成、刚度矩阵组装和更复杂的稀疏求解器。
有限体积(FVM)在控制体积上对守恒型方程积分,保证离散层面的通量守恒,是流体力学和守恒律问题的标准选择。它对双曲型问题的激波捕捉、对抛物型问题的守恒扩散都很稳健,且能较好处理非结构网格。缺点是高阶精度重建较复杂,边界条件的实现不如 FEM 统一。
选型原则:从方程类型到工程约束
实际选型可以按以下顺序判断:先看方程类型确定信息传播结构,再看几何复杂度决定网格适应性,最后看是否需要严格守恒和可用的求解器生态。一个实用的经验是:椭圆型优先 FEM(复杂几何)或 FDM(规则区域);抛物型优先 FDM(显式、快速原型)或 FVM(守恒、非结构);双曲型优先 FVM(守恒律)或高阶 FDM(光滑解)。当问题同时含多种类型(如 Navier–Stokes 的对流–扩散耦合),往往采用混合策略:对流项用 FVM 或迎风差分,扩散项用中心差分或 FEM。
一个可操作的示例:一维瞬态热传导
设一根长 L = 1 m 的均匀杆,热扩散率 α = 1×10⁻⁴ m²/s,初始温度 T(x,0) = 100·sin(πx/L) °C,两端固定为 0 °C。这是标准抛物型初边值问题,解析解为 T(x,t) = 100·sin(πx/L)·exp(−απ²t/L²)。若采用显式 FTCS 格式,网格 Δx = 0.01 m(100 个节点),稳定性要求 αΔt/Δx² ≤ 0.5,即 Δt ≤ 0.5×10⁻⁴/10⁻⁴ = 0.5 s。取 Δt = 0.25 s 可留出安全裕度。
# 显式 FTCS 一维热传导(示例参数,非实测)
alpha = 1e-4; L = 1.0; nx = 101; dx = L/(nx-1)
dt = 0.25; r = alpha*dt/dx**2 # r = 0.25 ≤ 0.5,稳定
T = 100*np.sin(np.pi*np.arange(nx)*dx/L)
T[0] = T[-1] = 0.0
for n in range(200): # 推进到 t = 50 s
T[1:-1] += r*(T[2:] - 2*T[1:-1] + T[:-2])
# 检查:中心点应接近 100*exp(-alpha*pi^2*50) ≈ 95.1 °C
运行后应观察两个判据:中心温度随时间单调下降且与解析解误差在 O(Δt) + O(Δx²) 量级;若把 Δt 调到 0.6 s(r = 0.6 > 0.5),会出现正负交替的振荡并迅速发散——这正是抛物型显式格式稳定性约束的直接体现。若该问题改为复杂几何或非均匀材料,就应切换到 FEM 空间离散加隐式时间推进,此时稳定性不再受 Δt/Δx² 限制,但每步需解一个线性系统。
把上述判断固化为习惯:拿到问题先写方程、算判别式、确认定解条件是否匹配,再根据几何与守恒需求选路线,最后用稳定性条件或网格收敛性检查验证离散是否可信。分类不是学术分类,而是决定后续所有工程决策的第一道关口。