def getCustomKWResult(self, target_case_name, iens, keyword): ensemble_config = self.ert.ensembleConfig() if not self.isRealizationFinished(iens): raise createFault( UserWarning, "The simulation with id: %d is still running." % iens) if keyword in ensemble_config: enkf_config_node = self.ert.ensembleConfig().getNode(keyword) node = EnkfNode(enkf_config_node) if not node.getImplType() == ErtImplType.CUSTOM_KW: raise createFault(UserWarning, "The keyword is not a CustomKW keyword.") custom_kw = node.asCustomKW() fs = self.ert.getEnkfFsManager().getFileSystem(target_case_name) node_id = NodeId(0, iens) if node.tryLoad(fs, node_id): config = custom_kw.getConfig() result = {} for key in config.getKeys(): result[key] = custom_kw[key] return result else: raise createFault( UserWarning, "Unable to load data for iens: %d kw: %s for case: %s" % (iens, keyword, target_case_name)) else: raise createFault(KeyError, "The keyword: %s is not recognized" % keyword)
def getGenDataResult(self, target_case_name, iens, report_step, keyword): ensemble_config = self.ert.ensembleConfig() if not self.isRealizationFinished(iens): raise createFault( UserWarning, "The simulation with id: %d is still running." % iens) if keyword in ensemble_config: enkf_config_node = self.ert.ensembleConfig().getNode(keyword) node = EnkfNode(enkf_config_node) if not node.getImplType() == ErtImplType.GEN_DATA: raise createFault(UserWarning, "The keyword is not a GenData keyword.") gen_data = node.asGenData() fs = self.ert.getEnkfFsManager().getFileSystem(target_case_name) node_id = NodeId(report_step, iens) if node.tryLoad(fs, node_id): data = gen_data.getData() return data.asList() else: raise createFault( UserWarning, "Unable to load data for iens: %d report_step: %d kw: %s for case: %s" % (iens, report_step, keyword, target_case_name)) else: raise createFault(KeyError, "The keyword: %s is not recognized" % keyword)