油气储运网

 找回密码
 立即注册

QQ登录

QQ快速登录

一步迅速开始

pdms培训&项目数字化360网
查看: 8919|回复: 1

[经验交流] 油藏数值模拟原理 黑油模型

[复制链接]
发表于 2013-7-1 16:38:26 | 显示全部楼层 |阅读模式
本帖最后由 西元前 于 2013-7-1 16:38 编辑

黑油模型简介
黑油模型是指油质较重性质的油藏类型。  
黑油模型是最完善、最成熟,也是应用最为广泛的模型。
是油藏数值模拟的基础,其它模型大都是黑油模型的扩展。
目的:软件这样一个“黑箱”是如何操作的,以便指导我们更好地去应用软件。
黑油模型简介
黑油模型的基本假设
单相渗流黑油模型基本微分方程
三维三相黑油模型基本微分方程
初边值条件
5. 网格系统
6. 黑油模型的差分方程
7. 差分方程的线性化
8. 线性代数方程组的求解
9. 黑油模型的主要数据流
1 、黑油模型基本假设
(1) 油藏中的渗流是等温渗流。
(2) 油藏中最多只有油、气、水三相,每一相均遵守达西定律。
(3)油藏烃类只含有油、气两个组分。在油藏状态下,油气两组分可能形成油气两相,油组分完全存在于油相内,气组分则可以以自由气的方式存在于气相中,也可以以溶解气的方式存在于油相中,所以地层内油相为油组分和气组分的某种组合。在常规油田中,一般不考虑油组分向气组分挥发的现象。
(4)油藏中气体的溶解和逸出是瞬间完成的,即认为油藏中油气两相瞬时达到相平衡状态。
(5)油水之间不互溶;天然气也假定不溶于水。
2.单相渗流基本微分方程
2. 单相渗流基本微分方程
渗流速度是一个空间向量,用分量表示为:





   ── 渗流速度矢量;  ──压力; ──势函数
   ── 绝对渗透率;    ──重力加速度常数;
   ──粘度;   ── 垂向坐标;    ── 密度;

Reservoir Simulation III
2.单相渗流基本微分方程
根据物质守恒原理,在单位时间内
流入单元内的流体质量-流出单元的流体质量
=单元内流体质量的变化
取渗流场中一个微小六面体体积单元来研究


2.单相渗流基本微分方程
该六面体单元的中心点坐标为(x,y,z),其
每一侧面的质量流速均以其侧面的中心点的质量
来代替。
     方向流入质量=   
     方向流出质量=   
     方向流入质量=   
     方向流出质量=   
     方向流入质量=   
     方向流出质量=
单元体内流体质量的变化=
2.单相渗流基本微分方程
根据物质守恒定律:




将上式两边同除以            ,

2.单相渗流基本微分方程
并令          ,           ,


把源汇项(井)加入到方程中,得到
单相渗流连续性方程 :




2.单相渗流基本微分方程
用Hamilton算子    表示,并将达西公式代入,得
到,单相渗流微分方程(流动方程):




生产井   
注入井
关    井

2.单相渗流基本微分方程
这就是地下流体所遵循的渗流规律。
总之,渗流基本微分方程包含三部分内容:
              流动项、源汇项以及累积项
渗流基本微分方程由两个定律控制:
              达西定律与物质守恒定律
压力场和饱和度场的分布是流体流动的结果,流
动规律由达西定律来确定,流量由物质守恒来确
定,这两个规律是数值模拟的关键所在。
3. 三维三相渗流基本微分方程
将单相渗流达西定律推广到多相渗流中,得到
三相流动达西公式:







  式中,w,o,g——水、油、气诸相下标。
         ── 相对渗透率;

3. 三维三相渗流基本微分方程
对油、水、气三相,每一相运用物质守恒定律,可以建立以下连续性方程

3. 三维三相渗流基本微分方程
把达西公式代入连续性方程,得到
三维三相渗流基本微分方程

3. 三维三相渗流基本微分方程
令  
3. 三维三相渗流基本微分方程
上述T的物理意义是反映相邻网格间的流动性,又叫传导率(transmissibility)  

3. 三维三相渗流基本微分方程


3. 三维三相渗流基本微分方程
还要补充一些方程
饱和度 :
油水毛管力:
油气毛管力:
相对渗透率和毛管力是饱和度函数:
3. 三维三相渗流基本微分方程
Stone公式:


式中,  —— 束缚水饱和度
        ——油水两相流动时油相相对渗透率
        ——油气两相流动时油相相对渗透率  
3. 三维三相渗流基本微分方程
流体PVT性质
水相:            
气相:                         (Z)   
油相:随压力变化,相态会发生变化。
    三相状态:
    两相状态:


岩石的高压物性

相渗曲线以及流体PVT性质,以表格形式给出,
称为静态数据。


3. 三维三相渗流基本微分方程





实际求解变量
初始化输入数据ljfinit.txt

3. 三维三相渗流基本微分方程
产量项(作源汇项处理)(动态数据)



3. 三维三相渗流基本微分方程
其中,


   —— 在井基准面深度   上的井底压力。
   —— 节点等效泄油半径。
   —— 井筒半径。
△X,△Y,△Z—— 网格节点x,y和z方向步长
  PI叫采油指数,     通常写成KH,可以直接输入
4 .初边值条件
4 .初边值条件
外边界
     封闭边界:尖灭、断层、圈闭
     流动边界:边、底水
内边界,即井的生产条件
     定产边界条件(rate constraint):给定产液量、产油量、产气量、注水量、注气量
     定压边界条件(pressure constraint):给定井底流压



4 .初边值条件
5.  网格系统
5.  网格系统
在一般情况下流动方程求不出解析解,只能用离散化方法求数值解。
         离散化方法,首先要把求解区域按一定的网格系统进行剖分。网格剖分方法有很多,像直角坐标网格、径向网格、角点网格、PEBI网格等。目前,商用软件中大都采用矩形网格系统。离散化方法主要有:有限差分(Finite Difference)、有限元(Finite Element)以及流线法(Stream Line)。比较成熟的是有限差分方法。有限差分方法大多空间变量采用网格块中心(Block Center)差分, 时间变量按向前差分方法。
5.网格系统:矩形网格

5.网格系统:径向网格系统
5.网格系统:角点网格
块中心网格与角点网格的比较
5.网格系统:块中心网格的数据结构





模型被分为20×5×10个网格区域。
网格从(1,1,1)开始向下倾斜。
各网格块在X方向上是300ft,在Y方向上是1000ft。
层厚度从上至下分别是32,22,20,4,32,4,26,26,4,28ft

5.网格系统:块中心网格的数据结构
--前20个TOPS定义网格 (1, 1, 1) 到 (20, 1, 1)
6855.000    6865.000        6875.000        6885.000        6895.000
6905.000        6915.000        6925.000        6935.000        6945.000
7005.000        7015.000        7025.000        7035.000        7045.000
7055.000        7065.000        7075.000        7085.000        7095.000
--下面20个TOPS定义网格 (1, 2, 1) 到 (20, 2, 1)
6930.000        6940.000        6950.000        6960.000        6970.000
6980.000        6990.000        7000.000        7010.000        7020.000
7080.000        7090.000        7100.000        7110.000        7120.000
7130.000        7140.000        7150.000        7160.000        7170.000
--下面20个TOPS定义网格 (1, 3, 1) 到 (20, 3, 1)
7030.000        7040.000        7050.000        7060.000        7070.000
7080.000        7090.000        7100.000        7110.000        7120.000
7180.000        7190.000        7200.000        7210.000        7220.000
7230.000        7240.000        7250.000        7260.000        7270.000
--下面20个TOPS定义网格 (1, 4, 1) 到 (20, 4, 1)
7130.000        7140.000        7150.000        7160.000        7170.000
7180.000        7190.000        7200.000        7210.000        7220.000
7280.000        7290.000        7300.000        7310.000        7320.000
7330.000        7340.000        7350.000        7360.000        7370.000
--下面20个TOPS定义网格 (1, 5, 1) 到 (20, 5, 1)
7205.000        7215.000        7225.000        7235.000        7245.000
7255.000        7265.000        7275.000        7285.000        7295.000
7355.000        7365.000        7375.000        7385.000        7395.000
7405.000        7415.000        7425.000        7435.000        7445.000
/ 这完成了第一层TOPS的定义
角点网格的数据结构
--COORD
--此关键字定义坐标线
--X1                Y1        Z1        X2        Y2        Z2
  0.                0.        6825.000        0.        0.        7023.000
  300.0000          0.        6835.000        300.0000        0.        7033.000
  600.0000         0.        6845.000        600.0000        0.        7043.000
  900.0000         0.        6855.000        900.0000        0.        7053.000
  1200.000         0.        6865.000        1200.000        0.        7063.000
..........               
/对于20 * 10 的网格模型, 需要21*11 条坐标线,即 231条。-每一条坐标线都用6个数来定义,所以关键字COORD包含有1386个数。
ZCORN
--这个关键字定义网格拐点的深度,数据按照X (或 R) 方向循环最快,然后是Y (或 THETA) 方向,最后是Z方向的顺序排列。
6825.000        6835.000        6835.000        6845.000        6845.000
6855.000        6855.000        6865.000        6865.000        6875.000
6875.000        6885.000        6885.000        6895.000        6895.000
6905.000        6905.000        6915.000        6915.000        6925.000
6975.000        6985.000        6985.000        6995.000        6995.000
7005.000        7005.000        7015.000        7015.000        7025.000
7025.000        7035.000        7035.000        7045.000        7045.000
7055.000        7055.000        7065.000        7065.000        7075.000
.......................                        
/ 对于1000个网格,需要 8000 个ZCORN值
--这些只是角点网格模型的数据体中很少的一部分
块中心网格与角点网格的比较

非结构网格技术
传统的结构网格--即规则矩形剖分的网格,具有如下不足:
存在较严重的网格取向效应
不能保证每口井都在网格中心
不能很好地描述油藏形态
粗细网格间的过渡衔接性差
研究新的网格技术势在必行.
非结构网格技术
非结构网格技术(Unstructured Grids)
常用的非结构网格
各网格中心之间连线构成三角网
PEBI网格(又叫垂直平分网格Perpendicular Bisectors):各三角形边的垂直平分线构成网格边界
CVFE网格--控制体有限元网格(Control volume finite element):各三角形边的中点与重心的连线构成网格边界
待解决的问题
非结构网格条件下代数方程组的快速求解
5.网格系统: PEBI网格
unstructured PEBI grids
Advanced Fault Modeling
非结构网格技术 Channels can be modelled
2. 非结构网格技术 (complex) faults
局部网格加密(Local Grid Refinement)
1.  概述
  局部网格加密(Local Grid Refinement,简称LGR)技术主要分:
静态局部网格加密(Static Local Grid Refinement)局部加密区域在整个计算过程中固定不变的,常用于断层、尖灭、裂缝以及井附近的加密。该技术已经成熟,在多加软件公司的软件产品中都有这一功能。
动态局部网格加密(Dynamic Local Grid Refinement)局部加密区域在整个计算过程中随流体的运动位置而变化,主要用于追踪驱替前缘。该方法在研究之中,最早是Heinemann将动态局部网格用于水驱油藏数值模拟 。
局部网格加密技术
局部网格加密技术
化学驱驱替前缘动态追踪数值模拟研究
1.3 动态局部网格加密技术 (注化学剂时的So)
杂交网格技术(Hybrid  Grid Refinement)
开窗技术(Windowing Technique)

开窗技术
Automatically and implicitly calculated

in/out-flux will be used as a ‘von Neumann‘ boundary condition
开窗技术
6.  差分方程(Difference Equations)
  差分方程

6.  差分方程


6.  差分方程
         该差分方程组无论是左端还是右端都是非线性的,是一组非线性代数方程组。非线性最强的参数是相对渗透率和毛管力。这两个参数在时间方面的处理不同,对计算的稳定性以及计算结果影响最大,也是形成形形色色解法的关键所在。
       根据隐式程度的不同,数值模拟的算法有IMPES (Implicit Pressure Explicit Saturation) 方法、半隐式(Semi-Implicit Method)方法和全隐式方法(Fully Implicit Method )。
IMPES:隐式求解压力显式求解饱和度。对流度中与时间有关的量均取上一时间步的值。

6.  差分方程
IMPES方法的优点是速度快,缺点是稳定性差,尤其是锥进问题以及过泡点问题不能很好解决。因此时间步长不能太大。目前,IMPES方法在化学驱模型,尤其是流线法中发挥着作用。
全隐式方法主要采用了Newton--Raphson迭代技术, 对方程中各项系数,包括井系数全部隐式处理。全隐式方法较之半隐式方法,具有更好的稳定性,时间步长更长,彻底解决了过泡点问题,是八十年代数值模拟技术走向成熟的关键技术,也是大型油藏数值模拟的主流方法。


6.  差分方程
       全隐式方法和半隐式方法的根本差别在于:
       半隐式方法是将非线性方程直接线性化形成
线性代数方程组,来求解n+1时刻的值。
       全隐式方法采用Newton-Raphson方法,迭
代地求解非线性方程组,得到n+1时刻的变量。
       用一维非线性方程表示:         给定初始近似
对函数         在点处   进行一阶泰勒展开, 可近
似地表示为
6.  差分方程
半隐式:


全隐式方法:



6.  差分方程
下面介绍全隐式方法。为了减小计算机舍入误
差的影响, 模型中不直接求压力和饱和度,而是求其增量。




其中:x代表求解变量
            n——时间迭代步
              ——牛顿迭代步
6.  差分方程






求解变量:   ,     ,
对于二相状态:
对于三相状态:
7.  差分方程的线性化
对方程组进行线性化处理。对所有变量进行Taylor展开,保留线性部分。变量进行运算后也保留线性部分,舍去高阶项。形成线性代数方程组。

7.  差分方程的线性化
全隐式方法形成的线性代数方程组的结构

8. 线性代数方程组的求解
   油藏数值模拟的线性代数方程组是大型稀疏矩阵,其求解效率在油藏数值模拟计算中举足轻重。因为,其计算量占整个计算量约70%~80%。因此,研制快速求解大型稀疏矩阵的新方法成为油藏数值模拟发展的一个重要方向。
         线性代数方程组的求解方法主要有三类:
    1)直接法:Gauss消元、D4排序的Gauss消元
    2)迭代法:SOR(松弛迭代法)
    3)共轭梯度类法、预处理共轭梯度类法(PCG方法)

8. 线性代数方程组的求解
           目前最先进的方法是预处理共轭梯度类方法。BO软件中采用RSVP方法。该方法计算快,精度高。
二、黑油模型简介
黑油模型油藏数值模拟器流程
8.黑油模型数据流
8.黑油模型数据流
黑油模型输入数据:




  主要数据流
9.黑油模型数据流
一、初始化数据主要有:
1.PVT数据包括流体性质常数,高压物性试验数据和平衡区数据。主要是:
(1)油、气、水的地面密度和比重等常数,以及计算地层水性质的有关参数。
(2)平衡区数据,如油水界面、油气界面。
(3)油PVT表,气PVT表。


9.黑油模型数据流
2.岩石数据包括油水系统和油气系统的相对渗透率曲线和毛管压力曲线数据,以及其它的岩石性质数据。主要是:
(1)输入岩石压缩系数及其参考压力。
(2)油水系统以及油气系统的相对渗透率曲线和毛管压力曲线数据。
(3)毛管压力端点值与束缚水饱和度关系。


9.黑油模型数据流
3.网格属性数据是用数组表述的属性数据,主要来自地质建模,它们是:
(1)油层深度数据
(2)孔隙度数据
(3)渗透率数据
(4)厚度数据
(5)有效厚度

9.黑油模型数据流
初始化程序输入以下几类卡片:
(1)       NIT卡
(2)       一般描述卡片
(3)       PVT数据卡片
(4)       岩石类型数据卡片
(5)       数组数据
(6)       END卡
每一类型卡片有引领关键字,标志者该类数据开始输入。INIT卡必须放在卡片叠的第一张,END放在卡片叠的最后一张,数组数据放在其它输入数据的后面。
ljfinit.txt
9.黑油模型数据流
二、动态模型数据主要有:
1. 模型控制数据:
(1)离散方程求解控制参数
(2)线性代数方程组解法控制参数
(3)时间步长控制参数
2. 输出控制参数:
(1)控制井资料报告
(2)控制全油田、分区及分层报告  
(3)控制数据场报告:压力、饱和度

9.黑油模型数据流
3. 井数据:
(1)井位数据及射孔数据
(2)井的分类及生产方式
ljfmodel.txt



油藏数值模拟原理_黑油模型(for_培训处)1_2006_04_13.ppt

8.65 MB, 下载次数: 12

售价: 3 金币  [记录]

油藏数值模拟原理

发表于 2013-7-1 17:18:25 | 显示全部楼层
学习下看
您需要登录后才可以回帖 登录 | 立即注册  

本版积分规则

扫码访问手机版

QQ|关于我们|网站地图|油气储运网 ( 鲁ICP备11007657号-3 )

GMT+8, 2024-11-25 14:48 , Processed in 0.043804 second(s), 17 queries , Gzip On, MemCached On.

Powered by Discuz! X3.5

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回列表