“有限体积法提供这类共享面通量结构的标准实现,但定理本身针对一致守恒离散序列,不要求通量一定来自精确 Riemann 求解器。多维和非结构网格版本还需几何正则、面通量一致性与离散测试函数逼近条…”
形式陈述 ​
在一维网格上取控制体
并以单元平均
作为未知量。把标量守恒律在
有限体积法以数值通量
公共界面必须只计算一次,并以相反符号写入左右单元。于是任意相邻单元集合求和时内部通量严格抵消,只剩外边界净通量。非均匀网格上守恒的是
一阶方法把每个单元视为分片常数,以相邻平均
Godunov 格式用精确 Riemann 解给通量,Lax–Friedrichs 格式显式加入耗散,迎风格式在线性平流时按速度符号选择上游状态;它们都是本方法的具体一阶实现,而非“有限体积”三个别名。
直觉
有限体积法把每个网格单元当作一个带左右阀门的容器。算法不试图在激波处近似点导数,而是记录本步有多少量穿过每扇阀门。相邻容器共用同一扇门,因此离开左容器的量必然等量进入右容器;这种账本结构对不光滑解仍有意义。
单元平均不是中心点值。光滑区二者相差高阶小量,但激波穿过单元时,平均值精确表示单元中两态所占比例,中心点值则会突然跳变。重构可以利用邻居平均估计单元内分布,却必须保持重构的单元平均不变,否则高阶步骤会在计算通量之前已经制造或销毁总量。
例子与边界
考虑
左流入 ghost 状态为
逐单元更新给
旧总量为
内部通量
守恒不等于稳定、一致或收敛。任取一个共享但不一致的通量也会让总量抵消,却可能逼近错误 PDE;时间步过大时,一个一致通量仍可放大振荡;即使网格解收敛,Lax–Wendroff 定理也只先识别弱解,熵选择还需额外耗散或离散熵不等式。
多维非结构网格将更新写成各面法向通量之和,面面积、单元体积和法向方向必须配套。相邻单元若各自以略有差异的几何法向重复计算同一面,会失去严格抵消。极小 cut cell 还会把体积放在分母中,造成比全局网格尺度更严的时间步限制。
推论与应用
离散守恒使激波传播速度能够在弱极限中继承连续跳跃平衡,这是有限体积法处理双曲守恒律的核心优势。配合 Riemann 通量、单调性或熵稳定性可得到可靠一阶格式;配合 MUSCL、限制器和高阶时间推进,可在光滑区提升精度而在间断附近回退。
实现核验应逐步报告每个边界通量、加权总量差与理论净流出,并在周期网格检查总量只差浮点舍入。此检查只能证明通量装配守恒,不能替代精度实验、CFL 稳定分析或熵残差评估。局部自适应和并行分区也必须让共享面拥有单一权威通量,否则通信误差会直接表现为全局质量漂移。
参考资料
- Randall J. LeVeque, Finite Volume Methods for Hyperbolic Problems, Cambridge University Press, 2002, Chs. 4 and 12.
- Eleuterio F. Toro, Riemann Solvers and Numerical Methods for Fluid Dynamics, 3rd ed., Springer, 2009, Chs. 5–6.
- E. Godlewski and P.-A. Raviart, Numerical Approximation of Hyperbolic Systems of Conservation Laws, Springer, 1996, Ch. 3.