Académique Documents
Professionnel Documents
Culture Documents
User Manual
IPM
REVEAL
Version 4.5
February 2011
REVEAL
IPM - Specialised Reservoir Numerical Simulator
by Petroleum Experts Limited
Copyright Notice
The copyright in this manual and the associated computer program are the property of Petroleum Experts
Ltd. All rights reserved. Both, this manual and the computer program have been provided pursuant to a
Licence Agreement containing restriction of use.
No part of this manual may be reproduced, transmitted, transcribed, stored in a retrieval system, or
translated into any language, in any form or by any means, electronic, mechanical, magnetic, optical or
otherwise, or disclose to third parties without prior written consent from Petroleum Experts Ltd., Petex
House,10 Logie Mill, Edinburgh, EH7 4HG, Scotland, UK.
Petroleum Experts Ltd. All rights reserved.
IPM Suite, GAP, PROSPER, MBAL, PVTP, REVEAL, RESOLVE, IFM, ModelCatalogue and OpenServer are
trademarks of Petroleum Experts Ltd.
Microsoft (Windows), Windows (2000) and Windows (XP) are registered trademarks of the Microsoft
Corporation
EQUALIZER is a registered trademark of Baker Hugues inc. This information has been included with the full
authorisation of Baker Hugues inc.
The software described in this manual is furnished under a licence agreement. The software may be used
or copied only in accordance with the terms of the agreement. It is against the law to copy the software on
any medium except as specifically allowed in the license agreement. No part of this documentation may be
reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying,
recording, or information storage and retrieval systems for any purpose other than the purchaser's personal
use, unless express written consent has been given by Petroleum Experts Limited.
Address:
Petroleum Experts Limited
Petex House
10 Logie Mill
Edinburgh, Scotland
EH7 4HG
Tel : (44 131) 474 7030
Fax : (44 131) 474 7031
email: edinburgh@petex.com
Internet: www.petex.com
1990-2011 Petroleum Experts Limited
REVEAL
Table of Contents
0
Chapter 1
Technical Overview
1 REVEAL:
...................................................................................................................................
An Introduction
2
2 REVEAL:
...................................................................................................................................
Summary of Capabilities
4
3 What's ...................................................................................................................................
New in REVEAL?
9
4 What's...................................................................................................................................
New in REVEAL-DetailedList
12
5 ITRequirements
................................................................................................................................... 32
Chapter 2
User Guide
34
1 What's...................................................................................................................................
in this guide?
34
2 Contacting
...................................................................................................................................
Petroleum Experts
34
3 Input wizard
................................................................................................................................... 36
Basic operation
.......................................................................................................................................................... 36
Section summary
.......................................................................................................................................................... 37
Control section
.......................................................................................................................................................... 38
Solver
......................................................................................................................................................... 38
Model
.........................................................................................................................................................
selection
46
Components
......................................................................................................................................................... 49
Reservoir..........................................................................................................................................................
section
50
Geometry
......................................................................................................................................................... 50
Cartesian
.........................................................................................................................................................
grid
53
Radial
.........................................................................................................................................................
grid
55
Curvilinear
.........................................................................................................................................................
grid
57
Depth
......................................................................................................................................................... 59
Porosity
......................................................................................................................................................... 61
Permeability
......................................................................................................................................................... 63
Transmissibility
.........................................................................................................................................................
multipliers
63
Absolute
.........................................................................................................................................................
transmissibilities
64
Net to
.........................................................................................................................................................
gross
66
Pore.........................................................................................................................................................
volume multipliers
66
Rock.........................................................................................................................................................
type
67
PVT.........................................................................................................................................................
region
68
Equilibration
.........................................................................................................................................................
region
69
Fluid.........................................................................................................................................................
in place region
70
Non-neighbour
.........................................................................................................................................................
connections
71
Refinement
......................................................................................................................................................... 73
Physical ..........................................................................................................................................................
section
75
Physical
.........................................................................................................................................................
properties
75
Rock.........................................................................................................................................................
compressibilities
81
Miscellaneous
.........................................................................................................................................................
models
82
Relperm ..........................................................................................................................................................
section
85
Relperm
.........................................................................................................................................................
options
85
Residual
.........................................................................................................................................................
saturation
89
Relative
.........................................................................................................................................................
permeability
93
Capillary
.........................................................................................................................................................
pressure
95
Contents
II
Endpoint
.........................................................................................................................................................
scaling
97
Aquifer section
.......................................................................................................................................................... 99
Analytical
.........................................................................................................................................................
aquifer
99
Carter
.........................................................................................................................................................
Tracy model
102
Mobility..........................................................................................................................................................
section
104
Polymer
.........................................................................................................................................................
& gel
104
Original
.........................................................................................................................................................
polymer gel model
106
Carreau
.........................................................................................................................................................
polymer model
109
Kuparuk
.........................................................................................................................................................
polymer gel model
110
Gelation
.........................................................................................................................................................
& degradation
112
Inaccessible
.........................................................................................................................................................
pore volume
114
Foam
.........................................................................................................................................................
& diluent
115
Sodium
.........................................................................................................................................................
Silicate
117
Phase behaviour
..........................................................................................................................................................
section
119
Introduction
......................................................................................................................................................... 119
Alcohol/Polymer
.........................................................................................................................................................
partitioning
121
Surfactant
.........................................................................................................................................................
phase
125
Ternary
.........................................................................................................................................................
diagram
134
Surfactant
.........................................................................................................................................................
interfacial tension
135
Surfactant
.........................................................................................................................................................
viscosity
137
Adsorption
..........................................................................................................................................................
section
140
Adsorption
.........................................................................................................................................................
properties
140
Adsorption
.........................................................................................................................................................
isotherms
146
Permeability
.........................................................................................................................................................
reduction
150
Tracer
.........................................................................................................................................................
partitioning
151
Water chemistry
..........................................................................................................................................................
section
152
Water
.........................................................................................................................................................
chemistry
152
CO2,
.........................................................................................................................................................
H2S & N2 partitioning
163
H2S.........................................................................................................................................................
souring (Legacy)
166
H2S.........................................................................................................................................................
souring (Activity)
168
Scale
.........................................................................................................................................................
inhibition
171
Solids section
.......................................................................................................................................................... 172
Asphaltene
......................................................................................................................................................... 172
Wax
......................................................................................................................................................... 174
Sand
......................................................................................................................................................... 176
Wells section
.......................................................................................................................................................... 181
Location
.........................................................................................................................................................
and properties
181
Filter
.........................................................................................................................................................
cake
191
Fractures
......................................................................................................................................................... 193
Geertsma
.........................................................................................................................................................
deKlerk fracture
206
3D .........................................................................................................................................................
fracture
207
Stress
.........................................................................................................................................................
& elasticity
212
Well-bore
..........................................................................................................................................................
heating section
216
Well-bore
.........................................................................................................................................................
heating
216
Initialisation
..........................................................................................................................................................
section
217
PVT
.........................................................................................................................................................
initialisation
217
Equilibration
......................................................................................................................................................... 219
User
.........................................................................................................................................................
initialisation
221
Component
.........................................................................................................................................................
initialisation
221
Schedule
..........................................................................................................................................................
section
223
Well
.........................................................................................................................................................
schedule
223
Thermal
.........................................................................................................................................................
fracture
236
4 Grid ...................................................................................................................................
refinement
238
Overview
.......................................................................................................................................................... 238
February, 2011
REVEAL Manual
II
III
REVEAL
Refinement
..........................................................................................................................................................
section
241
Reservoir
..........................................................................................................................................................
section
242
Relperm..........................................................................................................................................................
section
244
Initialisation
..........................................................................................................................................................
section
244
5 Menu...................................................................................................................................
commands
244
Menu commands
.......................................................................................................................................................... 244
File
.......................................................................................................................................................... 245
Options.......................................................................................................................................................... 245
Edit
.......................................................................................................................................................... 246
Input
.......................................................................................................................................................... 246
.......................................................................................................................................................... 252
Window.......................................................................................................................................................... 252
Help
.......................................................................................................................................................... 252
Playback
..........................................................................................................................................................
(3D view only)
252
6 External
...................................................................................................................................
data import
253
Importing
..........................................................................................................................................................
overview
253
Importing
..........................................................................................................................................................
from ASCII
254
Importing
..........................................................................................................................................................
wells from ASCII
258
Importing
..........................................................................................................................................................
from Eclipse (binary files)
261
Importing
..........................................................................................................................................................
from Eclipse (ASCII files)
265
Importing
..........................................................................................................................................................
from VIP
266
7 Graphics
................................................................................................................................... 268
Visualisation
.......................................................................................................................................................... 268
8 Debug
...................................................................................................................................
output
278
Debug output
.......................................................................................................................................................... 278
9 Engineering
................................................................................................................................... 280
Contents
.......................................................................................................................................................... 280
Phases ..........................................................................................................................................................
and components
280
Transport
..........................................................................................................................................................
equations
281
Dispersion
..........................................................................................................................................................
and diffusion
282
Heat transport
.......................................................................................................................................................... 283
10 References
................................................................................................................................... 283
References
.......................................................................................................................................................... 283
11 OpenServer
................................................................................................................................... 285
OpenServer
.......................................................................................................................................................... 285
12 REVEAL
...................................................................................................................................
Frequently Asked Questions: A Few Additional Technical Notes
301
Difference
..........................................................................................................................................................
between 5 and 9 points Horizontal Point Schemes
301
Rock Mechanics
..........................................................................................................................................................
and Thermal Fracturing
306
Chapter 3
Worked Examples
319
1 Worked
...................................................................................................................................
Examples - Overview
319
2 Worked
...................................................................................................................................
Examples - Index
319
3 Getting
...................................................................................................................................
started
323
Step 1 -..........................................................................................................................................................
Initialise new case
323
Step 2 -..........................................................................................................................................................
Wizard basics
326
Step 3 -..........................................................................................................................................................
Control section
327
Contents
IV
Step 4 -..........................................................................................................................................................
Reservoir section
329
Step 5 -..........................................................................................................................................................
Physical section
333
Step 6 -..........................................................................................................................................................
Relperm section
339
Step 7 -..........................................................................................................................................................
Wells section
342
Step 8 -..........................................................................................................................................................
Initialisation section
348
Step 9 -..........................................................................................................................................................
Schedule section
350
Step 10 ..........................................................................................................................................................
- Run simulation
351
Step 11 ..........................................................................................................................................................
- View results
353
4 Dexterity
...................................................................................................................................
Examples
356
Getting ..........................................................................................................................................................
Started
356
Eclipse ..........................................................................................................................................................
Import
356
Radial Aquifer
.......................................................................................................................................................... 370
Thermal..........................................................................................................................................................
Fracture
375
Souring.......................................................................................................................................................... 389
Dry Gas.......................................................................................................................................................... 405
Retrograde
..........................................................................................................................................................
Condensate
412
Radial Gridding
.......................................................................................................................................................... 421
Curvilinear
..........................................................................................................................................................
Gridding
429
5 Physics
...................................................................................................................................
Examples
438
Grid Refinement
.......................................................................................................................................................... 438
Water Chemistry
.......................................................................................................................................................... 446
Permeability
..........................................................................................................................................................
Reduction
458
Surfactant
.......................................................................................................................................................... 462
Gel Injection
.......................................................................................................................................................... 482
Wellbore
..........................................................................................................................................................
Heating
498
Asphaltene
.......................................................................................................................................................... 504
Non Newtonian
..........................................................................................................................................................
Fluid
512
Equalizer
.......................................................................................................................................................... 518
6 OpenServer
...................................................................................................................................
Examples
525
Well Results
.......................................................................................................................................................... 525
Well Production
.......................................................................................................................................................... 530
Batch Matching
.......................................................................................................................................................... 536
Well Control
.......................................................................................................................................................... 541
Water Injection
..........................................................................................................................................................
Allocation : Use of Internal Script
546
February, 2011
REVEAL Manual
IV
Chapter
Technical Overview
Technical Overview
1.1
REVEAL: An Introduction
REVEAL
REVEAL Manual
February, 2011
Technical Overview
affecting the pressure maintenance objectives of the field, and therefore its recovery.
Importing the corporate numerical simulation model in REVEAL will then enable to evaluate
the impact of this phenomenon and to manage the injection strategy of the field accordingly.
Moreover, the reduction in temperature around the injection wellbore will affect the stress field
around the injection wellbore, leading to easier fracturing - using the REVEAL capabilities of
coupling rock mechanics to flow calculations, it will be possible to investigate whether
fractures are formed, their size, their evolution with time and their impact on the well
injectivity.
1.2
The table below will illustrate the REVEAL capabilities, and link to the corresponding sections
of the user guide and worked examples.
Capability
IT
PC environment
General User
Interface
Wizard Data Input
2D and 3D
Graphics
Worked Examples
Section
Runs on PC
(Windows 2000, NT,
XP) with single
interface to all
functionality.
IT Requirements
N/ A
Input Wizard
Getting Started
Graphics
Getting Started
Description
REVEAL
Dexterity Examples |
Eclipse Import
N/ A
N/ A
OpenServer
OpenServer
Examples
February, 2011
Technical Overview
for automation or
batch processing of
runs or connection to
third party software.
Technical Modules
Solvers
IMPES solver
available with flux
corrected transport
(fct) for models where
numerical dispersion
is important (e.g.
chemical additives),
and material balance
iterations.
Fully Implicit available
for general cases and
for high mobility and
large throughput
models (e.g. coning).
Gridding
Cartesian grid.
Radial grid.
Curvilinear grid.
Corner Point grid.
Grid Refinement:
General hexahedral
refinement of master
grid for IMPES and
implicit solver options.
Well Modeling
Vertical Wells
Multilateralel Wells:
including description
of tubing and casing /
tubing annulus, Inflow
Control Devices,
Gravel Pack,
Sandscreens....
Calculation of friction
losses along the
wellbore.
Calculation of
temperature
variations along the
wellbore.
Control Section |
Solver
N/ A
Reservoir Section |
Cartesian Grid
Reservoir Section |
Radial Grid
Reservoir Section |
Curvilinear Grid
Reservoir Section |
Refinement
Grid Refinement
Section
Wells Section
Getting Started |
Reservoir Setup
Dexterity Examples |
Radial Gridding
Dexterity Examples |
Curvilinear Gridding
Physics Examples |
Grid Refinement
Getting Started |
Wells Setup
REVEAL
Thermal
Calculations
Rock Mechanics
Filter Cake
Solids
Water Chemistry
Souring
REVEAL Manual
Fully thermal
calculations by
default: including
conduction and
convection effects.
Possibility of running
isothermal models if
required.
Rock mechanics
calculations coupled
with flow calculations.
Calculation of fracture
formation and
propagation.
Thermal Fracturing:
Integrating thermoand poro-elastic
effects on reservoir
stress with injection
profile and fracture
mechanics.
Hydraulic Fracturing:
Possibility of
modelling production
fractures, imported
from Stimplan for
instance.
Filter cake formation
linked to solid
injections in wells and
fractures.
Sand transport,
trapping and
generation.
Chemical equilibrium
of mixed waters
predicting
precipitation,
dissolution and scale
inhibition.
Models growth and
respiration effect of
Sulphate Reducing
Bacteria leading to
H2S formation in the
Engineering | Heat
Transport
Dexterity Examples |
Thermal Fracture
Wells Section |
Dexterity Examples |
Fractures
Thermal Fracture
Wells Section |
Geertsma deKlerk
fracture
Wells Section | 3D
fracture
Wells Section | Stress
& Elasticity
N/ A
N/ A
Water Chemistry
Section
Physics Example |
Water Chemistry
Water Chemistry
Section | H2S souring
Dexterity Example |
Souring
February, 2011
Technical Overview
Adsorption
Asphaltene and
Wax
Aquifer Modeling
Mobility Effects
Chemical EOR
Thermal EOR
reservoir.
Possibility of modeling
adsorption of
chemical species on
the rock surface.
Retardation and
permeability reduction
effects due to
adsorption can be
calculated.
Flocculation and
trapping model
leading to
permeability
reduction.
Possibility of modeling
analytical aquifers
such as Carter Tracy
for instance.
Desaturation:
Interfacial Tension
changes affecting
relative permeability
and capillary
pressures through
capillary number.
Polymer and Gel
Modeling:Mobility
changes for aqueous
phase, including shear
thinning, gelation
reactions and cation
exchange.
Surfactant and
ASP:4th phase microemulsion model using
ternary diagrams.
Steam Injection:
Steam injection model
for Huff & Puff,
SAGD.
Wellbore Heating:
Microwave and
Electrical heating of
heavy viscous oils.
Adsorption Section
Physics Example
Permeability
Reduction
Solids Section |
Asphaltene
Solids Section | Wax
Physics Example |
Asphaltene
Aquifer Section
Dexterity Example |
Radial Aquifer
Phase Behaviour
Section
N/ A
Mobility Section
Physics Example |
Phase
Behaviour Gel Injection
Section
Physics Example |
Surfactant
Wellbore Heating
Section
Physics Example |
Wellbore Heating
1.3
REVEAL
February, 2011
Technical Overview
10
- Multilateral well model has been modified to model tubing flow, casing flow and the
impact of different types of completions, including:
Screens between tubing and casing,
Gravel-packs, including handling of velocity constraints,
Inflow Control Devices and Equalizer,
Well internal heat transfer and counter flow heat transfer (i.e. particularly for
steam counter flow during the steam circulation phases of SAGD procedures).
Well internal sources (i.e. for diluent injection for example), orifices and pumps.
- Non-Newtonian oil shear dependent viscosity added to well flow.
- Improved well visualisation during well design and simulations.
- More detailed well results outputs to facilitate well performance analysis.
- Capabilities of importing multiple well geometries from ASCII files.
- Non-Darcy model updated to include all fluid phases.
- Improved the algorithm that enables to convert a well using a "Completion Table"
description into a "MultiLateral" description.
- Well connection for highly mobile steam injection improved.
Chemical EOR:
- Surfactant model:
Possibility of combining surfactant and water chemistry models, enabling for
instance the modeling of Alkaline Surfactant Polymers (ASP) systems.
pH dependency for surfactant added.
Oil and Water solubilisations reported in the ternary phase diagram interface.
Surfactant modeling with 100% emulsification improved.
- Sodium silicate gelation model added.
- Polymer and gel non-Newtonian shear dependent viscosity added to fractures.
Water Chemistry:
- The speed of the water chemistry calculations has been improved, by an average of
30%.
- Activity based souring model can be coupled with the water chemistry module for
improved pH handling.
- Water phase variable salinity effects (i.e. density and viscosity) coupled with the water
chemistry module.
- Improved strong acid / alkali (i.e. pH) water chemistry modeling.
- Volumetric strain permeability reduction added.
- Default components for souring model are set automatically.
- Partitioning:
Tracer components may partition between phases.
Database controlled hydrocarbon/water partitioning for CO2, H2S and N2.
Adsorption:
- Adsorption levels modified to represent adsorption per unit rock volume, not including
1990-2011 Petroleum Experts Limited
11
REVEAL
porosity.
- Adsorption permeability reduction may be applied to water phase only or all phases.
Diffusion:
- Component diffusion model added.
Rock Mechanics, Rock Failure and Fracturing:
- Rock Mechanics:
Addition of the Oedometric stress model: this enables to provide strain /
displacement information in all directions, therefore including compaction
information.
Oedometric stress model numerics improved for varying shear stress layers.
Stress layering for all three principal directions may be entered.
Improved stress modeling for inactive regions and overburden: Stress gradient
defined for internal and external inactive regions.
Capability of modeling stress arching phenomenon.
Tangential stress calculation improved for radial grids.
Improvements to stress calculation for layered model with differing rock
properties.
- Thermal Fracturing Model:
Extensive calibration work performed, leading to enhancements to the thermal
fracturing model in areas such as:
- Better handling of large aspect ratio fractures and distorted /
discontinuous stress zones.
- Fracture closure behaviour and resulting oscillation from poroelastic and other non-linear behaviours.
- Fracture stability.
- Stress barrier detection.
- Better connection to well geometry (i.e. line source connection).
Automatic thermal fracture seeding option
Parallel plate fracture friction model may be tuned.
Output fracture centre line data for external visualisation.
Polymer and gel non-Newtonian shear dependent viscosity added to fractures.
- Rock Failure Models:
Improved plastic failure prediction.
Sand prediction model uses changes in all three principal stress directions to
predict failure.
Interface:
- Total reservoir volume reported.
- Improved copy /paste / scroll for main data input screen.
- Improved validation reporting, especially for sections with large quantities of data.
- Grid refinement interface improved to allow greater control over restart scenarios.
REVEAL Manual
February, 2011
Technical Overview
12
1.4
13
REVEAL
BUILD 154
48 Improved axis labeling for well-bore result 2D plots
47 Component masses by region reported in Average Reservoir plotting results
46 Issue with THP control constraints mixed with voidage well fixed
BUILD 152
45 Problem with voidage replacement control with multiple schedules and wells changing
from producer to voidage injector fixed
BUILD 151
44 Interface correction to scale inhibitor entry screen
BUILD 129
43 Improvements to tubing frictional pressure drop numerics and possible graphics
reporting bug fixed (especially for steam)
42 An option to define capillary desaturation using a parametric curve rather than HT and
LT endpoints added
41 Permeability reduction term implemented in shear thinning calculation
REVEAL Version 4.0 IPM Version 7.0
BUILD 126
40 Polymer shear thinning within emulsion phase corrected (added)
BUILD 113
39 Increased flexibility using surfactant phase visualisation (data entered independently of
scroll bar dialogs)
38 Adsorbed material permeability reduction may be applied to all phases independently
37 Water chemistry components with IMPES formulation always use 1-point upstream
concentration weighting to maintain electrical neutrality
36 Precision of all reported plot data is defaulted to 'free' - this can be changed in the
preferences
35 Possible fracture 3D visualisation problem fixed
34 Phase desaturation models may use user input Oil-Water IFT
BUILD 107
33 Tangential stress calculation improved for radial grids
BUILD 106
32 Non-Newtonian oil shear dependent viscosity added to well tubing flow
31 Interface bug fixed for stress layering data input
30 Ascii file import improved to handle unix encoded data files
29 Improvements to stress calculation for layered model with differing rock properties
BUILD 101
28 Adsoption levels corrected to represent adsorption per unit rock volume, not including
porosity
BUILD 100
27 Adsoption permeability reduction may be applied to water phase only or all phases
BUILD 61
26 Well internal heat transfer (e.g. steam counter flow) improved
25 Oedometric stress model numerics improved for varying shear stress layers
24 Multi-lateral well sources, orifices and pumps added
BUILD 51
REVEAL Manual
February, 2011
Technical Overview
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
14
15
REVEAL
Correction to solver when the pre-conditioner model (ILUDP and ILUTP) is changing
February, 2011
Technical Overview
16
17
REVEAL
February, 2011
Technical Overview
18
74
Improvements to handle fracture calculations with distorted grids with very large
permeability contrasts
73 Modifications to handle 3D graphic result files larger than 4GB (32 bit windows limit)
72 Further improvements to memory for 2D plotting of large models with large numbers of
wells
BUILD 65
71 OpenServer command execution window added
BUILD 64
70 Plotting of 'parent region numbers' with refinement improved for t=0 visualisation
BUILD 63
69 Improvement to fixed dimension fracture reducing sensitivity to surrounding matrix
gridding
BUILD 61
68 OpenServer RUN_SETCOMP command extended to allow setting of completions that
are not defined by completion table (vertical column or multilateral)
BUILD 60
67 Basic restart data (Pressure, Saturation, Temperature and Rs/CGR) make be
generated from 3D graphics results
BUILD 58
66 Memory handling for 2D plotting of models with large numbers of wells and time-steps
improved
65 Interface bug using 2-component polymer gel reaction model fixed
64 Interface and OpenServer command to reorder wells alphabetically added
63 OpenServer tag for completion table well radius corrected
62 Link to sand model online help page corrected
61 Solver preconditioner methods extended (ILUDP and ILUT added)
BUILD 56
60 Improvements to thermal fracture calculation stability when small timesteps (< 0.1 day)
are used
BUILD 55
59 Runtime OpenServer commands for well constraint control added
BUILD 53
58 Standard condition densities for combined PVTs when connected to RESOLVE improved
BUILD 48
57 Tracer components may be partitioned between phases (all three phase tracers are
required, see adsorption section)
BUILD 46
56 Option to add copies of the current well and reservoir result streams to be saved in the
REVEAL archive (also OpenServer command)
55 Further interface issues setting schedule with run times not in days unit (hours, seconds
etc.) improved
54 VIP imported endpoint scaling for SGOC is handled differently
53 Pore volume multiplier import from VIP implemented
52 Offset added to stress gradient data input method
51 Re-perforation interface bug fixed in schedule for wells perforated in inactive blocks
BUILD 44
1990-2011 Petroleum Experts Limited
19
REVEAL
February, 2011
Technical Overview
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
20
21
REVEAL
BUILD 176
30 Wellbore heating electrodes may be set at unperforated blocks
29 PROSPER generated TPD lift curve types added for condensate producer, PCP, HSP
and JET pumps
28 Correction to units displayed for calculated shear rate
27 Bug using user defined relative permeability for injector wells fixed
26 Minor interface problem plotting of polymer/gel viscosity (salinity option) fixed
BUILD 172
25 Improved calculation of reference depth pressures in fragmented grids
24 Grid boundary geometry problem fixed when Cartesian grid with array defined top
surface and inactive blocks present
23 Graphics display problem (spurious characters sometimes displayed) for Xflow
completion graphics view fixed
BUILD 170
22 Improvement to relative permeability calculation when hysteresis, endpoint scaling,
desaturation are used in conjunction
BUILD 167
21 Possible failure during PVT import from external simulation model corrected
REVEAL Version 2.2 IPM Version 5.2
BUILD 164
20 Possible bug affecting steam injection through static fractures fixed
19 Grid properties data may now be imported and exported in ASCII format from the
relevant screens in the wizard
18 Endpoint scaling saturations added to ASCII import data
17 External simulation import now uses input pore-volume to calculate pore-volume
multipliers
BUILD 160
16 Improvement to fixed dimension (producing) fracture where the fracture geometry is
small relative to its grid blocks
15 Zero wellbore friction may be applied to multilateral well by setting roughness to zero
14 Warning given if incorrect lift-curve type specified during import of lift-curve
BUILD 158
13 Correction to equilibration below OWC if residual saturation is specified in this region
with values less than 1
12 Improvements when GMRES solver is used
BUILD 156
11 Well cross-flow now on by default
10 Interface issue in schedule section where initial time step data may be lost when well
control method changed has been fixed
BUILD 153
9
non-Darcy flow for gas injectors improved - more implicit
8
Bug with OpenServer voidage rate variable in schedule section fixed
7
Generalised fluid injection may be used with steam model (temperature is still
determined by water/steam specific enthalpy)
BUILD 151
REVEAL Manual
February, 2011
Technical Overview
22
6
Possible crash with very small grid and long well (memory allocation) fixed
BUILD 149
5
Correction to interpolation of stress on horizontal (X-Y) thermal fracture surface
4
Rows manually deleted from the multi-lateral well dialogue are permanently removed on
save
3
Fracture internal grid geometry shape modified to create more uniform finite element
blocks (topology unchanged)
2
Bug transferring producing well temperature to GAP through RESOLVE fixed
1
Fixed dimension fracture geometry (including width and permeability distribution) may be
completely defined by the user
REVEAL Version 2.1 IPM Version 5.1
BUILD 142
65 Rock compaction tables now extrapolated
BUILD 141
64 Outflow from grid to aquifer when no mobile water present prevented
BUILD 139
63 ASCII data import improved when selected data is not present
62 Modification to gravity term in enthalpy balance for tubing flow
61 Previously plotted average reservoir 2D plots variables retained between plotting
sessions
60 Default minimum Pwf (1 psig) and default maximum Pwf (1e5 psig) set
59 Voidage rate control wells made more implicit
58 Bug corrected setting imported history liquid rate control
57 Bug with 3D plotting of cell values in models with a large number of fractures corrected
BUILD 137
56 Improvement to calculation of GOC depth during equilibration if initial pressure is
specified below the bubble point
55 Polymer and gel thickening factors always remain greater than one, regardless of
correlation parameters entered
BUILD 136
54 Implicitness (time step size dependence) improved for polymer/gel reactions
53 Correction to manual regarding polymer/gel reaction rate equation
BUILD 135
52 Bug with polymer and gel viscosity temperature dependence fixed
BUILD 134
51 Improved fracture grid discretisation for fixed dimension fractures
50 Fluid production/injection rates associated with fractures output in well results
BUILD 127
49 Externally imported horizontal transmissibilities now applied to next active block even if
neighbour is inactive
48 Thermal convergence improved for thermal fracture cases with cross-flow within fracture
BUILD 120
47 Bug preventing well PI multiplier from being applied to 'multi-lateral' wells fixed
46 Speedup for cases with large numbers of (or long) wells with wellbore friction
45 Modification to thermal fracture model for cases where multiple 'small fracture' solutions
1990-2011 Petroleum Experts Limited
23
REVEAL
are possible
BUILD 118
44 Minor bug with fracture schedule interface fixed
43 Some default values (reference temperature, start date and implicit thermal model)
changed
42 Validation improved for voidage replacement wells
41 OpenServer bug fixed for 'map axes' and 'filter cake' data
40 'Update globally' option in reservoir section improved
39 Inaccessible pore volume (polymer & gel) bug fixed for use with implicit solver
38 Error with shear rate 3D display variable corrected
37 Constant injection well heat option (for thermal recycling)
36 Improved thermal stress calculation for grids with internal inactive grid blocks
35 Font size used for water chemistry calculator plot increased
34 3D z-scaling of selected blocks visualisation bug fixed
BUILD 115
33 Multiple aquifer regions may be defined for each analytical aquifer (OpenServer string
for aquifer connection direction changed)
32 Minor bug fixes associated with schedule import facility
31 Problem associated with thermal fracturing controlled by voidage replacement cycling
between water and gas injection fixed
30 Aqueous partitioning of H2S and CO2 slightly modified when using the simplified water
chemistry equilibration method
29 Internal unit conversion bug calculating wellbore heat transfer corrected
28 Playback 'repeat' option added to 3D display playback options
BUILD 112
27 Improvements to numerical stability of long multi-lateral wells with large connectivity
factors
26 Steam fraction (by volume) in gas phase added to 3D results list
BUILD 109
25 Average reservoir results recorded before the first time step (post equilibration) as well
as after each time step
24 Block centre coordinates and volumes added to t=0 display
23 Additional water chemistry text diagnostic regions may be defined (see water chemistry
section)
22 All refined grid properties defaulted to parent grid values (connate saturations previously
required to be set in refined grid)
21 Various minor interface labeling (spelling) errors fixed
20 Well trajectory azimuth redefined to be clockwise viewed from above (see multi-lateral in
well section)
19 Default for well IPR calculation changed from 'streamline' to 'diffusivity' (see well
section)
18 Thermal conduction across refinement boundaries and non-neighbour connections
included
17 Wellbore friction model improved with increased tubing discretisation possible (see well
section)
16 Gas-lift and pump frequency added to well results where these artificial lift are used
REVEAL Manual
February, 2011
Technical Overview
24
15 3D view may display blocks only within a selected variable range (see scale option)
BUILD 108
14 The 'Under saturated Rs Solve' option improved
13 Possible implicit rate well constraint violation fixed
12 3D view selected blocks within refined grid may be saved with saved view
BUILD 105
11 Improvement to solver for advection concentration of trace components - reduces
possible numerical oscillations
10 Water chemistry equilibration speeded up for cases where initial composition and
temperature is constant
9
3D graphical display bug associated with Geertsma deKlerk fracture model fixed
BUILD 102
8
Wells and fractures that have no active completed blocks are not required to be deleted;
they are now ignored
7
Maximum number of completion table entries per well increased from 100 to 1000
6
Additional solver performance variables added to results
5
Additional warning if water chemistry database cannot be found
4
Start status added to initialisation section (equilibration or restart)
3
Units conversion bug for gas lift injection rate for TPD with GLR as sensitivity variable
fixed
2
Sample file validation ranges reset to defaults
1
Preferences and Register Importer Components moved from Options to File menu
BUILD 101
IPM Version 5.00
BUILD 042
36 Joule Thomson coefficient added for water, oil and gas
BUILD 040
35 J Leverett oil/water capillary pressures calculated using horizontal and vertical
permeability
34 water capillary saturation equilibration above gas/oil contact modified
33 Explanatory text added to reservoir section wizard screens
32 THP constraint included within Newton iterations to prevent overshoot as constrain is
violated
BUILD 034
31 Recovery factor added to average reservoir results
30 Automatic relative permeability coverage button added
29 Wireframe default for plotting modified
28 Rocktype, PVT and equilibration region coverage defaulted on a new model
BUILD 030
27 Number of components (e.g. water chemistry) that can be viewed on the Xflow tubing
data plot increased from 10 to 100
26 Details of species not included in the model that are predicted now included in water
chemistry calculator
BUILD 029
25 Irreversible compaction added
1990-2011 Petroleum Experts Limited
25
REVEAL
February, 2011
Technical Overview
26
BUILD 226
16 History match data import from ECLIPSE schedule
15 Number of thermal PVT tables extended
14 Number of tracer components increased
13 ECLIPSE and VIP importer updated
12 Increased well specification - heat transfer, extended completion table data
11 Thermal fracture model updated - stability, non-propagation and gas injection
10 Improved solver, constraint and abandonment control
9
Drainage regions calculated and used for PI reporting
8
Improved refinement modelling
7
Compressible filter cake injection model
6
Extended souring model
5
Steam model
4
Solver options extended
3
Water vapour in gas model
2
Generalised liquid and gas injection
1
Extended desaturation model, including IFT and capillary number calculations
IPM Version 4.04
20 Bug with number of stress layer greater than 20 fixed
19 Voidage replacement for all producing wells bug fixed
18 Inflow for multilateral 'intelligent' well completions connected to RESOLVE bug fixed
BUILD 252
18 Restart from ECLIPSE or VIP for single component models allowed
17 Data import from VIP for perforation data bug fixed and ECLIPSE import units
conversion for non-Darcy factor fixed
16 Further improvement to over/underburden temperature flux calculation
15 Improved validation for refinement grids
14 Souring model includes nutritional efficiency to model nutrient takeup for growth and
anaerobic respiration
13 Souring model maximum reduction rate is now a function of temperature
12 Units for critical stress intensity extended
11 Over/underburden temperature flux correction - losses previously overestimated
BUILD 244
10 stress calculation problem fixed for blocks with large pore volume multiplier
9
Zoom button (+) improved
8
Reported well cumulatives error with voidage replacement present corrected
7
Stress layering in interface improved (200 rows available)
6
Water chemistry with souring and partitioning logic improved for inclusion of blocks in
calculation
5
Positive bias in permeability reduction model corrected
BUILD 242
4
OpenServer bugs in schedule fixed
BUILD 232
3
Multiple thermal fractures on a single well solver stability improved
BUILD 225
1990-2011 Petroleum Experts Limited
27
REVEAL
2
Thermal fracture filter cake model added
1
Thermal fracture model improved for cases with large stress discontinuities
BUILD 221
Version 1.0 IPM 4.0
1
Water chemistry convergence and reporting improved
2
Thermal conductivity error corrected
BUILD 157
3
Analytical aquifer may be applied to boundaries with inactive blocks - the first active
block into the model is used
4
Over and underburden temperatures set to initial reservoir temperatures as defined by
the thermal gradient
5
Wax viscosity correlation error fixed
BUILD 158
6
Permeability reduction model simplified (permeability reduction always included in shear
dependence)
BUILD 161
7
Asphaltene permeability reduction model added
8
Downtime well efficiency added to schedule section
9
Equilibration reference pressure may be set at a depth different from an OW or OG
contact depth
10 Dry gas restart from external simulator import bug fixed
11 Gas Non-Darcy units changed to d/scf, previously d/rcf. Non-Darcy included in IPR
calculations for RESOLVE
BUILD 204
12 New sample files
13 9 Point transmissibility bug fixed
14 Non-Darcy beta factor for gas flow in producing fractures; producing fracture model
more implicit
15 Well PI multiplier added for history matching
16 Bug with refinement covering inactive blocks fixed
17 Wax permeability reduction model added
18 Bug for implicit rate wells in small grids fixed (memory error)
19 Scheduling controlled by dates
BUILD 213
20 Well completion table data entry includes kh and effective radius - this data is also read
from ECLIPSE imported cases
BUILD 218
21 Schedule import bug fixed
22 Convergence for cases with large capillary pressures improved
Version 2.0.1 (beta)
1
Non-neighbour connections with inactive blocks bug fixed
2
9 point horizontal upstream weighting in addition to 5 point scheme for implicit solver
3
Extend the pause and stop capability to be more reactive for larger simulation
calculations
REVEAL Manual
February, 2011
Technical Overview
28
4
5
6
7
8
9
29
REVEAL
February, 2011
Technical Overview
11
30
31
REVEAL
February, 2011
Technical Overview
12
32
1.5
ITRequirements
REVEAL supports all Windows-certified drivers that are shipped with Windows. The list of
devices, software and hardware supported by Windows is included with the documentation of
your copy of Windows.
Hardware and software requirements - minimum requirements recommended for REVEAL.
Pentium III class PC (Windows NT, 2000 or XP)
500 MHz processor (2GHz+ recommended)
256 Mbytes of memory (1Gbytes+ recommended)
5 Gbyte hard disc space for temporary files
1280 by 1024 minimum display size with high colour (16 bit) resolution
CD drive if the software is installed from a CD
Licenses - REVEAL can be run using a single user (stand-alone) license or on a network.
In either case, a special security key is needed. The security key is called Bitlock for standalone licenses, and HARDLOCK for network licenses. The security key is provided by
Petroleum Experts.
For a stand-alone license, the security key (Bitlock) must be attached to the parallel port of
the PC. For a network installation, the security hey (HARDLOCK) can be attached to any PC
communicating with the network. You should refer to the separate installation procedure for a
network HARDLOCK sent with a HARDLOCK license.
Chapter
User Guide
User Guide
2.1
34
This REVEAL user guide will include a description of all the different options available in
REVEAL.
The organisation of the "Input Wizard" section of the manual illustrates the basic procedure
required to setup a REVEAL model to carry out reservoir modeling and analysis.
The other sections of the user guide include additional comments on specific topics such as
importing data from external sources, setting-up grid refinements, etc...
The setup and usage of REVEAL models is illustrated on case examples in the "Worked
Examples" section.
2.2
Should a user have further questions or experience any issues when using REVEAL,
Petroleum Experts technical support team can be contacted by using the following email
addresses:
35
REVEAL
Contact
us
You can contact
us by Email,
Mail ,Phone, Fax
or on the web at
http://www.petex.
com
Unite Unit Unit
d
ed
ed
King Stat State
dom es
s
Petrol
eum
Expert
s
Limite
d
Petex
House
10
Logie
Mill
Edinb
urgh,
EH7
4HG
Scotla
nd UK
Petro
leum
Exper
ts
Inc.
757
North
Eldrid
ge
Park
way
Suite
510
Hous
ton
TEXA
S
77079
USA
Petrol
eum
Exper
ts Inc.
108
KOL
Drive
Brous
sard
LA
70518
USA
Technical
lafayette@petex.
support@petex.
houston@petex.com
Technical Technical
Support
Support Support
Allcom
Other com
lafayette@petex.
edinburgh@petex.
houston@petex.com
All Other All Other
Queries
Queries Queries
com com
REVEAL Manual
February, 2011
User Guide
36
When contacting Petroleum Experts technical support team, the user should include the
following details in the request:
Include the keyword "REVEAL" in the e-mail subject.
REVEAL version and build number that are being used.
This information can be found in the Help | About section of the main REVEAL menu.
Detailed description of the question or issue experienced.
A copy of the REVEAL model (.rvl file). If the file is large (i.e. >2MB), then it is
possible to delete potentially large quantities of graphical output data using the option
Results | Clear Grid Results.
2.3
Input wizard
37
REVEAL
to copy and Control+V to paste the selection. Alternatively, entire sections may be copied
using options obtained using a right mouse click. To paste data into REVEAL, the size
(number or columns) of the region to be pasted must match that required by REVEAL. The
simplest way to check the column format required is to select and copy a blank region from
REVEAL into EXCEL (for example).
The script itself may be edited directly, sometimes Control+C (copy), Control+V (paste),
Control+F (find) and Control+H (find and replace) are useful. To select a keyword or other
text Shift+left mouse button may be used. Once the script is edited, it is best to run the
wizard, to read the changes and re-write them to the script to check validation. Care should
be taken performing extensive changes to the script because syntax errors will not be read by
the wizard and data incorrectly set may be lost.
Comments may be added to the script within /* and */ delineators. However these comments
must lie outside the section and end keywords used for each data section.
It is obviously advisable to save the REVEAL archive file using File|Save or File|Save As at
regular intervals. The wizard cannot be running while a save is being made.
February, 2011
User Guide
38
Wells section
location and properties, filter-cake, fractures, stress
Well-bore heating section well-bore heating
Initialisation section PVT initialisation, equilibration initialisation, user initialisation, component
concentrations
Schedule section
well schedule, thermal fracture schedule
39
REVEAL
February, 2011
User Guide
40
41
REVEAL
Increase preconditioning - this may be used for models that are difficult for the solver and
allocates more time to the preconditioner. This may be set if the time spent in the
preconditioner is significantly less than the time spent in the solver. See the end of the text
debug results for a summary of where the cpu time of a completed run was spent.
Reduce step size - this option reduces the time step by limiting the maximum change in
pressure and saturation. It should be used for cases that have a significant number of time
step retrys.
Areal flow - when the flow is known to be predominantly areal (limited vertical flow) then this
option will alter the row/column ordering to be d4z (see below).
Maximum variable changes - the time step size is selected to limit the maximum changes in
a variable
Limits for pressure and saturation are entered. These may be reduced for cases with time
step retrys.
Convergence limits - specifies when a solution time step is converged
The pressure, water, oil and gas saturations, temperature and maximum relative well error
(for implicit rate wells) limits may be set. Some heuristics are included in the solver to allow
convergence if not all of the convergence limits are met, but the solve is considered
sufficiently robust. For example, 3 or more iterations have been completed and the pressure
and well convergence limits are met, then the saturation limits may be violated for the worst
offending blocks; this may occur in models with some small blocks with oscillations in their
saturation due to large throughput.
These may be increased to speed calculations, or reduced if oscillations in results are
observed and identified as being a result of incomplete convergence.
Row column ordering - the order in which blocks are added to the solution matrix
The order in which the solution matrix is formed will affect the time required to solve the
resulting system of equations. The cycling is from left to right (e.g. XYZ cycles in the X
direction, then Y direction, then Z direction, with the cycling fastest in X direction). Some D4
(red/black chess board) ordering schemes are also included. In general the fastest ordering
should correspond to the highest transmissibility direction (often Z) or the smallest bandwidth
(direction with smallest number of blocks).
Matrix bandwidth is reduced by ordering with the smallest grid dimension first. If the flow is
predominantly in one direction then this direction should be ordered first to keep the largest
term near the matrix diagonal.
The default automatic option checks the largest transmissibility direction and smallest grid
dimension direction. It uses the transmissibility divided by the grid dimension for each
direction to order the solution matrix.
REVEAL Manual
February, 2011
User Guide
42
In cases where a strong flow direction is known due to well placement, this direction should
be set as the first direction.
The D4 options are a red/black scheme in two dimensions that equally weights two
dimensions. Therefore, for example, if the flow is known to be areal with limited vertical flow
and the X and Y dimension are similar, then the X and Y direction have equal weight, with the
Z direction having the smallest contributions to the solution matrix and hence the d4z scheme
may be appropriate.
For some cases spectral colour ordering may may help improve solution matrix bandwidth.
Two methods 'multi-colour' and 'Independent Set' are provided. These methods have been
found to help for models with long wells and grid refinement.
Horizontal point scheme - automatic connection to diagonal blocks
Either a 5 point or 9 point horizontal flow scheme is available for the fully implicit solver. The
9 point scheme is recommended since it reduces grid orientation effects. The 5 point scheme
is the default used by ECLIPSE, therefore this scheme should be used for imported models
that have been history matched using this option.
More Information on this topic: Difference between 5 and 9 points Horizontal Point
Schemes
Adaptive implicit parameter - control degree of adaptive implicit solver option
If the adaptive implicit solver option is selected, then this parameter determines which blocks
will use the IMPES method. The parameter approximately represents a maximum change in
saturation and maximum throughput as a fraction of pore volume. Any gridblocks that exceed
this value and all blocks where free gas is present will use the implicit formulation. Therefore
the smaller the number the fewer blocks that will use the IMPES formulation. It is
recommended that for suitable models (large regions where the changes in saturation are
slow) a value between 0.1 and 0.01 is used. If no performance improvement is found with a
value of 0.01, then this option should usually be turned off.
Newton iteration options - control the divergence criteria
These options should not be altered for most models.
Minimum iterations - the minimum number of Newton iterations.
Maximum iterations - the maximum number of Newton iterations without convergence before
a time step cut retry is required.
Reduce dt iterations - if this number of iterations is taken or exceeded, but still converges
before the maximum number of iterations is exceeded, then the next time step will be reduced
by a factor two.
1990-2011 Petroleum Experts Limited
43
REVEAL
Hold iterations - if this number of iterations is taken or exceeded, but the reduce dt iteration
limit is not reached, then the next time step will not increase.
Divergence condition - if the maximum block value for pressure change increases in an
Newton iteration by more than this factor, then a retry will take place.
Max Newton step size - at each Newton update of the independent variables, the deltas are
multiplied by this step size.
Minimum dP for inclusion - after the first iteration any blocks where the pressure change is
less than this value will be removed from the solver for subsequent iterations. This effectively
ignores large regions of the model where very little change is occurring after the first iteration,
which always includes all active blocks.
Preconditioner Options - the preconditioner is the first step to solving the equations
Preconditioner - this selects the preconditioner to use - generally the ILUTP (default) is
recommended. There are cases where the ILUDP is better, especially if the linear solver fails
to converge consistently using ILUTP. ILUT is included for test purposes and should not be
used.
ILUT - Incomplete LU factorization with dual truncation strategy
ILUTP - ILUT with column pivoting
ILUD - ILU with single dropping + diagonal compensation + column pivoting
ILUK - ILU with level k fill-in
The default, ILUTP is generally recommended.
Fill in parameter - this is the bandwidth of the pre-conditioning matrix (maximum number of
non-zero entries for each row). It is set to 33 = (9+2)*3 by default, which corresponds to 9
horizontal and 2 vertical blocks each with 3 solution variables (pressure and two saturations).
It may be lowered to reduce the size of the pre-conditioning matrix and hence memory
requirements or increased where more equations are present for the steam model.
If a negative value is entered, then the workspace size is allocated according to the modulus
of the value, but the ILUTP pre-conditioner bandwidth is increased for some blocks (usually
implicit rate wells) where allocated memory is available.
Drop tolerance - relative magnitude of off diagonal terms (relative to largest) to be included
in the preconditioner. A smaller value includes more terms and hence more time is spent in
the preconditioner and consequently less in the linear solver. This value may be reduced to
increase preconditioning. Typically it should be between 0.001 and 0.00001. The time spend
in the preconditioner and linear solver may be seen by looking at the end of the debug text
file.
Permutation tolerance - relative magnitude of off diagonal terms (relative to largest) to be
used by the preconditioner to swap (permute) columns in the solver. A smaller value
REVEAL Manual
February, 2011
User Guide
44
permutes more terms and hence more time is spent in the preconditioner and consequently
less in the linear solver.
Auto tune drop tolerance - this option may be selected to automatically vary the drop
tolerance during a calculation. This is recommended for most models.
Linear solver options -the linear solver is used with the preconditioner for each Newton step
The options for linear solver should not generally be altered from the default values. A
stabilised bi-conjugate gradient (BCGSTAB) and generalised minimum residual solver
(GMRES) are used for the linear solve, depending on how difficult the problem appears to be.
The residual reduction is a relative residual reduction defining convergence, and the residual
maximum is an absolute residual limit. Sometime, reducing the residual maximum may help
reduce oscillations between Newton iterations. The residual is defined as the r.m.s. mass
rate per unit volume error. The Krylov space size is used for the GMRES solver. If this value
is increased, the solver may become more robust, but may require significantly more memory
and become much slower, it may be reduced to a minimum value of 0 to minimise memory
requirements.
Krylov space size - this is used for the GMRES solver which is only used when the faster
BCGSTAB solver fails to converge. If this value is increased, the GMRES solver may
become more robust, but may require significantly more memory and become much slower, it
may be reduced to a minimum value of 0 to minimise memory requirements. Generally if this
value requires to be increased, the problem is nearly singular and the reason for this should
be sought before changing this value. It is recommended that this value is set to zero, in
which case the GMRES solver is not used.
Residual reduction - the relative reduction in the solution matrix residual when convergence
is assumed. The residual is defined as the r.m.s. mass rate error. This value may be
reduced in some cases, where the linear convergence is not resulting in Newton convergence.
Residual maximum - this is the absolute maximum for the linear solver to be converged. The
solution is considered converged when either the relative or maximum limits are reached.
45
REVEAL
February, 2011
User Guide
46
recommended for component concentration where trace components are not present, and
also recommended for the surfactant micro-emulsion and water chemistry models, to ensure
components are transported in the ratios present within the upstream block.
2-point - block face value is taken as a value extrapolated from the two upstream blocks.
This method reduces numerical dispersion but generally not recommended.
fct/2-point - similar to the 2-point scheme, but extended fct (flux corrected transport)
algorithm [Ref 17] acts to minimise numerical dispersion. Recommended for temperature and
component concentrations where trace components are present.
fct/3-point - higher order, three block (two upstream and one downstream) fct method. This
method should only be used when all blocks are identical cubes.
Not generally
recommended.
Original - for mobility weighting, this method uses a 1-point upstream weighting for relative
permeability and centred value for viscosity. Either this method or the 1-point upstream
weighting are recommended for permeability weighting.
Centred - for density weighting (used for gravitational term in implicit pressure solve), this
method is a mean upstream/downstream value. Either this method or the 1-point upstream
weighting are recommended for density weighting.
Grid Orientation Effect Reduction
Diagonal transmissibility - used to minimise grid orientation effects in the horizontal
(constant Z) plane. A value of 0 turns this model off, while a value of 0.5 is recommended
and is equivalent to allowing up to 1/3 of flow to be diagonal rather than parallel to block
faces. This model only has significant effect near regions of large mobility variations (e.g.
flood front).
2.3.3.2 Model selection
This wizard page initialises the models that will be present, and consequently the subsequent
sections and screens that will be displayed by the input wizard.
47
REVEAL
February, 2011
User Guide
48
49
REVEAL
REVEAL Manual
February, 2011
User Guide
50
51
REVEAL
Corner point grid - most large models will use the corner point grid coordinate system. The
X, Y and Z coordinates of each block corner must be entered layer by layer (increasing Z)
into a data array, by selecting the Data Array button. The data array must also be given a
name. The X, Y and Z coordinate values should all be increasing in their respective positive
directions. The corner point data may be copied and pasted from another application such as
EXCEL, or imported directly from another simulator, where a filter is provided. See the Input
option on the main bar for grid geometry import options. Once potentially large volumes of
corner point data have been entered it is advisable to select Finish to leave the wizard and
save the REVEAL archive.
Corner point (simplified) - in this scheme adjacent blocks share coordinates, there are
therefore (NX+1) * (NY+1) * (NZ+1) coordinates in total. These are entered as X, Y and Z
coordinates for each layer, with (NX+1) * (NY+1) entries per layer for each spatial direction.
Corner point (full) - in this scheme each block has 8 independent coordinates, there are
therefore (2*NX) * (2*NY) * (2*NZ) coordinates in total. These are entered as X, Y and Z
coordinates for each layer, with (2*NX) * (2*NY) entries per layer for each spatial direction.
Each block is considered in turn and its two corner point coordinates are entered before the
next block data is entered.
Cartesian grid - the Cartesian grid coordinate system generates a regular grid with constant
grid spacing.
Radial grid - the radial grid coordinate system generates a grid with radial grid blocks forming
a sector away from a central well. For the radial grid option a central well radius must be
input. The sector angles may be constant; if this is required then select the Uniform Sector
Angle button and enter an angle. The units for the angle may be toggled between radians
and degrees by clicking right within the angle data entry cell. Due to symmetry, if a twodimensional (no azimuth dependence) is required, then it is recommended that a NY is set to
1, and the sector angle is set to a small value (say 1o or 3.6o).
Curvilinear grid - the curvilinear grid coordinate system generates a grid with 2 wells as one
eighth of a repeated five-spot symmetry, reflecting the streamline flow between two wells,
one injector and one producer. For the curvilinear grid option, the spacing between the well
must be entered, and an excluded fraction. The excluded fraction is the fraction of the
distance between the two wells excluded from the model, which prevents stability problems
near the wells. It should typically be set to about 0.05.
The radial and curvilinear model descriptions are best used for single well models. Note that
well rates should be scaled according to the angle of completion.
An additional page of data input is required for the Cartesian, radial and curvilinear grid
options.
Cartesian grid
REVEAL Manual
February, 2011
User Guide
Radial grid
52
Curvilinear grid
Grid dimension
Enter the maximum number of blocks in each principal direction NX, NY and NZ.
Update globally - this button will update all other sections where possible to reflect changes
made to NX, NY or NZ. The update globally option is only required when the grid size is being
changed, and performs no function the first time a reservoir geometry is defined. You should
check all of the data associated with grid blocks when the grid dimensions are changed and
this option is used. For example well completion blocks will not be changed, and if there were
variations in a parameter within the original grid, when the grid dimension is changed,these
properties may not be distributed in the new grid as required.
Map Axis
The map axis is used in the well section when entering a well deviation survey defined relative
to a different axis system than was used to define the grid. The origin entered is the origin of
the grid coordinate system in the map axis system.
A map axis can be entered for Cartesian or corner point grids only. Three coordinates in the
horizontal plane (X,Y coordinates only) defining an origin and directions for the X,Y axes of a
map coordinate system are required. The coordinates are entered in the grid coordinate
system and define a second coordinate (map) system that may be used to enter well
trajectories. Note that the map axes must be orthogonal (90 degrees between the axes).
53
REVEAL
February, 2011
User Guide
54
Single layer range - for a single layer, the Z dimensions for blocks may vary in the X and Y
directions. Care must be taken with this method to ensure that full coverage of the model is
achieved (all blocks have a Z dimension).
Layer n multiple - where one layer Z dimensions are a multiple of a previously defined layer.
For each method of Z dimension entry, the range and Z dimension should be entered in the
appropriate data entry cells and the Add button selected to add the data to a table of entries.
An entry in the table may be modified by selecting and highlighting the required entry in the
table and then modifying the data entered; the Add button should not be used to update
modified data, since it will add another row to the table. The modified data can be viewed in
the table by re-selecting the row in the table. Table entries may be deleted by using the
Delete button.
Full coverage of the model may be checked by selecting the Validate button, and the resulting
grid checked by selecting the Plot button.
55
REVEAL
February, 2011
User Guide
56
Single layer range - for a single layer, the Z dimensions for blocks may vary in the X and Y
directions. Care must be taken with this method to ensure that full coverage of the model is
achieved (all blocks have a Z dimension).
Layer n multiple - where one layer Z dimensions are a multiple of a previously defined layer.
For each method of Z dimension entry, the range and Z dimension should be entered in the
appropriate data entry cells and the All button selected to add the data to a table of entries.
An entry in the table may be modified by selecting and highlighting the required entry in the
table and then modifying the data entered; the Add button should not be used to update
modified data, since it will add another row to the table. The modified data can be viewed in
the table by re-selecting the row in the table. Table entries may be deleted by using the
Delete button.
Full coverage of the model may be checked by selecting the Validate button, and the resulting
grid checked by selecting the Plot button.
57
REVEAL
REVEAL Manual
February, 2011
User Guide
58
Single layer range - for a single layer, the Z dimensions for blocks may vary in the X and Y
directions. Care must be taken with this method to ensure that full coverage of the model is
achieved (all blocks have a Z dimension).
Layer n multiple - where one layer Z dimensions are a multiple of a previously defined layer.
For each method of Z dimension entry, the range and Z dimension should be entered in the
appropriate data entry cells and the Add button selected to add the data to a table of entries.
An entry in the table may be modified by selecting and highlighting the required entry in the
table and then modifying the data entered; the Add button should not be used to update
modified data, since it will add another row to the table. The modified data can be viewed in
the table by re-selecting the row in the table. Table entries may be deleted by using the
Delete button.
Full coverage of the model may be checked by selecting the Validate button.
59
REVEAL
2.3.4.5 Depth
For all grid geometries except corner point (where the coordinates of all blocks are entered
explicitly), the depth of the top surface of the grid must be defined. The depth must cover the
entire top layer (Z=1) of grid blocks, and is defined as the depth from a zero datum to the top
of the grid blocks.
For Cartesian grids, two methods are available, range/array and dip angles. For the radial
and curvilinear grids, only the range/array method is available.
Note that the top surface entered is the top surface at the centre of each grid block. The grid
top surface corner points are interpolated from the top surface grid centre points entered. In
the case where there are inactive blocks in the grid and a top surface is not defined, then a
top surface value of zero should be entered for columns where no active blocks are present.
Any values of zero will not be included in the corner point interpolation.
REVEAL Manual
February, 2011
User Guide
60
61
REVEAL
2.3.4.6 Porosity
The porosity of each grid block is required. This is the porosity at the reference pressure,
with porosities being calculated as a function of rock compressibility for grid blocks with
pressures below or above the reference pressure.
A zero porosity is used to identify inactive grid blocks, which will take no part in the flow
calculations.
Two methods are available to enter porosities, range and array.
Select Add to add an entry to the table of values.
Range - each table entry may cover a range of blocks with a constant value. Click the right
mouse button within the value entry cell to toggle between fraction and percentage porosity.
Several entries to the table may be added, modified or deleted. The coverage of the table
REVEAL Manual
February, 2011
User Guide
62
entries must cover all grid blocks. The Validate button may be used to check coverage.
Select entries in the table with the mouse to modify or delete them.
Array - an array of porosities are entered, one for each grid block, entered by layer with
increasing depth (increasing Z). The array must be given a unique name before data is
entered. Data may be copied and pasted into the array from another application.
Array data may be exported and imported. Note that during import and export, the units are
those currently set in REVEAL.
Use parent grid values - only available if the current grid is a refined grid, then use
porosities defined for master (parent) grid. For more information see grid refinement for
1990-2011 Petroleum Experts Limited
63
REVEAL
general information on grid refinement and refined reservoir properties for information on
entering refined grid reservoir properties).
The Plot button may be used to view the porosity distribution entered.
2.3.4.7 Permeability
The permeability in the X, Y and Z directions is required for each grid block in the model. Use
the tabs at the bottom of the screen to enter the Y and Z permeabilities, which can be
entered explicitly, or as a multiple of the X direction permeabilities.
See the porosity help screen for details of how to add ranges or arrays of permeabilities.
2.3.4.8 Transmissibility multipliers
This screen is optional and no data is required.
REVEAL Manual
February, 2011
User Guide
64
The default transmissibility between two blocks is calculated using a harmonic average of the
two adjacent grid block permeabilities. Transmissibility multipliers may be used to modify the
transmissibilities between blocks to model transmissibility barriers (or enhancement).
Transmissibility multipliers (default value of 1.0) may be given in the X, Y and Z directions for
any or all grid blocks. e.g. an X direction transmissibility multiplier of 0.1 for grid block (3,4,2)
reduces the transmissibility between grid blocks (3,4,2) and (4,4,2) by a factor of 10.
See the porosity help screen for details of how to add ranges or arrays of transmissibility
multipliers.
2.3.4.9 Absolute transmissibilities
This screen is optional and no data is required.
65
REVEAL
In normal use, the inter-block transmissibility is calculated internally by REVEAL from the
block permeabilities, the block geometries (corner points), and the transmissibility multipliers.
This screen can be used to overwrite those values with externally calculated values in the x-,
y-, and z-directions. The values here will only be used if the 'Use external transmissibilities'
option is set at the top of the screen.
This data would normally be imported directly from an ASCII file or from another simulator. If
external transmissibilities are used, then the diagonal point scheme should usually be set to 5
point in the control section and it should be confirmed that the imported model
transmissibilities were calculated using a 5 point horizontal scheme.
For example this would be used when a model is imported from ECLIPSE and the results
wish to be reproduced as well as possible before other effects are considered.
See the porosity help screen for details of how to add ranges or arrays of transmissibilities.
REVEAL Manual
February, 2011
User Guide
66
2.3.4.10Net to gross
This screen is optional and no data is required.
The default horizontal permeabilities (XY plane) may be modified by entering a net to gross
ratio for any or all grid blocks (default value of 1.0). e.g. a net to gross of 0.5 reduces the X
and Y direction permeabilities by a factor of 2.
See the porosity help screen for details of how to add ranges or arrays of net to gross ratios.
2.3.4.11Pore volume multipliers
This screen is optional and no data is required.
67
REVEAL
The pore volume multipliers are multipliers for block volumes as calculated from the grid
geometry. The porosity and inter-block transmissibilities are not affected by these multipliers.
Large pore volume multipliers on the boundary of small sector may be used to effectively
simulated constant pressure boundary conditions.
See the porosity help screen for details of how to add ranges or arrays of pore volume
multipliers.
2.3.4.12Rock type
A rock type must be assigned to each grid block in the model. Rock types are used to define
regions of the model with the same physical or dynamic properties (e.g. relative permeability
tables or rock heat capacity) which will be specified later in the input wizard.
REVEAL Manual
February, 2011
User Guide
68
To add a rock type select the Add button and define its coverage. To modify or delete a rock
type select the rock type from the table and modify its coverage or select the Delete button.
The coverage of a rock type is defined by a table of selected regions. Define a region by
selecting ranges of X, Y and Z grid blocks, or the entire grid by using the All button. Multiple
regions may be added, modified and deleted to define the coverage for each rock type.
Check the coverage is complete by using the Validate button.
2.3.4.13PVT region
A PVT region must be assigned to each grid block in the model. PVT regions are used to
define regions of the model where different PVT may occur. Therefore different PVT regions
should be non communicating.
69
REVEAL
To add a PVT region select the Add button and define its coverage. To modify or delete a
PVT region select the region from the table and modify its coverage or select the Delete
button.
The coverage of a PVT region is defined by a table of selected regions. Define a region by
selecting ranges of X, Y and Z grid blocks, or the entire grid by using the All button. Multiple
regions may be added, modified and deleted to define the coverage for each region.
Check the coverage is complete by using the Validate button.
2.3.4.14Equilibration region
ngiAn equilibration region must be assigned to each grid block in the model. Equilibration
regions are used to define regions of the model where different equilibrations may occur.
Equilibration includes initial pressure and reference depth setup, and also includes any
contacts, these are defined in the initialisation section. Each equilibration region must only
have one PVT region associated with it.
REVEAL Manual
February, 2011
User Guide
70
To add an equilibration region select the Add button and define its coverage. To modify or
delete an equilibration region select the region from the table and modify its coverage or
select the Delete button.
The coverage of an equilibration region is defined by a table of selected regions. Define a
region by selecting ranges of X, Y and Z grid blocks, or the entire grid by using the All button.
Multiple regions may be added, modified and deleted to define the coverage for each region.
Check the coverage is complete by using the Validate button.
2.3.4.15Fluid in place region
A fluid in place region must be assigned to each grid block in the model. Fluid in place
regions are used to define regions of the model where field average properties are calculated
and may be plotted or exported following a simulation.
71
REVEAL
To add a fluid in place region select the Add button and define its coverage. To modify or
delete a fluid in place region select the region from the table and modify its coverage or select
the Delete button.
The coverage of a fluid in place region is defined by a table of selected regions. Define a
region by selecting ranges of X, Y and Z grid blocks, or the entire grid by using the All button.
Multiple regions may be added, modified and deleted to define the coverage for each region.
Check the coverage is complete by using the Validate button.
2.3.4.16Non-neighbour connections
This section is optional.
REVEAL Manual
February, 2011
User Guide
72
73
REVEAL
REVEAL Manual
February, 2011
User Guide
74
Grid refinement is not available for radial or curvilinear grids, or using the original
IMPES solver.
Refined regions within the main grid may be identified within this section. Only the scope and
names of refined region(s) are entered at this stage. The scope of a refined region may
contain any set of contiguous blocks within the main grid. Different regions of refinement must
not overlap or be contiguous (contact neighbouring refined regions).
To Add or delete a refined region use the New and Delete buttons, and enter a unique
identifier name for the refined region.
The coverage of a refined region is defined by one or more hexahedral sub-regions which are
added or deleted using the Add and Delete buttons within the coverage section of this
screen.
Use the Validate and Plot buttons to check the coverage of refined regions.
75
REVEAL
February, 2011
User Guide
76
PVT screens, speeding up most REVEAL calculations. If use tables is selected, then the
tables must be complete (all columns completed) and have sufficient coverage over a range
of temperatures and pressures to cover all expected values during the REVEAL simulation.
See below for more general information on PVT specification.
See below for more information on Non-Newtonian fluids.
Options
Thermal conductivity - REVEAL is always thermal in its formulation, but thermal conductivity
is only required if there will be thermal variations within the reservoir during the simulation.
Over and underburden conductivity is only present when this option is selected.
Diffusion and dispersion - select the options for component diffusivity and phase dispersivity
if required. Additional data (diffusivity and dispersion lengths) will be required for these
options. The diffusivity and dispersivity options are only available for the IMPES solver
formulation. Diffusion and dispersion affect the transport of trace components according to
the flow velocity and rock tortuosity (dispersion) and the concentration gradient (diffusion). To
achieve this, high order upstream weighting schemes are required, that are not included in the
implicit formulation where a single point upstream weighting is used.
Diffusion may be used with the implicit formulation.
Water vapour in gas - this option maintains an equilibrium of water vapour in hydrocarbon
gas phase with liquid water in the reservoir model. The concentration of vapour in gas is
calculated from pressure, temperature, gas gravity and salinity according to a correlation
shared with MBAL and PROSPER. The main effect of this option is to pass the vapour in gas
content to a PROSPER generated lift curve, where water dropout may have significant effects.
Additionally, there are smaller effects within the reservoir as the vapour content changes,
which include changes in liquid water salinity.
Set default properties
Default thermal properties - specific heat capacity, thermal conductivity and rock density
defaults are set. These data are required even for nominally isothermal simulations,
where no thermal gradient or thermal injection are present.
Default aqueous component properties - sets the default density and compressibility for
additional aqueous volumetric components such as surfactant and alcohols.
Use correlations for fluid thermal data - enthalpy (specific heat capacity and Joule
Thomson coefficient) and thermal conductivity calculated for water, oil and gas based on
correlations used in PROSPER.
Component data
77
REVEAL
Trace components - trace components are either volumetric or non-volumetric (most are
non-volumetric). The mass or volume of the non-volumetric trace components take no part in
the pressure solve (for IMPES or implicit formulations) so the density of trace components is
only used to convert from mass to volume fractions. For this reason, non-volumetric
component densities are set equal to the phase they are partitioned within (e.g. water
chemistry components are partitioned in the aqueous phase). This means that component
mass fractions within the phase are equivalent to volume fractions (the solute and solvent
have the same density).
The volumetric trace components (injected non-reservoir gas, surfactant and the two alcohol
components) are included within the calculation of the phase densities and therefore take part
in the pressure solve. For these components, a reference density and compressibility (c) are
required to calculate the component densities.
ref
exp c P Pref
Thermal data - all REVEAL calculations are thermal, so heat capacity and Joule Thomson
coefficients is required for all volumetric components. Non-volumetric components take no
part in the heat transport equations. Thermal conductivities are required for water, oil, gas
and surfactant components if the thermal conductivity option is selected (these components
refer to their respective phase conductivities). Joule Thomson coefficients may be entered to
reflect heating/cooling associated with changes in pressure.
Diffusion data - if diffusion is selected then the diffusivity of each trace component within
each phase is required.
Rock data
Thermal data for each rock type is required.
Additionally pore throat diameter multiplier and log STD are entered. These data are only
required for the solids transport model, where sand trapping depends on the pore throat
diameter distribution fro each rock type. By default the equivalent pore throat diameter (dp)
is set equal to:
dp
k/
where
kx 2
ky 2
2
1
2 spd p
0.5
ln( d / d p )
sp
February, 2011
User Guide
78
Over/underburden data
The overburden/underburden rock density and thermal properties are also entered here.
Heat flux from the underburden and to the overburden is calculated using a model by Vinsome
and Westerveld [Ref 10].
The over/underburden are assumed to be in equilibrium with the reservoir's initial temperature
distribution.
Dispersivity
The longitudinal and transverse dispersion lengths are entered here only for IMPES models
where dispersion is selected.
PVT specification
Generally oil, water and gas PVT correlations should be converted to tables before a
simulation is performed. This speeds calculations in two ways, firstly the table lookup is
faster than correlation calculations and secondly the derivative information derived from tables
is smoother. To convert a PVT to tables, it should first be matched and all correlations
checked. Then use the Calc Tables button to set temperature and pressure ranges, then
calculate the tables and save then to the tables. Finally, the Use Matching option should be
deselected and the Use Tables selected. The tables should be viewed before the Use
Tables option is available.
Note that if the tables are calculated, while the Use Tables options set, then the tables will
be used to generate the new tables and the resulting tables will not be representative of the
underlying correlation.
79
REVEAL
PVT tables are not extrapolated, therefore they should always be complete and cover a full
range of anticipated temperatures and pressures. If incomplete tabular data is available, the
data should first be matched to a correlation, then tables built from the matched correlation.
To convert isothermal tables to thermal, copy the isothermal tables to the match screen,
perform the match, then extrapolate the correlations to a range of temperatures using the
Calc Tables button.
The Egboga et al oil viscosity correlation is recommended for heavy oils, for example when
steam injection for a heavy oil is used.
PVT data may be exported or imported using the Petroleum Experts '.pvt' files. When a
matched PVT is imported, it should be rematched. Match data can be imported/Exported
using the Petroleum Experts PTB file.
Non-Newtonian fluid
Non-Newtonian data is entered within the PVT screens using the 'Visc Tables' button. The
viscosity of heavy oils may be dependent on shear rate and this can be modelled by entering
various rheological constants for the oil phase as a function of temperature and pressure. If
this model is present, then the oil viscosity calculated from the standard PVT calculator will
not be used.
For a non-Newtonian fluid, the shear stress () is related to shear rate () by an exponential
equation, where the rheological constants (0,k & n) are entered on this screen as functions of
temperature and pressure.
n
In contrast, a Newtonian fluid has the simplified form, where is the Newtonian viscosity.
Note that if 0=0 and n=1, then k is the viscosity. The internal units for shear stress are Pa,
shear rate s-1, therefore k has units of Pa.sn, and in the Newtonian limit k has units of Pa.s,
where 1 Pa.s = 1000 cp.
The effective (Newtonian) viscosity ( ) is obtained using the shear stress calculated for each
grid block, see the polymer and gel mobility section for more information about shear. The
block shear stress is obtained using the following equation.
P
8k kr
9 S
If a grid block contains an injection well, then the well shear stress may be modified to reflect
increased shear near the well. The well bore radius (rw) and Peaceman radius (r0) are used
to estimate the increased potential gradient and hence shear stress near the wellbore.
ln
r0
rw
The effective Newtonian viscosity to be used for oil mobility is calculated for an oil using the
formula below, which is derived by comparison with laminar flow pressure drop calculations in
tubing for non-Newtonian oils.
REVEAL Manual
February, 2011
User Guide
80
Note that when 0 is zero n is unity, it reduces to the Newtonian form where the viscosity is
equal to k.
A maximum cutoff viscosity is required (zero shear limit), since as the shear stress
approaches zero, the model predicts the apparent Newtonian viscosity approaches infinity.
The following is a rheological plot of oil viscosity and shear stress as a function of shear rate.
The plot of shear stress (left axis) against shear rate is given using the parameters shown.
The effective viscosity may then be calculated at any shear rate as the ratio of shear stress
divided by shear rate. The resulting effective viscosity is also plotted on this plot (right axis).
It can be seen that these parameters (n < 1) correspond to a shear thinning fluid.
Corrected gas-phase viscosity for foam - The assumption is made that any gas present
forms a homogenous bubbly mixture (foam) with the oil, modifying (increasing) the equivalent
Newtonian viscosity (reducing the shear stress) for the foam mixture. Additionally, the gas
phase viscosity is set equal to the oil phase (foam) viscosity to reduce the mobility of the gas
phase (bubbles within the oil phase).
1
0
1 n
where
1 n
and
81
REVEAL
At least one rock compressibility should be entered, generally at the reference pressure (see
control section).
If the compaction option is not selected, then one rock compressibility and reference pressure
is entered. The porosity is calculated using the one of the following equations depending on
whether pore volume (default) or rock compressibility is selected.
Pore volume compressibility:
Rock compressibility:
ref
ref
cr P Pref
cr P Pref
If the compaction model is active then a table of porosity and permeability multipliers should
REVEAL Manual
February, 2011
User Guide
82
The
Viscosity Corrections
1990-2011 Petroleum Experts Limited
83
REVEAL
Wax dropout - this model is optional and no data entry is required. A rapid increase in oil
viscosity at the wax drop-out temperature may be modelled. The oil phase viscosity is
multiplied by (1 + exp[Bwax*(Twax-T)/(1+|Twax-T|)]), where T is the oil temperature
measured in degrees F, and a recommended value for Bwax is 5.0.
Use water phase viscosity correlation (salinity dependence) - this option is only available
if the Salinity component is present (Polymer/Gel models) or water chemistry is present. If
this option is selected, then the water viscosity calculated from the PVT section will be
overwritten by correlations including the salinity variations within the reservoir. This option is
provided since the PVT table data is defined at a specific constant reservoir water salinity.
Salinity component or water chemistry is required to use this option. When using the water
chemistry, the salinity is the total dissolved solids (kg/kg), not including dissolved gas.
w
(T , S )
2.11
( P, T , S )
(T , S ) 3 * 10 9 P 2
4 * 10 5 P 1
Density Corrections
Use water phase standard condition density correlation (salinity dependence) - this
option is only available if the Salinity component is present (Polymer/Gel models) or water
chemistry is present. If this option is selected, then the standard condition water density
calculated from the PVT section will be overwritten by correlations including the salinity
variations within the reservoir. This option is provided since the PVT table data is defined at a
specific constant reservoir water salinity. Note that the temperature pressure dependence
(water FVF) is still applied from the PVT table data. When using the water chemistry, the
salinity is the total dissolved solids (kg/kg), not including dissolved gas.
If salinity (S) > 150000 ppm
w ( sc )
(S )
w ( sc )
(S )
REVEAL Manual
February, 2011
User Guide
1
w (CO2 )
C CO 2
78
1 C CO 2
84
Water
density (lb/ft3).
Interfacial tension
Interfacial tension is automatically calculated from Parachor correlations when it is required
for capillary desaturation.
Modify capillary pressure - Capillary desaturation is present as a relative permeability
option or automatically with the surfactant model. If these models are not present, the
interfacial tension may still be calculated for display output purposes by selecting this option.
Note that the J-Leverett function may be affected by these options.
Oil/Water IFT for use with J-Leverett - Apart from desaturation models, IFT is required for
the J-Leverett capillary pressure model. In this case the Parachor correlation value is chosen
by default, but this may be overwritten using the optional data entry value. In either case the
capillary pressure is calculated from the J-Leverett function using a single initial IFT value.
However, if the 'Modify capillary pressure' option is selected, then the IFT will be
dynamically modified as the simulation evolves, and affect the J-Leverett calculated capillary
pressures accordingly.
Miscibility/wettability
Wettability - only required if the wettability model is selected in the control section. This
parameter controls the desaturation (interpolation between high and low tension relative
permeability curves) as a function of adsorbed wetting agent.
The initial reservoir wettability is set in the initialisation section; where a value of 1 represents
high tension and -1 represents low tension. As the wetting agent is adsorbed from zero to its
maximum value, the wettability is increased from the initial value (at zero adsorbed wetting
agent) to the initial value plus twice the wettability change parameter entered on this page (at
maximum adsorbed wetting agent).
Therefore if the reservoir is initially high tension (wettability = 1) and a value of -1 is entered
for the wettability change parameter, when the adsorbed wetting agent reaches its maximum
value, the wettability will be 1+2*-1 = -1 (low tension). Similarly if the reservoir is initially low
tension (-1) and a wettability change parameter of 1 is used, the wettability at maximum
adsorbed wetting agent will be -1+2*1 = 1 (high tension).
Miscibility - only required if the miscibility model is selected in the control section. The
miscibility pressure is entered as a linear function of temperature. Pmisc = P1+P2*(T-Tref),
where T is the temperature and Tref is the reference temperature entered in the control
section. If the block pressure rises above the miscibility pressure, then the oil and gas phase
viscosities are modified by a quarter power mixing rule or the Todd Longstaff model [Ref 5] if
this option is selected.
1990-2011 Petroleum Experts Limited
85
REVEAL
A miscible hydrocarbon phase viscosity is calculated, where g is the non water blocked gas
fraction (gas fraction that is not water blocked).
h
1
4
(1 g )
1
4
Sg
So
Sg
S owb
The Todd and Longstaff model modifies the oleic and gas phase viscosities using a user
defined mixing parameter .
1
1
o
The oil and gas phase viscosities approach each other as the mixing parameter ( ) is
increased, with a value of 1 leading to the gas and oil phase viscosities being equal
(equivalent to the quarter power mixing rule).
See the relperm section for more information on the wettability and miscibility models.
Steam
Use steam tables for water phase FVF and viscosity - if the steam model is present, then
by default the steam tables are used for water phase FVF and viscosity and the PVT tables
for these properties are ignored. To use the PVT tables for these properties, deselect this
option.
REVEAL Manual
February, 2011
User Guide
86
Sw
Sro
S o krow krog
kr *ow (1 S w )(1 S g )
Sw Sm
1 Sr w
Srow
(1
Sr w Sr m
Sro Sr m
) Srog
kr *ow
So
krow
1 Sr w Sr ow
1 Sr ow
S o Sro
1 Sr w Sro Sr m
Sg
Sg
1 Srw
Sro
Srm
Sg
1 Sr w
Srog
Sr m
Stone II
87
kro
REVEAL
kr *ow
krow
kr *ow
krw
krog
kr *ow
kr g
krw
kr g
Linear
kro
S g krog
Sg
S w krow
Sw
Hysteresis - may be applied to the water, oil and gas phases, see residual saturations for
more information. Hysteresis is usually modelled when significant differences in relative
permeability and capillary pressure occur during drainage and imbibition.
Endpoint scaling - may be applied to water, oil and gas phases, see endpoint scaling for
more information. Endpoint scaling is an easy way to modify relative permeabilities on a
block by block basis without introducing a different rock type/relative permeability curves for
each block.
Desaturation and 4-phase behaviour
Capillary desaturation - This option is set for models where surfactant (capillary
desaturation) is present. The surfactant model is enabled in the control section. When the
capillary desaturation option is set, two relative permeability curves will be required for low
and high tension, with interpolation between the curves depending on the desaturation model.
Capillary desaturation may be set when the surfactant model is not present, in this case the
capillary desaturation will vary with the changing viscous forces and interfacial tension.
Capillary desaturation should be off when the wettability model is selected, since the
interpolation between high and low tension relative permeability curves will be dependent on
adsorbed concentration of wetting agent rather than by capillary desaturation.
Capillary desaturation model - This option specifies whether the desaturation is linearly
interpolated using Log10(Nc) between two endpoints, or whether a curve defined by Log10
(Nc) at which 50% desaturation (midpoint) is used.
Gas miscibility
This option is only available when the Todd and Longstaff miscibility option is selected in the
control section. When the oil and gas phases are miscible (pressure above miscible pressure
) the oil and gas relative permeabilities are modified using the Todd & Longstaff model [Ref 5]
to calculate weighted averages of the oil and gas phase relative permeabilities. The residual
interpolation scheme uses an interpolated (between oil and gas phases) value for
hydrocarbon phase residual saturation, while the simple model uses the oil and gas phase
residual saturations.
A residual saturation for the combined hydrocarbon phase is calculated, subject to water
blocking. The water blocked hydrocarbon residual saturation is a function of water saturation
and may be entered in tabular or parametric format on the capillary pressure screen.
REVEAL Manual
February, 2011
User Guide
88
krow S w
krw S w
Srow 1 a w
If capillary desaturation is present (see residual saturation page for definitions), then the
water blocked oil saturation is modified.
S owb
S 2o
The hydrocarbon phase residual saturation is then calculated using the gas fraction of nonblocked hydrocarbon phase (g).
g
Sg
So
Sg
Sr h
S owb
1 g Sr o
g Sr g
S owb
The model calculates the relative permeability of the entire miscible hydrocarbon phase, using
both the oil/water and the gas data.
krh
(1 g )krow
gkr g
Mobile phase saturations (Sm) are calculated for the hydrocarbon phase using either a simple
or interpolated (residual) model.
Simple model
Interpolated model
Sm ow
So
Sg
Sro
Sm ow
krow Sm ow
Sm g
So
Sg
S owb
Sr g
Sm g
So
So
Sg
Sg
Sr h
Sr h
relative
kr g Sm g
(1 g )krh
kr g
gkr h
89
REVEAL
Rock List
Use the Add Region and Delete button to add or remove selected critical saturation tables.
The Left Rock Coverage table lists all the critical saturations and associates them with rock
types. To associate a critical saturation with a rock type select the required critical
saturation, then select the required rock type from the Right table Rock Coverage list.
If directional relative permeabilities are present, then the residual saturations for each relative
permeability curve will be the same and only one set of critical saturations is required for each
rock type.
Automatic Coverage - use this button to automatically assign each rock type to its
corresponding relative permeability curve, where coverage for rock type 'n' is set to relative
permeability curve 'n'. This may be useful for imported datasets, where each relative
REVEAL Manual
February, 2011
User Guide
90
Srgc
S gm
Srgc
1 Srw
Srgm
Srgc
Srgc
Srgc
Srg
Srgm
If the gas saturation is within the range [Srgc,Sgm], then the gas phase relative permeability
is calculated by using a normalised gas saturation (Sg*) and the original gas relative
permeability curve.
Srg*
Srgc
S g*
Srgc
S gm
Sg
S gm
Srg
Sg
1 Srw
Srg
Srg*
Srg*
Srgc
1 Srw
Srgc
Oil hysteresis - oil phase hysteresis is controlled by altering the residual oil saturation for the
water/oil relative permeability curves. A similar interpolation scheme to the gas hysteresis
option is employed for both the low (if desaturation is present) and high tension oil residual
saturations. The high and low tension oil residual saturations are calculated first accounting
for hysteresis, then interpolated to account for desaturation.
The critical oil saturation (Sroc) is the saturation at which oil initially becomes mobile, while the
maximum residual oil saturation (Srom) is used to model oil hysteresis. The historical
maximum oil saturation (Som) is used to estimate the current oil residual (Sro) saturation.
The residual oil saturation will always be within the range defined by Sroc and Srom, so if
both values are identical no hysteresis will take place.
Sro
Sroc
S om Sroc
Srom
1 Srw Sroc
Sroc
Sroc
Sro
Srom
If the oil saturation is within the range [Sroc,Som], then the oil phase relative permeability is
calculated by using a normalised oil saturation (So*) and the original oil/water relative
permeability curve. For the oil/water relative permeability curve, the oil saturation used is that
with no gas present, So=1-Sw.
91
Sro*
So*
Sroc
Sroc
REVEAL
S om 1 S w
S om Sro
1 Sw
1 Srw
Sro
Sroc
Sro*
1 Srw
Sro*
Sroc
Water hysteresis - water phase hysteresis is controlled by altering the residual water
saturation for the water/oil relative permeability curves. A similar interpolation scheme to the
gas hysteresis option is employed for both the low (if desaturation is present) and high
tension water residual saturations. The high and low tension water residual saturations are
calculated first accounting for hysteresis, then interpolated to account for desaturation.
The critical water saturation (Srwc) is the saturation at which water initially becomes mobile,
while the maximum residual water saturation (Srwm) is used to model water hysteresis. The
historical maximum water saturation (Swm) is used to estimate the current water residual
(Srw) saturation. The residual water saturation will always be within the range defined by
Srwc and Srwm, so if both values are identical no hysteresis will take place.
Srw
Srwc
S wm Srwc
Srwm
1 Srwc
Srwc
Srwc
Srw
Srwm
If the water saturation is within the range [Srwc,Swm], then the water phase relative
permeability is calculated by using a normalised water saturation (Sw*) and the original water
relative permeability curve.
Srw*
Srwc
S wm
S wm
Sw
Srw
Srw
S w*
Srwc
S w Srw*
1 Srwc
1 Srw*
Srwc
The following plot demonstrates the hysteresis in relative permeability, for saturations below a
historical maximum (Smax).
REVEAL Manual
February, 2011
User Guide
92
Desaturation Parameters
Desaturation - if a surfactant model is present, then desaturation parameters are required to
control the interpolation between high and low tension values.
If the desaturation model is set to Nc Endpoints, then the interpolation is a function of the
capillary number (Nc) and defined for each relative permeability curve by two parameters
each (Capillary number at low (Ncl) and high (Nch) tension).
Sr = Srl * (1-alpha) + Srh * alpha
alpha = [Log10(Nc) - Log10(Ncl)] / [Log10(Nch) - Log10(Ncl)]
Srl<Sr<Srh, where Srl and Srh are the low and high tension residual saturations.
If the desaturation model is set to Nc Midpoint, then the interpolation is a function of the
capillary number (Nc) and defined for each relative permeability curve by a single parameter
(Nc1/2) defining the Nc at which 50% desaturation occurs.
Sr = Srl * (1-alpha) + Srh * alpha
alpha = 1.0/(1.0+Nc/Nc1/2)
1990-2011 Petroleum Experts Limited
93
REVEAL
Srl<Sr<Srh, where Srl and Srh are the low and high tension residual saturations.
Note that with both models, the Nc values are entered as Log10(Nc).
Wettability - if the wettability model is present, then the interpolation between high and low
tension residual saturations is calculated as a function of the wettability. The wettability is
initialised in the initialisation section and changes as the wetting agent is adsorbed. A
wettability of -1 corresponds to low tension, while a wettability of 1 represents high tension,
with linear interpolation for intermediate values of wettability. The change to the wettability as
wetting agent is adsorbed is controlled by the wettability change parameter defined in the
physical section.
2.3.6.3 Relative permeability
Relperm List
Relative permeability curves must be entered for each region defined in the previous residual
REVEAL Manual
February, 2011
User Guide
94
saturation page. Select add or delete to create or delete relative permeability curves for
each region, and select entries in the relative permeability list to modify the data entered.
Directional relperms - relative permeability curves must be defined for each direction if
directional relative permeabilities have been defined. However, directions with the same
curves may be grouped to prevent excessive repetitive data entry.
Tabular & parametric - for each relative permeability curve, either tabular or parametric
entry may be used. The water/oil curves are for two phase water and oil, while the gas/oil
curves are for two phase oil/gas in the presence of connate water. Therefore, for the gas/oil
curves, the gas saturation range should be from Sgc to 1-Srw, and the corresponding oil
saturation range should be from Srog to 1-Srw.
Copy and paste may be used to enter or edit relative permeability tables. Use the Validate
button to check coverage and the Plot button to view the relative permeability curves entered.
Relative permeabilities
The parametric relative permeabilities take the following form for high and low tension curves,
where the end points (kr*) and exponents (n) are input.
The numerators represent the mobile phase fraction, while the denominators represent the
1990-2011 Petroleum Experts Limited
95
REVEAL
0.7
Relative permeability
0.6
0.5
high tension
0.4
low tension
interpolated
0.3
interpolated residual saturation
0.2
0.1
0
0
0.2
0.4
0.6
0.8
Saturation
REVEAL Manual
February, 2011
User Guide
96
97
Pco
REVEAL
J
6.84945
where
is the water/oil interfacial tension (IFT dyne/cm), is the block porosity and k is
either the horizontal '(KX+KY)/2' or vertical 'KZ' permeability (Darcy).
The IFT may either be constant of vary with prevailing conditions according to a Parachor
correlation. Alternatively it may be constant (defined by the Parachor correlation at the initial
reference conditions or user specified). See the physical section to see how to set these
options.
Gas/oil capillary pressure Pcg = Pg - Po
At zero gas saturation the gas/oil capillary pressure is zero, and should rise monotonically to a
maximum value at a gas saturation of 1-Srw.
Gas/water capillary pressure Pcwg = Pg - Pw = Pcg + Pco
For a water-gas system, the water/gas capillary pressure curve is conventionally defined in
the oil/water table and the oil/gas table set to zero capillary pressure.
The rock coverage of the capillary pressure tables is the same as that entered for the critical
saturations.
If residual water or gas saturations are entered in the initialisation section, then these will be
used as the endpoints for the capillary pressure curves.
Water blocking
If the miscibility option is active then a hydrocarbon phase water-blocked residual saturation
(the residual saturation of the water blocked hydrocarbon phase) is required. This is a
function of water saturation and may be constant, tabular or have a parametric form,
parameterised by a wetting parameter. See the relperm options page for the equation of the
parametric form.
2.3.6.5 Endpoint scaling
Endpoint scaling is optional, and is only available if the option is selected on the relperm
options page.
REVEAL Manual
February, 2011
User Guide
98
Each relative permeability table has nominal endpoints defined as follows. Generally this data
is imported.
1] minimum saturation is the smallest saturation entered in the tables
2] critical saturation is defined as the maximum saturation for which the relative permeability is
zero
3] maximum critical saturation is the saturation at the nominal endpoint (where all other
phases are at critical saturation)
4] maximum saturation is the maximum saturation entered in the table
If endpoint scaling is applied, then relative permeability and capillary pressure tables will be
re-scaled between the entered critical (e.g. Swc) and maximum saturation entered in the table
(e.g. 1) endpoints. Endpoints are defined over the entire grid.
If the 3-point endpoint scaling option is chosen then a method similar to SCALECRS in
ECLIPSE is used, where the input relative permeability curves are scaled to 3 points, critical
saturation (e.g. Swc), 3phase maximum saturation (e.g. 1-Sowc) and maximum saturation (e.
1990-2011 Petroleum Experts Limited
99
REVEAL
g. 1).
Water scaled saturations - data for the minimum (SWL), critical (SWCR) and maximum (1SOWCR) water saturations may be entered.
Oil scaled saturations - data for the critical water saturations for oil/water (SOWCR) and
oil/gas (SOGCR) may be entered.
Gas scaled saturations - data for the minimum (SGL) , critical (SGCR) and maximum gas
(SGU) saturations may be entered.
Scaled endpoints - the maximum endpoint relative permeability may be re-scaled for the
water, oil and gas phases. This may be applied at the maximum saturations (KRW, KRO and
KRG), and also at the 3-point maximum saturations (KRWR, KRORW, KRORG and KRGR).
Capillary pressure saturations - the minimum water (SWLPC) and gas (SGLPC)
saturations to be used for capillary pressure calculations.
REVEAL Manual
February, 2011
User Guide
100
Region list
Several aquifers may be connected to the grid. Use the Add button to add an aquifer to the
list and select an entry in the list to alter its properties. An aquifer may be deleted by
selecting it in the region list and then selecting the Delete button.
Boundary and connection area
For each aquifer the boundary region of the grid connected to the aquifer must be defined.
Select the aquifer (grid) boundary (X-,X+,Y-,Y+,Z-,Z+) that the aquifer is connected to and
enter the 3D range of blocks, the All button may be used to select an entire surface of the
grid. Note that an aquifer will be connected to the first active block looking into the grid in the
defined direction as long as the block is within the 3D volume of blocks defined.
Multiple connection regions may be defined by using the Add and Delete buttons.
For illustration purpose, let imagine a 2-D grid, i.e. x=1NX, y=1NY, z=1. The Aquifer
1990-2011 Petroleum Experts Limited
101
REVEAL
y axis
z axis
y=
y=3
y=2
y=1
x axis
x=1 x=2 x=3 x=
REVEAL Manual
February, 2011
User Guide
102
y axis
z axis
y=
y=3
y=2
y=1
x axis
x=1 x=2 x=3 x=
General properties
Five aquifer models (linear and radial with either finite or infinite acting and user defined) are
available (See Carter Tracy for more information). The first four models are solutions to the
constant terminate rate diffusivity equation with different geometries and boundary conditions.
For the fifth model, the user is required to enter their dimensionless time/pressure response
for the aquifer. For all five models, some physical properties for the aquifer are required;
porosity, permeability and compressibility.
Geometry
Depending on the aquifer model chosen, the physical extent of the aquifer is entered. The
contact area is defined by the aquifer thickness (height) and encroachment angle, and either
the aquifer width (linear) or inner radius (radial). The volume of the aquifer for the finite acting
models are defined by the length (linear) and outer radius (radial).
Component concentrations
The concentration of components in the aquifer are entered. This will usually be 1 lb/lb for
water and zero for other components.
2.3.7.2 Carter Tracy model
The inflow to each grid block (IJK) connected to an aquifer is defined.
Qaq
ijk
ijk
( Aaq
Baq ( P ijk (t n 1 )
P ijk (t n )))
where aIJK is the fractional area of grid block IJK connected to the aquifer
ijk
A ijk
A ijk
Aaq and Baq are aquifer constants calculated for the aquifer model defined by the user, and
are functions of the aquifer influence function (t) and the cumulative influx W(t).
1990-2011 Petroleum Experts Limited
103
REVEAL
C aq
Baq
n 1
n 1
t
n
Aaq
W
C aq
( Pn
t
t
n 1
) Baq
where a dimensionless time t' and an aquifer constant Caq are defined.
encroachment angles.
Finite linear aquifer
k aq t
aq c aq Laq
aq
C aq
f aq
aq
k aq t
aq
H aq Laq Waq c aq
C aq
f aq
aq
Radial aquifer
k aq t
aq c aq
aq
H aq Waq c aq
C aq
aq
c aq Ri aq
2 f aq
2
2
aq
H aq Ri aq c aq
The aquifer influence functions are calculated as solutions to a constant terminal rate diffusion
equation.
2
The aquifer influence function has unit gradient at the inner boundary and zero initial value. A
zero gradient boundary condition is used for a finite aquifer at the outer boundary, or a zero
solution boundary condition for an infinite aquifer. Approximate solutions to the influence
function are obtained at the inner boundary and described below. The radial solutions are due
to Hurst and van Everdingen [Ref 1].
Infinite linear aquifer
t
1
3
0.20354 e
for
0.15
for
0.15
for
0.01
for
0.01 t
for
0.80907 ln t
2
b
a
a2
1000
1000
3.15
REVEAL Manual
February, 2011
User Guide
b 1.15 a 1
c
s
104
a
5
0.112 b
ln t
2 t tc
Ro aq
Ri aq
tc
0.33
Ro aq
Ri aq
for
tc
for
tc
1.93
105
REVEAL
This screen initialises the polymer and gel model and sets the shear thinning parameters.
Polymer/gel viscosity Model
Three models are available for viscosity resulting from polymer and gel components (original,
Carreau and Kuparuk). These models calculate a thickening factor (TF) for the aqueous and
micro-emulsion (if surfactant is present) phases, subject to shear thinning near wells. The
thickening factor is multiplied by the pure phase viscosity to obtain the modified phase
viscosity.
Details of the original and Kuparuk models (for polymer and gel) are given on subsequent
pages of the mobility section, when additional data input is required.
The Carreau model only applies to polymer (not available if gel is present) and requires no
additional data. It is a correlation derived from a xanthan polymer that includes shear thinning
implicitly.
REVEAL Manual
February, 2011
User Guide
106
9
k S w krw
8
The average permeability in the direction of flow is defined. This permeability includes any
permeability reduction present.
1
k
qx w
qw
qy w
qw
1
kx
1
ky
qz w
qw
1
kz
If a grid block contains an injection well, then the well shear rate may be modified to reflect
increased shear near the well. The default is for this model to be inactive, (see the well
section to activate the well shear model). The well bore radius (rw) and Peaceman radius
(r0) are used to estimate the increased Darcy velocity near the well-bore.
ln
r0
rw
Once the shear rate (or shear stress) is calculated, it may be used to modify the effective
viscosity by modifying a thickening factor (TF).
Viscosity calculation
The zero shear thickening factor (TF0) is modified by the shear rate, using the user input
parameters gamma ( h), alpha (n) and thickening parameter (s). The shear thickening
parameter is optional and will only have effect if it is greater than 1.
Shear thinning
TF
s FT 0 1
n 1
1
h
107
REVEAL
g1c g
1 c se p1c p
g 2cg
p2 c p
g3 g4
REVEAL Manual
cg
p3 c p exp p 4
exp g 5
1
T
1
T
1
Tref
1
Tref
February, 2011
User Guide
108
max c s *, c s
1 d cd
109
REVEAL
n 1
2
a4
T
a6
exp
REVEAL Manual
a7 c p
a8
a11
February, 2011
User Guide
110
exp
a9 c p
T
a10
a6
111
REVEAL
Note that all of the concentrations are mass fractions (e.g. kg/kg).
Model interpolation temperatures
The Kuparuk model basically interpolates the correlation between high (T[h]) and low (T[l])
temperature limits.
Polymer & gel viscosity parameters
The input parameters for both polymer and gel are identical.
For the polymer the parameters are p1[h], p1[l], p2[h] and p2[l].
For the gel the parameters are g1[h], g1[l], g2[h] and g2[l].
TF 0
p1
cp
REVEAL Manual
p2
cp
g1 g
g2
cg
February, 2011
User Guide
p1
fp1[l ] (1
f ) p1[h]
g1
fg1[l ] (1
f ) g1[h]
p2
g1
fg1[l ] (1
fp2[l ] (1
112
f ) p 2[h]
f ) g1[h]
T [ h] T
T [h] T [l ]
Three models are available, depending on the components present. Note that in all of the
models the temperatures may be input in any allowed units, but the correlations are
expressed with absolute (R) temperatures. The concentrations are all mass fractions (kg/kg)
within the water phase.
113
REVEAL
When a reference temperature (Tref) is used, this temperature is the reference temperature
defined in the control section.
Polymer gelation and de-chelation
2 component model - this model applies when only polymer and gel are present. The
required data are rate coefficient (Rk), temperature coefficient (Bk), temperature threshold
(Tr) and polymer volumetric concentration threshold (Pc0).
If the temperature is greater than Tr and the polymer concentration is greater than Pc0 then a
reaction between polymer and gel occurs with mass reaction rates per unit volume of water
for polymer (Rp) and gel (Rg).
Rp
Rk c p exp Bk
1
T
1
Tref
Rg
Rk c p exp Bk
1
T
1
Tref
Rp
Rk P0 c p c xl exp Bk
R xi
Rk XL 0 c p c xl exp Bk
Rg
Rk P0
1
Tref
1
T
XL 0 c p c xl exp Bk
1
Tref
1
T
1
Tref
REVEAL Manual
February, 2011
User Guide
114
1
T
1
Tref
R xl
1
T
1
Tref
The 3 component reaction then occurs as described above, except that the cross-linker
reaction rate is the sum of the two reactions involving cross-linker.
An option to allow dechelation below the temperature (Tr1) threshold is provided.
Polymer and gel degradation
Both polymer and gel may degrade at rates defined by rate (Rp0 and Rg0) and temperature
coefficients (Bp0 and Bg0), reducing the reaction rates for these components.
Rp
Rp
R p 0 c p exp B p 0
1
T
1
Tref
Rg
Rg
R g 0 c g exp B g 0
1
T
1
Tref
115
REVEAL
REVEAL Manual
February, 2011
User Guide
116
g 0 CRFK min 1,
cf
c fT
ES
max 0,1
So
SoT
EO
117
REVEAL
i.e. hydrocarbon gas plus steam) will be affected by the aqueous (water) phase foamer
concentration. In addition, for a steam injector the foamer will be injected with the steam and
water components at the user specified injection concentration.
Diluent Viscosity model
The oil phase mobility only is altered by the concentration of the 'diluent' tracer.
The diluent viscosity is calculated from the pressure, temperature and reference conditions
entered.
d
1 A( P
dref
Pref ) exp B
1
T
1
Tref
F+459.67.
The apparent modified oil viscosity is then modified by a linear weighting according to the
diluent mass concentration fraction.
mod
Cd
(1 C d )
If the logarithmic dependence flag is set then the apparent oil viscosity is calculated using a
logarithmic weighting.
Log
mod
o
C d Log
(1 C d ) Log
If this viscosity correction is also required within the tubing, then the 'Use Polymer/Gel
Viscosity' option should be selected in the wells section.
2.3.8.8 Sodium Silicate
The required components in the Polymer/Gel model are Gel, Silicate and SilicateTracker.
Water chemistry components and solids can also be added using the Water Chemistry
model. The water chemistry components are required to model pH.
The sodium silicate will activate at reduced pH, and once activated, and after a time to
gelation (tg), the conversion of the silicate component to Gel will occur. Once converted, the
Gel component takes care of reduced mobility by either increased viscosity for the gel or
adsorption and permeability reduction to all phases.
The Silicate component is the injected Sodium Silicate, and the SilicateTracker component is
a special required component described below. This component initial concentration or
injection is not specified by the user.
Once the required components are present, the silicate model wizard page is available.
REVEAL Manual
February, 2011
User Guide
118
Ac s H
exp c NaCl
1/ 2
exp
Ea
RT
119
REVEAL
The fraction of the gelation process is characterised by the SilicateTracker component (f).
Once its value reaches unity (106 ppm), then the Silicate component may be converted to
Gel component.
Each timestep f is updated using timestep ( T) and gelation time (tg) by:
f = f + T/tg (1)
Then, as well as the Silicate concentration (cs) being tracked, an additional pseudo variable
(X) is also tracked. The pseudo variable is:
X = f.cs
(2)
(3)
February, 2011
User Guide
120
may be active, or simply a mobility control agent. Adsorbed material is assumed to play no
part in the phase behaviour calculation.
Surfactant flood systems are described in many books on Petroleum Engineering; only an
outline of the theory is given below.
The phase calculations determine first the phases that are present in a given system, and
from there determine those phase properties. The steps that are taken are:
1. Formation of pseudo-components - the components present are formed into three
pseudo-components - aqueous/brine, oleic, and chemical. These then become the
coordinates on a ternary diagram. All the water is placed in the aqueous pseudo-component,
the oil in the oleic, and the surfactant in the chemical. Tracers, anions, and gels are placed in
the aqueous pseudo-component. Alcohols and, optionally, polymers, are partitioned amongst
all three pseudo-components as described in Alcohol and Polymer partitioning.
2. Creation of a ternary diagram - a ternary diagram is constructed to determine the phase
behaviour of a system given a set of pseudo-component concentrations and a calculated
effective salinity. A more complete discussion of effective salinity and phase behaviour is
given in surfactant phase model. In brief, there are 4 possible systems (note the comment
below about gas):
a. Two phase oil/water (low/zero surfactant concentration)
b. Two phase oleic/micro-emulsion (Type II(-) system) (low effective salinity)
c. Two phase aqueous/micro-emulsion (Type II(+) system) (high effective salinity)
d. Three phase aqueous/micro-emulsion/oleic (Type III system) (intermediate effective
salinities)
The phase behaviour calculation is performed assuming all components throughout a gridblock
are thoroughly mixed and in equilibrium. This assumption is retained when gas is present,
even if the gas and oil are potentially immiscible; if the phase behaviour calculation results in
an excess oil phase being formed (i.e. the upper phase in type II(-), type III, or no surfactant
cases), then this phase is tested for immiscibility and split into separate oil and gas phases if
appropriate. Micro-emulsion phases containing both gas and oil (upper phase in type II(+)
cases, middle phase in type III cases, or single phase cases) are always assumed to form a
single miscible phase, regardless of whether the oil and gas are miscible. If the Todd and
Longstaff model [Ref 5] is used, it is applied to all miscible upper phases (but not to middle
phase or single phase micro-emulsions). The following table summarises the number and
type of phases present, and those phases to which the Todd and Longstaff model is applied.
Phase
behaviour
P>Pb
Single phase
No surfactant
P<Pb
Micro-emulsion Oil
Gas
Micro-emulsion Oil
Water
Type III
Type II(-)
Type II(+)
Oil*
Oil*
MicroMicro-emulsion Micro-emulsion emulsion*
Water
Water
Oil
Oil
MicroGas
Gas
emulsion*
1990-2011 Petroleum Experts Limited
121
REVEAL
Water
Description
Micro-emulsion phase only
Water, oil/gas phases present - no surfactant
Water, oil/gas and micro-emulsion phases
present (type III system) - intermediate salinity
Oil/gas and micro-emulsion phases present
(type II(-) system) - low salinity
Water and micro-emulsion phases present
(type II(+) system) - high salinity
3. Calculation of interfacial tension - the interfacial tension between emulsion and aqueous
phases, and/or emulsion and oleic phases, is calculated using a correlation. See the interfacial
tension section for more information.
4. Calculation of viscosity - the viscosity of the emulsion phase is calculated using a
correlation. See viscosity for more information.
2.3.9.2 Alcohol/Polymer partitioning
See also: Introduction
This screen contains the data for partitioning alcohol and polymer components among the
three pseudo-components. Press Plot to obtain a plot of the partitioning based on the data
that you have entered.
REVEAL Manual
February, 2011
User Guide
122
123
REVEAL
C ax
Vox
Voo
C ox
C cx
Vcx
Vcs
Vp
p
Volume identities
cc
vp
p
Vx
V
Vp
V
C ax c w
C ox c o
C cx c s
C ap c w
C cp c s
C ap c w
K pcs
Alcohol partitioning
Alcohols are partitioned amongst all three pseudo-components, according to one of two
partitioning models. Data for one or two alcohols is required, depending on the number of
alcohol components in the model.
1. Hirasaki model - this is the default alcohol partitioning model. The alcohols are partitioned
between the pseudo-components with partition coefficients that are constant (at a given
temperature).
Partitioning constants relating partitioning of the alcohol components between the three
pseudo components are defined. The left column of data input correspond to the aqueous/
oleic partitioning and the right column corresponds to the aqueous/chemical pseudocomponent partitioning. K are the Alc coefficients and are the Alc Temp Dep variables.
K ox
C ox
C ax
K cx
C cx
C ax
K ox ref
x
o
Tref
K cx
K cx ref
x
c
Tref
2. Prouvost model [Refs 15 and 16] - this alternative partitioning model, due to Prouvost,
allows for self-association of alcohols in the oleic pseudo-component and treats the chemical
pseudo-component as an interfacial pseudo-component. The alcohol partition coefficients are
calculated from more fundamental coefficients in each grid block at each time step, according
to the overall composition in the grid block. No provision is made for these coefficients to be
temperature dependent.
REVEAL Manual
February, 2011
User Guide
124
For each alcohol, the model requires the input parameters: oil/water partition (ko(1)),
chemical/water partition (ko(2)), oil/chemical partition (kc), equilibrium constant (k) and
partition parameter (a).
Salinity-dependent oil/water partition coefficient
k ox
k ox (1)
where
k ox ( 2 )
cn
cw
cn
cw
C ax
1 C ax
C ox
1 C ox
C ax
1 C ax
Vax
V
Vax
w
a
ko is the ratio of the volume fraction of alcohol in the aqueous pseudo-component to the
volume fraction of monomeric alcohol in the oleic pseudo-component.
Oil/surfactant partition coefficient
C cx
a C cx
x
k cx
C ox
1 C ox
kc is the ratio of the surface fraction of the alcohol in the chemical pseudo-component to the
volume fraction of monomeric alcohol in the oleic pseudo-component.
a is the ratio of the length of an alcohol molecule to the length of a surfactant molecule.
i-meric alcohol concentration
C ox ,i
kx
C ox ,1C ox ,i
1 C ox
x ,i
where C o is the ratio of the volume of i-meric alcohol in the oleic pseudo-component to the
total volume of that pseudo-component.
k is a self-association equilibrium constant.
These equations, together with the equation for the overall material balance of the alcohol,
can be rearranged to express all quantities in terms of Co resulting in a cubic equation for Co.
Thus the solution can be found analytically.
When a second alcohol is present, similar input parameters are required for the second
alcohol, and analogous equations apply. Simultaneous solution of both sets of equations then
requires an iterative method. A quasi-Newton method is used; the user may set the
convergence criterion (Alcohol threshold), and a limit on the number of iterations, which if
exceeded produces an error message.
Polymer partitioning
When the polymer is active in the phase behaviour, it is partitioned between the aqueous and
chemical pseudo-components according to a partition coefficient Kp, which may vary linearly
1990-2011 Petroleum Experts Limited
125
REVEAL
with temperature.
Kp
K p ref
T Tref
C cp
C ap
If a polymer is present but not active (i.e. it is simply a mobility control agent), polymer
partitioning may be switched on, in which case the polymer is put in the aqueous pseudocomponent, so that it partitions between phases in proportion to the amount of water in each
phase. Alternatively, the polymer partitioning may be switched off, in which case the polymer
is placed entirely in the aqueous phase at the end of the phase behaviour calculation, and thus
is prevented from partitioning into any middle or upper phase that forms.
REVEAL Manual
February, 2011
User Guide
126
Press Plot to view a plot of the data. You can choose between a plot of effective salinity
(against salinity) or a full ternary phase diagram.
Pseudo-component concentrations - since only water, oil, gas, surfactant and alcohols are
allowed to be volumetric in surfactant flood simulations, the volumetric concentrations (volume
fractions) of the pseudo-components are given by (see Polymer/Alcohol partitioning for
definitions):
va
c w 1 C ax
C ax
vo
c o 1 C ox
C ox
vc
c s 1 C cx
C cx
cg
These volumetric concentrations (which should sum to one) are used as the coordinates in the
ternary diagram calculations.
3-Phase boundary - ternary phase diagrams
The particular ternary diagram used is selected according to the effective salinity CSE (see
introduction) and changes from type II(-) at low effective salinity, through type III at
intermediate effective salinity, to type II(+) at high effective salinity. In each case, the vertices
of the diagram represent pure pseudo-components (aqueous, oleic, chemical); the number of
phases present, and their compositions (in terms of pseudo-components), can be determined
from the overall pseudo-component concentrations (vcp) by looking at the appropriate point
(known as the overall composition point) on the diagram.
Lower, Upper & Optimal bound
The effective salinity threshold for each phase behaviour type is entered by the user: a lower
limit (CSEL), an upper limit (CSEU) and an optimal (CSEOP) effective salinity define the
boundaries of the 3-phase region.
Specifically, when CSE < CSEL, the phase environment is said to be type II(-), and a type II
(-) ternary diagram is used. If the overall composition lies above the binodal curve (see
below), then all components are solubilised into a single micro-emulsion phase. If the overall
composition lies below the binodal curve, two phases will be formed, an aqueous microemulsion phase in equilibrium with an excess oil phase.
127
REVEAL
When CSEL < CSE < CSEU, the phase environment is type III, and a type III diagram is
used. This differs from the type II(-) diagram in that the region below the binodal curve is split
into three parts by the three phase triangle. If the overall composition point lies in this
triangle, three phases are formed whose compositions are given by the vertices of the
triangle: a middle phase micro-emulsion in equilibrium with excess oil and water phases. If
the overall composition point lies in the lobes between the binodal curve and the three phase
triangle, two phases will be formed similar to those in type II(-) (right hand lobe) or type II(+)
(left hand lobe) cases. In the specific case where CSE = CSEOP (where CSEL CSEOP
CSEU). The micro-emulsion phase will contain equal volumes of oleic and aqueous pseudocomponents, i.e. the vertex of the three phase triangle will lie exactly halfway along the base
of the ternary diagram.
REVEAL Manual
February, 2011
User Guide
128
When CSE > CSEU, the phase environment is type II(+), and a type II(+) diagram is used.
This is similar to the type II(-) diagram, except that in two phase cases, the phases are an
oleic micro-emulsion and an excess aqueous phase.
129
REVEAL
In the type III case, the location of the apex of the three phase triangle, referred to as the
middle or invariant point, is assumed to move across the diagram from left to right as the
effective salinity increases from CSEL to CSEU. Thus the shape of the diagram changes
continuously as the effective salinity increases, and there are no discontinuities in phase
composition at CSEL or CSEU.
3-Phase Deselection
If the 3-Phase option is de-selected, then only one effective salinity is defined and the upper,
lower and optimal salinities are set to be equal. This is not generally recommended.
Chem threshold
If the total amount of surfactant present in solution is less than a threshold value (Chem
threshold) entered in the three-phase boundary section of this screen, two phases only are
assumed to be present, one containing only the oleic pseudo-component, the other the
aqueous and chemical pseudo-components.
Binodal Parameters
REVEAL Manual
February, 2011
User Guide
130
In each ternary diagram, only a single phase will be present if the overall composition lies
above the binodal curve, which is assumed to be symmetric and to be given by the Hand
equation:
v c2
Av a vo
The Hand parameter A is related to the "height" of the curve, i.e. the maximum chemical
concentration. At maximum chemical concentration, the hand parameter may be calculated
since vc,max+va+vo=1 and va=vo at the maximum chemical composition.
v c2,max
Av a
1 v c ,max
2
, therefore
2vc ,max
1 vc ,max
It is found by linear interpolation in the effective salinity from values calculated at zero,
optimal, and twice optimal effective salinity (denoted by subscripts j = 0, 1, 2 respectively):
C SE
A
C SEOP
A0
A1
C SE
C SE
C SEOP
A0
A1
C SEOP
A2
A1
C SE C SEOP
C SEOP
where the values Aj are found from the binodal curve heights at the three effective salinities:
2vc , j max
Aj
1 vc , j max
H BNC , j
H BNX 1, j f cx
H BNX 2, j f cx
H BNP , j f c p
H BNT , j T
Tref
H BNE , j E
E ref
The H parameters are entered in the Binodal parameters section of this screen for zero,
optimal and twice optimal salinity, for a base value (HBNC), both alcohols (HBNX1 and
HBNX2), temperature (HBNT), polymer (HBNP) and equivalent alkane number (HBNE).
Three phase triangle - in the type III case, three phases exist if the overall composition point
lies in the three phase triangle below the binodal curve. The compositions of the three phases
are given by the vertices of the triangle, i.e. pure aqueous pseudo-component, pure oleic
pseudo-component, and a middle phase containing all components, generally with a high
chemical concentration but also with significant amounts of both oil and water, implying high
solubilisation parameters (ratios of oil or water to surfactant). The position of the invariant or
middle point (i.e. the apex of the triangle) is assumed to move across the diagram from left to
right as the effective salinity increases from CSEL to CSEU; to be precise, the value of the
expression
1
2
va
vo
2
131
REVEAL
appropriate plait point. This is the point on the binodal curve on which the pseudo-component
compositions of emulsion and excess phase (aqueous or oleic) are identical - it is essentially a
critical point. Two plait points are entered by the user in terms of a pseudo-oil concentration a left hand plait point and a right hand plait point. In the case where the plait points are in the
corners of the ternary diagram (0.0 and 1.0), the excess phases will consist of entirely the oil
or water pseudo-component.
In the type II(-) and type II(+) cases, the following Hand relation, known as the distribution
function, relates the (pseudo-component) compositions of the two phases:
C os C aw
EC as C oo
The Hand parameter E can be determined from the position of the plait point, the point on the
binodal curve to which the tielines converge. At the plait point, both phases have the same
composition (that of the plait point), and this composition lies on the binodal curve, so:
o
CP a
1 CP o
1
2
AC P o
o 2
AC P o
4 ACp
o
o
1 CP o
CP o
CP o
o
where C P o is the pseudo-oil concentration at the plait point. In type II(-) diagrams, C P o C PR o .
o
o
Similarly, in type II(+) diagrams, C P o C PL o . The plait points are input in the binodal
parameters section of the screen.
For the two phase lobes of a type III diagram, the distribution function is modified to reflect
the fact that the base of the lobe is a side of the three phase triangle rather than the base of
the ternary diagram, becoming:
Co s Caw
E Cas Coo
C ao
C ao
Cas
C as
Caw
1 C ao
C mc
C mo
C ao C mc
C mo
Cas
CP a
CP o
where C mk is the composition of the invariant point. Similar formulae apply for the type II(-)
lobe. The position of the plait points is taken to vary linearly with effective salinity between
the type II(-) and type II(+) values, so the pseudo-oil concentration of the plait point in the II
(+) lobe is given by:
o
CP o
o
CP o
C SE C SEL
1
o
C PL o
2
C SEOP C SEL
C SE C SEOP
1
o
C PL o 1
2
C SEU C SEOP
for
C SE
for C SE
and that in the II(-) lobe by:
REVEAL Manual
C SEOP
C SEOP
February, 2011
User Guide
C PR o
C PR o
CP o
C SE C SEL
1
o
1 C PR o
2
C SEOP C SEL
CP o
for
C SE
132
C SEOP
C SE C SEOP
1
o
1 C PR o 1
2
C SEU C SEOP
for C SE C SEOP
In addition to satisfying the distribution function equation, the compositions of the two phases
must satisfy the binodal curve equation:
C as
s2
AC aw C ao
and C o AC o C o
and the relations:
w
o
s
C aw C ao C as 1
and C o C o C o 1
o
o
C aw S a C ow S o v a
and C a S a C o S o vo and S a S o 1
w
o
s
w
o
s
which gives a total of 8 equations for the eight unknowns C a , C a , C a , C o , C o , Co , S a and S o .
In the general case, these equations are solved for the pseudo-oil concentration in the microemulsion phase by an interval-halving iteration. In the special case where the plait point lies in
the corner of the phase diagram, the composition of the excess phase is known (it is the pure
pseudo-component), while the mico-emulsion phase has the same ratio of chemical pseudocomponent to oleic (type II(+)) or aqueous (type II(-)) pseudo-component as the overall
composition point; the equations can then be solved explicitly, and no iteration is necessary.
Effective salinity
The effective salinity is defined by:
C SE
cn
1
cw
x 1
f cx
x 2
f cx
f cp
Tref
E ref
Where cn/cw is salinity and fc are volume fractions of components in the chemical pseudocomponent. The coefficients are user supplied and entered in the effective salinities table
for alcohol-1, alcohol-2, temperature, polymer and EACN. Tref is the reference temperature
defined in the control section.
f cx
f cp
C cx
1 C cx
C cp
C cx
K p C ap
K pc p
c
K pcs
w
Also, T is the temperature, and E the EACN of the combined oil and gas present, given by an
average weighted by the number of moles of each.
E
cg
Eg
Mg
cg
Mg
co
Eo
Mo
co
Mo
where Eg and Eo are the EACNs, and Mo and Mg the molecular weights, of the oil and gas
respectively. These parameters and Eref are entered in the EACN section on this screen.
EACN and molecular weights
See the parameter required for the effective salinity calculation.
A ternary diagram generated with the data entered on this screen can be viewed by clicking
1990-2011 Petroleum Experts Limited
133
REVEAL
REVEAL Manual
February, 2011
User Guide
134
This screen can be used to view the data on the phase behaviour screen graphically.
Properties such as alcohol and polymer concentration, as well as component concentrations
of water and oil (for example) can be varied to see how the various phases develop with
these properties. The screen itself is divided into several sections:
Input parameters
Component Concentrations - these sliders can be used to set the relative concentrations of
oil, water, and surfactant to determine in turn the pseudo-component concentrations. The
values are normalised automatically - if you want to fix a value while changing another, check
the 'fix' box next to the slider.
Note that gas is not included in these basic calculations. The reason for this is purely to
simplify the input parameters: if gas were included, a PVT calculation would need to be
1990-2011 Petroleum Experts Limited
135
REVEAL
carried out at P,T, and the resulting gas concentration would depend on factors such as
miscibility and whether or not the system were repressurised. In the simulation, gas forms
part of the oleic pseudo-component as explained in the introduction to this section.
The absence of gas means that the binodal curve and effective salinity will not depend on the
EACN entered for the gas phase.
Variable Parameters - the following input parameters can be varied: alcohol concentration,
polymer concentration, salinity, and temperature. When the sliders are adjusted, the phase
diagram will change accordingly.
Calculation Results
The Hand parameter of the binodal curve and effective salinity for the input set are output. A
description of the system at the overall concentration point is also given (e.g. 'two phase
aqueous and oleic emulsion' for a type II(+) system).
Pseudo-component concentrations in phases
This gives the pseudo-component concentrations of the resulting phases. In II(-) and II(+)
systems, the phase concentrations are given by the intersections of the tieline with the binodal
curve, as plotted. For the type III case, the concentrations are simply the vertices of the three
phase triangle.
Interfacial tensions
Interfacial tensions for the emulsion/aqueous interface and the emulsion/oleic interface are
given, where applicable, if this input data has yet been entered.
Plot Phase Composition - this presents a diagram with the relative phase saturations for the
system at the overall composition point.
Zoom - the chemical pseudo-component concentrations along the binodal curve are often
quite small and this makes the detail of the plot quite difficult to see. Click on the 'zoom'
arrows to effectively increase the chemical concentrations (note that this will distort the plot
slightly as the concentrations still have to be normalised).
2.3.9.5 Surfactant interfacial tension
The interfacial tension between aqueous, micro-emulsion and oleic phase are modified by the
surfactant model, resulting in capillary desaturation.
REVEAL Manual
February, 2011
User Guide
136
Once the phase compositions have been calculated, the interfacial tension is calculated as a
function of solubilisation parameters (X). For an interface between water and micro-emulsion
(type II(+) environment or the II(+) lobe of a type III environment) the water/micro-emulsion
interfacial tension ( wm) is calculated. Similarly for an interface between micro-emulsion and
oil (type II(-) or the II(-) lobe of a type III environment) the oil/micro-emulsion interfacial
tension ( om) is calculated.
2- and 2+ Parameters
Water/micro-emulsion
log 10
Xw
wm
G12
G11
1 G13 X w
C cw
C cc
Oil/micro-emulsion
log 10
Xo
om
G22
G21
1 G23 X o
C co
C cc
137
REVEAL
In both cases, if the solubilisation parameter (Xw or Xo) is below a threshold Xmin (minimum
solubilisation parameter, default = 1), a linear interpolation between the oil/water value ( ow,
entered in the physical properties section) and the values given by the formulae above is
used.
log 10
wm
log 10
om
Xw
) log 10
X min
(1
(1
Xo
) log 10
X min
ow
Xw
log 10
X min
wm
Xo
log 10
X min
ow
om
if
Xw
if
Xo
X min
X min
Additionally, the interfacial tension is forced to approach zero at the plait point by multiplying
the calculated value of by
1 exp(
1 exp(
)
2
2)
C pw
C qw
C po
C qo
C ps
C qs
where p and q denote the two phases between which the interfacial tension is being
calculated.
3-phase triangle parameters
In the three-phase triangle of the type III phase diagram only, the interfacial tension may be
made a function of overall surfactant concentration at concentrations below a specified
threshold ( ), where the slope (S) is user defined.
log 10
log 10
wm
om
log 10
log 10
wm
om
S 1
cs
cw
S 1
cs
cw
REVEAL Manual
February, 2011
User Guide
138
Viscosity model
If the surfactant model is being used, then the aqueous, oleic and micro-emulsion phase
viscosities are calculated using one of two models, namely Pope and Barker (a variant of the
Barker model is also available). See the mobility section for more information on viscosity
models for polymer (thickening, shear thinning). At this stage, of a calculation, the aqueous,
oleic and gaseous phase viscosities have been calculated, accounting for all additives except
surfactant.
Each of the three phases (p), aqueous, oleic and micro-emulsion are considered in turn.
Within each phase, the volumetric component concentrations of water (Cwp), oil (Cop) and
surfactant (Csp) are known.
In addition to the model specific parameters required the user enters a thermal exponent
factor Alpha6 ( mT). Note that this factor is used with absolute temperatures (R).
139
REVEAL
Model Parameters
Pope model - the user is required to enter the parameters Alpha1 to Alpha5 ( m1 to m5).
The volumetric concentration of hydrocarbon components (Chp) comprising oil+dissolved gas
is calculated.
C ps
m1
exp
1
T
mT
1
Tref
C pw
exp
m4
C po
C ps
C ph
exp
m5
C pw
C ps exp
exp
wax
m2
C pw
m3
C po
Twax T
1 Twax T
w and o are the water and oil viscosities calculated without surfactant being present. When
the micro-emulsion phase is being considered, o is modified to reflect any miscible free gas
within this phase. Note that no free gas will be present within the oleic phase. The term 'free
gas' is used here to mean excess gas (GOR-Rs) beyond that associated with the oil, that
may be present within the micro-emulsion phase.
o
1
4
(1 g )
1
4
cg 1
Rs
GOR
cg
where
The above sum is over all gaseous components (usually only one).
g
Barker model - the user is required to enter the parameters Alpha1 to Alpha5 ( m1 to m5).
These are different from parameters entered for the Pope model.
Aqueous phase viscosity
w
TF w
s
m1C a
w0
o0
R0
m2
C os exp
wax
Twax T
1 Twax T
The micro-emulsion phase viscosity depends on the phase present (i.e. region of ternary
diagram). The phases present are controlled in REVEAL by the effective salinity (cse), which
has values within a range extending from a minimum (cse,min) to a maximum (cse,max), with
an optimal value (cse,opt) between the minimum and maximum values.
Type II- (oleic and micro-emulsion phases only)
m
m3
m4
m4
m5
REVEAL Manual
m3
m4
c se ,min
c se ,opt
c se ,min
c se
c se ,opt
c se ,max
c se ,opt
exp
exp
1
T
mT
mT
1
Tref
1
T
1
Tref
for
for
cse
cse
cse ,opt
cse ,opt
February, 2011
User Guide
140
For the type III micro-emulsion, the micro-emulsion viscosity is modified by the thickening
factor calculated for the water present within the micro-emulsion phase. This modification is
not applied if the variant Barker_x model is selected.
m
TFm
The calculated micro-emulsion viscosity is then modified to reflect the presence of any 'free
gas'.
m
m
g
1
4
(1 g )
1
4
cg 1
where
Rs
GOR
cg
Any component apart from water, oil and gas may be adsorbed. Adsorbed components are
1990-2011 Petroleum Experts Limited
141
REVEAL
not transported with the fluid flow or subject to diffusion. Adsorbed minerals take no part in
water chemistry equilibrations. Adsorbed surfactant takes no part in desaturation and microemulsion phase formation. Adsorbed components may reduce the permeability (e.g. polymer,
gel or water chemistry minerals). Adsorbed wetting agent is used to model wettability
desaturation.
Data for rock types
Adsorption data may be added for any or all rock types, with different data possible for
different rock types. Select Add to add a new entry to the table, select an entry in the table
to modify the adsorption data, or Delete to delete all of the adsorption data for the current
rock type.
Fluid list
This lists the components in the model that may be adsorbed. Select a component and use
the Add or Delete buttons to add or delete adsorption data for that component. Some
components must have adsorption data (e.g. surfactant, polymer, H+) if they are present,
these components will have a red cross beside them: use the Add button to add adsorption
data (which may be null if no adsorption is required).
Adsorption isotherm
Four adsorption models are available, Langmuir, Linear, Stripping and Thermal Active. Use
the Plot button to view the isotherm.
Permeability reduction
This is available for all adsorbed components apart from water chemistry minerals, which
have their own permeability reduction model. The permeability reduction (R0) is a function of
the adsorbed component concentration (Ca) and the input permeability reduction coefficient
(RF), which should be greater than one to reduce the permeability, i.e. the permeability is
divided by R0.
R0
1 (R F
1)
Ca
Ca max
The total permeability reduction is the sum of the permeability reductions of all adsorbing
components.
The permeability reduction may be applied to each phase independently, with different rates
of permeability reduction applied to each phase.
Adsorption initialisation
The initial adsorbed concentration is entered in units of mass per unit volume, where the
volume is the total rock volume (including pore volume). This data is optional, with a default of
zero. Data may be entered as a constant for each rock type, as a set of grid block ranges
each with a constant value, or as a datablock with an entry for each grid block. For more
information on using the range and array options see the reservoir section.
REVEAL Manual
February, 2011
User Guide
142
To use this option, select the Ion Exchange button, then select the divalent cation component.
When this model is used, there is no additional adsorption data required for the salinity
component.
143
REVEAL
The ion exchange model assumes that there are a fixed number of cation adsorption sites on
the rock (cation exchange capacity QV) that may hold monovalent or divalent cations.
Additionally there is an equilibrium between the adsorbed divalent/monovalent cation
concentrations on the rock and in the aqueous phase (cation exchange parameter K0).
Molecular weights are required to calculate equivalent masses (meq) of the various ionic
species.
Anion
Nomenclature
Cx
Cax
REVEAL Manual
February, 2011
User Guide
Cwx
QV
wx
144
Xax
ml)
Xwx
volume (meq/ml)
K
Sw
Subscripts
d
Divalent cations
Monovalent cations
Salinity (anions)
Main equations
Xam + Xad = QV
Constitutive equations
Xad = 2. Cad/(wd. f)
145
REVEAL
K = K0(1 Xad/QV)
Initialisation
Initially, Cs and Cwd are assumed fixed from the initialization data entered, and an equilibrium
value for adsorbed cation (Cad) is calculated to be consistent with this data. Therefore initial
adsorbed cation is not required as input.
Solution
The four equations are solved by Newton-Raphson for each block at each time step for the
unknowns Cad, Cwd, Cam and Cwm. Convergence is to within a rms mass concentration
change of less than 10-9.
The adsorbed cation, aqueous cation concentration and salinity (anion) concentration may be
selected for 3D visualization.
The principal effect is that as the water is diluted, the total cation concentration reduces. To
maintain the rock ion capacity and rock-water equilibrium, the divalent cations prefer to be
bound on the rock due to their higher charge capacity.
Plot - the plot may be used to check the desired cation response.
REVEAL Manual
February, 2011
User Guide
146
2.3.10.2Adsorption isotherms
Four isotherm models are included, describing the adsorption profile as a function of
concentration, temperature, permeability and salinity. Irreversible, reversible or partially
reversible models are available, and the adsorption may also be rate dependent.
All components have a total (C) and adsorbed (Ca) concentration, and have dimension of
mass/volume. Aqueous phase concentrations (c) are defined as mass fractions (kg/kg), and
are defined by the ratio of a given component concentration divided by the concentration of
water (c=C/Cw).
The partitioning of the total component concentration (C) between that adsorbed (Ca) and the
1990-2011 Petroleum Experts Limited
147
REVEAL
concentration remaining within the aqueous phase after adsorption (c*) is defined by the
maximum adsorbed concentration (Camax) and the isotherm parameter (b), which describes
the shape of the isotherm.
Note that the entered maximum adsorbed concentrations are mass per unit rock volume, not
including pore volume.
Langmuir isotherm
The relation between adsorbed and aqueous component concentrations is characterised by
the following equations, where aref is defined below.
Ca
C
a ref c *
c*
1 bc *
C Ca
Cw
Ca c * C w
The maximum adsorbed concentration occurs when the aqueous phase concentration (c*) is
large (i.e. Camax=aref/b). If b is small, then Ca rises slowly, and if b is large then Ca rises
quickly.
The parameter aref has units of mass/volume, while parameter b has effective units of (mass
fraction)-1. These units are not used in the interface since this parameter is effectively
dimensionless. Note that when the aqueous phase concentration (c*) is equal to 1/b, then the
adsorbed concentration (Ca) will be half of the maximum adsorption limit (Camax). Hence a
value of b=1000, will result in 50% of the maximum adsorption level with an aqueous
concentration of c* = 1/b = 10-3 kg/kg (or 103 ppm).
aref can be thought of a measure of 'adsorbability'. For example, with the linear isotherm, a
ref is the slope of the adsorption isotherm, and for the Langmuir isotherm, aref is the slope of
the isotherm at zero concentration.
a ref
Ca
c*
at c* = 0
In addition to Camax and b, the user enters the temperature (A[T]), permeability (A[k]) and
salinity (A[s]) coefficients used to modify the reference parameter (aref).
a
[a ref
A[ s ] c s
A[T ] (T
Tref )]k
A[ k ]
a ref
bCa max
kx 2
ky 2
2
The effective salinity (cS, kg/kg) is calculated from the salts present, while the reference
temperature (Tref) is input by the user in the control section. The mean permeability (k) is the
mean horizontal permeability in units of Darcy.
REVEAL Manual
February, 2011
User Guide
148
Note that changes to aref will both affect the adsorbability (a) and consequently the maximum
adsorbed (Camax), retaining the relationship with parameter b such that Camax = a/b.
Linear isotherm
The linear isotherm is identical to the Langmuir isotherm, with the following modification.
If c* <= 1/b then Ca = a.c*, where c* = C/(Cw + a), since Ca + c*Cw = C (total mass
concentration)
If c* > 1/b then Ca = a/b = Camax
Thermal Active isotherm
The Thermal Active isotherm is identical to the Linear isotherm, with the following modification
to the temperature dependence, requiring additional input parameters T[bw], A[bw] and
(epsilon).
a
[a ref [(1
tanh( A[ bw] (T
T[ bw] ))]
A[ s ] c s ]k
A[ k ]
Stripping isotherm
The stripping isotherm adsorbs all available component to its maximum value, hence the
isotherm parameter (b) is not required for this model.
Ca
max( C , Ca max )
pH Dependence
For the surfactant component if water chemistry is present, the adsorption of surfactant may
depend on pH.
The maximum adsorption is scaled linearly with pH between the lower limit (acidic full
adsorption defined by the entered maximum limit) and the upper limit (alkali zero adsorption).
Reversibility
Adsorption is always completely reversible for changes in salinity.
Adsorption may be completely reversible, or completely irreversible for changes in
temperature. If the irreversible option is selected, then the maximum historical thermal
contribution to the adsorption parameter (a) is used.
Adsorption may be completely irreversible, completely reversible, or partially reversible for
changes in concentration for all isotherm models. Reversibility is controlled by entering an
irreversible concentration limit (Cairrev). If Cairrev is not entered (cell left blank), then the
model is assumed to be fully reversible. A Cairrev value equal to Camax represents the fully
irreversible case, while intermediate values model partially reversible isotherms.
For a partially reversible isotherm, as the concentration of the adsorbing component
increases, the adsorption level rises in accordance with the isotherm. The Langmuir curve is
1990-2011 Petroleum Experts Limited
149
REVEAL
used as an example, where three points on the curve (Ca plotted as a function of c*) are
identified.
Point A is at the irreversible adsorption concentration (Ca = Cairrev).
Point B is the point on the isotherm curve where a straight line passing through (0,Cairrev) has
the same gradient as the isotherm curve (i.e. the tangent point).
Additionally, point C is defined as the point (Cairrev,0) used to define point B (tangent to the
isotherm curve).
If the concentration falls before point A has been reached, then the adsorption does not
reverse (irreversible). If the concentration starts to fall between point A and point B, then
desorption occurs along a straight line from the maximum point reached on the isotherm curve
to point C. If the concentration begins to increase again, adsorption moves back up the
straight line until the isotherm is reached, and then continues moving up the isotherm. If the
concentration starts to fall after point B, then desorption proceeds down the isotherm until
point B is reached and then down the straight line connecting point B to point C.
Adsorped concentratoin (C a)
B
C
A
Adsorption rate
Adsorption may be assumed to take place instantly, or the time taken for adsorption to occur
may be modeled using an input rate parameter (A[rate]).
Ca n
Ca (Ca n
Ca)e
A[ rate] t
where Ca is the newly calculated instantaneous adsorbed concentration, and Can and Can+1
are previous and current time step values.
REVEAL Manual
February, 2011
User Guide
150
2.3.10.3Permeability reduction
Ca
Permeability reduction coefficients may be defined for each rock type or for all rock types.
The total permeability reduction is the sum of the permeability reductions of all adsorbing
components.
The permeability is divided by the permeability reduction factor R0.
1990-2011 Petroleum Experts Limited
151
REVEAL
The porosity reduction is used as an equivalent inaccessible pore volume (ipv = - / ), which
increases the effective volumetric concentration of all trace components (i.e. water chemistry
ions).
The permeability reduction is applied equally to all phases.
2.3.10.4Tracer partitioning
This section is optional and requires that tracers are present for all three phases.
REVEAL Manual
February, 2011
User Guide
152
The tracer components are added in the control section. for example Water_Tracer_1,
Oil_Tracer_1 and Gas_Tracer_1 components are required to partition Tracer 1.
Oil/Water Partition Coefficient (at reference conditions)
The oil/water partitioning coefficient is defined as the mass concentration (ppm) in oil phase
divided by the mass concentration (ppm) in water phase.
Gas/Oil Partition Coefficient (at reference conditions)
The gas/oil partitioning coefficient is defined as the mass concentration (ppm) in gas phase
divided by the mass concentration (ppm) in oil phase.
Pressure and temperature dependence
Pressure and temperature dependence for the partition coefficients may be enabled by
setting a reference pressure and temperature and non-zero dependences.
The reference partition coefficients are then linearly modified according to the current
pressure and temperature.
Partition_Coef = Ref_Coef + (Pres - Ref_Pres) * Pres_Dependence + (Temp - Ref_Temp) *
Temp_Dependence
153
REVEAL
REVEAL Manual
February, 2011
User Guide
154
Output region
This defines region(s) of the grid that will have the results of the water chemistry equilibration
output to the water chemistry results file. This file may be viewed by selecting Results|
Debug|Debug water chemistry from the main REVEAL window.
It is generally
recommended not to generate too much of this data since it may result in a very large file.
This data should only be generated for specific debugging purposes.
Calculation/output frequencies
The water chemistry equilibration may be performed every time step or with a defined
frequency in timesteps. If the output frequency is left blank then no water chemistry data will
be generated, preventing potentially large volumes of unnecessary data being generated.
Min relative concentration change for inclusion - by default a water chemistry
equilibration is performed for every gridblock where the maximum component relative change
in concentration exceed this value. Entering a value of zero will force every block to be
1990-2011 Petroleum Experts Limited
155
REVEAL
included, which will slow the calculation for large models where there may be significant
regions of constant composition. It is recommended that this option should be set to zero for
smaller souring models with CO2 or H2S partitioning.
Electrical neutralisation
One species pair (anion and cation) is required to be internally adjustable to ensure precise
electrical neutrality. This is usually chosen to be Cl- and H+. Electrical neutrality of the
mixture of ionic species (excluding free electrons, e-) should be ensured for both the reservoir
and injected waters. This may be checked using the input wizard calculator in the initialisation
and injection sections.
The H+ ion is chosen, rather than the Na+ ion (pre IPM7) since this improves the modeling of
strong acid/alkali behaviour. The model initially ensures that electrical neutrality of reservoir
and injection waters honoring the user input H+ (pH), using the Na+ and Cl- ion pair.
Other
New partition coefficient - if this option is set, then the water/oil partition coefficients for
CO2 and H2S will be initialised using the initial components present, rather than using the
value entered in the mobility section. See the mobility section for more information on the
partitioning model. This will only affect water chemistry models where partitioning can take
place (i.e. the components CO2oil/CO2gas or H2Soil/H2Sgas are present).
Simplified equilibration - this flag is only available if there are no mineral precipitate
components within the model. If this option is selected, then the chemical equilibrium program
is not used, and therefore aqueous speciation of the tracked master species does not take
place (i.e. the ionic master species do not associate to form aqueous dissolved species).
However, H2S and CO2 partitioning and the H2S souring models are still available. These
models calculate the aqueous dissolved CO2 and H2S using the database (for equilibrium
constants and activity coefficients), assuming that all of the ionic master species (CO3-2 and
HS-) are in ionic form (fully dissociated) and available to form aqueous dissolved CO2 and
H2S. This approximation results in large cpu savings.
General comments
H+ (pH), e- (pe) are required species and should be included for all water chemistry models.
Solid phase mineral concentrations are similarly input and tracked within the aqueous phase.
Redox reactions are possible, altering the electron activity. Note that the redox reactions may
have significant effect on the solution pH and pe.
HS- <> SO42- + 9H+ + 8e- - 4H2O
The reaction species and thermodynamic reactions are defined within an editable database.
A default database is included with the REVEAL installation, and is written to the current data
directory with the name 'phreeqc.dat'. The current data directory is set using the menu option
REVEAL Manual
February, 2011
User Guide
156
File|Data Directory. To use a different chemical database, simply replace the 'phreeqc.dat'
file in the current data directory, ensuring that the replacement database has the correct
format for version 2.4.2 of PHREEQC.
Partitioning - the model also returns the molality of dissolved CO2 and H2S. The CO2 and
H2S may be partitioned between the aqueous and oil/gas phases.
CO2 (oil/gas) <> CO32- + 2H+ - H2O (aq)
H2S (oil/gas) <> HS- + H+ (aq)
The change in pH can dramatically affect the precipitation/dissolution of mineral species.
The species CO2water and H2Swater are supplied only for reporting purposes and are
optional.
Adsorption - precipitated minerals may be adsorbed. Adsorbed minerals are not transported
and take no part in the water chemistry equilibration.
Water chemistry calculator - a calculator is available to analyse the possible reactions of
mixed water before a simulation is run. All of the simulation input data must be entered
before the calculator can be used. The calculator can be started by selecting Input|Water
Chemistry Equilibration Calculation from the main menu.
157
REVEAL
Looking at the sample snapshot above, obviously the reservoir and injection waters should be
different compositions. Use the Control options to set the injection water.
Then select the mixing ratio, temperature etc.
Use the Mix reservoir/injection button to mix the reservoir and injection waters to give the
mixture concentration.
Use the Calculate equilibrium button to calculate the equilibrium concentration.
Use the Plot button to plot the reaction component concentrations over a range of mixing
ratios.
An additional water chemistry calculator is available for calculations using well results after a
calculation has been completed. This is started by selecting Input|Water Chemistry
REVEAL Manual
February, 2011
User Guide
158
159
REVEAL
water).
The gram formula weight (gfw) of electrons is assumed to be 10-6 g/mole. Other gfws are
obtained from a database.
The water chemistry species are non-volumetric in that they take no direct part in the flow
equations; in other word they are merely tracers.
Their only interaction with the flow equations is explicitly through permeability reduction arising
from adsorption.
The water chemistry species are assumed to mix fully within each simulation gridblock.
The equilibration of the master species includes a large database of possible reactions
resulting in ionic bonded molecules, free ionic master species and solid precipitates. The
database includes thermal and ionic strength dependence on activity coefficients for each
possible state and temperature dependent equilibrium constants. Redox reactions are implicit
and therefore all valence states of a master species should be included.
Adsorbed minerals take no part in the water chemistry calculation.
Ionic neutrality is required and observed by adding/removing small concentrations of an ionic
pair; usually Na+ and Cl-.
Overview of solver
The flow equations are solved implicitly for the pressure, temperature and phase saturations.
The dependent parameters (PVT, relative permeability etc.) are updated and the Darcy
velocity field calculated. Each master species concentration is then updated using the
calculated Darcy velocity field. A 1-point upstream weighting implicit solver is used that
allows timesteps greater than the Courant limit.
Numerical dispersion associated with such implicit schemes will be present and therefore
sensitivity to grid geometry and timesteps will be present.
Once the updated component concentrations have been calculated, the water chemistry
module is entered.
During the initialisation every block is water chemistry equilibrated; on subsequent timesteps
only blocks satisfying the following conditions are re-equilibrated.
a) Maximum relative change in concentration exceeds user specified 'min relative change for
inclusion': (1-C(n+1)/C(n))/dt > user limit. C(n+1) is the concentration of a given species at
time step (n+1), and C(n) at the previous time step. This relative change is calculated for
each species and the maximum used. Any block exceeding the minimum concentration
change is included in the water chemistry calculation. The default user limit is 10-3.
b) Total water content in block is greater than 10-8 lb/ft3. Any block not meeting this criterion
is not included in the calculation, regardless of other criteria.
REVEAL Manual
February, 2011
User Guide
160
161
REVEAL
Once the SRB concentration is calculated, the sulphate reduction is calculated as a linear
fraction of the maximum reduction rate (X) entered by the user. The maximum reduction rate
is in units of molality/day. Therefore the change in sulphate and sulphide molality is calculated
as dt.X.CSRB/CSRBmax .
The molality of SO4-2 and HS- are updated and in order that the equilibrium calculation
preserves their relative concentrations, the equilibrium constant for the sulphate to sulphide
reaction is modified, using the current activity coefficients for all species in the equation
including H+ and e-.
SO4--2 + 9 H+ + 8 e- = HS- + 4 H2O
If souring is present, then the sulphate/sulphide equilibrium constant is recalculated for each
included block based on the prevailing sulphate/sulphide concentrations, thus preserving their
relative concentrations. This is essentially ensuring that the souring process is irreversible
and non-equilibrium conditions are preserved.
The simplified souring model is possible when no mineral species are present, since in this
case the total master species concentrations are not altered by the water chemistry
equilibration and only the sulphate-sulphide equation is calculated. This approximation can be
used to speed scooping calculations.
Souring bacterial activity model
In this model the SRB grow and respire using nutrient.
Their activity is the rate at which the nutrient is used by the SRB, and depends on the bacteria
type, concentration of SRB, temperature, pressure, salinity and nitrate concentration.
The fraction of nutrient used for growth is called the nutritional efficiency, the remainder is
used for respiration (reduction of sulphate to sulphide).
The nutrient may come from a finite source of VFA (volatile fatty acids) in equilibrium between
the aqueous and oleic phase. Once the VFA is exhausted, an unlimited nutrient source may
be obtained directly from the oil HC (hydrocarbon). The HC activity is much lower than the
VFA activity.
The following outlines the main variables and equations solved using this model for each
gridblock at each timestep.
Fw = mass conc of VFA in water
Fo = mass conc of VFA in oil
F = total mass of VFA
Xf = VFA equilibrium = Fw/Fo
Mw = mass of water
Mo = mass of oil
REVEAL Manual
February, 2011
User Guide
162
163
REVEAL
REVEAL Manual
February, 2011
User Guide
164
CO2 partitioning
Partition coefficients
Partition coefficients (PCwo and PCog) are defined for CO2 partitioning between aqueous and
oleic phases, and between oleic and gas phases. The activity of CO2 in water is
approximately equal to the molality (mole/kg water) of dissolved CO2. The partitioning is
achieved by considering the CO2 dissolved in the hydrocarbon phases to be represented by
an ideal gas in equilibrium with the aqueous phase. The ideal gas CO2 partial pressure is
related to the mass concentration of CO2 within the hydrocarbon phase.
PCwo = (Mole/litre of CO2 in oil) / (Activity of CO2 in water)
PCog = (Mole/litre of CO2 in gas) / (Mole/litre of CO2 in oil)
The partition coefficients are pressure dependant and take different forms depending on
1990-2011 Petroleum Experts Limited
165
REVEAL
REVEAL Manual
February, 2011
User Guide
166
The souring model requires the components SO4-2, HS- and nutrient to be present. In
addition, the H2S partitioning components H2Soil and H2Sgas should usually be present within
a souring model. HS- may also be an adsorbed component, modeling its retardation. The
simplified equilibrium model may be used for souring calculations that do not contain
precipitating minerals.
The basis of the souring model is that SO4-2 reduces to HS- under the catalytic presence of
sulphate reducing bacteria (SRB).
The growth of SRB is controlled by the presence of the nutrient component within a suitable
167
REVEAL
temperature range. As the nutrient is used up, the rate of SRB growth reduces, but the SRB
remain present and available to reduce SO4-2 ions if they are present i.e. it is assumed that
the SRB may metabolise at a constant concentration with no nutrient present due to
remineralisation and resting cell metabolism. The SRB are assumed to not flow with the
injected water, but remain and grow within grid blocks. The net result is that as the SRB
grow, they are available to reduce SO4-2 ions within a cooled region near an injector, and the
reduced HS- ions may then form aqueous and hydrocarbon phase (assuming partitioning)
concentrations of dissolved H2S, which may then be transported in the aqueous and
hydrocarbon phases.
Temperature dependence
Minimum and maximum temperature at which the SRB may grow.
Concentration dependence
Minimum and maximum SRB concentration. The minimum concentration is assumed to be
present initially everywhere within the reservoir as a starting condition, in the form of SRB
spores. The maximum concentration is the maximum concentration that the SRB can achieve,
even it the conditions (temperature and nutrient availability) are otherwise favourable for SRB
growth.
Growth and respiration dependence
SRB growth rate - half life for SRB concentration to double under favourable conditions
(temperature within set bounds and nutrient available).
Nutrient/SRB growth mass ratio - the mass ratio of nutrient to SRB, required to reduce the
nutrient concentration as the SRB concentration increases (SRB growth). For each kg of
SRB growth, this ratio of nutrient mass is required.
Nutritional efficiency - the fraction of available nutrient that may be used for growth. The
remaining fraction is available for anaerobic respiration which reduces sulphate to sulphide.
Nutrient/sulphate reduction mass ratio - the mass of nutrient consumed for each unit mass
of sulphate reduced, modelling the nutrient requirements for respiration.
Maximum SO4(-2) reduction rate
The sulphate reduction rate (mole/kg/day) at maximum SRB concentration as a function of
temperature is entered in a table. The temperatures should be monotonically increasing. The
sulphate reduction rate at reduced SRB concentrations is a linear interpolation between zero
and the maximum value entered here as a function of SRB concentration between its minimum
and maximum values. The sulphate reduction rate is also limited by the sulphate ions present.
Reduction rate pressure dependence
The maximum reduction rate may be altered using a pressure dependent multiplier.
REVEAL Manual
The
February, 2011
User Guide
168
169
REVEAL
Temperature dependence
REVEAL Manual
February, 2011
User Guide
170
The
The total
171
REVEAL
A fixed (not temperature dependent) hydrocarbon activity rate is entered for use when all of
the VFA is exhausted. This value may be zero.
2.3.11.5Scale inhibition
The scale inhibition model is only available if the water chemistry option was selected in the
control section, and there are precipitating minerals and the component Scale Inhibitor is
present (see component selection).
Also see general description.
Scale inhibition
The scale inhibition model increases the solubility of minerals as a function of inhibitor
concentration within the aqueous phase. The scale inhibitor may be adsorbed. Scale
inhibition is based on the assumption that the scale inhibitor acts to provide nucleation centres
REVEAL Manual
February, 2011
User Guide
172
173
REVEAL
The asphaltene input data can be accessed once the solids option and asphaltene component
has been selected in the control section.
The initial dissolved asphaltene concentration within the oil phase should be entered in the
initialisation section.
Flocculation properties
Flocculated density - this density is used to relate the mass and volume of trapped
asphaltene for permeability reduction.
The diameter distribution of the flocculated asphaltenes is characterised by a flocculated size
distribution index (m) and a maximum diameter (Dmax). The mass fraction of the flocculated
asphaltene with a diameter greater than D is given by the following power law.
1
D
Dmax
REVEAL Manual
February, 2011
User Guide
174
Solubility
The solubility of asphaltene is assumed to be strongly pressure dependent, generally falling
as the pressure falls towards the bubble point, then rising as the pressure continues to fall
below the bubble point. This data is entered as a table of solubility for monotonically
increasing pressure and is not extrapolated. The solubility is defined as a mass/mass (ppm)
concentration.
Rock dependent properties
Permeability reduction and rock grain structure properties are defined for each rock type.
Trapped asphaltene - the insoluble asphaltene will flocculate with a distribution of particle
sizes. Flocculated asphaltene with a diameter greater than the trapping diameter (Dt) will be
trapped and contribute to permeability reduction. The trapping diameter is a function of the
rock grain structure and porosity, and is defined next.
Dt
Dg
Dg
1
, where
is a dimensionless trapping diameter multiplier used for matching and
is the grain diameter. To trap all of the solid asphaltene, set to zero.
Reversibility - if the model is irreversible, then only the solid asphaltene that is not already
trapped may irreversibly accumulate as trapped asphaltene. If the model is reversible, then
all of the solid asphaltene, including that previously trapped, will be partitioned between
trapped and non-trapped solids according to the particle size distribution.
Permeability reduction - the trapped asphaltene will reduce the permeability according to
the equation below.
k
k 1
, where C is the trapped mass of asphaltene per unit grid block volume,
trapped asphaltene density and n is a permeability reduction index.
a
is the
2.3.12.2Wax
Waxes are modelled in REVEAL as a solubility limited component in the oleic phase, that once
precipitated may become trapped within the pore structure of the rock reducing permeability.
The details for the wax model are exactly analogous the asphaltene, except that the solubility
is temperature rather than pressure dependent.
175
REVEAL
The wax input data can be accessed once the solids option and wax component have been
selected in the control section.
The initial dissolved wax concentration within the oil phase should be entered in the
initialisation section.
Flocculation properties
Flocculated density - this density is used to relate the mass and volume of trapped wax for
permeability reduction.
The diameter distribution of the flocculated wax is characterised by a flocculated size
distribution index (m) and a maximum diameter (Dmax). The mass fraction of the flocculated
wax with a diameter greater than D is given by the following power law.
1
D
Dmax
REVEAL Manual
February, 2011
User Guide
176
Solubility
The solubility of wax is assumed to be strongly temperature dependent, generally falling
sharply below the cloud point. This data is entered as a table of solubility for monotonically
increasing temperature and is not extrapolated. The solubility is defined as a mass/mass
(ppm) concentration.
Rock dependent properties
Permeability reduction and rock grain structure properties are defined for each rock type.
Trapped wax - the insoluble wax will flocculate with a distribution of particle sizes.
Flocculated wax with a diameter greater than the trapping diameter (Dt) will be trapped and
contribute to permeability reduction. The trapping diameter is a function of the rock grain
structure and porosity, and is defined next.
Dt
Dg
Dg
1
, where
is a dimensionless trapping diameter multiplier used for matching and
is the grain diameter. To trap all of the solid wax, set to zero.
Reversibility - if the model is irreversible, then only the solid wax that is not already trapped
may irreversibly accumulate as trapped wax. If the model is reversible, then all of the solid
wax, including that previously trapped will be partitioned between trapped and non-trapped
solids according to the particle size distribution.
Permeability reduction - the trapped wax will reduce the permeability according to the
equation below.
k
k 1
, where C is the trapped mass of wax per unit grid block volume,
trapped wax density and n is a permeability reduction index.
a
is the
2.3.12.3Sand
The sand model in REVEAL requires that the solids option is selected in the control section
and that the components SandWater, SandOil and SandGas are present. These components
represent the concentration of sand in each of the three possible mobile phases.
Sand is modelled in REVEAL in two stages.
First there is the transport and trapping of solids (sand). This is a general solid transport
model and is not limited to sand. The transport and trapping is dependent on the solid particle
diameter and the pore throat diameter distribution defined in the physical section. Trapping
may lead to permeability reduction. Each mobile phase may transport sand and the total
sand is partitioned between the phases present according to partitioning coefficients.
177
REVEAL
Secondly, there is a model in REVEAL to predict sand generation, arising when the stress
within the reservoir rises sufficiently. A calculator is provided to estimate this failure criterion
based on pre-consolidation failure (Ref 24 and 26).
Sand properties
The sand particle diameter is defined, as well as the partitioning between oil/water and gas/
oil.
Once the shear rate (see mobility where c = 1) for a given mobile phase exceeds the critical
shear rate for transport, then a fraction of the sand present with a block will be transported
and the remainder will be trapped. The fraction that is trapped is calculated from the particle
size and the pore throat distribution (y(x)). dp is the effective pore throat diameter, and sp is
its log STD (standard deviation). A plugging efficiency (E) is also added to account for
bridging effects.
REVEAL Manual
February, 2011
User Guide
y ( x)
0.5
1
xs p 2
ln( x / d p )
178
sp
E y ( x)dx
1
2
ln( d / d p )
1
Erf
2
sp 2
If significant trapping occurs, then a buildup of solids can occur. This may result in
permeability reduction. The permeability reduction is parameterised by a permeability
reduction index (n), sand density ( s) defined in the physical section and total sand mass
concentration (cs).
k
k0 1
cs
179
REVEAL
The main idea of this model is that laboratory tests that calculate preconsolidation (Cap)
effective stress when end cap hardening occurs may be used to estimate failure.
A preconsolidation (Cap) effective stress is defined to be an isotropic (all stress components
equal) effective stress (rock stress - pore pressure).
End cap hardening is the point at which the grain structure starts to fail and is indicative of
plastic deformation and is used for the criteria for sand production. This occurs before
catastrophic (shear) failure.
The model in REVEAL follows the work in Ref 26, and relates the isotropic preconsolidation
(Cap) effective stress to that in a non-isotropic reservoir.
As the pore pressure falls, the vertical stress is assumed to be constant and the horizontal
stresses reduce according to the poro-elastic coefficient entered. A mean (S) and variance
REVEAL Manual
February, 2011
User Guide
180
P0 P
Pressure reduction
S1
S2 = S20 dS/dP (P0 P)
S3 = S30 dS/dP (P0 P)
Maximum stress
Middle stress
Minimum stress
S = (S1 + S2 +S3) / 3 P
M 2 S2 = M 2 S Prec - Q2
MS=Q
(Cap)
pressure
Note that while these equations are used for the plot, during a simulation the three principal
direction stresses (S1, S2, S3) are calculated using the full rock mechanics method
accounting for thermal and pressures effects as well as strain. From these S and Q may be
calculated, then a shear failure criteria (angle of friction) and hardening failure (cap pressure)
may be calculated. Note that the cap failure uses the user input angle of friction. If the
calculated failure criteria exceed those for the rock, then failure is predicted. In the case of
1990-2011 Petroleum Experts Limited
181
REVEAL
the sand generation model, this is when the calculated cap pressure exceeds the user input
cap (preconsolidation) pressure.
NOTE: To be able to select annular flow through a multilateral well description, the
"Friction and Heat Transfer" radio button must be selected in the above screen.
Well list
Wells may be added using the Create button. Once a well has been added, its properties
may be modified by selecting the well in the list. A well may be deleted by selecting it in the
REVEAL Manual
February, 2011
User Guide
182
well list and using the Delete button. The well name (or label) is set in the well identification
section.
Sort Alphabetically - the well order is permanently sorted alphabetically and will be used in
the order elsewhere in the interface and results.
Data for all wells
Trace component averaging - this models define how the concentration of components
within phases from producing wells are calculated. The default option (block) sets the
component concentrations equal to the concentrations present within the producing block, and
is generally recommended. The average option sets the component concentrations equal to a
horizontal spatial average, which makes the assumption that component concentrations have
a cubic form near the well.
c
28 ci , j ,k
ci
1, j , k
ci
1, j , k
ci , j
1, k
ci , j
1, k
24
Shear model - the shear model applies a shear thinning correction for water injection wells
containing polymer and gel components. See the mobility section for more details.
Well identification
Well label - a name for the well that can be edited to identify the well.
Enter well position by - the method of defining the well completions can take three forms.
A completion table containing the I,J,K coordinates of the completed blocks
A vertical column of grid blocks identified by I,J block coordinates
A general multi-lateral well may be defined. The general multi-lateral well includes the well
deviation survey and allows friction, heat transfer between the well and reservoir and
realistic cross-flow. Depending on the well type selected, the input data will vary.
Wells present within refined regions must be defined as multi-lateral.
For radial and curvilinear geometries the first two wells are defined by the geometry and their
location cannot be altered. Additional wells for these geometries are not recommended.
Convert to multilateral - this will convert a completion table or vertical column well to a
deviation survey (multilateral well). Care should be taken with this option since clearly a
trajectory cannot be accurately calculated from a completion table.
Allow unstable THP control - if this option is selected (default), then a well exhibiting
unstable flow will be allowed to flow, if it is not selected then the well will be closed for the
current time-step. Unstable flow is defined to be when the gradient of the VLP curve changes
sign at lower rates indicating that the frictional gradient is insufficient to maintain steady tubing
flow.
183
REVEAL
CF
ln
re
rw
where CF is the well connection factor and is a unit conversion factor. kh is the effective
penetration of the well, rw is the wellbore radius and re is the effective radius at which the
block pressure is defined. S is the mechanical/perforation skin.
Completion table
The I,J,K coordinates of each completed block are entered
Next a flag is set to whether the block is perforated or not
If the block is perforated, then either CF may be input directly or it may be calculated
If the CF is to be calculated, then the wellbore radius (rw), mechanical skin (S) and nonDarcy skin (D) are set (see notes below on non-Darcy flow). The kh and effective radius
(re) may either be calculated assuming a fully penetrating well in either of the three principal
directions or they may be entered directly
This table should be scrolled right to enter all of the required data.
Vertical grid column
The I and J coordinated of the column should first be entered
Then for each layer, the perforated flag should be set to 'Yes' or 'No'.
For perforated wells, the wellbore radius (rw) and mechanical skin (S) should be set.
Additionally a multiplier to the CF may be entered to model partial penetration or deviation.
For the well-bore heating model, the earth and electrode locations are identified in the final
column of the completion or layer data table.
Multilateral well
If the well is a multilateral or defined by a deviation survey, then it must be given an identifier
name. Select the Edit Multilateral button to enter a deviation survey.
NOTE: To be able to select annular flow through a multilateral well description, the
"Friction and Heat Transfer" radio button must be selected in the Well Section - well
positions and properties screen.
REVEAL Manual
February, 2011
User Guide
184
A reference location for the top of the well must be entered in either grid or map axes. A
hierarchy of connected tubing sections (possibly consisting of several branches) can be added
or deleted from the tubing list. For each tubing section a deviation survey is entered using
either grid coordinates or deviation survey coordinates. Any interval on the tubing section may
be completed and given a radius, skin, roughness, internal diameter and heat transfer
coefficient (well conductivity) and PI multiplier. The well may be viewed using the View button
at any time. Note that deviation surveys can be imported from previously exported files.
Excessive discretisation of the well (short lengths) may significantly reduce performance.
Tubing Flow
The friction for tubing is calculated from the roughness (R), by first calculating an effective
roughness (Reff) from the hydraulic diameter (Dh).
Reff
R
Dh
This is then correlated with the Reynolds number using the Moody diagram to calculate a
friction coefficient (F). The frictional pressure drop is then calculated.
P
FL Q
Dh A
If the user selects the tubing to be an orifice, then a discharge coefficient (K) is required and
the frictional pressure drop is calculated.
185
REVEAL
Q
A
Heat Transfer
Considering the heat transfer from the fluid flowing in the annulus to the fluid flowing in the
tubing, this heat transfer will be by way of three components: the heat transfer by way of
convection from fluid to tubing wall, by way of conduction through the tubing wall, and by way
of convection from the tubing wall to the fluid. Alternately if the tubing fluid is hotter than the
annular fluid, then heat transfer will be in the other direction.
Of these three elements, the conductivity of the pipe wall is a relatively large value as
compared to the other two. However, the total heat transfer is the combination of the three
elements, the actual heat transferred will be highly dependent upon the lowest value of these
three.
Before the release of IPM Version 7.5, the Heat Transfer Coefficient input for the Multilateral
well is the total heat transfer coefficient across the fluid from the annulus to the tubing (or
from tubing to annulus). The convection components of the heat transfer were implicitly
considered in the total heat transfer coefficient.
With the release of IPM Version 7.5, this heat transfer coefficient represents just the
conduction through the tubing wall. The forced convection elements are taken into account by
considering the Nusselts number.
Heat transfer between annulus fluid and tubing wall and from tubing wall to tubing fluid is
modeled using a forced convection analogy with Nusselt number (Nu) correlated with
Reynolds (Re) and Prandtl (Pr) numbers. The heat transfer between the annulus (or base
pipe when no annulus is present) is modeled using the the user entered effective total heat
transfer coefficient.
For heat transfer between tubing and annulus:
Nu
hL
k
Nu
3.66
Nu
Nu
, where h is the heat transfer coefficient, L is the segment length and k is the fluid
thermal conductivity.
Re
vd
Cp
k
REVEAL Manual
February, 2011
User Guide
186
For multi-phase flow, all parameters are calculated as mass weighted fractions of the
constituent phases.
All heat transfer coefficients are with respect to the well internal area ( ID.ID/4).
Gravel Pack
Gravel packs may be specified using a similar model to that in PROSPER and calculates a
Darcy and non-Darcy contribution to pressure drop from the reservoir to the well.
P
aQ 2
where
bQ
9.08 *10 13 B 2 L
12 A2
BL
12 *1.127 *10 3 KA
1.47 *10 7
K 0.55
and
Pdiameter
4
12
S pf Peff Pint
2 rw Pint
The Vs (screen velocity is calculated) and may be used as a well control constraint in the
schedule section.
If the gravel pack is modeled with the annular flow model, then the gravel pack flow-pressure
drop relation is also used for flow along the annulus, with the area (A) being the annulus flow
area and the length (L) being the interval length.
Casing flow and ICD
If annular flow is present, then flow of heat and fluid between annular and tubing may be
modeled. The heat transfer coefficient is relative to the tubing ID. Roughness and ID/OD for
the casing are required.
Additionally, the casing and inflow flow may be set to zero for a section of completion
modeling a packer.
The fluid flow between the tubing and annulus may take several foms.
187
REVEAL
1] User - the tubing - annular flow is modeled using an orifice plate model.
P
1
Q
K
2
A
, where K is the discharge coefficient, Q is the flow rate per unit length and A is
the flow area per unit length.
2] Tubing - this is no flow
3] Screen - various screens are allowed, effectively giving very low flow resistance between
the tubing and annulus. For the screens, an orifice type pressure drop is calculated using a
discharge coefficient of 1.
A 6.625" screen has an effective flow area of 27.29 in2/ft.
A 5.5" screen has an effective flow area of 23 in2/ft.
A 4.5" screen has an effective flow area of 19.19 in2/ft.
4] EqualizerTM - the geometry and pressure loss characteristics for these ICD devices is
included, and the various geometries available may be selected.
The user should take care that the deviation survey is discretised to model the correct lengths
for the equipment modeled. Adjacent equipment of the same type does not require additional
deviation survey disretisation. For example is 3 joints consecutively have 40' equalizers of the
same type, then a single entry for a 120' segment is correct, and will generally reduce
computation time compared to modeling 3 individual sections of 40' each.
REVEAL initially calculates the intersection of the completions with the matrix grid blocks. It
then calculates the Peaceman connection factors [Refs 7,13].
The effective radius (re) is calculated using Peaceman's equations modified for irregular grids
and partially penetrating/deviated wells. Peaceman's equation for a fully penetrating vertical
well with non-uniform grid dimensions and anisotropy is given below.
1
re
0.28
ky
kx 2
y
ky
1
kx
ky
kx
4
ky
x
1
kx
The Peaceman well connection (PI) accounts for the logarithmic pressure distribution around
a vertical well, and for a given rate (Q) and bottom hole pressure (Pwf) sets the appropriate
mean block pressure (P) that will give the correct inflow (Q=PI(P-Pwf)) and total rate to
surrounding grid blocks using the linear Darcy formula.
Heater Conductivity
If an electrical heater is defined in the control section, then an electrical heater may be
specified for any well segments by entering a heater conductivity. This conductivity relates
REVEAL Manual
February, 2011
User Guide
188
the heating of the fluid within the wellbore from the heater, and the well conductivity now
relates the heating of the reservoir from the heater.
The heater conductivity is also with respect to the well internal area.
If this option is selected, then maximum power and maximum temperature for the heater will
require to be specified in the schedule section.
PI modifiers
Non Darcy factor - a non-Darcy factor may be applied to the gas phase of any well. This
factor is scaled for each completed block according to the Darcy connection factor (assumes
equal drawdown for completed blocks) and applied as a rate dependent skin.
The block geometrical connection factor (CF) prior to the non-Darcy effect is defined as
CF b
2 kh
r
ln e
S
rw
2 kh
r
ln e
rw
Dwell
Db Qb
, where
Db
CF b
b
CF b
Note that if the well completion blocks are entered as a table with only the total connection
factor, the non-Darcy skin will be applied with the denominator of the connection factor
assumed to be unity.
PI Multiplier - the optional PI multiplier will multiply all of the well connection factors for all
blocks intersected by the well regardless of the well type (vertical column, completion table or
multilateral).
Min XFlow DD - this may optionally be set to limit the minimum drawdown associated with a
well completion. This can be useful for numerical reasons, where there is very large mobility
and hence potentially vanishingly small pressure drop between the well and completed block.
For example steam injection into a reservoir with high permeability, may have extremely large
injectivity, where the well to completed block drawdown may be less than 10-3 psi causing
cross-flow instabilities. This method is adjusted automatically within REVEAL, but may be
over-ridden with this option. The default internal value for this parameter is 0.1 psi for all
wells and 1.0 psi for steam models.
Filter cake - a compressible filter cake model is available for each well and may be accessed
by selecting the filter cake button. See the filter cake page for more details.
Pseudo Pressure - a pseudo pressure calculation is performed to modify the inflow for gas
wells. Note that currently, only density and viscosity are included in the pseudo-pressure
calculation.
189
P
z
REVEAL
Pres
Pres
Pwf
res
is replaced by
Pwf
P
dP
z
The pseudo pressure option in REVEAL is only available for the connection between the well
and grid block where it intersects.
Drainage region (for PI calculations)
A PI is calculated base on a produced rate, Pwf and mean reservoir pressure. In REVEAL,
the drainage region pressure may be calculated by two main methods (the default and
recommended method is by diffusivity).
Drainage method (diffusivity) - if the diffusivity method is selected, then the drainage region
associated with each well is calculated based on a diffusivity transit time from the well. This
method does not require a well to be flowing and the regions for all wells may overlap. Also,
for this method the diffusivity time is required to be input and the drainage regions may be
updated only at the start of the simulation, or at each time step.
Diffusivity time - the maximum diffusivity time at which blocks are associated with a well.
The larger this value, then the larger the drainage regions. If a negative value (-1) is
selected, then the diffusivity time will be set to the current time step size.
Update - the diffusivity drainage regions are updated every simulation time step. This is
always used if the diffusivity time is set to a negative number indicating the current time step
should be used.
Drainage method (streamlines) - if the streamlines method is selected, then the drainage
region will be calculated every time step, based on the region where flow is towards each
producer (or away from each injector). This is equivalent to the extent of streamlines towards
or away from each well. This method depends on the well production rates and for a shut-in
well, the drainage region consists only of the blocks perforated by the well. One of the
limitations of this method is that the drainage region would change if the rates are changed.
For this method, the drainage regions for all producers do not overlap, and the drainage
regions for all injectors do not overlap.
If the REVEAL model is part of the RESOLVE model, then when generating the IPR's in
RESOLVE, the Drainage Region option specified here in REVEAL will not be considered.
Friction and cross-flow model
Wellbore friction and heat transfer - if this option is selected then an internal diameter and
absolute roughness should be entered for every well segment of the multilateral well
description, whether it is completed or not. This option is only available for multi-lateral well
descriptions. By default he wellbore friction model uses a no-slip frictional pressure drop
model, taking into account a mean density and viscosity at each node within the wellbore.
REVEAL Manual
February, 2011
User Guide
190
Use gas slip flow correlation - if this is selected than a slip flow correlation (Petroleum
Experts 2) is used to calculate the holdup, density and viscosity.
Use Polymer/Gel Viscosity - this option is only available if polymers or gels are present. If
this option is selected, then the aqueous phase mobility will be modified by the current
viscosity model including shear thinning. The shear rate ( ) within the tubing is defined as:
4Q
r3
The effects of polymer and gel within an injecting thermal fracture model attached to the well
are also included. The shear rate within the fracture is defined as:
4u
w
Max Segment Length - this is the maximum tubing segment length used when the multilateral friction model is present. If pipe segments exist that are longer than this length, then
additional nodes will be added to improve the discretisation of the wellbore friction calculation.
Note that excessively short segments may slow calculations with long tubings. A default
value of 100 ft is present.
Cross Flow - a cross flow model is available for any well. It is recommended that crossflow
is used for wells for which a trajectory and wellbore friction has been set using the multilateral well model, otherwise the crossflow fluid will be the combined produced or injected
fluid not taking into account the local fluid within a wellbore. This model is not recommended
to be used in conjunction with fractures, since cross flow within the fracture is not modelled.
Annular Flow - tubing (base pipe) and casing (annular) flow are allowed for multi-lateral
wells. If this is selected, then annular data and ICDs may be modeled.
If cross flow is present, then the well must always remain overall an injector or producer.
This may be important when connecting to GAP through RESOLVE.
Pwf reference depth
The default (top of well tubing) location of the Pwf reference pressure depends on whether
the well is defined by completion table, vertical column or a multilateral. For a completion
table or vertical column, the Pwf is located at the top centre of the first block in the completion
list, whether this block is completed or not. For a multilateral well the Pwf is located at the
first (reference) node.
Alternatively, a reference depth may be entered for each well.
If a reference depth is set that does not correspond to the default (top) reference depth, then
a static pressure drop is calculated from the 'top' node to the reference depth based on the
density estimated at the reference depth.
191
REVEAL
The reference depth pressure is calculated differently for any well model with a deviation
survey and frictional pressure drop calculations (usually termed multilateral well with friction).
For this type of well definition, the first node is the reference start coordinate for the well.
This is usually the top of the completion and may be connected to TPD tables with the same
reference depth. However, occasionally it is desirable to model a well inside REVEAL above
the usual Pwf reference - perhaps to model thermal heat transfer to the overburden. In this
case if the user specified a reference depth below the first node of the well model, then the
pressure inside the tubing at this depth is the desired Pwf, which cannot be calculated with a
static gradient. However, this is solved by ensuring the total system response satisfies the
desired Pwf at the reference depth within the tubing.
In the case where a multilateral well with friction is specified and the reference depth is within
the well trajectory, then the tubing pressure at the first measured depth equal to the reference
depth will be used.
Note that this is the tubing (base pipe) pressure and not the annulus or any other well internal
pressure at this depth.
Also note that the first measured depth is the point inside the tubing at the specified measured
depth closest to the first node - this is required for cases where the well trajectory may have
multiple pressures at the desired reference depth (e.g. multi-lateral or horizontal well).
Lift curve
A PROSPER lift curve (*.tpd) may be imported. Generally it is recommended that the lift
curve is imported and associated with a well in the schedule section rather than in the well
section. This is because a well may change from an injector to a producer in the schedule,
and even if a lift curve is defined in this section, it must be reset in the schedule section. A lift
curve is only required in this section if REVEAL is being controlled by GAP/RESOLVE and the
schedule is effectively ignored. Care should be taken to ensure that the imported lift curve is
of the correct type (e.g. water injector or producer) for the well.
2.3.13.2Filter cake
The filter cake model is applied to wells and fractures associated with water injections.
If this model is being used with wells (as opposed to fractures), then the internal surface area
of the wellbore is used to calculate the filtrate buildup. Therefore, a multi-lateral (deviation
survey) wellbore description is recommended, and the completion table well description is not
recommended unless the wellbore direction (X, Y or Z) is used to define the wellbore. If the
completion table is used and the well direction is not defined, then it is assumed to be vertical,
and the kh (if entered) is used to estimate the well length.
REVEAL Manual
February, 2011
User Guide
192
193
REVEAL
at a constant rate. Additionally, the filter cake thickness should be obtained dynamically as
the test is being performed.
The sample data provided should only be used as guidelines. In general data matched from a
core test is required.
The permeability is obtained from the filter cake pressure drop ( P) and filter cake length (
L).
k (mD )
Q( ft 3 / d ) (cP ) L( ft )
6.3266 10 3 A( ft 2 ) P( psi )
The porosity is obtained from the cumulative water volume passed (W) and the filter cake
length.
Ww
A L1
The permeability-porosity relation should then be fitted to either an exponential or power law.
k
k0 1
or
k0e n 1
c P
Finally a minimum porosity is required that accounts for the maximum filter cake compression
and minimum permeability.
These data are used to calculate the filter cake skin as a dynamic function of cumulative
water injected per unit area and the filter cake pressure drop.
Note that if the maximum porosity is set to one and the power law equation is used for the
permeability-porosity relation then the commonly used compressible filtrate equation is
reproduced.
k
k0 c P
, which is often expressed in terms of specific filtration resistance (r), which is the
reciprocal of permeability r r P .
s
2.3.13.3Fractures
This screen is only active if fracture models is selected in the control section. It initialises the
fracture type (producing or thermal injection), location and initial dimensions.
Further information on rock mechanics and thermal fracturing can be found here: Rock
Mechanics and Thermal Fracturing.
REVEAL Manual
February, 2011
User Guide
194
All fractures have an origin at the centre of a grid block (with coordinates IJK), associated
with a completed well. The fracture then has a two-dimensional shape running down the
centre of adjacent blocks with constant (X, Y or Z) coordinate.
Some general comments about the thermal fracture model are present lower down on this
page.
Fracture list
Use the Add button to add fractures to the model. Select a fracture in the fracture list to alter
its properties or use the Delete button to delete the fracture. The Clear button will delete all
fractures.
Auto Generate Fracture Seed - this option may be used to seed multiple potential fractures
along a well, effectively including most or all perforated blocks. These seed locations will be
flagged as such in the Fracture Position screen as Auto generated fractures.
195
REVEAL
As such, these fracture locations will be tested each timestep and if it looks likely that the
fracture may initiate, then the most promising location will be included in the full fracture
calculations. If a fracture has already propagated into a seed location, then an additional
fracture will not be started here.
This method is intended to help initially with analysing potential fracture initiation, rather than
an automatic option that removes the requirement to consider where fractures may initiate.
Fracture position
Give the fracture a label name or use the default and select a well to be associated with the
fracture. Every fracture must be associated with a well. For both injection and producing
fractures more than one fracture (multi-layer fractures) may be associated with a well.
The location of the fracture origin is then defined. For wells with a completion list or vertical
wells, the completed block number for the fracture is entered. Note that this is the completed
block number and not the layer number. For a multi-lateral well the coordinates of the
fracture centre are input; use the Calculator button to select a completion segment and
interpolate a position along the completion (using either an X,Y or Z coordinate).
The following sketch illustrates a well entered in REVEAL using the "multilateral description".
The blue lines correspond to the well trajectory as the red lines correspond to the completion
intervals. The fracture position (origin) is defined with three geometric coordinates X0, Y0 and
Z0. It has to be within a completed block.
The option "Coordinates Calculator" is used to calculate the three coordinates X0, Y0 and
Z0 by fixing only one of them. The user has to enter the completion interval where the
fracture origin is located (between the two block coordinates [X, Y, Z] and [X', Y', Z']),
clicking on the left boxes as shown below:
REVEAL Manual
February, 2011
User Guide
196
Once the completion interval is selected, one has to enter one of the three coordinates X0,
Y0 and Z0 (say X0).
The other two coordinates (Y0 and Z0) are interpolated, clicking on "Calculate", by the
program which assumes that the fracture origin is situated on the straight line defined by the
two ends of the completion interval.
197
REVEAL
Note that for multi-lateral wells, the fracture origin will be moved from the input position to the
centre of the block containing the input position when the calculation is run. This is because
the fracture origin must be defined at a block centre, since the connection of the well to the
block is defined by reference to the block centre.
Fracture model
Model - three fracture models are available, a 1D analytical thermal fracture model
(Geertsma deKlerk), a finite-element thermal fracture model (3D model) and producing
fracture model. The first two models are thermal injection fractures, where the shape of the
fracture evolves as the fracture propagates, while the producing fracture model has a static
fracture shape, assumed to be sustained by proppant or acid treatment.
Geertsma deKlerk - this model is basically a volume balance model based on a leakoff
correlation. The leakoff and spurt coefficients are the only additional data required for this
model. This model is a single wing model and the fracture origin should be positioned in the
first row of the grid (I=1 or J=1) so that the wing may propagate in the X+ or Y+ direction.
The propagation direction is normal to the minimum principal stress direction.
3D fracture - this model calculates the fracture shape including effects of stress changes due
to injected fluids, elastic fracture opening, propagation depending on rock strength, flow within
the fracture, leakoff rate balancing the well injection rate and Pwf. The propagation direction
is normal dependent on the minimum principal stress direction.
This model may be a single wing (Image ON), in which case the fracture is only calculated on
one wing (X+ or Y+) of the fracture. For this fracture the inflow from the second wing (X- or
Y-) is not added to the grid, therefore this fracture model should always be positioned at the
minimum X or Y coordinate (I=1 or J=1) within the grid. Reported injection rates will be the
total injected by the well-bore, and therefore may be as much as double that injected into the
reservoir simulation model. If the Image OFF option is selected, then both wings of the
fracture will be calculated and the fracture should be positioned within the grid model.
The double wing option is recommended.
REVEAL Manual
February, 2011
User Guide
198
Fixed dimension fracture - this model uses a fixed fracture shape and width distribution to
calculate inflow from surrounding blocks to a producing or injecting well. The orientation of
each fixed dimension fracture may be normal to either the X, Y or Z directions.
The shape of the fracture plane may be rectangular or elliptical. The width at the fracture
origin is entered, and the width profile defined to be either constant (=central value) or
decrease with an elliptical cross-section towards the fracture boundaries.
Additionally, it is possible for the fracture geometry to be completely specified by the user. In
this case coordinates relative to the fracture centre must be entered (105 points in the correct
order), along with the width and permeability for each node.
For the user defined fracture, the node, coordinates, width and permeability are required.
The geometry data will have to come from an external source (or from a previously
calculated thermal fracture model in REVEAL). If only the centre and perimeter coordinates
are specified, then the internal node coordinates required by REVEAL may be calculated.
Additionally smoothing of the coordinates may be performed by equal area or equation
perimeter lengths (recommended).
Double/single wing - If only half of the fracture is defined because the injection well is at the
edge (first row) of the model due to symmetry reason, then the single wing fracture model
1990-2011 Petroleum Experts Limited
199
REVEAL
may be used. In general for almost all applications, the double wing calculation should be
used, this is because confusion can arise from the well rate being double that injected into the
reservoir for the single wing model and there are no performance improvements using the
single wing variant.
Initial dimension - for all three fracture models the initial dimensions of the fracture are
required; a half height above and below the fracture origin and a half length. For the injection
(thermal) fractures, this data is used to describe the initial fracture dimensions arising from
formation damage or naturally occurring fractures. The propagation of a fracture starts when
the well Pwf is large enough to generate a stress intensity at the fracture tip greater than the
critical stress intensity. Prior to propagation initiation, no inflow from the fracture is assumed.
A smaller initial fracture size will require a larger initiating Pwf and hence longer Darcy (well
completion only) inflow time before the fracture is initiated.
Generate fracture text debug data - if this option is selected, then data is output to the text
debug file listing properties at each node on the fracture surface at each time step. This data
may be large and therefore may not be output if this option is deselected.
Fracture properties
Orientation plane - this is the minimum principal stress direction and a fracture will
propagate with a plane parallel to this direction.
Permeability - for the 3D fracture and producing fracture, a two dimensional finite-element
grid is used and explicitly models the fluid flow and pressure drops within the fracture. For
these fracture models, the permeability (k) within the fracture must be defined. Four models
are available, including:
constant permeability
constant conductivity
Fcd (dimensionless fracture conductivity)
parallel plate with user multiplier
The latter two models depend on the fracture width (w), fracture half length (L1/2) and Xdirection reservoir permeability (kx) for the Fcd model, and are defined below.
k
Fcd k x L1 / 2
w
w2
12
REVEAL Manual
February, 2011
User Guide
200
Heat flux function - this describes the temperature profile within the fracture, and is basically
a power law correlation with a value of 1 corresponding to a linear temperature profile.
Fracture skin - this may be included for this model, reducing injectivity with a positive value.
Non-Darcy beta factor - this may be entered for gas producing fractures, the pressure
gradient, gas velocity within the fracture is modified as follows:
2. In Metric Units
Therefore, if a beta factor corresponding to the metric units is obtained from correlations, it
will be needed to correct it to enter it in REVEAL in field units by dividing it by g, as illustrated
below:
This is the same concept than when considering a head calculation in metric and field (i.e.
from lb/mass to lb/force).
Leakoff and spurt coefficients - these parameters are required for the Geertsma deKlerk
1990-2011 Petroleum Experts Limited
201
REVEAL
February, 2011
User Guide
202
1] The stress field tensor within the reservoir is calculated in the minimum principal direction
defined by the user. The stress field within the reservoir is calculated at any time step from
the prevailing temperature and pressure distribution, the initial stress distribution, poro-elastic
and thermo-elastic stress reduction parameters.
2] Given the stress field acting to close any fracture, the pressure and width distribution with a
fracture of fixed perimeter dimension is calculated using an elastic stress-strain relation
coupled to the flow within the fracture and leakoff to the reservoir matrix. This is coupled to
the injection potential of the well. The elastic properties required for the fracture include
Young's modulus and Poisson's ratio.
3] The fracture perimeter is adjusted by an iteration procedure to satisfy the fracture
propagation criteria that the stress intensity on the perimeter is equal to the critical stress
intensity entered by the user.
For the thermal fracture model, a two-dimensional finite element grid is used and coupled with
the overall three-dimensional finite difference main model grid, as illustrated below for a
vertical fracture.
This finite element grid explicitly models the fluid flow and pressure drops within the fracture,
and is characterised by triangular internal elements and quadrilateral boundary elements.
203
REVEAL
The fracture properties are controlled by both pressure, temperature and flow variations near
the wellbore. The model is based on the calculation of the effects of the pressure distribution
variation due to injection, the stress applied on the fracture surface and the rock elastic strain.
The following parameters can therefore be considered in the fracture model:
REVEAL Manual
February, 2011
User Guide
204
The following relation will be used to balance a stress-strain integral equation over the surface
of the fracture:
P - = strain(w)
The parameters included in this equation are affecting the fracture as follows:
a) The pressure is acting to open the fracture and the stress is acting to close the fracture. It
will be a function of both pressure and temperature. The stress value taken into account will
not be referring to the specific pressure and temperature at the exact point considered, but to
the pressure and temperature distributions within the system. For instance, as the stress is a
function of rock expansion, it will be lowered if the temperature drops. Therefore, if the point
at which the stress needs to be estimated is surrounded by a cool area, the stress value at
this specific point will depend on the extension of this cool area.
b) The pressure distribution will be a function of the flow behaviour within both the fracture
(Qfrac) and the matrix (Qleakoff). The leakoff will be strongly dependent on the fracture size,
reservoir and fracture pressures and the mobility of injected fluid, which is strongly
temperature dependent through viscosity. The pressure distribution will then be function of
the ratio between the flow within the fracture (i.e. which will tend to open the fracture) and the
leak off flow (i.e. which will tend to decrease the fracture propagation capacity).
c) The injected fluid (Qinj) and central pressure (Pwf)/temperature (Twf) will be dependent on
the injection VLP and the fracture leakoff properties.
1990-2011 Petroleum Experts Limited
205
REVEAL
d) The fracture tip stress intensity represents the resistance of the reservoir medium to the
fracture propagation. It will be a function of fracture width (i.e. strain): effectively, as the
width of the fracture increases, the stress applied on the fracture focuses on the tip of the
fracture, and will tend to propagate the fracture.
To investigate accurately the initiation and propagation of the fracture, it will be needed to
have a relation between the well flowing bottom hole pressure and the well injection rate: it
will be needed to have a well VLP.
Effectively, the following Pwf vs. Qinj diagram can be drawn:
Therefore, for the pressure initiation, it will be needed to have a high flowing bottom hole
pressure, therefore linked to a low injection rate. However, it will be necessary as well to
reduce the stress as much as possible by cooling the near wellbore area. However, in order
to cool the near wellbore area, a high injection rate will be needed. Therefore, the fracture
propagation conditions would be a balance between flowing bottom hole pressure and bottom
hole temperature.
REVEAL Manual
February, 2011
User Guide
206
Propagation condition
K Ic
Pf
Lf
Width and length equations - the width of the fracture at its widest point (ww) (injection
site) and the fracture half-length are related to the total fracture injection rate (Qf), leakoff
rate (QL), leakoff (C) and spurt (SP) coefficients, time (t), half-height (h), and history of the
evolving fracture area (A(t)). Basically, this model is a material balance model, where the
changing volume of the fracture is the difference between the injected and leakoff rates. The
volume of the fracture is a function of its length and central width, which in turn are related to
the elasticity and tensile strength of the rock for a given internal pressure.
Elastic strain relation describing fracture shape
2(1 )
L f ( Pf
G
ww
Qf
QL
Sp
A
t
hL f ww
and
4L f h
Leakoff equation
t
QL
0
C
t
dA
d
d
G is the shear modulus and defined by Young's modulus (E) and Poisson's ratio (v).
207
REVEAL
E
21
These equations are solved for the fracture pressure and leakoff rate for an input total
fracture injection rate. The result depends on whether the fracture is propagating or not. The
fracture pressure is then coupled to the injection lift curve, finally after iterations returning a
consistent total injection rate Q=Qf+Qw.
2.3.13.53D fracture
Both single-wing and complete (double-wing) fractures are possible using this model. A finiteelement grid is introduced, with triangular internal elements and quadrilateral boundary
elements. The fracture is therefore approximated by a 2D plane with fracture widths defined
over this plane.
A skin (S) may be defined for the fracture. The mobility connection factor (M) for a grid block
intersecting the fracture with an area of intersection (A) and pressure drop ( P) between the
fracture and grid block is calculated assuming linear flow in the a normal direction (Y direction
in equations below) away from both sides of the fracture.
Q
M
1 S
Ky
kr p
A filter cake may also be defined using a user specified filter cake parameter (F). The filter
cake skin is dependent on the cumulative throughput of injection water into each matrix block
(qcum) .
S
F q cum
Y A
k rock
k skin
and
where C is a constant describing the volume of the filter cake layer per unit volume of injected
water, and krock/kskin is the ratio of rock permeability to filter cake permeability.
Internal pressure width equation - the pressure and width within the fracture are related by
the following equation.
(P
)( x, z )
G
4 (1
1
( )
R
w dA
(x
x )2
(z
z )2
G is the shear modulus and defined by Young's modulus (E) and Poisson's ratio ().
REVEAL Manual
February, 2011
User Guide
208
E
21
Singularities are dealt with analytical expressions on the internal triangular elements. On the
outer quadrilateral elements, it is assumed that w a , where a is the distance from the tip
and w=0 on the outermost boundary.
The critical width (wc) at which the fracture will just propagate is defined at a small fixed
distance (a) from the fracture tip such that the stress intensity at the tip is equal to the critical
stress intensity for the rock (KIc).
4 K Ic 1
G
wc
a
2
The critical stress intensity KIC represents the additional pressure ( P above the minimum
principal stress) required to open a fracture sufficiently to propagate. For an initial fracture
size (a) of 1 ft (default value), this results in the following approximate relation for initiation
over-pressure.
P = KICsqrt(18/ a), where P is in psi and KIC is in psi.ft1/2
When a = 1 ft, DP = 2.4 KIC. This relation may be used to enter an appropriate (KIC), if only
the initiation pressure (DP) is known.
Incompressible fluid fracture flow equation - the flow and pressure within the fracture are
related to the fracture leakoff rate.
w2
12
h
)dV
144
(P
M (P
P mat )dA
wdA V0
tf
Qf
Qf is the total fracture injection rate, added at the central node of the finite-element grid.
Volumetric storage rate within the fracture is included, reflecting the volume increase
of the fracture since the previous fracture update t f .
wdA V0
Finite-element equation - the fracture width and leakoff equations are written in finiteelement form.
Finite-element width equation
Wij w j
Pi
hj
144
) Lij M j ( Pj
P mat j )
Lij w j
V0 i
tf
Qi
Solution method - the finite-element equations are combined and solved iteratively for the
fracture widths using the Newton Raphson method.
Fi ( w j )
J ij
where
wi
wi
Fi
wj
J ij F j
The finite-element fracture width solver is supplied with a total rate (Qf), and the shape of the
fracture is iterated on until a consistent shape is found with the stress intensity at the fracture
1990-2011 Petroleum Experts Limited
209
REVEAL
tip equal to the critical stress intensity (KIc) for the fracturing rock. The pressure at the
centre of the fracture (Pf) is returned and a top level of iteration is performed to ensure that
Qf and Pf are consistent with the total well rate (including flow directly from the well into the
rock matrix) and the bottom hole flowing pressure (Pwf).
Note that for a single wing fracture only the flow from the well completions and one wing of
the fracture are injected into the grid. However, the total well rate and Pwf must be defined
for both wings of the fracture. The result is that the reported injection rate (well and one
fracture wing) may be as little as 50% of the total well injection rate entered in the schedule.
Stress calculation - the stress on the fracture surface is calculated from the in-situ stress
field ( insitu) and poro/thermo-elastic stress reductions ( P &
T). The in-situ stress is
defined by the user as a function of depth or by horizontal layer.
The Goodier displacement method (default) was provided prior up until IPM6 build 130, and is
still available for reference purposes. It assumes zero displacement on the model boundary.
While this model works well for most cases, an alternative model (Oedometric displacement)
is now provided and has some advantages.
1] It allows vertical strain displacement and therefore is able to calculate compaction.
2] Due to its formulation it handles grids with complex regions of inactive blocks better.
3] It better handles cases where the stress changes suddenly (e.g. due to producer changing
to injector).
4] Due to the vertical strain calculation included, it better handles horizontal fractures where
the vertical stress changes are important.
Goodier Displacement potential
The poro and thermo stress reductions take a similar form and the equations used were
obtained from Koning [Ref 18].
insitu
insitu
yy
The Goodier ( ) displacement potential is first calculated over the entire FD (finite difference)
grid by solving Laplace's equation.
2
where
1
E
P
Ap P
Pinitial
AT T
and
Treference
February, 2011
User Guide
210
X or Z direction.
2
E
yy
Ap P
y2
AT T
2
G )d
3
2G
AP P
where
E
21
31 2
AT T (1 v) /(1 2v)
and
2
2
z2
The change in strain and stress is then calculated (for example in the y direction):
y
yy
2
G )d
3
(K
and
Note that
AP (1 v) /(1 2v) is
2
v
2G
y2
AP P
AT T (1 v) /(1 2v)
Biot's coefficient.
Note that this displacement potential equation reduces to the Goodier displacement potential
described above, when top surface strain (compaction) is disregarded.
The reported (3D graphics results) compaction is the integral of vertical displacements ( z)
from the bottom upwards. Also, the vertical displacements are shown with a positive
displacement being downwards.
These methods are effective for thermal fracturing only once the cooled region is at least the
same size as the grid blocks being used. An analytical model for fracture initiation and
propagation within the fracturing block is used. The simplified model was derived from
references [Refs 9, 12, 14, 22]. An estimate of the cooled and flooded region radii are
calculated from the total downhole volume of injected water (W).
Cooled region radius
Vcooled
Cp w
Cp
rcooled
3Vcooled
4
W
1
Sr
r flood
3V flood
4
211
REVEAL
The pressure and temperature distribution within the cooled and flooded regions are
estimated as a function of radial distance (r) from the fracture centre. These simple
approximations assume that the temperature and pressure are at a mean between the
injection and reference/initial conditions at their respective cooled/flooded radii.
Cooled region temperature
Tcooled
Tinj
Tinj
Tref
r
2r
ln(
cooled
Pflood
Pinj
Pinj
Pinit
2 ln(
r
)
rw
r flood
rw
The thermo-elastic and poro-elastic stress reductions on the fracture surface within the
fracturing block are then calculated, assuming a 'circular' shape function of 0.5.
yy
0.5 AT Treference
Tcooled
AP Pinitial
Pflood
As the fracture extends beyond its initial block, the stress reductions calculated using the
Goodier displacement potentials are interpolated onto the 2D fracture surface. For this
interpolation, the stress reduction for the fracturing block is calculated using the simple model
above with the cooled temperature set equal to the injection temperature (Tcooled=Tinj), and
the flooded pressure set equal to the block average pressure (Pflood=Pblock). Note that this
stress reduction is only applicable once the fracture has grown beyond its initial block.
Implementation - the two-dimensional finite-element (FE) fracture grid described above is
coupled to the three-dimensional finite-difference (FD) main grid. The FE grid is located down
the centre-line (constant Y) of the FD grid. The origin of the fracture is located at the centre
of a FD grid block.
The FE grid has internal triangular and quadrilateral elements on its boundary. The size of the
elements may vary as the fracture propagates, although their topology remains constant.
Variables are defined at the nodes of the grid. These variables include the fracture width,
internal fracture temperature and pressure, fracture surface stress, and derived quantities
such as injection water density and viscosity.
The FD grid has hexahedral elements, which have fixed size. Variables are defined at the
centre of the grid blocks and represent volume average properties, and therefore are
dependent on the grid block dimensions (especially near an injection source, where the spatial
variation of physical properties such as pressure and temperature are far from linear).
Relevant variables include pressure, temperature, permeability and phase mobilities.
Some variables are required on both the FD and FE grids and linear interpolation is used to
transfer properties from one grid to the other. The FE grid basis functions are used to
interpolate to the FD grid, while interpolation from the FD to the FE grid is performed using
bilinear interpolation of four values at FD grid block centres.
The temperature within the FE fracture grid is set using the following formula (Meyer).
1 x 1
T
Tinj
Tmatrix
1 x
2
2
2 1
where x is the fractional distance from the centre of the fracture to its tip, and
REVEAL Manual
is a user
February, 2011
User Guide
212
specified heat flux coefficient. Note that the temperature at the FE grid nodes is not a
function of the grid shape or area, since x remains constant as the grid grows.
The displacement mobility ( (kr/ )) of fluids within the FD grid is calculated using the FD grid
temperature, pressure and phase saturations. These are merely the mobilities used for the
flow within the FD grid. The previously injected water displacement mobility (calculated as a
water blocking fracture skin) uses the internal fracture temperature (FE grid) and FD grid
pressure to calculate the water viscosity with the water phase relative permeability end-point.
The thickness of the water blocking layer is calculated from the total volume of water
injected.
Finally, once the fracture shape, pressure and total rate have been calculated, the resulting
fracture is connected to the FD grid as a set of 'connection factors' and a constant rate
injection. The connection factors are calculated by considering the total flow from the FE
fracture grid to each FD grid block intersected by the fracture. Once the volumetric rate into
each FD grid block is calculated, the connection factor for that block is simply the rate divided
by (Pf-Pi), where Pf is the internal fracture pressure and Pi is the FD grid block pressure.
Several FD grid time-steps may be taken before the fracture is updated again. The
connection factors (and rate) remain constant during these time-steps, resulting in the Pwf
increasing until the fracture shape is updated again.
2.3.13.6Stress & elasticity
This screen is only available if thermal fractures are present and defines the mechanical
properties of the rock to be fractured and the initial in-situ stress.
213
REVEAL
Stress
Stress value at temperature - an initial reference stress and reference temperature are
input. If an optional temperature is not specified, then the reference temperature will be
assumed to be the initial temperature for each grid block.
Also, the reference pressure is set to be the initial pressure within the block. Therefore the
initial stress should equal the in-situ stress entered.
Depending on the stress layering method selected (below), the initial stress value may not be
required.
Stress model - the Goodier (zero boundary displacement - default) and Oedomentic
(includes vertical compaction) models are available - see 3D fracture model description for
more details.
Overburden depth - an analytical model for overburden compaction coupled to the numerical
REVEAL Manual
February, 2011
User Guide
214
AP
and
cg
1 2
cb
E
is Young's modulus
is Poisson's ratio
P is the linear poro-elastic expansion coefficient
cg
is the matrix grain compressibility
cb
is the bulk matrix compressibility
E
cg
cb
3.8
E
T
Select the variable to entered, then select Add to enter data. Different data may be entered
for different vertical layers (Z increasing with depth), or the All button may be used to enter
the same data for all layers. Select a layer from the layer summary table to modify the data
or Delete the layer. The variable will turn from red to green when all of the data is entered,
or use the Validate button to check all required data has been input.
Set Defaults - this will set some nominal default values for stress properties and stress
layering, where no data has yet been entered.
It is possible to switch between two data entry modes for the poro and thermo-elastic
coefficient. If the Poro and Thermo coefs option is selected, then data for AP and AT are
1990-2011 Petroleum Experts Limited
215
REVEAL
entered. If the Biot and thermal exp coefs option is selected, then and T are entered.
Since the conversion between these input types requires Poisson's ratio and Young's
modulus, some checking of the conversion should be made in cases where data is entered for
multiple layers.
Stress layering
Four methods to modify in-situ stress by depth and layer are available.
Using the first two methods, a stress increment term may be added to the reference stress
as a function of layer or depth. Enter a top and bottom stress increment at the top and
bottom limit of each layer or depth range entered. This may be used to define stress barriers
or a vertical stress gradient. The increments need not be continuous (i.e. the bottom of one
layer need not be the same at the top of the layer immediately below). Note that if layer
stress variations are used, then data for each layer should be included if there are inactive
blocks within the grid.
Using the second two methods, the stress within a layer or by depth is calculated from a
stress offset, its true vertical depth and stress gradient (the in-situ stress simply being equal
to the offset + gradient * depth). In this case, the initial reference stress is not used.
A fracture will tend to propagate from its origin into low stress regions. To minimise large
distortions to the finite-element grid the in-situ stress field should be reasonably smooth (and
not a high stress barrier) at the fracture origin.
Generally we recommend using stress varying with depth or gradient, since this does not
cause potential problems with inactive layers within a model. Inactive layers (porosity zero)
have no data associated with them, therefore interpolation of stress when inactive layers are
present may be inaccurate.
In addition to defining the insitu stress profile in the three principal directions (X, Y and Z) is is
required to specify a stress profile for inactive regions and external regions. These are the
minimum principal stress to be applied when a fracture grows outside the gridded system.
Inactive regions refer to any inactive blocks that are either internal to the grid or located on
the side of the grid.
External regions refer to any inactive blocks that are located either above or below the grid.
Example - the following may be used as a guide to estimate stress layering.
Assume an initial reservoir pressure gradient of 0.45psi/ft for a naturally pressured reservoir
and vertical stress gradient (sv) of 0.9 psi/ft.
For depth z, the vertical stress is then sv = 0.9z psia, and the effective vertical stress sveff =
sv-P = 0.9z - 0.45z = 0.45z psi.
Poisson's ratio (v) may be used to estimate the effective horizontal stress using sheff = v/(1v) sveff. If v = 0.25, then sheff = 0.15z psi, hence sh = sheff + P = 0.6z psia.
REVEAL Manual
February, 2011
User Guide
216
If we set the horizontal stress gradient to 0.6psi/ft, the horizontal stress offset required is
0psia such that sh = 0 + 0.6 z.
The heating model applies a microwave frequency voltage across two points on a well and
1990-2011 Petroleum Experts Limited
217
REVEAL
calculates the heating effect within the reservoir, which in turn will reduce the viscosity of
heavy oils. The voltage generated (V) within the reservoir is calculated on the finite difference
grid used for the flow equations by solving Laplace's equation with boundary conditions V=V0
on the electrode, V=0 on the earth electrode and no voltage flux on the boundary of the grid.
V
The heat supplied to the grid (W) is then calculated from the voltage field.
W
Resistivity
Rw is the water resistivity and is calculated using Arp's law, or input as a table of values as a
function of temperature.
Rw
Rref
Tref
T
C
C
Sw
aR w
where
is the porosity, a is the lithology coefficient, m is the tortuosity (cementation)
coefficient and n is the saturation exponent. The lithology coefficient, tortuosity coefficient and
saturation exponent may be entered for multiple regions of the grid, defined by ranges of
blocks. See the reservoir section for information on how to add range data. Use the
Validate button to check coverage is complete.
Archie's law is applied up to the boiling point of water defined by T=0.08329742*P+458.76
(F); once this temperature is reached, the conductance is set to zero and the lithology
coefficient set to 1E6 to make the loss of conductance virtually irreversible.
REVEAL Manual
February, 2011
User Guide
218
Region List
This selects the region to be initialised. All regions must be initialised.
PVT Files
Select the PVT file to be associated with the current region. The PVT files may be added to
or viewed. Generally, the PVT files are entered within the physical section.
RS - Gradient
This section is optional and can only be entered if the 'Variable Pb' option has been set for
the PVT. The 'Variable Pb' option provides the possible for multiple saturated oil tables and
a variable initial RS. The initial RS versus depth should be entered within this table. If this
table is not set, then a default Rs will be obtained from the PVT data entry screen. The table
is not extrapolated so sufficient depth range should be entered.
219
REVEAL
Temperature & Rs or Pb - this may be used to switch between Rs and bubble point for data
entry purposes. The data is always stored internally as Rs. The temperature is required to
enable the conversion between Rs and Pb for thermal PVT cases.
2.3.15.2Equilibration
This section initialises the reservoir for each equilibration region specified within the reservoir
section. Each equilibration region must have only one PVT, i.e. equilibration regions must be
a subset of the PVT regions.
The equilibration includes pressure and contact (oil/gas water/oil or water/gas) depths. The
pressure and contact depths are use during the initial reservoir equilibration to assign initial
pressures and saturations to all grid blocks.
Region List
This selects the region to be initialised. All regions must be initialised.
REVEAL Manual
February, 2011
User Guide
220
Reference depths
One reference pressure is required at a reference depth for each equilibration region.
If a gas/oil contact is to be defined then the reference pressure will be the bubble point
pressure and does not require to be entered.
If an oil/water or gas/water contact depth is defined, then the reference depth and pressure
are only required if there is no gas/oil contact.
If no contacts are present, then a reference pressure and depth should be entered. Although
the reference depth can take any value, it should generally lie within the reservoir. If a GOC
is then calculated during equilibration then a gas cap will be present.
Thermal gradient
The thermal gradient must be entered for each equilibration region.
The reference
temperature is the temperature at the temperature reference depth, and the gradient is the
initial thermal gradient (increasing with depth).
Initial wettability
The initial wettability is only required for models with relative permeability desaturation
controlled by adsorbed wetting agent. This model is enabled in the control section. A value
of -1 corresponds to initial low tension relative permeability, while a value of +1 corresponds
to initial high tension relative permeability. Intermediate values are possible and correspond
to intermediate (interpolated) desaturation.
Start status
Generally the model is initialised by equilibration using the specified contacts and initial
pressure defined in this section. If restart files are present within the REVEAL archive, then
these may be set using the 'Set Restart' option. Whenever, a REVEAL simulation is run, the
initialisation conditions specified will be used. The main menu option Run Simulation|Restart
Simulation... may still be used to over-ride the start conditions specified.
Additionally, the initial pressure, saturation, Rs and temperature may be explicitly specified. If
this option is selected, then the initial conditions will not generally be in equilibrium and
significant initial transient behavior may be expected.
It is possible to populate the user initialisation from a running simulation. At any time during a
simulation (e.g. at the start), the simulation may be paused and the user specified initial data
may be initialised from the main menu using the option Run Simulation|Generate a User
Restart Step. The user initialisation data may then be modified as required to alter some
initial values. To do this a time step must be completed - use the Do one step option to
completed a paused time step.
221
REVEAL
2.3.15.3User initialisation
This section is only available if user initialisation is specified in the equilibration section.
Data may be entered by selecting the <No Data> button, where either range or array data
may be entered. If any data is entered, then it should cover all active blocks within the model.
See the reservoir section to get information on how to use the range and array selection
methods.
The optional Reference conditions represent the pressure and temperature of the reservoir at
its initial equilibrated state (not the restart conditions). These are only used for rock mechanic
studies, where the insitu stress is defined relative to these conditions.
2.3.15.4Component initialisation
This screen is only available if more than three components (water, oil and gas) are present.
The initial concentrations of the trace components in their initial phase (aqueous phase for
most components) in mass fraction (component mass per unit mass of host phase).
REVEAL Manual
February, 2011
User Guide
222
Component concentrations
Select a component and enter its initial concentration. The concentration may be defined over
a number of range regions or for each grid block (array). See the reservoir section to get
information on how to use the range and array selection methods. Use the right mouse button
within the concentration input cell to toggle units between kg/kg and ppm.
Component Porosity Exclusion Function
This optional method may be used to modify a component's transport by effectively trapping it
in lower permeability blocks. The model is precisely the same as the sand trapping model
with a unit trapping efficiency and no permeability reduction. For example a gel component
may be excluded from entering low permeability blocks.
Electrical neutrality
223
REVEAL
Only used for water chemistry models, where electrical neutrality is required (all ions except
e-). Neutrality will be maintained internally by adding or removing the ion pair defined in the
water chemistry section, but the electrical neutrality of the initial concentrations of ions
entered may be tested and modified (usually by adding or removing H+, Na+ or Cl- ions) after
using the Calculate button. Alter the tolerance parameter to view the grids with charge
imbalances greater than a defined limit. Generally the electric neutrality should be better than
0.05 charge/mole for all grid blocks. If the water is not electrically neutral, then this is a
strong indication that there has been a data entry or other error with the data.
REVEAL Manual
February, 2011
User Guide
224
Schedule list
This lists the schedules that will be applied in chronological order. Select a schedule, then all
of the remaining data entered on this screen is applied separately for each schedule entered.
Cycling of Schedules / Loops
It is possible to set the simulation to cycle over existing schedule entries in the list for a given
amount of time or until a constraint is breached. This is potentially useful for applications such
as WAG injection or polymer treatments. To create a cycle, select the Add or Insert
Sched./Cycle button. If there is more than one schedule prior to this in the list, you will be
given the option to create the new schedule as a cycle. Select from the list boxes the start
and end points of the cycle. REVEAL does not allow nested cycles, or cycles over schedule
entries that have conditional exit conditions (e.g. exit when water cut exceeds a certain value).
This is reflected in the validation of the list box entries. You may, however, enter a
conditional exit condition on the cycle itself.
225
REVEAL
Add Sched./Cycle - Add a schedule or cycle existing schedules at the end of the current list
of schedules.
Insert Sched./Cycle - Insert a new schedule or cycle existing schedules immediately before
the currently selected schedule.
Delete - Delete the currently selected schedule or cycle.
Clear - Delete all of the schedules. If this is accidentally pressed, then Cancel the wizard to
prevent the deleted schedules from be saved.
Import from file - Schedules may be imported from an ASCII file with the following format, all
data is imported in the prevailing REVEAL units. The keywords are in capitals and the
names/values should replace lower case fields. The liftcurvename is the well liftcurve label
entered in the well section (the liftcurve must be already present in the REVEAL model). This
import method is largely superseded by the history method described below.
WELL wellname CLOSE
WELL wellname PRODUCE WRATE fixedwaterrate
WELL wellname PRODUCE GRATE fixedgasrate
WELL wellname PRODUCE ORATE fixedoilrate
WELL wellname PRODUCE OWRATE fixedliquidrate
WELL wellname PRODUCE PWF fixedPWF
WELL wellname PRODUCE THP fixedTHP
WELL wellname WATINJ RATE fixedwaterrate
WELL wellname WATINJ PWF fixedPWF
WELL wellname WATINJ THP fixedTHP
WELL wellname GASINJ RATE fixedgasrate
WELL wellname GASINJ PWF fixedPWF
WELL wellname GASINJ THP fixedTHP
WELL wellname LIFTCURVE liftcurvename OILNOLIFT
WELL wellname LIFTCURVE liftcurvename OILGASLIFT
WELL wellname LIFTCURVE liftcurvename OILESP
WELL wellname LIFTCURVE liftcurvename WATER
WELL wellname LIFTCURVE liftcurvename GAS
The time to the end of the current schedule, equivalent of the until statement, this follows the
well control to be applied for the schedule:
TIME time
(The time must be specified in the number of days since 01/01/1900)
The last schedule should be indicated by a STOP keyword:
TIME time STOP
As an example, consider that the following schedule is to be entered in REVEAL:
REVEAL Manual
February, 2011
User Guide
226
(31/03/2007 = 39171 days since 01/01/1900; 01/01/2008 = 39447 days since 01/01/1900;
01/01/2009 = 39813 days since 01/01/1900)
View History - A well history may be imported or set up using this button. The history is not
applied to the schedule until the 'History->Schedule' button is used.
History->Schedule - Views the well history, allowing it to be modified or imported, then
converts the history into a schedule. Any existing schedule is first deleted. The history as
well as the simulation results will be available to be viewed for comparison purposes during
and after the simulation is completed by viewing the well results.
More details on the history screen may be found below.
Restart file
A restart file may be generated at regular intervals or not generated at all. If a restart file is
generated it may overwrite the previous restart file or be added to a list of restart files.
It is recommended that for most models the restart files are suppressed. A restart file may
be generated interactively at any time during a calculation by pausing the simulation and using
the menu option Run Simulation|Generate restart step. If the simulation pauses before the
current time step is completed and the restart option is unavailable, use the Run Simulation|
Do One step command to complete the time step. The list of restart files may be viewed or
deleted using the menu option Project|Edit view project.
227
REVEAL
Suppress - When the Suppress feature is unselected, REVEAL will save the Restart files.
Restart file type - three types of restart files are possible.
The STANDARD (default) restart file stores only the data required to perform a restart and
should be used under most circumstances.
A DEBUG restart file stores all current data structures (including workspace) and may be
very large and slow to write; the debug restart files should only be used for the fracture IPR
calculations or for diagnostic reasons if requested by Petroleum Experts.
A BASIC restart file, which just contains the block pressures, saturations, Rs and
temperature and will occupy the least space.
Interval - set the time interval at which restart files are created. If there is no value defined
for the Interval REVEAL will save the Restart file at each time-step. If there is a particular
value defined in the Interval section, then REVEAL will save the restart files when the current
time since the last save exceeds the value entered.
A value of 0 generates a restart at each time step.
A value of -1 generates a restart only at the end of the current schedule.
Overwrite - select this switch to continuously overwrite restart files as the simulation
proceeds. If this option is used, then only the last restart file will be available.
Deleting Restart Files - It is possible to delete some of the Restart files by clicking on
Project | Edit / View Project. The list of Restart Files are displayed in this screen and if
required can be deleted from here.
Step size setup
This section sets the initial time step control and data entered is dependant on the solver
options (IMPES or implicit) used.
The first schedule must have an initial time step size, this should generally be set to a small
value, that will increase as the simulation progresses, this prevents a potentially large number
of retrys at the start of the simulation where transient behaviour may be severe. Subsequent
schedules may also have initial timesteps set, but this is not necessary.
General limits
The maxdt and mindt are minimum and maximum time step sizes and should not generally be
set. Sometimes the maximum time step size may be set to increase temporal resolution.
The limdT and limdP options are limits on temperature and pressure change during a time
step. Again these options should not generally be set, except in cases where rapid changes
in temperature or pressure are generating instability in the solutions obtained (e.g. large
oscillations in thermal fracture behaviour).
IMPES specific limits
REVEAL Manual
February, 2011
User Guide
228
The volumetric error is the principal time step control parameter for the IMPES solver. It is
recommended that a value 1E-3 with 5 iterations or 1E-4 with 5 iterations is used. The
material balance volumetric error is defined as the fractional volumetric error at the end of the
time step (i.e. difference between porosity and total volume fraction of fluids present within a
gridblock calculated using the pressure and temperature at the end of the time step). A
smaller tolerance for the volumetric error may result in smaller timesteps and require more
solver iterations. Material balance iterations are not used with the implicit solver, which only
generates material balance errors as a result of explicit thermal effects and incomplete
convergence.
The saturation overflow limit is only required for the IMPES solver, and limits saturation
changes near the residual saturations of fluids, preventing undershoot in saturation
(saturations below the residual saturation). The default value is 0.01 and may be reduced to
0.001 in cases where very mobile phase saturations are oscillating near the residual
saturation (e.g. production below the bubble point). A reduction of this limit will result in
smaller timesteps being used and slow the simulation to improve stability.
The limit dC option only applies to the IMPES solver and sets a limit on the fractional change
in trace component concentrations within a time step. This option should generally not be
used. It may be applied to reduce timesteps near large concentration gradients to limit
numerical dispersion in some models.
Well schedule
Data is entered for each well by selecting the well in the list and selecting the well to be
closed, producing or injecting.
Closed
This well plays no part in the simulation. If crossflow is required for a well that has zero rate,
then set the well as a producer with zero rate.
Produce
A producer well, may be set as fixed PWF, fixed rate, fixed THP or fixed downhole rate. A
fixed rate well may be fixed liquid (oil+water), fixed oil, fixed water or fixed gas rate.
Inject
An injector well, may be set as fixed PWF, fixed rate, fixed THP, voidage or fixed downhole
rate. A fixed rate well may be fixed liquid or fixed gas rate, depending on the fluid defined
using the Injection fluid button.
A voidage injection well has a voidage fraction defined. This voidage fraction refers to the
reservoir volume removed by one or more producers. The producers relating to the entered
voidage fraction as set up using the Voidage wells button.
229
REVEAL
For an injection well, the bottom hole temperature and composition must be entered. If an
injection curve generated by PROSPER has bottom hole temperature data, then this may be
used by selecting the Use TPD Temp option. Use the Injection fluid button to set the
injector as water or gas and set the concentration of any trace components in the injection
fluid. Electrical neutrality for ions present in the injection water for water chemistry
calculations can be checked. See the initialisation and water chemistry sections for more
information. Generalised liquid (oil+water injection) or generalised gas (gas+water injection)
may also be defined. It should be noted that the 3-component PVT describing the water, oil
and gas properties is used for all injection and reservoir fluids. Therefore an injected gas is
always identical to a produced gas.
The relative permeability model for the injection must also be set. The options are:
1. Standard (the default model). In this case, the fluid mobility for a connected grid block is
given by the sum over phases of the rel perm for that phase divided by its viscosity.
2. End point. The relative permeability used will be the end point of the rel perm curve for the
injected phase.
3. Fixed. Enter a fixed value for the relative permeability that will be used in injection.
Options 2 and 3 are not available if wellbore friction or well cross-flow are being modeled due
to the possibility of multi-component injection.
If the injector has a filter-cake defined, then it may be cleared at the start of the current
schedule by selecting the Clear Filter Cake option. When the filter cake is cleared (an
assumed acid treatment), the model is returned to its initial state and filtrate will build up from
zero again as the injection proceeds.
Tubing Source
REVEAL Manual
February, 2011
User Guide
230
If a well has been defined as a multi-lateral with wellbore friction, then it is possible to use this
option to inject an additional fluid (e.g. diluent) into any location within the well (tubing or
annulus). The injection control must be of fixed pressure or rate (liquid, gas or reservoir) and
fixed temperature (or heat for steam). A negative injection rate will result in fluid removal.
A well segment is defined within the multi-lateral well data entry, with each row of data entry
representing sequential segments. The source is added at the end of the given segment.
The total well rate reported is the rate entering or leaving the reservoir. The rates set using
this method are in addition to the main tubing rate set in the main well schedule control
window.
A source with an undefined (blank) rate is deleted.
The Source Number refers to the possibility of multiple sources defined within the well.
Tubing Pump
231
REVEAL
If a well has been defined as a multi-lateral with wellbore friction, then it is possible to use this
option to apply a pump performance curve within any segment of the well (tubing or annulus).
For an injector the pump head is generated from heal to toe (i.e. in the presumed direction of
flow), and reversed for a producer.
A pump attached to a well is deleted if the Lateral Segment is set to None. The pump
characteristic curve is only deleted when the Delete Pump option is selected. Use Add
Pump to create a new pump characteristic curve. A pump characteristic may be used for
more than one pump in different schedules.
The characteristic pump type name may be changed by editing it in the Pump Type dialogue.
The Pump Number refers to the possibility of multiple pumps defined within the well.
The following schematic shows possible methods to inject using tubing and annular flow.
REVEAL Manual
February, 2011
User Guide
232
Lift curves
For any control mechanism (required for Pws control) a lift or injection curve may be
associated with the well. Use the Import button to import the lift curve. Ensure that the curve
type (e.g. Oil - naturally flowing for an oil producer or Water injector for a thermal fracture
well) matches the well. A label name may also be given to the lift curve. The lift curve should
cover the full range of possible condition (GOR, water cut, rate etc.) for the model being
investigated.
Previously imported lift curves may be assigned to several wells without re-importing the lift
curve.
Constraints
Use the Constraints button to enter constraints or abandonment conditions on the well.
If an constraint is violated, then the control will change. For example, if a maximum Pwf is
exceeded for a fixed rate injector, then the control will switch to fixed Pwf injector until the
rate rises above the initial rate and the Pwf falls below the constraint when it will revert to
fixed rate.
If an abandonment condition is violated, then the well will be closed, with no cross-flow.
Perforations
For wells that have completions defined by completion table or vertical well (not multilateral)
use the Perforations button to enable/disable or modify the perforation properties.
This option is only partial in its implementation, and it is therefore recommended that if
perforations are scheduled to change then multiple wells representing the different
perforations are modelled.
Wellbore heating
If a microwave wellbore heating model is present, then the heating can be turned on and an
electrode voltage applied. If the heating is turned off, then no heating will take place.
233
REVEAL
If the electrical wellbore heating model is present, then it may be turned on and maximum
heater power and maximum heater temperature specified.
Efficiency - downtime
A well efficiency value is applied to the cumulatives, but not the instantaneous peak well rates.
A value of 1.0 represents zero downtime, while a value of 0.9 represent 10% downtime.
The input and reported rates will be the peak rates and the reported cumulatives and
reservoir material balance will be the mean rate; mean rate = efficiency*peak rate.
Steam
If a steam model is present, then the injection fluid is assumed to be steam (set Injection
Fluid to water), and an enthalpy rather than temperature is required. Use the Steam
Calculator button to calculate steam enthalpy as a function of pressure and quality, and view
its position on the steam phase envelope. For all injection fluids (e.g. generalised liquid or
gas), the injection temperature is defined by the specific enthalpy of water entered.
Constant tubing heat
If a well has well-bore friction and heat transfer set (multi-lateral well model) and is an injector
with no wellbore heating model, then an option to keep the heat content constant within the
tubing is displayed. With this option set, conduction losses from the tubing are only applied to
the reservoir and not to the tubing fluid. This approximation may be used to model a well that
is heating (or cooling) a reservoir by recycling a fluid; the reservoir heating is supplied by an
assumed fluid that is not being injected.
Exit conditions
The schedule will run until an exit condition is met. Use the left mouse button to select options
in the exit condition table. An exit condition will be until a given time in days/date, or for a
given time in days.
History
REVEAL Manual
February, 2011
User Guide
234
This screen may be accessed using View History or History->Schedule. The history screen
should only be used with a dated calculation. See Options|Dates on the main REVEAL bar
to set a non-dated run to dated.
Cancel - exit from the screen without saving.
Save - save the current history.
OK - save the current history and exit the screen. If the history screen was enabled using
View History, then the data is saved and control returned to the schedule. If the history
screen was enabled using History->Schedule, then the data is saved and the current
schedule is deleted and overwritten with data from the history screen.
Current Well - data for each well is defined. If data is not present, the well is shut-in. As
dates added to the history are automatically added for all wells.
1990-2011 Petroleum Experts Limited
235
REVEAL
Temperature - Injection wells require an injection temperature that may not be present in
some imported history schedules. This should be set, then applied to all wells, or just the
current well using the buttons Set All Well Temperatures and Set Current Well
Temperature. The temperatures will be set for producing and injecting wells, but only used in
the simulation schedule for injecting wells.
Clear Current Well - delete all data for current well. The dates will remain since these are
defined for the remaining wells.
Clear All Wells - delete all the data including the dates. This is recommended before any
schedule data is imported.
Export Current (All) Well to File - the data will be exported to a text file that may be
manipulated in EXCEL for example.
Import Current (All) Well from File - data from a text file will be imported. It must have
exactly the same format as the exported text. Therefore it is recommended to export some
data to a file, modify the file, then re-import the modified data. Note that data is imported
using the current set units.
Import ECLIPSE schedule - an eclipse history schedule will be imported.
This method is designed to import a history match, NOT a prediction schedule, since these
will typically be more complex with group control and additional constraints.
You will be prompted to specify whether the file is using metric or field units.
The keywords, DATES, WCONHIST, WCONINJH, WCONPROD, WCONINJE and WEFAC
are recognised and the history should be input using the OPEN or STOP keywords.
The history should be defined using ORAT, GRAT, WRAT or LRAT for producers (for the
LRAT case, both oil and water rates must be present) and WATER or GAS for injectors.
Note injection temperatures are not imported, and non standard history schedule files may not
be read correctly.
If a well control is defined at one date, this control method will continue through subsequent
dates unit it is stopped or modified by another well control statement.
Status
This option may be used to change the well control method that will be set in the REVEAL
schedule.
It may be set for a single well or all wells for which applicable data is present (for example a
fixed rate injector cannot be have its status changed to fixed Pwf producer).
The status options include:
REVEAL Manual
February, 2011
User Guide
236
2.3.16.2Thermal fracture
This screen sets the thermal fracture update options, and is only displayed if a thermal
fracture is present. The update options are applied separately to each schedule and each
thermal fracture.
237
REVEAL
Fracture Schedules
The fracture schedules match the schedules defined for wells. Select each schedule to view
the fracture schedule.
Fracture update criteria
Select each fracture in the list to update its update criteria. The criteria define how often (if at
all) the fracture calculations are performed. The most frequent and recommended default is
every time step.
Update - if the fracture update is set to off, then no fracture calculation will take place for the
current schedule. If it is set to on, then three update criteria are provided. The first criteria to
be met will cause the fracture shape to be updated. If an update criteria is left blank then that
criteria will not be used.
The fracture is automatically updated every time a new schedule is started.
REVEAL Manual
February, 2011
User Guide
238
If more than one fracture is associated with a well, then a fracture update will be performed
including all fractures associated with the well every time any of the fracture update criteria
are met.
Timesteps - the fracture will be updated every given number of timesteps. The default is 1,
which updates the fracture every time step and is recommended.
Days - the fracture will be updated at a constant frequency. This is optional and only has an
effect if the timesteps is set to a value larger than 1.
Pressure - the fracture will be updated when the pressure at the centre of the fracture
changes by a fixed amount. The fracture model calculates the fracture size, grid connection
factors, central pressure and injection rate every time it is updated. The well constraint was
used during the fracture update to calculate the fracture pressure, injection rate and
connection factors. Therefore, after subsequent normal iterations (without fracture update
using the same connection factors), a change in the fracture pressure reflects changes in the
reservoir arising from the injection and is a good measure of when the fracture should be
undated. This option is recommended with an update pressure of about 50 psi. If the well
connected to the fracture is controlled by a constant Pwf, then this update parameter will not
result in fracture updates. This is optional and only has an effect if the timesteps is set to a
value larger than 1.
2.4
Grid refinement
2.4.1 Overview
This section describes the grid refinement available within REVEAL. The following image is of
a grid with five refined regions.
239
REVEAL
Grid refinement is not available for radial or curvilinear grids, or using the original IMPES
solver. Grid refinement is incorporated directly into the solvers with no additional iterations
required.
Every REVEAL simulation has a master grid, which consists of a topologically regular
hexahedral grid, with NX, NY and NZ blocks in the X, Y and Z directions. Therefore a total of
NX.NY.NZ grid blocks are defined and may be identified by three integer indices (I,J,K).
Some of the master grid blocks may be inactive (reference porosity set to zero). Grid
refinement is achieved by defining a set of contiguous (touching) master grid blocks, and then
defining refinement parameters for the refined regions. More than one refined region is
possible.
A maximal range is defined for each refinement, it includes all of the master grid blocks
contained within a region (Imin,Jmin,Kmin) to (Imax,Jmax,Kmax), where subscripts min and
max are the minimum and maximum master grid indices in each principal direction for the
refined region.
The following graphic provides an example. Refinement (yellow blocks) is defined for (1,3,4)
to (4,4,4) and (3,5,4) to (7,5,4). The maximal range is (1,3,4) to (7,5,4), (outlined in red).
REVEAL Manual
February, 2011
User Guide
240
Define the extent of the refined region within the main grid.
The extent of the refined region is defined within the reservoir section of the main input script.
2
Define wells
Any wells or fractures present within a refined region are identified in the wells section of the
main input script and must be specified as multi-lateral well that means they are described by
a deviation survey rather than a list of connected blocks.
The well control (fixed Pwf, Pws or rate and constraints) for all wells is controlled within the
schedule section of the main input script.
3
The refined grid geometry and properties assigned in a separate refinement script.
This is achieved by selecting refinement input script, which has the same form as the main
input script, using a script generating wizard, except that fewer sections are required. The
following pages detail the input options required to be entered in the refinement script.
refinement section - defines the degree of refinement
reservoir section - initialise physical properties for the refined region
1990-2011 Petroleum Experts Limited
241
REVEAL
relperm section - initialise end point scaling values for the refined region if present
initialisation section - initial component concentrations within refined region
master block
refinement
9
0.5
10
0.3 and 0.7
9
0.5
10
0.3 and 0.7
1
0.2, 0.4, 0.6 and 0.8
The table entry for X direction, master grid block 10 is shown below.
REVEAL Manual
February, 2011
User Guide
242
243
REVEAL
Generally, Use Parent Grid Values should be used to set refined block properties to the
parent master grid properties; this is the default option. Use the Plot and Validate buttons
where available to check coverage. See the reservoir input script for the master grid input
script for more information entering data on these screens.
Porosity - either enter porosities for the refined grid using the same input method as was
used for the master grid, or select the Use parent grid values button, which will copy the
values from the master grid into the refined grid variables.
Permeability - either enter permeabilities for the refined grid using the same input method as
was used for the master grid, or select the Use parent grid values button, which will copy
the values from the master grid into the refined grid variables. Note that if parent grid
properties are required, then these should be set for each of the X, Y and Z directions
separately using the tab at the bottom of the screen.
Transmissibility multiplier - this is optional, the default being unit transmissibility multipliers.
Any transmissibility multiplies set for the master grid will be used automatically for refined
grid blocks on the boundary of the refined region, but transmissibility multipliers required
internally within the refined region should be entered explicitly on this screen.
Absolute transmissibility - this is optional, the default being that the transmissibilities are
calculated from the grid geometry and permeability.
Net to gross - this is optional, the default being unit net to gross ratios. Either enter net to
gross ratios for the refined grid using the same input method as was used for the master grid,
or select the Use parent grid values button, which will copy the values from the master grid
into the refined grid variables.
Pore volume multiplier - this is optional, the default being unit pore volume multipliers. Either
enter pore volume multipliers for the refined grid using the same input method as was used for
the master grid, or select the Use parent grid values button, which will copy the values from
the master grid into the refined grid variables.
Rock type - enter the coverage of each rock type within the refined grid. Rock types are
defined within the main grid script and will be listed in the rock list. Ensure full coverage of the
refined region.
PVT region - enter the coverage of each PVT region within the refined grid. PVT regions are
defined within the main grid script and will be listed in the rock list. Ensure full coverage of the
refined region.
Equilibration region - enter the coverage of each equilibration region within the refined grid.
equilibration regions are defined within the main grid script and will be listed in the rock list.
Ensure full coverage of the refined region.
REVEAL Manual
February, 2011
User Guide
244
2.5
Menu commands
245
REVEAL
2.5.2 File
New
2.5.3 Options
Units
Dates
ICD Database
set or change the units system to be used, all data in the input
script and wizard will be changed to reflect changes to the units.
Use either days or date to control the schedule.
Add equipment to the Equalizer database.
If the current REVEAL window is the 3D graphics then the following menu options are
REVEAL Manual
February, 2011
User Guide
246
available.
General
Viewing Properties
Scale
Playback
3D View Store
Reset View
Preferences
2.5.4 Edit
Undo
Cut
Copy
Paste
Clear
Select All
Find...
Find Next
Replace...
Goto Section
undo last change made while editing the input script. <control> Z
delete selected text in the input script. <control> X
copy selection to clipboard, from any text (input script, debug etc.).
<control> C
paste clipboard (input script only). <control> V
delete selected text in the input script. Delete
select entire text (input script, debug etc.) <control> A
find text in an text file (input script, debug etc.). <control> F
repeat previous find. F3
find and replace text in the input script. <control> H
scroll the input script to the selected section.
If the current REVEAL window is the 3D graphics then the following menu options are
available.
Select Multiple Blocks select some blocks using IJK coordinates to view 2D plot of
variables (against time). Use Results to view the selected blocks.
Unselect All Blocks
deselect all blocks selected.
2.5.5 Input
Script Wizard
Control
Reservoir
Physical
Relative Permeabilities
Aquifer
247
REVEAL
Mobility
REVEAL Manual
February, 2011
User Guide
248
The next step is to define which PVT Region the changes will be applied to and this is done
under the 'Array variable to be used as mask' section. In the above example the changes will
be made to all of the grid cells that fall within PVT Region 1.
2.5.6 Project
Edit / View Project...
view, delete or re-import various files contained in the REVEAL
archive. Also import and export datablock or well trajectory structures.
Create a PVT File... create a Petroleum Experts PVT description.
Edit a PVT File...
edit a Petroleum Experts PVT description.
Create a refinement file
create a blank template for a refined region of the grid.
Edit a refinement file...
edit a previously created refinement input script.
View Project Log view a log of events (Save, Run etc.) for the REVEAL archive.
Data Blocks...
view, edit and delete datablocks (arrays of data such as grid
coordinates) held in the REVEAL archive.
Start/Resume
Do One step
Run until
Pause
Stop
Restart Simulation...
Generate a Normal Restart Step
249
REVEAL
2.5.8 Results
Average Reservoir Results
Well Results
Reservoir Graphics
Wellbore Results
REVEAL Manual
User Guide
250
251
REVEAL
Save well and reservoir results Save the current stream well and average well results.
Existing result streams may also be renamed or deleted.
Delete well and reservoir results Delete all saved well and average reservoir result
streams.
The grid data is output to a text file using the following keywords (where applicable). See
ASCII import for the definition of these keyword.
DIMENSION
CORNERS
PORO
NTG
PERMX
PERMY
PERMZ
MULTX
MULTY
MULTZ
TRANX
TRANY
TRANZ
MULTPV
SATNUM
PVTNUM
EQLNUM
FIPNUM
SWCR
SWU
SOWCR
SOGCR
SGCR
SGU
KRW
KRO
KRG
SWL
SGL
KRORG
KRORW
KRWR
KRGR
SWLPC
REVEAL Manual
February, 2011
User Guide
252
SGLPC
The following user initialisation arrays are also output if data is present.
SWINIT
SGINIT
POINIT
RSINIT
TEMPINIT
END
Debug
If the current REVEAL window is the 3D graphics then the following menu options are
available.
Results of Selected Cells
2.5.9 View
Toolbar
Navigator
enable/disable the run/graphics toolbar towards the top of the main REVEAL
window.
enable/disable the Help Viewer and Navigator window on the left of the
REVEAL window.
2.5.10 Window
Cascade
Arrange Icons
Tile vertically
Tile horizontally
(windows)
2.5.11 Help
Help Index
Start the online help at the first page (Contents).
Help Search
Start the online help.
Script On-ContextBrief description of keyword in input script, move the mouse over the
script to view the on-context help.
About REVEAL... REVEAL version and Petroleum Experts contacts.
253
REVEAL
Resyncronise after pausing the 3D update during a calculation, reconnect to the calculation.
Goto Timestep goto the 3D results for an input time step.
2.6
REVEAL Manual
February, 2011
User Guide
254
DIMENSION (DIMENS) (SPECGRID) - followed by the grid dimensions NX, NY and NZ.
END - marks the end of the file.
The following keywords and data are optional for grid block data. For each case there will be
NX.NY.NZ entries, and they will be ordered cyclically in the X, Y then Z directions with the X
direction cycling fastest.
NODES - followed by the node coordinates X,Y,Z for each node. There will be a total of
(NX+1).(NY+1).(NZ+1) nodes, and they will be ordered cyclically in the X, Y then Z directions
with the X direction cycling fastest.
NODES_8PT (CORP)- followed by the node coordinates X,Y,Z for each node. There will be
a total of (2*NX).(2*NY).(2*NZ) nodes, a total of 8 corner nodes per block. The 8 nodes for
each block are entered sequentially, and the blocks are ordered cyclically in the X, Y then Z
directions with the X direction cycling fastest. Therefore there will be 24 coordinates entered
for each block. The 8 corner nodes should be ordered as shown below.
4
3
Y
2
8
COORD and ZCORN - followed by the standard ECLIPSE representation of these keywords.
255
REVEAL
CORNERS - followed by the X, then the Y, then the Z coordinates. The ordering is identical
to the NODES_8PT option, except that all of the X, Y and Z coordinates are input
sequentially, rather than (X, Y, Z) for each node. This is the CMG format.
MAPAXES - followed by the two (X,Y) coordinates of the origin (C1, C2) and the two
coordinates of the X axis (X1, X2) and the two coordinates of the Y axis (Y1,Y2).
POROSITY (PORO)- followed by the grid block porosities (inactive blocks have a zero
porosity).
PERMX - followed by the grid block permeabilities in the X direction.
PERMY - followed by the grid block permeabilities in the Y direction.
PERMZ - followed by the grid block permeabilities in the Z direction.
NETTOGROSS (NTG) - followed by the grid block net to gross ratios.
TRANSX (MULTX) - followed by the grid block transmissibility multipliers in the X direction.
The transmissibility multipliers are applied to the block face in positive direction.
TRANSY (MULTY) - followed by the grid block transmissibility multipliers in the Y direction.
TRANSZ (MULTZ) - followed by the grid block transmissibility multipliers in the Z direction.
ABSTRANSX (TRANX) - followed by the absolute grid block transmissibility values in the X
direction
ABSTRANSY (TRANY) - followed by the absolute grid block transmissibility values in the Y
direction
ABSTRANSZ (TRANZ) - followed by the absolute grid block transmissibility values in the Z
direction
SWC (SWCR) - followed by the endpoint scaling critical water saturations
SWM (SWU) - followed by the endpoint scaling maximum water saturations
SOWC (SOWCR) - followed by the endpoint scaling critical oil/water saturations
SOGC (SOGCR) - followed by the endpoint scaling critical oil/gas saturations
SGC (SGCR) - followed by the endpoint scaling critical gas saturations
SGM (SGU) - followed by the endpoint scaling maximum gas saturations
KRW - followed by the endpoint scaling maximum water relative permeability
REVEAL Manual
February, 2011
User Guide
256
257
REVEAL
3*0
100 0 0
200 0 0
0 100 0
100 100 0
200 100 0
0 200 0
100 200 0
200 200 0
0 0 100
100 0 100
200 0 100
0 100 100
100 100 100
200 100 100
0 200 100
100 200 100
200 200 100
0 0 200
100 0 200
200 0 200
0 100 200
100 100 200
200 100 200
0 200 200
100 200 200
200 200 200
POROSITY
0.2
0.2
0.2
0.2
0.2
0.2
0.2
0.2
PERMX
100
100
100
100
100
100
REVEAL Manual
February, 2011
User Guide
258
100
100
NETTOGROSS
11111111
TRANSZ
100 100 100 100 100 100 100 100
NNC
1
1 1 1 2 2 2 0.3
END
259
REVEAL
coordsystem flag for data entry using the map axes [0] or grid coordinate system [1].
vectorX azimuth reference vector X coordinate.
vectorY azimuth reference vector Y coordinate.
Xflow
cross flow flag for well [0-no crossflow, 1-crossflow].
friction
wellbore friction flag [0-no friction, 1-friction].
slip
flag for wellbore slip correlation [0-no slip, 1-slip].
LATERAL required keyword.
latnumber index number for current lateral. These should start at 1 and increase by 1 for
each lateral.
parent
the lateral index for the parent (lateral from which current lateral is connected) of
the the current lateral. The first lateral should have a parent index of 0, indicating it
has no parent.
LATDATA required keyword. Only the X Y Z MD data is required for the first point of the
lateral deviation survey.
Subsequent tubing data (roughness ID wellHTC
heaterHTC) refers to the well segment connecting lateral coordinate points.
X
X coordinate of deviation survey.
Y
Y coordinate of deviation survey.
Z
Z coordinate of deviation survey.
MD
measured depth of deviation survey.
roughness well roughness (required for all lateral points apart from the first).
ID
well internal diameter (required for all lateral points apart from the first).
wellHTC well heat transfer coefficient (required for all lateral points apart from the first - if
this data is not required a 'dummy' value should be entered).
heaterHTCwell electrical heater heat transfer coefficient (required for all lateral points apart
from the first - if this data is not required a 'dummy' value should be entered).
PERF
required keyword.
latnumber lateral number for which the perforations are required.
PERFDATA required keyword.
MD1
measured depth (relative to the MD entered for the lateral deviation survey) for the
start of perforation.
MD2
measured depth (relative to the MD entered for the lateral deviation survey) for the
end of perforation.
rw
wellbore flowing radius.
skin
perforation skin.
multiplier perforation connection factor multiplier.
END
Example
WELL Well2 1
LATERAL
1
LATDATA
950
REVEAL Manual
0
0
50
50
February, 2011
User Guide
LATDATA
LATDATA
PERF 1
PERFDATA
END
WELL Well3
LATERAL
LATDATA
LATDATA
LATDATA
LATDATA
LATDATA
LATERAL
LATDATA
LATDATA
LATERAL
LATDATA
LATDATA
LATDATA
PERF 1
PERFDATA
PERFDATA
PERF 2
PERFDATA
PERF 3
PERFDATA
END
950
850
50
150
75
100
25
0.0006
168.6140662
4
8
0.0006
8
4
25
168.61
0.354 0
1
1
950
950
900
800
400
2
600
300
3
500
520
525
0
0
450
450
400
250
150
1
200
450
1
175
55
25
50
100
150
175
175
0
50
0.0006
4
8
136.6025404 0.0006
4
318.6052876 0.0006
4
730.9158502
0.0006
8
8
8
4
8
8
8
175
225
0
393.7003937
175
215
255
0
128.0624847 0.0006
4
178.3118629
0.0006
8
4
8
8
0.0006
1
1
260
261
REVEAL
February, 2011
User Guide
262
pressure is not imported into the REVEAL data set and should be set manually if required.
This is because the REVEAL reference pressure is used in calculations other than that for
rock compression.
Relative Permeabilities
In REVEAL, residual saturations, relative permeabilities, and capillary pressures are all
dependent on a defined rock type. Each rock type has a set of residual saturations for all
phases, and for each set of residual saturations there will be a set of capillary pressure tables
and relative permeability tables. There may be more than one set of rel perm tables for each
set of residual saturations - indeed, this would be required if you were using directional rel
perms.
In Eclipse, there is no direct analogue to the REVEAL rock type. Arrays such as SATNUM
and PVTNUM have similar meanings but are used in different ways within Eclipse (for
example, SATNUM is used to specify rel perm tables, PVTNUM is used to specify separate
PVT areas and, optionally, rock compressibility values).
For this reason, no attempt is made to assign the imported rel perm data to any particular
rock type regardless of whether the rock regions have been defined or not. Each rel perm
table (of which there may be several) is assigned to All Rock Types, and it is up to the user
after the import has been carried out to assign the rel perms to the required rock region. See
the Relperm section on the input wizard for more information on how to do this.
For Eclipse two phase systems, REVEAL will generate dummy rel perm tables for the phases
that are not present in the simulation. These, of course, will not affect the calculation if the
phase in question remains absent.
PVT
REVEAL imports oil or gas PVT data from Eclipse. It is not currently possible to import an
Eclipse condensate PVT.
The Petroleum Experts black oil PVT module consists of two sections: a correlation data set
and a tabular data set. If both sets are present, the tabular data is used in preference: the
correlations are used to fill in 'gaps' in the tabular data. When a PVT table is imported from
Eclipse, it is expected that all the required tabular data will be present and so there will be no
need for the correlation data. Dummy correlation data is generated by the import process:
this should not affect the PVT calculations.
The REVEAL PVT is always three phase (water, oil, and gas). It is nevertheless possible to
import Eclipse 'dead oil' (i.e. no gas phase or no dissolved gas) cases: in these situations a
nominal low value for Rs is provided for the saturated tables and no undersaturated tables are
generated.
When undersaturated tables are used by REVEAL, a controlled miscibility setting must be
provided by the user. This determines the rate at which gas will dissolve in the oil if the
1990-2011 Petroleum Experts Limited
263
REVEAL
reservoir is pressurised. The import process sets this value to infinity (i.e. gas completely redissolves if it can): the user is free to change this value after the import. See Eclipse
keyword DRSDT.
Eclipse PVT tables are isothermal - REVEAL tables are not. It is possible in REVEAL to
generate several saturated tables (each with up to 5 undersaturated tables 'hanging' from
each) for various temperatures. When the import is carried out, only one saturated table will
be generated. The temperature for this table will be the reference temperature for the
simulation if specified, or 100 degrees F if not.
Eclipse may contain several PVT tables (corresponding to the PVTNUM array). REVEAL only
uses one black oil PVT. After the import the status screen will display the PVT files that have
been generated by REVEAL. Select the PVT file that you would like to use in subsequent
REVEAL simulations. The other PVT files will remain within the archive and can be swapped
into the simulation at a later date.
When a 'live' oil PVT is imported, you must tell REVEAL the initial bubble point pressure for
the reservoir. The is used to calculate the initial Rs from the saturated curves that have been
imported.
EndPoint Scaling
The endpoint scaling saturation arrays corresponding to the Eclipse keywords SWL, SWCR,
SWU, SOWCR, SOGCR, SGL, SGCR and SGU may be imported. Additionally, the relative
permeability endpoint scale factors KRW, KRO, KRG, KRORG, KRORW, KRWR and KRGR,
and capillary pressure lower limits SWLPC and SGLPC may be imported. Check for the
Eclipse keyword SCALECRS for 3-point end-point scaling.
Well Data
This is imported as a table over completed blocks (ijk) with connection factors as calculated
by Eclipse.
Solution Data
A REVEAL format restart file will be generated from which simulation restarts can be run. See
the Run Simulation menu item for more information.
Additional Checklist - data not imported
One a model has been imported, the following should be checked.
Control section
Eclipse may be run in 5 point or 9 point mode; its default is 5 point, whereas the default in
REVEAL is 9 point.
Set the starting date.
REVEAL Manual
February, 2011
User Guide
264
265
REVEAL
Wells section
Check that the cross flag was set; it is set by default in REVEAL.
With VIP import, check the well data is imported correctly, since some of the well
specification methods in VIP are handled differently.
Initialisation section
Set the Rs versus depth table. This data is may not be imported (only imported if the table is
Rs v depth, not Pb v depth) and should be obtained from the original deck for each PVT
region.
Schedule section
Schedule data is not imported directly and simple comparison runs should be performed to
validate the imported data. ECLIPSE history match data may be imported from the schedule
section.
REVEAL Manual
February, 2011
User Guide
266
267
REVEAL
4. Select the case name to high-light it then click the Core study and Exec study buttons
5. Enter the Core file name and Exec file name excluding the i.dat and r.dat extensions
then click Next to load the file
REVEAL Manual
February, 2011
User Guide
2.7
268
Graphics
2.7.1 Visualisation
Use the
, , , and
buttons to view the results.
interactively during a calculation.
The
button provides average reservoir properties such as mean phase pressures,
saturations and volumes. These data may be viewed, plotted and printed, or copied to the
clipboard for import into another application.
The button provides well results data, including instantaneous and cumulative rates, GOR,
water cut and phase pressure and saturation data at well blocks.
The button provides a three dimensional display of the fluid properties that were selected
for display ( Run Simulation|Select Properties...). Note that the variables and frequency
with which they are to be stored must be set before a calculation is run. It includes graphical
representation of wells, completions and fractures.
The button deletes all of the stored 3D graphics, thus reducing the size of the REVEAL
archive.
The
button allow the user so save the current well and average reservoir properties to
saved streams. It also allows, previously saved streams to be renamed and deleted.
The
button deletes all saved well and average reservoir properties result streams.
The
button generates a 3D visualisation of the grid and initial static variables such as
porosity, permeability etc.
269
REVEAL
The frequency of the well results and 3D properties to plot may be selected before a run
using the button .
REVEAL Manual
February, 2011
User Guide
270
271
REVEAL
The 3D graphics requires the display driver to be operating with a screen area of at least
1280*1024 pixels and 16 bit (high colour) resolution.
If the current window is the 3D graphics window, then the drop down menus Options, Edit and
Results are specific to 3D graphics. The additional drop down menu Playback is also
available if the current window is a 3D graphics window .
Interaction with the 3D visualisation windows
Rotation
- to rotate the view, click the left button of the mouse and drag the mouse in the direction
that you would like to rotate. The rotation axis is perpendicular to the direction of mouse
movement and in the current focal plane of the view.
- to rotate the view about an axis normal to the screen and passing through the current focal
point, press the Ctrl key with the right mouse button. The speed of rotation is proportional to
the distance from the centre of the screen to the mouse position.
- the centre of rotation may be set by zooming in from two different (preferably orthogonal
directions).
Zooming
- area ('rubber band') zooming can be achieved by holding down the Ctrl key while dragging
the mouse with the left mouse button depressed.
- alternatively, click on the magnifying glass icon ( ) in the toolbar and then click and drag
across the area to be zoomed into.
- a single click with the magnifying glass icon ( ) selected will perform a zoom in of a fixed
REVEAL Manual
February, 2011
User Guide
272
273
REVEAL
View properties:
- the perspective mode determines whether the view is generated with parallel rays or by
applying a false (but perhaps more visually pleasing) perspective based on a view position.
The parallel projection is recommended if the distance measurement tool is used.
- the background colour can be changed by adjusting the sliders on the colour palette.
- the mouse rotation sensitivity governs how quickly the view is rotated for a unit movement of
the mouse position.
REVEAL Manual
February, 2011
User Guide
274
275
REVEAL
February, 2011
User Guide
276
listed, cycling through X, Y, Z. Only data for active blocks is then presented. The grid
coordinates are listed for each active block (X,Y,Z) for the 8 corners of each active cell,
ordered (1,1,1) (2,1,1) (2,2,1) (1,2,1) (1,1,2) (2,1,2) (2,2,2) (1,2,2). The data for selected
times and variables are exported to the file for all active or selected blocks using the
prevailing units for the 3D results.
Distance measure:
This tool may be used to measure distances. Ensure that the Z direction scaling
(invoked from
and the Details button for Grids) is unit and that the projection mode is
parallel.
Property buttons:
These options may also be accessed using a right click within the 3D view screen.
(3D) Invokes a screen allowing you to change the variable that is currently displayed. It
also allows you to view point scalar data rather than cell data. The point data is interpolated
from the grid block corners and weighted by the inverse square of the distance to the corners.
(Xflow) Invokes a screen allowing you to change the variable that is currently displayed
for the different object categories. The tubing variable can be set to the calculated fluid rate,
or alternatively can be set to display simple interpolated values between the end nodes.
(3D) Invokes a screen that allows the properties of the objects in the view to be
altered, e.g. the transparencies or visibilities of the grid objects, and whether to display
surface or wireframe data. It is also possible, from this screen, to display subsets of grid cells
(normally a plane of blocks in X, Y, or Z) and to change the z scale factor. Most of the
visualisation options are accessed from this option. There are sub-buttons that may be used
to refine the viewed data.
277
REVEAL
(Xflow) In addition to setting general object properties, the 'pick mode' can be
changed. The pick mode determines those objects that are candidates for picking when
'selection mode' is entered. It may be desirable, for example, to remove grid blocks from the
pick mode to allow easier picking of nodes and inflow objects.
REVEAL Manual
February, 2011
User Guide
278
Scale. Sets the ranges of values that are mapped to the colour tables.
Playback. Sets various playback / animation options.
The last field on the display is a well selection list box. Select from the drop down list the
well data that you wish to view.
2.8
Debug output
Meaning
Character
Retake & 'on-hold' #
*
h
Timestep limited r
v
t
c
p
Description
OK
Timestep to be reduced
Timestep to be retaken
Timestep to be unchanged
None
Max growth rate
Volumetric flow limit
Temperature constraint
Concentration constraint
Pressure constraint
1990-2011 Petroleum Experts Limited
279
5
6
7
REVEAL
i
f
d
e
l
Cause of retake n
v
m
p
t
c
d
Cause of 'on-hold' m
p
t
c
d
Limit reached
l
u
Volumetric flow c
s
w
Implicit solver
i
l
d
c
p
s
Unused
Injection schedule
Fracture update
Implicit solver (diverging Newton steps)
Implicit solver (estimated next time step)
Maximum number of linear solver iterations
No retake
Negative concentrations
Volumetric flow limit
Material balance constraint
Pressure constraint
Temperature constraint
Concentration constraint
Implicit solver (diverging)
Not 'on-hold'
Material balance constraint
Pressure constraint
Temperature constraint
Concentration constraint
Implicit solver (diverging)
Not limited
Minimum time step
Maximum time step limit
Total volume inflow (Courant)
Mobile phase saturation undershoot
Total well inflow/outflow
Pre-conditioner failure
Linear solver failure
Newton steps diverging
Newton steps not converged
Pressure change too large
Saturation change too large
Statistics and information are also located at the start and end of this file, including the
following information.
Calculated well connection factors
Multilateral well node and pipe geometry
Active block count
Initial in place fluids
Number of iterations and retry steps
Fraction of cumulative production for each well associated with each injector. This is
calculated from overlapping drainage regions calculated using effective streamlines and may
be used to estimate injection efficiency and help planning an injection strategy.
Timing summary information
REVEAL Manual
February, 2011
User Guide
2.9
280
Engineering
2.9.1 Contents
This section provides descriptions of the reservoir engineering models and solution methods
provided by REVEAL that are not described elsewhere in detail. It concentrates on the
underlying physical processes and the numerical approximations used to model them.
This designed as an overview of the equations solved.
models in rest of the help manual.
281
REVEAL
6.3266
k .kr p
Pw
Pc p
144
p
(i)
where qp is the Darcy velocity (ft/d)
k is rock permeability (D)
krp is phase relative permeability
p is the phase viscosity (cp)
p is the phase density (lb/ft3)
h is the depth (ft)
Pw is the water phase pressure (psi)
Pcp is the phase capillary pressure (psi)
The accumulation of mass (mp) of a phase into a control volume (V) is then defined by a
summation of fluxes over the surface area (A).
mp
pqp A
(ii)
The accumulation of mass into volume Vp is then subject to phase compressibility (cp) and
rock compressibility.
cp
1 Vp
Vp P
mp
Vp
Vp
VS p
(iii)
Equating these accumulation terms leads to a material balance equation.
Sp
qp A
Sp 1
t
(iv)
This differential equation is non-linear and also requires to be discretised both spatially and
temporally before it can be solved numerically.
p
For all solution methods, a harmonic average permeability (k) is used at grid block faces,
while different upstream weightings for face mobilities (Mp) are available for the implicit/
explicit solver options. A face volumetric transmissibility (Tp) is also defined, resulting in a
final version of the transport equation.
Mp
kr p
(v)
(vi)
Tp
Sp
p
Tp
6.3266 AkM
Pw
Pc p
144
Implicit solution - for this solver option, the transport equation is solved with respect to the oil
phase pressure (Po) and the three phase saturations (Sp). A single point upstream weighting
is applied for mobility and density.
IMPES solution - for this solver option, the transport equation is solved in two steps using a
total volumetric implicit pressure (explicit transmissibility and capillary pressure) solution to
calculate the water phase pressure (Pw) and an explicit concentration (saturation) update
using the calculated phase Darcy velocities. The implicit pressure solution uses a total
REVEAL Manual
February, 2011
User Guide
282
(vii)
Pw
t
Tp
Pw
Pc p
Pw
Pc p
144
Tp
qp
144
(viii)
The explicit nature of this formulation allows more sophisticated upstream weightings for
phase transmissibility, trace component concentrations and density, reducing numerical
dispersion, but more severe limitations on the time-step size are required to ensure stability.
Trace component concentrations are updated using the phase Darcy velocities and upstream
weightings for component volume fractions.
For more information on the solver options see the control section of the input wizard help.
q p C pc
(ix)
If dispersion or diffusion are present, then the trace component mass fluxes are modified by
calculating a dispersive flux (Gcp), dependent on the component concentration gradient. Note
that trace components are only partitioned within one phase (unless a middle phase microemulsion is present) and the component density is equal to its host phase density (i.e.
volumetric and mass fractions of component within phase are equivalent).
p
(x)
Fc
q p C pc
G pc
G pc
S p D pc
qp
Tp
C pc
qp
qp
Lp
Tp
qp
C pc
(xi)
where Dcp are component diffusion coefficients, and
transverse phase dispersion lengths.
Lp and
Numerical dispersion may be minimised by selecting the fct/2-point upstream weighting for
component concentration in the control section of the input script.
283
REVEAL
Ak T
qp
Cp p AT
p
(xii)
The accumulation of heat into volume V then results in a temperature change (heat transport
equation).
HT
t
(xiii)
where H is the total heat capacity (BTU/F) of the control volume V (grid block), calculated
before and after the flow is updated (beginning and end of time step).
For the IMPES formulation, or the implicit formulation when the CFL limit is selected, the heat
transport equation is solved explicitly for temperature (T) i.e. J is first calculated, then T is
updated. This has the advantage that upstream weighting models (fct/2-point recommended)
may be used for convective thermal fluxes, reducing numerical dispersion. The upstream
weighting is the method used to estimate the heat capacity ( p.Cpp) at the interface between
adjacent blocks.
For the implicit formulation, the CFL limit is not observed, and the explicit method used for the
IMPES formulation is unstable. Therefore, the temperature is calculated by implicitly solving
the heat transport equation in one step, a 1 point upstream weighting is used for calculating
convective thermal fluxes.
Heat source terms are also added for well-bore heating, well inflow/outflow and overburden/
underburden heat flow.
If Joule Thomson effects are included, then the change in pressure over the time step results
in a term reflecting the corresponding enthalpy change.
2.10 References
2.10.1 References
1
2
Van Everdingen A.F., Hurst W., The Application of the Laplace Transformation to Flow
Problems, Trans. AIME 156, 1949.
Carter R.D., Tracy G.W., An Improved Method for Calculating Water Influx, SPE 1626-
REVEAL Manual
February, 2011
User Guide
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
284
G, 1960,
Geertsma J., deKlerk F., A Rapid Method of Predicting Width and Extent of
Hydraulically Induced Fractures, SPE 2458, 1969.
Wiliams B.B., Fluid Loss from Hydraulically Induced Fractures, SPE 2769, 1970.
Todd M.R., Longstaff W.J., The Development, Testing and Application of a Numerical
Simulator for Predicting Miscible Flood Performance, SPE 3484, 1972.
Cinco-Ley H., Ramey H.J., Miller F.G., Pseudo-skin Factors for Partially-Penetrating
Directional-Drilled Wells, SPE 5589, 1975.
Peaceman D.W., Interpretation of Well-Block Pressures in Numerical Reservoir
Simulation, SPE 6893, 1978.
Clifton R.J., Abou-Sayed A.S., On the Computation of the Three-Dimensional
Geometry of Hydraulic Fractures, SPE 7943, 1979.
Zolotukhin A.B., Analytical Definition of the Overall Heat Transfer Coefficient, SPE
7964, 1979.
Vinsome P.K., Westerveld J., A Simple Method for Predicting Cap and Base Rock Heat
Losses in Thermal Reservoir Simulators, J. Can. Pet. Tech., 1980.
Clifton R.J., Abou-Sayed A.S., A Variational Approach to the Prediction of the ThreeDimensional Geometry of Hydraulic Fractures, SPE 9879, 1981.
Perkins T.K., Gonzalez J.A., Changes in Earth Stress Around a Wellbore Caused by
Radially Symmetrical Pressure and Temperature Gradients, SPE 10080, 1984.
Peaceman D.W., Interpretation of Well-Block Pressures in Numerical Reservoir
Simulation with Nonsquare Grid Blocks and Anisotropic Permeability, SPE 10528,
1983.
Perkins T.K., Gonzalez J.A., The Effect of Thermoelastic Stresses on Injection Well
Fracturing, SPE 11332, 1985.
Prouvost L.P., Pope G.A., Rouse B., Microemulsion Phase Behaviour: A
Thermodynamic Modeling of the Phase Partitioning of Amphiphilic Species, SPE
12586, 1985.
Prouvost L.P., Satoh T., Sepehrnoori T., Pope G.A., A new Micellar Phase-Behaviour
Model for Simulating Systems with up to Three Amphiphilic Species, SPE 13031,
1984.
Christie M.A., Bond D.J., Multidimensional Flux-Corrected Transport for Reservoir
Simulation, SPE 13505, 1985.
Koning E.J.L., Fractured Water Injection Wells - Analytical Modelling of Fracture
Propagation, SPE 14684, 1985.
Vandamme L., Jeffrey R.G., Curran J.H., Pressure Distribution in Three-Dimensional
Hydraulic Fractures, SPE 15265, 1986.
Meyer B.R., Heat Transfer in Hydraulic Fracturing, SPE 17041, 1989.
Clifton R.J., Wang J-J., Multiple Fluids, proppant Transport, and Thermal Effects in
Three-Dimensional Simulation of Hydraulic Fracturing, SPE 18198, 1988.
Detienne, J-L., Creusot M., Kessler N., Sahuquet B.,Bergerot J-L., Thermally Induced
Fractures : A Field Proven Analytical Model, SPE 30777, 1995.
Parkhurst D.L., User's Guide to PHREEQC-a Computer Program for Speciation,
Reaction-Path, Advective-Transport, and Inverse Geochemical Calculations, US
1990-2011 Petroleum Experts Limited
285
24
25
26
27
REVEAL
2.11 OpenServer
2.11.1 OpenServer
OpenServer is the Petroleum Experts implementation of an open architecture for all of its
software products. It allows external control of the programs with using the interface.
Typically it is used for one of the following purposes.
Automated data entry or results gathering
Batch control of multiple calculations
Advanced calculation control such as scheduling
The OpenServer has three basic functions.
Get a data value
value = DoGet(datatag)
Set a data value
DoSet(datatag,value)
Perform a function command
DoCmd(command)
where datatag and command are strings containing data identifiers or commands which
possibly contain arguments. If an argument is a string, then it will need to be included within
double quotes.
In the following documentation only the datatag and command string syntax is defined.
Scope
This section is designed to complement the Petroleum Experts IPM OpenServer manual,
providing REVEAL specific implementation information.
See the OpenServer examples in the sample files section for basic examples using EXCEL
macros to control REVEAL using OpenServer.
The following sections describe the OpenServer commands specific to REVEAL, and the
data structures that may be accessed. The data structures fall into three categories; script
data, results data and runtime variables.
All of the data exchanged via OpenServer will by default be in oilfield units. See the main
OpenServer documentation to see how data may be transferred in alternative unit systems.
REVEAL Manual
February, 2011
User Guide
286
Data Types
All REVEAL string datatags and commands start with the tag "REVEAL".
There are 6 main datatag types that may be accessed when before a simulation is run or
after it is completed. The datatag for a specific piece of data can be found by using
<CONTROL> right click within the interface.
"REVEAL.SCRIPT" - wizard script input data.
"REVEAL.AVERES" - average reservoir results.
"REVEAL.WELLRES" - well results.
"REVEAL.CELLRES" - gridblock cell results.
"REVEAL.XFLOWRES" - wellbore crossflow results.
"REVEAL.WATCHEMCALC" - water chemistry calculator.
Runtime datatags correspond to the actual data structures invoked to run REVEAL.
Therefore, altering a SCRIPT datatag during a simulation will have no effect. Runtime
datatags have the tag "REVEAL.MASTER".
All runtime commands start with the tag "REVEAL.RUN".
OpenServer in REVEAL
The OpenServer may be accessed from external applications such as EXCEL or RESOLVE.
Alternatively, runtime data may be accessed at the start, during, at the end of a simulation
using the inline script in REVEAL. A 'stopped' script may also be run, when the simulation is
paused or stopped.
Several macro function commands are supplied to alter data and flags consistently during a
simulation (e.g. for well control). These should always be used in preference to setting data
variables manually.
Clearly extreme case should be taken modifying runtime variables during a simulation.
To access the inline script and run a 'stopped' script use the buttons
and
The OpenServer commands may also be run individually using the button
includes summaries of the available REVEAL specific commands.
.
. This option also
To toggle whether to run with the script or not use the option Run Simulation|Run with
Script.
The syntax in a script must be correct, and it is best tested thoroughly before a simulation is
run using this feature.
The logmsg function may be used to send a string to the text debug file.
logmsg("This is a test message")
1990-2011 Petroleum Experts Limited
287
REVEAL
The current REVEAL timestep, time, date and step may be obtained using the following script
functions. The timestep is the current timestep, starting from zero, which may be non-zero
when starting from a restart. The step variable is always initialised to -1 at the start of a run,
is set to 0 after any initialisation/equilibration at the start of the first simulation timestep, and is
then incremented for subsequent timesteps.
timestep = REVEAL.TIMESTEP
time = REVEAL.TIME
date = REVEAL.DATE
step = REVEAL.STEP
Breakpoints and other debugging of scripts may be performed using Microsoft tools.
Commands
The REVEAL specific function commands are listed blow. Some functions have more than
one name for backwards compatibility reasons. Additional well specification keywords
required to automate a well description in the input script may be found in the OpenServer
examples.
NEWFILE()
Function: Start a new REVEAL project file
Arguments: None
Example: "REVEAL.NewFile()"
OPENFILE(filename)
Function: Open an existing REVEAL project file
Arguments: filename - if the filename contains 'white space' characters, then it should be
enclosed with double quotes ("")
Example:
"REVEAL.OpenFile(C:\Petex\testfile.rvl)"
;
"REVEAL.OpenFile(""C:\Petex
directory\test file.rvl"")"
SAVEFILE()
Function: Save an existing REVEAL project file
Arguments: None
Example: "REVEAL.SaveFile()"
SAVEASFILE(filename)
Function: Save a REVEAL project file with a new name
Arguments: filename
Example: "REVEAL.SaveAsFile(C:\Petex\newfile.rvl)"
SHUTDOWN()
Function: Exit REVEAL
Arguments: None
Example: "REVEAL.Shutdown()"
REVEAL Manual
February, 2011
User Guide
288
RUN_BLOCK()
Function: Run/continue while blocking other OS communication (recommended)
Arguments: None
Example: "REVEAL.Run_Block()"
RUN()
Function: Run/continue a simulation (not recommended)
Arguments: None
Example: "REVEAL.Start()"
RESTART(restart_number)
Function: Start a simulation from a restart file and pause before the equilibration
Arguments: restart_number - an integer reflecting the restart file number starting from zero.
Use the Project|Edit / Review Project.. menu option to view the stored restart
file available
Example: "REVEAL.Restart(0)"
INITIALISE()
Function: Start a simulation and pause before the equilibration
Arguments: None
Example: "REVEAL.Initialise()"
ONE_STEP()
Function: Take one time step for the simulation
Arguments: None
Example: "REVEAL.One_Step()"
STOP()
Function: Stop a simulation
Arguments: None
Example: "REVEAL.Stop()"
PAUSE()
Function: Pause a simulation
Arguments: None
Example: "REVEAL.Pause()"
READ_SCRIPT()
Function: Read the current script..
Arguments: None
Example: "REVEAL.Read_Script()"
WRITE_SCRIPT()
Function: Rewrite the script following changes to the input, required for changes to the script
to be registered for subsequent simulation runs.
Arguments: None
1990-2011 Petroleum Experts Limited
289
REVEAL
Example: "REVEAL.Write_Script()"
OPEN_DATABLOCK(datablock_label)
Function: Open a datablock for data read or write in the input script
Arguments: datablock_label - the label (name) associated with a datablock (red font) in the
input script
Example: "REVEAL.Open_Datablock(""_xperm"")"
WRITE_DATABLOCK(datablock_label)
Function: Rewrite the datablock following changes to the input, required for changes to the
datablock to be registered for subsequent simulation runs.
Arguments: datablock_label - the label (name) associated with a datablock (red font) in the
input script
Example: "REVEAL.Write_Datablock(""_xperm"")"
OPEN_WELLTRAJ(datablock_label)
Function: Open a multilateral well datablock for data read or write in the input script
Arguments: datablock_label - the label (name) associated with a datablock (red font) in the
input script
Example: "REVEAL.Open_WellTraj(""well1"")"
WRITE_WELLTRAJ(datablock_label)
Function: Rewrite the datablock following changes to the input, required for changes to the
datablock to be registered for subsequent simulation runs.
Arguments: datablock_label - the label (name) associated with a datablock (red font) in the
input script
Example: "REVEAL.Write_WellTraj(""well1"")"
CREATE_PVT(fluid_type, pvt_label)
Function: Add a PVT.
Arguments: fluid_type - the fluid type of the PVT to be created (0-oil, 1-gas, 2-condensate)
pvt_label - label for the PVT.
Example: "REVEAL.Create_PVT(0,""PVT1"")"
IMPORT_PVT(file_name, well_label)
Function: Import a PVT.
Arguments: file_name - file name of the PVT file to be imported
pvt_label - label for the PVT
Example: "REVEAL.Import_PVT(""C:\PVT1.pvt"",""PVT1"")"
IMPORT_LIFTCURVE(file_name, tpd_label, tpd_type)
Function: Import a PVT.
Arguments: file_name - file name of the liftcurve (tpd) file to be imported
tpd_label - label for the liftcurve
tpd_type - index integer specifying lift curve type 0:OilNoLift 1:OilGasLift 2:
OilESPLift 3:Gas 4:Water 5:Condensate 6:OilPCPLift 7:OilHSPLift 8:OilJETLift
Example: "REVEAL.Import_Liftcurve(""C:\producer.tpd"",""producer"",0)"
REVEAL Manual
February, 2011
User Guide
290
ADDWELL(well_label, welltype)
Function: Add a well.
Arguments: well_label - the label (name) associated with the well to be added
welltype - integer specifying well type (0-completion table, 1-vertical column, 2multilateral)
Example: "REVEAL.Addwell(""well1"",2)"
DELETEWELL(well_label)
Function: Delete a well.
Arguments: well_label - the label (name) associated with the well to be added
Example: "REVEAL.Deletewell(""well1"")"
SORT_WELLS()
Function: Re-order the wells alphabetically.
Arguments: None
Example: "REVEAL.Sort_Wells()"
READ_HISTORY()
Function: Read current history data from archive into memory.
Arguments: None
Example: "REVEAL.Read_History()"
WRITE_HISTORY()
Function: Write history data to schedule and script.
Arguments: None
Example: "REVEAL.Write_History()"
Example to add a row to a history using VB.
Call DoCmd("Reveal.Read_History")
nwell = DoGet("Reveal.Script.Well.Count")
count = DoGet("Reveal.Script.History.Count")
Call DoSet("Reveal.Script.History.Add",1)
Call DoSet("Reveal.Script.History["+Cstr(count)+"].Date.DateStr","1/1/2010")
FOR iwell = 0 TO nwell-1
Call DoSet("Reveal.Script.History["+CStr(count)+"].Well.Add",1)
Call DoSet("Reveal.Script.History["+CStr(count)+"].Well["+CStr(iwell)+"].Status",1)
Call DoSet("Reveal.Script.History["+CStr(count)+"].Well["+CStr(iwell)+"].OilRate",1000.0)
NEXT
Call DoCmd("Reveal.Write_History")
LOAD_CELLRESULTS(grid_number)
Function: Load the cell results into memory for a given grid. This function will first unload any
cell results previously loaded for other refinement grids. Only cell results for the
currently loaded grid may be obtained using cell result OpenServer variables.
Arguments: grid_number - each grid has an integer, with the first main grid being zero and
1990-2011 Petroleum Experts Limited
291
REVEAL
refined grids starting from one. Optionally, a subset of a grid may be loaded to
save memory and cpu time. The subset is defined over the interval [X1,X2], [Y1,
Y2] and [Z1,Z2], and entered as LOADCELLRESULTS(grid_number,X1,Y1,Z1,X2,
Y2,Z2).
Example: "REVEAL.Load_CellResults(0)"
CLEAR_CELLRESULTS()
Function: Unload from memory any cell results currently loaded.
Arguments: None
Example: "REVEAL.Clear_CellResults()"
EXPORT_CELLRESULTS()
Function: Export grid and 3D graphical results to text file. The active blocks are first listed,
cycling through X, Y, Z. Only data for active blocks is then presented. The grid
coordinates are listed for each active block (X,Y,Z) for the 8 corners of each
active cell, ordered (1,1,1) (2,1,1) (2,2,1) (1,2,1) (1,1,2) (2,1,2) (2,2,2) (1,2,2).
Arguments: grid_number - each grid has an integer, with the first main grid being zero and
refined grids starting from one.
output file - results file to be written to.
[Variable number] - Optional integer specifying the variable to be reported, indexed
from 0 (-1 is all variables).
[Timestep number] - Optional integer specifying the timestep to be reported,
indexed from 0 (-1 is all timesteps).
Example: "REVEAL.Export_CellResults(0,"C:\results.txt",3,-1)"
LOAD_XFLOW_BLOCK_RESULTS()
Function: Load the Xflow well block results into memory. This operation is only required to
be performed once, prior to all OpenServer operations on the Xflow well results.
Arguments: None
Example: "REVEAL.Load_Xflow_Block_Results()"
LOAD_XFLOW_WELL_RESULTS()
Function: Load the Xflow well tubing results into memory. This operation is only required to
be performed once, prior to all OpenServer operations on the Xflow well results.
Arguments: None
Example: "REVEAL.Load_Xflow_Well_Results()"
WATCHEM_EQUILIBRATE()
Function: Perform a water chemistry equilibration calculation based on the 'Input|Water
Chemistry Produced Fluid Calculation' screen. All of the input data (pressure,
temperature, souring time, water rate, oil rate and gas rate) must be set by
OpenServer. Additionally, all of the well concentration concentrations should be
set by OpenServer. After the calculation, the equilibrated concentrations may be
obtained by OpenServer.
Arguments: None
Example: "REVEAL.WatChem_Equilibrate()"
REVEAL Manual
February, 2011
User Guide
292
DELETE_CELL_RESULTS()
Function: Delete all of the 3D cell results.
Arguments: None
Example: "REVEAL.Delete_Cell_Results()"
SAVE_RESULT_STREAMS(label)
Function: Save a copy of the current well and average reservoir results streams.
Arguments: label - label for results streams
Example: "REVEAL.Save_Result_Streams(""run_1"")"
DELETE_RESULT_STREAMS()
Function: Delete all saved well and average reservoir results streams.
Arguments: None
Example: "REVEAL.Delete_Result_Streams()"
DELETE_RESTART(label)
Function: Delete a specified restart file.
Arguments: label - restart file name
Example: "REVEAL.Delete_Restart(""2.8 days (normal)"")"
DELETE_ALL_RESTART()
Function: Delete all restart files.
Arguments: None
Example: "REVEAL.Delete_Restart()"
SET_SCRIPT(status)
Function: Set the runtime internal script status.
Arguments: status - script status 0:Off 1:On
Example: "REVEAL.Set_Script(0)"
Script data
The script or input data variables may be read or written using the OpenServer.
If the data to be read/written is within a datablock, then the datablock should be opened using
the Open_Datablock command, then saved using the command Write_Datablock once the
modifications are completed.
The OpenServer data strings can be obtained using <CTRL> + mouse right click within input
wizard. This should always be used to identify the OpenServer string.
Once changes have been made to the input data, the Script_Write command should be run to
register the changes.
Example - set a transmissibility multiplier barrier for a horizontal layer when the data is input
as a range; the second range (index 1) is being modified
293
REVEAL
DoSet ("REVEAL.Script.Reservoir.Data[11][1].Value",0.0)
DoCmd ("REVEAL.Script_Write()")
Example - set the porosity when the data is entered as a datablock array for block (3,2,1) to
0.2 - note the indexing starts at zero and cycles (Z,Y,X)
DoCmd ("REVEAL.Open_Datablock(""_porosity"")")
DoSet ("REVEAL.Block._porosity.Tab[0].Data[0][1][2]",0.2)
DoCmd ("REVEAL.Script_Write()")
Results data
The reservoir average and well results can be accessed using OpenServer.
The OpenServer data strings can be obtained using <CTRL> + mouse right click within
output data results.
The well and average reservoir results data OpenServer strings have the following form:
"REVEAL.WellRes[{stream_label}][{well_lablel}][timestep].Variable"
"REVEAL AveRes[{stream_label}][{region_lablel}][timestep].Variable"
where label names may be replaced by integer values
The number of timesteps is found with the following function:
n_timesteps = DoGet("REVEAL.WellRes[0][0].Count")
Example - total cumulative oil for current stream at the 10th recorded time step
CO = DoGet("REVEAL.WellRes[{Well Results}][{Total}][9].CumOilProduced")
Example - bottom hole temperature for first saved stream, second well, at the 6th recorded
time step
BHT = DoGet("REVEAL.WellRes[1][2][5].REVEAL.BottomHoleTemperature")
Example - initial total pore volume for current stream
PV = DoGet("REVEAL.AveRes[{Average Results}][{Total}][0].PoreVolume")
Runtime data
All of the internal REVEAL data are available during a simulation. This data is not available
once a simulation has been stopped. Since this data is extremely large and most of it of no
interest only some variable will be specified. Great care should be taken setting internal
calculation variables to the point where it is not recommended for most variables, with the
exception of well control variables.
REVEAL Manual
February, 2011
User Guide
294
295
REVEAL
"REVEAL.Master.P[0][99]"
"REVEAL.Master.P[1][99]"
"REVEAL.Master.P[2][99]"
"REVEAL.Master.S[0][99]"
"REVEAL.Master.S[1][99]"
"REVEAL.Master.S[2][99]"
"REVEAL.Master.TT[99]"
"REVEAL.Master.RSSOL[99]"
"REVEAL.Master.GRIDV[99]"
"REVEAL.Master.POR[99]"
Example - find the oil phase saturation for block IX,IY,IZ = (10,20,5) in the main grid
NX = DoGet("REVEAL.Master.NX")
REVEAL Manual
February, 2011
User Guide
296
NY = DoGet("REVEAL.Master.NY")
NZ = DoGet("REVEAL.Master.NZ")
IJK0 = (NZ-1)*NX*NY+(IY-1)*NX+IX
IJK = DoGet("REVEAL.Master.ACTIND["+Cstr(IJK0-1)+"]")
SO = DoGet("REVEAL.Master.S[1]["+Cstr(IJK-1)+"]")
Runtime Commands
These commands may be used during a simulation. They are mainly associated with well
control.
The units for data input may be set to the default internal REVEAL units using the command
(this is assumed for the examples below):
"REVEAL.RUN_DOUNITCONV(0)"
If the units set in the schedule section of the REVEAL wizard interface are required, then the
following command may be given.
"REVEAL.RUN_DOUNITCONV(1)"
The following is a table of well control commands available.
OpenServer String
"REVEAL.RUN_RESTART()"
"REVEAL.RUN_DEBUG_RESTART()"
"REVEAL.RUN_BASIC_RESTART()"
"REVEAL.RUN_DOUNITCONV(0)"
Function
Make a normal restart file
Make a debug restart file
Make a basic restart file
Set the unit conversion for
runtime command arguments
(0:field, 1:User)
297
REVEAL
fixed
downhole
rate
producer (1000 RB/d)
"REVEAL.RUN_WELL_PRODUCE_PWF(""well_name"", 1000.0)" Convert a well to fixed
Pwf producer (1000 psig)
"REVEAL.RUN_WELL_PRODUCE_THP(""well_name"", 1000.0)"Convert a well to fixed THP
producer (1000 psig)
"REVEAL.RUN_WELL_PRODUCE_GASLIFT(""well_name"", 10.0)" Set a gaslifted well gas
lift rate (10 MMscf/d)
"REVEAL.RUN_WELL_PRODUCE_FREQUENCY(""well_name"", 60.0)"
Set a pump lifted
well frequency (60 Hz)
"REVEAL.RUN_WELL_INJECT_WATERRATE(""well_name"", 1000.0)"
Convert a well to
fixed water rate injector
(1000 STB/d)
"REVEAL.RUN_WELL_INJECT_WATERRESRATE(""well_name"", 1000.0)"
Convert a
well to fixed downhole rate
water injector (1000 RB/d)
"REVEAL.RUN_WELL_INJECT_GASRATE(""well_name"", 10.0)" Convert a well to fixed
gas rate injector (10 MMscf/
d)
"REVEAL.RUN_WELL_INJECT_GASRESRATE(""well_name"", 1000.0)" Convert a well to
fixed downhole rate gas
injector (1000 RB/d)
"REVEAL.RUN_WELL_INJECT_WATERPWF(""well_name"", 1000.0)"
Convert a well to
fixed Pwf water injector
(1000 psig)
"REVEAL.RUN_WELL_INJECT_GASPWF(""well_name"", 1000.0)" Convert a well to fixed
Pwf gas injector (1000 psig)
"REVEAL.RUN_WELL_INJECT_WATERTHP(""well_name"", 1000.0)"
Convert a well to
fixed THP water injector
(1000 psig)
"REVEAL.RUN_WELL_INJECT_GASTHP(""well_name"", 1000.0)" Convert a well to fixed
THP gas injector (1000 psig)
"REVEAL.RUN_WELL_INJECT_SETTEMPERATURE(""well_name"", 100.0)"
Set
an
injection well bottom hole
temperature (100 F)
"REVEAL.RUN_WELL_INJECT_TPDTEMPERATURE(""well_name"")"
Set an injection
well to use TPD (injection
curve)
calculated
temperature
"REVEAL.RUN_WELL_CONSTRAINT(""well_name"",""QMAX"",1000)"
Set well constraint
for maximum rate (producer 1000
STB/d liquid, water injector 1000 STB/
d, gas injector 1000 MMscf/d)
"REVEAL.RUN_WELL_CONSTRAINT(""well_name"",""QOMAX"",1000)" Set well constraint
for maximum water rate (producer
REVEAL Manual
February, 2011
User Guide
298
299
REVEAL
"REVEAL.RUN_SET_SOURCE(""well_name"",0,0,500,100)"
REVEAL Manual
User Guide
IJKW
QO
QG
QW
QR
QL
GOR
WC
CGR
WGR
300
Example - get the perforation status and flowing radius of block 3 of well "well1"
DoCmd ("REVEAL.RUN_GETCOMP(""well1"",2,""PERF"")")
status = DoGet("REVEAL.MASTER.OSVAR")
DoCmd ("REVEAL.RUN_GETCOMP(""well1"",2,""RW"")")
rw = DoGet("REVEAL.MASTER.OSVAR")
unit = DoGet("REVEAL.MASTER.OSUNIT")
If only the unit is required, an optional 4th parameter may be set to 1. This will allow the unit
to be returned if a simulation is not running and no runtime data is present. This option is
primarily there for RESOLVE.
Set perforation data
"REVEAL.RUN_SETCOMP(""well_name"",block,0)" - This command will close the specified
perforation.
"REVEAL.RUN_SETCOMP(""well_name"",block,1)" - This command will open the specified
perforation.
"REVEAL.RUN_SETCOMP(""well_name"",block,1,RW,RE,KH,S,DIR)" - This command will
set some perforation data and recalculate the connectivity.
The data RW,RE,KH,S,DIR should be replaced with numeric values corresponding to the data
listed in the table above.
If RW, RE, KH or DIR is less than zero, then the current value will remain unchanged.
If S is less than -1000, then the current value will remain unchanged.
if DIR > 0, then RE and KH will be recalculated
if DIR = 0, then both RE and KH should be defined
Well block counting
Note that the block counter is indexed from 0.
Also, the ordering internally within REVEAL is altered from the vertical column or completion
301
REVEAL
table order if inactive blocks are completed (these are removed from the internal runtime list).
As an option to the RUN_GETCOMP and RUN_SETCOMP commands, an additional integer
optional flag may be set as a last argument.
If this flag is set to 1, then the block counter is indexed from zero, and is the same block
number as in the interface for vertical and completion table data entry regardless of whether
inactive blocks have been defined.
For example, if 5 completions are defined in the interface:
well Well1 at table 5
1 1 1 1 1 -1 0.354
2 1 1 2 1 -1 0.354
3 1 1 3 1 -1 0.354
4 1 1 4 1 -1 0.354
5 1 1 5 1 -1 0.354
0
0
0
0
0
0
0
0
0
0
3
3
3
3
3
!
!
!
!
!
feet
feet
feet
feet
feet
day/scf
day/scf
day/scf
day/scf
day/scf
And, if completions 2 and 3 are within an inactive blocks, then only completions 1, 4 and 5 are
listed within REVEAL, and may be obtained with either of these functions.
Completion layer 1: "REVEAL.RUN_SETCOMP(""Well1"",0,1)" or "REVEAL.RUN_SETCOMP
(""Well1"",0,1,1)"
Completion layer 4: "REVEAL.RUN_SETCOMP(""Well1"",1,1)" or "REVEAL.RUN_SETCOMP
(""Well1"",3,1,1)"
Completion layer 5: "REVEAL.RUN_SETCOMP(""Well1"",2,1)" or "REVEAL.RUN_SETCOMP
(""Well1"",4,1,1)"
Completion layer 5 status: "REVEAL.RUN_GETCOMP(""Well1"",2,""PERF"")" or "REVEAL.
RUN_GETCOMP(""Well1"",4,""PERF"", 0, 1)"
Note the additional 'placeholder' argument 4 set to zero required due to it being used to
indicate whether unit only data is required (see above).
February, 2011
User Guide
302
The 9 point horizontal flow scheme enables to minimise grid orientation effects by allowing
diagonal flow, as illustrated in the diagram below, and is therefore the recommended (i.e. and
default option in REVEAL). It is believed to be a more realistic approach to fluid flow in the
reservoir.
If a 5 point average scheme is used then flow will be enhanced in the grid direction relative to
its diagonal direction, and on the other hand, the flow in the diagonal direction will be underestimated.
Therefore, this can generate differences in estimated breakthrough times for instance.
This can be shown by the following example: a simple grid with one injector and one producer,
both controlled with fixed rates.
The interest of this model is to be able to monitor the difference in water breakthrough time
between a 5 point scheme and a 9 point scheme.
Case 1: The injection and the production wells are aligned in the direction of the grid.
Comparing the water breakthrough obtained by running this model using 5-point or 9-point
averaging, the following results are obtained.
303
REVEAL
Due to grid orientation effects, the 5-point scheme will predict the water breakthrough in the
producer to happen around 3 month earlier than the 9-point scheme.
This example is available on demand: edinburgh@petex.com
Case 2: The injection and the production wells are diagonally spaced compared to the grid
direction.
REVEAL Manual
February, 2011
User Guide
304
Comparing the water breakthrough obtained by running this model using 5-point or 9-point
averaging, the following results are obtained.
305
REVEAL
Due to grid orientation effects, the 5-point scheme will predict the water breakthrough in the
producer to happen around 3 month later than the 9-point scheme.
This example is available on demand: edinburgh@petex.com
In summary:
- If the wells are positioned in the direction of the grid, a 5-point scheme will
predict a early water breakthrough
- if the wells are positioned diagonally to the direction of the grid, a 5-point
scheme will predict a late water breakthrough
It is important to consider that the 5 point scheme is the default used by ECLIPSE, therefore
this scheme should be used for imported models that have been history matched using this
option.
REVEAL Manual
February, 2011
User Guide
306
307
REVEAL
ELASTIC STRAIN
When considering an ideal elastic strain behavior, the removal of the deforming stress
will lead to an immediate return of the body to its original unstrained shape.
An analogy of that type of strain is the compression and release of a spring.
The behaviour of perfectly elastic bodys is governed by Hookes law:
e= /E
e is the extensional strain = L / L
is the stress applied
E is a constant known as Youngs Modulus, characteristic of the material.
An ideal elastic stress / strain relationship is represented below:
REVEAL Manual
February, 2011
User Guide
308
The stress at which fracture occurs might be referred as yield stress or material strength.
The importance of the plastic behaviour of a rock will depend on the following parameters:
Differential stress (The difference between the biggest and smallest stresses applied
to the rock).
Hydrostatic pressure (Affects the rock strength: When hydrostatic pressure increase,
the critical stress intensity will increase)
Temperature (Decrease in temperature reduces the yield stress of strength of the
rock).
Pore Fluid pressure (Modifies the ratio between 1and 3, facilitating rock failure).
Strain rate (The extent of the period of time over which a certain stress is applied will
lead to a different strain behavior).
4. Rock Mechanics Parameters: What do they mean?
When considering fracture mechanisms in a reservoir, the following parameters have to be
considered:
YOUNG's MODULUS
Youngs Modulus has been defined earlier as being the slope of the stress / strain
relationship.
Its dimension is Force / Unit Area, with a unit of psi if one considers standard oilfield
units.
A material that is difficult to deform will therefore have a high youngs modulus.
For instance:
Material
Rubber
1,500 to 15,000
Sandstone
Oak Wood
1,600,000
Aluminium
Alloy
10,000,000
Diamond
150,000,000
POISSON's RATIO
Poissons ratio determines the lateral displacement that a solid will exhibit to
accommodate a certain change in volume: when a sample of material is stretched in one
1990-2011 Petroleum Experts Limited
309
REVEAL
Poissons ratio is therefore the ratio of the relative contraction strain (i.e. normal to the
applied stress) divided by the relative extension strain (i.e. in the direction of the applied
stress). It is a non-dimensional parameter.
For a perfectly incompressible material the Poissons ratio will be 0.5.
For an infinitely compressible material the Poissons ratio will be 0.
Guidelines regarding values of Poisson's ratios in different types of rocks can be found
in the illustration below:
REVEAL Manual
February, 2011
User Guide
310
311
REVEAL
Layers
Layer
Sandstone
Layer 2: Shale 1.5e6
Layer
3: 2e6
Sandstone
0.265
0.25
It is possible to see that the evolution of Young's Modulus and Poisson's Ratio observed
when comparing the sandstone layers and the shale does not make sense: The
Poisson's ratio in the shale is higher than in the sandstone, which will be expected,
however this is linked with a Young's Modulus that is lower for the shale than for the
sandstones.
In reality, as in this case, the correct Young's Modulus for the shale is 3.2e6 psi.
THERMO-ELASTIC COEFFICIENT
The thermo elastic coefficient translates the effect of temperature on the reservoir
stress field.
Lets consider a sample of rock. The grains are kept together by cementation; if the
temperature of the rock is decreased (e.g. by injecting cold water in the reservoir) the
rock will tend to shrink. However, because it is linked to the rest of the reservoir, this
specific sample of rock will not be able to shrink and its volume will have to be kept
constant.
The decrease in temperature will then force the rock cementation to fight against the
shrinkage potential. This will then make the rock weaker and reduce the stress field. The
rock will then be more liable to fracture.
PORO-ELASTIC COEFFICIENT
The poro-elastic coefficient translates the effect of fluid pressure on the reservoir stress
field.
Lets consider another sample of rock. The grains are kept together by cementation; if
the fluid pressure of the rock is increased (e.g. by injecting water in the reservoir) the
rock will tend to expand. However, because it is linked to the rest of the reservoir, this
specific sample of rock will not be able to expand and its volume will have to kept
constant.
The increase in pressure will then provide additional "support" to the rock cementation
and make the rock stronger. This will result in an increase in the stress field. The rock
will then be less liable to fracture.
EFFECT OF TEMPERATURE AND PRESSURE ON THE STRESS FIELD
The following diagrams illustrate how the injection of cold water will affect the stress
field around the injection well, illustrating the effects of pressure and temperature
individually.
REVEAL Manual
February, 2011
User Guide
312
It is possible to notice that the injection of cold water will generally tend to decrease the
stress field around the wellbore, increasing the potential for fractures to be formed. The
impact of the temperature decrease on the stress field will generally be more significant
than the that of a pressure increase.
CRITICAL STRESS INTENSITY
The critical stress intensity represents the stress intensity that needs to be achieved for
the rock to fracture. It can be considered relatively equivalent to the yield stress defined
earlier.
EFFECTIVE STRESS
The effective stress is defined as being equal to the total stress minus the pore
pressure.
The following relationship can then be considered:
eff = tot - Ppore
If the effective stress is positive, the system is said to be in compressive state: the total
stress (i.e. a force that tends to keep the fracture closed) is higher than the pore
pressure (i.e.a force that tends to keep the fracture open). A fracture cannot initiate
or propagate when the system is in compressive state.
If the effective stress is negative, the system is said to be in tensile state: the total
stress (i.e. a force that tends to keep the fracture closed) is lower than the pore
pressure (i.e. a force that tends to keep the fracture open). A fracture can initiate or
propagate when the system is in tensile state.
313
REVEAL
February, 2011
User Guide
314
315
REVEAL
REVEAL Manual
February, 2011
User Guide
316
It is very instructive to consider the consequences of using such a model with an injection well
that is controlled by fixed rate or fixed BHP.
We now consider the effects of changing reservoir pressure. Reservoir pressure may
increase or decrease locally around an injector as a consequence of the entire reservoir
depletion.
The discussion relates to the following diagram.
A] Initially, within the reservoir, the in-situ stress will be above the reservoir pressure, and the
pressure required for fracture propagation will be above the stress. If this cannot be
achieved, then the fracture will not initiate.
B] If this pressure cannot be achieved initially, then a period of cooling is required to reduce
the stress until propagation can occur.
C] As the fracture propagates and the cooled region stabilises, the over-pressure required for
propagation reduces and the fracture pressure falls. As the fracture pressure falls, the
injection rate rises.
D] If the reservoir pressure falls, then the leakoff will tend to increase and the fracture
pressure will fall to maintain the leakoff. As the fracture pressure falls, the fracture will stop
propagating and start to close, until it collapses completely when the fracture pressure falls
below the stress.
E] If the reservoir pressure rises, then the fracture pressure will rise to maintain the leakoff.
When the fracture pressure rises sufficiently above the stress the fracture will propagate,
1990-2011 Petroleum Experts Limited
317
REVEAL
and continue to propagate as long as the reservoir pressure rises. If the reservoir pressure
rises above the stress, then the fracture size will be unbounded by the rock mechanics (the
formation is effectively unconsolidated).
These simple examples demonstrate how to approach analysis of the thermal fracture model
in REVEAL.
It is useful to look at the dynamic changes to fracture pressure, stress and reservoir
pressure.
REVEAL Manual
February, 2011
Chapter
319
REVEAL
Worked Examples
3.1
This document contains tutorials for the Petroleum Experts software REVEAL.
These tutorials will lead you through a number of program examples.
If you are relatively new to the software, then these will allow you to use the software
immediately and will provide a good overview of the programs functionality.
The tutorials will be split into three sections:
Dexterity Examples:
The first set of tutorials is for beginners and focuses on the dexterity skills needed to
use the program.
Physics Examples:
The second set of tutorials assumes the user understands the basics of the program
and focuses more on physics and engineering issues relating to the program.
OpenServer Examples:
The third set of tutorials focuses on the use of OpenServer: i.e. how to control the
program through external macros.
The models used in these examples can all be found under the samples sub-directory of the
main installation.
The models are distributed as REVEAL files characterised by the.RVL extension.
A detailed index of the examples available can be found in the Worked Examples - Index
section.
3.2
The following table can be used as a reference for the worked examples included in this
guide:
Application Area
Setup of a
REVEAL model
REVEAL Manual
Topic
Examples
Section
Hyperlink
Getting Started
Type of Example
Step by Step
February, 2011
Worked Examples
Importing an
Eclipse model
into REVEAL
Use of radial
aquifers
Thermal
Fracturing
Souring
Dry Gas
Retrograde
Condensate
a forecast and
analyse the
results.
Demonstrates
Dexterity
how to import and Examples
Eclipse deck
within REVEAL
and how to
compare the
results of both
software for a
similar simulation.
Demonstrates
Dexterity
how to setup a
Examples
radial aquifer in a
simple REVEAL
model.
Demonstrates
Dexterity
how to setup a
Examples
thermal fracture
calculation
including fracture
initiation and
propagation.
Demonstrates
Dexterity
how to setup a
Examples
simple souring
model without
minerals (i.e. this
model is not using
the water
chemistry module)
being defined in
the reservoir and
injected water.
Demonstrates
Dexterity
how to setup a
Examples
REVEAL model
with a dry gas
PVT.
Demonstrates
Dexterity
how to setup a
Examples
REVEAL model
with a retrograde
condensate PVT.
Eclipse Import
Step by Step
Radial Aquifer
Step by Step
320
Souring
Step by Step
Dry Gas
Step by Step
Retrograde
Condensate
Step by Step
321
REVEAL
Radial Gridding
Demonstrates
Dexterity
Radial Grid
how to setup a
Examples
radial grid within
REVEAL.
Curvilinear
Demonstrates
Dexterity
Curvilinear Grid
Gridding
how to setup a
Examples
curvilinear grid
within REVEAL.
Grid Refinement Demonstrates
Physics Examples Grid Refinement
how to setup a
REVEAL model
including grid
refinement.
Water Chemistry Demonstrates
Physics Examples Water Chemistry
how to use both
water chemistry
and souring
models.
Permeability
Demonstrates
Physics Examples Permeability
Reduction
how to use the
Reduction
permeability
reduction model
of REVEAL due to
adsorption of
species formed
through the water
chemistry
reactions.
Step by Step
Step by Step
Step by Step
Step by Step
Step by Step
Surfactant
February, 2011
Worked Examples
Asphaltene
Non-Newtonian
Fluid
Equalizer
Modeling
322
impact of wellbore
heating in order to
reduce fluid
viscosity around
the wellbore.
Demonstrates the Physics Examples Asphaltene
Step by Step
use of the
Asphaltene model
associated with
permeability
reduction
calculations.
Demonstrates the Physics Examples Non-Newtonian
Step by Step
use of REVEAL in
Fluid
case the fluid
considered is a
non-Newtonian
fluid.
Demonstrates the Physics Examples Equalizer
Step by Step
use of complex
horizontal
completions, with
both tubing
screens and
Equalizer
options.
Demonstrates the OpenServer
OpenServer - WellStep by Step
use of
Examples
Results
OpenServer to
export all well
results to an Excel
spreadsheet.
Demonstrates the OpenServer
OpenServer - WellStep by Step
use of
Examples
Production
OpenServer to
report block by
block well
production rates.
Demonstrates the OpenServer
OpenServer Step by Step
use of
Examples
Batch Matching
OpenServer to
automate batch
calculations for
sensitivity /
matching analysis.
323
REVEAL
3.3
Step by Step
Getting started
REVEAL Manual
February, 2011
Worked Examples
324
In common to all Petroleum Experts software, the main functions should be accessed from
left to right across the menu bar.
Within one section of the menu, sub-section are organized so that logical progress can be
made by going from the top to the bottom of the list.
Setup the Unit System
Select Options|Units and reset the input and output units to Oilfield, then select OK.
325
REVEAL
REVEAL Manual
February, 2011
Worked Examples
326
327
REVEAL
When using the Wizard, the on-context help can be invoked by selecting the Help button on
the right hand side of the wizard screen.
REVEAL Manual
February, 2011
Worked Examples
328
The default solver options (i.e. Fully implicit solver and associated settings) are setup to
handle successfully a wide range of model, and should only be modified when facing specific
cases such as non-convergence issues for instance.
More information regarding the effect of the different solver options can be find in the Input
Wizard | Control Section.
The next screen selects the models that will be included and sets the reference depth and
temperature.
- A reference temperature is needed for certain correlations that require reference
conditions
- A reference depth is needed to report mean reservoir pressures
For this simple example, simply add the reference conditions as shown below, and select
Next.
329
REVEAL
The next screen enables to select reservoir components additional to the standard oil, gas
and water including non-reservoir injection gases.
In this example, none of these additional components are selected.
Select Next. This completes the control section.
February, 2011
Worked Examples
330
The next screen enters the reference depth at the top of the grid. Select Add, then All, to
select all the blocks, then enter a value of 10000 ft.
This data has been entered and can be checked using the Validate button.
The list of data entered is not updated on the screen dynamically, but may be seen by clicking
left over the list.
There is no need to click on the Add button to confirm this set of data.
331
REVEAL
Select Next to enter the porosity data, select Add, then select All grid blocks, and enter a
value of 0.2.
Select Next to enter the X direction permeability, select Add, then select All grid blocks,
enter a value of 100 mD.
Select the Y Permeability tab at the bottom of the screen, and leave the Y direction
permeability multiplier at 1, select Z Permeability tab and set the Z direction permeability
multiplier to 0.1.
This will lead to the following distribution of permeability in the reservoir:
- Horizontal permeability is uniform through the reservoir and equal to 100mD.
- Vertical permeability is uniform through the reservoir and equal to 1/10th of the
horizontal permeability, therefore 10mD.
Select Next to enter transmissibility multiplier data. This is an optional parameter.
If used, the transmissibility calculated for the positive face between the cell considered and its
neighbor will be multiplied by the value entered.
REVEAL Manual
February, 2011
Worked Examples
332
Each cell in the grid has an index specified in each direction of the grid (i.e. X, Y and Z). The
combination of these three indexes is unique and enables to characterise the location of a cell
in the grid.
The positive face of a cell in one direction is defined as the face enabling communication
between the cell considered (i.e. characterised by an index i) and the adjacent cell (i.e.
characterised by an index i+1), as specified by the diagram below.
These transmissibility multipliers are usually used to model the effect of transmissibility
barriers for instance.
We won't be using these so select Next to enter absolute transmissibility data.
If this is entered (and the drop-down list at the top of the screen is changed to say 'Yes')
REVEAL will not perform its own transmissibility calculations but will use these
transmissibilities directly.
These would normally be imported directly from the results of another simulator: it is
particularly important to use these absolute transmissibilities when trying to reproduce in
REVEAL the results of another simulator with the same model. More information regarding
this subject can be found in the External Data Import section.
We won't be using these, select Next.
We won't be setting net-to-gross ratios so select Next again.
We won't be using pore volume multipliers so select Next again to define rock types.
Large pore volume multipliers can be specified at the edge of sector models to
ensure that the pressure at the reservoir boundaries stays constant during the
run.
We will have only one rock type and this is the default set on this screen (one rock type
covering the entire grid). The same goes for PVT, equilibration and fluid in place regions on
the next two screens.
1990-2011 Petroleum Experts Limited
333
REVEAL
The fluid in place region enables to define several oil in place regions in the model to obtain
information such as recovery factors per region for instance. One option will be to define one
oil in place region per layer for example.
After completing the PVT, equilibration and fluid in place region screens select Next to enter
non-neighbour connections, then Next again to enter grid refinement regions. We won't be
using either of these for this example.
This ends the reservoir section and the data entered should be saved. Select Finish to end
the wizard and write the data entered to the input script. Then select File|Save Project to
save the REVEAL archive.
The data entered so far can be seen by scrolling up within the input script window.
REVEAL Manual
February, 2011
Worked Examples
334
The fluid properties at different P and T can be estimated by using either black oil PVT
correlations or PVT tables, as per the other tools of the IPM suite.
Taking into account the volume of calculations to be done in REVEAL it is generally preferable
to generate PVT tables from a correlation (i.e. this technique is valid with either matched or
unmatched PVT correlations).
This will enable to decrease the simulation run time.
The range of pressures and temperatures considered when generating the PVT tables should
be wide enough to cover the reservoir conditions encountered during the run.
If not REVEAL will have to extrapolate the PVT tables and this may lead to erroneous results.
For this reason a facility is available to generate tables from a correlation.
Tables and enter the following ranges.
Select Calc
335
REVEAL
Next select Calculate, then OK and Done to return to the main PVT screen.
Select Tables to check the table data has been generated correctly, as illustrated below: in
this case, both saturated and undersaturated tables have been created for a range of
pressure up to the maximum pressure entered and for one single temperature, 200F.
REVEAL Manual
February, 2011
Worked Examples
336
When Done is selected to return again to the main PVT screen, the Use Tables option is
automatically selected, as illustrated below:
337
REVEAL
It is important to note that REVEAL is always performing fully thermal calculations, even if the
PVT is not defined as thermal.
The following situations can then occur:
1. IsoThermal PVT is defined: REVEAL will calculate how the temperature evolves in
the system, but will not modify the PVT properties of the fluid in situ.
2. Thermal PVT is defined (i.e. PVT tables include several temperatures): REVEAL will
calculate how the temperature evolves in the system and will modify the PVT properties
of the fluid in situ.
This will result in the correct modelling of injectivity in cold water injectors for instance,
where the change of water viscosity due to the drop of reservoir temperature modifies
the injectivity of the wells.
As REVEAL is always performing fully thermal calculations, the default thermal properties
should always be selected when setting up the model.
More over, it will be recommended to include thermal exchanges by conductivity by selecting
the "Thermal Conductivity" option, as illustrated below.
Once this has been selected, the Default thermal properties button should be used to setup
automatically the default values for the fluid and rock heat capacities.
REVEAL Manual
February, 2011
Worked Examples
338
Note that units may altered dynamically by left clicking over the unit (highlighted above). Don't
alter the units now.
Diffusivity and Dispersivity models can be selected in this screen as well. These options will
be available only if the IMPES solver is used.
Select Validate to check the data entered. Click right over any data entry cell and select
Validation Range to change the minimum and maximum values.
It is not necessary to alter the validation range for REVEAL to accept data input. Any
changes made to the validation ranges are saved with the file.
Compressibility Data:
Select Next to enter the rock compressibility, enter a value of 1e-5 psi-1 at 5000 psig for the
uniform pore volume compressibility, as illustrated below.
339
REVEAL
It is possible to enter rock compressibility rather than pore volume compressibility in REVEAL
by changing the compressibility definition.
- In case the rock compressibility is selected, the volume of rock the compressibility
value considers does not include the pore volume.
- In case the pore volume compressibility is selected, the volume of rock the
compressibility value considers include the pore volume.
Select Next to enter various (mostly optional) viscosity model parameters. No data entry is
required for this model so select Next to complete the physical data section.
February, 2011
Worked Examples
340
The next step will be to create and define the different residual saturations and relative
permeability regions present in the model.
In the case considered, there is only one saturation and relative permeability region defined.
Select Add Region and make sure the Rock Coverage All checkbox is ticked.
Enter the residual phase saturations as shown and select Next.
Residual saturations for desaturation and gas hysteresis would be entered on this
screen if these models were active.
341
REVEAL
If the Data Entry option is set to Tabular rather than Parametric, one can enter the
residual saturations as tables rather than end points and Corey Exponent.
Tables can be copied and paste from an Excel spreadsheet for instance.
Enter the following data and select Plot to view the data entered.
Select OK, then Next to enter the capillary pressure data.
We are going to have no capillary pressure in this model, so enter the following tabular data.
Capillary pressures can be entered either under tabular form or using the J-Leverett function.
REVEAL Manual
February, 2011
Worked Examples
342
This completes the relative permeability section, so select Finish to write all of the data
entered so far to the input script.
Save the REVEAL archive and restart the wizard at the Wells section.
Note that the Aquifer, Mobility, Phase behaviour, Adsorption, Water Chemistry and Solids
sections are not required for this simple example.
These sections are therefore greyed out in the progress window in the wizard right hand side
corner.
343
REVEAL
- User entered connection factors (i.e. this is the option used when data is imported
from a third-party simulator deck)
- Multilateral wells entered through their deviation survey. This type of well is defined as
Multilateral and wellbore friction and crossflow can be modelled when using this type of
well definition.
We are going to enter one horizontal well perforated at a depth of 10150 ft (centre of the
reservoir).
In the wells list select Create to add the well, then select Multilateral description in the
Enter well position by selection box.
Give the multilateral description an identifier name (e.g. horiz) and set the BHP (Pwf)
reference to Fixed depth and set a value of 10050 ft (remember the top of the reservoir is at
10000 ft and we have 5 vertical blocks of 20 ft each).
In REVEAL it will be possible to use tubing performance curves to describe the well outflow
performance. If this the case, it is important that the well reference depth set in that
section matches the one defined when generating the well outflow performance curve.
In other words, the depth entered as reference depth in REVEAL should correspond to the
top of the perforation defined in PROSPER (i.e. lower depth in the PROSPER file downhole
equipment section).
REVEAL Manual
February, 2011
Worked Examples
344
Select the Edit Multilateral button to enter the deviation survey for the well.
Select the Change Reference button to set the first node of the well at coordinates
(2000,3750,10150).
Select OK once the reference position has been entered.
Select Add tubing and then OK. Next, enter the deviation survey as shown below.
1990-2011 Petroleum Experts Limited
345
REVEAL
Note that the internal diameter and roughness units have been change from feet to inches,
and finally select OK to return to the wells input screen.
In order to obtain the image above, that shows a cut of the reservoir in the Y direction with an
upscaled Z scale and a transparency applied to the system, the following steps were used:
REVEAL Manual
February, 2011
Worked Examples
346
347
REVEAL
- 5: Rotate the view using the mouse left button and zoom in/out using the mouse roller
button.
If the view becomes too distorted, the F5 button enables to come back to the initial
view.
- 6: The red floppy disk icon on the top right hand side of the view enables to save the
graphic configuration used.
Give a name to the file to be saved, and this specific viewing configuration can be reused directly by selecting the 3D | Load View option in the 3D graphical window.
- 7: Close the plot window to return to the wizard and select Next to complete the
Wells section.
REVEAL Manual
February, 2011
Worked Examples
348
349
REVEAL
REVEAL Manual
February, 2011
Worked Examples
350
351
REVEAL
REVEAL Manual
February, 2011
Worked Examples
352
It is possible to note that in this case, all the parameters have been selected to be reported,
and the frequency of the 3D grid array has been set to 1 timestep.
This is a setup that can be useful for initial runs to gain a good understanding of how the
model / reservoir is behaving. However, it will tend to generate a large amount of results,
which might not be practical, especially when working with larger models.
Start the calculation using the "Play" button ( ) and save the REVEAL archive once it has
completed.
The other buttons on the Play bar can be used as follow:
- The button enables to run the simulation on a step by step basis
- The button enables to run the simulation until a specific date specified by the user
- The pause and stop button are available as soon as the simulation is running
When the simulation is running, the calculation progress will be displayed and it will be
353
REVEAL
possible to visualise the average, well, 3D and wellbore results using the visualisation buttons
below.
February, 2011
Worked Examples
354
- The button provides average reservoir properties such as mean phase pressures,
saturations and volumes for the different regions defined in the model.
These data may be viewed, plotted and printed, or copied to the clipboard for import
into another application.
The Save button available on that screen enables to save this specific set of results so
that it can be retrieved even after another simulation has been run with the same model.
This can be used to compare results between different runs.
It is important to note that if the results are not saved that way, each time a new
run will be launched, results of previous runs will be overwritten and therefore lost.
- The button provides well results data, including instantaneous and cumulative rates,
GOR, water cut and phase pressure and saturation data at well blocks.
The Save button available on that screen enables to save this specific set of results so
that it can be retrieved even after another simulation has been run with the same model.
This can be used to compare results between different runs.
It is important to note that if the results are not saved that way, each time a new
run will be launched, results of previous runs will be overwritten and therefore lost.
- The
button provides a three dimensional display of the fluid properties that were
selected for display (Run Simulation|Select Properties...).
It includes graphical representation of wells, completions and fractures.
The following buttons are available on the 3D menu bar:
The
properties.
The "Play" button enables the user to visualise REVEAL results through time for
the simulation run. The interval at which 3D snapshots are saved has been defined
prior to the simulation being run. For more information regarding how to setup
these, please refer to the Run Simulation section.
The "Fast Forward" button enables to go step by step through the run results
The "Play to End" button enables to go directly to the last 3D snapshot,
corresponding to the end of the simulation run.
The
buttons respectively enables to recall a 3D view that has already been
saved and to save a 3D view.
The
buttons respectively enable to select, unselect, select multiple grid
block and visualise grid block properties. Once individual blocks have been
selected, 2D plots of the grid block properties can be seen and saved using the
CR button. The select multiple grid block button enables as well to select
automatically all the grid blocks in which a well is completed.
355
REVEAL
The
button enables to calculate the distance between two points. It is
important to note that the distance calculated will be accurate strictly if the
different points considered are located on the same plane.
The
buttons respectively enable to Zoom In, Zoom Out of the current view
and to come back to a standard view.
The
buttons respectively enable to select the variables to view prior
to running the simulation, select the viewing properties, set a scale range, select
the playback options and the visualisation preferences (i.e. colour scales used can
be modified in there).
The following is a list of recommended control functions within the 3D display window.
Left mouse
Ctrl+right mouse
Shift+left mouse
Ctrl+left mouse
Mouse Roller Button
F5
W key
S key
The following is a list of recommended options available using the right mouse button
within the 3D display window.
right mouse|3D Options set block shrink factors, surface transparencies and
select regions of blocks (usually a plane of blocks) to
view.
right mouse|Scale
set the scale range for colour tables; set linear and
logarithmic scaling and the end points (minimum and
maximum values to scale between).
right mouse|Object Properties
set visibility (presence or absence),
transparency, wire-frame or surface mode for
individual elements within the display (e.g. set fractures
to be wire-frame). Some element types may be
selected individually (wells, completions, fractures) by
selecting the appropriate element type with the left
mouse button in the Viewing Objects column of the
table.
right mouse|View
set the variable to view.
right mouse|Playback Options
set the range, interval and speed of 3D
playbacks.
REVEAL Manual
February, 2011
Worked Examples
356
It is possible to display separate results and runtime windows by using the View | Cascade
option in the main menu bar.
3.4
Dexterity Examples
357
REVEAL
REVEAL Manual
February, 2011
Worked Examples
358
3. The first import wizard screen will appear. This screen enables to select the files to import
in REVEAL.
The first step to take in this screen is to select what type of file needs to be imported.
In order to import Eclipse files, it will be necessary to select the Eclipse deck (.init, .grid, .
rst/unrst, .data) option.
The Browse button can be used to select the directory where the Eclipse files are saved.
After doing so, it will be needed to enter the name of the file considered:
- name of the Eclipse init file
- name of the Eclipse grid file (if this file has got the same name than the init file, there
is no need to specify it again)
- name of the Eclipse data file (if this file has got the same name than the init file, there
is no need to specify it again)
To load the Well Data from the Eclipse deck, a restart file is required. REVEAL will import the
information about the completion of the wells only from the Restart files.
If the restart data needs to be imported, the Load solution / Restart data (for solution
data and well tables) option must be selected.
The name of the restart file then needs to be entered (if this file has got the same name than
the init file, there is no need to specify it again).
For this example, the file considered is a unified restart file (i.e. it is characterised by the .
unrst extension). It is therefore needed to select the Unified restart file option.
359
REVEAL
It is now possible to pass to the following import wizard step, which will enable one to select
the information to import from Eclipse to REVEAL. To do so, the Next button should be used.
REVEAL Manual
February, 2011
Worked Examples
360
In this case, endpoint scaling is not use in the Eclipse deck, so the Endpoint scaling data is
not selected.
1990-2011 Petroleum Experts Limited
361
REVEAL
It can be seen that in the 'Well and Solution (restart) data' section the user has the ability to
select dates. These dates correspond to the dates on which the restart files were created in
Eclipse.
For the 'Well Data' section, it is possible that in the Eclipse Deck there are more than one
wells and that the wells come online at different dates. The restart file which has the
information for all the wells in the Eclipse deck will be the last restart file i.e. at the end of the
Eclipse run. Therefore by default REVEAL will select the last available date on which to read
the information about the wells.
The 'Solution data' section corresponds to the date on which to read the condition of the
reservoir. REVEAL will import the condition of the reservoir on the date selected in the
'Solution Data' section. To import the correct information about the reservoir, it is important to
select the first date, which corresponds to the date on which the forecast run was started.
REVEAL by default will select the first available date.
Once all the data to import have been selected, a REVEAL model will be created including all
the data from the Eclipse model that have been selected.
The following screen enables one to check the validity of the import process. It lists all the
parameters imported from Eclipse to REVEAL and specify if the import has been made
properly.
Here, it is possible to notice that all the parameters have been imported properly.
If a check is run in the Eclipse data file, it is possible to notice that these values were not
defined in the Eclipse file; therefore they have not been imported.
REVEAL Manual
February, 2011
Worked Examples
362
If several rock types / PVT tables are defined in the Eclipse deck (i.e. which is not the case
here), this screen will allow to relate the rock type maps imported from Eclipse to the rock
type maps used in REVEAL using the Map Imported Rock Tables to REVEAL rock types
and the Map PVT tables to REVEAL PVT regions option.
To complete the procedure, the Finish button can be used.
The Eclipse model is now imported in REVEAL, as shown by the automatic implementation of
the REVEAL script.
363
REVEAL
February, 2011
Worked Examples
364
365
REVEAL
REVEAL Manual
February, 2011
Worked Examples
366
367
REVEAL
- In the Schedule section: The Eclipse schedule is not imported in REVEAL. It then
needs to be setup.
For example, it will be possible to use the simple schedule defined below:
o an initial step size needs to be entered: here 1 day
o the well PROD is set to produce at a fixed rate of 2,000 STB/d from the
01/01/2007 to the 01/01/2008.
REVEAL Manual
February, 2011
Worked Examples
368
The REVEAL model can now be run as a classic REVEAL model is.
It will be important to proceed to some results quality control after the import procedure has
been done.
Other Possible Areas to be considered during the Import Procedure:
- Possibility of 3 point Endpoint scaling in Eclipse model: this should be set manually in
REVEAL.
- Analytical aquifers are not imported
- Refinement is not imported
- Only black oil and dry gas PVT tables can be imported
- By default, well crossflow is switched OFF in REVEAL
- Check that the Rs vs. depth table and equilibration data have been imported
correctly.
It is possible to find more detailed information regarding specific points of the Eclipse import
facility in the Importing from Eclipse (binary files) and the Importing from Eclipse (ASCII files)
1990-2011 Petroleum Experts Limited
369
REVEAL
REVEAL Manual
February, 2011
Worked Examples
370
371
REVEAL
Once this is done, the aquifer section will be added automatically to the input script and the
input wizard, as illustrated above.
Go to this section of the wizard to enter the aquifer properties.
2. Specify the Aquifer Properties in the Aquifer Section of the REVEAL input wizard.
Two types of aquifer are available in REVEAL: Linear and Radial. Each of them could be
defined as infinite acting (i.e. no external boundary will be defined for the aquifer) or finite
acting.
REVEAL Manual
February, 2011
Worked Examples
372
373
REVEAL
direction
Z from 1 to 5: the aquifer encroaches all the rows of grid blocks in the Z
direction
The data for aquifer 2 is illustrated below.
REVEAL Manual
February, 2011
Worked Examples
374
Results Analysis:
Once the model has been run, the impact of the aquifer can be analysed by plotting for
instance the water saturation evolution at certain points in time in a Y direction reservoir slice.
This can be obtained by going to 3D View |, select the water saturation in the View section
and select Cutting Plane and Y=10 cutting plane in the properties section.
Contours have been plotted on the graph below as well as they illustrate well the importance
of the water encroachment and pressure support due to the aquifers.
375
REVEAL
February, 2011
Worked Examples
376
2. Setup the thermal PVT in the Physical section of the input wizard.
For the variation of temperature due to injection of surface temperature water in the reservoir
is to be computed, it will be necessary to define the fluid PVT properties at different
temperatures.
It is important to note that if the PVT properties of the fluid are defined at only one
temperature, REVEAL will perform its calculations isothermally: it will not extrapolate the PVT
properties across a temperature range.
The following steps can be taken to setup thermal PVT:
- Go to the Physical section of the data input wizard and edit the reservoir hydrocarbon
properties.
377
REVEAL
REVEAL Manual
February, 2011
Worked Examples
378
- Specify a range of temperatures and pressures over which the PVT tables need to
be generated.
This ranges of temperature and pressure should cover the range of temperature and
pressure that will be encountered during the life of the reservoir.
- Calculate the PVT tables and click on Save
379
REVEAL
- Go to the Tables section to inspect the PVT Tables that have been saved.
REVEAL Manual
February, 2011
Worked Examples
380
- Make sure the "Use Tables" option is selected in the main screen.
381
REVEAL
REVEAL Manual
February, 2011
Worked Examples
382
More information regarding the fracture models can be found at the following location: Wells
Section | Fractures.
4. Turn the fracture update criteria ON in the Schedule section of the input wizard.
The fracture model will not be activated unless the fracture update criteria is turned ON.
The fracture update criteria can be found in the schedule section of the input data wizard, as
illustrated below.
383
REVEAL
It is important to notice that in the case considered, the temperature of the water injected has
not been specified, but is being taken from the lift curve assigned to the injection well, as
illustrated on the snapshot below.
REVEAL Manual
February, 2011
Worked Examples
384
Results Analysis:
When the model is running, the calculation progress log will provide information on the
evolution of the size and injection volume associated to the fracture.
385
REVEAL
Once the run is ended, it will be possible to analyse the evolution of the following parameters
close to the water injection wellbore.
- Temperature evolution around the injection wellbore.
It is possible to see the drop in temperature around the wellbore due to the cold
water injection
REVEAL Manual
February, 2011
Worked Examples
386
387
REVEAL
REVEAL Manual
February, 2011
Worked Examples
388
The same model has been run without the fracture being modelled. The plot below illustrates
the difference in the water injection rate at a fixed THP between both cases, illustrating the
impact of the fracture and therefore the importance of taking the fracture into account when
designing the water injection system for that reservoir.
389
REVEAL
3.4.5 Souring
Associated Files:.
The files associated with this example are located in C:\Program Files\Petroleum
Experts\IPM 7.0\Samples\reveal\\Dexterity_Examples\Souring
The file associated with that example is the following: Souring.rvl
Worked Example Objectives:
The main objective of this example is to illustrate the use and setup of the souring module in
REVEAL.
Model Setup:
Two souring models are present in REVEAL:
- Reduction Rate Based Model
This model is derived from the water chemistry model (i.e. the water chemistry model
needs to be active for the souring model to be used), and is mainly based on sulphate
reduction rate.
REVEAL Manual
February, 2011
Worked Examples
390
The downsides of this model are the fact that it requires short timesteps and has been
found not to model accurately the nutrient behaviour. This model has been super-seeded
by the activity based model described
below.
- Activity Based Model
This more recent model has been added in REVEAL v2.0 of IPM v6.0. It is
independent of the water chemistry module and model the nutrient behaviour more accurately
than the previous model.
On top of that, being independent from the water chemistry module, the timesteps that
can be taken are longer,leading to faster simulation runs.
This is the recommended model for souring modelling purposes.
Further technical details regarding both models can be found in the Souring section.
The model considered is constituted of one producer and one water injector. The souring
model (i.e. Activity Based Model) is activated in order to illustrate the development of the SRB
bacteria around the water injection wellbore and the consequent evolution of H2S
concentration in the reservoir.
In order to setup this model, the following steps can be taken:
1. Activate the Souring Model in the Control section of the input data wizard
391
REVEAL
Once the souring model is selected, the reservoir component list specified in the next screen
will automatically be updated to include the components needed by the souring model, as
illustrated below.
REVEAL Manual
February, 2011
Worked Examples
392
2. Specify the Partitioning Coefficients in the Water Chemistry section of the input
data wizard
In that example, no adsorption has been specified: all the species formed will be transported
with the fluid flow.
The adsorption section will then be left empty as illustrated below:
393
REVEAL
Once the list of components has been specified, one needs to specify the partitioning of the
H2S between aqueous and oleic phases, and between oleic and gas phases.
The partitioning is achieved by considering the H2S dissolved in the hydrocarbon phases to be
represented by an ideal gas in equilibrium with the aqueous phase.
The ideal gas H2S partial pressure is related to the mass concentration of H2S within the
hydrocarbon phase.
Reported separator concentrations are calculated using two partition coefficients that reflect
the effective partitioning which will be process dependent.
The Oil/Water partition coefficient defines the ratio (mass fraction of CO2 in separator oil)/
(mass fraction of CO2 in separator water). Mass fraction is lb/lb.
The Gas/Oil partition coefficient defines the ratio (volume fraction CO2 in separator gas)/
(mass fraction of CO2 in separator oil). Volume fraction is scf/scf.
If the "User H2S o-W partitioning" option is unselected, then the partitioning of H2S between
the oil and water phase will not be defined by the user, but an equilibrium database will be
used to estimate this partitioning.
REVEAL Manual
February, 2011
Worked Examples
394
More information on the partition coefficients can be found in the CO2 and H2S partitioning
section.
3. Specify the Souring model parameters in the Water Chemistry section of the input
data wizard
Once the partitioning data has been entered, the souring model parameters need to be
specified.
395
REVEAL
The temperature range entered enables to limit the activity of the SRB to a temperature range
they can physically sustain.
The concentration dependence section enables to define the minimum and maximum SRB
concentrations in the reservoir.
The growth and respiration dependence section enables to specify the mass ratio between
the carbon source and H2S and SRB respectively.
The nutritional efficiency enables to define the fraction of the SRB energy that is used for
growth and the fraction of the SRB energy that is used for respiration (i.e. and therefore for
H2S production).
The VFA activity rate enables to define the VFA consumption rate at the maximum SRB
concentration. In that case, at 100F, the activity of SRBs will be able to consume up to
100pm of VFA in a day.
The VFA available is partitioned between oil and water phases as defined by the VFA
partitioning parameter: a VFA partitioning of 10 illustrates the fact that the concentration of
REVEAL Manual
February, 2011
Worked Examples
396
VFA in the oil will be 10 times higher than the VFa concentration in water.
4. Specify the Reservoir Water Composition
In the initialisation section, one needs to specify the reservoir water composition as illustrated
below.
The following composition can be considered:
H2Soil = 0 ppm
H2Sgas = 0 ppm
Salinity = 100,000 ppm
VFAwater = 5,000 ppm
VFAoil = 50,000 ppm
Sulphate = 0 ppm
Sulphide = 0 ppm
Nitrate = 0 ppm
Hplus = 0.0001 ppm
397
REVEAL
REVEAL Manual
February, 2011
Worked Examples
398
399
REVEAL
Results Analysis:
The model is then setup and can be run.
1. Initial Run
In the initial run results, the following elements can be looked at:
- The temperature around the injector is lowered to values that are suitable for SRB
growth
REVEAL Manual
February, 2011
Worked Examples
400
- The VFA concentration is decreasing around the injector, due to the fact that the
reservoir water is displaced by the injected water that does not contain any VFA.
401
REVEAL
- The SRB concentration is increasing in areas where the temperature is within the
correct range and VFA is available.
- The evolution of the H2S concentration as well as the time to H2S breakthrough can
then be monitored, as illustrated below for well 2.
REVEAL Manual
February, 2011
Worked Examples
402
403
REVEAL
This modification will lead to a more efficient VFA flooding phenomenom, as illustrated below:
at the same day than the snapshot above, the concentration of VFA in oil around the injector
well is reduced.
REVEAL Manual
February, 2011
Worked Examples
404
This will lead to a later and smaller development of the SRBs in the reservoir as illustrated
below.
405
REVEAL
However, due to the faster movements of water, the area of the reservoir that is cooled down
and therefore available for SRB to grow is larger than in the earlier run, leading to a more
important development of the SRB at the end of the run.
This example illustrates as well the importance of starting to work with small straightforward
models to fully understand the impact of all the model parameters prior moving towards a
larger system where interpretation will be more difficult.
REVEAL Manual
February, 2011
Worked Examples
406
407
REVEAL
PVT tables can be generated (i.e. using table look-up techniques will tend to speed-up the
calculations) using the Calc.Tables section, however it is important to make sure that the
range of pressure and temperature over which the tables are generated is wide enough to
cover the reservoir prevailing conditions.
In this case, only one temperature is used as there is no cold fluid-injection: the downhole and
reservoir temperatures will therefore be assumed constant during the forecast.
REVEAL Manual
February, 2011
Worked Examples
408
When going back to the main PVT screen, make sure that the Use Tables option has been
selected, as illustrated below.
409
REVEAL
REVEAL Manual
February, 2011
Worked Examples
410
If the CGR evolution is plotted with time, it is possible to notice that the CGR is kept constant
in the reservoir, according to the assumption of the dry gas model.
411
REVEAL
Moreover, when considering the oil saturation, it is possible to note that it stays nil in the
reservoir for the entire simulation period, illustrating the fact that all liquid dropout will happen
at surface.
REVEAL Manual
February, 2011
Worked Examples
412
413
REVEAL
The main objective of this example is to illustrate the setup of a retrograde condensate
example in REVEAL.
Model Setup:
REVEAL includes similar options to the rest of the IPM suite when considering gas modelling:
- A dry gas PVT model that enables to model dry gases or condensate with very low
dropouts. In that case, a constant CGR will be defined for the fluid and the liquid will only
dropout at surface conditions.
This will therefore lead to a single phase system unless water is present in the system.
More information regarding how to model such a fluid can be found in the Dry Gas
worked example section.
- A retrograde condensate PVT model that enables to model retrograde condensates.
In that case, liquid dropout at reservoir and well conditions will be taken into account.
A guide on how to setup such a model can be found below.
The setup of a retrograde condensate model is exactly similar to the one of an oil model (i.e.
see the getting started guide) apart from the PVT file setup.
It is important to note that as for any application in the IPM suite, the validity of the black oil
retrograde condensate model needs to be checked prior using it for simulation purposes.
The validation procedure that needs to be used to check that model is described in details in
the PVT section of the MBAL manual.
The black oil retrograde condensate model should not be used if this validation
procedure has not successfully shown it is behaving accordingly to the real fluid.
In the physical section of the input wizard, the following steps can be taken:
1. Select "Retrograde Condensate" as the fluid type considered, and select a fluid
label
REVEAL Manual
February, 2011
Worked Examples
414
3. Match the Retrograde Condensate Model to experimental data and Generate PVT
tables
Matching of lab data can be performed similarly to an oil PVT.
PVT files (i.e. .pvt extension) that have been generated by other IPM suites applications can
be import directly as well by using the Import section.
415
REVEAL
February, 2011
Worked Examples
416
Results Analysis:
Analysing the results help us underline the differences between dry gas and retrograde
condensate models:
At t=0, the CGR in the reservoir is equal to 100 STB/MMScf, which correspond to the initial
CGR entered in the PVT at 5000psig.
417
REVEAL
Once the reservoir pressure starts dropping, the CGR evolution can be noted.
At a reservoir pressure of around 3850psig, the CGR has dropped to 45 STB/MMScf, which
corresponds to the vaporised CGR curve from the PVT.
REVEAL Manual
February, 2011
Worked Examples
418
419
REVEAL
The oil saturation in the reservoir evolves accordingly to the change in CGR, illustrating the
fact that the liquid dropout is taken into account at reservoir level.
REVEAL Manual
February, 2011
Worked Examples
420
421
REVEAL
REVEAL Manual
February, 2011
Worked Examples
422
423
REVEAL
REVEAL Manual
February, 2011
Worked Examples
424
425
REVEAL
REVEAL Manual
February, 2011
Worked Examples
426
In the schedule section, the Perforations section needs to be used to specify the well
characteristics.
427
REVEAL
The perforations section enables to define the layer over which the wells are perforated, their
flowing radius, skin and potential PI multiplier.
They are updated from the well section.
REVEAL Manual
February, 2011
Worked Examples
428
In that model, the central well is setup as a producer, and the external boundary well is shutin, creating therefore a no-flow boundary at the grid outer limit.
Results Analysis:
Once the model is run, it is possible to view the results in the 3D, seeing for instance here the
oil pressure increase near the injection wellbore.
429
REVEAL
REVEAL Manual
February, 2011
Worked Examples
430
431
REVEAL
For the curvilinear grid option, the spacing between the well must be entered, and an
excluded fraction.
The excluded fraction is the fraction of the distance between the two wells excluded from the
model, which prevents stability problems near the wells. It should typically be set to about
0.05.
2. Enter the grid characteristics
Once the grid type has been specified, one needs to define the size of the blocks in the X and
Z direction.
REVEAL Manual
February, 2011
Worked Examples
432
433
REVEAL
REVEAL Manual
February, 2011
Worked Examples
434
In the schedule section, the Perforations section needs to be used to specify the well
characteristics.
435
REVEAL
The perforations section enables to define the layer over which the wells are perforated, their
flowing radius, skin and potential PI multiplier.
They are updated automatically from the well section.
Results Analysis:
Once the model has been run, it is possible to analyse the evolution of water and oil
saturations in the system.
1. Analyse the evolution of water saturation around the injector
REVEAL Manual
February, 2011
Worked Examples
436
437
REVEAL
REVEAL Manual
February, 2011
Worked Examples
3.5
438
Physics Examples
439
REVEAL
REVEAL.
Model Setup:
The model considered is a simple grid including two multilateral wells and three injection wells.
Grid refinement around each of these 5 wellbores are defined.
In order to define these grid refinements, the following procedure was used:
In the reservoir section, the number of grid refinements to be described can be entered, as
illustrated below:
REVEAL Manual
February, 2011
Worked Examples
440
The coverage of each grid refinement needs to be specified in that section as well.
Once these grid refinements are defined, it will be possible to notice that new input scripts,
one per grid refinement are created.
441
REVEAL
One needs to access each of these individual scripts to define the grid refinement: for
instance, for the refinement inj1:
REVEAL Manual
February, 2011
Worked Examples
442
Select the Edit Refinement option to define the grid refinement details: for each direction, one
needs to define a refinement ratio.
This will describe in how many sections the initial grid block will be divided.
For instance, the screen below specifies that the row 18 will be divided in two sections
compare to the size of the initial grid block.
443
REVEAL
The next screen shows that the reservoir characteristics are directly taken from the parent
grid values.
REVEAL Manual
February, 2011
Worked Examples
444
Results Analysis:
When visualising the results, it will be possible to define the viewing properties of each grid
individually.
445
REVEAL
REVEAL Manual
February, 2011
Worked Examples
446
447
REVEAL
This model is a simple square grid with two wells: one producer and one injector.
The objective of that example is to demonstrate the use of the water chemistry module: the
water injected will have a composition that will react with the reservoir water to form scales
species that may be transported or adsorbed within the reservoir.
REVEAL Manual
February, 2011
Worked Examples
448
449
REVEAL
2. Adsorption Section
In the model considered, we will assume that there is no adsorption phenomenon.
Therefore, the adsorption section will be left empty.
3. Water Chemistry Section
The first screen of the water chemistry section enables to specify the output region to be
considered and the calculation and output frequencies.
It is necessary as well to define a electro-neutralisation ion pair: a pair of positive / negative
ions is selected: should the composition of the reservoir / injection water not be neutral, the
necessary amount of these ions will be added to establish electro-neutrality. It will be
recommended to use the H+ / Cl- ion pair, as illustrated below.
REVEAL Manual
February, 2011
Worked Examples
450
The next step enables to describe the partition coefficients between aqueous and
hydrocarbon phases and between oleic and gas phases for H2S, CO2 or N2 if they are
present in the system.
Partition coefficients can be defined at reservoir and separator levels. In the model
considered, the "User H2S )-W partitioning" option is unselected: the partition coefficients wlll
therefore be defined from correlations.
451
REVEAL
4. Initialisation Section
The initialisation section enables to specify the reservoir water composition.
REVEAL Manual
February, 2011
Worked Examples
452
5. Schedule Section
The schedule section enables to specify the composition of the injected water.
453
REVEAL
Results Analysis:
When using the water chemistry module, two types of analysis can be done:
- Use the Water Chemistry Equilibration Tool to estimate the potential species that are
formed when mixing reservoir and injection water
- Use the full simulation run to study the formation / behavior of the different species
within the reservoir
1. Water Chemistry Equilibration Tool
The water chemistry equilibration tool can be accessed from the Input | Water Chemistry
Equilibration Calculation section of the main menu bar.
It is a utility that enable to quickly evaluate the effect of mixing reservoir and injection water
under different conditions and in different proportions without having to run the full model.
This is particularly useful as the water chemistry module can be found to take a large amount
of time to run in certain models.
REVEAL Manual
February, 2011
Worked Examples
454
455
REVEAL
REVEAL Manual
February, 2011
Worked Examples
456
- The injection water being rich in SO42-, the concentration of SO4- increases around
the wellbore.
457
REVEAL
- In parallel to the increase of SO42- around the injector, the concentration of Ba2+
drops. This is due to the formation of barite as underlined by the snapshot below.
As it is possible to notice, the barite concentration is higher towards the edges of the barite
rich area, showing that all the barite is transported (i.e. no adsorption) with the flood front,
illustrated below by the water saturation evolution.
REVEAL Manual
February, 2011
Worked Examples
458
459
REVEAL
In order to activate the permeability reduction option of REVEAL, the only modification to be
done to a model that has already the water chemistry option setup is to go to the adsorption
section and to specify a permeability reduction factor, as illustrated below.
REVEAL Manual
February, 2011
Worked Examples
460
This will then model the permeability reduction (R0) and porosity reduction due to adsorption
of species formed through the water chemistry reactions.
This permeability reduction is function of the adsorbed concentration, rock density (r),
original porosity (0) and user defined permeability reduction coefficient (PN).
Permeability reduction coefficients may be defined for each rock type or for all rock types.
The total permeability reduction is the sum of the permeability reductions of all adsorbing
components and is applied equally to all phases.
Results Analysis:
Once the model has been run, the following results can be observed:
- barite starts forming and being adsorbed around the second injector, due to the
injection of sulphate rich water in a barite rich initial reservoir water.
461
REVEAL
- this results in a permeability reduction around the same injector, as illustrated below.
REVEAL Manual
February, 2011
Worked Examples
462
- the impact of this permeability reduction on the liquid production of the producer well
can be seen below.
3.5.4 Surfactant
Associated Files:.
The files associated with this example are located in C:\Program Files\Petroleum
Experts\IPM 7.0\Samples\reveal\\Physics_Examples\Surfactant
The file associated with that example is the following: Surfactant.rvl
Worked Example Objectives:
The main objective of this example is to illustrate the use of REVEAL when using recovery
1990-2011 Petroleum Experts Limited
463
REVEAL
REVEAL Manual
February, 2011
Worked Examples
464
are thoroughly mixed and in equilibrium. This assumption is retained when gas is present,
even if the gas and oil are potentially immiscible; if the phase behaviour calculation results in
an excess oil phase being formed (i.e. the upper phase in type II(-), type III, or no surfactant
cases), then this phase is tested for immiscibility and split into separate oil and gas phases if
appropriate. Micro-emulsion phases containing both gas and oil (upper phase in type II(+)
cases, middle phase in type III cases, or single phase cases) are always assumed to form a
single miscible phase, regardless of whether the oil and gas are miscible. If the Todd and
Longstaff model [Ref 5] is used, it is applied to all miscible upper phases (but not to middle
phase or single phase micro-emulsions). The following table summarises the number and
type of phases present, and those phases to which the Todd and Longstaff model is applied.
Phase
behaviour
P>Pb
Single phase
No surfactant
P<Pb
Micro-emulsion Oil
Gas
Water
Micro-emulsion Oil
Water
Type III
Type II(-)
Type II(+)
Oil*
Oil*
MicroMicro-emulsion Micro-emulsion emulsion*
Water
Water
Oil
Oil
MicroGas
Gas
emulsion*
Micro-emulsion Micro-emulsion Water
Water
Description
Micro-emulsion phase only
Water, oil/gas phases present - no surfactant
Water, oil/gas and micro-emulsion phases
present (type III system) - intermediate salinity
Oil/gas and micro-emulsion phases present
(type II(-) system) - low salinity
Water and micro-emulsion phases present
(type II(+) system) - high salinity
3. Calculation of interfacial tension - the interfacial tension between emulsion and aqueous
phases, and/or emulsion and oleic phases, is calculated using a correlation. See the interfacial
tension section for more information.
4. Calculation of viscosity - the viscosity of the emulsion phase is calculated using a
correlation. See viscosity for more information.
Model Setup:
The model considered is a simple reservoir model with one horizontal producer and one
horizontal injector well, located in a grid refinement, as illustrated below.
1990-2011 Petroleum Experts Limited
465
REVEAL
Surfactants emulsify oil and water into a new phase (an emulsion), causing desaturation and
potentially enhanced recovery.
The following step by step procedure can be used in order to setup such a model:
1. Control Section
The surfactant model will only be available when the IMPES solver is selected. It will not be
available with the Fully Implicit solver.
This is due to the existence of a fourth phase (i.e. emulsion) that is strongly dependant of the
pressure, temperature and fluid compositions.
The presence of that fourth phase makes the application of the fully implicit solver method
very difficult.
IMPES solvers require less memory and less cpu per timestep. They require short timesteps
to be numerically stable and therefore are usually slower than implicit formulations.
IMPES formulations allow higher order upstream weightings that can significantly reduce
numerical dispersion present within implicit formulations.
The default solver configuration is used in that model.
REVEAL Manual
February, 2011
Worked Examples
466
467
REVEAL
When selecting the general simulation data, it will be needed to select the surfactant model,
as illustrated below.
REVEAL Manual
February, 2011
Worked Examples
468
The component list can then be altered to include polymer, surfactant, salinity and two
alcohols.
469
REVEAL
2. Physical Section
The thermal and aqueous properties of the components added in the system need to be
defined in the physical section, as illustrated below.
REVEAL Manual
February, 2011
Worked Examples
470
3. RelPerm Section
The RelPerm section needs to be modified when a surfactant is present, as desaturation
parameters are required.
Effectively, when an emulsion is formed in the system, the interfacial tension between phases
tend to reduce, leading to a variation of the relative permeability curve.
In order to obtain the new relative permeability curve, it will be necessary to interpolate
between high and low tension relative permeability curves (i.e. the later usually tends toward
a straight line) as a function of the capillary number Nc.
Desaturation parameters are used to control that interpolation process.
471
REVEAL
The relative permeability curves then need to be entered for both low and high IFTs, as
illustrated below.
REVEAL Manual
February, 2011
Worked Examples
472
4. Mobility Section
Polymer tends to affect the effective salinity of the system, leading to a change in the ternary
diagram between the oleic, aqueous and emulsion components.
When it is present in the system, it will then be necessary to define the polymer parameters.
More information on the following screens can be found in the gel injection example
description.
473
REVEAL
REVEAL Manual
February, 2011
Worked Examples
474
475
REVEAL
REVEAL Manual
February, 2011
Worked Examples
476
5. Phase Section
The phase section enables to specify the input data needed by the surfactant model.
This includes:
5.1. Alcohol and Polymer Partitioning
This screen contains the data for partitioning alcohol and polymer components among the
three pseudo-components.
Further information on the models used to do so can be found in the Alcohol/Polymer
partitioning section.
477
REVEAL
REVEAL Manual
February, 2011
Worked Examples
478
479
REVEAL
REVEAL Manual
February, 2011
Worked Examples
480
5. Initialisation Section
In the model considered, it is assumed that no component is being adsorbed, therefore we
will leave the adsorption section empty.
However, the composition of the reservoir water needs to be specified in the initialisation
section. The reservoir water is characterised by a salinity of 10,000ppm.
481
REVEAL
6. Schedule Section
The schedule section is setup so that both vertical wells inject surfactant, the horizontal
injector is closed and the horizontal producer is producing with a fixed Pwf of 2200psig.
Results Analysis:
When running the model, the emulsion can be seen appearing around the second injector, as
illustrated below:
REVEAL Manual
February, 2011
Worked Examples
482
483
REVEAL
Experts\IPM 7.0\Samples\reveal\\Physics_Examples\Gel_Injection
The file associated with that example is the following: Gel_Injection.rvl
Worked Example Objectives:
The main objective of this example is to illustrate the use of REVEAL to study the impact of
gel injection.
Model Setup:
The model considered is a simple reservoir model with one horizontal producer and one
horizontal injector well, located in a grid refinement, as illustrated below.
In this model, the reservoir fluid is a heavy oil, characterised by a high viscosity and therefore
a low mobility. The horizontal producer is located relatively close from the oil-water contact,
and therefore is affected by a rapid water cut build-up.
In order to delay the build-up of water in the reservoir, the water injector injects a polymer
and a cross-linker, which will react at reservoir level to form a high viscosity gel, that will
lower the water mobility around the producer.
The following steps can be followed in order to setup such a model:
1. Control Section
In the control section, the Polymer / Gel / Foamer option needs to be selected and the
component list needs to be updated to include the salinity, polymer, gel and cross-linker
REVEAL Manual
February, 2011
Worked Examples
484
485
REVEAL
2. Mobility Section
The mobility section will then become available to edit. This section enables to define the
properties of the polymer and gel, and its main scope is to describe the modifications to pure
phase viscosities (obtained from the PVT) arising from chemical additives including
surfactants, polymers and gels.
2.1. The first screen of that section initialises the polymer and gel model and setup their
shear thinning parameters.
REVEAL Manual
February, 2011
Worked Examples
486
Two models are available for viscosity resulting from polymer and gel components: original
and Kuparuk models.
Both of these models calculate a thickening factor (i.e. noted TF) for the aqueous and microemulsion (if surfactant is present) phases, subject to shear-thinning near wells.
The modified phase viscosity is obtained by multiplying the pure phase viscosity by the
thickening factor.
Because the thickening factor can be affected by shear-thinning, a shear rate calculation is
associated to these models.
This shear-rate calculation needs to be parametrised for each rock-type using a critical shear
rate specified by the user. By default, this model is inactive: it needs to be activated by
selecting the "Shear Model" section when defining the well in the Wells section of the input
wizard.
The thickening factor is calculated first at zero shear and modified afterwards to account for
shear rate. This modification is done using the gamma, alpha and optional shear-thickening
parameter: this later parameter will only have an effect if it is greater than 1.
1990-2011 Petroleum Experts Limited
487
REVEAL
2.2. The second screen of that section enable to specify the polymer and gel viscosity
parameters
Polymer and gel viscosity parameters (i.e. concentration and temperature) are used to
calculate the respective contribution of polymer and gel to the zero shear thickening factor
calculation.
They are usually tuned to laboratory data.
The effect of salinity on polymer viscosity can also be taken into account if the "salinity
dependence" option is selected.
2.3. The third screen of that section enable to specify the gelation and degradation reactions
characteristics
REVEAL Manual
February, 2011
Worked Examples
488
Reactions between polymer and cross-linker to form gel, and between de-chelation agent
(chelated cross-linker) and cross linker are modelled by calculating mass reaction rates that
are applied to the component mass concentration equations.
In the case considered, 3 components are present in the system: polymer, gel and crosslinker. In that case, the 3-component reaction model should be specified.
The input datadeck of that section enables to define the conditions at which the reaction
between polymer and cross-linker occurs to form gel:
- the temperature needs to be greater than the temperature treshold Tr
- the polymer concentration needs to be greater than the polymer treshold
concentration Pc[0]
- the cross-linker concentration needs to be greater than the cross-linker concentration
treshold XLc[0]
If the reaction conditions are met, a reaction will occur to produce gel, with the mass reaction
rates per unit volume of water for polymer (Rp), cross-linker (Rxl) and gel (Rg).
Both gel and polymer could be setup to degrade as well at rates defined by rate (Rp0 and
1990-2011 Petroleum Experts Limited
489
REVEAL
Rg0) and temperature coefficients (Bp0 and Bg0), reducing the reaction rates for these
components.
In the case considered, polymer and gels are considered to be non-degradable.
2.4. The fourth screen of that section enable to define the amount of pore volume that is
non-accessible to the gel / polymer components
In the case considered, it is assumed that the entire pore volume is accessible to both
polymer and gel.
3. Adsorption Section
The different components defined in the gel/polymer models could be adsorbed on the rock
surface.
These reactions could be defined in the adsorption section.
In this model, only the gel is going to be considered as adsorbed.
REVEAL Manual
February, 2011
Worked Examples
490
Adsorbed components will not be transported across the reservoir and can lead to a
reduction in permeability.
The adsorption reaction is defined through an adsorption isotherm, here the Langmuir
isotherm: the parameter entry enables to modify the shape of that isotherm, and therefore the
behavior of the component considered.
The adsorption phenomenon can be made reversible or irreversible.
4. Initialisation Section
The initialisation section enables to specify the reservoir water contents: in the case
considered, the only element to specify is the water salinity, 35,000ppm.
491
REVEAL
5. Schedule Section
The schedule section enables to specify the timing and component concentrations of the
injection process.
In the case considered, the simulation run is divided in four different sections:
- the first schedule section specifies the injection of a water with a 10,000ppm polymer
concentration
- the second schedule section specifies the injection of a water without polymer nor
cross-linker
- the third schedule section specifies the injection of a water with a 10,000ppm crosslinker concentration
- the fourth schedule section specifies no injection at all
REVEAL Manual
February, 2011
Worked Examples
492
Results Analysis:
The following results can be observed (i.e. one can load the "Slice" pre-saved view to go
through these results in the model provided):
- The mass concentration of polymer in water at the early days of the simulation
underlines the polymer injection of the first schedule section
At that point, no cross-linker has been injected, therefore no gel is being formed.
493
REVEAL
REVEAL Manual
February, 2011
Worked Examples
494
- The gel concentration in water starts increasing when the conditions for the reaction
between cross-linker and polymer are met.
495
REVEAL
REVEAL Manual
February, 2011
Worked Examples
496
- When studying the well results, it is possible to notice that as soon as the gel is
present in the system, the water cut evolution in the producing well is cut-down dramatically,
as illustrated below.
497
REVEAL
REVEAL Manual
February, 2011
Worked Examples
498
The fluid considered is a low-GOR heavy fluid, and the purpose of this model is to illustrate
the impact of wellbore-heating processes on the well production.
In order to setup a wellbore heating system, the following steps can be considered:
1990-2011 Petroleum Experts Limited
499
REVEAL
1. Control Section
In order to setup a wellbore heating system, the following steps can be considered:
In this model, the microwave option is selected: this microwave option will apply a microwave
frequency voltage across two points on a well and calculates the heating effect within the
reservoir.
The voltage generated (V) within the reservoir is calculated on the finite difference grid used
for the flow equations by solving Laplace's equation with boundary conditions V=V0 on the
electrode, V=0 on the earth electrode and no voltage flux on the boundary of the grid.
The heat supplied to the grid (W) is then calculated from the voltage field.
The location of the electricity sources (i.e. electrode and earth) is defined in the control
section and the capacity of the reservoir water to transmit electricity between the two is
defined through a resistiity law in the wellbore heating section.
An electric heater option is available as well. The main difference with the microwave model is
REVEAL Manual
February, 2011
Worked Examples
500
that the electric heater will heat directly both the reservoir and the fluid inside the tubing.
The microwave option, on the other hand, will heat the reservoir directly and indirectly the fluid
inside the tubing.
2. Well section
The location of the earth and electrode need to be specified in the well section, as illustrated
below.
501
REVEAL
4. Schedule section
This example is setup with three consecutive schedules:
REVEAL Manual
February, 2011
Worked Examples
502
- a 10 day long schedule where no heating is activated: in that case the heating section
is not selected in the schedule screen
- a 30 day long schedule where the heating is activated: in that case, one needs to
specify the voltage used. 100 V in that case, as illustrated below.
- a 10 day long schedule where no heating is activated.
Results Analysis:
Heating up the wellbore will lead to a decrease in oil viscosity. The consequent increase in
fluid mobility will lead to a higher well production.
This can be found by analysing the results obtained in that case:
The wellbore results can illustrate the increase in temperature due to the heating process.
503
REVEAL
Comparing a "heated" run with a "non-heated" run, it is possible to notice the increase in oil
production in the heated run, confirming the previous analysis.
REVEAL Manual
February, 2011
Worked Examples
504
3.5.7 Asphaltene
Associated Files:.
The files associated with this example are located in C:\Program Files\Petroleum
Experts\IPM 7.0\Samples\reveal\\Physics_Examples\Asphaltene
The file associated with that example is the following: Asphaltene.rvl
Worked Example Objectives:
The main objective of this example is to illustrate the use of REVEAL to study potential
asphaltene deposition, transport and adsorption.
1990-2011 Petroleum Experts Limited
505
REVEAL
Model Setup:
The model considered is a simple reservoir model with one horizontal producer located in a
grid refinement, as illustrated below.
Asphaltene is initially present in the reservoir oil, and the objectives of the model are to find
out how much of this asphaltene will precipitate in the reservoir.
The following elements need to be updated when setting up such a model:
1. Control Section
In the control section, the "Solids" component model needs to be selected and the component
list needs to be amended to include asphaltenes, as illustrated below.
REVEAL Manual
February, 2011
Worked Examples
506
507
REVEAL
2. Solids Section
The solids section enables to define the asphaltene model parameters.
REVEAL Manual
February, 2011
Worked Examples
508
Asphaltenes are modelled in REVEAL as a solubility limited component in the oleic phase, that
once precipitated may become trapped within the pore structure of the rock reducing
permeability
These parameters are defined as follows:
- Floculated properties
The floculation density is used to relate the mass and volume of trapped asphaltene for
permeability reduction.
The diameter distribution of the flocculated asphaltenes is characterised by a
flocculated size distribution index (m) and a maximum diameter (Dmax).
- Solubility
The solubility of asphaltene is assumed to be strongly pressure dependent, generally
falling as the pressure falls towards the bubble point (i.e. here 3000psig), then rising as the
pressure continues to fall below the bubble point. This
data is entered as a table of
solubility for monotonically increasing pressure and is not extrapolated. The solubility is
defined as a mass/mass (ppm) concentration.
1990-2011 Petroleum Experts Limited
509
REVEAL
The plot below illustrates the evolution of dissolved asphaltene in oil as a function of
pressure:
REVEAL Manual
February, 2011
Worked Examples
510
Results Analysis:
Once the model has been run, the following results can be observed:
- Due to the horizontal producer production, the pressure will decline within the
reservoir, as illustrated below.
511
REVEAL
- This pressure decline will lead to a decrease in the asphaltene solubility that is
translated in the formation of solid asphaltenes in the system, as illustrated below.
February, 2011
Worked Examples
512
513
REVEAL
REVEAL Manual
February, 2011
Worked Examples
514
2. The classic black oil parameters have been entered, and PVT tables at different pressure
and temperatures have been generated and are in use.
However, it is possible to notice that the "Non-Newtonian Viscosity" option has been
selected.
515
REVEAL
This is the option that enables to take into account shear-thinning behaviors for instance. It
works in association with the "Visc.Tables" section.
The "Visc.Tables" section enables to specify rheological parameters for the fluid considered:
- Yield stress: this is defined as the minimum stress at which fluid flow occurs
- Consistency index
- Shear Thinning: If this is equal to 1, the fluid considered is a newtonian fluid
If this is lower than 1, the fluid considered is a non-newtonian, shearthinning fluid
If this is higher than 1, the fluid considered is a non-newtonian, shearthickening fluid
This parameters are usually obtained from the lab at a specific pressure and temperature.
These parameters are used within REVEAL to calculate the apparent viscosity of the fluid
using the Herschel-Bulkely approach:
where t is the shear stress, t0 is the yield stress, K is the consistency index, gamma is the
shear rate and n is the shear thinning parameter
REVEAL Manual
February, 2011
Worked Examples
516
The apparent viscosity is then replacing the gas and oil viscosity specified in the PVT tables.
If the rheological parameters are defined for one specific temperature and pressure as it is
the case in this example, the viscosity will then only be shear rate dependant, and will be
independant from pressure and temperature.
REVEAL will not extrapolate these rheological parameters, it will only interpolate between
different given values.
Therefore, if one wants to make the apparent viscosity pressure and / or temperature
dependant, one will have to enter rheological parameters over the range of pressure and
temperature the reservoir is likely to be facing.
The maximum viscosity parameter enables to specify a maximum value for the viscosity
calculated: if the viscosity calculated is higher than the maximum viscosity specified, the
calculated value will be ignored and replaced by the maximum viscosity specified here.
Once the PVT has been setup, the model can be run.
Results Analysis:
The model has been run with two specific PVTs:
- one named heavy which includes the non-newtonian viscosity option
- one named heavy-newtonian which describe the same fluid, but without using the nonnewtonian viscosity option
517
REVEAL
One of the elements that can be underlined is that the well oil production is higher when the
non-newtonian viscosity is used.
This can be explained by plotting the evolution of viscosity with time for one of the producer
gridblocks.
As explained earlier, in the case of the non-newtonian fluid, the evolution of viscosity with time
is just due to the evolution of shear rate and is independant of the pressure and temperature,
due to the way the rheological parameters have been setup.
REVEAL Manual
February, 2011
Worked Examples
518
It is possible to notice that due to the shear-thinning behavior of that fluid, the viscosity of the
oil when the non-newtonian viscosity option is used is lower than the viscosity calculated if the
fluid is considered newtonian.
In that case, the permeability being the same, decreasing the viscosity will have the effect of
increasing the fluid mobility.
An increase in fluid mobility will lead to an increase in the well PI and therefore production, as
observed in that model.
3.5.9 Equalizer
Associated Files:.
The files associated with this example are located in C:\Program Files\Petroleum
Experts\IPM 7.0\Samples\reveal\Physics_Examples\Equalizer
The file associated with that example is the following: Equalizer.rvl
Worked Example Objectives:
The main objective of this example is to illustrate the use of REVEAL when considering
complex horizontal completions with tubing screens or Equalizer.
Model Setup:
The model considered includes two separate reservoirs, both containing a long horizontal well,
as illustrated below.
519
REVEAL
Both reservoirs and wells are exactly similar apart from the interface between the tubing and
casing space. The first model has standard screens installed whereas the second model has
a set of Equalizer installed.
The main objectives of these Equalizer is to create a pressure drop between the tubing and
the casing, therefore enabling to balance the bottom hole flowing pressure (i.e. and therefore
the drawdown) along the wellbore.
In order to achieve this objective, the type of Equalizer used changes along the wellbore,
enabling for instance to generate higher pressure losses between the casing and tubing in
high productivity regions (i.e. heel and toe of the well for instance) and lower pressure losses
between the casing and tubing in low productivity regions.
In this specific case, the main objective of to reduce the impact of gas coning on the well
behavior.
This can be setup by using the "Annular Flow" option in the well section, as illustrated below.
REVEAL Manual
February, 2011
Worked Examples
520
The multilateral description will then allow for the type of interface between the tubing and the
casing to be specified, as illustrated below for both Equalizer and screen models.
521
REVEAL
REVEAL Manual
February, 2011
Worked Examples
522
As a result of this, the gas production at the early stage of production is larger in the screen
completion case, as illustrated below.
1990-2011 Petroleum Experts Limited
523
REVEAL
The oil production, as illustrated below, is higher at early stages of production in the screen
completed well, due to the less important pressure losses in the wellbore, however, as soon
as the gas breakthrough, the oil production will be affected and the Equalizer completed
well will produce more oil.
The cumulative oil production plot is displayed below, illustrating the higher oil recovery
achieved in this case when the bottom hole flowing pressure along the wellbore is controlled
using the Equalizer completion.
REVEAL Manual
February, 2011
Worked Examples
524
525
3.6
REVEAL
OpenServer Examples
REVEAL Manual
February, 2011
Worked Examples
526
This specific example illustrates how to retrieve well results through an OpenServer macro.
Model Setup:
All the OpenServer examples are based on a similar REVEAL model, the
OpenServer_Demo.rvl model.
This model is constituted of one producer and one injector well located in a relatively simple
grid as illustrated below.
All the macros are started from one single Excel macro template located in C:\Program
Files\Petroleum Experts\IPM 6.0\Samples\reveal\OpenServer_Examples\ and called
REVEAL_OpenServer_Template.xls.
With that specific macro, one wants to retrieve the results of both the producer and injector
wells once a simulation has been run.
The macro front-end is organised as follow:
- The first sub-sheet is dedicated to the macro control: the file name and location
needs to be specified and the macro can be run with the Start Macro button.
- The two other sub-sheets are dedicated to the well results, one for the producer and
one for the injector.
1990-2011 Petroleum Experts Limited
527
REVEAL
2.Open the REVEAL file, select the unit system to be used and setup some headers for
the Excel sub-sheets
REVEAL Manual
February, 2011
Worked Examples
528
When getting the headers, it is possible to notice that the second part of the structure focuses
on getting the name of the units used.
This structure, along with the structure details in the section 3, includes a while loop that
enables to perform this specific macro structure for every well in the system.
3. Get the Well Results
529
REVEAL
A loop structure similar to the one used previously to loop through the wells is used in that
section.
This section is just a part of the total section, where all the results available for individual well
are specified and exported to a specific field in Excel.
4. End the Macro
The end of the macro structure is characterised by the end of the syntax for both loops used,
characterised by an incremental index statement (i.e. i=i+1) and a Wend (i.e. While End).
The Set Server = Nothing enables to disconnect the OpenServer connection and the
message box enables to let the user know that the macro has ended successfully.
Results Analysis:
Once the macro has been run, results will automatically be displayed for each well in the
corresponding Excel sub-flowsheet as illustrated below.
REVEAL Manual
February, 2011
Worked Examples
530
531
REVEAL
All the macros are started from one single Excel macro template located in C:\Program
Files\Petroleum Experts\IPM 6.0\Samples\reveal\OpenServer_Examples\ and called
REVEAL_OpenServer_Template.xls.
The specific objective of that macro is to retrieve block by block water, oil and gas production
for a user-specified well.
The macro front-end is organised as follows:
REVEAL Manual
February, 2011
Worked Examples
532
533
REVEAL
2. Start the REVEAL simulation run and retrieve the results at every time step
This specific section of the macro enables to run a simulation on a step by step basis, and for
each step, follows the following workflow:
REVEAL Manual
February, 2011
Worked Examples
534
535
REVEAL
Results Analysis:
As per the code, results in the Excel spreadsheet will automatically be updated during the
REVEAL run.
It is important to notice that even so the results are reported in Excel, this does not change
the classic results reporting facilities of REVEAL.
Classic REVEAL results will still be available once the model has been run.
REVEAL Manual
February, 2011
Worked Examples
536
All the macros are started from one single Excel macro template located in C:\Program
Files\Petroleum Experts\IPM 6.0\Samples\reveal\OpenServer_Examples\ and called
REVEAL_OpenServer_Template.xls.
1990-2011 Petroleum Experts Limited
537
REVEAL
The specific objective of that macro is to perform batch simulations of the reservoir model
above by changing the reservoir permeability through the permeability multiplier. This
procedure will help the reservoir history matching procedure.
Each file run is saved separately for further analysis of the results.
The macro front end is setup as follows:
REVEAL Manual
February, 2011
Worked Examples
538
2. Start the batch matching procedure, Setup the transmissibility multiplier and run
the simulations.
The batch matching procedure is run through a while loop, that enables to run a specific
section of code until the condition specified in the loop is met.
In this case, the procedure will be run while i <= imax where imax is the maximum number of
permeability multiplier entered.
539
REVEAL
3. Save the file at the end of the run and retrieve the results
REVEAL Manual
February, 2011
Worked Examples
540
Each time one step is finished, the index i is incremented by 1, which will lead to a new file
being setup with a new permeability multiplier.
Results Analysis:
Once the runs are finished, one will find a number of REVEAL files saved in the location of the
initial file equal to the number of permeability multipliers specified, as well as a summary of
time to breakthrough and cumulative productions in the Excel spreadsheets.
541
REVEAL
REVEAL Manual
February, 2011
Worked Examples
542
All the macros are started from one single Excel macro template located in C:\Program
Files\Petroleum Experts\IPM 6.0\Samples\reveal\OpenServer_Examples\ and called
REVEAL_OpenServer_Template.xls.
With that specific macro, one wants to control the wellhead pressure and injection
temperature of the injector well at different points in time.
The macro front-end is organised as follow:
The following steps (i.e. accessed through the visual basic section of Excel) are taken within
1990-2011 Petroleum Experts Limited
543
REVEAL
2. Open the REVEAL file and setup the injection well schedule
REVEAL Manual
February, 2011
Worked Examples
544
The last section of that code enables to set the injection well control parameters that were
taken from Excel in the REVEAL script.
It will be possible to use that syntax only before the simulation is run. The script input cannot
be modified when the simulation is running.
In order to make a modification to the system setup while the simulation is running, one needs
to use the MASTER based commands illustrated in step 3.
3. Run a REVEAL simulation time step
Once the model has been setup, one can start running the simulation.
In that case, as the macro will change the file setup with time, it will be necessary to run the
simulation step by step using the DO_ONE_STEP command illustrated below.
545
REVEAL
In that section, the results of each simulation time step are exported to Excel.
The last section enables to monitor when the setup of the model needs to be changed: the
current time is monitored using the Time variable.
If the current time is lower than the time at which the schedule needs to be changed next, the
surface pressure and surface temperature will be equal to a time weighted average between
the surface properties of the injection well at the last time step and the surface properties of
the injection well at the time step when a change has been specified by the user.
REVEAL Manual
February, 2011
Worked Examples
546
The save file command will automatically overwrite the REVEAL model used when running the
macro.
The Set Server = Nothing command enables to finalise the connection between REVEAL and
Excel.
Results Analysis:
When the run is ended, one can check the evolution of wellhead pressure and injection
temperature through time for the injection well and check that it has been setup according to
the schedule specified in Excel.
547
REVEAL
Experts\IPM 7.0\Samples\reveal\OpenServer_Examples\
There is no Excel macro associated to this example as all the code is contained within the
REVEAL internal script.
The REVEAL file associated with that example is the following: Water_Injection_Allocation.rvl
Worked Example Objectives:
The main objective of this example is to illustrate the use and setup of the REVEAL internal
script.
This specific example illustrates how to allocate a fixed amount of water to be injected in the
reservoir between the different injection wells, in order for instance to accelerate the oil
production (i.e. minimise the water cuts in the producing wells).
Model Setup:
The model used in that example is similar to the model used for the previous OpenServer
examples, apart for the number and location of the wells.
This model includes 3 producing wells and 4 injection wells located as below.
In the schedule section, all the wells are controlled by fixed rate.
The producing wells are controlled by a fixed total (i.e. oil + water) liquid rate and the water
injectors are controlled by a fixed water injection rate.
REVEAL Manual
February, 2011
Worked Examples
548
549
REVEAL
2. REVEAL section
The rest of the code is located in the REVEAL / RunPreTimestep section and follows the
following workflow:
REVEAL Manual
February, 2011
Worked Examples
550
551
REVEAL
It is important to notice that all the variables used in this script and specified as reveal.
master are runtime variable: these are related to variables internally calculated during the
solve process, but that are not always available in the REVEAL outputs, such as the ratio of
volumes between producer and injector drainage areas.
Running the Simulation:
When an internal script has been setup in REVEAL, the simulation will run with the script only
if the "Run with Script" option is activated in the Run Simulation section of the main menu bar.
The model illustrated here has been run with and without the script and the following results
can be observed:
- When the model is run without the script activated, the total amount of water injected
is divided equally between the different water injectors.
REVEAL Manual
February, 2011
Worked Examples
552
- When the model is run with the script activated, the allocation of this total amount of
water injected is setup according to the weight associated with each injector that has been
calculated in the script.
This leads to the following allocation:
553
REVEAL
- One of the consequence of this re-allocation will be the decrease of the water cut in
some of the producer wells, such as the producer 2 illustrated below.
REVEAL Manual
February, 2011
Worked Examples
554
- However, the most important result is the increased cumulative oil production and
decreased cumulative water observed when comparing the voidage injection and the
managed injection cases, as illustrated below:
555
REVEAL
REVEAL Manual
February, 2011
Worked Examples
556