微信一键登录

科吉思石油论坛

搜索
查看: 3717|回复: 0
打印 上一主题 下一主题

tNavigator-Workflow-批量输出场图的统计数据

[复制链接]

136

主题

205

帖子

264

积分

中级会员

Rank: 3Rank: 3

积分
264
跳转到指定楼层
楼主
发表于 2020-5-26 16:26:12 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 乔聪颖 于 2020-5-28 09:41 编辑

在数值模拟领域,从处理对象的角度来看,后处理工作一般围绕曲线(graph)和场图(property)展开。大多数数值模拟器中均具备基本处理功能,能够满足工程师的日常工作需求。然而,需求总是不断变化的,当更高级的应用需求被提出来的时候,解决方案也需要紧紧跟上,有时,甚至超前的解决方案可以引领需求的进步。
在tNavigator中,针对graph的后处理已经非常先进了,尤其Graph Calculator将graph的后处理提升到新的高度;针对property的后处理,工程师几乎可以凭借Cut功能“为所欲为”。

不过,如同“没有绝对安全的系统”,永远也没有完全满足工程师需求的工具。Cut功能虽然灵活、便捷、强大,但面对批量化流程处理时则有些力不从心。别急,tNavigator中的Workflow功能正可以弥补这一不足。
本次以“输出关于属性的统计数据”为例,介绍下Workflow的应用。
--------------------------------
【案例描述与思考】
统计不同分区的属性参数,如平均(最大、最小)含气(油、水饱和度)、平均压力、储量等任意property的信息,而且每个时间步都要有数据。

通常情况下,一个数模模型中会包含个位数的分区数量,通过Cut工具可以轻易筛选不同分区的网格,通过Statistics功能手工记下相关统计信息;由于要得到所有时间步的数据,可以使用更加便捷的工具User Arithmetic,生成曲线数据,并非难事。
但是,当面对数百个小层分区时,则心中一凛,瞬间表示不想记数到手抖。。。

【批量化解决方案-Workflow】
在案例中有两个关键点:分区数量大+所有时间步,其余提取数据的操作基本是类似的,这就很容易联想到使用工作流的方式来解决。

基本功能:
Workflow中有一个功能“Createa Table from Property”,允许以分区(分区本质上是属性场,这里也支持自定义属性场)的形式创建报告表(table):

table中的内容可以编辑:

批量处理:
既然基本功能已经具备,只需依据时间步循环处理即可:

运行Run Workflow后,可以在table中查看统计数据:

【拓展-自定义分区的数据统计】
在上面的操作中,针对的是已经进行分区设置的模型,若是模型中并没有设置好分区或者想统计任意自定义区域的property数据,该如何处理呢?
在Model Designer当中,可以自定义属性场,作为分区的依据:

End.
参考链接:
《tNavigator-Python解释器及第三方库安装指导》
《tNavigator-Python入门(基本数据类型、程序控制结构以及函数式编程)》
《tNavigator-Python API - Graph Calculator解读》
《tNavigator-Python API - PythonAction解读》

其他参考链接:
《tNavigator-Workflow-批量输出曲线》
《tNavigator-Python高级应用汇总》
------------------------------------------------
更多tNavigator技巧及应用,欢迎加入tNavigator技术交流QQ群:777385939。
更多石油行业前沿资讯与应用,请关注科吉思石油:
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-24 18:10 , Processed in 0.359375 second(s), 32 queries .

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

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