- •Basics of Reservoir Simulation
- •with the
- •Eclipse Reservoir Simulator
- •Lecture Notes
- •Øystein Pettersen
- •Introduction
- •Prerequisites
- •1. Overview – minimum required data input
- •1.1 The grid
- •1.2 Petrophysics
- •1.3 Fluid properties
- •1.4 Soil properties
- •1.5 Equilibration
- •1.6 Well specification
- •1.7 Dynamics
- •1.8 Output
- •1.9 Simple Eclipse data file contents
- •A. Syntax
- •B. Data file (“BASIC data input example”)
- •A note on units
- •2. The RUNSPEC section
- •Grid dimension – keyword DIMENS
- •Phases
- •Unit system
- •Start date
- •Unified / Non-unified files (chapter 11)
- •Data checking only
- •Table dimensions
- •EQLDIMS
- •NSTACK (chapters 17-18)
- •Aquifer specifications – AQUDIMS (chapter 14)
- •Grid options (chapter 13)
- •Rock compressibility options (chapter 6)
- •Local Grid Refinement (chapter 15)
- •3. Structured grids (Corner point grids) (GRID section)
- •The Corner Point Grid
- •Defining a corner point grid in Eclipse
- •Moderately complex grids – FILL
- •4. Petrophysics (GRID section)
- •Average permeability
- •Transmissibility
- •Inactive cells
- •5. Fluid properties (PROPS section)
- •Tables in Eclipse
- •Relative permeability and Capillary Pressure
- •Two-phase curves (water – oil)
- •Three-phase relative permeabilities
- •PVT data
- •Water
- •Dead Oil
- •Live Oil
- •6. Soil compressibility (PROPS section)
- •7. Initialisation (SOLUTION section)
- •Datum depth
- •Contacts
- •Equilibrium – discussion – advanced issues
- •8. Time dependent input data (SCHEDULE section)
- •8.1 Well definitions and control
- •Well Specification (WELSPECS keyword)
- •Well Completions (COMPDAT keyword)
- •Production / Injection data (Keywords WCONPROD / WCONINJE)
- •Economic well constraints (keywords WECON, WECONINJ)
- •Other often used Well control keywords
- •8.2 Time stepping
- •Order of actions
- •8.3 Convergence Control I (keyword TUNING)
- •9. Regions
- •10. Simplified input and modification of Eclipse arrays
- •EQUALS
- •ADD, MULTIPLY
- •COPY
- •COPYBOX
- •11. Eclipse output, formats and files
- •File names
- •Textual output
- •The RPTXXX keywords
- •Time dependent vectors – SUMMARY data
- •Restart data and restart files
- •12. Restarting a simulation
- •The SKIPREST keyword
- •13. Fault modelling – Non-neighbour connections
- •The 7-point stencil
- •The fault layout – non-neighbour connections
- •Fault transmissibility multipliers
- •Defining a fault manually – the ADDZCORN keyword
- •14. Aquifer Modelling (GRID section)
- •Aquifer definition
- •Aquifer connection to reservoir
- •15. Local Grid Refinement
- •15.2 LGR on an irregular volume – Amalgamation
- •15.3 Wells on local grids – Horizontal wells
- •15.4 Horizontal wells and friction
- •16. Numerical Solution of the Flow Equations
- •The IMPES method
- •Solution of Non-linear Equations – the Newton-Raphson method
- •17. Iteration methods for linear systems
- •Direct, simple approach
- •The Gauss-Seidel method
- •Accelerators – the point SOR method
- •Conjugate Gradients – ORTHOMIN
- •Preconditioning
- •Preconditioning and Orthomin
- •Determining a preconditioner – Nested Factorisation
- •18. Convergence Control II – TUNING parameters
- •TUNING keyword summarized
- •19. Non-neighbour Connections and System Structure
- •A. GRF files in GRAF
- •A simple straightforward GRF file
- •Advanced GRF file
- •B. Some Considerations Regarding Grid Consistency
- •Grids planned for use in rock mechanics simulations
- •Embedding
- •Non-vertical coordinate lines
- •Honouring material properties of non-reservoir rock.
Local Grid Refinement (chapter 15)
If local grid refinements are included in the model, they must be specified in the RUNSPEC section, with keyword LGR, containing the following items,
1. |
MAXLGR |
Maximum number of LGRs in the model |
2. |
MAXCELLS |
Maximum number of cells in any LGR |
3.MAXAMLGC Maximum amalgamated coarse cells (not covered in these notes)
4.MAXAMLGF Maximum number of LGR amalgamations
5.MAXLGRAM Maximum number of LGRs in any amalgamation
6. LSTACK |
Equivalent to NSTACK for Local Grid solving (default: Equal to NSTACK) |
Example
The model contains 10 local grids, five of these have been amalgamated to one, and three others comprise another amalgamation. The largest of the LGRs contains 160 cells
LGR |
MAXCELLS |
MAXAMALGC |
MAXAMALGF |
MAXLGRAM |
LSTACK |
|
-- MAXLGR |
/ |
|||||
10 |
160 |
1* |
2 |
5 |
1* |
3. Structured grids (Corner point grids) (GRID section)
The simple grids we defined in Chapter 1 can not in general be used to approximate complex reservoir geometries satisfactory, and this is regarded as being of great importance in the oil industry. The grid serves two purposes, which unfortunately often are conflicting. Firstly the grid is a set of finite volume cells which approximates the reservoir volume including internal characteristics. Secondly the grid is a device for solving the reservoir flow equations in a numerical fashion. Even though a great deal of research has been put into the challenge of constructing numerical schemes which work satisfactorily for “any” cell shapes, it is still true that the “best” numeric results are obtained on a regular cartesian grid, while the grids that are “good enough” approximations to the reservoir shape seldom are very regular. As noted above, constructing a grid that is an optimal compromise between actual reservoir shape, numeric accuracy and affordable computing time is a science in itself, which cannot be covered in this context.
The ideal grid is regular and cartesian. Cartesian means that all cell faces meet at right angles, while regular is used to specify that the lengths DX, DY, and DZ are compatible. If the flow rate components are equal in all three directions (no preferred flow direction) then compatible would mean DX = DY = DZ. However, in a reservoir the vertical flow is typically much smaller than horizontal flow1, and in this case the ideal aspect ratio (ratio of the different cell lengths) is such that the typical time a flow particle uses to traverse the cell is roughly the same in all cell lengths. By this rule we should expect that in most grid cells, DX and DY are of comparable magnitude, and DZ much smaller. (Which is indeed the case in industrial grids.) Many grids are comprised of cells which appear regular cartesian in the XY-plane, as seen from above, but not in cross-sections, i.e. in the XZ or YZ-planes, since the grid layers attempt to approximate the geological layers (Figure 2). Be aware that if the angles between the top or bottom and the vertical sides deviate too much from 90° the quality of the numerical results can be expected to get worse as the angle deviation increases. Apart from this warning we will not discuss this further.
The major reason that XY-cartesian grids are not more or less exclusively used is the existence of faults in the reservoir. Faults are surfaces of discontinuity in the reservoir with often very complex geometry. Often the goal is a grid that honours the geometry of the faults as closely as possible, and this is simply not in general doable with a regular grid.
Figure 3 shows an irregular structured grid where it has been attempted to let cell boundaries align to the faults as closely as possible.
1 The term horizontal is used loosely, to denote flow along geological layers, or in the bedding plane direction
20
