Landmark 培训实战:OpenWorks 数据管理、SeisWorks 解释与 ZmapPlus 成图全流程
2026/9/19 18:06:00 网站建设 项目流程

简介:这份资源是Landmark软件培训操作手册的详解版文档,面向石油地质、地球物理领域的初学者与在职技术人员,帮助其系统掌握Landmark软件在地震解释与测井资料处理中的完整操作流程。压缩包内仅含1个doc文件,约7.88MB,内容按数据加载、常规解释流程、合成记录制作三大模块编排,目录层级清晰,便于按需检索。手册围绕GeoDataLoading、SeisWorks、TDQ、ZmapPlus、Syntool等核心组件展开,涵盖建立投影系统与OpenWorks数据库、加载钻井平面位置与地质分层、时深转换与速度模型构建、层位管理、地质绘图以及子波提取、应用Checkshot等具体环节,并配有操作截图与格式文件定义说明。目前已有98人学习下载,适合需要对照实操步骤、查漏补缺或作为培训参考的地质解释人员使用。

1. 从一份“操作手册”说起:Landmark 培训到底在训什么

很多刚接触 Landmark 的工程师,第一次拿到培训资料时都会愣一下:明明叫“操作手册”,翻开却像一套地震解释与地质建模的联合工作流。原因在于 Landmark 从来不是单一软件,而是 OpenWorks 数据底座加上 SeisWorks、ZmapPlus、TDQ 等一整套模块的组合。培训真正要解决的,不是“点哪个按钮”,而是让解释人员理解数据在 OpenWorks 项目里怎么流转、在 SeisWorks 里怎么解释、在 ZmapPlus 里怎么成图、在 TDQ 里怎么质控。

这份手册面向三类人:刚入职的地震解释新手、从其他解释平台迁移过来的熟手、以及需要维护项目数据的 OpenWorks 管理员。新手关心的是“第一步建什么项目”,熟手关心的是“快捷键和批量操作能不能复刻”,管理员关心的是“坐标系、投影和权限怎么不出错”。把这三条线理顺,手册才不是一堆截图,而是一条能复现的工作流。

2. OpenWorks 项目与数据加载:培训里最容易翻车的第一关

2.1 OpenWorks 项目结构为什么必须先讲清楚

OpenWorks 是 Landmark 的解释数据仓库,所有 SeisWorks 解释成果、ZmapPlus 网格、井数据都挂在同一个项目下。培训里如果跳过项目结构直接讲解释,后面一定会出现“解释成果找不到”“井位对不上”的问题。一个标准项目通常包含 Coordinate Reference System(CRS)、Survey、Well、Interpretation 几个层级,CRS 一旦建错,后面所有空间数据都会偏移。

常见做法是:先确认工区用的投影和基准面,再建项目,最后加载数据。我一般会要求学员在加载前用一个小样本测一遍坐标,确认无误再批量导入。这一步多花十分钟,能省掉后面几天的返工。

2.2 用命令行检查 OpenWorks 项目环境

在动手加载前,先确认 OpenWorks 环境变量和项目路径是否正确。下面这段是常见的检查脚本,用于确认当前会话指向的项目和 CRS 配置。

# 查看 OpenWorks 相关环境变量,确认项目根目录与版本 env | grep -i openworks # 列出当前项目下的 survey 目录,确认工区是否已建立 ls -l $OPENWORKS_PROJECT/survey # 检查 CRS 配置文件是否存在,避免加载时投影缺失 cat $OPENWORKS_PROJECT/crs/project_crs.txt

逻辑说明:第一行过滤出 OpenWorks 相关变量,确认会话没有指向旧项目;第二行列出 survey 目录,确认工区结构完整;第三行读取 CRS 配置,确认投影参数存在。参数上,$OPENWORKS_PROJECT是项目根路径,不同站点命名可能不同,常见的是OW_PROJECTOPENWORKS_HOME,以实际环境为准。如果第三行报文件不存在,说明项目建的时候没写入 CRS,需要回到项目创建步骤补。

2.3 地震与井数据加载的关键参数

数据加载是培训里操作最密集的部分。地震数据一般走 SEG-Y 导入,井数据走 well header 加 well log 两条线。下面这张表是加载时最常调的参数,培训里建议逐项对照。

参数作用常见取值出错后果
CRS / 投影定义空间参考按工区实际井震错位
Sample Interval采样率2ms / 4ms道集拉伸
Datum / Replacement Velocity基准面校正按静校正成果深度域偏移
Well UWI井唯一标识按井号规范井重复或丢失
Log Curve Name曲线命名GR / DT / RHOB曲线对不上

加载完成后,务必在 SeisWorks 里叠一张井位图做目视检查。培训中我见过太多“参数填了但没验证”的案例,最后在解释阶段才发现井震差了几百米。

提示:SEG-Y 的字节头(EBCDIC 或 ASCII)和道头格式在不同采集系统里差异很大,导入前先用文本工具看一眼头段,比事后猜要快。

3. SeisWorks 地震解释:从剖面到断层的标准动作

3.1 SeisWorks 解释前的显示配置

SeisWorks 是 Landmark 的地震解释主模块,培训里大部分时间花在这里。开始解释前,先配好显示:色标、增益、道间距、垂直放大。这些设置直接影响解释质量,尤其是弱反射区。常见做法是先用默认色标扫一遍,再针对目标层调整增益,避免把噪声当成同相轴。

显示配置里有一个容易被忽略的点:垂直放大(Vertical Exaggeration)。放大过大时断层看起来很明显,但实际倾角会被扭曲。培训里建议在解释断层时把垂直放大调回 1:1,成图时再按需要放大。

3.2 用 TDQ 做解释质量控制的批量检查

TDQ 是 Landmark 里做解释质控的模块,培训中常被跳过,但它是保证成果可靠的关键。TDQ 可以批量检查层位交叉、断层与层位矛盾、解释密度不足等问题。下面这段是常见的 TDQ 检查流程示意。

# 伪代码示意:调用 TDQ 检查层位与断层的拓扑一致性 import tdq_api project = tdq_api.open_project("/data/ow_project") horizons = project.list_horizons(["H1", "H2", "H3"]) faults = project.list_faults(["F1", "F2"]) # 检查层位之间是否交叉 crossings = tdq_api.check_horizon_crossing(horizons) for c in crossings: print(f"层位交叉: {c.horizon_a} vs {c.horizon_b} at {c.location}") # 检查断层与层位的接触关系是否合理 contacts = tdq_api.check_fault_horizon_contact(faults, horizons) for ct in contacts: if ct.status != "OK": print(f"异常接触: {ct.fault} - {ct.horizon} -> {ct.status}")

逻辑说明:先打开项目并列出待检查的层位和断层,再分别做层位交叉检查和断层-层位接触检查。参数上,list_horizons传入层位名列表,check_horizon_crossing返回交叉位置,check_fault_horizon_contact返回接触状态。实际使用时,TDQ 的接口名以站点版本为准,这里展示的是调用逻辑。检查结果里status != "OK"的条目需要人工复核,常见原因是解释时跳过了断层或层位追踪串层。

3.3 断层解释的常见坑与修正

断层解释是 SeisWorks 里最考验经验的部分。培训里新手最容易犯的错是“断层线画得太随意”,导致后面成图时断层多边形无法闭合。常见做法是:先在地震剖面上标出断层的主要断点,再用断层多边形工具连接,最后用 TDQ 检查断层与层位的接触关系。

另一个坑是断层命名。不同解释人员用不同命名规则,合并成果时会出现同一断层多个名字。培训里建议在项目初期就定好断层命名规范,比如F_区域_序号,并在 OpenWorks 里统一维护。

注意:断层解释完成后不要急着成图,先在 SeisWorks 里做一次 3D 可视化检查,很多在 2D 剖面上看不出的矛盾在 3D 视图里一眼就能发现。

4. ZmapPlus 成图与网格化:把解释成果变成可交付图件

4.1 ZmapPlus 网格化的参数选择

ZmapPlus 负责把 SeisWorks 的层位解释点插值成网格,再生成等值线图。网格化的核心参数是网格间距和插值算法。网格间距太大会丢失细节,太小会产生大量伪构造。常见做法是取解释点平均间距的 1/2 到 1/3 作为网格间距,插值算法优先用收敛速度快的,再用平滑做一次修饰。

下面这张表是 ZmapPlus 网格化时最常调的参数。

参数作用建议取值影响
Grid Interval网格间距解释点间距的 1/2~1/3细节与噪声
Interpolation插值算法按数据密度选收敛与平滑
Smoothing平滑次数1~3 次伪构造抑制
Extrapolation外推范围不超过数据边界 1~2 个网格边界失真
Contour Interval等值线间隔按图件比例可读性

网格化完成后,一定要做一次残差检查,看插值面与原始解释点的偏差是否在合理范围。偏差过大说明插值参数需要调整。

4.2 用脚本批量导出 ZmapPlus 图件

培训里经常需要把多个层位的图件批量导出,手工操作效率低。下面这段是常见的批量导出思路。

# 批量导出 ZmapPlus 网格为等值线图 for horizon in H1 H2 H3; do zmap -project /data/ow_project \ -horizon $horizon \ -grid_interval 25 \ -smooth 2 \ -export /output/${horizon}_contour.cgm echo "导出完成: $horizon" done

逻辑说明:循环遍历层位列表,对每个层位调用 ZmapPlus 的导出命令。参数上,-grid_interval控制网格间距,-smooth控制平滑次数,-export指定输出路径和格式。实际命令名和参数以站点版本为准,这里展示的是批量化的组织方式。导出后建议抽查一两张图,确认等值线没有异常闭合或断裂。

4.3 图件交付前的检查清单

图件交付前,培训里要求逐项检查:坐标系是否标注、等值线间隔是否合理、井位是否叠加、断层多边形是否闭合、图例是否完整。这几项里最容易漏的是坐标系标注,很多图件看起来没问题,但缺少投影信息,后续无法和其他数据对齐。

提示:ZmapPlus 导出的图件格式在不同版本里支持情况不同,交付前先确认接收方需要的格式,避免导出后无法打开。

5. 培训落地:把手册变成可复用的检查流程

5.1 用检查表把培训内容固化下来

培训结束后,学员回到岗位最容易忘的是操作顺序。常见做法是把整个流程做成一张检查表,按 OpenWorks 建项目、数据加载、SeisWorks 解释、TDQ 质控、ZmapPlus 成图五个阶段列出关键检查项。每个检查项写清楚“做什么、看什么、错了怎么办”,比单纯记步骤更有效。

检查表里我一般会加一列“常见错误”,比如“CRS 未确认就加载”“断层命名不统一”“网格间距凭感觉设”。这一列是培训里最有价值的部分,因为它是从实际返工里总结出来的。

5.2 用 TDQ 做交付前的最终验证

交付前用 TDQ 跑一遍完整检查,是培训里反复强调的动作。TDQ 能查出的问题包括层位交叉、断层矛盾、解释密度不足、网格与解释点偏差过大。下面这段是最终验证的调用示意。

# 交付前最终验证:层位、断层、网格三项联合检查 import tdq_api project = tdq_api.open_project("/data/ow_project") report = tdq_api.final_check( horizons=["H1", "H2", "H3"], faults=["F1", "F2"], grids=["H1_grid", "H2_grid"], density_threshold=0.6, # 解释密度下限 residual_threshold=5.0 # 网格残差上限(米) ) for item in report.items: if item.level in ("ERROR", "WARN"): print(f"[{item.level}] {item.message} -> {item.suggestion}")

逻辑说明:调用final_check一次性传入层位、断层和网格,返回检查报告。参数上,density_threshold控制解释密度下限,低于该值会报警;residual_threshold控制网格与解释点的残差上限,超过则说明插值需要调整。报告里ERROR级别必须处理,WARN级别需要人工判断。实际接口以站点版本为准,这里展示的是验证逻辑。

5.3 培训后如何持续复现这套流程

手册的价值不在于读一遍,而在于能反复复现。我一般建议学员在培训后一个月内独立走一遍完整流程,从建项目到出图,中间不查手册,只在卡住时回看。走完之后把卡住的点补进检查表,这样检查表会越来越贴合实际工区。

另一个技巧是把常用操作做成脚本或模板,比如数据加载的参数模板、ZmapPlus 的导出脚本、TDQ 的检查配置。下次遇到同类工区,直接改参数就能用,比重新配一遍快得多。培训的终点不是记住按钮,而是形成一套自己能维护的流程。

本文还有配套的精品资源,点击获取

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询