|
本帖最后由 乔聪颖 于 2020-11-26 14:02 编辑
本次给大家带来Graph Calculator的一个小应用案例。
------------------------------------------------
一、需求
统计某个层位有哪些井射孔。
二、解析
其实这个需求很容易理解,每口井都有对应的射孔网格,每个射孔网格具有坐标属性(i,j,k),只要将数据统计出来即可。
难点在于如何提取数据。
另外,若是深究,还会涉及到射孔网格变化的问题,我们在拓展部分讨论。
三、实现
Graph Calculator中,可以提取所有井,每口井又可以提取所有射孔网格,每个射孔网格都具有ijk属性,所以,只要嵌套两个循环就能轻松实现:
- # specify layer to count
- layer = 30
- # store the name of specific wells
- results = []
- # loop
- for w in get_all_wells():
- for c in w.connections:
- if (c.k == layer) & (c.k not in results):
- results.append(w.name)
- # output
- print(len(results))
- print(results)
复制代码
四、拓展
上面的操作会对每口井的所有射孔网格均进行统计,倘若在不同的时间步,射孔网格发生变化了呢?只需统计某一个时间步下的数据呢?
其实很简单,只需要多考虑下connection网格的状态以及时间步即可。
具体不做演示,有兴趣的话请自行尝试。
提示:
End.
------------------------------------------------
更多tNavigator技巧及应用,欢迎加入tNavigator技术交流QQ群:777385939。
更多石油行业前沿资讯与应用,请关注科吉思石油:
|
|