You are on page 1of 139

Principles of Reservoir

Simulation
KBTU, Almaty, Feb 2010

SAFETY MOMENT

An Introduction to ECLIPSE
Black-oil
(Lecture 2)

Lecture Outline
1. PROPS Section
1. Fluid Properties
2. Saturation Functions & Rock Properties

2. REGIONS Section
3. SOLUTION Section
1. Equilibration
2. Enumeration
3. Restarts

PROPS SECTION

PROPS Section
The purpose of the PROPS section is to provide
P and Sw dependent properties of reservoir fluid
and rock
Fluid data:
Fluid PVT as function of P
Reference density or gravity

Rock data:
Rel perms as function of Sw
Pc as function of Sw
crock as function of P

Why ECLIPSE Needs PVT?


Production is usually accounted for in surface
units
PVT data is used to translate produced surface
volumes to reservoir conditions, through
densities convert to mass, ready for simulators
mass balance equations
In addition to PVT table reference densities of
each phase should be specified

Production From Reservoir to


Stock Tank

Black Oil Overview


ECLIPSE Terminology

Black Oil Overview


Black oil simulators can not model
compositional changes explicitly
Such processes as liberation of gas or
condensate drop-out are modeled
indirectly, by allowing solution GOR or
vapor OGR to vary

Requirements for Black Oil


Simulation
Amount of condensate drop-out or gas
liberation should be a small part of HIP
The remaining HC composition should not
change significantly when gas is liberated
or condensate drops out
Path taken by fluids should be far from
critical point
The process should be isothermal

Black Oil vs. Compositional


Black oil simulators
spend most of their
CPU time solving flow
equations.
Computational load of
calculating PVT
properties by table
lookup is very small

Black Oil vs. Compositional


Compositional simulators have an extra
burden of iterative EOS solution and flash
calculations.
This almost always makes them more
CPU intensive than BO simulations
In practice, more than 50% of CPU time is
spent on flash calculations and EOS
solution

PROPS in Compositional
Simulation
Reservoir fluid is described in terms of several
flowing pseudo-components (6-12)
Once fluid flows have been calculated each
component must be flashed to equilibrium
conditions, this is an iterative process
After flash calculations, cubic EOS should be
solved to yield phase densities at given
pressures

Black Oil vs. Compositional


Flow equation solution for each
cell subject to material balance

Flow equation solution for each


cell subject to material balance

PVT data lookup from


supplied tables

Iterative solution of cubic EOS


for each component in each cell

Iterative flash of component


mixture to equilibrium conditions
for each cell

For every timestep

Black Oil Phases


Phases should be specified in RUNSPEC
section:
OIL
WATER
GAS
DISGAS
VAPOIL

Black Oil Phase Options


# Phases

Phase Combination

RUNSPEC keywords

Live Oil with Dissolved Gas

Water

OIL, GAS, DISGAS,


WATER

Wet Gas with Vaporised Oil

Water

OIL, GAS, VAPOIL,


WATER

Live Oil with


Dissolved Gas

Wet Gas with


Vaporised Oil

Water

OIL, GAS, DISGAS,


VAPOIL, WATER

RSVD GOR vs. depth & PBVD Pb vs. depth


in SOLUTION section
RVVD OGR vs. depth & PDVD Pd vs. depth
in SOLUTION section

Black Oil Phase Options


# Phases
2

Phase Combination

RUNSPEC keywords

Dead Oil

Water

OIL, WATER

Dry Gas

Water

GAS, WATER

Dead Oil

Dry Gas

OIL, GAS

RSCONST Const. GOR in PROPS section.


RSVD may not be used
RVCONST Const. OGR in PROPS section.
RVVD may not be used

Black Oil Phase Options


# Phases
1

Phase Combination

RUNSPEC keywords

Dead Oil

OIL

Dry Gas

GAS

Water

WATER

RSCONST Const. GOR in PROPS section.


RSVD may not be used
RVCONST Const. OGR in PROPS section.
RVVD may not be used

Black Oil ECLIPSE Terminology


Dead Oil undersaturated oil that will
never go below bubble point during
simulation. Rs fixed
Live Oil - undersaturated oil that will go
below bubble point or saturated oil that will
keep releasing dissolved gas during
simulation. Rs has to be supplied as a
function of pressure

Oil Model in Black Oil Simulators


All properties depend only on pressure
(isothermal model)
EOS is not solved, it is entered as tables
which are interpolated and extrapolated
For dead oil Rs = const, Pres > Pb
For live oil Rs = f(Pres)

Conditions to Model Live Oil in


Black Oil Simulation
The oil composition does not change when
gas comes out of solution
The amount of gas coming out of solution
is small proportion of total HC in place
Evolution of gas does not bring the mixture
too close to the critical point

Oil Equation of State for Black


Oil
Model
DENSITY
keyword

Where:
From PVT tables

Dead Oil PVT Data Entry Using


PVDO

Dead Oil PVT Data Entry Using


PVDO
PVDO keyword is used to specify oil properties
above bubble point
Multiple PVDO tables may follow a single
PVDO keyword for PVTNUM > 1
The simulation is terminated if the pressure in
any grid cell falls below the Pb for that cell
Pressure value should increase monotonically
down the table

Dead Oil PVT Data Entry Using


PVCDO

Dead Oil PVT Data Entry Using


PVCDO
PVCDO keyword is used to specify oil properties
above bubble point
Instead of specifying Bo and o vs pressure,
effectively the slopes of Bo and o are specified
above Pb
Maximum extrapolation pressure should be
specified using PMAX
The simulation is terminated if the pressure in
any grid cell falls below the Pb for that cell

A Bit of Live Oil Physics


1. Blow down: Cell pressure
drops below saturation
pressure, gas bubbles out
and Rs, FVF go down
2. Re-pressurize: Liberated gas
is re-absorbed following the
saturated Rs vs Pb curve
3. Re-pressurize: If no gas left
to be reabsorbed (has
migrated away), ECLIPSE
interpolates an
undersaturated curve

A Bit of Live Oil Physics


Rs = const
Rs = const
Rs = const

Rs = const

Live Oil PVT Data Entry Using


PVTO

Live Oil PVT Data Entry Using


PVTO
PVTO keyword specifies properties of oil
above and below the bubble point
It is a table of pressure, FVF, o versus
bubble point GOR
Multiple PVTO tables may follow a single
PVTO keyword for PVTNUM > 1

Live Oil PVT Data Entry Using


PVCO

A Bit of Live Oil Physics

Live Oil PVT Data Entry Using


PVCO
Instead of specifying Bo and o vs
pressure, effectively the slopes of Bo and
o are specified above Pb
PVCO is live oil equivalent of PVCDO
Given data points specify the properties at
a series of saturation pressures and the
differential quantities are used to
extrapolate into the undersaturated region

Gas Properties Entry

ECLIPSE Black Oil Terminology


Dry Gas undersaturated gas that
will never go below dew point in the
reservoir
Wet Gas gas that may go below
dew point and drop-out some
vaporized condensate in the reservoir

Gas Equation of State in the


Black Oil Model
All properties depend only on pressure
Equation is entered as tables which are
interpolated and extrapolated
For dry gas Rv is fixed and Pres > Pdew
For wet gas Rv must be supplied at Pres <
Pdew

Conditions to Model Wet Gas in


Black Oil Simulation
The gas composition does not change
when oil condenses from vapor phase
The amount of oil deposited from the
vapor phase is a small proportion of total
HIP
Evolution of oil does not bring the mixture
too close to the critical point

Gas Equation of State in the


Black
Oil
Model
DENSITY
keyword

Where:

From PVT tables

Dry Gas PVT Data Entry Using


PVDG

rbbl/Mscf

Dry Gas PVT Data Entry Using


PVDG
The PVDG keyword is used to specify
properties of gas above the dew point
It is a table of FVF and g versus pressure
Multiple PVDG tables may follow a single
PVDG keyword for PVTNUM > 1
The simulation is terminated if the
pressure in any grid cell falls below the
Pdew for that cell

Dry Gas PVT Data Entry Using


PVZG

Use RVCONST to specify


fixed quantity of vaporized
oil above P dew

Wet Gas PVT Data Entry Using


PVTG
PVTG specifies properties of gas
above and below Pd
It is table of Rv, Bg, g as function
of pressure
The undersaturated Rv, Bg, g
must be specified at the highest
Pg in the table
Multiple PVTG tables may follow
a single PVTG keyword for
PVTNUM > 1

The Water Equation of State

Where:

The Water Equation of State


All properties depend only on pressure
Water phase has only one water
component
Oil & gas do not dissolve in water and
vice-versa
One line of data is required in PVTW for
every PVT region

Water PVT Data Entry Using


PVTW
PVTW
--Pref
4000

Bw
1.03

Cw
3.0E-6

Muw
0.40

CMuw
0.0 /

Who knows WHY?


Reservoir water may differ from region to region, in which case
one line of data for each region should be specified in PVTW
keyword

Reference Densities
In the reservoir liquid
HC phase is stock tank
oil with some dissolved
stock tank gas
In the reservoir vapor
HC phase is stock tank
gas with some
vaporized stock tank oil

Reference Densities
GRAVITY
-- Oil API
-- Gravity
32
DENSITY
-- Oil
--Density
-- Kg/m3
865

Water Specific
Gravity
1.050

Water
Density
Kg/m3
1050

Gas
Density
Kg/m3
0.9051

Gas Specific
Gravity
0.700
/

PVT & VFP Tables Extrapolation


ECLIPSE stores PVT table internally as 1/B.
These quantities are interpolated.
If insufficient PVT data is supplied, ECLIPSE
may extrapolate the PVT properties to
inaccurate or non-physical values
EXTRAPMS keyword requests that a warning
message is printed in the PRT file at the end of a
timestep in which PVT (or VFP) tables have
been extrapolated

Defining Multiple PVT Regions

Defining Multiple PVT Regions


Each cell in the grid is assigned a value of
PVTNUM in the REGIONS section
PVTNUM is an integer indicating which set of
PVT tables should be used in a given cell
Multiple PVT tables are entered under each
relevant keyword
Tables are numbered in order of entry. Identical
tables may be defaulted

Defining Multiple PVT Regions


ECLIPSE requires that each PVT region must be
equilibrated separately
Therefore EQLNUM regions corresponding to
PVTNUM regions must be defined
Subdivision of reservoir into regions and
equilibration are discussed in more detail in the
REGIONS section
NOTE:

Fluids flowing into a cell assume the


PVT properties of that cell

Defining Multiple PVT Regions:


Convergence Problems
Consider oil with GOR of 0.5 flowing into a cell
having a max GOR of 0.4. To conserve mass,
gas must be liberated and free gas will form
If this has not been anticipated by supplying
adequate gas PVT data in the PVDG keyword,
ECLIPSE will extrapolate the gas PVT table, and
may yield inaccurate results

Defining Multiple PVT Types


Using API Tracking

Defining Multiple PVT Types


Using API Tracking
Use API keyword in RUNSPEC section to activate
this option (memory should also be reserved using
TABDIMS keyword)
Engineer explicitly defines in which cell what API oil
is initialized using OILAPI or APIVD (API vs. depth)
in SOLUTION section
For each API gravity well need to specify a separate
PVT table under each relevant keyword (no need to
specify PVTNUM regions)
The proportion of different density oils in a cell can
be calculated from the flow

Defining Multiple PVT Types


Using API Tracking
Mixture surface density is the surface density of
the component oils, weighted by their
concentrations
The oil mixture PVT table is interpolated in each
cell from the component oils in proportion to
their mass concentrations
Mixture density at reservoir conditions is then
calculated from PVT tables
Oil surface density can be found from the PVT
tables

API Tracking Example


20o API displaces half the oil in a cell of 30o API oil.
Surface density of a mixture is 25o API

Effectively, this is used for the o(s) term in the oil


EOS. The rest of the terms in EOS will be taken as
halfway between the PVT tables of 20o and 30o oil

API Tracking Pros & Cons


Pros:
Intermediate oil mixtures are taken into account
Oil PVT props do not change when flowing from
one cell to another

Cons:
ECLIPSE interpolates linearly between PVT
tables in proportion to the mass of each different
oil, but the variation of oil properties with API is
not linear

API Tracking Example

Rock Properties
Saturation Functions

Saturation Functions
The minimum data required is capillary
pressure and rel perm for each active
phase
Data is entered in tabular form as
functions of saturation
ECLIPSE has no facilities to calculate rock
property data from user defined
correlations

Use of Saturation Functions in


ECLIPSE
Used to calculate fluid
mobilities to solve flow
equations between cells

Used to calculate the initial


saturation for each phase
in each cell

Use of Saturation Functions in


ECLIPSE

Used to calculate the


initial transition zone
saturation of each phase

Rock Compressibility
Rock compressibility must
be specified since pore
volume varies under
pressure
ROCK
ROCKTAB, ROCKTABH
OVERBURD

Rock Compressibility Using


ROCK
If rock compressibility is reversible & same
everywhere use ROCK
ROCK
--Pref
4000

Crock
0.40E-5

V pore ( P) = V pore ( Pref ) e

C rock ( P Pref )

(C ( P Pref )) 2

V pore ( P) V pore ( Pref )1 + C ( P Pref ) +

Rock Compressibility Using


ROCK
ROCK tables can be associated with saturation
regions (SATNUM), instead of PVT regions
(PVTNUM) by setting item 3 in ROCKOPTS
keyword

Rock Compressibility Using


ROCKTAB, ROCKTABH
Use ROCKTAB or ROCKTABH to define the
rock compaction data (PV and trans multipliers)
versus pressure
ROCKTAB
--Pres

PV_Mult

Tr_Mult

1000

0.96

0.98

2000

0.99

0.99

3000

1.0

1.00

4000

1.01

1.00 /

ROCKCOMP keyword in
RUNSPEC section
activates advanced rock
compressibility treatment
option.
For more details read Rock
Compressibility chapter of
ETD.

Saturation Functions

Saturation Endpoint Terminology


SWL the connate water
saturation, the lowest Sw value
SWCR critical water
saturation, the highest Sw @
which water is immobile
SWU the maximum water
saturation, the highest Sw
value
SOWCR the critical oil-water
saturation, the highest So @
which oil is immobile

Saturation Endpoint Terminology


SGL the connate gas
saturation, the lowest Sg value
SGCR critical gas
saturation, the highest Sg @
which gas is immobile
SGU the maximum gas
saturation, the highest Sg
value
SOGCR the critical oil-gas
saturation, the highest So @
which oil is immobile

Saturation Table Rules


Each takes the form of multiple columns of data
There must be the same number of entries in each
column of any given table
Saturation and rel perm of displacing phase should
be between 0 and 1 and increase monotonically
Saturation and rel perm of displaced phase should
be between 0 and 1 and decrease monotonically
Table is terminated by forwards slash (/), keyword
may contain multiple tables
So + Sw + Sg = 1 Always!

Saturation Keywords Families


Family 1: SWOF, SGOF, SLGOF Kro is
entered in the same table as Krw and Krg.
Cannot be used when using MISCIBLE
keyword
Family 2: SWFN, SGFN, SGWFN, SOF3,
SOF2, SOF32D Kro is entered in separate
tables

SWOF
Used in runs containing
both oil and water
SWOF consists of
columns of Sw, Krw,
Krow, and Pcow
Krow at connate gas
saturation
Krow @ Max(1-Sw)
should be equal to Krog
@ Sg=0

SWOF
-- Sw
0.22000
0.24400
0.26000
0.29120
0.32664
0.36960
0.45200
0.53520
0.61760
0.70000
1.00000
/

Krw
0.00000
0.00106
0.00229
0.00704
0.01522
0.02962
0.06983
0.12742
0.20072
0.29000
1.00000

Krow
0.90000
0.78672
0.71727
0.59061
0.46649
0.33847
0.15966
0.05483
0.00933
0.00000
0.00000

Pcwo
1.49149
1.09325
0.90359
0.64316
0.45570
0.31455
0.17198
0.10360
0.06742
0.04630
0.00000

SGOF
Used in runs containing
both oil and gas
SGOF consists of
columns of Sg, Krg, Krog,
and Pcog
Krog at connate water
saturation
Krog @ Sg=0 should be
equal to Krow @ Max(1Sw)

SGOF
-- Sg
0.00000
0.10000
0.20000
0.28000
0.36000
0.44000
0.52000
0.60000
0.64000
0.68000
0.78000
/

Krg
0.00000
0.00001
0.00108
0.01293
0.05981
0.14867
0.27022
0.43802
0.53901
0.64000
0.90000

Krog
0.90000
0.61886
0.37343
0.22728
0.12862
0.06112
0.02366
0.00491
0.00246
0.00000
0.00000

Pcgo
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000

SLGOF
Used in runs containing
both oil and gas as
active phase
SLGOF consists of
columns of SL, Krg, Krog,
and Pcog

SWOF, SGOF Keywords Family


SWCR
SWOF
-- Sw
0.22000
0.24400
0.26000
0.29120
0.32664
0.36960
0.45200
0.53520
0.61760
0.70000
1.00000
/

Krw
0.00000
0.00106
0.00229
0.00704
0.01522
0.02962
0.06983
0.12742
0.20072
0.29000
1.00000

SOWCR
SWU

Krow
0.90000
0.78672
0.71727
0.59061
0.46649
0.33847
0.15966
0.05483
0.00933
0.00000
0.00000

Pcwo
1.49149
1.09325
0.90359
0.64316
0.45570
0.31455
0.17198
0.10360
0.06742
0.04630
0.00000

SGCR
SGOF
-- Sg
0.00000
0.10000
0.20000
0.28000
0.36000
0.44000
0.52000
0.60000
0.64000
0.68000
0.78000
/

Krg
0.00000
0.00001
0.00108
0.01293
0.05981
0.14867
0.27022
0.43802
0.53901
0.64000
0.90000

SOGCR
SGU

Krog
0.90000
0.61886
0.37343
0.22728
0.12862
0.06112
0.02366
0.00491
0.00246
0.00000
0.00000

Pcgo
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000
0.00000

SWFN
Used to specify water
saturation function
SWFN consists of
columns of Sw, Krw, and
Pcow
In three-phase run,
SWFN represents
oil/water relative perm
@ connate gas
saturation

SWFN
-- Sw
0.22
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0

Krw Pcow
0.0
1.
0.051 0.5
0.12 0.3
0.218 0.16
0.352 0.1
0.5
0.05
0.65 0.03
0.83 0.01
1.0
0.0

SGFN
Used to specify gas
saturation function
SGFN consists of
columns of Sg, Krg, and
Pcog
In three-phase run,
SGFN represents
gas/oil relative perm @
connate water
saturation

SGFN
-- Sg
0.0
0.04
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.78

Krg Pcog
0.0
0.0
0.0
0.0
0.022 0.0
0.1
0.0
0.195 0.0
0.289 0.0
0.42 0.0
0.58 0.0
0.812 0.0
1.0
0.0 /

SOF3
Used to input threephase oil saturation
function data
SOF3 consists of
columns of Soil, Krow @
Sgc, and Krog @ Swc

SOF3
-- Soil Krow
Krog
0
0.0
0.0
0.2
0.0
0.0
0.35 0.0
0.02
0.4
0.0048 0.038
0.45 0.029
0.058
0.5
0.0649 0.102
0.55 0.1129 0.163
0.6
0.197
0.234
0.65 0.287
0.33
0.7
0.4
0.454
0.75 0.637
0.67
0.78 1.0
1.0

SOF32D
SOF32D alternative to SOF3, used to input
three-phase oil saturation function data

SOF2
SOF2 used to input
two-phase oil relative
permeability data
Should be interpreted
as oil relative perm in
the presence of one
other phase

SOF2
--So
.0000
.2000
.3800
.4000
.4800
.5000
.5800
.6000
.6800
.7000
.7400
.7800

Kro
.0000
.0000
.0043
.0048
.0529
.0649
.1130
.1250
.3450
.4000
.7000
1.000 /

Three Phase Relative


Permeability

Three Phase Relative


Permeability
Default ECLIPSE
method is a weighted
average of the twophase relative
permeabilities,
weighted by the fraction
of the cell volume
occupied by each
phase

Three Phase Relative


Permeability
Modified STONE1: STONE keyword
activates this calculation of three-phase
permeabilities
Modified STONE2: STONE2 keyword
activates this calculation of three-phase
permeabilities
May calculate negative values of Kro, in this case
ECLIPSE reserts the value to zero

STONE Methods References


Stone; Trans AIME, 249, 1970, pp.214-218
Stone; J. Can. Pet. Tech., 12, 1973, 53-61

Output Control
RPTPROPS is the only PROPS section output
control keyword. Output is to PRT file only
RPTPROPS
SWFN ENDPT STOG STOW

INIT keyword in the GRID section requests an


*.init file which contains PVT and saturation
function data.

REGIONS SECTION

REGIONS Section
REGIONS section is used for two purposes:
To assign specific properties or characteristics to cells
or group of cells
To report on the fluids in place in specific parts of the
reservoir

REGIONS section is optional, if it is to be used,


the REGDIMS keyword should be placed in
RUNSPEC section to allow memory allocation

REGIONS Section Example


If reservoir contains 4 different types of
rock with different Kro functions
RUNSPEC: REGDIMS specifying 4 saturation
functions will be used
PROPS: SWOF, SGOF with 4 tables
REGIONS: SATNUM keyword followed by an
integer (1, 2, 3 or 4) for every grid cell

REGIONS Section Example

REGIONS Definition Keywords


Commonly used:
FIPNUM FIP regions
SATNUM Saturation function regions
PVTNUM PVT regions
EQLNUM Equilibration regions

Special use:
FIPXXXXX (e.g. FIPLAYER)

REGIONS Definition Keywords


Operators:
EQUALS
ADD
COPY
BOX / ENDBOX

GRID Regions:
FLUXNUM
RESVNUM
NINENUM
PINCHNUM

Complete list of available REGIONS can be seen in ERM Data


File Overview Chapter

Specifying the REGIONS


Keywords
Data for REGIONS
keywords can be
inputted directly in
DATA file using the
operator type
keywords or by typing
in a number for each
cell

REGIONS
EQUALS
FIPNUM 1 /
FIPNUM 2 11 20 /
/
SATNUM
100*1
100*1
400*2 /

Specifying the REGIONS


Keywords
ECLIPSE family preand post-processors
can be used to assign
the numbers to each
cell. Keyword would
then be incorporated
with the DATA file
using INCLUDE
keyword

REGIONS Output Control


For a report to the
PRT file use:
RPTREGS in REGIONS
section
RPTSOL (FIP=1, 2 or 3)
in SOLUTION section
RPTSCHED (FIP=1, 2 or
3) in SCHEDULE section

For 3D viewable
output use:
INIT in GRID section
RPTRST (FIP) in
SCHEDULE section

SOLUTION SECTION

Purpose of the SOLUTION


Section
SOLUTION section
defines the conditions
at the beginning of the
simulation
Initial conditions can be
defined by Equilibration,
Enumeration or Restart

Initialization by Equilibration
EQUIL keyword is used to implement this
type of initialization
EQUIL
-- d

OWC

7000 4000 7150

Pcow
0

GOC
1*

Pcog
1*

RSVD/PBVD
1*

RVVD/PDVD
1*

N
0

You may have more than one equilibrium


region (see EQLDIMS keyword)

Initialization by Equilibration
In condensate runs initially above the dew
point, OWC = GOC
If there is only free gas with vaporized oil
the GOC can lie below the formation
bottom
If there is no mobile water initially the
OWC can lie below the formation bottom

Equilibration Algorithm
If the pressure is known at a datum depth in the oil zone,
then black oil EOS for oil

and the hydrostatic pressure of the oil phase


h2

Po (h2 ) = Po (h1 ) + o gdh


h1

can be iteratively solved for Po everywhere

Equilibration Algorithm
Given the fluid contact depths, the gas and
water EOS can be solved in a similar
manner to eventually yield initial
hydrostatic pressure of each phase
everywhere in the reservoir

Equilibration Algorithm

Equilibration Algorithm
ECLIPSE calculates the phase pressures
at 100 depth points evenly distributed
throughout reservoir
This may be altered by changing the
NDPRVD setting in the EQLDIMS keyword
(RUNSPEC section)

Transition Zone

Initial Phase Saturation


GAS ZONE:
Sg = SGU
Sw = SWL
So = 1 SGU SWL
OIL ZONE:

Transition Zone

Sg = SGL (usually zero)


Sw = SWL
So = 1 SGL SWL
WATER ZONE:
Sg = SGL (usually zero)
Sw = SWU
So = 1 SGL SWU

Initial Phase Saturation in the


Transition Zone
Calculate Pcog and Pcow in the transition
zone of the grid

Reverse-lookup Sw from Pc tables in


PROPS section & assign to cell centers

Initial Phase Saturation in the


Transition Zone

Initial Phase Saturation in the


Transition Zone

Block Center Equilibration


Since ECLIPSE assigns saturation for the entire
cell based on the depth of the cell center, a
number of cells with centers above the OWC will
in part lie in the water zone
Likewise, a number of cells with centers below
the OWC will in part lie in the oil zone
The estimate of IOIP will be inaccurate

Block Center Equilibration

Block Center Equilibration


Saturations are assigned at cell centers
Cells intersecting OWC may contain too much
water or too much oil
The OWC is effective jagged
Method provides completely stable initial
solution, but IOIP estimates could be estimated
more accurately
Block center equilibration is not the default
method

Level & Tilted Block Fine Grid


Equilibration

Level & Tilted Block Fine Grid


Equilibration
Set EQUIL item 9 to a non-zero value
ECLIPSE will subdivide cells at the OWC during
initialization
Saturations are calculated for subdivisions of
each cell
Saturations of subdivisions are combined to give
an overall cell saturation
EQUIL item 9 > 0 tilted block, EQUIL item 9 < 0
level block

Level & Tilted Block Fine Grid


Equilibration
Limits upon N: -10 < N < 10, each cell is divided
into 2N sub-cells
Level & tilted block integration can significantly
improve OIP estimates, especially when cell
intersecting the OWC are large and inclined
Resulted cell saturations, however, are
inconsistent with the prevailing capillary
pressure, and the result is unstable initial
state

Level & Tilted Block Fine Grid


Equilibration
Two corrections must be made to
guarantee stability and accurate OIP
estimation
Quiescence
Mobile Fluid Correction

Quiescence
Objective is to stabilize fluids in models using
fine grid options
Quiescence is implemented by endpoint scaling
of Pc curves of cells intersecting OWC and GOC,
to prevent flow from cell to cell in the absence of
production or injection
Activated by QUESC switch in EQLOPTS
keyword

Mobile Fluid Correction

Mobile Fluid Correction


To calculate correct sweep ECLIPSE
calculates mobile phase saturations for
each sub-cell
These saturations are summed to yield
Somob for the large cell
This cell critical saturation is modified to
preserve correct sweep
Activated by MOBILE switch in EQLOPTS

Transition Zone Swcr Variation


In some reservoirs it is necessary to model
a depth variation of the critical saturation
of one phase
Such that the critical saturation equals the
phase saturation providing the phase
saturation is less than a threshold

Transition Zone Swcr Variation


TZONE
-- Oil Wat Gas
F T
F /
EQUALS
SWCR 0.7 /
/

For more detail see Saturation


Scaling chapter in ECLIPSE
Technical Description

Matching Initial Water


Distribution

Matching Initial Water


Distribution
Initial water saturation distribution is one of the
most significant factors determining OIP
Sw distribution is often known from logs
Pc, on the other hand, is often more difficult to
estimate accurately to yield consistency with the
observed Sw
SWATINIT can be used to set initial water
saturation for every grid cell, ECLIPSE then will
apply end point scaling to Pc curves to stabilize
water

Initial Solution Ratios


Initial solution ratios
are required for EOS
density calculations.
They can be specified
in SOLUTION section
by:
RSVD / RVVD
PBVD / PDVD

One table per each


equilibration region

Restarts and Enumeration

Enumeration
As an alternative to equilibration, the initial conditions
may be specified explicitly for every grid cell
Full list of keywords used in the SOLUTION sections is:
PRESSURE, SWAT, SGAS, RS, RV
Alternative to PRESSURE, PRVD specifies pressure as
a function of depth
Pc and Sw, So, Sg must be consistent to ensure stable
initial conditions
Enumeration is appropriate for reservoirs with initially
tilted contacts, or in non-equilibrium situations

Restarts

A restart run uses the output from a previous simulation


to define initial conditions in another simulation

Restarts
Restarts are similar to enumeration inasmuch as
the solution variables are set for each cell
Restart file contains a complete description of
the state of the simulation at the time of output,
but without VFP tables
The model that generates restart file is the base
case, the model that uses the restart file is called
the restart run

Restart File
ECLIPSE restart files contain a complete
description of the simulation at the time of
output, this includes:

Pressure
Saturations
Solution ratios for each grid cell
Surface facilities such as pipelines and separators
Wellhead locations, completion locations
Flow rate targets

Restart File
ECLIPSE restart files do not contain:
VFP tables
Reporting instructions
Any section keywords (EXTRAPMS, ECHO,
DEBUG, etc)

Restart Types
Restart can be arranged in two ways:
Fast Restarts
Full Restarts

Fast Restart
A fast restart reads the RUNSPEC, GRID,
EDIT, PROPS and REGIONS sections
from a SAVE file
SAVE file is generated during history
match, it is binary file
RPTSCHED or RPTRST keywords should
be used to request output of SAVE file

Full (Flexible) Restart


A full or flexible restart reads a complete
data file, which is a modified copy of the
history match data file

Flexible versus Fast Restarts


A fast restart uses the same RUNSPEC switches and
options as base case. If extra options are to be used in
the restart run, the RUNSPEC section of the base case
should be changed to ensure enough memory is
allocated
The input and output styles of a fast restart run are the
same as for the base case
The time taken by ECLIPSE to process the RUNSPEC
to REGIONS sections is a small part of the time taken to
run a simulation

How to Create a Full Restart Run


Ensure that a restart file is output at the restart date
by using RPTSCHED or RPTRST (HIST.DATA)
Examine the PRT file at that date and note the
sequence number of the restart file written
(HIST.X0010)
Copy HIST.DATA to prediction data set
PRED.DATA
In PRED.DATA remove EQUIL keyword and aquifer
info from SOLUTION section

How to Create a Full Restart Run


In PRED.DATA insert in SOLUTION section:
RESTART
-- Root
Sequence #
HIST
10
/

Insert keyword SKIPREST in SCHEDULE section


immediately after any VFP tables
Extent the simulation into the future by adding extra
DATES and TSTEP keywords before the END
keyword

How to Create a Fast Restart


Run
The SAVE keyword in the GRID section of
HIST.DATA generates the SAVE file HIST.SAVE
Ensure that a restart file is output at the restart date
by using RPTSCHED or RPTRST (HIST.DATA)
Examine the PRT file at that date and note the
sequence number of the restart file written
(HIST.X0010)
Copy HIST.DATA to prediction data set
PRED.DATA

How to Create a Fast Restart


Run
Delete everything in PRED.DATA up to SUMMARY
keyword
Insert following at the beginning of PRED.DATA
LOAD
HIST /
RESTART
HIST
10

Insert keyword SKIPREST in SCHEDULE section


immediately after any VFP tables
Extent the simulation into the future by adding extra
DATES and TSTEP keywords before the END keyword

SOLUTION Section Output


Control
RPTSOL is the only SOLUTION section output
control keyword
Mnemonic RESTART=2 in this keyword outputs a
restart file containing the initial conditions
RPTSOL
SOIL EQUIL

RESTART=2

End of ECLIPSE Black-oil


(Lecture 2)

You might also like