一种油藏数值模拟方法、装置、设备和存储介质

文档序号:36401479发布日期:2023-12-16 04:45阅读:29来源:国知局
一种油藏数值模拟方法

本发明涉及油藏模拟领域,具体涉及一种油藏数值模拟方法、装置、设备和存储介质。


背景技术:

1、油藏数值模拟技术是指利用计算机求解油藏数学模型,模拟地下油水流动,给出某时刻地下油水分布,预测石油产出量的技术。通俗来讲,油藏数值模拟用于求解石油在油藏体中各个位置的含量以及油藏打井处的产量,油产量是石油生产中最关键部分,这决定了石油产出的经济效益。多相流模拟问题是油藏模拟中普遍的流体问题,在油田开发中,地下的油藏通常包含多个相,比如液相(油,oil)、气相(天然气,gas)和水相(水,water),这些相之间存在相互作用,对于预测和优化油田的开采至关重要。多相流模拟的目的就是通过数学模型和计算方法,模拟这些相之间的运动、相互作用和质量传递过程,以便更好地了解和预测油藏中的流体行为。而油藏中各个位置的石油含量可以通过相的饱和度(饱和度的定义是石油体积占油藏孔隙体积的百分比)直观表示出来,油藏打井处的产量通过相的压力与饱和度两个量代入石油产出量的公式计算得到。

2、目前广泛使用的油藏模拟方法有隐压显饱法和全隐式方法,隐压显饱法按照压力和饱和度的求解顺序进行迭代,在每个时间步内首先通过隐式迭代方法求解压力方程,然后通过显式计算饱和度来估计流体相的移动。因为饱和度计算是显式的,这样可以减少计算压力方程时的复杂性,所以隐压显饱法对于求解一些稳态问题或者相态变化较为缓慢的问题,计算效率较高。全隐式方法将压力和饱和度都视为隐含变量,并同时对所有方程进行耦合隐式求解,因为全隐式方法不依赖于显式的饱和度计算,从而能够更好地捕捉流体和相态之间的关系,所以准确度高,但是全隐式方法通常需要更多的计算资源和迭代步骤,所以计算成本也高。亟需一种在保证计算精度的前提下,同时提升计算效率的油藏模拟方法。


技术实现思路

1、有鉴于此,本发明提供了一种油藏数值模拟方法、装置、设备和存储介质,以解决油藏模拟方法不能兼顾准确性和模拟速度的问题。

2、第一方面,本发明提供了一种油藏数值模拟方法,方法包括:创建多相油藏模拟守恒方程,多相油藏模拟守恒方程包括压力方程和饱和度方程;通过调整每个计算周期的时间步的长度对多相油藏模拟守恒方程进行循环全隐式求解,得到每个计算周期的压力参数与饱和度参数;其中,当前计算周期的时间步根据上个计算周期的多相油藏模拟守恒方程的方程精度进行调整,当方程精度表征精度提高时增大当前计算周期的时间步,当方程精度表征精度降低时减小当前计算周期的时间步;在预设周期之后停止求解,输出各相的目标压力参数和目标饱和度参数。

3、在一种可选地实施方式中,通过调整每个计算周期的时间步的长度对多相油藏模拟守恒方程进行循环全隐式求解,包括:初始化当前时间步、当前饱和度参数和比较残差值;将当前时间步和当前饱和度参数代入压力方程进行隐式求解,得到当前时间步的当前压力参数;将当前时间步和当前压力参数代入饱和度方程进行隐式求解,得到用于下一个时间步计算的更新饱和度参数;将当前压力参数和更新饱和度参数返回输入多相油藏模拟守恒方程,得到多相油藏模拟守恒方程的解向量;利用解向量计算多相油藏模拟守恒方程的当前残差值;根据比较残差值和当前残差值的比值调整当前时间步的长度,得到更新时间步;将更新时间步作为当前时间步、当前残差值作为比较残差值、更新饱和度参数作为当前饱和度参数,返回将当前时间步和当前饱和度参数代入压力方程进行隐式求解的步骤,进行循环迭代模拟。

4、在一种可选地实施方式中,根据比较残差值和当前残差值的比值调整当前时间步的长度,得到更新时间步,包括:通过公式

5、

6、计算更新时间步;

7、式中,表示当前时间步的计数,表示下一个时间步的计数,表示上一个时间步的计数;表示第个时间步的所述多相油藏模拟守恒方程的解向量;表示第个时间步的所述多相油藏模拟守恒方程的解向量;表示所述多相油藏模拟守恒方程离散后的方程组;是的欧几里得范数,表示所述比较残差值;表示多相油藏模拟守恒方程的所述当前残差值;是用于计算下一个时间步的自适应步长因子;是当前时间步;是所述更新时间步;是预设的正参数,用于限制相邻时间步之间的变化幅度;是0到1之间的参数,用于控制时间步长的范围。

8、在一种可选地实施方式中,在预设周期之后停止求解,输出各相的目标压力参数和目标饱和度参数,包括:当达到预设周期时停止循环迭代模拟,并输出停止模拟时的当前压力参数与更新饱和度参数作为目标压力参数和目标饱和度参数。

9、在一种可选地实施方式中,将当前时间步和当前饱和度参数代入压力方程进行隐式求解,得到当前时间步的当前压力参数,包括:将当前时间步和当前饱和度参数代入压力方程;通过牛顿-克雷洛夫-施瓦兹算法对压力方程进行隐式求解,得到当前时间步的当前压力参数。

10、在一种可选地实施方式中,将当前时间步和当前压力参数代入饱和度方程进行隐式求解,得到用于下一个时间步计算的更新饱和度参数,包括:将当前时间步和当前压力参数代入饱和度方程;通过牛顿-克雷洛夫-施瓦兹算法对饱和度方程进行隐式求解,得到更新饱和度参数。

11、在一种可选地实施方式中,创建的多相油藏模拟守恒方程为:

12、,

13、式中,为饱和度方程,为压力方程,下标 w和 o分别表示水相和油相,为孔隙率,和分别为水相和油相的饱和度,和分别为水相和油相的压力,和分别表示水相和油相的粘度,和分别是水相和油相的产出率;

14、为油水两相间的毛细管压力,具体为;

15、式中和为水相和油相的剩余饱和度,是给定的正数,是预设的渗透率常数;

16、各相流体流动均符合达西定律为:;

17、式中表示油藏区域的绝对渗透率参数,为相的粘度,相表示水相或者油相,表示相的压力,为相的密度,为重力加速度常数,表示井下垂直方向的单位间隔距离,表示或,和分别表示水相和油相的相对渗透率,具体为:,其中为给定的正整数;

18、和通过式计算;

19、其中,表示相的产出率,是井的段长,和分别是井位置处相流体的绝对和相对渗透率值,和分别为井位置处相流体的粘性系数和密度,表示井筒半径,表示井所在网格块的排水半径,和分别表示井处的井压力深度和当前射孔位置深度,为井位置处的井压力,为井处相流体的压力,是重力加速度。

20、第二方面,本发明提供了一种油藏数值模拟装置,装置包括:模型创建模块,用于创建多相油藏模拟守恒方程,多相油藏模拟守恒方程包括压力方程和饱和度方程;油藏迭代模拟模块,用于通过调整每个计算周期的时间步的长度对多相油藏模拟守恒方程进行循环全隐式求解,得到每个计算周期的压力参数与饱和度参数;其中,当前计算周期的时间步根据上个计算周期的多相油藏模拟守恒方程的方程精度进行调整,当方程精度表征精度提高时增大当前计算周期的时间步,当方程精度表征精度降低时减小当前计算周期的时间步;目标参数输出模块,用于在预设周期之后停止求解,输出各相的目标压力参数和目标饱和度参数。

21、第三方面,本发明提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的方法。

22、第四方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的方法。

23、本发明提供的技术方案,具有如下优点:

24、本发明在创建了包括压力方程和饱和度方程的多相油藏模拟守恒方程之后,在每个时间步内对多相油藏模拟守恒方程进行全隐式求解,从而保证结果的准确性。在循环迭代的隐式求解过程中,每个计算周期的时间步根据上个计算周期的多相油藏模拟守恒方程的方程精度进行调整,当方程精度表征精度提高时增大各个计算周期的时间步,从而加快模拟速度,当方程精度表征精度降低时减小各个计算周期的时间步,从而提高计算结果的数值稳定性。通过这一方式,既提高了计算效率,还在油藏模拟结束时输出准确度得以保证的目标压力参数和目标饱和度参数,兼顾了油藏模拟的效率和模拟准确度两个因素。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1