Skip to main content

Calling Completor® for Ensemble Simulations

This is a step by step on how to run Completor® as part of a ERT workflow.

Running Completor® from ERT

This is a recommended practice on running Completor through ERT workflow for ensemble simulations. ERT is a workflow manager where it will run all preparations of model generation, running reservoir simulation, up to post-processing. It is more practical to run from ERT to debug since ERT will give detailed messages on which point that it failed.

Completor as hook_workflow within ERT

Completor can be called from ERT config file. It runs using the FORWARD_MODEL functionality in ERT. As requirements, you need to have ERT installed in your machine within the same environment. Then Completor will be connected into ERT with a forward model called run_completor.

The syntax to call this as part of ERT workflow is:

FORWARD_MODEL run_completor(<CASE>=<case_file_name>, <INPUT_SCH>=<input_schedule_name>, <OUTPUT_SCH>=<output_schedule_name>)

Pay attention to the file location of the output from the pre-processor job. This file is needed as input to Completor.

Completor with install_custom_job with ERT

In case that ERT and Completor are failed to be connected within the hook_workflow. There is an alternative way to call ERT using install_custom_job functionality in ERT.

The steps are as follows:

  1. Make a file in the ERT directory to be called run_completor.sh that contains this script
    #!/bin/bash
    completor -i $1 -s $2 -o $3
  2. Create another file to call this custom job as run_completor that contains this script and adjust the EXECUTABLE location accordingly.
    #!/bin/bash
    STDERR run_completor.stderr
    STDOUT run_completor.stdout

    EXECUTABLE ../scripts/run_completor.sh
    ARGLIST <CASE> <INPUT_SCH> <OUTPUT_SCH>
  3. Add line in the ERT workflow containing
    INSTALL_JOB	run_completor			../../bin/jobs/run_completor

This will create a manual run_completor script similar with previous step.