Eclipse数值模拟软件问答(初级)
- 格式:doc
- 大小:50.50 KB
- 文档页数:9
ECLIPSE黑油数值模拟基础斯伦贝谢科技服务(北京)有限公司Schlumberger Technology Services (Beijing) Ltd目录简介1目的3什么是油藏数值模拟 5如何把模型与实际油藏联系在一起7为什么要进行油藏数值模拟研究10为什么选择ECLIPSE 12ECLIPSE的功能14ECLIPSE是如何工作的16静态油藏描述19PVT和岩石数据22初始化数据24井数据26使用ECLIPSE进行油藏数值模拟研究28 如何使用手册30文件的组织和结构33ECLIPSE输入/输出结构35ECLIPSE输出文件 37ECLIPSE输出类型 41输出文件名称44文件位置48宏命令的使用50输入文件结构53数据文件语法规则56关键字语法58各部分通用的关键字60系统使用63基本的UNIX命令65VI编辑器69RUNSPEC部分 73RUNSPEC部分的作用 75 RUNSPEC部分关键字 78不含RUNSPEC部分的数据文料81 GRID部分83GRID部分的作用85数据排列规则88网格几何形状90块中心网格实例94角点网格实例97网格模型格块属性99如何指定网格格块属性101传导系数规则109笛卡儿网格的传导系数Ill径向网格传导系数118页岩模型121传导系数修正124非相邻连接NNC 128断层处NNC的生成130尖灭处NNC的生成132局部网格加密(LGR)处NNC的生成134双孔模型中的NNC 136水体处NNC的生成138径向网格中NNC的生成140径向模型142输出控制145GRID部分关键字总结 148GRID部分关键字149EDIT部分153EDIT部分的作用155EDIT部分关键字总结157PROPS部分—流体属性159流体属性的作用161黑油模型概述163黑油及组分模拟167油相状态方程169用PVDO输入dead oi1的PVT属性172用PVCDO输入dead oi1的PVT数据174 用PVTO输入live oil的PVT数据176用PVCO输入live oi1的PVT数据178气体状态方程180用PVZG输入干气的PVT数据183 用PVDG输入干气的PVT属性185 用PVTG输入湿气的PVT数据187 水的状态方程189参考密度191黑油模型中相的选择193用PVT分区定义多种PVT类型196 用API追踪定义多种PVT类型199 岩石压缩系数205饱和度函数和端点标定207饱和度函数的作用209饱和度函数211三相相对渗透率217饱和度函数标定219端点标定221垂向标定226毛管力标定229输出控制233REGIONS分区部分235 REGIONS的作用237REGIONS部分关键字类型239 SOLUTION部分245SOLUTION部分的作用247平衡法249EQUI关键字的使用252块中心平衡253水平和倾斜网格块的精细网格平衡255 动态流体校正257过渡区端点变更260拟合初始含水分布262列举法264初始溶解比266重启268如何产生一个完全重启运算271如何产生一个快速重启运算272完全重启和快速重启274输出控制275水体模拟277水体模拟功能279网格水休281数值水体283Fetkovich水体286Carter-Tracy水体289流量水体292输出控制294SUMMARY部分295SUMMARY部分的作用297附加的参数301输出控制和补充的关键字304SCHEDULE部分—历史拟合307SCHEDULE部分的作用309历史拟合与预测分忻311SCHEDULE历史拟合部分体系结构313VFP曲线指定315钻一口新井:WELSPECS 321气井中的流动327连接层位定义:COMPDAT 331部分完并:COMPRP 337垂向平衡的部分完井:COMPVE 340井历史产量:WCONHIST 345井注入量:WCONlNJE 349模拟器控制:TUNING,TUNINGL和NEXTSTEP 352 输出控制:RPTSCHED和RPTRST 355再溶解和再挥发量:DRSDT和DRVDT 358模拟的前进和终止:DATES,TSTEP和END 360模拟井的动态362手动修井,修改产量和PI 366SCHEDULE部分—生产预测369主产预测部分关键字组成371 SCHEDULE预测部分结构372井目标产最设定:WCONPROD 374经济极限定义377单井经济极限,自动修井和自动降产379 经济极限,自动修井和自动降产381 CECON完井层段经济极限382WPLUG堵水措施:WPLUG 383修井措施:WLIFT 384WTEST试井:WTEST 385井产最的自动降产:WCUTBACK 386井组控制387创建井组层次:GRUPTREE 389井组/油田生产控制:GCONPROD 390井组注入控制:GCONINJE 393优先控制396井组经济极限:GECON 398收敛性399典型的收敛性问题401ECLIPSE100用户教程练习407练习1:单井锥进模型 409关于练习1的说明:单井锥进模型412练习2:部分模型的RUNSPEC部分 413练习3:部分模型GRID部分 415练习4:部分模型的PROPS部分和REGIONS部分418 练习5:部分模型初始化420练习6:部分模型历史拟合422练习7:部分模型开采优化425参考文献4271简介1.1 目的ECLIPSE100用户教程旨在通过介绍ECLIPSE中最常见的功能来帮助用户熟悉油藏数值模拟的整个过程。
Eclipse数值模拟软件问答(初级)1. ECLIPSE输出结果文件是哪些?.GRID或.FGRID: 网格文件.EGRID: 网格文件,与GRID格式不同,文件要小的多。
(用关键字GRIDFILE来控制输出类型).INIT或.FINIT: 属性文件。
(用关键字INIT来控制输出).PRT: 报告输出。
文件很大,模型处理及计算结果详细报告。
(RPTGRID,RPTPROP,RPTSOL,RPTSCHED 控制输出).LOG: 后台作业时的输出报告,文件比PRT要小很多。
可用于错误检查。
.DBG: Debug文件,一般不用。
可用于检查ECLIPSE如何处理输入参数。
.SAVE: 用于快速重启。
(用关键字SAVE来控制输出).RFT:RFT计算结果。
(用关键字WRFTPLT来控制输出).FLUX: 流动边界。
(用关键字DUMPFLUX来控制输出).Snnnn或.UNSMRY: 图形文件输出(在SUMMARY部分定义).Xnnnn或.UNRST: 重启文件输出(用RPTRST,RPTSOL或RPTSCHED来控制输出)2. ECLIPSE输出文件都有什么格式?格式化输出:可读文件,文件大。
(用关键字FMTOUT来控制)非格式化输出:不可读文件,文件小。
多输出文件:每一时间步一个输出文件。
单文件输出:所有时间步输出到一个文件。
(用关键字UNIFOUT来控制)ECLIPSE缺省输出:非格式化,多文件输出。
3. ECLIPSE数据文件分几部分,各部分定义什么数据类型?ECLIPSE数据类型分八部分,各部分内的关键字除几个个别的外不能混用。
RUNSPEC: 定义模型维数以及模型基本类型,包括模型网格维数,最大井数,井组数,流体类型,输出类型控制等。
GRID: 定义模型网格和属性,包括顶部深度,厚度,孔隙度,渗透率,净毛比,一般由前处理软件Flogrid或Petrel输出。
EDIT: 编辑孔隙体积,传导率。
Eclipse数值模拟软件问答(初级)Eclipse数值模拟软件问答(初级)1. ECLIPSE输出结果文件是哪些?.GRID或.FGRID: 网格文件.EGRID: 网格文件,与GRID格式不同,文件要小的多。
(用关键字GRIDFILE来控制输出类型).INIT或.FINIT: 属性文件。
(用关键字INIT来控制输出).PRT: 报告输出。
文件很大,模型处理及计算结果详细报告。
(RPTGRID,RPTPROP,RPTSOL,RPTSCHED控制输出).LOG: 后台作业时的输出报告,文件比PRT要小很多。
可用于错误检查。
.DBG: Debug文件,一般不用。
可用于检查ECLIPSE如何处理输入参数。
.SA VE: 用于快速重启。
(用关键字SA VE来控制输出).RFT:RFT计算结果。
(用关键字WRFTPLT来控制输出).FLUX: 流动边界。
(用关键字DUMPFLUX来控制输出).Snnnn或.UNSMRY: 图形文件输出(在SUMMARY部分定义).Xnnnn或.UNRST: 重启文件输出(用RPTRST,RPTSOL或RPTSCHED来控制输出)2. ECLIPSE输出文件都有什么格式?格式化输出:可读文件,文件大。
(用关键字FMTOUT来控制)非格式化输出:不可读文件,文件小。
多输出文件:每一时间步一个输出文件。
单文件输出:所有时间步输出到一个文件。
(用关键字UNIFOUT 来控制)ECLIPSE缺省输出:非格式化,多文件输出。
3. ECLIPSE数据文件分几部分,各部分定义什么数据类型?ECLIPSE数据类型分八部分,各部分内的关键字除几个个别的外不能混用。
RUNSPEC: 定义模型维数以及模型基本类型,包括模型网格维数,最大井数,井组数,流体类型,输出类型控制等。
GRID: 定义模型网格和属性,包括顶部深度,厚度,孔隙度,渗透率,净毛比,一般由前处理软件Flogrid或Petrel输出。
数值模拟技巧目录:1。
数值模拟网格有多少类型?各有什么特点?2。
应该选用什么网格?3。
如何最快完成历史拟合?4.如何从历史拟合光滑过渡到预测?———--——--———-——-—-—--——--—-—--—--—-——————----——-—-—-———-----——-—-———-1.数值模拟网格有多少类型?各有什么特点?目前数值模拟软件常用的网格有正交网格,角点网格,PEBI网格,局部加密网格,动态网格.这些网格的主要特点如下:A: 正交网格正交网格是最常见网格,目前仍然被广泛应用.由于其计算速度快的特点,一些大型油气田经常采用此类型。
比如ADCO的Thamama和ZADCO的UZ油田组分模型,有上百万网格节点,若采用其他网格类型,会大大增加计算时间。
也有研究(SPE21391)认为正交网格计算结果比其他网格精确。
B:角点网格ECLIPSE软件最早在1983年推出角点网格,角点网格克服了正交网格的不灵活性,可以用来方便地模拟断层、边界、尖灭,但由于角点网格,网格之间不正交,这种不正交一方面给传导率计算带来难度,增加模拟计算时间,另一方面也会对结果的精度有影响。
C: PEBI网格SURE软件于1987年推出PEBI网格描述油藏。
PEBI网格源于1908年就产生的Voronoi网格,其主要特点是灵活而且正交。
PEBI网格体系提供了方便的方法来建立混合网格,比如模型整体采用正交网格,而对断层、井、边界等采用径向、六边型或其他网格。
网格间的传导率可以自动计算.PEBI网格的灵活性对模拟直井或水平井的锥进问题非常有用。
另外PEBI网格可以用来精确模拟试井问题.还有PEBI网格降低了网格走向对结果的影响,PEBI网格的缺点是矩阵比其他网格要复杂的多,需要更加有效的解法。
D:局部网格加密建立全油田整体模型后,对于压力及饱和度变化快的区域,常常需要进行局部网格加密。
局部网格可以是正交网格,或是径向网格。
Aziz认为(JPT1993年)在正交网格中进行正交网格局部加密,有时并不会对结果有改善。
数值模拟技巧目录:1.数值模拟网格有多少类型?各有什么特点?2.应该选用什么网格?3.如何最快完成历史拟合?4.如何从历史拟合光滑过渡到预测?---------------------------------------------------------------------1.数值模拟网格有多少类型?各有什么特点?目前数值模拟软件常用的网格有正交网格,角点网格,PEBI网格,局部加密网格,动态网格。
这些网格的主要特点如下:A: 正交网格正交网格是最常见网格,目前仍然被广泛应用。
由于其计算速度快的特点,一些大型油气田经常采用此类型。
比如ADCO的Thamama和ZADCO的UZ油田组分模型,有上百万网格节点,若采用其他网格类型,会大大增加计算时间。
也有研究(SPE21391)认为正交网格计算结果比其他网格精确。
B: 角点网格ECLIPSE软件最早在1983年推出角点网格,角点网格克服了正交网格的不灵活性,可以用来方便地模拟断层、边界、尖灭,但由于角点网格,网格之间不正交,这种不正交一方面给传导率计算带来难度,增加模拟计算时间,另一方面也会对结果的精度有影响。
C: PEBI网格SURE软件于1987年推出PEBI网格描述油藏。
PEBI网格源于1908年就产生的Voronoi网格,其主要特点是灵活而且正交。
PEBI网格体系提供了方便的方法来建立混合网格,比如模型整体采用正交网格,而对断层、井、边界等采用径向、六边型或其他网格。
网格间的传导率可以自动计算。
PEBI网格的灵活性对模拟直井或水平井的锥进问题非常有用。
另外PEBI网格可以用来精确模拟试井问题。
还有PEBI网格降低了网格走向对结果的影响,PEBI网格的缺点是矩阵比其他网格要复杂的多,需要更加有效的解法。
D: 局部网格加密建立全油田整体模型后,对于压力及饱和度变化快的区域,常常需要进行局部网格加密。
局部网格可以是正交网格,或是径向网格。
Aziz认为(JPT1993年)在正交网格中进行正交网格局部加密,有时并不会对结果有改善。
Eclipse数值模拟软件问答(初级)1. ECLIPSE输出结果文件是哪些?.GRID或.FGRID: 网格文件.EGRID: 网格文件,与GRID格式不同,文件要小的多。
(用关键字GRIDFILE来控制输出类型).INIT或.FINIT: 属性文件。
(用关键字INIT来控制输出).PRT: 报告输出。
文件很大,模型处理及计算结果详细报告。
(RPTGRID,RPTPROP,RPTSOL,RPTSCHED控制输出).LOG: 后台作业时的输出报告,文件比PRT要小很多。
可用于错误检查。
.DBG: Debug文件,一般不用。
可用于检查ECLIPSE如何处理输入参数。
.SA VE: 用于快速重启。
(用关键字SA VE来控制输出).RFT:RFT计算结果。
(用关键字WRFTPLT来控制输出).FLUX: 流动边界。
(用关键字DUMPFLUX来控制输出).Snnnn或.UNSMRY: 图形文件输出(在SUMMARY部分定义).Xnnnn或.UNRST: 重启文件输出(用RPTRST,RPTSOL或RPTSCHED来控制输出)2. ECLIPSE输出文件都有什么格式?格式化输出:可读文件,文件大。
(用关键字FMTOUT来控制)非格式化输出:不可读文件,文件小。
多输出文件:每一时间步一个输出文件。
单文件输出:所有时间步输出到一个文件。
(用关键字UNIFOUT来控制)ECLIPSE缺省输出:非格式化,多文件输出。
3. ECLIPSE数据文件分几部分,各部分定义什么数据类型?ECLIPSE数据类型分八部分,各部分内的关键字除几个个别的外不能混用。
RUNSPEC: 定义模型维数以及模型基本类型,包括模型网格维数,最大井数,井组数,流体类型,输出类型控制等。
GRID: 定义模型网格和属性,包括顶部深度,厚度,孔隙度,渗透率,净毛比,一般由前处理软件Flogrid或Petrel输出。
EDIT: 编辑孔隙体积,传导率。
PROPS: 流体PVT及岩石数据,包括油、气体积系数,粘度随压力变化,水的体积系数,粘度;油,气,水地面密度等。
岩石数据是相渗曲线和毛管压力。
REGIONS: 分区数据,包括流体分区,岩石分区,储量区,平衡区等。
SOLUTION: 平衡区数据,包括油水界面、油气界面、参考压力、参考深度、水体参数。
SUMMARY: 计算结果输出,包括油田,井组,单井的油、气、水产量,压力输出,网格的压力,饱和度输出等。
SCHEDULE: 动态数据部分,包括定义井位,射孔,产量,压力,历史拟合,预测等。
4. 在RUNSPEC中定义什么内容?模型大小:DIMENS模型流体:OIL,GAS,WATER,DISGAS,V APOIL,根据油藏实际情况选用不同组合。
模型单位:METRIC,FIELD,LAB模型维数:WELLDIMS(井,射孔和井组维数),VFPIDIMS(注水井VFP表),VFPPDIMES(生产井VFP表),EQLDIMS(平衡区),TABDIMS(流体及岩石维数)模型输出格式控制:UNIFOUT,FMTOUT,UNIFIN,FMTIN特殊功能:API,BRINE,DUALPERM,DUALPORO,MISCIBLE,TRACES标题:TITLES模拟开始时间:START5.在GRID部分需要定义什么参数?模型构造:COORD,ZCORN或DX,DY,DZ,TOPS;模型孔隙度:PORO;模型渗透率:PERMX,PERMY,PERMZ;模型净毛比或净厚度:NTG,DZNET;断层:FAULTS。
可以采用正交网格或角点网格,还可以采用PEBI网格。
网格部分数据最好由前处理软件提供。
6. 如何修改GRID部分参数?COPY: 拷贝ADD: 增加MULTIPL Y: 乘7. 如何修改断层传导率?用MULTFLT修改每条断层的传导率。
8. 如何定义流体?流体数据来自于试验报告,描述油、气体积系数,粘度随压力的变化,油、气、水地面密度等。
油、气、水、溶解气和挥发油:PVTO(或PVCO), PVTG,PVTW;油、气、水和溶解气:PVTO(或PVCO),PVDG(或PVZG),PVTW;油、水:PVDO(或PVCDO),PVTW;气、水:PVDG,PVTW。
9. 如何定义不同类型流体?提供多个流体定义表,在REGIONS部分定义PVT分区,每一个网格将对应一套PVT 属性表。
10. 如何定义岩石?用关键字ROCK定义。
需要定义在参考压力下岩石的压缩系数。
如果岩石随地层压力变化,孔隙度和渗透率会发生变化,可以用ROCKTAB来定义岩石压缩表。
这样当断层压力降低造成上浮压力上升,ECLIPSE会通过ROCKTAB来模拟孔隙度和渗透率的变化。
11. 如何定义相对渗透率和毛管压力曲线?来自于试验报告,两相相对渗透率和毛管压力曲线。
油水:SWOF或SWFN,SOF2;油气:SGOF或SGFN,SOF3。
12. 如何定义分区?实际油藏非常复杂,在不同部位可能流体属性不同,同时由于非均质造成不同的岩石属性,需要应用不同的相对渗透率和毛管压力曲线,或者油藏有多个油水界面,这是都需要对模型进行分区。
可以进行以下分区:储量分区:FIPNUM 不同分区可以输出不同的储量;PVT分区:PVTNUM 对应不同的流体类型;岩石分区:SATNUM 对应不同的相对渗透率和毛管压力曲线;平衡分区:EQUNUM 对应不同的油气或油水界面。
通常需要用前处理软件FLOGRID或PETREL来帮助进行分区,比如根据孔隙度的不同范围进行岩石分区,使孔隙度不同范围的网格应用不同的相渗曲线。
13. 在SOLUTION部分如何进行模型初始化?需要提供参考深度、参考深度对应的原始压力、油水界面、油水界面处的毛管压力、气水界面、气水界面处的毛管压力和饱和压力或溶解油气比表。
如果油水界面为自由水面,则油水界面处的毛管压力为0。
ECLIPSE将计算原始条件下压力分布,油,气,水饱和度分别。
计算原始油,气,水储量及各分区储量。
14. 如何开始历史拟合?需要定义井口位置(WELSPECS);井轨迹和井射孔位置(COMPDAT);井的类型(WELSPECS),包括生产井和注水,注气井;井的实际产油量、产气量、产水量、井口压力和井底流压(WCONHIST)。
这部分数据量非常大,需要用ECLIPSE前处理软件SCHEDULE来完成。
15. 历史拟合阶段控制什么生产?可以定油量、气量、水量、液量和定油藏产量,井口压力和井底压力此时只用于与计算结果拟合,不会对生产进行控制。
16. 如何拟合井口压力?首先需要为每口井提供其垂直管流表(VFP),此表由前处理软件VFPi生成,描述不同井口压力在不同产量、含水、油气比条件下对应的井底压力。
然后在WCONHIST里为每口井设置其所用的VFP表,这样ECLIPSE就会在每一时间步输出井口压力,对比此压力与实际压力来完成历史拟合。
压力拟合可以有两种方式,一种是拟合在一定油、气、水产量和井口压力时不同井筒深度对应的压力,也就是压力剖面。
另一种是拟合对应不同产量和井口压力时的不同井底压力。
对于第一种方式,输入THP, tubing pressure是对应不同深度的压力剖面。
对于第二种方式,输入THP, tubing pressure就是BHP。
17. 如何定义注水和注气井?对于注水和注气井,历史拟合和预测阶段用不同的关键字。
在历史拟合阶段用WCONINJH,此时ECLIPSE控制地面注入量,而BHP和THP用于拟合,不用于控制。
在预测阶段用WCONINJE,此时注入井可以控制地面注入量,油藏注入量,BHP或THP控制以及井组控制。
18. 如何定义产量预测?用WCONPROD来定义产量预测。
可以定地面油、气、水、液量或油藏产量生产,也可定BHP、THP或井组产量生产。
要注意此时所有的数据项都起控制作用,比如井在定油量生产时,其产水量、产气量受WCONPROD上限控制,BHP和THP受WCONPROD下限控制。
19. 如何控制经济极限?可以用CECON、WECON或\GECON控制产层、井和井组最小产油量、产气量;最大含水、油气比。
在违背经济极限时可以采用一系列作业,比如关井、封层(WPLUG)、修井(WORKTHP)、气举(WLIFT)、换油管(WLIFT)、钻新井(QDRILL)等。
20. 如何定义井组生产?用GCONPROD定义井组生产。
井组生产可以定地面油、气、水、液量或油藏产量。
该井组可以受上一级井组产量控制或独立于上一级井组。
21. 如何定义井组注入?用GCONINJE定义井组注入。
井组可以定地面注入量、油藏注入量、地面注采比和油藏亏空。
22. 如何控制ECLIPSE计算时间步?通常情况下ECLIPSE缺省计算参数设置是最好的,所以一般情况下不需要修改ECLIPSE 计算参数设置。
在模型出现收敛性问题时可以用TUNING来修改ECLIPSE计算参数。
比如最大时间步、最小时间步、非线形收敛误差、物质平衡误差和最大时间截断误差等。
建议需要时只修改最大时间步,不要修改其他参数。
23. 什么是重启计算?历史拟合结束后需要进行产量预测,在进行产量预测计算时,不需要再从历史拟合开始时进行计算,可以直接从历史拟合结束的时间接着往下算。
这种应用上一次计算的输出作为下一次计算的初始输入计算就叫重启计算。
要进行重启计算,首先要定义重启时间步的输出。
可以用RPTRST来定义输出每时间步,每月,每年或每隔几月几年重启时间步文件。
如果采用多文件格式输出,则文件后缀为:.X0000, .X0001等,如果是单文件输出,则输出文件为.UNRST.重启文件记录了每时间步模型压力分布,饱和度分布,溶解油气比分布,同时也记录所有井的井位,射孔位置,产量控制。
不过重启文件没有记录垂直管流表(VFP表),所以在应用垂直管流表时要记住重启时需加上垂直管流表。
24. 如何进行重启计算?ECLIPSE有两种重启计算方法,快速重启和完全重启。
快速重启不需要重新处理RUNSPEC,GRID,EDIT,PROPS和REGIONS部分,如果在历史拟合计算时设了SA VE关键字,这些部分将保存在输出的SA VE文件中,这样在重启计算时不用再计算传导率。
完全重启需要重新处理RUNSPEC,GRID,EDIT,PROPS和REGIONS部分,要重新计算传导率。
完全重启步骤:在历史拟合部分用RPTRST要求输出重启文件。
在PRT文件中检查重启时间对应的重启文件步。
将历史拟合文件拷贝为重启文件。
删掉SOLUTION部分中的EQUIL和水体部分,用RESTART关键字设重启。
在SCHEDULE部分用SKIPREST或删掉所有历史拟合时间步。
如果有VFP表,要保留VFP表。