Skip to content

Godunov 格式

Godunov scheme · First-order Godunov method · Godunov 有限体积格式

以相邻分片常状态的精确 Riemann 解计算界面通量,再平均回网格得到一阶守恒更新。

条目类型
算法

形式陈述

Godunov 格式在每个时间层把单元平均 Uin 解释为分片常函数。每个界面 (Uin,Ui+1n) 形成一个局部 Riemann 问题;设其熵解在 ξ=0 的状态为 u(Uin,Ui+1n),定义Godunov 数值通量

f^G(Uin,Ui+1n)=f(u(Uin,Ui+1n)).

均匀网格上的一步更新是

Uin+1=Uinλ(f^G(Uin,Ui+1n)f^G(Ui1n,Uin)),λ=ΔtΔx.

在波从相邻界面相遇之前,这等于把所有局部精确 Riemann 解拼接一小段时间,再对每个单元重新取平均。CFL 限制保证本步局部波扇的传播范围与该构造相容;超出限制后,同一代数公式仍能计算,却不再具有这项局部精确解释。

对标量通量,Godunov 通量可由全区间极值直接算出:若 uLuR,取区间上 f 的最小值;若 uL>uR,取区间上最大值。凸性只让极值位置和波型更容易判定,并不是这条通量公式成立的必要条件。在线性平流中,它退化为迎风格式。对适当 CFL 下的标量问题,更新对每个输入状态单调,因而是单调守恒格式的一个特例。

它与Lax–Friedrichs 格式的关键对比是通量来源:Godunov 按精确局部波结构选择界面状态,Lax–Friedrichs 用中心平均加显式耗散覆盖波速。两者都是一阶守恒格式,但耗散量和接触分辨能力不同。

直觉

算法把“下一步有多少量过界面”交给原 PDE 的最小初值问题回答。因为每个单元当前是常状态,界面附近在极短时间里看不到更远单元,Riemann 解正好描述局部发生的激波或稀疏波。随后重新平均会丢掉单元内细节,这一步造成一阶精度与数值耗散。

精确 Riemann 解并不意味着整张网格解精确。每一步重置为分片常数,波一进入单元就被平均;多个波在后续步相互作用也只通过新的平均状态传递。Godunov 的价值是通量方向和熵选择有清楚连续依据,而不是取消离散误差。

例子与边界

对周期网格上的 Burgers 方程,取三个单元

(U1n,U2n,U3n)=(2,1,0),λ=0.4.

周期界面按 (U3,U1)(U1,U2)(U2,U3) 排列。对 02,稀疏扇跨过速度零,Godunov 通量为 min[0,2]u2/2=0;对 21,激波速度 3/2>0,通量为 f(2)=2;对 10,激波速度 1/2>0,通量为 f(1)=1/2。因此

(f^1/2,f^3/2,f^5/2)=(0,2,12).

更新得到

U1n+1=20.4(20)=1.2,U2n+1=10.4(122)=1.6,U3n+1=00.4(012)=0.2.

新旧总和都为 3。最大波速为 2,故 λmax|f|=0.81,本步也满足常用标量 CFL 界。

非凸标量通量不能用只看端点的简化规则;区间内部极值必须进入上述全区间公式,而完整 Riemann 解还可能包含复合波。对系统,精确求解器可能昂贵或不存在闭式表达,工程上常用近似求解器;若近似器遗漏熵修正,跨声速稀疏波可能被错误地当作膨胀激波。

一阶 Godunov 格式在激波附近可靠但会涂抹接触与平滑波。Godunov 阶障碍说明线性、单调的守恒格式不可能在一般光滑解上高于一阶;获得高阶必须放弃全局线性单调性,用受限重构在局部控制振荡。

推论与应用

Godunov 格式把分析与实现连接得很紧:Riemann 求解器给界面通量,CFL 给局部波传播范围,共享通量给离散守恒,标量单调性给 TVD 与熵收敛的入口。调试时可逐面记录左右状态、波型、界面状态和通量,并用上面的三单元算例同时检查周期索引与更新符号。

高分辨率 Godunov 型方法保留同一通量接口,但把分片常输入换成 MUSCL 或更高阶重构的左右迹,再使用 SSP 时间积分。若限制器在间断处把斜率压到零,局部便自动退回这里的一阶格式;这项退化是防振荡机制,不是实现失败。

参考资料
  • S. K. Godunov, “A Difference Method for Numerical Calculation of Discontinuous Solutions of the Equations of Hydrodynamics,” Matematicheskii Sbornik 47(89), 1959, pp. 271–306.
  • Randall J. LeVeque, Finite Volume Methods for Hyperbolic Problems, Cambridge University Press, 2002, Chs. 12–13.
  • Eleuterio F. Toro, Riemann Solvers and Numerical Methods for Fluid Dynamics, 3rd ed., Springer, 2009, Chs. 5 and 6.
关系图谱8 个相邻概念 · 4 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
分类位置

上位 / 更一般

下位 / 直接特例

类型化关系