本文整理汇总了Python中ecl.summary.EclSum.get_interp_vector方法的典型用法代码示例。如果您正苦于以下问题:Python EclSum.get_interp_vector方法的具体用法?Python EclSum.get_interp_vector怎么用?Python EclSum.get_interp_vector使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ecl.summary.EclSum
的用法示例。
在下文中一共展示了EclSum.get_interp_vector方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: EclCase
# 需要导入模块: from ecl.summary import EclSum [as 别名]
# 或者: from ecl.summary.EclSum import get_interp_vector [as 别名]
class EclCase(object):
def __init__(self, case):
self.case = case
self.grid = None
self.restart = None
self.init = None
self.summary = None
self.loadSummary()
def __contains__(self, key):
return key in self.summary
def keys(self):
return self.summary.keys()
def wells(self):
return self.summary.wells()
def load_summary(self):
self.summary = EclSum(self.case)
def start_time_equal(self, other):
if self.summary.getDataStartTime() == other.summary.getDataStartTime():
return True
else:
return False
def end_time_equal(self, other):
if self.summary.getEndTime() == other.summary.getEndTime():
return True
else:
return False
def cmp_summary_vector(self, other, key, sample=100):
if key in self and key in other:
days_total = min(self.summary.getSimulationLength(), other.summary.getSimulationLength())
dt = days_total / (sample - 1)
days = [ x * dt for x in range(sample) ]
ref_data = self.summary.get_interp_vector(key, days_list=days)
test_data = other.summary.get_interp_vector(key, days_list=days)
diff_data = ref_data - test_data
ref_sum = sum(ref_data)
diff_sum = sum(abs(diff_data))
return (diff_sum, ref_sum)
else:
raise KeyError("Key:%s was not present in both cases" % key)