Download - Petroleum engineering.pdf
Principles of Reservoir Simulation
KBTU, Almaty, Feb 2010
SAFETY MOMENT
An Introduction to ECLIPSE Black-oil
(Lecture 2)
Lecture Outline1. PROPS Section
1. Fluid Properties2. Saturation Functions & Rock Properties
2. REGIONS Section3. SOLUTION Section
1. Equilibration2. Enumeration3. 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 simulator’s 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
PVT data lookup fromsupplied tables
Flow equation solution for each cell subject to material balance
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
3
• 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
• RSCONST – Const. GOR in PROPS section. RSVD may not be used
• RVCONST – Const. OGR in PROPS section. RVVD may not be used
# Phases Phase Combination RUNSPEC keywordsDead Oil Water OIL, WATERDry Gas Water GAS, WATERDead Oil Dry Gas OIL, GAS
2
Black Oil Phase Options
• RSCONST – Const. GOR in PROPS section. RSVD may not be used
• RVCONST – Const. OGR in PROPS section. RVVD may not be used
# Phases Phase Combination RUNSPEC keywordsDead Oil OILDry Gas GASWater WATER
1
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
Where:
DENSITYkeyword
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 Physics1. 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 vspressure, 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
Where:From PVT tables
DENSITYkeyword
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 Bw Cw Muw CMuw4000 1.03 3.0E-6 0.40 0.0 /
Reservoir water may differ from region to region, in which case one line of data for each region should be specified in PVTWkeyword
Who knows WHY?
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 Water Specific Gas Specific-- Gravity Gravity Gravity
32 1.050 0.700 /
DENSITY-- Oil Water Gas--Density Density Density-- Kg/m3 Kg/m3 Kg/m3
865 1050 0.9051 /
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 we’ll 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 capillarypressure 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 fluidmobilities to solve flow
equations between cells
Used to calculate the initialsaturation 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 Crock
4000 0.40E-5 /
)()()( refrock PPCrefporepore ePVPV −⋅−⋅=
⎟⎟⎠
⎞⎜⎜⎝
⎛ −+−+≅
2))((
)(1)()(2
refrefrefporepore
PPCPPCPVPV
Rock Compressibility Using ROCK
• ROCK tables can be associated with saturation regions (SATNUM), instead of PVT regions (PVTNUM) by setting item 3 in ROCKOPTSkeyword
Rock Compressibility Using ROCKTAB, ROCKTABH
• Use ROCKTAB or ROCKTABH to define the rock compaction data (PV and trans multipliers) versus pressure
ROCKCOMP keyword in RUNSPEC section activates advanced rock compressibility treatment option.
For more details read Rock Compressibility chapter of ETD.
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 /
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 Swvalue
• 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 Sgvalue
• 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 MISCIBLEkeyword
• 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 Krw Krow Pcwo0.22000 0.00000 0.90000 1.491490.24400 0.00106 0.78672 1.093250.26000 0.00229 0.71727 0.903590.29120 0.00704 0.59061 0.643160.32664 0.01522 0.46649 0.455700.36960 0.02962 0.33847 0.314550.45200 0.06983 0.15966 0.171980.53520 0.12742 0.05483 0.103600.61760 0.20072 0.00933 0.067420.70000 0.29000 0.00000 0.046301.00000 1.00000 0.00000 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(1-Sw)
SGOF-- Sg Krg Krog Pcgo0.00000 0.00000 0.90000 0.000000.10000 0.00001 0.61886 0.000000.20000 0.00108 0.37343 0.000000.28000 0.01293 0.22728 0.000000.36000 0.05981 0.12862 0.000000.44000 0.14867 0.06112 0.000000.52000 0.27022 0.02366 0.000000.60000 0.43802 0.00491 0.000000.64000 0.53901 0.00246 0.000000.68000 0.64000 0.00000 0.000000.78000 0.90000 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
SWOF-- Sw Krw Krow Pcwo0.22000 0.00000 0.90000 1.491490.24400 0.00106 0.78672 1.093250.26000 0.00229 0.71727 0.903590.29120 0.00704 0.59061 0.643160.32664 0.01522 0.46649 0.455700.36960 0.02962 0.33847 0.314550.45200 0.06983 0.15966 0.171980.53520 0.12742 0.05483 0.103600.61760 0.20072 0.00933 0.067420.70000 0.29000 0.00000 0.046301.00000 1.00000 0.00000 0.00000/
SGOF-- Sg Krg Krog Pcgo0.00000 0.00000 0.90000 0.000000.10000 0.00001 0.61886 0.000000.20000 0.00108 0.37343 0.000000.28000 0.01293 0.22728 0.000000.36000 0.05981 0.12862 0.000000.44000 0.14867 0.06112 0.000000.52000 0.27022 0.02366 0.000000.60000 0.43802 0.00491 0.000000.64000 0.53901 0.00246 0.000000.68000 0.64000 0.00000 0.000000.78000 0.90000 0.00000 0.00000/
SWCR
SOWCRSWU
SGCR
SOGCRSGU
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 Krw Pcow
0.22 0.0 1.0.3 0.051 0.50.4 0.12 0.30.5 0.218 0.160.6 0.352 0.10.7 0.5 0.050.8 0.65 0.030.9 0.83 0.011.0 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 Krg Pcog
0.0 0.0 0.0 0.04 0.0 0.00.1 0.022 0.00.2 0.1 0.00.3 0.195 0.00.4 0.289 0.00.5 0.42 0.00.6 0.58 0.00.7 0.812 0.00.78 1.0 0.0 /
SOF3
• Used to input three-phase oil saturation function data
• SOF3 consists of columns of Soil, Krow @ Sgc, and Krog @ Swc
SOF3-- Soil Krow Krog
0 0.0 0.00.2 0.0 0.00.35 0.0 0.020.4 0.0048 0.0380.45 0.029 0.0580.5 0.0649 0.1020.55 0.1129 0.1630.6 0.197 0.2340.65 0.287 0.330.7 0.4 0.4540.75 0.637 0.670.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 Kro.0000 .0000.2000 .0000.3800 .0043.4000 .0048.4800 .0529.5000 .0649.5800 .1130.6000 .1250.6800 .3450.7000 .4000.7400 .7000.7800 1.000 /
Three Phase Relative Permeability
Three Phase Relative Permeability
• Default ECLIPSE method is a weighted average of the two-phase 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
• INIT keyword in the GRID section requests an *.init file which contains PVT and saturation function data.
RPTPROPS
‘SWFN’ ‘ENDPT’ ‘STOG’ ‘STOW’ /
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 pre-and post-processors can be used to assign the numbers to each cell. Keyword would then be incorporated with the DATA file using INCLUDEkeyword
REGIONS Output Control
• RPTREGS in REGIONS section
• RPTSOL (FIP=1, 2 or 3) in SOLUTION section
• RPTSCHED (FIP=1, 2 or 3) in SCHEDULE section
• INIT in GRID section• RPTRST (FIP) in
SCHEDULE section
For 3D viewable output use:
For a report to the PRT file use:
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
• You may have more than one equilibrium region (see EQLDIMS keyword)
EQUIL
-- d p OWC Pcow GOC Pcog RSVD/PBVD RVVD/PDVD N
7000 4000 7150 0 1* 1* 1* 1* 0 /
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 AlgorithmIf 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
can be iteratively solved for Po everywhere
∫+=2
1
)()( 12
h
hooo gdhhPhP ρ
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)
Initial Phase SaturationGAS ZONE:
Sg = SGUSw = SWLSo = 1 – SGU – SWL
OIL ZONE:
Sg = SGL (usually zero)Sw = SWLSo = 1 – SGL – SWL
WATER ZONE:
Sg = SGL (usually zero)Sw = SWUSo = 1 – SGL – SWU
Tran
sitio
n Zo
neTr
ansi
tion
Zone
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 EQLOPTSkeyword
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 /
EQUALSSWCR 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:
• 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 ENDkeyword
RESTART-- Root Sequence #
HIST 10 /
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
• 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
LOADHIST /
RESTARTHIST 10 /
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)