这些名字放在一起,很多人的第一反应是把高数下册和物理大地测量学教材的索引抄了一遍。我这两年帮人排查大地水准面解算代码时,见过太多次类似的翻车:拿着全球重力异常格网直接套Stokes积分,出来和已有模型差了快两米;或者把高数里“曲面积分转边界线积分”的Stokes公式,当成大地测量里用重力异常反演扰动位的Stokes积分,结果对不上号还以为是系数写错了。
如果你也正好被这组公式绕晕,那这篇文章就是写给你的。这里没有考证上的长篇大论,只有两件事:先讲清格林公式、高斯公式、Stokes公式在数学上的统一脉络,再讲清从Stokes积分、Hotine积分到Vening-Meinesz积分,它们分别解决哪类地球重力场问题、数据形式是什么、代码里最容易踩哪些坑。适合正在学物理大地测量的学生,也适合做GNSS高程转换、区域大地水准面精化的工程师。
1. 先把三个“高数公式”理顺:它们不是三兄弟,是同一个思想的三个投影
很多人把格林公式、高斯公式、Stokes公式当成三个需要分别背诵的结论,这也没错,考试时确实要分别写。但它们骨子里是同一件事:区域内部的积分,可以用边界的积分来表示。差别只在于“区域”是平面、立体还是曲面,以及被积函数是标量场还是向量场。
1.1 三个公式的字面区别
格林公式最常见的形式是平面闭曲线L和它围成的平面区域D之间建立联系:
- 格林公式:∮L P dx + Q dy = ∬D (∂Q/∂x - ∂P/∂y) dxdy
高斯公式把二维平面推广到三维空间闭区域,把空间闭曲面的通量积分和内部体积分联系起来:
- 高斯公式:∭V ∇·F dV = ∯∂V F·n dS
Stokes公式则是把空间中的有向曲面与其边界闭曲线联系起来:
- 斯托克斯公式:∮∂Σ F·dr = ∬Σ (∇×F)·n dS
从符号上很容易看花眼,但记的时候可以抓一句话:凡是“内部积分”能写成“边界积分”的,都源自微积分基本定理的高维版本。
1.2 用微积分基本定理统一理解
微积分基本定理在一维时说:函数在闭区间上的导数积分,等于两端点的函数值差。
∫ab f'(x) dx = f(b) - f(a)
这里“区间内部”是[a,b],“区间边界”就是两个端点a和b。如果把端点的值看成一种零维边界积分,这句话和格林公式、高斯公式、Stokes公式就完全同构了。格林公式处理的是平面区域内部面积分与闭合曲线积分的关系,相当于二维的“内部-边界”配对;高斯公式处理的是三维体积分与闭合曲面的关系;Stokes公式则是曲面与曲面边界的关系。
我比较推荐的记忆方式是:
| 公式 | 内部一侧 | 边界一侧 | 直观说法 |
|---|---|---|---|
| 格林公式 | 平面区域上的二重积分 | 平面闭曲线线积分 | 场在区域内的“旋转总量”等于沿区域边界的环量 |
| 高斯公式 | 空间区域上对散度的体积分 | 包围该区域的闭合曲面积分 | 场从体内的“净流出量”等于穿出边界的通量 |
| 斯托克斯公式 | 曲面上旋度的面积分 | 曲面边界曲线上的线积分 | 曲面上的“涡旋总量”等于沿曲面边界的环量 |
1.3 为什么这对后面的位场推导这么重要
如果你只把格林公式、高斯公式当作曲线曲面积分的计算工具,那一进入重力场问题就会卡住。因为地球外部重力场满足拉普拉斯方程,真正要解的往往不是某个具体积分,而是“已知边界上的某些观测值,求外部空间中的位场”。这时候三大公式会推广成格林第一恒等式、格林第二恒等式,它们本质上就是对两个场函数做分部积分。
用生活化一点的话说:**边界上的观测数据,是推断整个区域内部场结构的入口。**正因为有“内部积分等于边界积分”这一类关系,我们才敢说知道球面上的重力异常分布,就能反推球外任意位置的扰动位,而不需要真的知道地球内部每一个质量元的位置。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 桥梁在哪里:格林恒等式、边值问题与扰动位T
到了物理大地测量这一段,主角不再叫“位函数V”,而是扰动位T。T是真实地球重力位W和正常重力位U之差:
T = W - U
正常重力场由参考椭球解析给定,所以解算T,本质上就是在解真实地球相对参考椭球的“重力场偏差场”。为什么这篇文章后面那堆积分全都围着T转?因为Stokes积分、Hotine积分、Vening-Meinesz积分实质上都是T的边界积分表达式,只是输入观测量和边界条件不同。
2.1 从万有引力位到调和函数
地球外部没有质量分布,真实重力位W满足拉普拉斯方程;正常重力位U同样满足拉普拉斯方程。两者之差T在地球外部也是拉普拉斯方程的解,是调和函数。调和函数有一个很强的性质:只要完全知道边界上的某类信息,区域内任意点的值就唯一确定了。
所以问题变成:我们应该在球面边界上给什么资料?
可能是T本身,可能是T的法向导数,也可能是T和法向导数的线性组合。这正是数学物理方程里的三类边界条件在地球重力场问题中的具体体现。
2.2 三类典型边值条件与公式对应
在物理大地测量中,最常用的球近似模型是:把大地水准面或参考面近似成一个半径为R的球面,扰动位在该球面外部调和,并在无穷远处趋于零。这时:
第一边值问题(Dirichlet问题)是给定边界上的T,直接求外部T。理论简单,但实际测量拿不到连续的边界T。
第二边值问题(Neumann问题)是给定边界上T的法向导数。对应到重力场,就是给定扰动重力δg。这一类问题的现代工具就是Hotine积分。
第三边值问题也叫混合边值问题或Stokes问题,边界上给定的是T及其法向导数的线性组合。Stokes积分就是这个问题的解,输入量是重力异常Δg。
很多教材会把第三边值条件写成球近似下的线性化形式:
Δg = -∂T/∂r - (2/R)T
其中r方向取径向向上。这个公式里的“-∂T/∂r”和“-(2/R)T”看起来像两个项,实际上分别来自正常重力随高程的变化以及扰动场本身的径向梯度。它和单纯给定T或单纯给定法向导数都不同,所以Stokes问题不能简单套用Dirichlet或Neumann的现成公式,必须单独处理。
2.3 Stokes积分最容易被误解的一点
这里必须把名字问题说清楚:高数里的“Stokes公式”讨论的是曲面积分与边界环路积分的关系,属于向量分析;物理大地测量里的“Stokes积分”是Stokes在1849年左右给出的用全球重力异常求大地水准面高的积分公式。两者都归于G.G. Stokes名下,但不是同一个公式的另一种表述。
甚至在很多中文资料里,“Stokes积分”和“Stokes公式”会混着写,可一旦代入数据就会发现,高数Stokes公式的解算对象是被积向量场,而大地测量Stokes积分更像一个球面卷积滤波算子。同名不同物,是这个领域新人最容易忽视的第一道坎。
3. Stokes积分、Vening-Meinesz积分:一个是大地水准面高,一个是它的坡度分量
这两组积分经常一起出现在教材里,因为它们的数学源头非常接近:一个是把全球重力异常卷积到大地水准面高,另一个是同一类重力异常卷积到垂线偏差。如果已经理解了上一节的边值问题,前面这半句话应该很自然。
3.1 Stokes积分:给全球重力异常找一个调和延拓
Stokes积分写出核心公式是这个样子:
N = R / (4πγ) ∬σ Δg · S(ψ) dσ
其中N是大地水准面高,R是地球平均半径,γ是正常重力值,Δg是球面上的重力异常,S(ψ)是Stokes核函数,ψ是计算点到积分面元之间的球面角距离,σ是整个球面。
Stokes核函数的具体形式要背下来没必要,但你要知道它长什么样:
S(ψ) = csc(ψ/2) - 6·sin(ψ/2) + 1 - 5·cosψ - 3·cosψ·ln
