请选择 进入手机版 | 继续访问电脑版

微信一键登录

科吉思石油论坛

搜索
查看: 3156|回复: 0

tNavigator-PythonAction-生产动态自动控制

[复制链接]

136

主题

205

帖子

264

积分

中级会员

Rank: 3Rank: 3

积分
264
发表于 2020-3-9 16:02:33 | 显示全部楼层 |阅读模式
本帖最后由 乔聪颖 于 2021-2-19 17:07 编辑

问题描述:油气藏开发时一般会先开发较深的层位,在开采到一定程度时关闭射孔,再开发较浅的层位。由于实际生产中,每口生产井的产量变化不一致,如何实现批量控制射孔层位的开关?
解决方案:
通过tNavigator中的独特功能-PythonAction来实现。

随着石油领域的数字化、自动化的不断完善与发展,越来越多的智能设备大量应用于油田生产,高效的程序化控制会越来越普及。
生产动态的自动控制是数值模拟中的一项强大的功能,可以实现生产/注入井、井组的自动化控制,如射孔层位的自动调整、依据含水率实现转注等复杂功能。另外,tNavigator中独特的时变模拟功能就是基于此实现的(参考微文《tNavigator储层物性参数时变模拟完整版(ACTIONW配合ARITHMETIC使用)》)。

传统手段一般是通过类似UDQ+Action的方式来实现,功能强大,几乎所有在Schedule中的参数均可通过UDQ+Action来控制。(向提出、开发该功能的人致敬!)
但是UDQ+Action的方式主要有两个较大的弱点:
1、功能有一定的局限性,如无法定义列表型的数据;
2、操作繁琐,定义复杂,语法理解起来有一定的难度
这些局限性极大影响功能的拓展与应用。

tNavigator不仅支持UDQ+Action方式,还推出了一项特殊功能PythonAction。
随着Python在tNavigator中的应用不断深入与拓展,生产动态控制功能的实现也可以通过Python来完成。Python语言的特性与tNavigator API中的函数相结合,可以尽情发挥你的想象力。
  • PythonAction的特点与优势:
  • Python完善的语法和逻辑
  • 丰富的API
  • 支持标准助记符-Summary
  • 创建和引用自定义曲线(相当于UDQ,但是更优化)
  • 支持第三方库
  • 自定义输出日志信息
a.png

------------------------------------------------
本次以控制井的射孔层位为例,介绍下PythonAction的基础应用。
功能需求:假定当产气井的产量低于10000时,关闭低部位的射孔,开启高部位的射孔。
代码解析:
b.png
结果分析:
c.png
End.
------------------------------------------------
PythonAction是Python在tNavigator中的又一重要功能,有任何需求、建议,欢迎留言!
UDQ+Action- 致敬经典。若是有兴趣了解的话,可以在文末留言,达到一定需求的情况下,我们会整理一篇相关微文!

更多tNavigator技巧及应用,欢迎加入tNavigator技术交流QQ群:777385939。
更多石油行业前沿资讯与应用,请关注微信公众号“科吉思石油技术”!
1.png


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|服务支持:DZ动力|科吉思石油技术咨询有限公司 ( 京ICP备15057753号

GMT+8, 2024-3-28 17:17 , Processed in 0.280510 second(s), 34 queries .

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表