try ai
科普
编辑
分享
反馈
  • 计算地球物理学

计算地球物理学

SciencePedia玻尔百科
核心要点
  • 计算地球物理学将连续的物理定律转化为离散的数值问题,形成庞大但可解的代数方程组。
  • 物理定律的局部性产生了稀疏矩阵,这一基本性质使得大规模地球建模在计算上变得可行。
  • 地球物理反问题通常是不适定的,需要正则化技术才能从观测数据中获得稳定且有意义的地下图像。
  • 诸如共轭梯度法(Conjugate Gradient)和广义最小残差法(GMRES)等迭代方法,通常通过预条件子增强,对于高效求解模型产生的巨大方程组至关重要。

引言

理解地球的动态内部,从板块运动到地震波传播,是一个巨大的挑战。直接观测是不可能的,这使得我们只能利用数学和计算模型来解释地表测量结果。这就产生了一个关键的知识鸿沟:我们如何将复杂的物理学语言转化为计算机能够理解的形式,以建立可靠的地下图像?本文对这一过程进行了全面的概述。第一章“原理与机制”深入探讨了基本概念,解释了物理定律如何转化为可解的数值系统、矩阵结构的重要性以及处理反问题的策略。随后的章节“应用与跨学科联系”展示了这些原理如何应用于模拟复杂的地质特征,解决地球科学中的悖论,以及应对高性能计算的实际问题。

原理与机制

在我们探索和理解地球的过程中,从地幔的缓慢搅动到地震的剧烈震动,我们都依赖于基本的物理定律。但这些以优美的微积分语言表达的定律,并非计算机可以直接理解的东西。从一个物理原理到一幅精细的地下图像,这段旅程是数学、物理学和计算机科学的完美交响乐。我们现在将要踏上的,正是这段探索构成计算地球物理学基石的核心原理与机制的旅程。

从物理到方程:自然的语言

自然以变化和关系的语言说话,我们已经学会将这种语言转录为偏微分方程(PDE)。这些方程几乎是我们所做一切的起点。以热量在地壳中的流动为例。这是一个复杂的过程。岩石可能在运动,并随之携带热量(平流)。它可能因放射性衰变而自身产生热量。其导热能力甚至可能取决于我们观察的方向(各向异性)。

物理学家通过细致的工作,可以将所有这些效应囊括在一个综合的方程中,该方程描述了任意点 x\boldsymbol{x}x 和时间 ttt 的温度 TTT。这个普适的热方程形式如下: ρcp(∂T∂t+v⋅∇T)=∇⋅(K ∇T)+Q\rho c_p \left( \dfrac{\partial T}{\partial t} + \boldsymbol{v}\cdot\nabla T \right) = \nabla\cdot\big(\mathbf{K}\,\nabla T\big) + Qρcp​(∂t∂T​+v⋅∇T)=∇⋅(K∇T)+Q 在这里,每个符号都有其物理意义:ρ\rhoρ 是密度,cpc_pcp​ 是比热容,v\boldsymbol{v}v 是岩石的速度,K\mathbf{K}K 是热导率张量,QQQ 是任意内部热源。这个方程非常完备,但也相当复杂。

通常,理解的第一步是简化。如果介质是静止的(v=0\boldsymbol{v} = \boldsymbol{0}v=0)呢?如果没有内部热源(Q=0Q=0Q=0)呢?如果材料是简单的,在所有方向上导热性能相同(各向同性,因此 K\mathbf{K}K 变为标量 kkk)并且各处属性均匀(均质)呢?在这些简化但通常合理的假设下,上面那个宏伟的方程可以简化为一种极为简洁的形式: ∂T∂t=α∇2T\frac{\partial T}{\partial t} = \alpha \nabla^2 T∂t∂T​=α∇2T 这就是经典的​​扩散方程​​。常数 α\alphaα 是热扩散率,是材料属性中唯一留下的参数,它告诉我们热量传播的速度。这种从复杂的物理现实出发,将其提炼成一个易于处理的数学模型的过程,是我们这门技艺的第一个基本原则。

从方程到数字:离散化的艺术

我们现在有了一个方程,但计算机不理解导数或连续函数。它理解的是算术:加、减、乘、除。我们的下一个重要任务是将微积分的连续语言翻译成数字的离散语言。这就是​​离散化​​的艺术。

想象一下,在我们研究的地球区域上放置一个网格,或者说​​网格​​(mesh)。我们不再试图在所有地方找到解,而是只尝试在网格的节点上找到解。问题是,如果我们只知道某一点邻近点上的值,我们如何计算该点的导数,比如某个属性的变化率?

答案在于数学中的一个绝妙工具:泰勒级数。通过在邻近点展开函数,我们可以为其导数构建近似值。例如,为了在点 xix_ixi​ 处近似导数 ∂u/∂x\partial u / \partial x∂u/∂x,我们可以使用其邻近点 xi+hx_i+hxi​+h 和 xi−hx_i-hxi​−h 处的值。一个简单的近似是 (u(xi+h)−u(xi−h))/(2h)(u(x_{i}+h) - u(x_{i}-h))/(2h)(u(xi​+h)−u(xi​−h))/(2h)。通过包含更多的邻近点,我们可以设计出越来越精确的公式,其误差会随着网格间距 hhh 的减小而迅速缩小。这就是​​有限差分法​​的精髓。我们在此近似中产生的误差称为​​截断误差​​,我们努力使其尽可能小。

这一步并非没有风险。当我们模拟像地震波传播这样的随时间变化的现象时,我们必须对空间和时间都进行离散化。这就引出了整个计算科学中最重要、最直观的原则之一:​​Courant–Friedrichs–Lewy(CFL)条件​​。在我们的离散世界里,信息传播的速度不能超过每个时间步长一个网格单元。物理世界有其自身的速度极限——光速,或者在我们的情况下,最快的地震波(P波)的速度。CFL条件简单地指出,我们的数值速度极限必须受制于物理速度极限。如果我们选择的时间步长 Δt\Delta tΔt 相对于网格间距 Δx\Delta xΔx 过大,就等于要求一个波在单个计算瞬间跨越多个网格点。模拟将违背因果律,数值会爆发成无意义的、爆炸性的混乱——这是违反基本物理约束的直接后果。

庞大的系统:结构决定一切

在我们将偏微分方程离散化之后,剩下的不是一个单独的方程,而是一个巨大的代数方程组——网格中的每个节点对应一个方程。如果我们有一百万个网格点,我们就会有一百万个方程和一百万个未知数。我们可以将这个系统写成紧凑的矩阵形式: Ax=bA x = bAx=b 在这里,xxx 是一个包含每个网格点上未知值(我们的解)的巨型向量,bbb 是一个代表源项或边界条件的向量,而 AAA 是一个编码了离散化物理——即每个点与其邻居之间关系——的矩阵。

对于一个有一百万个未知数的问题,矩阵 AAA 粗略地看会有一百万乘以一百万个元素——即一万亿个数字!任何计算机都不可能存储它,更不用说处理它了。但在这里,物理学的本质拯救了我们。物理相互作用通常是​​局部的​​。一个点的温度只受其紧邻点的影响,而不受一公里外某个点的影响。这种局部性反映在我们的矩阵 AAA 中。对于任何给定网格点的方程(矩阵的一行),只有对应其紧邻点的系数是非零的。该行中的所有其他元素都将是零。

这样一个主要由零填充的矩阵被称为​​稀疏矩阵​​。这些零并非偶然;它们是​​结构性零​​,是我们离散化的偏微分方程局部性的直接结果。这种稀疏性是一份厚礼。它意味着我们不需要存储 N2N^2N2 个数字,而只需要存储 NNN 的一个小数倍的数字。正是这一基本性质使得对大型复杂地球物理系统进行建模成为可能。稀疏性将一个不可能的问题转化为了一个仅仅是困难的问题。

求解系统:迭代的艺术

我们得到了稀疏系统 Ax=bAx=bAx=b。我们该如何求解它?我们在学校学到的方法,如高斯消元法,被称为直接法。对于地球物理学中的庞大系统,它们太慢了,并且会通过填充零元素来破坏我们矩阵优美的稀疏性。我们需要一种更巧妙的方法:​​迭代法​​。

这个想法既简单又优雅。我们从一个解的猜测值 x0x_0x0​ 开始。它很可能是错的,会留下一个残差 r0=b−Ax0r_0 = b - A x_0r0​=b−Ax0​。迭代法,特别是​​Krylov子空间法​​的天才之处,在于它们如何利用这个残差来系统地改进猜测值。它们通过将矩阵 AAA 反复应用于残差来构建一个特殊的空间,即Krylov子空间:span{r0,Ar0,A2r0,… }\mathrm{span}\{r_0, Ar_0, A^2r_0, \dots\}span{r0​,Ar0​,A2r0​,…}。这个空间包含了关于系统连通性和性质的关键信息。然后,算法在每一步巧妙地在这个不断扩大的子空间内找到最佳的改进解。

其精妙之处在于,正确的方法取决于矩阵 AAA 的特性。

  • 如果 AAA 是对称正定的(这在扩散或势问题中很常见),我们可以使用效率极高的​​共轭梯度(CG)​​法。这就像在一个光滑、完美的碗状山谷中寻找最低点;每一步都保证我们向下走。
  • 如果 AAA 是非对称或不定的(在波传播中很常见),山谷就会变得扭曲。CG方法会迷失方向。我们需要更强大、更稳健的探索者,如​​GMRES​​或​​BiCGSTAB​​。这些方法各有权衡:GMRES非常可靠,但需要存储之前所有步骤的信息,消耗越来越多的内存。BiCGSTAB使用固定量的内存,但其求解路径可能更加不稳定。

对于非常大且困难的问题,即使是这些复杂的迭代方法也可能很慢。收敛速度取决于矩阵 AAA 的​​条件数​​,它是衡量“山谷”扭曲程度的指标。大的条件数意味着收敛缓慢。这就是​​预处理​​思想的用武之地。目标是找到一个矩阵 MMM,即预条件子,使得我们求解一个等价但容易得多的系统,如 M−1Ax=M−1bM^{-1}Ax = M^{-1}bM−1Ax=M−1b。一个好的预条件子就像戴上了一副魔法眼镜,让扭曲的山谷看起来又像一个简单的圆形碗,从而让CG方法能够飞速奔向谷底。

也许所有预条件子中最出色的是​​代数多重网格(AMG)​​。它基于一个简单而深刻的观察:简单的迭代方法(称为平滑器)非常擅长消除误差中的高频、锯齿状分量,但非常不擅长消除低频、平滑的分量。AMG的策略是将难以在细网格上求解的光滑误差,限制到一个更粗的网格上。在粗网格上,这个光滑误差现在看起来是锯齿状和高频的,从而变得容易消除!通过在越来越粗的网格层次上递归地应用这个思想,AMG可以以惊人的效率消除所有误差分量。一个理想的AMG是​​最优​​预条件子,意味着当我们加密网格、增大问题规模时,求解问题所需的迭代次数不会增加。这是科学计算的圣杯。

反问题:洞见未见

到目前为止,我们一直专注于“正演问题”:给定地球的描述,预测我们将测量到什么。但地球物理学的真正核心往往是“反演问题”:给定我们的测量数据,产生这些数据的地球结构是什么?我们想看透地下,绘制出未见世界的地图。

在这里,我们的线性系统有了新的含义。现在方程最好写成: d=Gm+ϵd = G m + \epsilond=Gm+ϵ 在这里,ddd 是我们观测到的​​数据​​(如地震走时),mmm 是我们寻求的未知地球​​模型​​(如地震速度图),GGG 是代表连接模型与数据的物理过程的​​正演算子​​,而 ϵ\epsilonϵ 代表不可避免的测量​​噪声​​和我们物理模型中的误差。我们的目标是找到 mmm。

这项任务充满了风险。大多数地球物理反问题都是​​不适定的​​。这意味着许多不同的模型 mmm 都可以几乎同样好地解释数据,而数据 ddd 中微小、无关紧要的变化可能会导致结果模型 mmm 发生剧烈、戏剧性的变化。在这些条件下,我们如何能建立一个稳定的地下图像?

答案始于严谨的数学表述。事实证明,适定性这个概念本身取决于你如何定义函数空间和测量距离。通过选择正确的数学框架(例如,正确的Sobolev空间),我们有时可以将一个看起来不适定的问题转化为一个适定的问题,此时解存在、唯一,并连续依赖于数据。这不仅仅是一个数学游戏;它为构建稳定的算法提供了坚实的基础。

驯服不适定性的实用工具是​​正则化​​。我们不只是试图拟合数据,而是求解一个修改后的问题,该问题同时试图拟合数据并满足我们对解的某种先验信念——例如,地球的属性应该是相对光滑的。我们引入一个​​正则化参数​​ λ\lambdaλ,它就像一个旋钮,控制着拟合数据和强制光滑性之间的权衡。

一个优美而强大的策略是将反演视为一个发现的过程。我们从一个大的 λ\lambdaλ 开始,更多地相信我们对光滑性的先验信念,而不是数据。这给了我们一个非常稳定但模糊的初始图像。然后,随着反演的进行,我们通过减小 λ\lambdaλ 来慢慢“冷却”系统。这逐渐让更多来自数据的细节进入模型,使图像变得清晰。当我们的模型预测与数据在噪声水平内匹配时,我们停止这个过程。试图更好地拟合数据将意味着拟合噪声本身,从而产生无意义的假象。这种延续策略就像一位艺术家从一个粗略的草图开始,逐步添加越来越精细的细节,在肖像刚刚完成时停下来。

不确定性与现实:我们有多确定?

我们运行了模拟,执行了反演,并生成了一幅令人惊叹的地球内部图像。但是,一幅没有不确定性估计的图像不是一个科学结果;它只是一幅画。我们怎么知道该在多大程度上相信它?

在这里,我们遇到了数值分析中最深刻的思想之一:​​后向误差分析​​。我们不问“我计算出的解与真实解有多接近?”,而是问一个不同的问题:“我计算出的解是哪个略有不同的问题的精确解?”。

假设我们计算出了一个地球模型 xhatx_{\text{hat}}xhat​。它并不完美,所以当我们将其代入正演模型时,它与我们的数据不完全匹配:b−Axhat=rb - A x_{\text{hat}} = rb−Axhat​=r,其中 rrr 是残差。后向误差的观点指出,我们的 xhatx_{\text{hat}}xhat​ 可以被看作是一个扰动问题 (A+ΔA)xhat=b(A + \Delta A) x_{\text{hat}} = b(A+ΔA)xhat​=b 的精确解。扰动的大小 ΔA\Delta AΔA 告诉我们,为了使我们的答案完全正确,我们必须在多大程度上“扭曲”我们的物理模型。

这一个思想将一切联系起来。这个后向扰动 ΔA\Delta AΔA 的大小与我们的残差有关。但是我们最终答案中的误差——前向误差——是这个后向误差被问题的条件数放大的结果。 前向误差≈条件数×后向误差\text{前向误差} \approx \text{条件数} \times \text{后向误差}前向误差≈条件数×后向误差 一个不适定问题就是一个具有巨大条件数的问题。这意味着即使我们的物理模型只有一点点错误(一个微小的 ΔA\Delta AΔA),不适定性也可以将这个微小的误差放大为我们最终地球图像中的巨大不确定性。这揭示了一个基本真理:我们能看清地球内部的程度是有限的,这个限制不是由我们的计算机或算法施加的,而是由物理本身的性质决定的。它为我们所知和所不能知提供了一个谦逊而诚实的评估。这是我们旅程中最后一个,或许也是最重要的原则。

应用与跨学科联系

在经历了计算地球物理学基本原理的旅程之后,我们可能会觉得任务已经完成。我们有了方程、数值方法和算法。但这恰恰是真正冒险的开始!这些原理不是供人欣赏的博物馆展品;它们是一个虚拟实验室——一个为整个行星服务的实验室——中活跃、有生命的工具。有了这些工具,我们可以进行在现实中需要数百万年才能完成的实验,我们可以“看到”地球深处的核心,一个比最近的恒星更遥不可及的地方。现在让我们来探索这些抽象概念如何变为现实,解决实际问题,并将地球物理学与众多其他科学学科联系起来。

数字地球:从物理到网格

第一个也是最根本的挑战是将自然界连续、流动的现实转化为计算机离散、有限的世界。我们如何将像波动方程这样的物理定律,为在硅芯片上运行做好准备?答案是创建网格。我们在研究的地球区域上铺设一个计算网格,就像渔夫的网一样,并在每个结点上求解我们的方程。

但是我们应该使用什么样的网呢?是细网格还是粗网格?这不仅仅是一个选择问题,更是一个深刻的信息原理。为了捕捉某一频率的波,我们的网格点必须足够密集,以“看到”它的波峰和波谷。如果网格对于高频波来说太粗,那么这个波在我们的模拟中将变得不可见,或者更糟的是,它会表现为一个虚假的低频波——这种效应称为混叠。这就导致了一个基本的权衡:为了解析更高的频率和看到更小的细节,我们需要更细的网格。但更细的网格意味着计算量呈指数级增长。一个在三维空间中将分辨率从100米提高到10米的模拟,其计算成本可能会高出一千倍!这个简单的关系,将波速和频率等物理属性与数值网格间距联系起来,是计算科学家必须首先考虑的事情。这是我们虚拟实验室的预算。

当然,地球上并非所有事物都像波一样运动。考虑一下地壳深处一个正在冷却的岩浆房中热量的缓慢渗透。这个过程不是传播,而是扩散。热异常不是以固定的速度行进,而是“扩散开来”。它的影响范围不是随时间线性增长,而是随时间的平方根 ttt 增长。热量传播的特征距离与 αt\sqrt{\alpha t}αt​ 成正比,其中 α\alphaα 是热扩散率。这种 t\sqrt{t}t​ 的行为是随机行走的普遍特征,与描述空气中烟雾扩散或股票市场价格波动的数学模型相同。理解这一点告诉我们如何设计模拟:如果我们想模拟一百万年的地质冷却过程,我们可以精确地计算出我们的计算“盒子”必须有多大,才能容纳缓慢扩散的热量,确保我们实验室的人为边界不会污染结果。

可能性的艺术:模拟地球的复杂性

我们的星球不是一个简单、均匀的方块。它是一幅由裂缝、断层和特性迥异的材料构成的杂乱而美丽的织锦。我们的计算方法必须足够聪明,以处理这种复杂性。

想一想岩石中的裂缝,它是地下水、石油或毁灭性地震破裂的通道。标准的数值方法在描述光滑、连续的场方面表现出色,但在面对急剧断裂时却会遇到困难。为了解决这个问题,我们必须“教会”我们的数学变得不连续。扩展有限元法(XFEM)正是这样做的。它从一个标准的连续模型开始,然后对其进行“丰富”。想象一下在一张桌子上铺上一块完美光滑的丝绸。要模拟一个撕裂,你不会试图拉伸丝绸;你会把它剪开,再加一块新的。XFEM做了类似的事情,在裂缝所在的位置添加特殊的数学函数——比如从0跳到1的亥维赛德阶跃函数。裂缝本身的几何形状可以用一个叫做水平集的绝妙工具来描述,它就像一张平滑的地形图,其中零等高线就是裂缝本身。这张“地图”的梯度直接指向裂缝的另一侧,为我们提供了不连续面的方向。这个强大的思想使我们能够模拟裂缝错综复杂的、分支状的生长,而无需不断地重建整个计算网格,为模拟从水力压裂到火山喷发动力学的各种现象打开了大门。

有时,地球的行为似乎近乎悖论。考虑一下地球地幔非常缓慢的蠕变流动,我们的大陆就漂浮在这条岩石之河上。控制这种斯托克斯流的方程是更一般的流体动力学方程的简化版本。你可能会认为更简单的方程会导致更简单的行为,但你错了。一个被称为斯托克斯悖论的经典问题表明,对于二维流动——对于长的俯冲板片或洋中脊是一个很好的近似——一个物体在无限流体中运动不存在自洽的解。数学告诉我们,物体受到的阻力取决于容器的大小,无论容器壁有多远!这很奇怪。就好像一艘在太平洋中部的潜艇所感受到的阻力取决于到加利福尼亚和日本海岸的距离。对于地球物理学家来说,这是一个深刻的警告:在模拟构造板块的运动时,它所感受到的阻力与整个地幔的大尺度流动密不可分。你无法孤立这个系统。局部通过一种微妙的、对数的方式永远与全局联系在一起。

洞见未见:反问题的世界

到目前为止,我们一直在讨论“正演模拟”:我们建立一个地球模型,用虚拟锤子(如地震)敲击它,然后看看数据会是什么样子。但计算地球物理学最强大的应用可以说是反向的。我们拥有数据——来自全球各地的地震记录——我们想知道,“是什么样的地球结构创造了这些数据?”这就是“反问题”,它是绘制我们脚下未见世界地图的关键。

这是一个规模几乎无法想象的优化问题。一个地球模型可以有数十亿个参数,而我们正在寻找能够最好地解释我们观测结果的那个组合。暴力搜索不仅不切实际;它会比宇宙的年龄还要长。我们需要一种更聪明的搜索方式。这就是拟牛顿法的用武之地。

想象你是一个在广阔、雾气弥漫的山脉中的徒步者,你的目标是找到最低的山谷。你只能感觉到脚下地面的坡度(梯度),并且你记得你上一步的路径。一种拟牛顿法,比如著名的BFGS算法,就是这位徒步者的策略。它利用从上一步到当前位置坡度的变化,来建立一个关于地貌曲率的粗略“心智地图”。这张地图,即真实Hessian矩阵的一个近似,让你能够对山谷的位置做出更智能的猜测。这个过程的核心是一个优美而简单的方程,称为割线条件,它强制要求你的新曲率地图必须与你上一步观察到的一致。这是从经验中学习的数学体现。

但即使有了聪明的方向,另一个实际问题也随之而来:你应该朝那个方向走多远?找到确切的最佳步长意味着要派一个侦察兵去勘测前方整条路径,这成本太高。在计算术语中,每次“勘测”都需要在我们试验的地球模型中进行一次完整的波传播模拟,这是一项巨大的开销。所以,我们妥协。我们使用“非精确线搜索”,这就像徒步者试探性地迈出一步然后检查,“这个地方比我之前的位置低吗?改进足够好吗?”如果足够好,他们就确定下来;如果不好,他们就回溯并尝试一个更短的步长。在找到完美路径和快速前进之间取得平衡,是使这些大规模反问题在计算上变得可行的核心。

拥抱不确定性:从一个答案到多个答案

尽管我们尽力寻找地球的“最佳”模型,但我们必须谦虚地承认一个关键事实:我们的数据是有限且有噪声的。可能不存在唯一的答案。几个不同的地球模型可能同样好地解释数据。忽视这种模糊性就是一种虚假的自信。

这就是地球物理学与统计学领域联系的地方。我们不再寻求一个模型,而是试图描述所有可能的模型族。这是地质统计学的领域。为此,我们需要一种语言来描述地球属性的空间纹理。一个关键概念是平稳性,即假设一个属性(如孔隙度)的统计特征在任何地方都是相同的。但这个概念有一个微妙而重要的变体。“严平稳性”假设所有统计属性——均值、方差、偏度等等——都是均匀的。这是一个非常强的假设,几乎不可能从稀疏的数据中验证。一个更实用、更弱的假设是“二阶平稳性”,它只要求均值是常数,并且任意两点之间的协方差仅取决于它们的分离距离,而不是它们的绝对位置。我们大多数用于统计建模和插值(如克里金法)的工具都建立在这个更温和的基础上。它允许我们生成数千个合理的地球模型,所有模型都尊重我们的数据和统计假设,从而为我们提供了一种量化不确定性并做出更稳健预测的方法。

机器中的幽灵:超级计算的现实

最后,我们必须面对机器本身。我们优雅的数学模型不是在完美数字的柏拉图领域中运行;它们运行在具有有限局限性的物理硬件上。这些局限性不仅仅是烦人的小问题;它们是计算世界的基本特征,可能会产生令人惊讶的后果。

考虑一个向地球深处传播的地震波。它的能量被衰减,返回到地表的信号可能极其微弱。现在,想象这个微小的振幅在计算机上表示。浮点数有一个有限的范围。如果一个数变得太小,小于计算机可以表示的最小值,它可能会被突然设置为零。这称为下溢。一个真实的、携带着来自地球深处重要信息的物理信号,可能会从模拟中消失——不是因为物理或算法的缺陷,而是因为它掉到了硬件的感知下限之下。这可能在一个模拟的许多时间步中逐渐发生,当一个波的振幅被数值阻尼缓慢削弱直到变为零时。

并行计算中一个更令人费解的现实是可复现性问题。问一个数学家,他们会告诉你加法是满足结合律的:(a+b)+c=a+(b+c)(a+b)+c = a+(b+c)(a+b)+c=a+(b+c)。问一台计算机,它会告诉你这是错的。由于每一步的舍入误差,对一长串浮点数求和的顺序很重要。现在,想象一个在拥有数千个处理器的超级计算机上运行的大规模模拟。每个处理器计算一个部分和(比如说,其域内的总能量),然后这些部分和被组合起来。这个最终组合的确切顺序可能会因运行时的微小时间差异而略有不同。结果呢?你可以用完全相同的代码和完全相同的输入运行两次,得到两个略有不同的答案。这不是一个bug!这是系统的一个基本属性。它迫使科学界从“按位确定性”的僵化理想转向一个更细致的概念——“统计一致的可复现性”,我们要求不同的运行结果在一个小的、数学上合理的容差范围内一致。

也许没有什么比时间反转成像技术更能概括这些思想的相互作用了。在这里,我们取一个记录到的波场,并通过计算“让时钟倒转”,将波传播回它们的源头。这是定位地震的强大工具。但这里有一个美丽而危险的陷阱。我们在正向模拟中引入的微小数值误差(截断误差)通常起到一种扩散的作用,温和地阻尼波以保持模拟稳定。但是当我们让时间倒转时,这种扩散变成了反扩散。误差现在会爆炸性地放大波场中最高频率的成分,从而摧毁模拟。在正向时间中是我们的朋友的数值特性,在反向时间中却成了我们的敌人。为了成功,我们必须使用没有这种数值扩散的方案,在稳定性的刀刃上航行,以解开隐藏在波浪中的秘密。

从网格的像素到地幔流动的悖论,从优化的引擎到硬件的幽灵,计算地球物理学是物理学、数学和计算机科学的激动人心的融合。这个领域不断提醒我们,要理解我们的世界,我们不仅要掌握它的物理定律,还要掌握我们用来探索它们的工具的微妙而深刻的性质。