def _evaluate_ensemble(enkf_main: EnKFMain, run_context: ErtRunContext): """ Launch ensemble experiment with the created config """ queue_config = enkf_main.get_queue_config() job_queue = queue_config.create_job_queue() enkf_main.getEnkfSimulationRunner().runSimpleStep(job_queue, run_context)
def test_run_context_from_external_folder(self): with TestAreaContext('enkf_test') as work_area: work_area.copy_directory(self.case_directory_custom_kw) res_config = ResConfig('snake_oil/snake_oil.ert') main = EnKFMain(res_config) fs_manager = main.getEnkfFsManager() fs = fs_manager.getCurrentFileSystem( ) mask = BoolVector(default_value = False , initial_size = 10) mask[0] = True run_context = main.getRunContextENSEMPLE_EXPERIMENT( fs , mask ) self.assertEqual( len(run_context) , 1 ) job_queue = main.get_queue_config().create_job_queue() main.getEnkfSimulationRunner().createRunPath( run_context ) num = main.getEnkfSimulationRunner().runEnsembleExperiment(job_queue, run_context) self.assertEqual( num , 1 )
def _create_runpath(enkf_main: EnKFMain) -> ErtRunContext: """ Instantiate an ERT runpath. This will create the parameter coefficients. """ result_fs = enkf_main.getEnkfFsManager().getCurrentFileSystem() model_config = enkf_main.getModelConfig() runpath_fmt = model_config.getRunpathFormat() jobname_fmt = model_config.getJobnameFormat() subst_list = enkf_main.getDataKW() run_context = ErtRunContext.ensemble_smoother( result_fs, None, BoolVector(default_value=True, initial_size=1), runpath_fmt, jobname_fmt, subst_list, 0, ) enkf_main.getEnkfSimulationRunner().createRunPath(run_context) return run_context
def test_run_context_from_external_folder(self): with TestAreaContext("enkf_test") as work_area: work_area.copy_directory(self.case_directory_snake_oil) res_config = ResConfig("snake_oil/snake_oil.ert") main = EnKFMain(res_config) fs_manager = main.getEnkfFsManager() fs = fs_manager.getCurrentFileSystem() mask = [False] * 10 mask[0] = True run_context = main.getRunContextENSEMPLE_EXPERIMENT(fs, mask) self.assertEqual(len(run_context), 10) job_queue = main.get_queue_config().create_job_queue() main.getEnkfSimulationRunner().createRunPath(run_context) num = main.getEnkfSimulationRunner().runEnsembleExperiment( job_queue, run_context) self.assertTrue( os.path.isdir( "snake_oil/storage/snake_oil/runpath/realization-0/iter-0") ) self.assertEqual(num, 1)