05_GemPy三维地质建模工具包

内容摘要: 地质建模是在已知的地质和地球物理解释基础上,合理运用地质学方法,综合分析通过定量化的方法实现数字化的地质模型构建。通常可分为缺定性建模和随机性建模两大类。地球物理反演虽然具有多解性,这无法避免,但通过与地质建模工具相结合,在已有认识基础上开展三维反演,来提高反演结果的可解释性,这条路是值得深入研究的。

1、认识GemPy

GemPy是一套开源的三维地质建模工具包,使用python语言编写。Github的项目地址是https://github.com/cgre-aachen/gempy

最新版本2.0.0,官方的网站地址是https://www.gempy.org/,该项目迭代很快,目前还在快速发展之中,有时候网上的一些例子可能接口变化,会出现运行错误

该工具包具备创建复杂地质模型的能力,可以实现层序特征和结构特征的地质模型构建任务,例如:背斜、向斜类的褶皱构造、考虑相互接触关系的复杂断层和各种不整和的复杂模型。下图是该软件的典型建模结果。

图1 GemPy生成的三维模型

2、用法简介

首先,肯定就是安装,在python虚拟环境下运行

$ pip install gempy

在使用Gempy过程中,大家只要掌握:如何计算模型、修改模型和在二维视图及三维视图中查看模型,这些基本过程就可以。对于主要的函数如何使用,建议通过笔记来帮助记忆。

地质建模核心技术还是三维空间插值算法,Gempy的核心支撑就是kriging和co-kriging等算法,可以在地表、剖面和定点的一些有限地质资料情况下,通过三维空间差值算法,实现最优地质概念三维模型的建立,模型可以你和剖面解释结果,层序地层学结果等。

地表的地质图/露头信息,概要地层划分,地质剖面解释,钻孔资料,断层系统的划分是实现这些建模的基础。要先整理好这些数据才能顺利完成建模过程。

第一个程序

步骤1:读入数据

import gempy as gp
#读入数据
geo_data = gp.create_data(extent = [0,1000,0,1000,0,1000], 
                          resolution = [50, 50, 50],
                          path_o = 'model1_orientations.csv',
                          path_i = 'model1_surface_points.csv')
gp.map_series_to_surfaces(geo_data, {"Strat_Series": ('rock2','rock1'),"Basement_Series":('basement')})

读入数据后可以检查一下正确性,函数为:plot.plot_data

gp.plot.plot_data(geo_data, direction='y')
图2 读入数据画图

步骤2:计算模型

interp_data = gp.set_interpolation_data(geo_data, compile_theano=True,
                                        theano_optimizer='fast_compile')
#计算模型,这块有点慢
sol = gp.compute_model(geo_data)

步骤3:查看结果

gp.plot.plot_section(geo_data, cell_number=25,
                         direction='x', show_data=True)

查看剖面模型结果的函数为:plot.plot_section,效果如下:

图3 绘制模型剖面

还可以修改参数后,再重新画图

gp.plot.plot_section(geo_data, cell_number=25,
                    direction='y', show_data=True)

大家如果手头没有数据,可以在我们团队的数据仓库下载
https://gitee.com/cea2020/geodataset

在geodataset的gempy目录下,可以找到更多测试用的CSV格式数据

下面对地球物理专业的小盆友补以下几个地质概念:

不整合与侵入岩。不整合是一种受到侵蚀的地质事件,由于没有受到沉积作用,但是还需要正确地知道其地质形成年代。上面的Series就需要被不整合分开。侵入岩是一种典型的跨地层切割方式。他们具有侵入和侵蚀加之后沉积之间的拓扑相似性。

理解各种地层之间的关系是使用该软件进行地质建模和解释的基础。这个综合例子就展示了三套地层体系。

有时候,在先后沉积的地层之间缺失了某一时期的地层,造成上、下地层时代的不连续。上、下地层之间的这种接触关系称为不整合接触(nonconformable contact)。不整合接触的上、下地层之间隔着一个大陆剥蚀面,这个面就叫不整合面。

3、注意事项

(1)第三方依赖

PyMC3:这个包提供了概率编程框架,使用Theano通过变分推理进行梯度计算,并使用了C实现加速运算,Gempy赖它实现高级随机性建模。PyMC3包很复杂,安装过程中,可能会出现本地C语言环境方面的错误提示。

Theano:这个包可以让用户去定义,优化,计算数学表达式,特别是numpy等多维数组。依赖它可以实现模型计算加速。也是与Caffe,Tensorflow齐名的包,但是现在遗憾的是该包已经不在提供升级,作者放弃了维护,如果是新项目建议选择其它替代方案吧

(2)一些概念

在使用软件过程中,注意Formations、Pile这两个最基本概念的定义。其中Formation可以理解为地层的概念,一共模型中反映出那些地层都需要事先在这里定义出来,并给出合适的颜色区分;

Pile的概念可以理解为这些地层的组合关系,Pile把这些地层的关系定义出来,如那些地层是什么年代的,并且给出地层之间的关系,共分两种Onlap,Erode;然后还要给出建模的参考面:Top或Bottom。

这两步做完后,就是建立Section的过程,因为该软件的建模过程主要参考剖面地质解释和钻孔资料等数据,最终目的就是能让三维地质模型结果与各种观测资料相拟合。

一句话结语:GemPy是基于Python语言的开源软件,与商业软件3D GeoModeller的功能相似,融入了基本的构造地质学概念,可以实现多个地质体之间的拓扑关系建模,适合与反演方法研究相互配合,提高反演效果。

参考文献

[1] Varga M., Schaaf A., Wellmann F., 2019. GemPy 1.0: open-source stochastic geological modeling and inversion, Geoscientific Model Development, 12, 1-32

[2] Calcagno, P., Chiles J.P., Courrioux, G., Guillen, A., 2008, Geological modelling from field data and geological knowledge Part I. Modelling method coupling 3D potential-field interpolation and geological rules, Physics of the Earth and Planetary Interiors, 171, 147-157.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,233评论 6 495
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,357评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,831评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,313评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,417评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,470评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,482评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,265评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,708评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,997评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,176评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,827评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,503评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,150评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,391评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,034评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,063评论 2 352

推荐阅读更多精彩内容