Anda di halaman 1dari 30


Reservoir Simulation Model Set-Up




2.1. Defining The Objectives Of A Simulation



4.1. Reservoir System to be Modelled
4.2. ECLIPSE Syntax
4.3. Model Dimensions
4.4. Grid and Rock Properties
4.5. Fluid Properties
4.6. Initial Conditions
4.7. Output Requirements
4.8. Production Schedule


5.1. Running ECLIPSE on a PC
5.2. File Name Conventions


Having worked through this chapter and the associated tutorials the student
should be able to:

Simulation Input
• Identify what questions the simulation is expected to address.
• Identify what data is required as input to perform the desired calculations.
• Format data correctly, taking account of keyword syntax and required units.

Simulation Output
• Select required output of calculations.
• Quality check output data to check for errors in input.
• Identify purpose of each output file and use post-processors to analyse data.

Analysis of Results
• Identify impact of reservoir engineering principles in calculation performed.
• Identify numerical effects and impact of grid block size and orientation on
• Perform simple upscaling calculation to address numerical diffusion.

Reservoir Simulation Model Set-Up

In this module, a step-by-step approach is given to setting up a 3D reservoir

simulation model. This is done by working through an actual case which is complex
enough to demonstrate most of the basic ideas, can demonstrate various sensitivities
and can also show the effects of well controls. The simulator used in this course is
ECLIPSE which is a software product of Schlumberger GeoQuest. However, the
general approach and methodology for setting up a field simulation calculation is
very similar for other commercial simulators.

This example will be used to illustrate the power of reservoir simulation in

understanding reservoir recovery mechanisms.


In this section of the course, we set up a practical 3D, two phase (oil/water) reservoir
simulation model using the ECLIPSE reservoir simulator. This is proprietary
software of Schlumberger GeoQuest. The central objective of this exercise is to
get you actually applying reservoir simulation to a realistic (but quite simple) case.
However, there are also some tasks in the study itself - you can think of these as
the “objectives” if this were a real field case. One of the tasks in the exercise is
as follows: in your calculation, you should observe initial short-term rise in BHP
(bottom hole pressure) in the injection well and drop in BHP in the production well.
You are asked to explain these trends. This is good example of where you may
have run a calculation without necessarily thinking about what was going to happen
to the BHP (or it could be watercut at the producer, or field average pressure etc.).
However, when you study the simulator output - usually as graphs and figures - you
would notice the BHP trends. This would catch the attention of a good engineer
who would not be happy just to note it and move on. She or he would immediately
stop and think and ask a few questions, “What’s going on here?”, “Is this something
physical that I should expect or is there something wrong with the calculation?”.
The engineer would stop and work it out from their basic reservoir engineering
knowledge ... just as you are going to! The engineer would conclude that -
although I possibly didn’t expect it - this behaviour is perfectly understandable
and predictable.

From the above discussion, you can see that it is not just the mechanics of running
a numerical simulator and getting the results out that we want you to achieve in
this course. We want you to be able to formulate the right questions for a given
reservoir application, carry out the appropriate simulations and then interpret the
results correctly. The mechanics of running a simulation - if this was all you did - is
really a technician’s job, the important job of correctly formulating the simulation
problem, understanding the results and predicting reservoir performance is an
engineer’s job and this course is intended for the latter (or for the former strongly
intent on becoming the latter in the future!).

Institute of Petroleum Engineering, Heriot-Watt University 3


This section will not be very long since there are many excellent examples of
reservoir simulation studies elsewhere in this course e.g. Cases 1 - 3 in Chaper 1, the
SPE field cases. Some generalities on how to set up a reservoir simulation study were
also discussed in Chaper 1. Here, we will lay out more formally, the general procedues
broadly following the workflow of a typical simulation study.

2.1 Defining The Objectives Of A Simulation Study

Defining the objectives is a vitally important stage of any field simulation study. The
general spirit which is suggested for approaching this (in Chaper 1) is to correctly
formulate the question you are trying to ask in order to make a particular decision.
For example, the decision may be: “do I need to infill drill in this field in order to
significantly (i.e. economically) improve reservoir performance?”. This is like the
schematic example in Chaper 1, Figure 8 where the question was not “will I get
more oil by ...”, since you could get more oil but at too great a cost - the decision
must be economically based. Having said this, some reservoir decisions are made that
may not in themselves be economic; however, they may be strategic or may lead to
some knowledge or experience which will be economic in the future. The important
matter in that you know what sort of decision you are trying to make.


When run, every reservoir simulator will require input data that defines the system
to be modelled, and should generate output data that represents the results of the
calculations which have been performed. Although different reservoir simulation
codes have different formats for entering data, they all have some basic components
in common. Most will read data from an input file. The input file must therefore
be set up before starting the simulation run. The data file may be set up by
manual editing (if it is in ASCII format), or by using a Graphical User Interface
(GUI). Whichever method is used, most data files will be divided into certain
key sections that define:
• Model dimensions
• Grid and rock properties
• Fluid properties
• Initial conditions
• Output requirements
• Production schedule

Additional optional sections may allow for manipulation of an imported grid

structure and for subdivision of the grid into regions. We will find that there are a
huge number of possible refinements in all of the above general sections representing
special models for particular applications but we will focus on the simpler common
features of most black oil simulations.

Individual parts of the input data may be set up by other programs that may be supplied
by the same supplier as the simulation code, or by other companies. These are referred
to as pre-processors: They are used to perform calculations that set up the model in

Reservoir Simulation Model Set-Up
advance of the actual reservoir fluid flow calculation. Typically, a pre-processor is
used to set up the grid and to define the rock properties (permeability, porosity, etc.)
of each cell. Setting up a model with more than a few hundred cells would be very
laborious if performed by hand. These gridding packages are usually designed to
generate output that conforms to the input format of several of the more widely used
simulators. Thus, the reservoir simulation input data file need only refer to these
grid files by means of a simple “include” statement, and no further manipulation of
the grid is required by the flow simulator.

Pre-processors may be used to:

• Define grid and rock properties
• Define fluid properties
• Convert the results of special core analysis data to a form that can be
used in the simulation
• Upscale rock data so that it is appropriate for the size of grid cells being used
• Define vertical flow performance tables
• Set up the production schedule

Indeed, any software that is used for setting up a part or the whole of an input
data file is termed a pre-processor.

The output of the reservoir flow calculations usually comes in two forms, which in
both cases results in the creation of files that can be stored and read at a later date. The
first category of output data is typically referred to as “summary” data and the second
type of output consists of grid data. The two types are as follows:

(a) Summary data: this consists of calculated parameters such as oil, water
and gas production rates, well bottom hole or tubing head pressures, etc. These
data may be plotted as line charts, usually as a function of time, either by using
specialised post-processing software, or by using standard graphing software such
as Microsoft Excel or Lotus 1,2,3.

(b) Grid data: in this type of data, values such as pressure or saturation to be
plotted for each cell at a given time step. These files are typically in binary format,
which means that they may only be read by appropriate post-processing software.
The reason that ASCII format is not generally used is one of disk space usage.
For example, a 100,000 cell model, with output data for 20 time steps, would
generate 2 million values of pressure (usually to eight significant figures)
during the course of the simulation, and similarly for every other property
such as phase saturations, etc.

Two major, and usually understated, elements of good reservoir simulation

practice are thus:
• Keeping a record of what each calculation represents (by choosing sensible
file names and inserting comments)
• Minimising disk usage (by outputting only data that is actually required).

Current software developments are addressing automatic report generation and

minimising the time taken to obtain a good history match by automatically
varying specified parameters.

Institute of Petroleum Engineering, Heriot-Watt University 5


4.1 Reservoir System to be Modelled

In the first tutorial exercise, Tutorial 1A, the reservoir system to be modelled
consists of a five-spot pattern of four production wells surrounding each injection
well. However, the symmetry of the system allows us to model a single
injection production pair, which will be located at opposite corners of a grid,
as shown in Figure 1.

The system is initially at connate water saturation (Swc), and a waterflood

calculation is to be performed to evaluate oil production and water breakthrough
time. The reservoir will be maintained above the bubble point pressure (Pb)
at all times, and thus there is no need to perform calculations for a free gas
phase (in the reservoir).

Reservoir and fluid properties, such as layer permeabilities, porosity, oil and water
PVT and relative permeability data, are provided, as are the initial reservoir conditions
and production schedule (proposed injection and production rates).

The input data file, whether generated using a text editor or by GUI, consists of
various sections that incorporate all of these components just described. Here we will
go through the input file, TUT1A.DATA, used for this calculation. TUT1A.DATA
will also be used as a base case for other tutorial sessions associated with this
course. The data format is that required by the Schlumberger GeoQuest Reservoir
Technologies model, ECLIPSE 100, but other than syntactical differences, the style
of data entry is similar for most other simulators.

While the data file may be set up using a GUI, it is useful in the first instance to
set up a simple model using a text editor, thus ensuring by the end of the exercise
that every line of data is familiar and relatively well understood. This file can then
be used as a starting point for other models, which may be set up by modifying
the appropriate parts of this data file.

Figure 1.
A five spot pattern consists
of alternating rows of
production and injection
wells. The symmetry of the
system means that the flow
between any two wells can
Production well
be modelled by placing the
Injection well wells at opposite corners of
a Cartesian grid, and is
Two well quarter referred to as a quarter five-
five-spot grid
spot calculation.

Reservoir Simulation Model Set-Up
4.2 ECLIPSE Syntax
Each item of data, such as porosities or relative permeabilities, are identified by use
of set keywords. The individual sections are also designated by keywords. The
syntax, format and function of each keyword may be found in the online manuals.
These also give examples of how the keywords may be used.

There are certain rules governing data entry for any simulator, and effort
must be made at the outset to get these right; otherwise setting up the input
data file can be very frustrating and as time consuming as performing the
calculations themselves.

ECLIPSE uses free format. This means that, with a few exceptions, as many
or as few spaces, tabs and new lines may be used as desired. However,
arranging the file appropriately, such as by lining data up in columns, etc., can
improve readability, reducing unnecessary typographical mistakes, and saving
time in the long run.

The following additional rules should be noted

• Each section starts with a keyword
• There must be no other characters (or spaces) on the same line as a keyword
(i.e. each keyword must start in column 1, and be immediately followed
by a new line keystroke)
• All data associated with a keyword must appear on the subsequent lines
• Data entry is terminated by a forward slash symbol (/)
• Lines beginning with two dashes (--) are ignored, and treated as comment
• Blank lines are ignored

To illustrate the use of keywords, data and comments, the following style conventions,
illustrated in Figure 2, will be used here.

Figure 2.
Example of conventions
used to identify components Comments Number of cells
of input data file. It should NX NY NZ
be noted that the actual
input file should be in
ASCII text format only KEYWORDS DIMENS
(as produced by Notepad,
WordPad or other basic Data (followed by /) 5 5 3/
text editor), and should
not contain italic, bold or 4.3 Model Dimensions
coloured letters. The first step in setting up a model is to define:
• Title of run
• Type of geometry to be used (Cartesian or radial, though Cartesian is
often the default)
• Number of cells in each direction (x, y, z, or r, θ, z)
• Phases to be modelled (oil, water, gas, vapourised oil in the gas, dissolved
gas in the oil)

Institute of Petroleum Engineering, Heriot-Watt University 7

• Units to be used (field, metric or lab)
• Number of wells
• Start date for simulation (usually corresponding to the date of first oil

The model set up in Tutorial 1A consists of a Cartesian grid of 5 x 5 x 3 cells, each cell
having dimensions of 500 ft x 500 ft x 50 ft, as shown in Figure 3.

500 1
500 3
500 4

1 50
2 50
3 50
1 Figure 3.
500 2 Cartesian grid of 5 x 5 x
500 3 3 cells used to represent
500 4 reservoir system to be
500 5 modelled in Tutorial 1A.

Cartesian is the default geometry used by ECLIPSE, so it does need to be specified

explicitly. A two-phase oil and water calculation is to be performed in this model, with
the injection and production wells to be located at opposite corners, and completed in
all three layers. ECLIPSE allows wells to be grouped together so that the cumulative
production or injection rates may be specified or calculated. Here, we will assume
that the injection and production wells are in two separate groups. Field units are
to be used throughout the input data file. (Note that once a choice of units has been
made, it must be used consistently for all data entry. This precludes, for example,
using feet (field units) for depths and bars (metric units) for pressures in the same
run.) The title for this calculation will be “3D 2-Phase”, and it is assumed that first
oil was on 1st January 2001. Generated output should be written to a single unified
output file. (The ECLIPSE default is to create a separate output file for every time
step, which has the advantage that not all the data output data is lost if one file is in
some way corrupted, but this may result in an unmanageable number of files being

The above information is all that is required for defining the dimensioning data
that goes in the first section of an ECLIPSE data file, referred to as the RUNSPEC
section. The form in which this data should be entered is shown in Figure 4.
The following keywords are used:

RUNSPEC Section header

DIMENS Number of cells in X, Y and Z directions
OIL Calculate oil flows
WATER Calculate water flows
FIELD Use field units throughout (i.e. feet, psi, lb, bbl, etc.)
WELLDIMS Number of wells, connections per well, groups, wells per group

Reservoir Simulation Model Set-Up
UNIFOUT Unified output file
START Start date of simulation (1st day of production)

Every time an unfamiliar keyword is encountered, it is well worth looking it up in

the online manual, and this is probably as good a point to start as any! Particular
attention should be paid to units. For example, when using field units gas rates
are entered in MSCF/day. Entering a value in SCF/day would be allowed by the
simulator, but would lead to completely wrong results.


Base case for tutorials


3D 2-Phase

Number of cells

5 5 3/




Maximum well / connection / group values

#wells #cons/w #grps #wells/grp

2 3 2 1/

Unified output files


Figure 4. Simulation start date

RUNSPEC Section of input 1 JAN 2001 /
data file.

Institute of Petroleum Engineering, Heriot-Watt University 9

4.4 Grid and Rock Properties
Having identified the number of grid cells in the X, Y and Z directions required
to model the reservoir or part of the reservoir being studied, the following grid
properties must be defined:
• Dimensions of each cell
• Depth of each cell (or at least the top layer)
• Cell permeabilities in each direction (x, y, z, or r, θ, z)
• Cell porosities

If a Cartesian grid is being used, as here, then the size of each cell may be specified by
providing data on the length, width and height of each cell. The current grid has 75
cells (5 x 5 x 3), and thus 75 values must be specified for each property.

Each cell in the model is to be 500 ft long, by 500 ft wide, by 50 ft thick. There are
three layers, the top layer being at a depth of 8,000 ft. All three layers are assumed
to be continuous in the vertical direction, so there is no need to specify the
depths of the second and third layers - the simulator can calculate these implicitly
from the depth of the top layer and the thickness of the top and middle layers.
The formation has a uniform porosity of 0.25, and the layer permeabilities in
each direction are given below.

Permeability (mD)
Layer Horizontal Vertical
X direction Y direction Z direction
1 200 150 20
2 1000 800 100
3 200 150 20

This represents the minimum information that is required for defining the grid and
rock properties for the second section of an ECLIPSE data file, referred to as the GRID
Section. It is useful to output a file that allows these values to be viewed graphically
by one of the post-processors. This enables a quick visual check that the grid data has
been entered correctly. The following keywords are used:

GRID Section header

DX Size of cells in the X direction
DY Size of cells in the Y direction
DZ Size of cells in the Z direction
TOPS Depth of cells
PERMX Cell permeabilities in the X direction
PERMY Cell permeabilities in the Y direction
PERMZ Cell permeabilities in the Z direction
PORO Cell porosities
INIT Output grid values to .INIT file

ECLIPSE normally assumes that grid values, such as DY, DZ, PERMX, PORO, etc.,
are being entered for the whole grid. If values are only being entered for a subsection
of the grid, then the BOX and ENDBOX keywords may be used to identify this
subsection (an example is given later). If no BOX is defined, or after an ENDBOX

Reservoir Simulation Model Set-Up
keyword, ECLIPSE assumes that cell values are being defined for the entire grid.

The values of each grid property, such as cell length, DX, are read in a certain order.
If the co-ordinates of each cell are specified by indices (i, j, k), where i is in the X
direction, j is in the Y direction, and k is in the Z direction, then the values are read
in with i varying fastest, and k slowest. The first value that is read in is for cell
(1, 1, 1), and the last one is for cell (NX, NY, NZ), where NX, NY and NZ are the
number of cells in the X, Y and Z directions respectively.

Thus, in this (NX=5, NY=5, NZ=3) model, the values of DX (and every other
grid value such as DY, DZ, PERMX, PORO, etc.) will be read in in the order
shown in Figure 5.

No i j k 500 1
1 1 1 1 500
2 2 1 1 500 3
3 3 1 1
500 4
4 4 1 1
5 5 1 1 500
6 1 2 1
7 2 2 1 1 50
Figure 5. 8 3 2 1 2 50
. . . . 3 50
Order in which cell property . . . .
500 1
values are read in by 24 4 5 1
25 5 5 1 500 2
ECLIPSE, starting at (1, 1, 26 1 1 2 500 3
1), and finishing at (5, 5, 3), 27 2 1 2 500 4
. . . . 5 Y X
with the i index varying the . . . .

fastest, and the k index the 75 5 5 3 Z

The length (DX) of each of the 75 cells in Tutorial 1A is the same: 500 ft. Thus
the data may be entered as:

500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500
500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500
500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500
500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500
500 500 500 500 500 500 500 /

Most simulators will allow the definition of multiple cells, each with the same
size, to be lumped together. In ECLIPSE this is done by prefixing the value
(cell size) by the number of cells to be assigned that value, and separating these
two numbers by a “*”. Thus, since all 75 cells in the model have a length of
500 ft, this may be entered as:

75*500 /

Note that the multiplier comes first, then the “*” operator, then the value. There
should be no spaces on either side of the “*”.

Institute of Petroleum Engineering, Heriot-Watt University 11

This convention may be used for all other grid parameters.

If cell depths are only to be defined for the top layer of cells using the TOPS
keyword, then a box must be used to identify this top layer as the only section of the
grid for which depths are being defined. The box that encompasses the top layer is
defined as from 1 to 5 in the X direction, 1 to 5 in the Y direction, but only 1 in the Z
direction. Instead of 75 cells for the whole model, there are only 25 cells in this section
of the model, and thus only 25 values of TOPS need be defined:

1 5 1 5 1 1 /

25*8000 /


The GRID Section of the Tutorial 1A input data file should be as shown in
Figure 6.

Reservoir Simulation Model Set-Up

Size of each cell in X, Y and Z directions

75*500 /

75*500 /


TVDSS of top layer only

X1 X2 Y1 Y2 Z1 Z2

1 5 1 5 1 1/

25*8000 /


Permeability in X, Y and Z directions for each cell

25*200 25*1000 25*200 /

25*150 25*800 25*150 /

25*20 25*100 25*20 /

Porosity of each cell

75*0.2 /
Figure 6.
Output file with geometry and rock properties (.INIT)
GRID Section of input data INIT

Institute of Petroleum Engineering, Heriot-Watt University 13

4.5 Fluid Properties
Having defined the grid and rock properties such as permeability and porosity, the
following Pressure/Volume/Temperature (PVT), viscosity, relative permeability and
capillary pressure data must be defined:
• Densities of oil, water and gas at surface conditions
• Formation factor and viscosity of oil vs. pressure
• Pressure, formation factor, compressibility and viscosity of water
• Rock compressibility
• Water and oil relative permeabilities, and oil-water capillary pressure
vs. water saturation

The densities of the three phases ρoil, ρwater and ρgas are given below. (Note that all three
densities must be supplied, even though free gas is not modelled in the system.)

Oil Water Gas

(lb/ft3) (lb/ft3) (lb/ft3)
49 63 0.01

The oil formation volume factor (Bo) and viscosity (μo) is provided as a function
of pressure (P).

Pressure Oil FVF Oil Viscosity

(psia) (rb/stb) (cP)
300 1.25 1.0
800 1.20 1.1
6000 1.15 2.0

At a pressure of 4,500 psia, the water formation volume factor (Bw) is 1.02 rb/stb,
the compressibility (cw) is 3 x 10-6 PSI-1 and the viscosity (μw) is 0.8 cP. Water
compressibility does not change with pressure within the pressure ranges encountered
in the reservoir, and thus viscosibility (∂μw/∂P) is 0. The rock compressibility at a
pressure of 4,500 psia is 4 x 10-6 PSI-1. Water and oil relative permeability data and
capillary pressures are given as functions of water saturation below.

Sw krwater kroil capillary pres.

0.25 0.00 0.90 4.0
0.50 0.20 0.30 0.8
0.70 0.40 0.10 0.2
0.80 0.55 0.00 0.1

This data should be inserted in the third section of the ECLIPSE data file, the
PROPS section. The form in which this data should be entered is shown in Figure
7. The following keywords are used:

PROPS Section header

DENSITY Surface density of oil, water and gas phases
PVDO PVT data for dead oil relating FVF and viscosity to pressure
PVTW PVT data for water relating FVF, compressibility and viscosity
to pressure
ROCK Compressibility of the rock

Reservoir Simulation Model Set-Up
SWOF Table relating oil and water relative permeabilities and oil-water
capillary pressure to water saturations

Densities in lb/ft3
Oil Water Gas

49 63 0.01 /

PVT data for dead oil

P Bo Vis

300 1.25 1.0
800 1.20 1.1
6000 1.15 2.0 /

PVT data for water

P Bw Cw Vis Viscosibility

4500 1.02 3e-06 0.8 0.0 /

Rock compressibility
P Cr

4500 4e-06 /

Water and oil rel perms and capillary pressure

Sw Krw Kro Pc

0.25 0.0 0.9 4.0
0.5 0.2 0.3 0.8
0.7 0.4 0.1 0.2
Figure 7.
0.8 0.55 0.0 0.1 /
PROPS Section of input
data file.

Institute of Petroleum Engineering, Heriot-Watt University 15

4.6 Initial Conditions
Once the rock and fluid properties have all been defined, the initial pressure and
saturation conditions in the reservoir must be specified. This may be done in one of
three ways:
1) Enumeration
2) Equilibration
3) Restart from a previous run

1) Enumeration. In this method of initialising the model, the pressure, oil and water
saturations in each cell at time = 0 are set in much the same way as permeabilities and
porosities are set. This method is the most complicated and least commonly used. A
failure to correctly account for densities when setting the pressures in cells at different
depths will result in a system that is not initially in equilibrium.

2) Equilibration. This is the simplest and most commonly used method for
initialising a model. A pressure at a reference depth is defined in the input data,
and the model then calculates the pressures at all other depths using the previously
entered density data to account for hydrostatic head. The depths of the water-oil
and gas-oil contacts are also specified if they are within the model, and the initial
saturations can then be set depending on position relative to the contacts. (In
a water-oil system, above the oil-water contact the system is at connate water
saturation, below the contact Sw = 1.)

3) Restart from a previous run. If a model has already been run, then one of the
output time steps can be used to provide the starting fluid pressures and saturations
for a subsequent calculation. This option will typically be used where a model has
been history matched against field data to the current point in time, and various
future development scenarios are to be compared. A restart run will use the
last time step of the history-matched model as the starting point for a predictive
calculation, which may then be used to assess future performance. Time is saved
by not repeating the entire calculation.

In this example the model is being set up to predict field performance from first oil,
and thus there is no previous run to use as a starting point. The equilibration model is
to be used, with an initial pressure of 4,500 psia at 8,000 ft. The model should initially
be at connate water saturation throughout. To achieve this, the water-oil contact
should be set at 8,200 ft, 50 ft below the bottom of the model. The water saturation
in each cell will be set to the first value in the relative permeability (SWOF) table,
which is 0.25. (If any cells were located below the water-oil contact, they would
be set to the last value in the relative permeability table, which would thus have to
include relative permeability and capillary pressure values for Sw = 1.)

An output file containing initial cell pressures and saturations for display should
be requested so that a visual check can be made that the correct initial values of
these properties have been calculated.

This initialisation data should be inserted in the fourth section of the ECLIPSE
data file, the SOLUTION section. The form in which this data should be entered is
shown in Figure 8. The following keywords are used:
SOLUTION Section header

Reservoir Simulation Model Set-Up
EQUIL Equilibration data (pressure at datum depth and contact depths)
RPTRST Request output of cell pressures and saturations at t = 0


Initial equilibration conditions

Datum Pi@datum WOC Pc@WOC

8075 4500 8200 0/

Output to restart file for t=0 (.UNRST)

Restart file Graphics
for init cond only
Figure 8.
input data file.

4.7 Output Requirements

Clearly there is no point in performing a reservoir simulation if no results
are output. The parameters that should be calculated are specified in the
SUMMARY section by the use of appropriate keywords, but for this section
only the keywords are not found in the main section of the manual, but in the
Summary Section Overview.

Most of the summary keywords consist of four letters that follow a basic

1st letter:
F - field
R - region
W - well
C - connection
B - block

2nd letter:
O - oil (stb in FIELD units)
W - water (stb in FIELD units)
G - gas (Mscf in FIELD units)
L - liquid (oil + water) (stb in FIELD units)
V - reservoir volume flows (rb in FIELD units)
T - tracer concentration
S - salt concentration
C - polymer concentration
N - solvent concentration

Institute of Petroleum Engineering, Heriot-Watt University 17

3rd letter:
P - production
I - injection

4th letter:
R - rate
T - total

Thus, use of the keyword FOPR requests that the Field Oil Production Rate be output,
and WWIT represents Well Water Injection Total, etc.

Keywords beginning with an F refer to the values calculated for the field as a whole,
and require no further identification. However, keywords beginning with another
letter must specify which region, well, connection or block they refer to. Thus,
for example, a keyword such as FOPR requires no accompanying data, but WWIT
must be followed by a list of well names, terminated with a /. If no well names
are supplied, and the keyword is followed only by a /, the value is calculated for all
wells in the model. An example would be


Inj /


Here, the following will be calculated:

• Oil production rate for the entire field
• Cumulative water injection for well “Inj”
• Well bottomhole pressure for all wells in the model

In Tutorial 1A the following parameters should be calculated and output:

• Field average pressure
• Bottomhole pressure of all wells
• Field oil production rate
• Field water production rate
• Field oil production total
• Field water production total
• Water cut in well PROD
• CPU usage

In addition, the output Run Summary file (.RSM) should be defined such that it
can easily be read into MS Excel.

The form in which this data should be entered is shown in Figure 9. The
following keywords are used:

SUMMARY Section header

FPR Field average pressure

Reservoir Simulation Model Set-Up
WBHP Well Bottomhole pressure
FOPR Field Oil Production Rate
FWPR Field Water Production Rate
FOPT Field Oil Production Total
FWPT Field Water Production Total
WWCT Well Water Cut
CPU CPU usage
EXCEL Create summary output as Excel readable Run Summary file


Field average pressure


Bottomhole pressure of all wells


Field oil production rate


Field water production rate


Field oil production total


Field water production total


Water cut in PROD


CPU usage
Figure 9.
SUMMARY Section of Create Excel readable run summary file (.RSM)
input data file.

4.8 Production Schedule

Having defined the initial conditions (t = 0) in the SOLUTION Section, the final part
of the input data file defines the well controls and time steps (t > 0) in the SCHEDULE
Section. The main functions that are performed here are:
• Specify grid data to be output for display or restart purposes
• Define well names, locations and types
• Specify completion intervals for each well
• Specify injection and production controls for each well for each given period

Institute of Petroleum Engineering, Heriot-Watt University 19

(time step)
Basic pressure and saturation data should be generated at every time step to enable
a 3-D display of the model to be viewed at each time step.

A production well, labeled PROD and belonging to group G1, is to be drilled in cell
position (1,1), and a water injection well, INJ belonging to group G2, is to be drilled
in cell (5,5). Both wells will have 8 inch diameters, and should be completed in
all three layers. They both have pressure gauges at their top perforation (8,000 ft).
Both will be open from the start of the simulation, enabling production of 10,000
stb/day of liquid (oil + water) from the system, and pressure support provided by
injection of 11,000 stb/day of water. The simulation should run for 2,000 days,
outputting data every 200 days.

A number of keywords in the SCHEDULE section will be able to read in data that
the user may wish to default or not supply all. This can be done by using the “*”
character, with the number of values to be defaulted or ignored on the left, and the
space to the right left blank. Thus “1* “ ignores one value, “2* “ ignores the next
two values, etc. For example, in the COMPDAT keyword, we may wish to specify
values for items 1 to 6, and item 9 (which is the wellbore diameter), but items 7 and 8
should remain unspecified. This may be achieved as follows:

Completion interval
Well Location Interval Status Well
name I J K1 K2 O or S ID

Item number
1 2 3 4 5 6 7 8 9
PROD 1 1 1 3 OPEN 2* 0.6667 /

The keywords to be used are:

SCHEDULE Section header

RPTRST Request output of cell pressures and saturations at all time
steps (t > 0)
WELSPECS Define location of wellhead and pressure gauge
COMPDAT Define completion intervals and wellbore diameter
WCONPROD Production control
WCONINJ Injection control
TSTEP Time step sizes (for output of calculated data)
END End of input data file

These keywords should appear as the last section of the data file as shown in Figure
10. Although not the case in this simple example, this section will typically be the
longest, containing flow rates for each well on a monthly basis for the history of the
field. It should be noted that the time steps input here refer to time intervals at which

Reservoir Simulation Model Set-Up
data are output. The simulator will try to use these time step sizes as numerical
time step also, but if the calculations do not converge, it will automatically cut the
numerical time step sizes.


Output to Restart file for t > 0 (.UNRST)

Restart file Graphics
every step only


Location of wellhead and pressure gauge

Well Well Location BHP Pref.
name group I J datum phase

PROD G1 1 1 8000 OIL /
INJ G2 5 5 8000 WATER /

Completion interval
Well Location Interval Status Well
name I J K1 K2 0 or S ID

PROD 1 1 1 3 OPEN 2* 0.6667 /
INJ 5 5 1 3 OPEN 2* 0.6667 /

Production control
Well Status Control Oil Wat Gas Liq. Resv BHP
name mode rate rate rate rate rate lim

PROD OPEN LRAT 3* 10000 1* 2000 /

Injection control
Well Fluid Status Control Surf Resv Voidage BHP
Name TYPE mode rate rate frac flag lim

INJ WATER OPEN RATE 11000 3* 20000 /

Number and size (days) of timesteps

Figure 10. 10*200 /
SCHEDULE Section of
input data file.

Institute of Petroleum Engineering, Heriot-Watt University 21


5.1 Running ECLIPSE on a PC

Once the input data file has been edited, it should be saved with the file extension
“.DATA”. For Tutorial 1A choose a file name such as “TUT1A.DATA”. Care
should be taken that the text editor does not append the suffix “.txt” onto the
file name, as this will render the file unreadable to ECLIPSE. This can be
avoided by using Menu->File->Save As and selecting “All Files” instead of “Text
Documents” as the “Save as type”.

Having saved the input data file, the GeoQuest Launcher may be used to run
ECLIPSE, and the user will be prompted to locate the input file. The simulation
will then start, and will run by reading every keyword in the order in which
they appear in the input file.

5.2 File Name Conventions

If any of the keywords or data are incorrectly entered, the run will stop without
performing the required flow calculations. If the simulator is satisfied that all data
has been entered correctly, then it will perform the requested flow calculations, and
various output files will be generated during the run, as follow:

TUT1A.PRT The .PRT file is an ASCII file that is generated for every
successful and unsuccessful run. It contains a list of the keywords, and will
indicate if any keywords have been incorrectly entered. If the simulation fails,
this file should be checked for the cause of the failure. A search for an ERROR
in this file will usually reveal which keyword was the culprit. If the run was
successful, this file will contain summary data such as field average pressure
and water cut for each time step.

TUT1A.GRID The .GRID file is a binary file that contains the geometry of the
model, and is used by post processors for displaying the grid outline.

TUT1A.INIT The .INIT file is a binary file that contains initial grid property
data such as permeabilities and porosities. These may be displayed using a
post-processor to check that the data have been entered correctly, and to display
a map of field permeabilities, etc.

TUT1A.UNRST The .UNRST file is a unified binary file that contains pressure and
saturation data for each time step. These may be displayed using a post-processor,
or may be used as the starting point for an ECLIPSE restart run.

TUT1A.RSM The .RSM file is an ASCII file that can be read into MS Excel
to display summary data in line chart format. This file is only created once the run
has completed. During the run the summary data is stored in file TUT1A.USMRY,
which is a binary file readable only by the GeoQuest post-processors.

The GeoQuest post-processors are Graf and FloViz. During this course FloViz is used
for 3D displays of the model, showing, for example, progression of the water flood

Reservoir Simulation Model Set-Up
by displaying saturations varying with time (Figure 11). Excel is used to display line
charts such as water cut vs. time, etc. Both grid and line charts may be displayed in
Graf, which is a powerful though more complicated post-processor than FloViz. The
functionality of Graf is being replaced by ECLIPSE Office, which is a GUI that may
be used for setting up data files and viewing results, and may optionally be used for
subsequent tutorial sessions. However, students are encouraged to use a basic text
editor for pre-processing, and Excel and FloViz for post-processing for Tutorial 1A,
since this will give a better understanding of the calculations being performed.

Figure 11
FloViz visualisation of
water saturation for four
time steps, showing
progression of water flood
in Tutorial 1A. The
injection well is on the left
and the production well on
the right of the 5 x 5 x 3


In this section of the course, we have presented the working details of how to set up
a a practical reservoir simulation model. We have used the Schlumberger GeoQuest
ECLIPSE software for the specific case presented here. However, the general
procedures are very similar for most other commercially available simulators.
The various input data that are required should be quite familiar to you from the
discussion in the introductory chapter of the course (Chapter 1). However, how
these are systematically organised as input for the simulator should now be clear.
The vast possibilities for simulation output have also been discussed in this section
and you should know be aware of how to choose this output, organise it is files and
then visualise it later. The issue of visualisation was also discussed previously but
its value should be better appreciated by the student.

Institute of Petroleum Engineering, Heriot-Watt University 23


(A 3D 2-Phase Reservoir Simulation Problem)

Prepare an input data file for simulating the performance of a two-phase (water/oil)
three dimensional reservoir of size 2500’ x 2500’ x 150’, dividing it into three layers of
equal thickness. The number of cells in the x and y directions are 5 and 5 respectively.
Other relevant data are given below, using field units throughout:

Depth of reservoir top: 8000 ft

Initial pressure at 8075’: 4500 psia
Porosity: 0.20

Permeability in x direction: 200 mD for 1st and 3rd layers and 1000 mD for
2nd layer.
Permeability in y direction: 150 mD for 1st and 3rd layers and 800 mD for
2nd layer.
Permeability in z direction: 20 mD for 1st and 3rd layers and 100 mD for 2nd

500 1
500 3
500 4

1 50
2 50
3 50

500 1
500 2
500 3
500 4 Figure 1
500 5 Schematic of model.

Water and Oil Relative Permeability and Capillary Pressure Functions.

Water Saturation krw kro Pcow

0.25* 0.0 0.9 4.0
0.5 0.2 0.3 0.8
0.7 0.4 0.1 0.2
0.8 0.55 0.0 0.1
1.0 1.00 0.0 0.0
* Initial saturation throughout.

Reservoir Simulation Model Set-Up
Water PVT Data at Reservoir Pressure and Temperature.

Pressure Bw cw μw Viscosibility
(psia) (rb/stb) (psi-1) (cp) (psi-1)

4500 1.02 3.0E-06 0.8 0.0

Oil PVT Data, Bubble Point Pressure (Pb) = 300 psia.

Pressure Bo Viscosity
(psia) (rb/stb) (cp)

300 1.25 1.0

800 1.20 1.1
6000 1.15 2.0

Rock compressibility at 4500 psia: 4E-06 psi-1

Oil density at surface conditions: 49 lbs/cf
Water density at surface conditions: 63 lbs/cf
Gas density at surface conditions: 0.01 lbs/cf

The oil-water contact is below the reservoir (8,200 ft), with zero capillary pressure
at the contact.

Drill a producer PROD, belonging to group G1, in Block No. (1, 1) and an injector
INJ, belonging to group G2, in Block No. (5, 5). The inside diameter of the wells is
8”. Perforate both the producer and the injector in all three layers. Produce at the
gross rate of 10,000 stb liquid/day and inject 11,000 stb water/day. The producer has
a minimum bottom hole pressure limit of 2,000 psia, while the bottom hole pressure
in the injector cannot exceed 20,000 psia. Start the simulation on 1st January 2000,
and use 10 time steps of 200 days each.

Ask the program to output the following data:

• Initial permeability, porosity and depth data (keyword INIT in GRID section)

• Initial grid block pressures and water saturations into a RESTART file
(keyword RPTRST in SOLUTION section)

• Field Average Pressure (FPR)

Bottom Hole Pressure for both wells (WBHP)
Field Oil Production Rate (FOPR)
Field Water Production Rate (FWPR)
Total Field Oil Production (FOPT)
Total Field Water Production (FWPT)
Well Water Cut for PROD (WWCT)
CPU usage (TCPU)

to a separate Excel readable file (using keyword EXCEL) in the SUMMARY


Institute of Petroleum Engineering, Heriot-Watt University 25

• Grid block pressures and water saturations into RESTART files at each report
step of the simulation (keyword RPTRST in SCHEDULE section)


1 Edit file TUT1A.DATA in folder \eclipse\tut1 by dragging it onto the

Notepad icon, fill in the necessary data, and save the file.

2 Activate the ECLIPSE Launcher from the Desktop or the Start menu.

3 Run ECLIPSE and use the TUT1A dataset.

4 When the simulation has finished, use Excel to open the output file
TUT1A.RSM, which will be in the \eclipse\tut1 folder. You will need to
“Files of type: All files (*.*)”
and import the data as “Fixed width” columns.

5 Plot the BHP of both wells (WBHP) vs. time and the field average pressure
(FPR) vs. time on Figure 1.

6 Plot the water cut (WWCT) of the well PROD and the field oil production
rate (FOPR) vs. time on Figure 2.

7 Plot on Figure 3 the BHP values for the first 10 days in the range 3,500 psia
to 5,500 psia.

Explain the initial short-term rise in BHP in the injection well and drop in BHP in
the production well. Account for the subsequent trends of these two pressures and
of the field average pressure, relating these to the reservoir production and injection
rates, water cut and the PVT data of the reservoir fluids.

Make a copy of the file TUT1A.DATA called TUT1B.DATA in the same folder

By modifying the keyword TSTEP change the time steps to the following:


Modify the WCONINJ keyword to operate the injection well at a constant flowing
bottom hole pressure (BHP) of 5000 psia, instead of injecting at a constant 11,000
stb water/day (RATE).

Add field volume production rate (FVPR) to the items already listed in the SUMMARY

Run Eclipse using the TUT1B.DATA file, and then plot the two following pictures
in Excel:

Reservoir Simulation Model Set-Up

Figure 4: Both well bottom hole pressures and field average pressure vs.
time, showing pressures in the range 3,700 psia to 5,100 psia.
Figure 5: Field water cut and field volume production rate vs. time.

Account for the differences between the pressure profiles in this problem and Tutorial
1A. To assist with the interpretation, calculate total mobility as a function of water
saturation for 4 or 5 saturation points, using:

K ro (Sw ) Krw (Sw )

MTOT (Sw ) = +
µo µw

and show how this would change the differential pressure across the reservoir as
the water saturation throughout the reservoir increases. From Figure 5, explain the
impact of the WWCT profile (fraction) on the FVPR (rb/day).

Copy file TUT1B.DATA to TUT1C.DATA in the same folder.

This time, instead of injecting at a constant flowing bottom hole pressure of 5000 psi,
let the simulator calculate the injection rate such that the reservoir voidage created
by oil and water production is replaced by injected water. To do this, modify the
control mode for the injection well (keyword WCONINJ) from BHP to reservoir rate
(RESV), and use the voidage replacement flag (FVDG) in item 8. Set the upper limit
on the bottom hole pressure for the injection well to 20,000 psia again.

Note the definitions given in the manual for item 8 of the WCONINJ keyword. Based
on the definition for voidage replacement,
reservoir volume injection rate = item 6 + (item 7 * field voidage rate)

Therefore, to inject the same volume of liquid as has been produced, set
item 6 to 0, and
item 7 to 1.

Run Eclipse using the TUT1C.DATA file, and then run Floviz, to display the grid
cell oil saturations (these displays need NOT be printed).

Discuss the profile of the saturation front in each layer, and explain how it is affected
by gravity and the distribution of flow speeds between the wells.

Institute of Petroleum Engineering, Heriot-Watt University 27













X1 X2 Y1 Y2 Z1 Z2







Reservoir Simulation Model Set-Up




P Bo Vis


P Bw Cw Vis Viscosibility


P Cr


Sw Krw Kro Pc




Block Block Create initial
P Sw restart file




Institute of Petroleum Engineering, Heriot-Watt University 29

Block Block Create restart file
P Sw at each time step






NAME I J K1 K2 O or S ID