Skip to content

eclipse⚓︎

Wrap Eclipse

ecl_100 ⚓︎

Bases: eclipse

ecl_100 class

call_sim(path=None, wait_for_proc=False) ⚓︎

Method for calling the ecl_100 simulator.

Parameters:

Name Type Description Default
path str

Alternative folder for the ecl_100.data file.

None
wait_for_proc bool

Logical variable to wait for the simulator to finish. Default is False.

False

Returns:

Type Description
.RSM : str

Run summary file in the standard ECL format. Well data are collected from this file.

.RST : str

Restart file in the standard ECL format. Pressure and saturation data are collected from this file.

.PRT : str

Info file to be used for checking errors in the run.

Changelog
  • KF 14/9-2015

ecl_300 ⚓︎

Bases: eclipse

eclipse 300 class

call_sim(path=None, wait_for_proc=False) ⚓︎

Method for calling the ecl_300 simulator.

Parameters:

Name Type Description Default
path str

Alternative folder for the ecl_100.data file.

None
wait_for_proc bool

Logical variable to wait for the simulator to finish. Default is False.

Note

For now, this option is only utilized in a single localization option.

False

Returns:

Name Type Description
RSM str

Run summary file in the standard ECL format. Well data are collected from this file.

RST str

Restart file in the standard ECL format. Pressure and saturation data are collected from this file.

PRT str

Info file to be used for checking errors in the run.

Changelog
  • KF 8/10-2015

eclipse ⚓︎

Class for running the Schlumberger eclipse 100 black oil reservoir simulator. For more information see GeoQuest: ECLIPSE reference manual 2009.1. Schlumberger, GeoQuest (2009).

To run this class, eclipse must be installed and elcrun must be in the system path!

__init__(input_dict=None, filename=None, options=None) ⚓︎

The inputs are all optional, but in the same fashion as the other simulators a system must be followed. The input_dict can be utilized as a single input. Here all nescessary info is stored. Alternatively, if input_dict is not defined, all the other input variables must be defined.

Parameters:

Name Type Description Default
input_dict dict

Dictionary containing all information required to run the simulator.

- parallel: number of forward simulations run in parallel
- simoptions: options for the simulations
    - mpi: option to use mpi (always use > 2 cores)
    - sim_path: Path to the simulator
    - sim_flag: Flags sent to the simulator (see simulator documentation for all possibilities)
- sim_limit: maximum number of seconds a simulation can run before being killed
- runfile: name of the simulation input file
- reportpoint: these are the dates the simulator reports results
- reporttype: this key states that the report poins are given as dates
- datatype: the data types the simulator reports
- replace: replace failed simulations with randomly selected successful ones
- rerun: in case of failure, try to rerun the simulator the given number of times
- startdate: simulaton start date
- saveforecast: save the predicted measurements for each iteration
None
filename str

Name of the .mako file utilized to generate the ECL input .DATA file. Must be in uppercase for the ECL simulator.

None
options dict

Dictionary with options for the simulator.

None

Returns:

Name Type Description
initial_object object

Initial object from the class ecl_100.

coarsen(folder, ensembleMember=None) ⚓︎

This method utilized one field parameter to upscale the computational grid. A coarsening file is written to the ensemble folder, and the eclipse calculates the upscaled permeabilities, porosities and transmissibilities based on the new grid and the original parameter values.

Parameters:

Name Type Description Default
folder str

Path to the ecl_100 run folder.

required
ensembleMember int

Index of the ensemble member to run.

None
Changelog
  • KF 17/9-2015 Added uniform upscaling as an option
  • KF 6/01-17

get_sim_results(whichResponse, ext_data_info=None, member=None) ⚓︎

Read the output from simulator and store as an array. Optionally, if the DA method is based on an ensemble method, the output must be read inside a folder.

Parameters:

Name Type Description Default
whichResponse str

Which of the responses is to be outputted (e.g., WBHP PRO-1, WOPR, PRESS, OILSAT, etc).

required
ext_data_info tuple

Tuple containing the assimilation step information, including the place of assimilation (e.g., which TIME) and the index of this assimilation place.

None
member int

Ensemble member that is finished.

None

Returns:

Name Type Description
yFlow array - like

Array containing the response from ECL 100. The response type is chosen by the user in options['data_type'].

Notes
  • Modified the ecl package to allow reading the summary data directly, hence, we get cell, summary, and field data from the ecl package.
  • KF 29/10-2015
  • Modified the ecl package to read RFT files. To obtain, e.g,. RFT pressures form well 'PRO-1" whichResponse must be rft_PRESSURE PRO-1

run_fwd_sim(state, member_i, del_folder=True) ⚓︎

Setup and run the ecl_100 forward simulator. All the parameters are defined as attributes, and the name of the parameters are initialized in setupFwdRun. This method sets up and runs all the individual ensemble members. This method is based on writing .DATA file for each ensemble member using the mako template, for more info regarding mako see http://www.makotemplates.org/

Parameters:

Name Type Description Default
state dict

Dictionary containing the ensemble state.

required
member_i int

Index of the ensemble member.

required
del_folder bool

Boolean to determine if the ensemble folder should be deleted. Default is False.

True

setup_fwd_run(**kwargs) ⚓︎

Setup the simulator.

Attributes:

Name Type Description
assimIndex int

Gives the index-type (e.g. step,time,etc.) and the index for the data to be assimilated

trueOrder

Gives the index-type (e.g. step,time,etc.) and the index of the true data

write_coarse(folder, whgt, image) ⚓︎

This function writes the include file coarsen to the ecl run. This file tels ECL to coarsen the grid.

Parameters:

Name Type Description Default
folder str

Path to the ecl_100 run.

required
whgt float

Weight of the transformed cells.

required
image array - like

Original image.

required
Changelog
  • KF 17/9-2015