news 2026/7/28 18:19:30

PSDM模型

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
PSDM模型

下面结合PSDM(Pre-Stack Depth Migration,叠前深度偏移)模型,从**走时计算(Travel Time)迁移计算(Migration)**两个角度解释这个程序的计算目的、物理意义以及大概流程。由于你没有贴具体代码,我先按典型 PSDM 程序(类似 FWIY/地震成像程序中的 travel time + migration 模块)讲解。

PSDM 的核心思想是:

已知地下速度模型,通过计算地震波从震源到地下成像点、再返回检波器的传播时间,把地表采集到的地震数据重新放回地下真实位置。

PSDM 一般包含三个关键部分:

  1. 速度模型(Velocity Model)
  2. 走时计算(Travel Time Calculation)
  3. 偏移成像(Migration Imaging)

其中走时是迁移的基础,走时误差会直接导致地下结构位置错误。(J-STAGE)


1. 为什么要计算走时?

地震采集过程:

地面:

Shot S Receiver R * * | | | | ----------------------------------------- 地表 \ / \ / \ / \ / \ / \ / \ / \/ Reflector *

震源发射地震波:

[
S \rightarrow 地下反射点 \rightarrow R
]

仪器记录的是:

[
t_{obs}
]

也就是:

波从震源走到地下,再返回接收点花费的时间。

但是我们真正想知道:

地下哪里发生反射?

所以需要反推:

时间域数据 | | ↓ 空间位置 (x,y,z)

这个反推过程就是迁移。


2. 走时计算的目的

假设地下速度模型:

Velocity Model z ↓ 0m ---------------- v=1500m/s 500m ---------------- v=2500m/s 1000m--------------- v=4000m/s

程序首先计算:

震源到地下任意点的时间

[
\tau_s(x,y,z)
]

例如:

Source * /| / | / | / | ↓ ↓ P(x,y,z)

计算:

[
\tau_s=
\int \frac{ds}{v(s)}
]

即:

沿传播路径:

[
时间=\frac{距离}{速度}
]

同理:

计算接收点到地下点:

[
\tau_r(x,y,z)
]


最终得到:

双程走时

[
T(x,y,z)=\tau_s+\tau_r
]

也就是:

Source * \ \ \ X 成像点 / / / * Receiver T = source到X时间 + X到receiver时间

程序里面通常会生成:

Travel Time Table

类似:

shot001_tt.bin x方向 0 1 2 3 z=0 0 1 2 3 z=1 2 3 4 5 z=2 5 6 7 8 每个位置保存: τ(x,y,z)

后面迁移直接查表。


3. PSDM迁移计算目的

走时计算完成以后:

程序知道:

某个地下点P 对应地震数据中的哪个时间

例如:

地下点:

P *

计算:

[
T_p=2.5s
]

那么:

去地震记录:

Trace time 0s | | 1s | | 2.5s <-------取这里的数据 | | 4s

取出这个振幅:

[
A(t=2.5s)
]

累加到地下点:

[
Image(x,y,z)
]


数学形式:

Kirchhoff PSDM:

[
I(x,y,z)

\sum_{s,r}
W(s,r)
D(s,r,T)
]

含义:

  • (I(x,y,z))

地下成像结果

  • (D(s,r,T))

炮检记录里面对应时间的数据

  • (W)

振幅补偿权重


简单理解:

就是:

大量地表记录 ↓ 按照传播时间 ↓ 重新投影回地下 ↓ 地下图片

4. 一个二维PSD模型计算流程图

程序大概:

输入 地震炮集数据 | | ↓ Velocity Model | | ↓ +----------------+ | Travel Time | | Calculation | +----------------+ | | ↓ Travel Time Table | | ↓ +----------------+ | Migration | | Imaging | +----------------+ | | ↓ Depth Image

5. PSDM里面走时和迁移为什么重要?

(1)确定地下结构位置

没有迁移:

原始地震记录 时间 | | | \\\\\ \\\\ \\\\

反射点被放错位置。

迁移:

真实地下结构 /\ / \

(2)处理复杂地质结构

简单水平层:

PSTM 可以。

但是:

断层 / -----/------ / ---/-------- 盐丘 /\ / \ ___/ \___

速度变化剧烈:

需要 PSDM。

PSDM 使用深度速度模型,因此可以处理横向速度变化。(J-STAGE)


6. 如果对应到 C++/CUDA 程序里面

通常结构类似:

Step 1

读取模型

velocity[ix][iy][iz]

Step 2

计算走时

CPU:

for(z){for(y){for(x){travel_time[x][y][z]=solve_eikonal(velocity);}}}

GPU:

__global__voidcomputeTravelTime(){intix=blockIdx.x*blockDim.x+threadIdx.x;tt[ix]=...}

Step 3

迁移

for(image_point){time=tt_source+tt_receiver;amplitude=seismic_data[time];image[x][y][z]+=amplitude;}

GPU里面:

每个线程负责:

一个地下成像点 thread 0 ---> P0 thread 1 ---> P1 thread 2 ---> P2

7. 和 FWI 的关系

你之前看的 FWIY 代码,其实也是类似思想。

区别:

PSDMFWI
目的成像反演速度
输入地震数据+速度模型地震数据
输出地下图片新的速度模型
核心一次传播+成像正演+梯度优化

关系:

初始速度模型 | ↓ PSDM | ↓ 检查结构 | ↓ FWI更新速度 | ↓ 更准确PSDM

所以这个程序里面:

走时计算 = 找到地下点对应的时间位置

迁移计算 = 把时间域地震能量搬回真实地下位置

PSDM 的最终目标:

利用速度模型和波传播规律,把地表采集的地震波数据转换成地下高分辨率结构图像,为油气勘探、断层解释、储层定位提供依据。(J-STAGE)

如果结合你之前看的FWIY/CUDA kernel()代码,里面的travel time / migration kernel基本可以对应到上面的走时表生成 + Kirchhoff积分成像两部分。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/28 18:16:34

这个简易警报电路能够工作吗?

简 介&#xff1a; 文章&#xff1a;本文分析了一个网上流传的简易警报电路存在的错误&#xff0c;包括三极管类型错误和缺少直流通路等问题。作者对电路进行了修正&#xff0c;使用LTspice进行仿真&#xff0c;左边采用PNP三极管搭建多谐振荡电路&#xff0c;右边使用NPN和PNP…

作者头像 李华
网站建设 2026/7/28 18:13:37

PyQt5——布局管理

Qt Designer提供了四种窗口布局方式&#xff0c;分别是垂直布局&#xff08;Vertical Layout&#xff09;、水平布局&#xff08;Horizontal Layout&#xff09;、栅格布局&#xff08;Grid Layout&#xff09;和表单布局&#xff08;Form Layout&#xff09;垂直布局&#xff…

作者头像 李华
网站建设 2026/7/28 18:11:46

如何快速配置百度网盘批量转存工具:新手必看的完整教程

如何快速配置百度网盘批量转存工具&#xff1a;新手必看的完整教程 【免费下载链接】BaiduPanFilesTransfers 百度网盘批量转存、分享和检测工具 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduPanFilesTransfers 百度网盘批量转存工具BaiduPanFilesTransfers是一款…

作者头像 李华
网站建设 2026/7/28 18:10:10

activiti的25张表的建立

首先创建一个maven项目&#xff0c;然后在pom.xml中添加以下依赖<dependencies><dependency><groupId>org.activiti</groupId><artifactId>activiti-engine</artifactId><version>5.19.0.2</version></dependency><d…

作者头像 李华