2. 物理守恒定律的数学表述与数值离散基础

数值校验的第一步,不是打开软件跑算例,而是把“守恒”写成可被离散方程逐项核对的数学形式。只有先明确连续形式的守恒律,才能判断离散格式是否在代数层面保持了同一守恒性质,进而定位误差来源。本节围绕质量、动量、能量三类守恒律的积分与微分表述,讨论有限差分与有限体积离散对守恒性的不同影响,并给出离散守恒误差的分类框架。

一、积分形式与微分形式:同一物理事实的两种写法

守恒律的积分形式针对有限控制体,表述为“控制体内守恒量的时间变化率 = 穿过边界的净通量 + 体内源项”。以标量守恒量 φ 为例,对任意控制体 V(边界为 ∂V,外法向为 n)有:

d/dt ∫_V φ dV + ∮_∂V (F·n) dA = ∫_V S dV

其中 F 为通量矢量,S 为单位体积源项。积分形式不要求场量连续可微,因此对含激波、间断或强梯度的流动问题更本质,也是有限体积法的直接出发点。

若 φ 与 F 在区域内足够光滑,应用高斯散度定理并令控制体任意收缩,得到微分形式:

∂φ/∂t + ∇·F = S

对质量守恒,φ = ρ,F = ρu,S = 0,即 ∂ρ/∂t + ∇·(ρu) = 0;对动量守恒,φ 为动量密度分量,F 为对流通量加压力与黏性应力张量,S 为体积力;对能量守恒,φ 为总能量密度,F 包含对流传热、压力做功与热传导通量。三类方程的共同结构是“时间项 + 通量散度 = 源项”,这正是离散校验时逐项对账的骨架。

校验约定:本文统一取控制体外法向为正,通量以流出为正、流入为负。若采用流入为正的约定,所有通量项符号需整体取反,但“净流出等于体内减少”的物理判断不变。切换约定必须在算例说明中显式声明。

二、有限差分与有限体积对守恒性的不同影响

有限差分法直接在网格节点上近似偏导数。以一元均匀网格、间距 Δx 为例,对 ∂φ/∂t + ∂f/∂x = 0 采用显式欧拉时间推进与中心空间差分:

φ_i^(n+1) = φ_i^n - (Δt/(2Δx))·(f_(i+1)^n - f_(i-1)^n)

该格式在节点层面是“局部”的:它并不保证离散域内 φ 的总量严格守恒。若把全域所有节点方程相加,内部通量项成对出现但符号与系数并不必然完全抵消,只有当差分算子具有“通量差分”的紧致结构(即写成 f_(i+1/2) − f_(i-1/2) 的形式)时,内部项才会逐对消去,总量变化才只由边界通量决定。因此,有限差分的守恒性取决于格式是否可写成通量差分形式,而非取决于精度阶数。

有限体积法则从积分形式出发,对每个控制体直接离散:

(φ_i^(n+1) - φ_i^n)·V_i/Δt + Σ_f (F_f·n_f)·A_f = S_i·V_i

相邻控制体共享同一个面,面上通量 F_f 只计算一次,一侧记为流出、另一侧记为流入,符号相反、数值相同。把所有控制体方程相加,内部面通量严格两两抵消,全域守恒量变化只等于边界通量与源项之和。这是有限体积法“天生守恒”的代数根源,也是它在守恒律校验中更受青睐的原因。

离散方式与守恒性:内部通量能否严格抵消 有限差分:节点局部近似 i−2 i−1 i i+1 i+2 节点方程相加时,内部差分项 不一定逐对抵消 守恒性依赖格式能否写成 通量差分形式 f(i+1/2) − f(i−1/2) 结论:守恒性需额外构造与验证 有限体积:控制体通量平衡 V₁ V₂ V₃ V₄ V₅ V₆ 共享面 F_f 只算一次 相邻体在共享面上通量等值反号 全域求和后内部项严格抵消 结论:离散守恒由代数结构保证

三、离散守恒误差的来源分析

即便格式在代数上守恒,数值校验中仍会观察到守恒量漂移。误差来源可归为四类,校验时应逐类排查而非笼统归因于“精度不够”。

  • 通量不一致误差:同一面上两侧采用不同重构或不同限制器,导致流出与流入数值不等。常见于非结构网格上分别从两侧面法向计算通量,或界面两侧使用不同物性。校验方法:对每个内部面输出两侧通量差值,理论上应为机器零量级。
  • 时间离散误差:显式格式中时间项与通量项不在同一时刻取值,导致离散守恒量在时间推进中产生非物理增减。可用“全域守恒量随时间的变化曲线”观察:若边界通量与源项已精确计入,曲线斜率应等于边界净通量,偏离量即为时间离散引入的守恒误差。
  • 边界处理误差:边界通量未按与内部一致的方式计入,或壁面通量被错误置零而实际存在质量泄漏。校验时单独统计边界通量积分,与全域守恒量变化对账。
  • 源项与舍入误差:源项离散与通量离散不匹配(如源项用节点值而通量用面值),以及大规模累加中的浮点舍入。后者通常量级很小,但长时间积分会累积,需用双精度或补偿求和。

一个可直接执行的校验流程是:先计算全域守恒量 Q(t) = Σ φ_i V_i,再计算边界净通量与源项积分之和 R(t),检查 dQ/dt 与 R 的偏差。以二维方腔纯扩散算例为例(示例参数:网格 64×64,Δx = Δy = 0.01 m,扩散系数 1×10⁻⁵ m²/s,初始方波分布,时间步 1×10⁻³ s,共 2000 步),若采用守恒型有限体积离散,总质量相对漂移应处于 10⁻¹² 量级;若改用非守恒型中心差分,同样算例下相对漂移可达 10⁻³ 量级。该组数据为教学示例设定,用于说明量级差异,实际数值随格式与实现而异。

常见误区:把“高阶格式”等同于“守恒格式”。二阶中心差分精度高于一阶迎风,但若未写成通量差分形式,其全域守恒性反而可能更差。校验时应先确认代数守恒结构,再讨论精度阶。

综上,连续形式的积分与微分表述给出了守恒的物理基准,有限体积的共享面通量结构提供了代数守恒的保证,而有限差分的守恒性需要格式设计来构造。离散守恒误差的排查应围绕“面通量一致性、时间项匹配、边界计入、源项与舍入”四条线索展开,用全域守恒量对账作为统一判据。