Eclipse_office教程练习5:流线型模拟
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
练习5:流线型模拟
目标:
Eclipse Office可以用作前处理器、项目管理器和流线法模拟器的后处理器。
该教程的设计,既是为了介绍流线型模拟,也是为了演示eclipse office如何可以用来创建数据集和可视化frontsim的模拟结果。
步骤
一、流线型模拟
二、输入已有的frontsim数据
三、数据管理
四、运行管理
五、结果观察
一、流线型模拟
流线可以用来跟踪瞬时的流场,在油藏工程中被用作一个定性的工具来可视化补获区内的井和流态。
流线型模拟器,比如frontsim,允许你将流线作为典型油藏模拟工程的一部分。
流线模拟可以补充传统的有限差分模拟。
对于非常大的模型,流线模拟一般用作有限差分模拟的替代。
对这些方案,Frontsim的一个最大优势是它的速度。
对比有限差分法,流线模拟器只需要很少的压力解。
另外,其位移计算是一维的,因此求解起来就很快。
流线法造成的数值弥散很少,而且没有网格定向效应。
这种效应在有限差分解的过程中能引起误差。
因此,对于特定的油藏模拟应用,流线法与有限差分法相比有很多的优势。
理解流线模拟的优势和不足很重要,这样才能合理地使用它。
Frontsim可以:
模拟非常大的模型;
模拟用角点几何定义的复杂地质模型;
可视化油藏的流体流动过程(突破渠道、注入/生产井之间的对应、阻渗区)。
一般来说,frontsim比较适合大的油藏模型,其流体的流动由地质非均质性控制。
它也比较适合于分析一个油藏的多重地质统计。
这一点,它比平行模拟parallel simulation有优势。
Parallel simulation只适合分析一个模型。
Frontsim不像eclipse一样含有整套的井管理工具,因此对于需要精确模拟的详细井管理,它并不适合。
二、输入已有的frontsim数据
对于2000A版本,frontsim 关键字做了一些改变,以使它们和eclipse的关键字比较相似。
在2004A版本中,frontsim和eclipse office也能够支持旧版本的关键字。
1 在一个合适的位置创建工作目录,并复制/ecl/2006a/office/tutorials/example5/FRONTSIM.DATA到该目录。
2 启动eclipse office
3 从菜单条选择File | New Project
4 命名该工程为TUTORIAL5(路径选第一步的目录)
5 case/import…,选择FRONTSIM.DATA
6 选择file/save project
该工程的目的是为了模拟一个非均质油藏的油水流动。
本教程的模型比较小,大约7000个网格,但是比较适合通过eclipse office演示数据流flow data。
大多数典型的frontsim模型都非常大(105-106个网格)。
尽管和一个有限差分模拟器相比,这些大的模型需要较少的时间来模拟,但是仍然不适合作为一个教程。
三、数据管理
这部分是为那些对eclipse office data manager不太熟悉的用户设计。
如果你已经使用过eclipse工程的data manager,该部分可以作为一个简单的回顾,熟悉最基础的特征。
在教程的这一部分,会教你:
查看和编辑关键数据;
在2D和3D观察器中可视化关键字和初始值;
允许进入手册页面和在线帮助。
这是data manager中最有用的一些功能。
既然你已经输入原始数据集到eclipse office中,你可以使用data manager来查看和编辑这些数据。
1 在eclipse office面板中,选择View | Display Model in DM
2 在eclipse office面板中,选择View | Display Model in Grid Section
3 选择Module | Data Manager打开data manager module(DMM)
Data manager中的区域视图展示出该模型的16口井和4个断层。
这个面板可以获得数据
系列的所有部分。
应该注意的是,每次只能打开和编辑一个部分。
4 选择DMM: Case Definition
Frontsim中的方案定义远比eclipse的简单。
在General选项,需要定义模拟开始日期、模型尺寸、运行模式和单位。
在Options选项中,相和解法必须选择。
注意:对frontsim,唯一有效的运行模式是normal和restart。
从case definition section,你可以看到:
General:
模拟开始日期1 Jan 2000
网格尺寸20*29*12
单位Field
运行模式Normal
Options:
目前相态是Oil和Water。
5 单击OK,以关闭case definition section。
6 选择DMM: Grid来打开Grid Section。
因为在这部分我们选择展示模型(见第2步),Grid Section的主窗口包含网格的一个区域视图。
对于非常大的模型,关闭这个观察器是很明智的,因为这些网格的绘制需要花费很长时间。
7 选择Subsection | Grid Keywords
8 在Grid Section Keywords,选择Edit | Explore Keywords或
该面板显示了Frontsim模型中Grid section的所有有效关键字。
你可以在keywords和description之间切换。
在当前的数据集中,所有关键字都标有*。
9 在Explore Keywords中选择Action | Go to Help Pages
10 使用T oggle Desc/Keys键以显示关键字
11 从关键字列表中选择NTRNSAVE,查看手册页面中关于frontsim-specific关键字。
注意:为了获取手册和在线帮助页面,必须按照Adobe Frame Viewer。
而且其安装途径也必须正确,以确保FrameViewer可以自动启动。
如果你不能获取手册页面,请查看版本注释。
12 在Explore Keywords中选择close
13 在Grid Keyword Section中选择File | Close
14 在Grid Section中选择GridView | From Keywords
15 询问是否写一个GRID文件时,选择NO
16 选择GridView | 2D
17 在2D Viewer中,选择View | Options
18 在Edit View Options中选择Color Fill | Initial Property | PORO
注意:2D Viewer可以用来编辑关键字。
详细内容参考教程3:构建一个PEBI模拟网格。
19 关闭2D Viewer和grid section
20 选择DMM: PVT
21 在DMM: PVT面板中选择Section | Keywords
注意:PVT section和SCAL section的主面板是空白的。
这是因为frontsim没有包含eclipse-specific的许多特征,比如API跟踪或endpoint sacling。
22 选择View | Plot或来显示一个线条图中的PVDO数据
23 关闭该面板
24 再次使用Explore keywords来查看所有有效的frontsim pvt 关键字
25 取消选择Valid Keywords Only,单击apply
现在所有的frontsim pvt关键字都已显示出来。
如果你试图插入一个无效的关键字,就会出现一个错误信息提醒。
26 关闭pvt section。
SCAL section和pvt section非常相似。
打开并操作这一部分的步骤类似于上面的21-26步。
27 选择DMM: Initialization
28 选择Keyword Types | Miscellaneous
插入关键字RPTSOL,生成一个初始RESTART文件。
(可以切换显示keywords或descriptions,view/keywords或view/descriptions)
选择restarts/initial restart
单击apply
29 选择Initialize Model | Run Simulation
30 询问是否保存include文件,yes
这个选项创建了包含所有关键字的一套数据,除了schedule section的关键字。
选择这一选项,为frontsim创建一GRID、INIT和初始REST ART文件。
31 选择Initialize Model | 3D,查看该模型中油、水的初始形态。
32 关闭initialization section。
33 选择DMM: Schedule section
34 选择View | Keywords,查看第一个时间步的所有关键字。
注意前两个关键字RPTLINFS 和TUNEFSSA。
这些是frontsim特有的关键字。
第一个控制从模拟器到SUMMARY文件的输出。
第二个控制frontsim中压力和饱和度解的调试。
注意:TUNEFSPR是frontsim一个非常重要的特有关键字。
该关键字决定了压力场更新的频率。
不像传统的有限差分模拟器,你必须自己决定压力的更新频率。
35 选择关键字TUNEFSSA
36 改变starting point for streamline tracer为choose
单击apply
37 关闭schedule section,并保存
38 关闭data manager
注意:对于frontsim方案,summary section不可用。
这是因为frontsim已经输出了一套预定的summary vectors。
目前,你无法控制vectors列表。
讨论:上面的步骤是为了使新用户熟悉eclipse office中的data manager。
这一部分的许多功能没有被覆盖,因为它们在别的教程中。
四、运行管理
Frontsim的运行管理器和eclipse的多少有点不同。
这是因为frontsim不能与PVM进行交互作用,提交远程工作。
在该教程的这一部分,将会给你以下指令:
控制frontsim模拟器的数据输出;
使用不同的运行环境提交运行;
创建和运行重启数据集。
1 在eclipse office中,选择Module | Run Manager
2 对Output File Type选择Unified单选按钮
注意:frontsim的有效运行环境是Non-PVM Local、Non-PVM Remote、External Job
and LSF。
3 在Environment下拉菜单中选择Non-PVM Local
注意:不行eclipse,frontsim不支持格式输出。
如果你需要查看格式SUMMARY文件或RESTART文件,使用宏指令$convert(PC)或@convert(UNIX)。
在本机上运行模拟:
4 选择Submit | Runs或开始模拟
在远程机上运行模拟:
5在Environment下拉菜单中选择Non-PVM Remote
6 设置Add Simulation Resources为1
7 选择Options | Run Environment,从远程机中插入相关数据
8 在Run Environment面板中选择apply
9 选择Submit | Runs或开始模拟
注意:如果你需要停止或暂停模拟,使用Monitor | Control Simulations或Monitor | Kill Simulations
·当模拟结束时,Log窗口中会出现一个信息。
10 关闭run manager
添加一个重启运行
给frontsim添加一个RESTART方案需要一些注意。
这是因为frontsim不能生成RSSPEC 文件。
RESTART文件是由模拟创建的,其基本的索引文件是RSSPEC文件。
Eclipse office 需要RSSPEC文件以便知道哪一时间步对于重启是有效的。
下面的部分会告诉你如何为frontsim运行创建一个RSSPEC文件,并且告诉你如何在
eclipse office case manager中添加一个RESTART方案。
11 打开Result Viewer
12 选择Options | Create Restart index file
13 在对话框中选择TUTORIAL5_FRONT.UNRST
Eclipse office应该会提醒你正在生成一个RSSPEC文件。
14 关闭results viewer
15 在eclipse office主窗口中选择Case | Add Case | Restart
16 从Select Report Step to Restart中选择一个时间步,单击OK
Eclipse office现在创建了一个重启数据集,从所选report步开始。
五、结果观察
从一个frontsim模拟中观察结果与一个传统有限差分模拟器多少有点不同。
你现在可以使用两种数据:grid数据和streamline数据。
这两种数据在解释模拟结果时都是有用的。
这一部分主要是为了描述3D Viewer中的主要功能,以显示streamline数据。
欲知2D and 3D Viewers的详情,请参考其它教程。
加载grid、solution、streamline
1 在eclipse office主窗口中确保基本方案高亮(红色)。
2 选择Module | Result Viewer
3 选择File | Open Current Case | Grid
4 在Extract/Load Solutions中选择Load,输入INIT和RESTART数据
5 选择View | 3D
6 在3D Viewer中,选择File | Import Streamlines
7 为目前的网格加载streamline,选择OK
8 选择View | Object Appearance,隐藏grid(在visibility下拉菜单中选择hide)
单击apply。
提示:你也可以Hide the grid通过取消选择两个图标
下面的部分将会详细告诉你如何操作streamline display。
显示流线属性
以一种meaningful way来显示streamline属性的第一步是对color legend切换对象,从grid属性到streamline属性。
9 选择Scene | Color Legend | Object for Color Legend
10 在Object for Color Legend中由grid切换到streamline,关闭
11 选择View | Timesteps...,选中第一个时间步,或者单击移动到第一个时间步关闭
12 选择下一时间步,可以看到一些流线
13 选择Scene | Streamlines | Streamline display
Streamline Display面板被分为三个目录页面。
①Attributes
这个部分允许你选择在streamline上显示的属性。
如果没有选择属性,你可以编辑该部分流线的默认颜色。
②Filtering
该部分允许你使用一个sample factor来显示任意第n个streamline,或者与一口特
定井相关的所有流线。
在井列表中,可以一次选择几口井。
③Thresholding
该部分允许你在一个定义的范围内查看流线的一部分。
同时,阈值有多重属性也是可能的。
14 在Attributes section中选择ID_BEG给对应的注水井streamline涂色。
Apply Color Legend的目前属性是ID_BEG。
井列表的编号取自data set中定义WELSPECS的顺序。
在这个模型中,有16口井。
列表中的well 17代表没有从一口注水井开始的流线。
这些流线是由于流体压缩性和边界条件而产生的。
在第一个时间步,很明显,WELL 6(HALITE-H)是一口注水井,严重影响着流体的移动。
几口生产井,像JASPER-D和PHLOGOPI正从油藏的一些区域生产流体,并没有受到HALITE-H的影响。
下图显示了模拟的第一个时间步中被注入井染色的流线。
大多数流线在一个活动的注水井HALITE-H周边开始。
这些流线显示为蓝色。
一些生产井没有被注水井影响。
15 为了显示更少的流线,在Filtering中设置Every Nth为2。
单击apply,查看相隔的流线。
流线也可以用来可视化注水井和生产井之间的关联。
16 在Streamline Display中,右键单击,打开Auto Apply
17 在Filtering中选择Select All Wells
18 从3D 窗口中选择View | Timesteps
19 选择第五个时间步
从这个视图(下图)可以很容易看出哪口注水井和生产井关联。
比如,JASPER-D生产的流体是因为HALITE-H、QUARTZ、ANHYDRIT井的注水。
提示:为了使图中的井标签显示更清楚,ID_BEG ColorMap Editor选项中的Edit Step | Edit Color被使用。
(scene/color legend/color legend editor/edit…/Edit Color)
流线属性可以通过播放几个时间步而看起来很流畅。
下面几步将举例说明如何使注水井的水线移动变得可动起来。
该例需要使用thresholding。
20 在Streamline Display中的Attributes部分,选择SWAT作为属性
21 单击播放图标,查看所有时间步的水饱和度变化。
注意:在第三个和第五个时间步,有新的注水井开始运行。
查看油藏中哪些部分被水完全波及而只留下残余油是很有用的。
在这个模型中,油在0.147的饱和度下便不可移动了。
因为只有两相存在,在残余油区,水的饱和度阈值就大于或等于0.853。
22 使用Timesteps恢复到第一个时间步。
23 在Streamline Display中右键单击,关闭Auto Apply。
Apply。
24 在Thresholding部分,从Streamline Properties列表中选择SWAT
25 单击,移动SWAT到Selected Properties列表
26 确保选中Selected Properties列表中的SWAT
27 设置SWAT的最小值为0.85,最大值为0.95
28 单击Apply
29 单击播放图标,查看所有时间步的水饱和度移动。
30 在最后一个时间步,你可以看到油藏中被注水井完全波及到的区域(下图)
另外一条在frontsim中可以使用的有用流线信息是time-of-flight。
Time-of-flight能够捕获信息,关于一个油藏中流体的移动速度到底有多快。
在frontsim中,这个信息被两个quantities描述。
这两个quantities可以在3D Viewer中绘制成图,
TIME_BEG(time-of-flight) 和TTD (time-to-destination).
下面的例子可以显示当注水井的水在一口临近生产井突破时,TIME_BEG如何被用来可视化该过程。
31 在Streamline Display中的Attributes选项中,选择Line Color/TIME_BEG
32 在Filtering中选择QUARTZ-A
33 单击Apply
注意:QUARTZ-A是一口注水井,在第三个时间步01 July,2001开始注水。
34 在Timesteps中选择第三个时间步
TIME_BEG的默认范围太大了,因此调整到与模拟合适的范围。
35 双击color legend或选择Scene | Color Legend | Color LegendEditor
36 单击Edit…,在Min/Max框中选中Override,,设置max为2000
37 单击Apply
38 放大QUARTZ-A井的近井区(见下图)
很明显注水井QUARTZ-A正在朝三口生产井推进:JADE-A4, DOLOMITE, and JASPER-D.TIME_BEG仅仅是从那个时间步沿着流线所达到一定距离所需时间中的一丁点儿time。
因此,在上图中,1 Jan 2002注入的水需要2000天才能达到流线的红色部分。
在第三个时间步中,反映streamline形态的TIME_BEG表明,水在JADE-A4突破非常快。
在不到800天内,突破就发生在下一口井DOLOMITE。
如果注水和生产方式保持相似,在这次模拟结束的时候,水不太可能突破到井JASPER-D。
一定要记得,这个流线模式只反映该时间步下的条件。
通过剩下时间步的播放,可以看出该模拟的流线形态有何不同。
39 单击播放图标,查看所有时间步的TIME_BEG
40 对所有的时间步,确定到JADE-A4和DOLOMITE的运行时间同第三个时间步一致
生产井JADE-A4 and DOLOMITE的含水率数据可以证实这个3D view。
更有趣的是,你可以为JASPER-D做出预测。
对于JASPER-D所给定的TIME_BEG数据,好像从QUARTZ-A流出的水应该在大约3000天的时候能够突破该井。
由HALITE-H流出的水应该在10000天以后才能到达。
对该口井添加更多的时间步,可以证实这个预测。
讨论:
该教程演示了eclipse office在处理frontsim模拟时的一些基本功能。
这个3D可视化部分着重强调了流线数据可以用来观察流体流动途径的不同方式。