外观
浅水方程里的几个重要物理量
浅水方程里最容易混的,往往不是公式本身,而是几个量各自负责什么。比如:
- 动量方程里为什么有时写 −g∇h,有时写 −g∇η;
- vector-invariant form 里为什么出现 ζ+f;
- potential vorticity 为什么写成 q=(ζ+f)/h,分母是 h,不是 η。
这几个问题其实连在一起。只要把 h,η,ζ,f,q 的角色分清,很多写法看上去就不会再互相打架。
先把符号统一
浅水方程里常见的几个量是:
- h:水深,也就是流体柱厚度;
- b:底地形高度;
- η:自由液面高度;
- u=(u,v):水平速度。
它们满足最基本的几何关系
η=h+b.
也就是说,自由液面高度减去底面高度,得到的就是水柱厚度。
为什么连续性方程用的是 h
连续性方程写成
∂th+∇⋅(hu)=0.
原因很直接:质量守恒追踪的是单位面积上“有多少水”,这个量正是水深 h。所以在浅水方程里,
- h 负责描述水量;
- u 负责描述水平输运。
为什么压力梯度项本质上是 ∇η
在静水近似下,压强满足
p=ρg(η−z).
因此水平压力梯度是
∇p=ρg∇η,
对应的单位质量受力为
−ρ1∇p=−g∇η.
所以动量方程里更准确的说法是:这里出现的是压力梯度项,而它本质上由自由液面高度 η 的梯度决定。真正驱动水平流动的,是自由液面的倾斜,而不是“水深本身”。
于是浅水动量方程可写成
∂tu+(u⋅∇)u+fu⊥=−g∇η.
这里 f 是 Coriolis 参数,u⊥=(−v,u)。
那为什么很多地方又写成 ∇h
因为若底面平坦,即
b=const,
那么
∇η=∇(h+b)=∇h.
所以在平底情况下,把压力梯度项写成
−g∇h
完全没有问题。很多教材、理论推导和数值文章默认的就是这个情形。
但如果底地形变化,那么
∇η=∇h+∇b,
这时就不能把 h 和 η 混为一谈。动量方程中应保留
−g∇(h+b)=−g∇η.
一个最直接的检验是静水平衡:若 η 是常数而 b 有起伏,那么 h=η−b 会变化,∇h 一般不为零,但真实流体应当静止,因为这时
∇η=0.
这也是 well-balanced 格式特别在意的地方。
relative vorticity 和 absolute vorticity
浅水方程的 vector-invariant form 常写成
∂tu+(ζ+f)u⊥+∇(gη+21∣u∣2)=0.
其中
ζ=∇⊥⋅u=∂xv−∂yu
叫作 relative vorticity,也就是相对涡度。它表示流体相对于地球参考系的局部旋转,是流体自身“转出来的”那部分涡度。
而
ζ+f
叫作 absolute vorticity,也就是绝对涡度。它等于流体自身的旋转再加上地球自转带来的背景旋转。换句话说:
- ζ 是流体相对地球的旋转;
- f 是背景行星涡度;
- ζ+f 是相对于惯性系看到的总旋转。
所以在地球流体里,经常真正成组出现的不是 ζ,而是 ζ+f。
为什么 PV 是 q=hζ+f
浅水方程里最重要的量之一是 potential vorticity:
q=hζ+f.
这个式子里,分子是绝对涡度,分母是水柱厚度。它表达的是:
单位厚度上的绝对涡度。
这里分母必须是 h,不是 η,因为 PV 关心的是流体柱的伸长和压缩,而决定流体柱厚薄的量是 h,不是自由液面高度 η。
这一点在有底地形时尤其清楚。即便 η 变化不大,只要 b 在变化,水柱厚度
h=η−b
仍然可以明显改变。PV 要描述的正是这种“柱厚变化和旋转变化之间的耦合”,所以它天然使用 h。
一个直观图像是:若一根流体柱在质量守恒下被拉长,h 变大,那么它的绝对涡度往往会减弱;若被压扁,h 变小,绝对涡度往往会增强。浅水 PV 正是把这种关系压缩成
q=hζ+f.
小结
- h 表示水柱厚度,因此出现在连续性方程和 PV 里;
- η 表示自由液面高度,因此出现在压力梯度项里;
- ζ+f 表示绝对涡度;
- q=(ζ+f)/h 的分母必须是 h,不是 η。
版权所有
版权归属:Guisong Wu