Keyword reference¶

The keywords that are recognized by the Everest configuration system are described below. Each keyword is followed by its data type in brackets, usually some basic type. It may also be a list, which indicates that the keyword can be repeated as a yaml list. If a keyword is required, this is also indicated in brackets after the keyword name.

EverestConfig

EverestConfig

Type: object
No Additional Properties

Controls

Type: array

Defines a list of controls.
Controls should have unique names each control defines
a group of control variables

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

ControlConfig

Type: object
No Additional Properties

Name

Type: string

Control name

Type

Type: enum (of string)

Only two allowed control types are accepted

  • well_control: Standard built-in Everest control type designed for field optimization

  • generic_control: Enables the user to define controls types to be employed for customized optimization jobs.

Must be one of:

  • "well_control"
  • "generic_control"

Variables


List of control variables

Type: array
No Additional Items

Each item of this array must be:

variable control

Type: object
No Additional Properties

Name

Type: string

Control variable name

Control Type

Default: null

The type of control. Set to "integer" for discrete optimization. This may be
ignored if the algorithm that is used does not support different control types.

Type: enum (of string)

Must be one of:

  • "real"
  • "integer"
Type: null

Enabled

Default: null

If True, the variable will be optimized, otherwise it will be fixed to the
initial value.

Type: boolean
Type: null

Auto Scale

Default: null

Can be set to true to re-scale variable from the range
defined by [min, max] to the range defined by scaled_range (default [0, 1]).

Type: boolean
Type: null

Scaled Range

Default: null

Can be used to set the range of the variable values
after scaling (default = [0, 1]).

This option has no effect on discrete controls.

Type: array

Must contain a minimum of 2 items

Must contain a maximum of 2 items

No Additional Items

Tuple Validation

Item at 1 must be:
Type: number
Item at 2 must be:
Type: number
Type: null

Min

Default: null

Minimal value allowed for the variable

initial_guess is required to be greater than this value.

Type: number
Type: null

Max

Default: null
Max value allowed for the variable

initial_guess is required to be less than this value.

Type: number
Type: null

Perturbation Magnitude

Default: null

Specifies the perturbation magnitude for this particular variable.
This feature adds flexibility to combine controls into more logical
of structures at the same time allowing the variable to contain time (
how long rate applies for) & value (the actual rate).

NOTE: In most cases this should not be configured, and the default value should be used.

Type: number

Value must be strictly greater than 0

Type: null

Default: null

The backend used by Everest for sampling points

SamplerConfig

Type: object
No Additional Properties

Backend

Default: null

(deprecated) The backend used by Everest for sampling points.

The sampler backend provides the methods for sampling the points used to
estimate the gradient. The default is the built-in 'scipy' backend.

Type: string
Type: null

Backend Options

Default: null

Specifies a dict of optional parameters for the sampler backend.

This dict of values is passed unchanged to the selected method in the backend.

Type: object

Additional Properties of any type are allowed.

Type: object
Type: null

Method

Type: string Default: "norm"

The sampling method or distribution used by the sampler backend.

Shared

Default: null

Whether to share perturbations between realizations.

Type: boolean
Type: null
Type: null

Initial Guess

Default: null

Starting value for the control variable, if given needs to be in the interval [min, max]

Type: number
Type: null

Index

Default: null

Index should be given either for all of the variables or for none of them

Type: integer

Value must be greater or equal to 0

Type: null
Type: array
No Additional Items

Each item of this array must be:

ControlVariableGuessListConfig

Type: object
No Additional Properties

Name

Type: string

Control variable name

Control Type

Default: null

The type of control. Set to "integer" for discrete optimization. This may be
ignored if the algorithm that is used does not support different control types.

Type: enum (of string)

Must be one of:

  • "real"
  • "integer"
Type: null

Enabled

Default: null

If True, the variable will be optimized, otherwise it will be fixed to the
initial value.

Type: boolean
Type: null

Auto Scale

Default: null

Can be set to true to re-scale variable from the range
defined by [min, max] to the range defined by scaled_range (default [0, 1]).

Type: boolean
Type: null

Scaled Range

Default: null

Can be used to set the range of the variable values
after scaling (default = [0, 1]).

This option has no effect on discrete controls.

Type: array

Must contain a minimum of 2 items

Must contain a maximum of 2 items

No Additional Items

Tuple Validation

Item at 1 must be:
Type: number
Item at 2 must be:
Type: number
Type: null

Min

Default: null

Minimal value allowed for the variable

initial_guess is required to be greater than this value.

Type: number
Type: null

Max

Default: null
Max value allowed for the variable

initial_guess is required to be less than this value.

Type: number
Type: null

Perturbation Magnitude

Default: null

Specifies the perturbation magnitude for this particular variable.
This feature adds flexibility to combine controls into more logical
of structures at the same time allowing the variable to contain time (
how long rate applies for) & value (the actual rate).

NOTE: In most cases this should not be configured, and the default value should be used.

Type: number

Value must be strictly greater than 0

Type: null

Default: null

The backend used by Everest for sampling points

SamplerConfig

Type: object
No Additional Properties

Backend

Default: null

(deprecated) The backend used by Everest for sampling points.

The sampler backend provides the methods for sampling the points used to
estimate the gradient. The default is the built-in 'scipy' backend.

Type: string
Type: null

Backend Options

Default: null

Specifies a dict of optional parameters for the sampler backend.

This dict of values is passed unchanged to the selected method in the backend.

Type: object

Additional Properties of any type are allowed.

Type: object
Type: null

Method

Type: string Default: "norm"

The sampling method or distribution used by the sampler backend.

Shared

Default: null

Whether to share perturbations between realizations.

Type: boolean
Type: null
Type: null

Initial Guess

Type: array of number Default: null

List of Starting values for the control variable

No Additional Items

Each item of this array must be:

Type: number

Initial Guess

Default: null

Initial guess for the control group all control variables with initialguess not
defined will be assigned this value. Individual initial
guess values in the control
variables will overwrite this value.

Type: number
Type: null

Control Type

Type: enum (of string) Default: "real"

The type of the controls for the control group. Individual control types in the
control variables will override this value. Set to "integer" for discrete
optimization. This may be ignored if the algorithm that is used does not support
different control types.

Must be one of:

  • "real"
  • "integer"

Enabled

Type: boolean Default: true

If True, all variables in this control group will be optimized. If set to False
the value of the variables will remain fixed.

Min

Default: null

Defines left-side value in the control group range [min, max].
This value will be overwritten by the control variable min value if given.

The initial guess for both the group and the individual variables needs to be contained
in the resulting [min, max] range

Type: number
Type: null

Max

Default: null

Defines right-side value in the control group range [min, max].
This value will be overwritten by the control variable max value if given.

The initial guess for both the group and the individual variables needs to be contained
in the resulting [min, max] range

Type: number
Type: null

Perturbation Type

Type: enum (of string) Default: "absolute"

Example: absolute or relative
Specifies the perturbation type for a set of controls of a certain type. The
perturbation type keyword defines whether the perturbation magnitude
(perturbation_magnitude) should be considered as an absolute value or relative
to the dynamic range of the controls.

NOTE: currently the dynamic range is computed with respect to all controls, so
defining relative perturbation type for control types with different dynamic
ranges might have unintended effects.

Must be one of:

  • "absolute"
  • "relative"

Perturbation Magnitude

Default: null

Specifies the perturbation magnitude for a set of controls of a certain type.

This controls the size of perturbations (standard deviation of a
normal distribution) of controls used to approximate the gradient.
The value depends on the type of control and magnitude of the variables.
For continuous controls smaller values should give a better gradient,
whilst for more discrete controls larger values should give a better
result. However, this is a balance as too large or too small
of values also cause issues.

NOTE: In most cases this should not be configured, and the default value should be used.

Type: number
Type: null

Scaled Range

Type: array Default: [0.0, 1.0]

Can be used to set the range of the control values
after scaling (default = [0, 1]).

This option has no effect on discrete controls.

Must contain a minimum of 2 items

Must contain a maximum of 2 items

No Additional Items

Tuple Validation

Item at 1 must be:
Type: number
Item at 2 must be:
Type: number

Default: null

A sampler specification section applies to a group of controls, or to an
individual control. Sampler specifications are not required, with the
following behavior, if no sampler sections are provided, a normal
distribution is used.

If at least one control group or variable has a sampler specification, only
the groups or variables with a sampler specification are perturbed.
Controls/variables that do not have a sampler section will not be perturbed
at all. If that is not desired, make sure to specify a sampler for each
control group and/or variable (or none at all to use a normal distribution
for each control).

Within the sampler section, the shared keyword can be used to direct the
sampler to use the same perturbations for each realization.

SamplerConfig

Type: object
No Additional Properties

Backend

Default: null

(deprecated) The backend used by Everest for sampling points.

The sampler backend provides the methods for sampling the points used to
estimate the gradient. The default is the built-in 'scipy' backend.

Type: string
Type: null

Backend Options

Default: null

Specifies a dict of optional parameters for the sampler backend.

This dict of values is passed unchanged to the selected method in the backend.

Type: object

Additional Properties of any type are allowed.

Type: object
Type: null

Method

Type: string Default: "norm"

The sampling method or distribution used by the sampler backend.

Shared

Default: null

Whether to share perturbations between realizations.

Type: boolean
Type: null
Type: null

Objective Functions

Type: array

List of objective function specifications

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

ObjectiveFunctionConfig

Type: object
No Additional Properties

Name

Type: string

Weight

Default: null

weight determines the importance of an objective function relative to the other
objective functions.

Ultimately, the weighted sum of all the objectives is what Everest tries to optimize.
Note that, in case the weights do not sum up to 1, they are normalized before being
used in the optimization process. Weights may be zero or negative, but should add up to
a positive value.

Type: number
Type: null

Scale

Default: null
scale is a division factor defined per objective function.

The value of each objective function is divided by the related scaling value.
When optimizing with respect to multiple objective functions, it is important
that the scaling is set so that all the scaled objectives have the same order
of magnitude. Ultimately, the scaled objectives are used in computing
the weighted sum that Everest tries to optimize.

Type: number
Type: null

Auto Scale

Default: null

auto_normalize can be set to true to automatically
determine the scaling factor from the objective value in batch 0.

If scale is also set, the automatic value is divided by its value.

Type: boolean
Type: null

Type

Default: null

type can be set to the name of a method that should be applied to calculate a
total objective function from the objectives obtained for all realizations.
Currently, the only values supported are "mean" and "stddev", which calculate
the mean and the negative of the standard deviation over the realizations,
respectively. The negative of the standard deviation is used, since in general
the aim is to minimize the standard deviation as opposed to the mean, which is
preferred to be maximized.

Type: string
Type: null

OptimizationConfig

Type: object

Optimizer options

No Additional Properties

Algorithm

Type: string Default: "optpp_q_newton"

Algorithm used by Everest. Defaults to
optppqnewton, a quasi-Newton algorithm in Dakota's OPT PP library.

Convergence Tolerance

Default: null

Defines the threshold value on relative change
in the objective function that indicates convergence.

The convergencetolerance specification provides a real value for controlling
the termination of iteration. In most cases, it is a relative convergence tolerance
for the objective function; i.e., if the change in the objective function between
successive iterations divided by the previous objective function is less than
the amount specified by convergence
tolerance, then this convergence criterion is
satisfied on the current iteration.

Since no progress may be made on one iteration followed by significant progress
on a subsequent iteration, some libraries require that the convergence tolerance
be satisfied on two or more consecutive iterations prior to termination of
iteration.

(From the Dakota Manual.)

Type: number
Type: null

Backend

Default: null

(deprecated) The optimization backend used.".

Currently, backends are included to use Dakota or SciPy ("dakota" and "scipy").
The Dakota backend is the default, and can be assumed to be installed. The SciPy
backend is optional, and will only be available if SciPy is installed on the
system.

Type: string
Type: null

Backend Options

Default: null

Dict of optional parameters for the optimizer backend.
This dict of values is passed unchanged to the selected algorithm in the backend.

Note that the default Dakota backend ignores this option, because it requires a
list of strings rather than a dictionary. For setting Dakota backend options, see
the 'option' keyword.

Type: object

Additional Properties of any type are allowed.

Type: object
Type: null

Constraint Tolerance

Default: null

Determines the maximum allowable value of
infeasibility that any constraint in an optimization problem may possess and
still be considered to be satisfied.

It is specified as a positive real value. If a constraint function is greater
than this value then it is considered to be violated by the optimization
algorithm. This specification gives some control over how tightly the
constraints will be satisfied at convergence of the algorithm. However, if the
value is set too small the algorithm may terminate with one or more constraints
being violated.

(From the Dakota Manual.)

Type: number
Type: null

Default: null

Directs the optimizer to use CVaR estimation.

When this section is present Everest will use Conditional Value at Risk (CVaR)
to minimize risk. Effectively this means that at each iteration the objective
and constraint functions will be calculated as the mean over the sub-set of the
realizations that perform worst. The size of this set is specified as an
absolute number or as a percentile value. These options are selected by setting
either the numberofrealizations option, or the percentile option,
which are mutually exclusive.

CVaRConfig

Type: object
No Additional Properties

Number Of Realizations

Default: null

The number of realizations used for CVaR estimation.

Sets the number of realizations that is used to calculate the total objective.

This option is exclusive with the percentile option.

Type: integer
Type: null

Percentile

Default: null

The percentile used for CVaR estimation.

Sets the percentile of distribution of the objective over the realizations that
is used to calculate the total objective.

This option is exclusive with the numberofrealizations option.

Type: number

Value must be greater or equal to 0.0 and lesser or equal to 1.0

Type: null
Type: null

Max Batch Num

Default: null

Limits the number of batches of simulations
during optimization, where 0 represents unlimited simulation batches.
When maxbatchnum is specified and the current batch index is greater than
maxbatchnum an exception is raised.

Type: integer

Value must be strictly greater than 0

Type: null

Max Function Evaluations

Default: null

Limits the maximum number of function evaluations.

The maxfunctionevaluations controls the number of control update steps the optimizer
will allow before convergence is obtained.

See max_iterations for a description.

Type: integer

Value must be strictly greater than 0

Type: null

Max Iterations

Default: null

Limits the maximum number of iterations.

The difference between an iteration and a batch is that an iteration corresponds to
a complete accepted batch (i.e., a batch that provides an improvement in the
objective function while satisfying all constraints).

Type: integer

Value must be strictly greater than 0

Type: null

Min Pert Success

Default: null

specifies the minimum number of successfully completed
evaluations of perturbed controls required to compute a gradient. The optimization
process will stop if this minimum is not reached, and otherwise a gradient will be
computed based on the set of successful perturbation runs. The minimum is checked for
each realization individually.

A special case is robust optimization with perturbation_num: 1. In that case the
minimum applies to all realizations combined. In other words, a robust gradient may then
still be computed based on a subset of the realizations.

The user-provided value is reset to perturbation_num if it is larger than this number
and a message is produced. In the special case of robust optimization case with
perturbation_num: 1 the maximum allowed value is the number of realizations specified
by realizations instead.

Type: integer

Value must be strictly greater than 0

Type: null

Min Realizations Success

Default: null

Minimum number of realizations

The minimum number of realizations that should be available for the computation
of either expected function values (both objective function and constraint
functions) or of the expected gradient. Note that this keyword does not apply
to gradient computation in the robust case with 1 perturbation in which the
expected gradient is computed directly.

The optimization process will stop if this minimum is not reached, and otherwise
the expected objective function value (and expected gradient/constraint function
values) will be computed based on the set of successful contributions. In other
words, a robust objective function, a robust gradient and robust constraint
functions may then still be computed based on a subset of the realizations.

The user-provided value is reset to the number of realizations specified by
realizations if it is larger than this number and a message is produced.

Note that it is possible to set the minimum number of successful realizations equal
to zero. Some optimization algorithms are able to handle this and will proceed even
if all realizations failed. Most algorithms are not capable of this and will adjust
the value to be equal to one.

Type: integer

Value must be greater or equal to 0

Type: null

Options

Default: null

specifies non-validated, optional
passthrough parameters for the optimizer

| Examples used are
| - maxrepetitions = 300
| - retry
iffail
| - classical
search 1

Type: array of string
No Additional Items

Each item of this array must be:

Type: string
Type: object

Additional Properties of any type are allowed.

Type: object
Type: null

Perturbation Num

Default: null

The number of perturbed control vectors per realization.

The number of simulation runs used for estimating the gradient is equal to the
the product of perturbation_num and model.realizations.

Type: integer

Value must be strictly greater than 0

Type: null

Speculative

Type: boolean Default: false

specifies whether to enable speculative computation.

The speculative specification enables speculative computation of gradient and/or
Hessian information, where applicable, for parallel optimization studies. By
speculating that the derivative information at the current point will be used
later, the complete data set (all available gradient/Hessian information) can be
computed on every function evaluation. While some of these computations will be
wasted, the positive effects are a consistent parallel load balance and usually
shorter wall clock time. The speculative specification is applicable only when
parallelism in the gradient calculations can be exploited by Dakota (it will be
ignored for vendor numerical gradients). (From the Dakota Manual.)

Parallel

Type: boolean Default: true

whether to allow parallel function evaluation.

By default Everest will evaluate a single function and gradient evaluation at
a time. In case of gradient-free optimizer this can be highly inefficient,
since these tend to need many independent function evaluations at each
iteration. By setting parallel to True, multiple functions may be evaluated in
parallel, if supported by the optimization algorithm.

The default is to use parallel evaluation if supported.

ModelConfig

Type: object

Configuration of the Everest model

No Additional Properties

Realizations

Type: array of integer

Realizations to use in optimization ensemble.

This is a list [0, 1, ..., n-1] of all realizations in the ensemble, or a string
consisting of comma separated values and ranges, i.e '1, 2, 5-8, 10'.

Must contain a minimum of 1 items

No Additional Items

Each item of this array must be:

Type: integer

Value must be greater or equal to 0

Realizations Weights

Type: array of number

List of weights, one per realization.

If specified, it must be a list of numeric values, one per realization.

No Additional Items

Each item of this array must be:

Type: number

EnvironmentConfig

Type: object

The environment of Everest, specifies which folders are used for simulation and output, as well as the level of detail in Everest-logs

No Additional Properties

Simulation Folder

Type: string Default: "simulation_folder"

Folder used for simulation by Everest

Output Folder

Type: string Default: "everest_output"

Folder for outputs of Everest

Log Level

Type: enum (of string) Default: "info"

Defines the verbosity of logs output by Everest.

The default log level is info. All supported log levels are:

debug: Detailed information, typically of interest only when diagnosing
problems.

info: Confirmation that things are working as expected.

warning: An indication that something unexpected happened, or indicative of some
problem in the near future (e.g. disk space low). The software is still
working as expected.

error: Due to a more serious problem, the software has not been able to perform
some function.

critical: A serious error, indicating that the program itself may be unable to
continue running.

Must be one of:

  • "debug"
  • "info"
  • "warning"
  • "error"
  • "critical"

Random Seed

Type: integer Default: null

Random seed (must be positive)

Wells

Type: array

A list of well configurations, all with unique names.

No Additional Items

Each item of this array must be:

WellConfig

Type: object
No Additional Properties

Name

Type: string

The unique name of the well

Drill Date

Default: null

Ideal date to drill a well.

The interpretation of this is up to the forward model. The standard tooling will
consider this as the earliest possible drill date.

Type: string
Type: null

Drill Time

Type: integer Default: 0

specifies the time it takes
to drill the well under consideration.

Value must be strictly greater than 0

Definitions

Type: object

Section for specifying variables.

Used to specify variables that will be replaced in the file when encountered.

| scratch: /scratch/ert/
| numreals: 10
| min
success: 13
| fixed_wells: [Prod1, Inj3]

Some keywords are pre-defined by Everest,

| realization: <GEO_ID>
| configpath: <CONFIG_PATH>
| runpath_file: <RUNPATH_FILE>
| eclbase: <ECLBASE>

and environment variables are exposed in the form 'os.NAME', for example:

| os.USER: $USER
| os.HOSTNAME: $HOSTNAME
| ...

Additional Properties of any type are allowed.

Type: object

Input Constraints

Type: array

List of input constraints

No Additional Items

Each item of this array must be:

InputConstraintConfig

Type: object
No Additional Properties

Weights

Type: object

If we are trying to constrain only one control (i.e the z
control) value, with an upper bound of 0.2, only control values (x, y, z) that
satisfy the following equation will be allowed: x-0 * 0 + y-1 * 0 + z-2 * 1 > 0.2


Example:

upper_bound: 0.2
weights:
- point_3D.x.0: 0
- point_3D.y.1: 0
- point_3D.z.2: 1

Each additional property must conform to the following schema

Type: number

Target

Default: null

Only control values that satisfy the following
equation will be allowed: sum of (<control> * weight) = target

Type: number
Type: null

Lower Bound

Type: number Default: -Infinity

Only control values that satisfy the following
equation will be allowed: sum of (<control> * weight) >= lower_bound`

Upper Bound

Type: number Default: Infinity

Only control values that satisfy the following
equation will be allowed: sum of (<control> * weight) <= upper_bound`

Output Constraints

Type: array

A list of output constraints with unique names.

No Additional Items

Each item of this array must be:

OutputConstraintConfig

Type: object
No Additional Properties

Name

Type: string

The unique name of the output constraint.

Target

Default: null

Defines the equality constraint

(f(x) - b) / c = 0,

where b is the target, f is a function of the control vector x, and c is the
scale (scale).

Type: number
Type: null

Auto Scale

Type: boolean Default: false

If set to true, Everest will automatically
determine the scaling factor from the constraint value in batch 0.

If scale is also set, the automatic value is multiplied by its value.

Lower Bound

Type: number Default: -Infinity

Defines the lower bound
(greater than or equal) constraint

(f(x) - b) / c >= 0,

where b is the lower bound, f is a function of the control vector x, and c is
the scale (scale).

Upper Bound

Type: number Default: Infinity

Defines the upper bound (less than or equal) constraint:

(f(x) - b) / c <= 0,

where b is the upper bound, f is a function of the control vector x, and c is
the scale (scale).

Scale

Default: null

Scaling of constraints (scale).

scale is a normalization factor which can be used to scale the constraint
to control its importance relative to the (singular) objective and the controls.

Both the upperbound and the function evaluation value will be scaled with this number.
That means that if, e.g., the upper
bound is 0.5 and the scaling is 10, then the
function evaluation value will be divided by 10 and bounded from above by 0.05.

Type: number
Type: null

Install Jobs

Type: array

A list of jobs to install

No Additional Items

Each item of this array must be:

InstallJobConfig

Type: object
No Additional Properties

Name

Type: string

name of the installed job

Source

Default: null

source file of the ert job.

source will be deprecated, please use executable instead.

Type: string
Type: null

Executable

Default: null

Executable to run

Type: string
Type: null

Install Workflow Jobs

Type: array

A list of workflow jobs to install

No Additional Items

Each item of this array must be:

InstallJobConfig

Type: object
No Additional Properties

Name

Type: string

name of the installed job

Source

Default: null

source file of the ert job.

source will be deprecated, please use executable instead.

Type: string
Type: null

Executable

Default: null

Executable to run

Type: string
Type: null

Install Data

Type: array

A list of install data elements from the install_data config
section. Each item marks what folders or paths need to be copied or linked
in order for the evaluation jobs to run.

No Additional Items

Each item of this array must be:

InstallDataConfig

Type: object
No Additional Properties

Source

Type: string
    Path to file or directory that needs to be copied or linked in the evaluation
    execution context.

Target

Type: string
    Relative path to place the copy or link for the given source.

Install Templates

Type: array

Allow the user to define the workflow establishing the model
chain for the purpose of sensitivity analysis, enabling the relationship
between sensitivity input variables and quantities of interests to be
evaluated.

No Additional Items

Each item of this array must be:

InstallTemplateConfig

Type: object
No Additional Properties

Template

Type: string

Output File

Type: string

Extra Data

Default: null

Type: string
Type: null

ServerConfig

Type: object

Defines Everest server settings, i.e., which queue system,
queue name and queue options are used for the everest server.
The main reason for changing this section is situations where everest
times out because it can not add the server to the queue.
This makes it possible to reduce the resource requirements as they tend to
be low compared with the forward model.

        Queue system and queue name defaults to the same as simulator, and the
        server should not need to be configured by most users.
        This is also true for the --include-host and --exclude-host options
        that are used by the SLURM driver.

        Note that changing values in this section has no impact on the resource
        requirements of the forward models.
No Additional Properties

Queue System

Default: null

Defines which queue system the everest submits jobs to


LocalQueueOptions

Type: object
No Additional Properties

Name

Type: const Default: "local"
Specific value: "local"

Max Running

Type: integer Default: 0

Value must be greater or equal to 0

Submit Sleep

Type: number Default: 0.0

Value must be greater or equal to 0

Num Cpu

Type: integer Default: 1

Value must be greater or equal to 0

Realization Memory

Type: integer Default: 0

When set, a job is only allowed to use realization_memory
of memory.

    realization_memory may be an integer value, indicating the number of bytes, or a
    string consisting of a number followed by a unit. The unit indicates the
    multiplier that is applied, and must start with one of these characters:

    * b, B: bytes
    * k, K: kilobytes (1024 bytes)
    * m, M: megabytes (1024**2 bytes)
    * g, G: gigabytes (1024**3 bytes)
    * t, T: terabytes (1024**4 bytes)
    * p, P: petabytes (1024**5 bytes)

    Spaces between the number and the unit are ignored, and so are any
    characters after the first. For example: 2g, 2G, and 2 GB all resolve
    to the same value: 2 gigabytes, equaling 2 * 1024**3 bytes.

    If not set, or set to zero, the allowed amount of memory is unlimited.

Value must be greater or equal to 0

Job Script

Type: string Default: "/home/docs/checkouts/readthedocs.org/user_builds/everest/envs/14.6.0/bin/fm_dispatch.py"

Project Code

Default: null

Type: string
Type: null

Activate Script

Default: null

Type: string
Type: null

LsfQueueOptions

Type: object
No Additional Properties

Name

Type: const Default: "lsf"
Specific value: "lsf"

Max Running

Type: integer Default: 0

Value must be greater or equal to 0

Submit Sleep

Type: number Default: 0.0

Value must be greater or equal to 0

Num Cpu

Type: integer Default: 1

Value must be greater or equal to 0

Realization Memory

Type: integer Default: 0

When set, a job is only allowed to use realization_memory
of memory.

    realization_memory may be an integer value, indicating the number of bytes, or a
    string consisting of a number followed by a unit. The unit indicates the
    multiplier that is applied, and must start with one of these characters:

    * b, B: bytes
    * k, K: kilobytes (1024 bytes)
    * m, M: megabytes (1024**2 bytes)
    * g, G: gigabytes (1024**3 bytes)
    * t, T: terabytes (1024**4 bytes)
    * p, P: petabytes (1024**5 bytes)

    Spaces between the number and the unit are ignored, and so are any
    characters after the first. For example: 2g, 2G, and 2 GB all resolve
    to the same value: 2 gigabytes, equaling 2 * 1024**3 bytes.

    If not set, or set to zero, the allowed amount of memory is unlimited.

Value must be greater or equal to 0

Job Script

Type: string Default: "/home/docs/checkouts/readthedocs.org/user_builds/everest/envs/14.6.0/bin/fm_dispatch.py"

Project Code

Default: null

Type: string
Type: null

Activate Script

Default: null

Type: string
Type: null

Bhist Cmd

Default: null

Type: string

Must be at least 1 characters long

Type: null

Bjobs Cmd

Default: null

Type: string

Must be at least 1 characters long

Type: null

Bkill Cmd

Default: null

Type: string

Must be at least 1 characters long

Type: null

Bsub Cmd

Default: null

Type: string

Must be at least 1 characters long

Type: null

Exclude Host

Default: null

Type: string
Type: null

Lsf Queue

Default: null

Type: string

Must be at least 1 characters long

Type: null

Lsf Resource

Default: null

Type: string
Type: null

SlurmQueueOptions

Type: object
No Additional Properties

Name

Type: const Default: "slurm"
Specific value: "slurm"

Max Running

Type: integer Default: 0

Value must be greater or equal to 0

Submit Sleep

Type: number Default: 0.0

Value must be greater or equal to 0

Num Cpu

Type: integer Default: 1

Value must be greater or equal to 0

Realization Memory

Type: integer Default: 0

When set, a job is only allowed to use realization_memory
of memory.

    realization_memory may be an integer value, indicating the number of bytes, or a
    string consisting of a number followed by a unit. The unit indicates the
    multiplier that is applied, and must start with one of these characters:

    * b, B: bytes
    * k, K: kilobytes (1024 bytes)
    * m, M: megabytes (1024**2 bytes)
    * g, G: gigabytes (1024**3 bytes)
    * t, T: terabytes (1024**4 bytes)
    * p, P: petabytes (1024**5 bytes)

    Spaces between the number and the unit are ignored, and so are any
    characters after the first. For example: 2g, 2G, and 2 GB all resolve
    to the same value: 2 gigabytes, equaling 2 * 1024**3 bytes.

    If not set, or set to zero, the allowed amount of memory is unlimited.

Value must be greater or equal to 0

Job Script

Type: string Default: "/home/docs/checkouts/readthedocs.org/user_builds/everest/envs/14.6.0/bin/fm_dispatch.py"

Project Code

Default: null

Type: string
Type: null

Activate Script

Default: null

Type: string
Type: null

Sbatch

Type: string Default: "sbatch"

Must be at least 1 characters long

Scancel

Type: string Default: "scancel"

Must be at least 1 characters long

Scontrol

Type: string Default: "scontrol"

Must be at least 1 characters long

Sacct

Type: string Default: "sacct"

Must be at least 1 characters long

Squeue

Type: string Default: "squeue"

Must be at least 1 characters long

Exclude Host

Type: string Default: ""

Include Host

Type: string Default: ""

Partition

Default: null

Type: string

Must be at least 1 characters long

Type: null

Squeue Timeout

Type: number Default: 2

Value must be strictly greater than 0

Max Runtime

Default: null

Type: number

Value must be greater or equal to 0

Type: null

TorqueQueueOptions

Type: object
No Additional Properties

Name

Type: const Default: "torque"
Specific value: "torque"

Max Running

Type: integer Default: 0

Value must be greater or equal to 0

Submit Sleep

Type: number Default: 0.0

Value must be greater or equal to 0

Num Cpu

Type: integer Default: 1

Value must be greater or equal to 0

Realization Memory

Type: integer Default: 0

When set, a job is only allowed to use realization_memory
of memory.

    realization_memory may be an integer value, indicating the number of bytes, or a
    string consisting of a number followed by a unit. The unit indicates the
    multiplier that is applied, and must start with one of these characters:

    * b, B: bytes
    * k, K: kilobytes (1024 bytes)
    * m, M: megabytes (1024**2 bytes)
    * g, G: gigabytes (1024**3 bytes)
    * t, T: terabytes (1024**4 bytes)
    * p, P: petabytes (1024**5 bytes)

    Spaces between the number and the unit are ignored, and so are any
    characters after the first. For example: 2g, 2G, and 2 GB all resolve
    to the same value: 2 gigabytes, equaling 2 * 1024**3 bytes.

    If not set, or set to zero, the allowed amount of memory is unlimited.

Value must be greater or equal to 0

Job Script

Type: string Default: "/home/docs/checkouts/readthedocs.org/user_builds/everest/envs/14.6.0/bin/fm_dispatch.py"

Project Code

Default: null

Type: string
Type: null

Activate Script

Default: null

Type: string
Type: null

Qsub Cmd

Default: null

Type: string

Must be at least 1 characters long

Type: null

Qstat Cmd

Default: null

Type: string

Must be at least 1 characters long

Type: null

Qdel Cmd

Default: null

Type: string

Must be at least 1 characters long

Type: null

Queue

Default: null

Type: string

Must be at least 1 characters long

Type: null

Cluster Label

Default: null

Type: string

Must be at least 1 characters long

Type: null

Job Prefix

Default: null

Type: string

Must be at least 1 characters long

Type: null

Keep Qsub Output

Type: boolean Default: false
Type: null

SimulatorConfig

Type: object

Simulation settings

No Additional Properties
Example:

queue_system:
  max_running: 3
  name: local

Cores Per Node

Default: null

defines the number of CPUs when running
the forward models. This can for example be used in conjunction with the Eclipse
parallel keyword for multiple CPU simulation runs. This keyword has no effect
when running with the local queue.

This number is specified in Ert as NUM_CPU.

Type: integer

Value must be strictly greater than 0

Type: null

Delete Run Path

Type: boolean Default: false

Whether the batch folder for a successful simulation needs to be deleted.

Max Runtime

Default: null

Maximum allowed running time of a forward model. When
set, a job is only allowed to run for max_runtime seconds.
A value of 0 means unlimited runtime.

Type: integer

Value must be greater or equal to 0

Type: null

Max Memory

Default: null

Maximum allowed memory usage of a forward model. When
set, a job is only allowed to use max_memory of memory.

    max_memory may be an integer value, indicating the number of bytes, or a
    string consisting of a number followed by a unit. The unit indicates the
    multiplier that is applied, and must start with one of these characters:

    * b, B: bytes
    * k, K: kilobytes (1024 bytes)
    * m, M: megabytes (1024**2 bytes)
    * g, G: gigabytes (1024**3 bytes)
    * t, T: terabytes (1024**4 bytes)
    * p, P: petabytes (1024**5 bytes)

    Spaces between the number and the unit are ignored, and so are any
    characters after the first. For example: 2g, 2G, and 2 GB all resolve
    to the same value: 2 gigabytes, equaling 2 * 1024**3 bytes.

    If not set, or a set to zero, the allowed amount of memory is unlimited.

Type: integer
Type: string
Type: null

Queue System

Default: null

Defines which queue system the everest submits jobs to


LocalQueueOptions

Type: object
No Additional Properties

Name

Type: const Default: "local"
Specific value: "local"

Max Running

Type: integer Default: 0

Value must be greater or equal to 0

Submit Sleep

Type: number Default: 0.0

Value must be greater or equal to 0

Num Cpu

Type: integer Default: 1

Value must be greater or equal to 0

Realization Memory

Type: integer Default: 0

When set, a job is only allowed to use realization_memory
of memory.

    realization_memory may be an integer value, indicating the number of bytes, or a
    string consisting of a number followed by a unit. The unit indicates the
    multiplier that is applied, and must start with one of these characters:

    * b, B: bytes
    * k, K: kilobytes (1024 bytes)
    * m, M: megabytes (1024**2 bytes)
    * g, G: gigabytes (1024**3 bytes)
    * t, T: terabytes (1024**4 bytes)
    * p, P: petabytes (1024**5 bytes)

    Spaces between the number and the unit are ignored, and so are any
    characters after the first. For example: 2g, 2G, and 2 GB all resolve
    to the same value: 2 gigabytes, equaling 2 * 1024**3 bytes.

    If not set, or set to zero, the allowed amount of memory is unlimited.

Value must be greater or equal to 0

Job Script

Type: string Default: "/home/docs/checkouts/readthedocs.org/user_builds/everest/envs/14.6.0/bin/fm_dispatch.py"

Project Code

Default: null

Type: string
Type: null

Activate Script

Default: null

Type: string
Type: null

LsfQueueOptions

Type: object
No Additional Properties

Name

Type: const Default: "lsf"
Specific value: "lsf"

Max Running

Type: integer Default: 0

Value must be greater or equal to 0

Submit Sleep

Type: number Default: 0.0

Value must be greater or equal to 0

Num Cpu

Type: integer Default: 1

Value must be greater or equal to 0

Realization Memory

Type: integer Default: 0

When set, a job is only allowed to use realization_memory
of memory.

    realization_memory may be an integer value, indicating the number of bytes, or a
    string consisting of a number followed by a unit. The unit indicates the
    multiplier that is applied, and must start with one of these characters:

    * b, B: bytes
    * k, K: kilobytes (1024 bytes)
    * m, M: megabytes (1024**2 bytes)
    * g, G: gigabytes (1024**3 bytes)
    * t, T: terabytes (1024**4 bytes)
    * p, P: petabytes (1024**5 bytes)

    Spaces between the number and the unit are ignored, and so are any
    characters after the first. For example: 2g, 2G, and 2 GB all resolve
    to the same value: 2 gigabytes, equaling 2 * 1024**3 bytes.

    If not set, or set to zero, the allowed amount of memory is unlimited.

Value must be greater or equal to 0

Job Script

Type: string Default: "/home/docs/checkouts/readthedocs.org/user_builds/everest/envs/14.6.0/bin/fm_dispatch.py"

Project Code

Default: null

Type: string
Type: null

Activate Script

Default: null

Type: string
Type: null

Bhist Cmd

Default: null

Type: string

Must be at least 1 characters long

Type: null

Bjobs Cmd

Default: null

Type: string

Must be at least 1 characters long

Type: null

Bkill Cmd

Default: null

Type: string

Must be at least 1 characters long

Type: null

Bsub Cmd

Default: null

Type: string

Must be at least 1 characters long

Type: null

Exclude Host

Default: null

Type: string
Type: null

Lsf Queue

Default: null

Type: string

Must be at least 1 characters long

Type: null

Lsf Resource

Default: null

Type: string
Type: null

SlurmQueueOptions

Type: object
No Additional Properties

Name

Type: const Default: "slurm"
Specific value: "slurm"

Max Running

Type: integer Default: 0

Value must be greater or equal to 0

Submit Sleep

Type: number Default: 0.0

Value must be greater or equal to 0

Num Cpu

Type: integer Default: 1

Value must be greater or equal to 0

Realization Memory

Type: integer Default: 0

When set, a job is only allowed to use realization_memory
of memory.

    realization_memory may be an integer value, indicating the number of bytes, or a
    string consisting of a number followed by a unit. The unit indicates the
    multiplier that is applied, and must start with one of these characters:

    * b, B: bytes
    * k, K: kilobytes (1024 bytes)
    * m, M: megabytes (1024**2 bytes)
    * g, G: gigabytes (1024**3 bytes)
    * t, T: terabytes (1024**4 bytes)
    * p, P: petabytes (1024**5 bytes)

    Spaces between the number and the unit are ignored, and so are any
    characters after the first. For example: 2g, 2G, and 2 GB all resolve
    to the same value: 2 gigabytes, equaling 2 * 1024**3 bytes.

    If not set, or set to zero, the allowed amount of memory is unlimited.

Value must be greater or equal to 0

Job Script

Type: string Default: "/home/docs/checkouts/readthedocs.org/user_builds/everest/envs/14.6.0/bin/fm_dispatch.py"

Project Code

Default: null

Type: string
Type: null

Activate Script

Default: null

Type: string
Type: null

Sbatch

Type: string Default: "sbatch"

Must be at least 1 characters long

Scancel

Type: string Default: "scancel"

Must be at least 1 characters long

Scontrol

Type: string Default: "scontrol"

Must be at least 1 characters long

Sacct

Type: string Default: "sacct"

Must be at least 1 characters long

Squeue

Type: string Default: "squeue"

Must be at least 1 characters long

Exclude Host

Type: string Default: ""

Include Host

Type: string Default: ""

Partition

Default: null

Type: string

Must be at least 1 characters long

Type: null

Squeue Timeout

Type: number Default: 2

Value must be strictly greater than 0

Max Runtime

Default: null

Type: number

Value must be greater or equal to 0

Type: null

TorqueQueueOptions

Type: object
No Additional Properties

Name

Type: const Default: "torque"
Specific value: "torque"

Max Running

Type: integer Default: 0

Value must be greater or equal to 0

Submit Sleep

Type: number Default: 0.0

Value must be greater or equal to 0

Num Cpu

Type: integer Default: 1

Value must be greater or equal to 0

Realization Memory

Type: integer Default: 0

When set, a job is only allowed to use realization_memory
of memory.

    realization_memory may be an integer value, indicating the number of bytes, or a
    string consisting of a number followed by a unit. The unit indicates the
    multiplier that is applied, and must start with one of these characters:

    * b, B: bytes
    * k, K: kilobytes (1024 bytes)
    * m, M: megabytes (1024**2 bytes)
    * g, G: gigabytes (1024**3 bytes)
    * t, T: terabytes (1024**4 bytes)
    * p, P: petabytes (1024**5 bytes)

    Spaces between the number and the unit are ignored, and so are any
    characters after the first. For example: 2g, 2G, and 2 GB all resolve
    to the same value: 2 gigabytes, equaling 2 * 1024**3 bytes.

    If not set, or set to zero, the allowed amount of memory is unlimited.

Value must be greater or equal to 0

Job Script

Type: string Default: "/home/docs/checkouts/readthedocs.org/user_builds/everest/envs/14.6.0/bin/fm_dispatch.py"

Project Code

Default: null

Type: string
Type: null

Activate Script

Default: null

Type: string
Type: null

Qsub Cmd

Default: null

Type: string

Must be at least 1 characters long

Type: null

Qstat Cmd

Default: null

Type: string

Must be at least 1 characters long

Type: null

Qdel Cmd

Default: null

Type: string

Must be at least 1 characters long

Type: null

Queue

Default: null

Type: string

Must be at least 1 characters long

Type: null

Cluster Label

Default: null

Type: string

Must be at least 1 characters long

Type: null

Job Prefix

Default: null

Type: string

Must be at least 1 characters long

Type: null

Keep Qsub Output

Type: boolean Default: false
Type: null

Resubmit Limit

Type: integer Default: 1
    Defines how many times should the queue system retry a forward model.

A forward model may fail for reasons that are not due to the forward model
itself, like a node in the cluster crashing, network issues, etc.  Therefore, it
might make sense to resubmit a forward model in case it fails.
resumbit_limit defines the number of times we will resubmit a failing forward model.
If not specified, a default value of 1 will be used.

Value must be greater or equal to 0

Forward Model

Type: array

List of jobs to run

No Additional Items

Each item of this array must be:

ForwardModelStepConfig

Type: object

Job

Type: string

Name of the forward model step

Results

Default: null


SummaryResults

Type: object

File Name

Type: string

Output file produced by the forward model

Type

Type: const Default: "summary"
Specific value: "summary"

Keys

Default: "*"

List of keys to include in the result. Defaults to '*' indicating all keys

Type: const
Specific value: "*"
Type: array of string
No Additional Items

Each item of this array must be:

Type: string

GenDataResults

Type: object

File Name

Type: string

Output file produced by the forward model

Type

Type: const Default: "gen_data"
Specific value: "gen_data"
Type: null

WorkflowConfig

Type: object

Workflows to run during optimization

No Additional Properties

Pre Simulation

Type: array of string

List of workflow jobs triggered pre-simulation

No Additional Items

Each item of this array must be:

Type: string

Post Simulation

Type: array of string

List of workflow jobs triggered post-simulation

No Additional Items

Each item of this array must be:

Type: string

ExportConfig

Type: object

Settings to control the exports of a optimization run by everest.

No Additional Properties

Keywords

Type: array of string

List of eclipse keywords to be exported.

No Additional Items

Each item of this array must be:

Type: string

Config Path

Type: stringFormat: path