一种基于三维观测系统排列片数据分割的正演模拟方法

文档序号:6229059阅读:171来源:国知局
一种基于三维观测系统排列片数据分割的正演模拟方法
【专利摘要】本发明公开了一种基于三维观测系统排列片数据分割的正演模拟方法,特征是在各节点上进行排列片的放炮和数据接收;首先设计模型及三维观测系统,然后在主节点传送束线号和排列片号,其他节点接收到束线号和排列片号后,先调用模型数据切割函数得到该排列片所对应的模型数据,再调用三维有限差分正演函数,进行波场计算,在该函数内加入炮排及炮点号的循环以实现单个排列片内多炮或多炮线的正演。本发明通过基于排列片的数据分割策略,实现了模型三维正演模拟的并行计算方法,较传统的炮记录并行方式,可大大提高基于三维观测系统模拟的计算效率,经初步验证切实可行。
【专利说明】一种基于三维观测系统排列片数据分割的正演模拟方法

【技术领域】
[0001]本发明属于油气勘探地震数值正演模拟领域,是一种高效的基于三维观测系统排列片数据分割的正演模拟方法。

【背景技术】
[0002]二维溶洞模型的数值正演模拟方法已有很多学者做过相关研究。如闵小刚等(2006年)在非均匀介质条件下,导出二维弹性波波动方程交错网格有限差分格式,并进行了塔河油田缝洞模型的正演模拟计算;董良国等(2010年)采用空间网格大小和时间步长均可任意变化的高阶有限差分地震波传播数值模拟方法,对不同大小和埋深的溶洞系列模型进行了不同主频的地震波数值模拟;刘春园等(2010年)利用随机介质建模技术,设计并建立了一系列碳酸盐岩储层规则孔洞和随机孔洞模型,并应用变网格有限差分法对地震波在孔洞模型中的传播进行了正演计算。另外,撒利明、姚逢昌、狄帮让、姚姚(2010年)较系统地研究了缝洞型储层地震识别理论与方法,撰写了专著,但其研究以物理模型模拟为主。
[0003]总的来看,前人的研究以二维数值模拟为主,三维正演数值模拟由于数据量大、计算量大、并行环境要求高等多种因素,还很少有人涉足。至于根据三维观测系统特点,模拟实际野外地震资料采集过程,按照排列片进行数据分割,并借助MPI大数组传递的高效、实用并行方法,目前国内外尚未有相关研究报道。随着三维高精度地震勘探的推进,根据储层特点进行灵活多样的三维正演数值模拟,优化采集与处理方案,节约勘探成本,提高地震勘探的性价比,三维数值模拟将发挥实际地震数据不可替代的指导性作用。
[0004]对地震波场进行数值模拟有着十分广泛的应用,它可以很好地研究地震波传播的运动学和动力学特征。数值模拟技术几乎贯穿整个物探工作始终,包括观测系统优化设计、反演和解释结果检验,等等。现今,三维高精度地震勘探已是地震勘探的主要发展方向,它的特点是道距小,施工密度大,采集成本高。如果施工前,先根据储层的特点进行数值模拟,研究出储层特征对采集参数的实际要求(如道距、覆盖次数、排列长度等),进而对观测系统和资料处理进行优化设计,就可以提高勘探效率,大大节约生产成本。三维数值模拟很重要,但实现起来很困难,主要是数据量大、计算量大,一次施工要成千上万炮,每炮要成千上万道,每道还有几千个数据点。单台计算机,因为模型数据量大无法实现。多节点计算机,如果是简单地按炮并行,也无法模拟实际生产过程。数据输入输出既不易管理,也极耗时。所以,有必要根据地震采集的特点,研发出基于排列片数据分割并行的三维建模技术,以提高计算效率。


【发明内容】

[0005]本发明的任务在于提供一种基于三维观测系统排列片数据分割的正演模拟方法;其是在基于波动方程单炮三维高阶交错网格有限差分正演模拟的基础上研发出的,是一种基于排列片数据分割的三维MPI并行正演模拟方法。
[0006]其技术解决方案是:
[0007]—种基于三维观测系统排列片数据分割的正演模拟方法,在各节点上进行排列片的放炮和数据接收;首先设计模型及三维观测系统,然后在主节点传送束线号和排列片号,其他节点接收到束线号和排列片号后,先调用模型数据切割函数得到该排列片所对应的模型数据,再调用三维有限差分正演函数,进行波场计算,在该函数内加入炮排及炮点号的循环以实现单个排列片内多炮或多炮线的正演。
[0008]上述基于三维观测系统排列片数据分割的正演模拟方法,还包括如下具体步骤:
[0009]a设计模型时,应根据实际地质问题,设计地质体,地质体包括地层界面、断层或溶洞、裂缝,并设置这些地质体的速度,建立起对应的三维速度模型;进一步地,对于一些特殊地质问题还可以进一步设计对应的密度数据体;
[0010]b设计三维观测系统,确定参数,参数包括接收线数、道间距、炮线数、炮点数、炮检距、纵向及横向滚动次数,并根据这些参数确定单个排列片数据和整个正演模型数据的大小;
[0011]C调用MPI_Init并行语句启动MPI,形成通信集MPI_Comm_World,调用MPI_Comm_size和MPI_Comm_rank获取进程总数和进程序号;
[0012]d读取参数文件,包括模型文件名、单个排列片大小、网格大小、第一炮点位置、采样点、采样间隔、炮线数、炮点数、束线号、炮排号、道距、炮距、接收线距、炮线距与束间距;
[0013]e在进程号为O的节点上发送束线号、炮排号,在其他进程号的节点上接收束线号、炮排号,调用数据切割子程序,得到该节点上正演的排列片的模型数据;
[0014]f调用单个排列片的正演子程序,通过炮线号和炮点号的循环确定炮点位置,施加震源,完成单个排列片内所有炮点的正演;
[0015]g确定采样点数,进行时间循环,做单炮的波场正演计算,各进程输出信息,信息包括炮记录与波场快照;
[0016]h判断单炮时间循环是否结束,若结束输出炮记录,若未结束继续执行步骤g,完成单炮的计算;
[0017]i判断炮点循环、炮线循环是否结束,若未结束继续执行步骤f,进行单个排列片内的炮点炮线循环,做下一炮的计算,若结束执行步骤j ;
[0018]j调用MPI_Finalize退出MPI,结束程序。
[0019]上述步骤a中,在建模时,先按排列片进行模型速度体数据的分割,切割后的速度输入数据体(VPO)和输出的炮记录数据体(PR0FILE3D),采用数组传送;数组传送采用的子程序是:
[0020]SUBROUTINE M0DEL_0NE_PATCH (VPO, PR0FILE3D, LSL, LS, SXO, SYO, SZ, VX, VY, &IC, ISG, VZ, PX, PY, PZ, P, WT, NX, NY, NZ, DX, DY, DZ, NT, PML, DT, NWT, NSL, &F0, NS, VP)
[0021]其中VPO,PR0FILE3D是要传送的三维数据,其他为计算参数和中间数组。
[0022]本发明具有以下有益技术效果:
[0023]本发明通过基于排列片的数据分割策略,实现了模型三维正演模拟的并行计算方法,较传统的炮记录并行方式,可大大提高基于三维观测系统模拟的计算效率,经初步验证切实可行。

【专利附图】

【附图说明】
[0024]下面结合附图与【具体实施方式】对本发明作更进一步的说明:
[0025]图1为说明本发明所引入的某工区三维观测系统示意图。
[0026]图2为说明本发明所引入的某工区三维采集施工示意图。
[0027]图3为本发明中的一种按排列片的数据分割策略示意图。
[0028]图4为本发明一种实施方式的流程示意图。
[0029]图5为说明本发明所引入的一种三维溶洞模型示意图。
[0030]图6为说明本发明所引入的某工区满覆盖次数分布范围图。
[0031]图7为本发明的一种正演模拟结果图,示出的是第3束线第90炮炮记录。
[0032]图8为本发明的一种正演模拟结果图,示出的是第7束线第90炮炮记录。
[0033]图9为本发明所得的一种三维偏移结果图。

【具体实施方式】
[0034]一种基于三维观测系统排列片数据分割的正演模拟方法,在各节点上进行排列片的放炮和数据接收;首先设计模型及三维观测系统,然后在主节点传送束线号和排列片号,其他节点接收到束线号和排列片号后,先调用模型数据切割函数得到该排列片所对应的模型数据,再调用三维有限差分正演函数,进行波场计算,在该函数内加入炮排及炮点号的循环以实现单个排列片内多炮或多炮线的正演。
[0035]本发明的基本原理是:
[0036]三维正演模拟时,从非均匀各向同性介质三维波动方程出发,采用应用比较广泛的带PML吸收边界条件的交错网格高阶有限差分格式,这样可有效压制数值频散,具有较高的模拟精度和稳定性,其原理在此不作赘述。
[0037]图1所示的是一种三维观测系统,设有NSL个炮排(图中示意给出了两个炮排),每个炮排有NS个炮点;接收排列个数为NRL,每个排列接收点为NR道。地震资料三维采集按束线进行施工,每束线按排列面进行滚动,从而实现对全区资料的采集。采集施工示意图见图2,共NC束线,NSG个滚动炮排。
[0038]根据实际资料采集方式,每个排列面要放很多炮,数值模拟时,不宜按炮并行,因为排列片内炮数很多,会增加模型速度数据和炮集数据传输的次数,大大影响计算效率。为此采用基于排列片数据分割的并行数值模拟计算策略。
[0039]设IC为束线号,ISG为炮排滚动号,则排列片序号可记为(IC-1) *NSG+ISG。为此,我们可以按排列片进行数据分割,共分出NC*NSG个排列面。这些排列片的数据,可以将它们均衡分配给N个计算节点,结合图3。而排列及接收点波场则由正演波场抽取,排列片内所有炮在一个节点内计算完。每个排列片,分割输入模型数据和输出炮集数据只传送一次。
[0040]结合图4,上述基于三维观测系统排列片数据分割的正演模拟方法,包括如下具体步骤:
[0041]a设计模型设计时,应根据实际地质问题,设计地层界面、断层或溶洞、裂缝等地质体,并设置这些地质体的速度,建立起对应的三维速度模型;进一步地,对于一些特殊地质问题还可以进一步设计对应的密度数据体;
[0042]b设计三维观测系统,确定接收线数、道间距、炮线数、炮点数、炮检距、纵向及横向滚动次数等参数,并根据这些参数确定单个排列片数据和整个正演模型数据的大小;
[0043]c调用MPI_Init并行语句启动MPI,形成通信集MPI_Comm_World,调用MPI_Comm_size和MPI_Comm_rank获取进程总数和进程序号;
[0044]d读取参数文件,包括模型文件名、单个排列片大小、网格大小、第一炮点位置、采样点、采样间隔、炮线数、炮点数、束线号、炮排号、道距、炮距、接收线距、炮线距与束间距;
[0045]e在进程号为O的节点上发送束线号、炮排号,在其他进程号的节点上接收束线号、炮排号,调用数据切割子程序,得到该节点上正演的排列片的模型数据;
[0046]f调用单个排列片的正演子程序,通过炮线号和炮点号的循环确定炮点位置,施加震源,完成单个排列片内所有炮点的正演;
[0047]g确定采样点数,进行时间循环,做单炮的波场正演计算,各进程输出炮记录与波场快照等信息;
[0048]h判断单炮时间循环是否结束,若结束输出炮记录,若未结束继续执行步骤g,完成单炮的计算;
[0049]i判断炮点循环、炮线循环是否结束,若未结束继续执行步骤f,进行单个排列片内的炮点炮线循环,做下一炮的计算,若结束执行步骤j ;
[0050]j调用MPI_Finalize退出MPI,结束程序。
[0051]本发明采用大数据传送策略,即:建模时,先按排列片进行模型速度体数据的分害I],切割后的速度输入数据体(VPO)和输出的炮记录数据体(PR0FILE3D),采用数组传送,而不采用MPI_SEND消息发送和MPI_RECV消息接收实现,这样可以大大提高大数据的传送效率。以下是子程序中大数据的传送方式,其中VP0,PR0FILE3D是要传送的三维数据,其他为计算参数和中间数组。
[0052]SUBROUTINE M0DEL_0NE_PATCH (VPO, PR0FILE3D, LSL, LS, SXO, SYO, SZ, VX, VY, &IC, ISG, VZ, PX, PY, PZ, P, WT, NX, NY, NZ, DX, DY, DZ, NT, PML, DT, NWT, NSL, &F0, NS, VP)
[0053]为了更好地理解及验证本发明,下面介绍一个实验例子。
[0054](I)我们用以下模型为例,进行了三维正演模拟测试。图5是一个三维溶洞模型即解决溶洞型储层地质问题的三维模型,图6是正演所采用观测系统及覆盖次数的分布情况。
[0055]模型大小为193*293*201个样点。图5左侧给出的是溶洞处的切片分布,Inline60上自下而上五个洞大小分别为10m, 20m, 30m, 40m, 60m, Inlinel20上五个洞大小均为20m,溶洞深度800m。图5右侧给出的是纵向剖面分布,图中给出了三层介质的速度参数值。正演网格为10m*10m*10m,子波主频35Hz,采样点2001,采样间隔0.5ms,单个排列片大小为30*119*201 个样点。
[0056](2)观测系统
[0057]观测系统:6线9炮
[0058]炮间距:20m
[0059]炮线距:60m
[0060]检波点距:20m
[0061]接收线距:60m
[0062]覆盖次数:30(BinlO),120 (Bin20),480 (Bin40)
[0063]总线束数:10
[0064]总激发线数:30
[0065]总激发点数:2700
[0066]总接收线数:33
[0067]总接收点数:4851
[0068](3)单炮结果
[0069]图7、图8为单炮的正演模拟结果,每炮有6条接收线,最上面和最下面的同相轴为上下两个水平界面的反射波,中间的同相轴为溶洞所形成的绕射波。单个排列片的计算时间平均约为24000秒,若计算节点足够多,则完成整个观测系统的正演计算也只需要24000秒。
[0070](4)三维偏移结果
[0071]在得到炮数据后,我们做了三维克希霍夫叠前时间偏移,得到了三维偏移数据体如图9,溶洞绕射波收敛成串珠状。
[0072]上述方式中未述及的有关技术内容采取或借鉴已有技术即可实现。
[0073]需要说明的是,在本说明书的教导下本领域技术人员还可以做出这样或那样的容易变化方式,诸如等同方式,或明显变形方式。上述的变化方式均应在本发明的保护范围之内。
【权利要求】
1.一种基于三维观测系统排列片数据分割的正演模拟方法,其特征在于:在各节点上进行排列片的放炮和数据接收;首先设计模型及三维观测系统,然后在主节点传送束线号和排列片号,其他节点接收到束线号和排列片号后,先调用模型数据切割函数得到该排列片所对应的模型数据,再调用三维有限差分正演函数,进行波场计算,在该函数内加入炮排及炮点号的循环以实现单个排列片内多炮或多炮线的正演。
2.根据权利要求1所述的基于三维观测系统排列片数据分割的正演模拟方法,其特征在于还包括如下具体步骤: a设计模型时,根据实际地质问题,设计地质体,地质体包括地层界面、断层或溶洞、裂缝,并设置这些地质体的速度,建立起对应的三维速度模型; b设计三维观测系统,确定参数,参数包括接收线数、道间距、炮线数、炮点数、炮检距、纵向及横向滚动次数,并根据这些参数确定单个排列片数据和整个正演模型数据的大小;c调用MPI_Init并行语句启动MPI,形成通信集MPI_Comm_World,调用MPI_Comm_size和MPI_Comm_rank获取进程总数和进程序号; d读取参数文件,包括模型文件名、单个排列片大小、网格大小、第一炮点位置、采样点、采样间隔、炮线数、炮点数、束线号、炮排号、道距、炮距、接收线距、炮线距与束间距; e在进程号为O的节点上发送束线号、炮排号,在其他进程号的节点上接收束线号、炮排号,调用数据切割子程序,得到该节点上正演的排列片的模型数据; f调用单个排列片的正演子程序,通过炮线号和炮点号的循环确定炮点位置,施加震源,完成单个排列片内所有炮点的正演; g确定采样点数,进行时间循环,做单炮的波场正演计算,各进程输出信息,信息包括炮记录与波场快照; h判断单炮时间循环是否结束,若结束输出炮记录,若未结束继续执行步骤g,完成单炮的计算; i判断炮点循环、炮线循环是否结束,若未结束继续执行步骤f,进行单个排列片内的炮点炮线循环,做下一炮的计算,若结束执行步骤j ;j调用MPI_Finalize退出MPI,结束程序。
3.根据权利要求2所述的基于三维观测系统排列片数据分割的正演模拟方法,其特征在于:在步骤a中,对于一些特殊地质问题还可以进一步设计对应的密度数据体。
4.根据权利要求2所述的基于三维观测系统排列片数据分割的正演模拟方法,其特征在于:上述步骤a中,在建模时,先按排列片进行模型速度体数据的分割,切割后的速度输入数据体(VPO)和输出的炮记录数据体(PROFILE3D),采用数组传送;数组传送采用的子程序是:
SUBROUTINE M0DEL_0NE_PATCH(VP0, PR0FILE3D, LSL, LS, SXO, SYO, SZ, VX, VY, &IC, I SG, VZ, PX, PY, PZ, P, WT, NX, NY, NZ, DX, DY, DZ, NT, PML, DT, NWT, NSL, &F0, NS, VP) 其中VPO,PR0FILE3D是要传送的三维数据,其他为计算参数和中间数组。
【文档编号】G01V1/30GK104050359SQ201410239531
【公开日】2014年9月17日 申请日期:2014年5月30日 优先权日:2014年5月30日
【发明者】张军华, 吴成, 李军, 张在金, 黄广谭, 肖文, 张明, 张秋, 范腾腾, 李宇航 申请人:中国石油大学(华东)
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1