Petrel解释二维浅地层数据

Petrel是斯伦贝谢开发的一款地质解释和建模软件,有点像地理信息系统的ArcGIS,主要用于数据分析和展示。它不是用来处理原始数据的,而是集成各种处理后的结果数据进行特征分析和目标拾取。当然,它也能读取原始数据,比如二维地层sgy数据,但是图谱较为粗糙,没有那么好看。

Petrel在地质地层解释行业内算是标杆软件,影响力比较大,用的人非常多,在B站有大量教程视频,它的官网也有很多详细的使用技巧。大部分内容讲的是怎么读入三维地震数据和钻井数据,如何解释地层和断层,如何建模等,而讲二维地震数据的内容比较少。

我们所涉及的地层数据主要浅层的和二维的,因此想看看Petrel能做到什么程度。

1、读入Bathy数据,XY坐标为ArcSenconds(经纬度秒)

(1)新建项目,设置项目的坐标系统,只能设置为投影坐标系统,如果不知道设置成什么投影坐标系统,就用项目所在的UTM Zone。

​编辑​

(2)导入数据,文件类型选择SEG-Y 2D toolbox。

无标题2.jpg

(3)打开Import poststack SEG-Y 2D datasets。

无标题3.jpg

点击Define按钮,弹出Byte location definitions对话框,此时会报一个警告信息,意思就是当前只显示1000个Trace,但是通过改变设置,能加载全部Trace。

点击查看原图

点击左下角的Specify按钮进行设置。总共有3个参数,涉及到Trace header和2D specific两个Tab窗口。在Trace header中,Trace header coordinate unit设置为Arc seconds(经纬度秒),DeadTraces为Set trace live; keep sample value,后者的意思就是加载全部Trace。

无标题5.jpg

在2D specific中,Zero coordinates 设置为Interpolate from neighboring traces。

无标题6.jpg

这三参数设置以后,Byte location definitions对话框的Graph就会显示Trace Header字段包括Line num、SP、CDP、Trace、X Coordinate和YCoordinate等的曲线图。SP和CDP如果不对,可以在File specific settings中重新设置。

点击查看原图

此时,Trace samples、histogram、Seismic、Line locations map窗口分别显示采样数据、振幅直方图、地层图谱、平面位置图。

点击查看原图

点击查看原图

点击查看原图

点击查看原图

(4)指定输入文件的坐标系统,点击Input file CRS的Select按钮。因为输入文件的坐标是经纬度秒,因此,输入文件的坐标系统应为WGS84大地坐标。在第(1)步指定项目坐标系统只能选投影坐标系统,而在这里,坐标系统则可指定为大地坐标系统。这是搞什么鬼?看来,Petrel还是差ArcGIS一着。

无标题12.jpg

最后点击Import poststack SEG-Y 2D datasets窗口的右下角的Run按钮,地层数据就被加载进来了。如果要画地层、断层,在Seismic Interpretation菜单,点击Inert Seismic horizon、Fault,Petrel提供了强大的矢量编辑功能。

点击查看原图

(5)二维地层也可以在3D 窗口中显示,如下图。

点击查看原图

如果你有一个区域的地层测线,那么,就可以形成一个立体地层图。

点击查看原图

同一层的地层数据点就可以生成面。根据面可以生成 true stratigraphic thickness (TST)和 true vertical thickness (TVT)图。

无标题16.jpg

2、读入geospark电火花数据。

如果按照上面的方法读入geosaprk电火花数据,你会发现电火花sgy数据无论如何也不能导入。前面的步骤都是正常的,而且图谱也能预览,但是,一旦点击Run按钮,sgy数据导入不成功,哪怕指定导航文件也不行。我们捣鼓了好几天,尝试各种方法,包括选不同的Seismic文件类型,换其它Petrel版本等,最后都失败了。说明这个问题是Petrel 2018的一个bug。

经过实验,要想成功导入geosaprk数据,我们首先要用geospark后处理软件将经纬度sgy文件转成投影sgy文件,然后在Petrel导入窗口,选择文件类型为SEG-Y seismic data。

无标题17.jpg

电火花sgy数据的图谱显示如下图,这是未处理的原始数据,经过一些简单的滤波操作,就会变成我们通常看到的清晰地层。我们在Petrel中找了好久,没有发现它有任何滤波功能。

点击查看原图

3、小结

与ArcMap一样,Petrel的优势在于成果数据的集成、分析和展绘。对于一般浅地层工程项目,它的作用不大,但是对于大型的浅地层研究项目,它不仅能将收集的各种矢量和栅格数据集成三维地质系统,而且能分析和展示测区的整体地层特征和特殊地质现象,将显著提高了研究报告的质量和深度。

参考文献

1、https://wiki.iodp.tamu.edu/display/LMUG/Importing+Bathy2010+sub-bottom+profile+into+Petrel

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/33499.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Xilinx DDR3学习总结——2、MIG exmaple直接上板

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 Xilinx DDR3学习总结——2、MIG exmaple直接上板查看初始化状态 前言修改内容上板 前言 上一篇,我们生成了一个example,example的测试激励看起来都比…

Vue 3.0中的Treeshaking?

1.treeshaking是什么? Tree shaking 是一种通过清除多余代码方式来优化项目打包体积的技术,专业术语叫 Dead code elimination 简单来讲,就是在保持代码运行结果不变的前提下,去除无用的代码 如果把代码打包比作制作蛋糕&#…

5. 服务发现

当主机较少时,在抓取配置中手动列出它们的IP地址和端口是常见的做法,但不适用于较大规模的集群。尤其不适用使用容器和基于云的实例的动态集群,这些实例经常会变化、创建或销毁的情况。 Prometheus通过使用服务发现解决了这个问题&#xff1…

C# 扩展方法

C# 扩展方法 假设该类是密封的,不能访问代码,或有其他的设计原因使这些方法不能工作,就不得不在另一个类中使用该类的公有可用成员编写一个方法。 假设这个类是密封的: sealed class MyData{double D1;double D2;double D3;publi…

【Mysql】修改definer

修改definer 本文介绍如何修改MySQL中的function、procedure、event、view和trigger的definer 修改function、procedure的definer 首先,我们需要登录MySQL命令行界面,然后执行以下命令: select definer from mysql.proc;这个命令会列出所…

EFLFK——ELK日志分析系统+kafka+filebeat架构(3)

zookeeperkafka分布式消息队列集群的部署 紧接上期,在ELFK的基础上,添加kafka做数据缓冲 附kafka消息队列 nginx服务器配置filebeat收集日志:192.168.116.40,修改配置将采集到的日志转发给kafka; kafka集群&#xff…

(5)所有角色数据分析页面的构建-5

所有角色数据分析页面,包括一个时间轴柱状图、六个散点图、六个柱状图(每个属性角色的生命值/防御力/攻击力的max与min的对比)。 """绘图""" from pyecharts.charts import Timeline from find_type import FindType import pandas …

RN 使用react-navigation写可以滚动的横向导航条(expo项目)

装包: yarn add react-navigation/material-top-tabs react-native-tab-view npx expo install react-native-pager-view import React from react import { View, Text, ScrollView, SafeAreaView } from react-native import { Icon } from ../../../../../compo…

栈和队列详解

目录 栈 栈的概念及结构: 栈的实现: 代码实现: Stack.h stack.c 队列: 概念及结构: 队列的实现: 代码实现: Queue.h Queue.c 拓展: 循环队列(LeetCode题目链接&#xff0…

rust里如何快速实现一个LRU 本地缓存?

LRU是Least Recently Used(最近最少使用)的缩写,是一种常见的缓存淘汰算法。LRU算法的基本思想是,当缓存空间已满时,优先淘汰最近最少使用的数据,以保留最常用的数据。 在计算机系统中,LRU算法…

http历史版本

1,HTTP0.9 最早的http版本,后来才被定义为0.9版本。 这时候通信采用的是纯文本格式; 只支持get请求,且在服务器响应之后就关闭连接; 没有请求头的概念,功能比较简单。 2,HTTP1.0 这个版本增…

C++中new/malloc,delete/free的区别

new和delete是操作符,malloc和free是库函数。 执行new实际上执行了两个操作:1、分配未初始化的内存空间,也就是调用malloc库函数。2、使用对象的构造函数对空间进行初始化,并返回空间的首地址。 如果第一步分配空间出现问题&…

机器学习基础08-回归算法矩阵分析(基于波士顿房价(Boston House Price)数据集)

回归算法通常涉及到使用矩阵来表示数据和模型参数。线性回归是最常见的回归算法之一,它可以用矩阵形式来表示。 考虑一个简单的线性回归模型: y m x b y mx b ymxb,其中 y y y 是因变量, x x x 是自变量, m m m 是…

美团视觉GPU推理服务部署架构优化实战

🌷🍁 博主 libin9iOak带您 Go to New World.✨🍁 🦄 个人主页——libin9iOak的博客🎐 🐳 《面试题大全》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~&#x1f33…

【C++】开源:tinyxml2解析库配置使用

😏★,:.☆( ̄▽ ̄)/$:.★ 😏 这篇文章主要介绍tinyxml2解析库配置使用。 无专精则不能成,无涉猎则不能通。——梁启超 欢迎来到我的博客,一起学习,共同进步。 喜欢的朋友可以关注一下,…

【问题解决】Git命令行常见error及其解决方法

以下是我一段时间没有使用xshell,然后用git命令行遇到的一些系列错误和他们的解决方法 遇到了这个报错: fatal: Not a git repository (or any of the parent directories): .git 我查阅一些博客和资料,可以解决的方式: git in…

Linux单进程、单线程调试命令

l //显示main函数所在的文件的源代码list 文件名:num //显示filename文件num行上下的源代码b 行号 //给指定行添加断点b 函数名 //给指点函数的第一有效行添加一个断点info break //显示断点信息delete 断点号 //删除指定断点disable 断点号 //将断点设定为无效的,不…

冒泡排序 简单选择排序 插入排序 快速排序

bubblesort 两个for循环&#xff0c;从最右端开始一个一个逐渐有序 #include <stdio.h> #include <string.h> #include <stdlib.h>void bubble(int *arr, int len); int main(int argc, char *argv[]) {int arr[] {1, 2, 3, 4, 5, 6, 7};int len sizeof(…

学习Linux,要把握哪些重点?

不知道有没有想学习Linux&#xff0c;但又把握不住学习重点&#xff0c;找不到合适的学习方法的小伙伴&#xff0c;反正我刚开始学习Linux时就像无头苍蝇似的“乱撞”&#xff0c;没有把握住学习重点&#xff0c;不知道怎么去学&#xff0c;差点要放弃了&#xff0c;还好在慢慢…

栈和队列详解(1)

目录 一、什么是栈&#xff1f; 二、创建一个我们自己的栈 1.前置准备 1.1需要的三个文件 1.2结构体的创建和头文件的引用 2.接口的实现 2.1初始化栈结构体 2.2尾插(压栈) 2.3栈存放的元素个数和判断栈是否为空 2.4获取栈顶元素 2.5出栈 2.6摧毁栈 2.7测试接口 三、…