30
CONTENTS 1. INTRODUCTION TO CHAPTER 3 2. SETTING UP A RESERVOIR SIMULATION MODEL 2.1. Defining The Objectives Of A Simulation Study 3. DATA INPUT AND OUTPUT 4. EXAMPLE INPUT DATA FILE 4.1. Reservoir System to be Modelled 4.2. ECLIPSE Syntax 4.3. Model Dimensions 4.4. Grid and Rock Properties 4.5. Fluid Properties 4.6. Initial Conditions 4.7. Output Requirements 4.8. Production Schedule 5. RUNNING ECLIPSE AND FILE NAME CONVENTIONS 5.1. Running ECLIPSE on a PC 5.2. File Name Conventions 6. CLOSING REMARKS 3 3 Reservoir Simulation Model Set-Up

1__ResSimCh3

  • Upload
    weldsv1

  • View
    12

  • Download
    2

Embed Size (px)

DESCRIPTION

HW reservoir stimulation 3

Citation preview

Page 1: 1__ResSimCh3

CONTENTS

1. INTRODUCTION TO CHAPTER 3

2. SETTING UP A RESERVOIR SIMULATION MODEL 2.1. Defining The Objectives Of A Simulation Study 3. DATA INPUT AND OUTPUT 4. EXAMPLE INPUT DATA FILE 4.1. Reservoir System to be Modelled 4.2. ECLIPSE Syntax 4.3. Model Dimensions 4.4. Grid and Rock Properties 4.5. Fluid Properties 4.6. Initial Conditions 4.7. Output Requirements 4.8. Production Schedule 5. RUNNING ECLIPSE AND FILE NAME CONVENTIONS 5.1. Running ECLIPSE on a PC 5.2. File Name Conventions

6. CLOSING REMARKS

33Reservoir Simulation Model Set-Up

Page 2: 1__ResSimCh3

2 Institute of Petroleum Engineering, Heriot-Watt University 3

33Reservoir Simulation Model Set-Up

LEARNING OBJECTIVES

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

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

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

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

Page 3: 1__ResSimCh3

2 Institute of Petroleum Engineering, Heriot-Watt University 3

33Reservoir Simulation Model Set-Up

BRIEF DESCRIPTION OF CHAPTER 3

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

This example will be used to illustrate the power of reservoir simulation in understanding reservoir recovery mechanisms.

1. INTRODUCTION TO CHAPTER 3

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

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

Page 4: 1__ResSimCh3

4 Institute of Petroleum Engineering, Heriot-Watt University 5

33Reservoir Simulation Model Set-Up

2. SETTING UP A RESERVOIR SIMULATION MODEL

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

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

3. DATA INPUT AND OUTPUT

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

• Model dimensions• Grid and rock properties• Fluid properties• Initial conditions• Output requirements• Production schedule

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

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

Page 5: 1__ResSimCh3

4 Institute of Petroleum Engineering, Heriot-Watt University 5

33Reservoir Simulation Model Set-Up

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

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

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

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

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

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

Two major, and usually understated, elements of good reservoir simulation practice are thus:

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

Current software developments are addressing automatic report generation and minimising the time taken to obtain a good history match by automatically varying specified parameters.

Page 6: 1__ResSimCh3

6 Institute of Petroleum Engineering, Heriot-Watt University 7

33Reservoir Simulation Model Set-Up

4. EXAMPLE INPUT DATA FILE

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

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

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

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

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

Production well

Injection well

Two well quarterfive-spot grid

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

Page 7: 1__ResSimCh3

6 Institute of Petroleum Engineering, Heriot-Watt University 7

33Reservoir Simulation Model Set-Up

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

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

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

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

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

FEATURE EXAMPLE FROM DATA FILE

Comments Number of cells NX NY NZ

KEYWORDS DIMENS

Data (followed by /) 5 5 3 /

4.3 Model DimensionsThe first step in setting up a model is to define:

• Title of run• Type of geometry to be used (Cartesian or radial, though Cartesian is often the default)• Number of cells in each direction (x, y, z, or r, θ, z)• Phases to be modelled (oil, water, gas, vapourised oil in the gas, dissolved gas in the oil)

Figure 2. Example of conventions used to identify components of input data file. It should be noted that the actual input file should be in ASCII text format only (as produced by Notepad, WordPad or other basic text editor), and should not contain italic, bold or coloured letters.

Page 8: 1__ResSimCh3

8 Institute of Petroleum Engineering, Heriot-Watt University 9

33Reservoir Simulation Model Set-Up

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

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

123

505050

1

1

2

2

3

3

4

4

5

5

500

500

500

500

500

500

500

500

500

500

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

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

RUNSPEC Section headerDIMENS Number of cells in X, Y and Z directionsOIL Calculate oil flowsWATER Calculate water flows FIELD Use field units throughout (i.e. feet, psi, lb, bbl, etc.)WELLDIMS Number of wells, connections per well, groups, wells per group

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

Page 9: 1__ResSimCh3

8 Institute of Petroleum Engineering, Heriot-Watt University 9

33Reservoir Simulation Model Set-Up

UNIFOUT Unified output fileSTART Start date of simulation (1st day of production)

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

TUT1A. DATA

Base case for tutorials

RUNSPEC

TITLE 3D 2-Phase

Number of cells NX NY NZ

DIMENS 5 5 3 /

PhasesOIL

WATER

UnitsFIELD

Maximum well / connection / group values #wells #cons/w #grps #wells/grp

WELLDIMS 2 3 2 1 /

Unified output filesUNIFOUT

Simulation start dateSTART 1 JAN 2001 /

Figure 4. RUNSPEC Section of input data file.

Page 10: 1__ResSimCh3

10 Institute of Petroleum Engineering, Heriot-Watt University 11

33Reservoir Simulation Model Set-Up

4.4 Grid and Rock PropertiesHaving identified the number of grid cells in the X, Y and Z directions required to model the reservoir or part of the reservoir being studied, the following grid properties must be defined:

• Dimensions of each cell• Depth of each cell (or at least the top layer)• Cell permeabilities in each direction (x, y, z, or r, θ, z)• Cell porosities

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

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

Permeability (mD) Layer Horizontal Vertical X direction Y direction Z direction1 200 150 202 1000 800 1003 200 150 20

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

GRID Section headerDX Size of cells in the X directionDY Size of cells in the Y directionDZ Size of cells in the Z directionTOPS Depth of cellsPERMX Cell permeabilities in the X directionPERMY Cell permeabilities in the Y directionPERMZ Cell permeabilities in the Z directionPORO Cell porositiesINIT Output grid values to .INIT file

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

Page 11: 1__ResSimCh3

10 Institute of Petroleum Engineering, Heriot-Watt University 11

33Reservoir Simulation Model Set-Up

keyword, ECLIPSE assumes that cell values are being defined for the entire grid.

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

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

123

505050

1

1

2

2

3

3

4

4

5

5

500

500

500

500

500

500

500

500

500

500No i j k1 1 1 12 2 1 13 3 1 14 4 1 15 5 1 16 1 2 17 2 2 18 3 2 1. . . .. . . .24 4 5 125 5 5 126 1 1 227 2 1 2. . . .. . . .75 5 5 3

Y

Z

X

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

DX500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 /

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

DX75*500 /

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

Figure 5. Order in which cell property values are read in by ECLIPSE, starting at (1, 1, 1), and finishing at (5, 5, 3), with the i index varying the fastest, and the k index the slowest.

Page 12: 1__ResSimCh3

12 Institute of Petroleum Engineering, Heriot-Watt University 13

33Reservoir Simulation Model Set-Up

This convention may be used for all other grid parameters.

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

BOX 1 5 1 5 1 1 /

TOPS25*8000 /

ENDBOX

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

Page 13: 1__ResSimCh3

12 Institute of Petroleum Engineering, Heriot-Watt University 13

33Reservoir Simulation Model Set-Up

GRID

Size of each cell in X, Y and Z directionsDX75*500 /

DY75*500 /

DZ75*50

TVDSS of top layer only X1 X2 Y1 Y2 Z1 Z2

BOX 1 5 1 5 1 1 /

TOPS25*8000 /

ENDBOX

Permeability in X, Y and Z directions for each cellPERMX25*200 25*1000 25*200 /

PERMY25*150 25*800 25*150 /

PERMZ25*20 25*100 25*20 /

Porosity of each cellPORO75*0.2 /

Output file with geometry and rock properties (.INIT)INIT

Figure 6. GRID Section of input data file.

Page 14: 1__ResSimCh3

14 Institute of Petroleum Engineering, Heriot-Watt University 15

33Reservoir Simulation Model Set-Up

4.5 Fluid PropertiesHaving defined the grid and rock properties such as permeability and porosity, the following Pressure/Volume/Temperature (PVT), viscosity, relative permeability and capillary pressure data must be defined:

• Densities of oil, water and gas at surface conditions• Formation factor and viscosity of oil vs. pressure• Pressure, formation factor, compressibility and viscosity of water• Rock compressibility• Water and oil relative permeabilities, and oil-water capillary pressure vs. water saturation

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

Oil Water Gas(lb/ft3) (lb/ft3) (lb/ft3)49 63 0.01

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

Pressure Oil FVF Oil Viscosity(psia) (rb/stb) (cP)300 1.25 1.0800 1.20 1.16000 1.15 2.0

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

Sw krwater kroil capillary pres. (psi)0.25 0.00 0.90 4.00.50 0.20 0.30 0.80.70 0.40 0.10 0.20.80 0.55 0.00 0.1

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

PROPS Section headerDENSITY Surface density of oil, water and gas phasesPVDO PVT data for dead oil relating FVF and viscosity to pressurePVTW PVT data for water relating FVF, compressibility and viscosity to pressure ROCK Compressibility of the rock

Page 15: 1__ResSimCh3

14 Institute of Petroleum Engineering, Heriot-Watt University 15

33Reservoir Simulation Model Set-Up

SWOF Table relating oil and water relative permeabilities and oil-water capillary pressure to water saturations

PROPS Densities in lb/ft3 Oil Water Gas

DENSITIES 49 63 0.01 /

PVT data for dead oil P Bo Vis

PVDO 300 1.25 1.0 800 1.20 1.1 6000 1.15 2.0 /

PVT data for water P Bw Cw Vis Viscosibility

PVTW 4500 1.02 3e-06 0.8 0.0 /

Rock compressibility P Cr

ROCK 4500 4e-06 /

Water and oil rel perms and capillary pressure Sw Krw Kro Pc

SWOF 0.25 0.0 0.9 4.0 0.5 0.2 0.3 0.8 0.7 0.4 0.1 0.2 0.8 0.55 0.0 0.1 /Figure 7.

PROPS Section of input data file.

Page 16: 1__ResSimCh3

16 Institute of Petroleum Engineering, Heriot-Watt University 17

33Reservoir Simulation Model Set-Up

4.6 Initial ConditionsOnce the rock and fluid properties have all been defined, the initial pressure and saturation conditions in the reservoir must be specified. This may be done in one of three ways:

1) Enumeration2) Equilibration3) Restart from a previous run

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

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

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

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

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

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

SOLUTION Section header

Page 17: 1__ResSimCh3

16 Institute of Petroleum Engineering, Heriot-Watt University 17

33Reservoir Simulation Model Set-Up

EQUIL Equilibration data (pressure at datum depth and contact depths)RPTRST Request output of cell pressures and saturations at t = 0

SOLUTION

Initial equilibration conditions Datum Pi@datum WOC Pc@WOC

EQUIL 8075 4500 8200 0 /

Output to restart file for t=0 (.UNRST) Restart file Graphics for init cond only

RPTRST BASIC=2 NORST=1 /

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

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

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

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

Figure 8. SOLUTION Section of input data file.

Page 18: 1__ResSimCh3

18 Institute of Petroleum Engineering, Heriot-Watt University 19

33Reservoir Simulation Model Set-Up

3rd letter: P - production I - injection

4th letter: R - rate T - total

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

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

FOPR

WWITInj /

WBHP/

Here, the following will be calculated:• Oil production rate for the entire field• Cumulative water injection for well “Inj”• Well bottomhole pressure for all wells in the model

In Tutorial 1A the following parameters should be calculated and output:• Field average pressure• Bottomhole pressure of all wells• Field oil production rate• Field water production rate• Field oil production total• Field water production total• Water cut in well PROD• CPU usage

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

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

SUMMARY Section headerFPR Field average pressure

Page 19: 1__ResSimCh3

18 Institute of Petroleum Engineering, Heriot-Watt University 19

33Reservoir Simulation Model Set-Up

WBHP Well Bottomhole pressureFOPR Field Oil Production RateFWPR Field Water Production RateFOPT Field Oil Production TotalFWPT Field Water Production TotalWWCT Well Water CutCPU CPU usage EXCEL Create summary output as Excel readable Run Summary file

SUMMARY

Field average pressureFPR

Bottomhole pressure of all wellsWBHP/

Field oil production rateFOPR

Field water production rateFWPR

Field oil production totalFOPT

Field water production totalFWPT

Water cut in PRODWWCTPROD /

CPU usageTCPU

Create Excel readable run summary file (.RSM)EXCEL

4.8 Production ScheduleHaving defined the initial conditions (t = 0) in the SOLUTION Section, the final part of the input data file defines the well controls and time steps (t > 0) in the SCHEDULE Section. The main functions that are performed here are:

• Specify grid data to be output for display or restart purposes• Define well names, locations and types• Specify completion intervals for each well• Specify injection and production controls for each well for each given period

Figure 9. SUMMARY Section of input data file.

Page 20: 1__ResSimCh3

20 Institute of Petroleum Engineering, Heriot-Watt University 21

33Reservoir Simulation Model Set-Up

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

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

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

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

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

COMPDAT

The keywords to be used are:

SCHEDULE Section headerRPTRST Request output of cell pressures and saturations at all time steps (t > 0)WELSPECS Define location of wellhead and pressure gaugeCOMPDAT Define completion intervals and wellbore diameterWCONPROD Production controlWCONINJ Injection controlTSTEP Time step sizes (for output of calculated data)END End of input data file

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

Page 21: 1__ResSimCh3

20 Institute of Petroleum Engineering, Heriot-Watt University 21

33Reservoir Simulation Model Set-Up

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

SCHEDULE

Output to Restart file for t > 0 (.UNRST) Restart file Graphics every step only

RPTRST BASIC=2 NORST=1 /

Location of wellhead and pressure gauge Well Well Location BHP Pref. name group I J datum phase

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

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

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

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

WCONPROD PROD OPEN LRAT 3* 10000 1* 2000 //

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

WCONINJ INJ WATER OPEN RATE 11000 3* 20000 //

Number and size (days) of timestepsTSTEP10*200 /

END

Figure 10. SCHEDULE Section of input data file.

Page 22: 1__ResSimCh3

22 Institute of Petroleum Engineering, Heriot-Watt University 23

33Reservoir Simulation Model Set-Up

5. RUNNING ECLIPSE AND FILE NAME CONVENTIONS

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

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

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

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

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

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

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

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

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

Page 23: 1__ResSimCh3

22 Institute of Petroleum Engineering, Heriot-Watt University 23

33Reservoir Simulation Model Set-Up

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

6. CLOSING REMARKS

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

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

Page 24: 1__ResSimCh3

24 Institute of Petroleum Engineering, Heriot-Watt University 25

33Reservoir Simulation Model Set-Up

ECLIPSE TUTORIAL 1

(A 3D 2-Phase Reservoir Simulation Problem)

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

Depth of reservoir top: 8000 ftInitial pressure at 8075’: 4500 psiaPorosity: 0.20

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

123

505050

1

1

2

2

3

3

4

4

5

5

500

500

500

500

500

500

500

500

500

500

Water and Oil Relative Permeability and Capillary Pressure Functions. Water Saturation krw kro Pcow (psi) 0.25* 0.0 0.9 4.0 0.5 0.2 0.3 0.8 0.7 0.4 0.1 0.2 0.8 0.55 0.0 0.1 1.0 1.00 0.0 0.0 * Initial saturation throughout.

Figure 1 Schematic of model.

Page 25: 1__ResSimCh3

24 Institute of Petroleum Engineering, Heriot-Watt University 25

33Reservoir Simulation Model Set-Up

Water PVT Data at Reservoir Pressure and Temperature.

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

4500 1.02 3.0E-06 0.8 0.0

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

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

300 1.25 1.0 800 1.20 1.1 6000 1.15 2.0

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

Oil density at surface conditions: 49 lbs/cfWater density at surface conditions: 63 lbs/cfGas density at surface conditions: 0.01 lbs/cf

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

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

Ask the program to output the following data:

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

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

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

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

Page 26: 1__ResSimCh3

26 Institute of Petroleum Engineering, Heriot-Watt University 27

33Reservoir Simulation Model Set-Up

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

Procedure:

1 Edit file TUT1A.DATA in folder \eclipse\tut1 by dragging it onto the Notepad icon, fill in the necessary data, and save the file.

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

3 Run ECLIPSE and use the TUT1A dataset.

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

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

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

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

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

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

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

15*200

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

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

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

Page 27: 1__ResSimCh3

26 Institute of Petroleum Engineering, Heriot-Watt University 27

33Reservoir Simulation Model Set-Up

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

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

MTOT(Sw ) =

Kro(Sw )

µo

+Krw (Sw )

µw

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

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

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

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

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

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

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

Page 28: 1__ResSimCh3

28 Institute of Petroleum Engineering, Heriot-Watt University 29

33Reservoir Simulation Model Set-Up

TUT1A.DATA

RUNSPEC

TITLE

NDIVIX NDIVIY NDIVIZ

DIMENS

OILWATERFIELD

NWMAXZ NCWMAX NGMAXZ NWGMAX

WELLDIMS

START

GRIDDX

DZ

PORO

X1 X2 Y1 Y2 Z1 Z2

BOXTOPS

?DBOX

PERMX

PERMY

PERMZ

INIT

Page 29: 1__ResSimCh3

28 Institute of Petroleum Engineering, Heriot-Watt University 29

33Reservoir Simulation Model Set-Up

PROPS

OIL WAT GAS

DENSITY

P Bo Vis

PVDO

P Bw Cw Vis Viscosibility

PVTW

P Cr

ROCK

Sw Krw Kro Pc

SWOF

SOLUTION

DATUM Pi@DATUM WOC Pc@WOC GOC Pc@GOC

EQUIL Block Block Create initial P Sw restart file

RPTSOL

SUMMARY

RPTSMRY

Page 30: 1__ResSimCh3

30

SCHEDULE Block Block Create restart file P Sw at each time step

RPTSCHED

WELL WELL LOCATION BHP PREF. NAME GROUP I J DATUM PHASE

WELSPECS

WELL LOCATION INTERVAL STATUS WELL NAME I J K1 K2 O or S ID

COMPDAT

WELL STATUS CONTROL OIL WAT GAS LIQ RESV BHP NAME MODE RATE RATE RATE RATE RATE LIMIT

WCONPROD

WELL FLUID STATUS CONTROL SURF RESV VOIDAGE BHP NAME TYPE MODE RATE RATE FRAC FLAG LIMIT

WCONINJ

DAYSTSTEP

END