Everest configuration¶
Everest is configured via a yaml file, using a set of pre-defined keywords that are described in more detail in the section Keyword reference.
Configuration variables¶
In addition to the standard yaml syntax, Everest also supports variables that
are replaced with their value when referred in the following way:
r{{variable}}. For instance in the following snippet, the variable tol
is replaced by its value:
optimization:
algorithm: optpp_q_newton
convergence_tolerance: r{{tol}}
The value of a variable can be set in three different ways:
In the
definitionssection in the yaml file. For instance, to define a variabletolwith a value of 0.0001, include this in thedefinitionssection:definitions: tol: 0.0001
Everest pre-defines the following variables:
realizationEvaluates to the string “<GEO_ID>”, which is replaced by the realization number during execution of the forward model.
configpathThe fully qualified path to the directory that contains the configuration file.
runpath_fileEvaluates to “<RUNPATH_FILE>”, the fully qualified name of the runpath file that is saved before each batch is started.
eclbaseEvaluates to “<ECLBASE>”, used by ERT to set the basename for ECLIPSE simulations.
These variables do not need to be defined by the user, although their values can be overridden in the
definitionssection. However, this is not recommended for therealizationentry, and Everest will produce a warning when this is attempted.Variables with a name of the form
os.ENVIRONMENT_VARIABLE_NAMEcan be used to access environment variables. For instance, the variabler{{os.HOSTNAME}}will be replaced by the contents of the environment variableHOSTNAME.
Note
Variables are a distinct feature from the yaml keywords defined in section Keyword reference. The final yaml file used by Everest is produced by pre-processing the config file to replace all variables with their value. It is possible to define variables that have the same name as a keyword, but this should be done sparingly to avoid confusion.