petroleum engineering.pdf

139

Upload: ruzauk

Post on 12-Apr-2015

362 views

Category:

Documents


6 download

DESCRIPTION

petroleum engineering in Russia

TRANSCRIPT

Page 1: Petroleum engineering.pdf
Page 2: Petroleum engineering.pdf

Principles of Reservoir Simulation

KBTU, Almaty, Feb 2010

Page 3: Petroleum engineering.pdf

SAFETY MOMENT

Page 4: Petroleum engineering.pdf

An Introduction to ECLIPSE Black-oil

(Lecture 2)

Page 5: Petroleum engineering.pdf

Lecture Outline1. PROPS Section

1. Fluid Properties2. Saturation Functions & Rock Properties

2. REGIONS Section3. SOLUTION Section

1. Equilibration2. Enumeration3. Restarts

Page 6: Petroleum engineering.pdf

PROPS SECTION

Page 7: Petroleum engineering.pdf

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

Page 8: Petroleum engineering.pdf

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

Page 9: Petroleum engineering.pdf

Production From Reservoir to Stock Tank

Page 10: Petroleum engineering.pdf

Black Oil Overview ECLIPSE Terminology

Page 11: Petroleum engineering.pdf

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

Page 12: Petroleum engineering.pdf

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

Page 13: Petroleum engineering.pdf

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

Page 14: Petroleum engineering.pdf

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

Page 15: Petroleum engineering.pdf

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

Page 16: Petroleum engineering.pdf

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

Page 17: Petroleum engineering.pdf

Black Oil Phases

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

Page 18: Petroleum engineering.pdf

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

Page 19: Petroleum engineering.pdf

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

Page 20: Petroleum engineering.pdf

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

Page 21: Petroleum engineering.pdf

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

Page 22: Petroleum engineering.pdf

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)

Page 23: Petroleum engineering.pdf

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

Page 24: Petroleum engineering.pdf

Oil Equation of State for Black Oil Model

Where:

DENSITYkeyword

From PVT tables

Page 25: Petroleum engineering.pdf

Dead Oil PVT Data Entry Using PVDO

Page 26: Petroleum engineering.pdf

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

Page 27: Petroleum engineering.pdf

Dead Oil PVT Data Entry Using PVCDO

Page 28: Petroleum engineering.pdf

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

Page 29: Petroleum engineering.pdf

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

Page 30: Petroleum engineering.pdf

A Bit of Live Oil Physics

Rs = const

Rs = const

Rs = const

Rs = const

Page 31: Petroleum engineering.pdf

Live Oil PVT Data Entry Using PVTO

Page 32: Petroleum engineering.pdf

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

Page 33: Petroleum engineering.pdf

Live Oil PVT Data Entry Using PVCO

Page 34: Petroleum engineering.pdf

A Bit of Live Oil Physics

Page 35: Petroleum engineering.pdf

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

Page 36: Petroleum engineering.pdf

Gas Properties Entry

Page 37: Petroleum engineering.pdf

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

Page 38: Petroleum engineering.pdf

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

Page 39: Petroleum engineering.pdf

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

Page 40: Petroleum engineering.pdf

Gas Equation of State in the Black Oil Model

Where:From PVT tables

DENSITYkeyword

Page 41: Petroleum engineering.pdf

Dry Gas PVT Data Entry Using PVDG

rbbl/Mscf

Page 42: Petroleum engineering.pdf

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

Page 43: Petroleum engineering.pdf

Dry Gas PVT Data Entry Using PVZG

Use RVCONST to specify fixed quantity of vaporized

oil above P dew

Page 44: Petroleum engineering.pdf

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

Page 45: Petroleum engineering.pdf

The Water Equation of State

Where:

Page 46: Petroleum engineering.pdf

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

Page 47: Petroleum engineering.pdf

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?

Page 48: Petroleum engineering.pdf

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

Page 49: Petroleum engineering.pdf

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 /

Page 50: Petroleum engineering.pdf

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

Page 51: Petroleum engineering.pdf

Defining Multiple PVT Regions

Page 52: Petroleum engineering.pdf

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

Page 53: Petroleum engineering.pdf

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

Page 54: Petroleum engineering.pdf

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

Page 55: Petroleum engineering.pdf

Defining Multiple PVT Types Using API Tracking

Page 56: Petroleum engineering.pdf

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

Page 57: Petroleum engineering.pdf

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

Page 58: Petroleum engineering.pdf

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

Page 59: Petroleum engineering.pdf

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

Page 60: Petroleum engineering.pdf

API Tracking Example

Page 61: Petroleum engineering.pdf

Rock Properties –Saturation Functions

Page 62: Petroleum engineering.pdf

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

Page 63: Petroleum engineering.pdf

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

Page 64: Petroleum engineering.pdf

Use of Saturation Functions in ECLIPSE

Used to calculate the initial transition zone

saturation of each phase

Page 65: Petroleum engineering.pdf

Rock Compressibility

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

Page 66: Petroleum engineering.pdf

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

Page 67: Petroleum engineering.pdf

Rock Compressibility Using ROCK

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

Page 68: Petroleum engineering.pdf

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 /

Page 69: Petroleum engineering.pdf

Saturation Functions

Page 70: Petroleum engineering.pdf

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

Page 71: Petroleum engineering.pdf

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

Page 72: Petroleum engineering.pdf

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!

Page 73: Petroleum engineering.pdf

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

Page 74: Petroleum engineering.pdf

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/

Page 75: Petroleum engineering.pdf

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/

Page 76: Petroleum engineering.pdf

SLGOF

• Used in runs containing both oil and gas as active phase

• SLGOF consists of columns of SL, Krg, Krog, and Pcog

Page 77: Petroleum engineering.pdf

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

Page 78: Petroleum engineering.pdf

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 /

Page 79: Petroleum engineering.pdf

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 /

Page 80: Petroleum engineering.pdf

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 /

Page 81: Petroleum engineering.pdf

SOF32D

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

Page 82: Petroleum engineering.pdf

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 /

Page 83: Petroleum engineering.pdf

Three Phase Relative Permeability

Page 84: Petroleum engineering.pdf

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

Page 85: Petroleum engineering.pdf

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

Page 86: Petroleum engineering.pdf

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

Page 87: Petroleum engineering.pdf

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’ /

Page 88: Petroleum engineering.pdf

REGIONS SECTION

Page 89: Petroleum engineering.pdf

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

Page 90: Petroleum engineering.pdf

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

Page 91: Petroleum engineering.pdf

REGIONS Section Example

Page 92: Petroleum engineering.pdf

REGIONS Definition Keywords

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

• Special use:– FIPXXXXX (e.g. FIPLAYER)

Page 93: Petroleum engineering.pdf

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

Page 94: Petroleum engineering.pdf

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 /

Page 95: Petroleum engineering.pdf

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

Page 96: Petroleum engineering.pdf

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:

Page 97: Petroleum engineering.pdf

SOLUTION SECTION

Page 98: Petroleum engineering.pdf

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

Page 99: Petroleum engineering.pdf

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 /

Page 100: Petroleum engineering.pdf

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

Page 101: Petroleum engineering.pdf

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 ρ

Page 102: Petroleum engineering.pdf

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

Page 103: Petroleum engineering.pdf

Equilibration Algorithm

Page 104: Petroleum engineering.pdf

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)

Page 105: Petroleum engineering.pdf

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

Page 106: Petroleum engineering.pdf

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

Page 107: Petroleum engineering.pdf

Initial Phase Saturation in the Transition Zone

Page 108: Petroleum engineering.pdf

Initial Phase Saturation in the Transition Zone

Page 109: Petroleum engineering.pdf

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

Page 110: Petroleum engineering.pdf

Block Center Equilibration

Page 111: Petroleum engineering.pdf

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

Page 112: Petroleum engineering.pdf

Level & Tilted Block Fine Grid Equilibration

Page 113: Petroleum engineering.pdf

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

Page 114: Petroleum engineering.pdf

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

Page 115: Petroleum engineering.pdf

Level & Tilted Block Fine Grid Equilibration

• Two corrections must be made to guarantee stability and accurate OIP estimation– Quiescence

– Mobile Fluid Correction

Page 116: Petroleum engineering.pdf

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

Page 117: Petroleum engineering.pdf

Mobile Fluid Correction

Page 118: Petroleum engineering.pdf

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

Page 119: Petroleum engineering.pdf

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

Page 120: Petroleum engineering.pdf

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

Page 121: Petroleum engineering.pdf

Matching Initial Water Distribution

Page 122: Petroleum engineering.pdf

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

Page 123: Petroleum engineering.pdf

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

Page 124: Petroleum engineering.pdf

Restarts and Enumeration

Page 125: Petroleum engineering.pdf

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

Page 126: Petroleum engineering.pdf

Restarts

• A restart run uses the output from a previous simulation to define initial conditions in another simulation

Page 127: Petroleum engineering.pdf

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

Page 128: Petroleum engineering.pdf

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

Page 129: Petroleum engineering.pdf

Restart File

• ECLIPSE restart files do not contain:– VFP tables– Reporting instructions– Any section keywords (EXTRAPMS, ECHO,

DEBUG, etc)

Page 130: Petroleum engineering.pdf

Restart Types

• Restart can be arranged in two ways:– Fast Restarts– Full Restarts

Page 131: Petroleum engineering.pdf

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

Page 132: Petroleum engineering.pdf

Full (Flexible) Restart

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

Page 133: Petroleum engineering.pdf

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

Page 134: Petroleum engineering.pdf

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

Page 135: Petroleum engineering.pdf

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 /

Page 136: Petroleum engineering.pdf

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

Page 137: Petroleum engineering.pdf

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 /

Page 138: Petroleum engineering.pdf

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’ /

Page 139: Petroleum engineering.pdf

End of ECLIPSE Black-oil (Lecture 2)