You are on page 1of 1022

Petroleum Experts

User Manual

IPM
GAP
Version 9
August 2012
GAP
IPM - Multiphase Production Optimisation OVERVIEW
by Petroleum Experts Limited

GAP is a multiphase oil and gas optimiser tool that models the surface gathering network of
field production systems. When linked with the well models of PROSPER and reservoir
models of MBAL a full field production optimisation and forecast can be achieved. GAP can
model production systems containing oil, gas and condensate, in addition to gas or water
injection systems.

GAP's powerful non-linear optimisation engine allocates gas for gas lifted wells or sets
wellhead chokes for naturally flowing wells to maximise revenue or oil/gas production while
honouring constraints at any level in the system.

APPLICATIONS

Full field surface network design


Field Optimisation studies with mixed systems (ESP, GL, Naturally Flowing)
Multi-phase Looped Network Optimisation
Advises wellhead chokes settings to meet reservoir management targets and
maximumise recovery.
Gas Lift Optimisation
Models full field injection system performance (i.e. water, gas steam)
Compressor and Pump system modelling
Production forecasting
Programmable elements
Rigorous Compositional modeling from the Reservoir to the Process side
Fast and robust Optimisation algorithm using Sequential Quadratic
Programming SQP
Easy to use graphical interface for drawing system network
GAP is unique in being able to model, optimise and run predictions of
the entire production system, with MBAL and PROSPER
A variety of Naturally flowing and artificially lifted wells can all be included in the same
production system model
GAP optimisation technique is much more robust than iterative
methods and is simpler to use.
3

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 and OpenServer are trademarks of
Petroleum Experts Ltd.

Microsoft (Windows), Windows (2000) and Windows (XP) are registered trademarks of the Microsoft
Corporation

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-2012 Petroleum Experts Limited


I G AP

Table of Contents
0

Chapter 1 Technical Overview 2


1 Summary
...................................................................................................................................
of Capabilities 4
2 Field Optimisation
................................................................................................................................... 8
3 Field Planning
................................................................................................................................... 9
4 Fluid modelling
...................................................................................................................................
(PVT) 10
Introduction to
..........................................................................................................................................................
Lum ping/Delum ping 11
5 Reservoir
...................................................................................................................................
Modelling 14
6 Flow assurance
...................................................................................................................................
and advanced thermal modelling options 15
7 Artificial
...................................................................................................................................
Lift 16
8 Complex
...................................................................................................................................
Well Geometry 17
9 Automation
................................................................................................................................... 18
10 The Core
...................................................................................................................................
GAP Technique 19
About the Netw
..........................................................................................................................................................
ork Solver 19
About the Optim
..........................................................................................................................................................
iser 20
Considerations
..........................................................................................................................................................
on Optim isation 21
11 Examples
...................................................................................................................................
Index 30
12 What's...................................................................................................................................
New 31

Chapter 2 User Guide 45


1 What is
...................................................................................................................................
in this guide? 45
2 Introduction
................................................................................................................................... 46
How to Use This
..........................................................................................................................................................
Guide 48
GAP Glossary..........................................................................................................................................................
of Term s 49
3 Getting
...................................................................................................................................
Started with GAP 51
The GAP User..........................................................................................................................................................
Interface 51
Opening a .........................................................................................................................................................
File 53
Saving a File ......................................................................................................................................................... 53
The System .........................................................................................................................................................
Window 55
The Toolbar ......................................................................................................................................................... 57
The Navigator .........................................................................................................................................................
Window 60
Draw ing the .........................................................................................................................................................
System 62
The Preferences
.........................................................................................................................................................
Dialog 65
Defining User .........................................................................................................................................................
Correlations 67
Edit Ini File ......................................................................................................................................................... 67
Defining the .........................................................................................................................................................
Working Directory 68
Printing from .........................................................................................................................................................
GAP 70
Exiting GAP ......................................................................................................................................................... 71
Project Archiving.......................................................................................................................................................... 72
Archive Creation
......................................................................................................................................................... 72
Archive Extraction
......................................................................................................................................................... 75
The Options Menu .......................................................................................................................................................... 78
Contents II

Method ......................................................................................................................................................... 78
Edit Injection .........................................................................................................................................................
Fluids 85
Edit Tax Regimes
......................................................................................................................................................... 87
Edit Emulsion .........................................................................................................................................................
Models 88
Edit Default.........................................................................................................................................................
Settings 91
Edit System .........................................................................................................................................................
Summary 94
View System .........................................................................................................................................................
Statistics 95
Disable Options......................................................................................................................................................... 96
The View Menu .......................................................................................................................................................... 97
Draw Options ......................................................................................................................................................... 98
Highlight Options
......................................................................................................................................................... 98
Highlight TVD Differences ......................................................................................................................................... 98
Highlight Solver .........................................................................................................................................
Pressure/Mass Imbalances 102
Highlight Violated .........................................................................................................................................
and Limiting Constraints 103
Window Aspect.........................................................................................................................................................
and Draw ing Options 104
Select Info Displayed ......................................................................................................................................... 104
Select Default Icon .........................................................................................................................................
Label Position 105
Colours ......................................................................................................................................... 105
Icon Sizes ......................................................................................................................................... 107
Fonts ......................................................................................................................................... 107
Grid ......................................................................................................................................... 107
Netw ork Draw.........................................................................................................................................................
ing Position 109
Normalize Equipment .........................................................................................................................................
Icons Position and Snap to Grid 109
The Edit Menu .......................................................................................................................................................... 110
Undo Options ......................................................................................................................................................... 110
Select Options
......................................................................................................................................................... 112
Selected Equipment
.........................................................................................................................................................
Options 115
Selected Items ......................................................................................................................................... 115
Selected Wells and .........................................................................................................................................
Inflow s 118
Selected Pipes ......................................................................................................................................... 120
Selected Tanks ......................................................................................................................................... 121
Selected Groups......................................................................................................................................... 122
Find Equipment
.........................................................................................................................................................
on System Window 123
Edit Options ......................................................................................................................................................... 125
Edit Equipment Controls ......................................................................................................................................... 125
Edit Project Paths ......................................................................................................................................... 127
Transfer and .........................................................................................................................................................
Import Options 129
Transfer Well Data .........................................................................................................................................
from MBAL Models 129
Initialise IPRs from .........................................................................................................................................
Tank Simulations 131
Import Compositions ......................................................................................................................................... 133
Lump/Delump Compositions ......................................................................................................................................... 135
Transfer Options.........................................................................................................................................
for Gas Lift Injection 135
Execute OpenServer
.........................................................................................................................................................
Statement 136
Importing .........................................................................................................................................................
GAP models in an existing project 138
The Constraints ..........................................................................................................................................................
Menu 143
System Constraints
......................................................................................................................................................... 143
Binding (Yes/No)
......................................................................................................................................................... 146
Edit Constraints
.........................................................................................................................................................
Table 147
Edit Abandonment
.........................................................................................................................................................
Constraints Table 149
4 Describing
...................................................................................................................................
the PVT 150
Black Oil .......................................................................................................................................................... 151
Com positional
..........................................................................................................................................................
Options 154
EoS Model.........................................................................................................................................................
Setup 154
More Lumping ......................................................................................................................................... 163

August, 2012 GAP User Guide

II
III G AP

Water Composition ......................................................................................................................................... 166


Setting up.........................................................................................................................................................
a Compositional model 168
Tracking ......................................................................................................................................................... 172
Fully Compositional
......................................................................................................................................................... 173
Black Oil Compositional
.........................................................................................................................................................
Lumping/Delumping 174
View ing Compositional
.........................................................................................................................................................
Results 175
5 Equipment
...................................................................................................................................
Data 180
Introduction .......................................................................................................................................................... 180
Equipm ent Data..........................................................................................................................................................
Entry Screen Form at 180
The Navigator
.........................................................................................................................................................
- Equipment list 181
Section Buttons
......................................................................................................................................................... 183
Summary ......................................................................................................................................... 183
Input Button ......................................................................................................................................... 184
Results Button ......................................................................................................................................... 184
Action Buttons
......................................................................................................................................................... 185
Wells .......................................................................................................................................................... 187
Well Summary
.........................................................................................................................................................
Screen 188
Calculate ......................................................................................................................................................... 192
Well Input.........................................................................................................................................................
Screens 195
Tank Connections ......................................................................................................................................... 196
Multi-Layer Case ................................................................................................................................... 197
IPR Input ......................................................................................................................................... 197
Ipr Layer input data ................................................................................................................................... 199
Composition ................................................................................................................................... 203
Action Buttons ...................................................................................................................................
in IPR Input Screens. 204
More Layer Data ................................................................................................................................... 207
Production Data................................................................................................................................... 210
Tight Gas IPR ................................................................................................................................... 212
Grid View ................................................................................................................................... 215
Abandonment Section ................................................................................................................................... 216
Note on w ater injector's
...................................................................................................................................
IPR 217
VLP Input ......................................................................................................................................... 219
Inspection of VLP ...................................................................................................................................
Data 223
Well Constraints......................................................................................................................................... 225
General Constraints ................................................................................................................................... 225
Gas Lifted Wells ...................................................................................................................................
Constraints 227
Diluent Injection...................................................................................................................................
Wells Constraints 227
ESP, HSP, PCP ...................................................................................................................................
and Jet Pump Wells Constraints 227
Abandonment Constraints ................................................................................................................................... 229
Symbols ................................................................................................................................... 230
Notes on Constraints ................................................................................................................................... 230
Controls ......................................................................................................................................... 230
Symbols ................................................................................................................................... 231
dP Control ................................................................................................................................... 231
Gas Lift Control................................................................................................................................... 233
ESP Control ................................................................................................................................... 234
Diluent Control ................................................................................................................................... 235
Diluent Control w ...................................................................................................................................
ith Gas Injection 236
SRP Control ................................................................................................................................... 237
HSP Control ................................................................................................................................... 238
Jet Pump Control ................................................................................................................................... 239
PCP Control ................................................................................................................................... 240
CBM Control ................................................................................................................................... 240
Fluids Property ...................................................................................................................................
Setup 241
Contents IV

PC Data ......................................................................................................................................... 242


PC Generation ................................................................................................................................... 243
Dow ntime ......................................................................................................................................... 244
Coning (For Oil Producers
.........................................................................................................................................
Only) 244
Schedule (ONLY.........................................................................................................................................
for Prediction) 246
Outflow Only
.........................................................................................................................................................
Well 248
Outflow Only - VLP ......................................................................................................................................... 249
Outflow Only - PROSPER ......................................................................................................................................... 250
Importing the equipment ...................................................................................................................................
data from PROSPER 251
Entering The Equipment ...................................................................................................................................
in GAP Directly 257
Completing the ...................................................................................................................................
Outflow Only Well - Inflow Performance Setup 257
Well Results
.........................................................................................................................................................
Screen 258
Gradient Results......................................................................................................................................... 260
Well Layer Results ......................................................................................................................................... 261
Reporting Results ......................................................................................................................................... 263
Separators (Production
..........................................................................................................................................................
/ Injection) 265
Separator.........................................................................................................................................................
Summary Screen 266
Separator.........................................................................................................................................................
Input Screens 268
Constraints ......................................................................................................................................... 268
Separation (PRODUCTION .........................................................................................................................................
Separators ONLY) 271
Plant Process (ONLY .........................................................................................................................................
for LNG Process Plant) 271
Schedule (ONLY.........................................................................................................................................
for prediction) 272
Injection Fluid
.........................................................................................................................................................
Details (INJECTION Man.Only) 272
Steam Injection Source ......................................................................................................................................... 274
Joints .......................................................................................................................................................... 279
Joint Summary
.........................................................................................................................................................
Screen 279
Joint Input.........................................................................................................................................................
Screen 280
Joint Constraints
......................................................................................................................................................... 281
Schedule......................................................................................................................................................... 282
Pipelines .......................................................................................................................................................... 283
Pipeline Summary
.........................................................................................................................................................
Screen 284
GAP Internal
.........................................................................................................................................................
Correlations 285
Pipe Input Data ......................................................................................................................................... 287
Pipe Environment ................................................................................................................................... 287
Pipe Description................................................................................................................................... 288
Pipe Entry Example ................................................................................................................................... 294
Pipeline Pressure ...................................................................................................................................
Matching 297
Entering Pipe Match ...................................................................................................................................
Data 297
The Match Calculation ................................................................................................................................... 298
Constraints ................................................................................................................................... 301
Schedule (ONLY ...................................................................................................................................
for Prediction) 301
Pressure/Temperature .........................................................................................................................................
gradient result 301
Using Lift.........................................................................................................................................................
Curves for the Pipeline Pressure Drops 305
External ......................................................................................................................................... 306
GAP Internal Correlations
......................................................................................................................................... 308
PROSPER on line......................................................................................................................................... 312
PROSPER file ......................................................................................................................................... 313
PROSPER.........................................................................................................................................................
On Line 314
Edit Pipe entry ......................................................................................................................................... 315
Rough Approximation ................................................................................................................................... 318
Enthalpy Balance ................................................................................................................................... 319
Improved Approximation ................................................................................................................................... 327
Gradient Calculation
......................................................................................................................................................... 328
Bottlenecks......................................................................................................................................................... 331

August, 2012 GAP User Guide

IV
V G AP

Emulsion correction
......................................................................................................................................................... 332
Wax or Hydrate
.........................................................................................................................................................
Risk 335
Tanks .......................................................................................................................................................... 338
Tank Summary.........................................................................................................................................................
Screen 339
Tank Input.........................................................................................................................................................
Data (Material Balance Tank) 341
Constraints ......................................................................................................................................... 342
Wells ......................................................................................................................................... 342
Injection ......................................................................................................................................... 343
Tank Schedule ......................................................................................................................................... 344
Tank Results ......................................................................................................................................... 345
Flares and Vents.......................................................................................................................................................... 346
Summary .........................................................................................................................................................
and Input 346
Results ......................................................................................................................................................... 346
Tank Input Data ..........................................................................................................................................................
(Decline Curve Tank) 348
Tank Production
.........................................................................................................................................................
Data 349
Compressibility
......................................................................................................................................................... 351
Pum ps .......................................................................................................................................................... 353
Pump Summary.........................................................................................................................................................
Data 354
Performance .........................................................................................................................................................
Curve Options 355
Pump Control ......................................................................................................................................... 358
Jet Pump .........................................................................................................................................................
Options 360
Jet Pump Control......................................................................................................................................... 362
Framo Pump .........................................................................................................................................................
Options 364
Framo Pump Control ......................................................................................................................................... 366
Constraints ......................................................................................................................................................... 367
Pump Calculate
.........................................................................................................................................................
Button 368
Pump Schedule
.........................................................................................................................................................
(ONLY for prediction) 370
Com pressors .......................................................................................................................................................... 371
Compressor .........................................................................................................................................................
Summary Data 371
Input Data.........................................................................................................................................................
for Compressor (Full Model) 373
Input Data.........................................................................................................................................................
for Fixed dP Compressor 381
Input Data.........................................................................................................................................................
for Fixed Pow er Compressor 382
Input Data.........................................................................................................................................................
for Reciprocating Compressor 384
Input Data.........................................................................................................................................................
for MultiPhase Compressor/Pump 385
Compressor .........................................................................................................................................................
Control (Full Model Only) 387
Compressor .........................................................................................................................................................
Schedule (ONLY for Prediction) 388
Compressor .........................................................................................................................................................
Calculate Button 389
Operating.........................................................................................................................................................
point in Plot 389
Surge and.........................................................................................................................................................
Choke 391
Sources / Sink .......................................................................................................................................................... 392
Source ......................................................................................................................................................... 392
Source Data Entry ......................................................................................................................................... 394
Source Summary ...................................................................................................................................
Data 394
Source Data Input ................................................................................................................................... 396
Source Schedule ...................................................................................................................................
(ONLY for Prediction) 397
Sink ......................................................................................................................................................... 397
Sink Data Entry ......................................................................................................................................... 397
Sink Summary Data ......................................................................................................................................... 398
Sink Input Data ......................................................................................................................................... 398
Sink Schedule (ONLY ...................................................................................................................................
for Prediction) 399
Inline Elem ents.......................................................................................................................................................... 400
Inline Gate.........................................................................................................................................................
Valve 401
Inline gate Valve.........................................................................................................................................
Data Summary Screen 402
Input Data / Schedule .........................................................................................................................................
( ONLY for prediction) 402
Contents VI

Inline Check.........................................................................................................................................................
Valve 403
Inline Check Valve .........................................................................................................................................
Data Summary Screen 403
Input Data / Schedule .........................................................................................................................................
( ONLY for prediction) 404
Inline Separation
......................................................................................................................................................... 405
Inline Separation.........................................................................................................................................
Data Summary Screen 405
Inline Separation.........................................................................................................................................
Data Input Screen 407
Input Data / Schedule .........................................................................................................................................
(ONLY for prediction) 407
Inline Choke......................................................................................................................................................... 408
Inline Choke Data .........................................................................................................................................
Summary Screen 408
Inline Choke dP Control......................................................................................................................................... 410
Input Data / Schedule .........................................................................................................................................
(ONLY for prediction) 413
Inline Injection
......................................................................................................................................................... 413
Inline Injection Data .........................................................................................................................................
Summary Screen 413
Inline Injection Data .........................................................................................................................................
Input Screen 414
Defining the Injection ...................................................................................................................................
Fluid PVT 415
Defining the Injection ...................................................................................................................................
Rate 415
Schedule (ONLY.........................................................................................................................................
for prediction) 416
Inline General
......................................................................................................................................................... 417
Notes on Inline General.........................................................................................................................................
Elements 417
Inline General Input .........................................................................................................................................
Data (Script) Screen 418
Inline General Script .........................................................................................................................................
Variables 418
Schedule (ONLY.........................................................................................................................................
for prediction) 420
Inline Element Variables
......................................................................................................................................... 420
Control Variables ......................................................................................................................................... 422
Temporary Variables ......................................................................................................................................... 423
Results Variables ......................................................................................................................................... 423
Tax Regime Variables ......................................................................................................................................... 423
FLOW and COMP .........................................................................................................................................
Structure Variables 424
PVT Calculator .........................................................................................................................................
- Black Oil 427
PVT Calculator .........................................................................................................................................
- Compositional 429
Logging Messages ......................................................................................................................................... 431
Mathematical Functions ......................................................................................................................................... 431
Control Structures ......................................................................................................................................... 432
Example Script ......................................................................................................................................... 434
Inflow Icon .......................................................................................................................................................... 436
Inflow Summary
.........................................................................................................................................................
Screen 436
Input ......................................................................................................................................................... 437
Grouping .......................................................................................................................................................... 438
Grouping .........................................................................................................................................................
Data Entry 439
Constraints ......................................................................................................................................... 439
Schedule ......................................................................................................................................... 440
Grouping ......................................................................................................................................... 440
Flow sheets .......................................................................................................................................................... 442
Notes on Constraints
.......................................................................................................................................................... 447
6 VLP/IPR
...................................................................................................................................
Generation 447
A w ell m odel..........................................................................................................................................................
in GAP 447
IPR ......................................................................................................................................................... 448
VLP ......................................................................................................................................................... 450
Importance .........................................................................................................................................................
of VLP Data Ranges 450
Batch Generation
..........................................................................................................................................................
of IPRs 452
Single layer
.........................................................................................................................................................
w ells 452
Multilayer .........................................................................................................................................................
w ells 457
Batch Generation
..........................................................................................................................................................
of Well and Pipe VLPs 466
Batch Generation
.........................................................................................................................................................
of VLPs 466

August, 2012 GAP User Guide

VI
VII G AP

Values to.........................................................................................................................................................
use for VLP Generation 470
Generating.........................................................................................................................................................
Well VLP on a w ell-by-w ell basis 475
Batch Generation
.........................................................................................................................................................
of VLPs w ith Mass flow rates 478
Batch Generation
.........................................................................................................................................................
of Pipe VLPs 480
Batch Generation
..........................................................................................................................................................
of Well Perform ance Curves 484
7 Model
...................................................................................................................................
Validation 489
Well Model Validation
.......................................................................................................................................................... 489
Checking Wells
..........................................................................................................................................................
Calibration 489
Running Model
.........................................................................................................................................................
Validation / Quality Check 489
Checking .........................................................................................................................................................
the Quality of Individual Wells Graphically 494
8 Network
...................................................................................................................................
Solver and Optimiser 495
The Solver .......................................................................................................................................................... 495
The Optim iser.......................................................................................................................................................... 495
Constraints and
..........................................................................................................................................................
Equipm ent Control Screen 495
Constraints
......................................................................................................................................................... 495
Equipment.........................................................................................................................................................
Control Screen 496
Optimisation
.........................................................................................................................................................
Objective Function 497
Solving the Netw
..........................................................................................................................................................
ork 501
Solver Modes .......................................................................................................................................................... 503
No Optimisation
......................................................................................................................................................... 503
Optimise w.........................................................................................................................................................
ith all constraints 504
Optimise w.........................................................................................................................................................
ith potential constraints only 505
The Solver / Optim
..........................................................................................................................................................
iser Settings 506
Calculation Results
.......................................................................................................................................................... 513
9 Prediction
................................................................................................................................... 516
Prediction - Basics
.......................................................................................................................................................... 517
Forecast .........................................................................................................................................................
Workflow 522
Linking MBAL
.........................................................................................................................................................
files to GAP 522
Running Predictions
......................................................................................................................................................... 523
Notes on .........................................................................................................................................................
Constraints 530
Linking Production
.........................................................................................................................................................
/ Injection Forecasting 530
Prediction Options
.......................................................................................................................................................... 534
Run Prediction
......................................................................................................................................................... 534
View Prediction
.........................................................................................................................................................
Log 534
Save Prediction
.........................................................................................................................................................
Results as 535
Reload Prediction
.........................................................................................................................................................
Snapshot 538
Prediction.........................................................................................................................................................
Script Options 540
Edit System.........................................................................................................................................................
Constraints Schedule 541
Notes on Constraints ......................................................................................................................................... 542
Edit Separator
.........................................................................................................................................................
and Joint Schedules 543
Edit Equipment
.........................................................................................................................................................
Schedule 546
Edit Tank .........................................................................................................................................................
Schedule 549
Edit Gas lift
.........................................................................................................................................................
Schedule 550
Edit Schedule
.........................................................................................................................................................
Event Groups 552
Edit DCQ Schedule
......................................................................................................................................................... 552
Apply Schedule
.........................................................................................................................................................
to 558
Purge Results
......................................................................................................................................................... 559
Plot and View
.........................................................................................................................................................
the Prediction Results 559
Plot Nodes Prediction .........................................................................................................................................
Results 560
Plot Tanks Prediction .........................................................................................................................................
Results 564
Plot Emissions Prediction
.........................................................................................................................................
Results 564
View DCQ Prediction .........................................................................................................................................
Results 564
10 Results
...................................................................................................................................
and Reports 565
Contents VIII

Results Menu .......................................................................................................................................................... 565


Detailed Results
......................................................................................................................................................... 566
Summary .........................................................................................................................................................
Results 567
Total System
.........................................................................................................................................................
Results 568
System Emissions
......................................................................................................................................................... 569
Plot Performance
.........................................................................................................................................................
Curves... 570
Plot Options
......................................................................................................................................................... 571
Reports .......................................................................................................................................................... 573
11 History
...................................................................................................................................
Matching an IPM Model 576
Introduction .......................................................................................................................................................... 576
Procedure for ..........................................................................................................................................................
History Matching 577
Running the
.........................................................................................................................................................
model and comparing to history 577
History matching
.........................................................................................................................................................
each element independently 578
12 Prediction
...................................................................................................................................
Script 587
Introduction .......................................................................................................................................................... 587
Functions .......................................................................................................................................................... 588
Exam ple .......................................................................................................................................................... 590
13 Defining
...................................................................................................................................
System Units 592
Setting the Input
..........................................................................................................................................................
/ Output Unit System 592
The Control Database
.......................................................................................................................................................... 593
Defining Units
..........................................................................................................................................................
at a Variable Level (Dynam ic Unit Conversions) 595

Chapter 3 Examples Guide 598


1 Examples
...................................................................................................................................
Index 598
Extracting a GAP
..........................................................................................................................................................
Archive file (.GAR) 600
2 Example
...................................................................................................................................
1a - Gas Field Network modelling with GAP 603
Objectives .......................................................................................................................................................... 603
Data available.......................................................................................................................................................... 604
Build the GAP ..........................................................................................................................................................
m odel 605
Draw the.........................................................................................................................................................
GAP Netw ork 605
Define the.........................................................................................................................................................
Reservoir 614
Define the.........................................................................................................................................................
Wells 615
Generate.........................................................................................................................................................
Well IPRs 617
Generate.........................................................................................................................................................
Well VLPs 620
Define the.........................................................................................................................................................
Pipelines 622
Settings the
.........................................................................................................................................................
Constraints 626
Settings the
.........................................................................................................................................................
Well Controls 626
Running the ..........................................................................................................................................................
Prediction 627
Results ......................................................................................................................................................... 629
3 Example
...................................................................................................................................
1b - Gas Field Network Modeling with GAP (Advanced) 632
Objectives .......................................................................................................................................................... 632
Data Available .......................................................................................................................................................... 633
Defining the ..........................................................................................................................................................
Inline Program m able Elem ents 634
Understanding
.........................................................................................................................................................
the logic 635
Setting up.........................................................................................................................................................
the Inline Programmable Element 636
Methanol .........................................................................................................................................................
Injection Script for MEG_A 641
Setting up the ..........................................................................................................................................................
Scheduling 645
Using the.........................................................................................................................................................
Schedule Option 645
Using the.........................................................................................................................................................
Prediciton Script 646
Running the ..........................................................................................................................................................
Prediction 648
Prediction.........................................................................................................................................................
1 - Methanol Included in the System 649

August, 2012 GAP User Guide

VIII
IX G AP

Prediction.........................................................................................................................................................
2 - Methanol Excluded from the System 660
4 Example
...................................................................................................................................
2 - Oil Production Network 665
Objectives .......................................................................................................................................................... 665
Data available.......................................................................................................................................................... 667
Build the GAP ..........................................................................................................................................................
m odel 668
Draw the.........................................................................................................................................................
GAP Netw ork 668
Define the.........................................................................................................................................................
Reservoirs 676
Define the.........................................................................................................................................................
Wells 677
Generate.........................................................................................................................................................
Well IPRs 679
Generate.........................................................................................................................................................
Well VLPs 681
Model Validation
.........................................................................................................................................................
to QC the w ells 685
Define the.........................................................................................................................................................
Pipelines 687
Pipeline Matching
......................................................................................................................................................... 694
Question 1 - ..........................................................................................................................................................
Solution 697
Initialise IPRs
.........................................................................................................................................................
from Tank Simulations 697
Solve netw .........................................................................................................................................................
ork for w ells fully open 699
Question 2 - ..........................................................................................................................................................
Solution 702
Entering the .........................................................................................................................................................
Constraint 702
Setting Well .........................................................................................................................................................
Controls 703
Solve Netw .........................................................................................................................................................
ork w ith Optimisation 704
Question 3 - ..........................................................................................................................................................
Solution 708
Run Prediction
.........................................................................................................................................................
w ith Optimisation 708
Saving the .........................................................................................................................................................
Prediction results 712
Question 4 - ..........................................................................................................................................................
Solution 713
Interpreting .........................................................................................................................................................
a GAP Model 713
Analyzing.........................................................................................................................................................
Snapshots 719
Question 5 - ..........................................................................................................................................................
Solution 724
Introducing .........................................................................................................................................................
Pressure Support 724
Comparing .........................................................................................................................................................
Scenarios 725
Creating an Archive
..........................................................................................................................................................
File 728
5 Example
...................................................................................................................................
3 - Pipeline detailed results 731
Objectives .......................................................................................................................................................... 731
Data available.......................................................................................................................................................... 732
Run Solve Netw..........................................................................................................................................................
ork 732
Pipeline detailed
..........................................................................................................................................................
results 734
Convert the pipeline
..........................................................................................................................................................
to PROSPER online 738
6 Example
...................................................................................................................................
4-Associated Water Injection System 746
Objectives .......................................................................................................................................................... 746
Data Available
.......................................................................................................................................................... 747
Prediction to..........................................................................................................................................................
Determ ine Water Injection Requirem ent 747
Calculating the
..........................................................................................................................................................
Num ber of Water Injectors 751
Associate Production
..........................................................................................................................................................
to Water Injection Netw ork 757
Run Prediction
..........................................................................................................................................................
With Coupled Models 760
7 Example
...................................................................................................................................
5 - Smart Well Modelling in GAP 765
Objectives .......................................................................................................................................................... 765
Data Available.......................................................................................................................................................... 766
Build the GAP ..........................................................................................................................................................
Netw ork 767
Draw the.........................................................................................................................................................
GAP Netw ork 769
Define the.........................................................................................................................................................
IPR Elements 775
Define the.........................................................................................................................................................
'Completion' Pipes 778
Define the.........................................................................................................................................................
Outflow 780
Write the .........................................................................................................................................................
Prediction Script 782
Run the Prediction
..........................................................................................................................................................
Without Optim isation 786
Contents X

Run the Prediction


..........................................................................................................................................................
With Optim isation 787
8 Example
...................................................................................................................................
6 - Electrical Submersible Pump 793
Objectives .......................................................................................................................................................... 793
Data Available.......................................................................................................................................................... 794
Build the GAP ..........................................................................................................................................................
Model 795
Draw the.........................................................................................................................................................
GAP netw ork 795
Define the.........................................................................................................................................................
Wells 798
Generate.........................................................................................................................................................
Well IPRs 799
Generate.........................................................................................................................................................
Well VLPs 800
Set the Scheduling
......................................................................................................................................................... 803
Fixed Operating
..........................................................................................................................................................
Frequency 804
Run Forecast
.........................................................................................................................................................
w ith Fixed Pump Frequency 805
Variable Operating
..........................................................................................................................................................
Frequency 810
Set Well Controls
......................................................................................................................................................... 810
Set System.........................................................................................................................................................
Constraint on Maximum Pow er 813
Run Forecast
.........................................................................................................................................................
w ith Variable Operating Frequency 813
9 Example
...................................................................................................................................
7 - Gas Lift Optimisation 816
Objectives .......................................................................................................................................................... 816
Data Available .......................................................................................................................................................... 817
Build the GAP ..........................................................................................................................................................
Model 818
Draw the.........................................................................................................................................................
GAP Netw ork 818
Define the.........................................................................................................................................................
Wells 821
Generate.........................................................................................................................................................
Well IPRs 822
Generate.........................................................................................................................................................
Well VLPs 823
Set the Scheduling
......................................................................................................................................................... 826
Fixed Gas lift..........................................................................................................................................................
Gas Injection 827
Run forecast
.........................................................................................................................................................
w ith Fixed Gas Injection 828
Variable Gas..........................................................................................................................................................
Lift Injection 833
Set w ell Controls
......................................................................................................................................................... 833
Set Maximum.........................................................................................................................................................
Gas Lift Available 834
Run Forecast
.........................................................................................................................................................
w ith Variable Gas lift Injection 835
10 Example
...................................................................................................................................
8 - Gas Lift Injection Network 841
Objectives .......................................................................................................................................................... 841
Data Available.......................................................................................................................................................... 843
Modify the Production
..........................................................................................................................................................
Netw ork 844
Generate.........................................................................................................................................................
the Well VLPs w ith Casing Pressure 845
Setting Well
.........................................................................................................................................................
Controls in GAP 849
Build the Gas..........................................................................................................................................................
Lift Injection Model 850
Draw the.........................................................................................................................................................
GAP Netw ork 851
Define the.........................................................................................................................................................
Wellheads and Delivery Station 859
Define the.........................................................................................................................................................
Pipelines and Surface Equipment 861
Define the.........................................................................................................................................................
Compressor Curves 871
Associate Production
..........................................................................................................................................................
to Gas Lift Gas Netw ork 876
Write the .........................................................................................................................................................
Prediction Script 879
Run Prediction..........................................................................................................................................................
With Coupled Models 883
Case 1 ......................................................................................................................................................... 884
Case 2 ......................................................................................................................................................... 886
Case 3 ......................................................................................................................................................... 890
11 Example
...................................................................................................................................
9a - LNG (Fully Compositional) 893
Objectives .......................................................................................................................................................... 893
Data Available
.......................................................................................................................................................... 894
Build the GAP..........................................................................................................................................................
m odel 895
Draw the.........................................................................................................................................................
GAP netw ork 896

August, 2012 GAP User Guide

X
XI G AP

Define the.........................................................................................................................................................
Reservoir 903
Setting up.........................................................................................................................................................
MBAL as compositional 904
Entering compositional .........................................................................................................................................
PVT Data 906
Define the.........................................................................................................................................................
Wells 913
Import EOS Composition .........................................................................................................................................
in GAP 915
Generate Well IPRs ......................................................................................................................................... 917
Import VLPs ......................................................................................................................................... 919
Define the.........................................................................................................................................................
LNG Plant 920
Define the.........................................................................................................................................................
Pipelines 922
Setting the.........................................................................................................................................................
Well Controls 923
Set the Scheduling
......................................................................................................................................................... 924
Solve Netw ork.......................................................................................................................................................... 925
View ing the
.........................................................................................................................................................
Detailed Compositional Results 928
Running the ..........................................................................................................................................................
Prediction 930
View ing the
.........................................................................................................................................................
Detailed Compositional Results 934
12 Example
...................................................................................................................................
9b - LNG (Black Oil Compositional Lumping-Delumping) 948
Objectives .......................................................................................................................................................... 948
Data Available .......................................................................................................................................................... 949
Set up GAP as ..........................................................................................................................................................
Black Oil com positional Lum ping/Delum ping 949
Running the ..........................................................................................................................................................
Prediction 952
Prediction.........................................................................................................................................................
and view ing the results 954
Black Oil - Lum..........................................................................................................................................................
ping/Delum ping 959
13 Example
...................................................................................................................................
10 - Tight Gas 960
Objectives .......................................................................................................................................................... 960
Data Available.......................................................................................................................................................... 961
Build the Sector
..........................................................................................................................................................
m odel 963
Draw the.........................................................................................................................................................
GAP Netw ork 963
Define the.........................................................................................................................................................
Wells 965
Generate transient .........................................................................................................................................
IPR Data 966
Import VLPs ......................................................................................................................................... 971
Define the.........................................................................................................................................................
Pipelines 972
Solve Netw ork..........................................................................................................................................................
(Sector Model) 973
Build the Full..........................................................................................................................................................
Model 974
Create Partial
.........................................................................................................................................................
GAP file 975
Import Partial
.........................................................................................................................................................
GAP file 975
Solve Netw ork..........................................................................................................................................................
(Full Model) 978
Including the
.........................................................................................................................................................
Compressor 978
Bypassing .........................................................................................................................................................
the Compressor 980
14 Example
...................................................................................................................................
11 - Coal Bed Methane 984
Objectives .......................................................................................................................................................... 984
Data Available .......................................................................................................................................................... 985
Build the GAP ..........................................................................................................................................................
Model 986
Draw the.........................................................................................................................................................
GAP Netw ork 986
Define the.........................................................................................................................................................
Reservoir 988
Define CBM .........................................................................................................................................................
Wells 989
Define the.........................................................................................................................................................
Routing Links 991
Define the.........................................................................................................................................................
Pipelines 995
Generate.........................................................................................................................................................
Well IPRs 995
Generate.........................................................................................................................................................
Well VLPs 997
Set the Scheduling
.........................................................................................................................................................
for the Wells 1000
Set the Well
.........................................................................................................................................................
Controls 1001
Run Prediction
......................................................................................................................................................... 1002
Interpret the Results......................................................................................................................................... 1003
Contents XII

August, 2012 GAP User Guide

XII
Chapter

1
Technical Overview 2

1 Technical Overview
PETROLEUM EXPERTS GAP (General Allocation Package) is a multiphase flow simulator that
is able to model and optimise production and injection networks. The concept of the network is
here intended in the fullest sense, therefore it includes both the surface and downhole
equipment.

GAP is part of the IPM Suite and allows the engineer to build complete system models
including; the reservoirs, wells and surface network.

GAP can be linked directly to PROSPER and MBAL to model entire reservoir and productions
systems. Reservoir numerical simulators (REVEAL, Eclipse, Imex, GEM, etc.), process
simulators (Hysys, Unisim) and spreadsheets can also be linked through the Petroleum
Experts controller RESOLVE.

GAP can handle a combination of different fluids including; oils, dry and wet gases, retrograde
condensates, steam and water flowing through complex production or injection systems. The
fluid phase behaviour can be modelled using the Black Oil formulation or Equation of State
Compositional Modelling. The rigorous compositional modelling capabilities of GAP enable
the engineer to perform studies where the determination of the fluid composition is crucial (for
example, in the case of environmental restrictions or in order to satisfy the requirements at
process level) or when it is necessary to determine the conditions at which there is precipitation
of solids for Flow Assurance studies (wax and hydrate deposition).

Calculations can be performed to determine the state of the system at a specific point in time (
Solve Network) or to understand the evolution of the model with time (Prediction), taking into
consideration the connected reservoir simulator (MBAL or any numerical simulator) to model the
reservoir depletion.

GAP's powerful calculation engine is capable of optimising extremely complex networks


composed of thousands of elements (i.e. wells, pipelines, compressors, pumps, heat
exchangers etc.) connected in any possible way (i.e. complex loops) with multiple controls
throughout the system. Coupled with this flexibility, GAP has the most powerful and fastest
optimisation engine in the industry, as it is based on non-linear SQP technique 21 (Sequential
Quadratic Programming).

The GAP optimiser provides the engineer with the option to maximise a certain objective
function (for example oil production or revenue) whilst at the same time honouring any
constraints set in the system. GAP identifies the optimum control settings (i.e. well head chokes,
compressor speeds etc.) that maximise the objective function so that the engineer can then
implement these controls in the field.

GAP is designed with a fully open architecture which enables the user to access all the features
of the software from a third party application (Excel macros, Visual Basic, C, etc.) which is
called OPENSERVER. OPENSERVER allows the engineer to automate tasks like updating the

1990-2012 Petroleum Experts Limited


3 GAP

models, run sensitivities or implement complex workflows with the underlying network model.

MAIN APPLICATIONS

The fields of applications of GAP can be divided in the following groups:

Field Optimisation 8

Field Planning 9

Fluid Modelling (PVT) 10

Reservoir Modelling 14

Flow Assurance and Advanced Thermal Modelling Options 15

Artificial Lift 16

Complex Well Geometry 17

Automation 18

Examples Index 30

GAP User Guide August, 2012


Technical Overview 4

1.1 Summary of Capabilities


# Functionality Comments

1 Robust Solver The solver in GAP has been designed to be fast and robust.
Several comparative studies that have been done by oil
companies have classified the GAP solver as the fastest and
most accurate in the industry, being at least 10o times faster
than the network solver that came second. Pemex has come to
the same conclusion during their software standardization
tests carried out in 2005 (in Veracruz), where GAP was the
only program to be able to solve the complex loop problem
given with standard settings and at the first attempt.

It is a fact that the solver in ReO needs to be tuned for every


case run and when elements are added or removed from the
network, leading to time consuming efforts in getting models to
run.

2 Non-Linear The strength of the optimizer in GAP has been benchmarked


Optimization capability against various other programs by many companies in the
past (including Pemex) and has been found to be the most
accurate generic optimizer for oilfield optimization. This
strength is as a result of the fact that the optimizer in GAP is a
non-linear optimizer, which is the only way that the interactions
between the gas lift injection and the well head pressures can
be accurately considered in the network.

3 Ability to handle GAP is being used by several companies in Canada and the
extremely large USA, where tight gas systems have more than 1500 wells in
networks (in excess of them. These systems have extremely complex loops in them
1500 wells) that could not be solved by any other program that modeling
was attempted with.

4 Ability to handle pipes Mechanistic models have been found to be the only way
with mechanistic surface pipes can be modeled accurately in oil and gas fields,
models since traditional correlations like Beggs and Brill or Duckler
Flannigan have severe limitations that prevent them from being
consistent when conditions in the field change over time. A
comparison done on BP pipelines has found that our own PE5
model was the best among mechanistic models, with

1990-2012 Petroleum Experts Limited


5 GAP

traditional correlations being completely unreliable.

Available models include:

Proprietary Models: Petroleum Experts 4 and 5

SPT Scandpower: OLGAS 2 and 3 phase

StatoilHydro: Hydro 3 Phase

BP: GRE Modified by PE

5 Advanced thermal Pipeline calculations can be done by either entering the U


calculations for pipes value for heat transfer, or by choosing to perform full enthalpy
balance calculations.

6 Ability to handle This is the only way multilayer models can be built when the
multilayer wells, layers have different PVT. Specialized options have been put
including mixing of in GAP for handling these cases in the most accurate way
PVT possible.

7 Choice of PVT models Black Oil, Fully compositional, Compositional Tracking and
(Black Oil, Black Oil lumping/delumping are available
compositional and
hybrids)

8 Calculations done on This engineering option is extremely important when results


volume or mass from surface network are compared to results from process
(results would be simulators under the same flowing conditions. Since reported
process independent) results at standard conditions are path (process) dependent,
mass calculations take any potential mismatches out of the
model since mass is always constant. Volumes can then be
calculated from anywhere in the system based on what the
user chooses the path to surface to be.

9 Gas lift optimization Example on modelling gas lift networks is provided in the
including coupling to manual.
gas lift gas injection
system

GAP User Guide August, 2012


Technical Overview 6

10 Variety of objective Production, Revenue, Oil Rate, Calorific Value etc


functions for
optimization

11 Coupling to water and Example on modelling water injection networks is provided in


gas injection systems the manual.
(or both) in addition to
gas lift gas networks)

12 Coupling to a variety Through RESOLVE


of simulation models

13 Coupling to process Through RESOLVE


models

14 Coupling to material Examples are provided in the manual.


balance models as
well, decline curve
models, tight gas
reservoir models and
CBM models.

15 Voidage replacement These are automatically done based on user specified values
calculations

16 Ability to do restarts Can be handled in the Prediction section.

17 Flowsheets for better


model visualization

18 Ability to locate pieces


of equipment easily in
the network

19 Inline elements Chokes, check valves, inline gas lift gas injection, Gate valves,
available inline separation etc

20 Generalized element This is the Inline General element in GAP, which has been
that can be proven to be very useful in defining pressure drop elements as
programmed to be any P Vs Q curves.
piece of equipment

1990-2012 Petroleum Experts Limited


7 GAP

the user decides

21 Fittings available Globe Valves


Angle Valves
Gate Valves
Foot Valves
Butterfly valves
Plug Valves
Bend
Pipe Entrance or Exit
Sudden or gradual enlargement or contraction
Mitre Bend
Ball Valve
90 degree bends

22 Ability to compare This can be easily done on plots comparing data with various
pressure drop model pressure drop models.
performance against
real data

23 Potential calculations These are calculations performed with some or all the
constraints lifted from the system.

24 Ability to enter mixed The non-linear optimizer in GAP can handle this, whereas a
constraints at any part linear optimizer (or even sequential lineal) would not find the
of the network optimum in these situations, especially when gas lift
optimization is concerned.

GAP User Guide August, 2012


Technical Overview 8

1.2 Field Optimisation


GAP features the fastest and most efficient optimiser in the industry which based at its core
uses the non-linear SQP 21 technique.

The GAP optimiser provides the engineer with the option to maximise a certain objective
function (for example oil production or revenue) whilst at the same time honouring any
constraints set in the system. GAP identifies the optimum control settings (i.e. well head chokes,
compressor speeds etc.) that maximise the objective function so that the engineer can then
implement these controls in the field.

Some applications of the optimisation features are:

Full field optimisation studies with mixed systems (i.e. the combination of ESP, gas lifted and
naturally flowing wells).
Full field gas lift optimisation (gas lift gas allocation amongst wells).
Identification of control settings to meet field management targets (i.e. wellhead chokes,
compressor speeds etc.).
Multi-phase looped network optimisation.
GAP links to PROSPER (well model) and MBAL (tank model) to allow entire production
systems to be modelled and optimised over the life of the field.
Water injection system optimisation (i.e. studying of pressure support).
Gas lift injection system optimisation (i.e. optimising the gas lift gas network that provides the
gas to the artificially lifted wells).

Back to Overview 2

1990-2012 Petroleum Experts Limited


9 GAP

1.3 Field Planning


The unique forecasting and optimisation capabilities of GAP allows the engineer to achieve
several objectives in the scope of 'Field Planning':

Production forecasts using reservoir models (MBAL directly in GAP or numerical simulators
through RESOLVE)
Full field forecasting optimisation.
Field management (Scheduling)
Day to day field operation optimisation.
Optimisation of injection strategies - pressure support or gas lift studies.

Back to Overview 2

GAP User Guide August, 2012


Technical Overview 10

1.4 Fluid modelling (PVT)


Accurately modelling the fluid behaviour has become more and more important as the
'Integrated Production Modelling' approach has been extended to more disciplines (see below
11 ).

In GAP, various options are available to accurately model the fluid PVT properties depending on
the objectives and the available data:

Black oil
Black oil model is used for the calculations.

Tracking
This method is based on a combination of the black oil model and fully compositional model
(equation of state or EOS).
- The black oil model is used for the main pressure drop calculations
- The EOS is then used in a post calculation to determine the composition in any part of the
system by performing compositional blends and flashes based on the rates determined from the
black oil calculations.

If a black oil reservoir simulation is used, the compositional tracking provides the engineer with
the capability of recombining the initial composition in order to match the GOR of the fluid
produced. This functionality is also available with the following PVT methods.

Fully Compositional
This method allows the engineer to run all of the calculations using an equation of state, which
gives the compositions as well as the fluid PVT properties at any point in the network.

Black Oil Compositional Lumping/Delumping


To speed-up calculations, the 'Black Oil Lumping/Delumping' method tracks the composition of
the fluids throughout the network at each iteration of the solver, but perform;s pipeline,
compressor, pump, choke, ... calculations using the 'Black Oil' PVT correlations based on the
black oil standard condition properties calculated by the equation of state. This option can also
be used with the Lumping/Delumping technique which empowers the user with the possibility to
run calculations using an extended composition, or using an equivalent composition with fewer
components (lumped).

All of the compositional PVT methods can be used with the full or the lumped compositions.

The black oil viscosity models can now be combined with the EOS method so that density
calculations can be handled by the EOS and the viscosity can be calculated using the
correlations improving the flexibility of pipeline pressure drop calculations NEW!!!

An improved EOS for CO2 modelling which reproduces the results of Span-Wagner EOS and
has the additional capability of handling other impurities in the composition, is now available
NEW!!!

1990-2012 Petroleum Experts Limited


11 GAP

Multiphase flash calculation including water is now available NEW!!!

Back to Overview 2

1.4.1 Introduction to Lumping/Delumping


Today, the technology available (RESOLVE) allows the engineer to integrate reservoir simulation
models (for example REVEAL, Eclipse and other third party simulators) to production/injection
network models (GAP) and to process models (Hysys, Unisim).

With regards to the PVT modelling, each of the applications have their own requirements, which
are dictated on one side by the objectives of the application itself and on the other by the
calculation speed. The figure below summarises the main requirements for the three main
classes of simulators:

Reservoir numerical simulators are generally focused more on volumetric properties and the
phase behaviour. PVT modelling can be carried out by means of black oil or compositional
(EOS) modelling. In the case of EOS modelling, the number of components has to be limited
to avoid the model from running too slowly (with the exception of thermal simulators like
REVEAL, where a larger number of components is required to guarantee accurate thermal
calculations)
Surface network simulators can work in black oil or compositional and are focused mainly on
densities and viscosities as these parameters are dominant in the pressure drop calculations.
As far as the EOS is concerned, the number of components has to be decided on the basis of
the modelling objectives. If the objective is only to determine the pressure drops, a small
number of components can be suitable and can reduce the run time. However, if the objective
is to perform detailed flow assurance studies (temperature estimations, hydrates, etc.), an
extended composition will be necessary.
Process simulators on their side, focus more on thermal properties calculations, therefore
they require compositional modelling and the composition needs to have a large number of

GAP User Guide August, 2012


Technical Overview 12

components. This is because the thermal properties can be accurately estimated only by
specifying in detail the composition. Density is by default determined on the basis of a
correlation (Costald).

In general, when connecting different models together the common factor among them is the
fluid. In other words, it is necessary to be able to use a PVT characterisation that is consist
throughout the system.

Based on the different requirements of each model from reservoir to surface, it is important to
be able to pass from a small number of components to a large one (or vice-versa) whenever
necessary, and to make sure that the fluid characterisation is representative of the actual fluid
throughout.

The idea behind 'Compositional Lumping/De-lumping' is to have a methodology that is able to


pass from an extended composition (which is referred to as the de-lumped or "full" composition)
to a reduced one (called the lumped or grouped composition) and vice-versa, in a consistent
manner that preserves the quality of the fluid characterisation.

This means that at any point in time the full and the lumped compositions will be equivalent and
representative of the real fluid. In general when creating two characterisations of the same fluid,
by definition they will not give the same answers. However, the lumping/de-lumping methodology
has to make sure that the important properties are consistent, so that calculation speed and
accuracy are both satisfactory.

In GAP this is achieved by means of the so-called "Lumping Rule", which is a piece of logic that
defines the mechanisms to pass from the full to the lumped composition. The 'Lumping Rule' is
created at the stage of building the EOS model using Petroleum Experts' PVT package PVTP.
PVTP has all the facilities to create and quality check the couple full/lumped compositions and to
create the required 'Lumping Rule.'

The concept of the "Lumping Rule" is illustrated below.

1990-2012 Petroleum Experts Limited


13 GAP

In GAP it is possible to import a 'Lumping Rule', which is used to generate the lumped (or the
full) composition when desired. It is then possible to decide if to run the calculations with the full
or with the lumped composition.

The following example illustrates one of the possible applications:

Reservoir simulator - PVT is defined with EOS with 5 components (lumped)


Extended composition is required in the surface network model (GAP) because flow
assurance studies on the pipelines need to be carried out
Process model - full composition is required because detailed thermal properties are
required for the compressor and heat exchanger calculations

In this case GAP would be run using the full composition, which is determined on the basis of the
lumped composition coming from the simulator.

GAP User Guide August, 2012


Technical Overview 14

1.5 Reservoir Modelling


GAP can model and optimise the entire production and injection system by integrating reservoir
models, well models and the pipeline/surface gathering network.

The reservoir can be directly modelled in GAP using material balance models (MBAL) or by
linking GAP to the reservoir simulator using the IPM controller RESOLVE.

Back to Overview 2

1990-2012 Petroleum Experts Limited


15 GAP

1.6 Flow assurance and advanced thermal modelling


options
GAP allows the engineer to accurately model well and pipeline hydraulics and the surface
facilities (compressors, pumps, etc). The pipeline network can be characterised by very
complex topology (with hundreds or thousands of elements and pipe loops).

This allows the engineer to perform studies on:


Full field surface network design
Flow assurance: detailed pipeline studies 301 , temperature modelling, erosion onset, hydrate
formation, wax deposition, condensed water vapour etc.
Process facilities design (for example, design of slug catchers and separators)
Artificial lift optimisation and operation
Compressor and pump system design

Features:
PROSPER on line for advanced temperature modelling (Enthalpy Balance, Improved
Approximation).
Improved Approximation available with GAP 'Internal Correlations' pressure drop model.
Programmable elements allowing modelling of complex user-defined equipment.

Back to Overview 2

GAP User Guide August, 2012


Technical Overview 16

1.7 Artificial Lift


In GAP, modelling and artificial lift optimisation can be carried out with the following techniques:
Gas lift (Continuous)
Electrical Submersible Pump (ESP)
Hydraulic Submersible Pump (HSP)
Jet Pump
Progressive Cavity Pump (PCP)
Diluent Injection
Diluent Injection with gas injection NEW!!!
Coal Bed Methane (CBM) wells with ESP or PCP lift NEW!!!
Sucker rod pumps NEW!!!

Features:
Full field Optimisation studies where naturally flowing, gas lift and ESP wells can all be
included in the same production system model.
Coupled modelling of the gas lift network and the production network
Detailed reporting of pump results (head, power consumption, etc.)

Back to Overview 2

1990-2012 Petroleum Experts Limited


17 GAP

1.8 Complex Well Geometry


GAP has a number of modelling facilities that are able to replicate accurately even very complex
well geometries (smart wells 765 , multilateral wells, wells with Inflow controllable devices 765 ) and
optimise them. One typical example is horizontal completions with ICVs, where one wants to
understand how to set the downhole valves in order to maximise production on one side and
prevent gas coning on the other.

Main features:
Well inflow and outflow elements to decompose the wellbore
Pipeline elements can have tubing or annular flow patterns with a multitude of different flow
connections
PROSPER on line allowing the use of rigorous temperature models

Back to Overview 2

GAP User Guide August, 2012


Technical Overview 18

1.9 Automation
GAP is fully functional through OPENSERVER, which gives access to all of the capabilities of
GAP through external applications such as macros which can be written in Visual Basic, C, etc.
This allows the user to automate many of the tasks that can be performed by operating the
program GUI and to code his/her own workflows. Over the years this feature has been applied
to achieve a vast variety of different objectives as the scope is completely flexible. These are
only a few examples of those applications:

Model validation and update


Interfaced to data sources to run scenarios
Well routing policies
Building interfaces to the GAP model to run customised calculations (deployed directly on the
field)
Interfacing GAP to specialised tools to perform special studies (for example, corrosion
studies)

Back to Overview 2

1990-2012 Petroleum Experts Limited


19 GAP

1.10 The Core GAP Technique


Production and injection systems include producing/injecting elements (wells) that are
connected via common manifolds and pipelines to a fixed pressure point (or boundary
condition) called "Separator" in GAP.

The "Separator" in GAP does not have to be the physical separator in the field, it is simply a
point of fixed pressure in the network. Mathematically speaking it corresponds to a boundary
condition which must be specified in order to solve the system.

The nodes in the system are connections or calculation points.

The core GAP technique has 2 levels:


Level 1: Solving the network
Level 2: Optimising the network response

1.10.1 About the Network Solver


In the figure below, the fluid contribution can be from the wells or sources:

For each node, one can write:

GAP User Guide August, 2012


Technical Overview 20

C = Constant

There are as many equations as unknowns.

This set of equations is solved numerically to provide the natural response of the network.

1.10.2 About the Optimiser


The solution that is generated by the solver i.e. the natural" response of the system may not be
the optimum. The network may be capable of higher production rates, by altering certain
conditions, like:

Back pressure of wells by applying wellhead chokes.


Gas-lift gas allocated to individual gas lifted wells.
Frequency of operation of ESP fitted wells
Frequency of operation of pumps / compressors.
Inline choke sizes

The optimiser of GAP can determine these conditions. As well as boundary conditions i.e. fixed
pressure values (separator pressures) in the system the optimiser can also honour various
constraints such as:

Maximum oil / gas production constraints at the system level.


Maximum oil / gas production constraints at the element level (i.e. at the wells).
Maximum pressure and velocity constraints in the pipelines.

The optimiser will achieve the maximum hydrocarbon production using the rate of change of the
production rate with respect to the rate of change of controllable variables (e.g. the injected lift
gas rate for gas lifted wells).

GAP handles naturally flowing and artificially lifted wells in addition to water and gas injectors.

Optimisation can be based on


Gross revenue
Oil/Gas production
Gross Heating Value
Water production

1990-2012 Petroleum Experts Limited


21 GAP

There is no upper limit on the number of wells and/or platforms that can be
entered.
Constraints can be considered at any level in the system e.g. well, joint, separator
and total system.
Production Forecast models can also consider constraints at the reservoir level.
The key element of this method is the quality of the well models.

1.10.3 Considerations on Optimisation


There are several methods for optimisation available in the literature, some of them simple (like
Simplex (Linear Programming) and Equal Slope), others much more complex, like SQP
(Sequential Quadratic Programming). This section will provide a brief conceptual description of
these methods and explain why GAP uses SQP, which is the most difficult and sophisticated
optimisation technique to implement.

This explanation will concentrate on a Gas Lifted system as it is the best system to explain the
non-linearity of a field and how it can be addressed from an optimisation point of view.

Consider the following very simple function:

This has a clear maximum in the X region we are looking into, indicated by the red arrow on the

GAP User Guide August, 2012


Technical Overview 22

plot above.

In a linear system, two methods can be applied to determine the maximum of this function:

Bracketing

Derivatives

The first method is based upon trying different guesses of X and calculating Y. After trying
a number of X guesses, the maximum is Bracketed and reached. The following
diagram shows the approach:

The derivatives approach works on the basis of gradients:

The derivative of Y is calculated with respect to X and then set to 0. This will allow
calculation of all (X,Y) points which are maxima, minima or points of inflection.

The second derivative of the function can then be used to determine the nature of each
calculated point and the maximum determined.

Both of these methods work very well for linear problems where Y can be described as a
direct function of X.

1990-2012 Petroleum Experts Limited


23 GAP

In the context of a field, this is the case of a dry gas field with no water production in which
pressure at every point is a direct function of the flowrate.

A non linear system will not behave in the same way. By the very nature of it,
each time a guess of X is taken in order to calculate the corresponding Y, the Y
function itself changes as it may be dependent on other variables affected by the
choice of X.

The following diagram will show how the function will behave for a choice of X:

This, in effect, represents a moving target and trying to determine the optimum with 'Linear
Programming' techniques will not succeed.

Consider now the case of a gas lift injection network (shown in a simplified diagram below):

GAP User Guide August, 2012


Technical Overview 24

This is made up of two gas lifted wells and the objective is to determine what is the optimum gas
lift injection rate to inject in each in order to achieve maximum production from the system.

'Linear Programming' techniques will work based on the response of the well. The performance
curve of the well on the right (with one fixed WHP) will be:

In the quest for the 'Optimum Gas Lift Injection Rat'e, a guess for the injection rate is taken (as
shown on the diagram above) and the corresponding liquid rate calculated from the well
response.

This rate will then be used to calculate the response of the surface pipelines that will return a new
well head pressure, based on the pressure drops in the system. A new performance curve will
then be constructed for the well (again based on the new WHP kept constant):

1990-2012 Petroleum Experts Limited


25 GAP

The iterations are then repeated in order to converge to the solution:

Even in this simple system, this behaviour will not represent the reality. Each time a guess on
gas lift injection rate is taken, the pressure drops in the pipeline will cause the back pressure on
the other well to be different.

GAP User Guide August, 2012


Technical Overview 26

This system is by nature 'Non Linear' and is conceptually similar to the function described
earlier.

Linear programming techniques will not be able to see the impact that gas injected in one well
will have on the other due to the pressure drop in the surface lines. The true response on a well
is shown below:

This response can only be captured by the NLP method.

SQP (Sequential Quadratic Programming) techniques work by calculating the response of


every element in the system; not only on how pressures will change with altering flowrates but
also how the gas lift gas injection rate will impact on the pressures.

1990-2012 Petroleum Experts Limited


27 GAP

As these responses are inbuilt in the calculations, the actual behaviour for the wells can be
constructed and the optimum solution found as shown in the last figure.

NLP will always result in higher rates with less gas injection compared to Linear
Programming.

Production Optimisation Using GAP

GAP User Guide August, 2012


Technical Overview 28

About This Guide


The guide assumes that the user is familiar with basic Windows operations and terminology. If
the user is new to the Windows system please refer to the operating system Users Guide.

GAP, along with other Petroleum Experts software, can comfortably be used under Windows

1990-2012 Petroleum Experts Limited


29 GAP

98, Windows ME, Windows NT, Windows 2000, Vista, Windows XP and Windows 7 operating
systems.

The screen displays in this guide are created using both Windows XP and the Windows 7
interface.

The screen displays used in this guide are taken from the examples provided with the software
as well as models from clients (with permission). On occasion, the data files may vary from the
examples shown as updates to the program are issued. Where major amendments or changes
to the program require further explanation, the corresponding documentation will be issued.

GAP User Guide August, 2012


Technical Overview 30

1.11 Examples Index


The following table can be used as a reference for the examples included in this Guide.

Application area Topic Examples Guide


Gas Field Modelling and Setting up a network model for a gas
field, entering constraints and Example 1a 603
Optimisation
schedules and running predictions
Advanced Gas field Modelling hydrate injection using inline
Modelling and Example 1b 632
elements in a gas field.
Optimisation
Setting up a network model for an oil
field, model validation to QC the well
Oil Field Modelling and models, using "Initialise IPRs from
Tank Simulations", setting constraints, Example 2 665
Optimisation
running "Solve Network," entering
schedules, running predictions and
troubleshooting tips.
Viewing details of the pressure drop
Detailed Results for Example 3 731
calculation in GAP using the PROSPER
Pipelines
on line feature
Setting up network model for water
Pressure Support with injection system, linking it to the main
production model and running Example 4 746
Water Injection
prediction with the two coupled
models
Setting up a network model for a multi-
layered well completion with inflow
controllable valves, optimising both of
Smart Well Completions Example 5 765
the layers to maximise oil production,
introducing scheduling and prediction
script.
Setting up network model with ESP
Artificial lift Optimisation - lifted wells, scheduling and running
predictions with optimisation to honour Example 6 793
ESP field
constraints on maximum power
available
Setting up network model with gas
Artificial lift Optimisation - lifted wells, scheduling and running
Example 7 816
Gas Lifted field predictions with optimisation to honour
constraints.
Setting up a gas lift injection network
and linking it to the main production
Gas Lift Injection Network model optimising the coupled models. Example 8 841
Running prediction script and
compressor modelling.

1990-2012 Petroleum Experts Limited


31 GAP

Setting up a fully compositional


LNG Field (Fully network of a LNG field, running
Compositional) predictions with advanced flow Example 9a 893
assurance studies to predict hydrate
formation.
LNG Field (BO Running predictions for a LNG network
Compositional Lumping/ Example 9b 948
with advanced PVT modelling.
Delumping)
Setting up a tight gas field, creating/
Tight Gas Field importing partial GAP files and Example 10 960
compressor modelling.
Setting up a coal bed methane field,
Coal Bed Methane dewatering, routing and running Example 11 984
predictions.

1.12 What's New

Version 9
GAP is now available as a 64-bit application. The main new developments implemented in GAP
version 9 are:

PVT Modelling

Improved CO2 modelling

Viscosity models in EOS can be changed

Multiphase Flash

Hydrate modelling with salts

Well Modelling

CBM well modelling

Well modelling with Sucker Rod Pumps

VLPs can be scheduled to change

Flow assurance related results in the VLPs

GAP User Guide August, 2012


Technical Overview 32

New IPR method (per phase)

Pump/Compressor Modelling

Multiphase pump model available

Compressor results expanded

Option to model different compressor stages on the same shaft

Program Interface

New plotting display

Running script for solve network

Sinks/Sources working on mass

Inline separator having fixed pressure

LNG element available.

Version 8.5
The main new developments implemented in GAP version 8.5 are:

PVT Modeling

Gas viscosity correlations (Lee et al. and Carr et al.) selectable for pressure drop
calculations

Pipeline Modeling

Advanced temperature modeling (Improved Approximation) available along with


the default GAP Internal Correlations pipeline modeling

Modeling of condensed water vapour in pipelines with GAP Internal Correlations


pipeline modeling

1990-2012 Petroleum Experts Limited


33 GAP

Well Modeling

Liquid injector well type to model for example polymer injection

HSP wells VLP format with sensitivity on pump speed

Well Control

T through dynamic well control choke is now accounted for

Displaying Constraints Violations

Setting option to report violated/limiting constraints when running with no


optimisation

Program Interface

Possibility to select all the elements belonging to a Group

PVT Model displayed in tanks

Version 8
The main new developments implemented in GAP version 8 are:

Fluid Modeling - Compositional an Black oil modeling

Lumping/Delumping methodology
Compositional Lumping/Delumping
Black Oil Lumping/Delumping

Speeding up of fully compositional models

Process independent VLP's and IPR's with MW and Mass

Al-Marhoun correlation for Pb, Rs & Bo

GAP User Guide August, 2012


Technical Overview 34

Egbogah et al (heavy oil) correlation for viscosity

Import .PRP composition file for multiple wells, main PVT and Gaslift PVT

Modeling

Gas Lift Injection Network

Generation of IPRs from PROSPER for Multi-Layers wells or Inflows

Automatic setup of MultiLayer wells from a PROSPER files

Model flare and vent in GAP and capture in reports as "emissions", with different
revenue and separate category in Reports

Option to turn wells off if the intersection of VLP/IPR is left of the minimum.

Performance curve points increased to 20

Add outputs of energy, for production and cumulative production, to get output
in units of kilo-watt hours (heating value x mass)

State the correlation used to generate pipeline VLPs on the VLP page

Option to switch on / switch off pressure drops in pipelines (e.g. bypass on


pipelines)

Automatic transfer of the latest well test data on Matching screen from PROSPER
into GAP Model Validation screen

Option to use Lookup tables for fractional flow instead of relative permeability
curves

Option to populate decline curve tanks and related wells production data tables
from prediction results.

Oil injection manifolds

Oil rate abandonment constraints

1990-2012 Petroleum Experts Limited


35 GAP

Option to use WGR in tight gas wells

Program Interface

Different icons for dp control and artificial lift control

Different colour coding for constraints and abandonment constraints

Schedule clock icon visible for masked items

Display GOR, WCT, CGR, WGR, dP and dT in Tooltip box

Display current operating point on compressor performance curves plot

Default Unit System can be set up in preferences

Version 7.0
The main new developments implemented in GAP version 7 are:

Modeling

Internal steam calculator

Improvements in the inflow performance models


Gravel Pack modeling
Ability to model a well with layers having different fluid types

Tight Gas Wells

Well modeling: Include WGR for gas injectors

Pipeline modeling:
Annular flow calculation
Improved Approximation temperature model for Steam
Specify Black Oil Correlation for each Pipe Element

Compressor modeling: reciprocating compressors

GAP User Guide August, 2012


Technical Overview 36

Simultaneous Water And Gas Injection modelling

Prediction:
DCQ contract type: gas rate, gross heating value...
DCQ prediction
New event schedule, such as ESP frequency...
Schedule Event Grouping
OPENSERVER access variable scheduling
New constraints, such as temperature constraints, tank withdrawal
constraints...

Program Interface

The GAP user interface has been updated significantly.

Edit/Undo button

Copy, Cut and Paste of selected network items

Flowsheets (sub-models)

GAP archive - option to create a new folder

Display pipeline gradient calculation's results

Permit models to be run minimized on a PC

Allow user to add comments on main GAP screen

Enable facility to plot multiple scenarios

Add plot to total field system recovery factor

More consistency between screen buttons (i.e. "main", "done"...)

OPENSERVER: wildcard option "@", i.e. Well[{@W*}]

Visualization of limiting/violated constraints

Ability to view schedules of equipment at same time

1990-2012 Petroleum Experts Limited


37 GAP

Ability to cross check well definition in PROSPER

Allow user to move element name in GAP graphical view

Ability to view Solver Log or Prediction Log directly

Ability to add elements to a Group using the "Add Link/Pipe" Option

user can now specify flow correlation to be used when generating Lift Curves for
Pipes.

user can now view all elements linked to a GROUP from the same screen.

Version 6.0
GAP Fully Compositional

All PVT calculations are performed using EOS models.


In this version the fluid can be described using EOS and the calculation are based on the
individual EOS response.

Better modeling of fluid such as Retrograde Condensate and critical fluids.


Account for condensate dropping out of gas.
Three Levels of optimization to speed up the calculations.
Major improvements in speed of EOS calculations
The process is shared with MBAL and PROSPER
Now the entire field response can be modelled using EOS model in the three programs /
GAP / PROSPER /MBAL

Modeling

Diluents Injection in wells and pipelines.


HSP and Jet Pump lifted wells.
Surface Jet Pump in pipelines.

These models have the following characteristics

GAP User Guide August, 2012


Technical Overview 38

Injected fluid is modelled through tables


Choice of fixed or optimized injection rates
Well modelled with lift curves or PROSPER online

Other General enhacements

IPR includes the bubble point as part of the data for matching the IPR
Now if the bubble point of a test is available it can be used with the matching information
to adjust the IPR.

Fitting available for pipeline description


Different fitting elements such as valves, conections , elbows etc can be modelled in the
pipes as an equivalent length and be accounted for pressure drop calculations.

Increase to 100 segments for pipeline description


Under the pipe description up 100 hundres rows are now available to describe pipe
geometry. The number of fields for pipe description is not longer limited to 25.

Allow CGR and WGR input in gas fluid calculations


When a gas is defined as a new fluid under the fluid injection screen now there is the
possibility of specify the CGR and CGR .

A new overall equipment control screen


a new summary screen equipment controls had been introduced. This will allow from a
centralized screen evaluate all the equipment that have been controlled in the system

New Open server commands

Version 5.0
Program internal structure

Memory Management Enhancement


This release uses on average nine times less memory by avoiding any memory wastage.
All tables use dynamic memory allocation, creating records only if required.

Structure Enhancements
There is no program limit to the number of pieces of equipment contained in a model. The
number of ipr's in a well is not longer limited to 30.

1990-2012 Petroleum Experts Limited


39 GAP

Enhanced validations
Data validation routines have been enhanced to trap data input errors before calculation
starts. Invalid fields are highlighted in red in the screens.

Network TVD validation


The program highlights the joints where TVD inconsistencies occur. If necessary, this
feature can be turned off using the "View", "Highlight TVD differences" menu option.

Enhanced Open Server support


The program supports enhanced open server expressions such as GAP.MOD[{PROD}].
WELL[$].DPControl where the $ sign means ALL ( see the Open Server manual for more
details). For example, to set the dp control of all the wells to "Calculated" the following
open server statement can be used : GAP.MOD[{PROD}].WELL[$].DPControl =
CALCULATED. To set the dp control all the wells of all the models use the following
statement GAP.MOD[$].WELL[$].DPControl = CALCULATED.

Prediction results are saved to disk


All prediction results are saved to disk while the prediction is running. This makes the
program memory requirement independent of the number of prediction steps.

Purge of prediction snapshots and results


All prediction results can be cleared to reduce the data file size through the "Prediction",
"Purge All Prediction Results" menu option.

Program interface

Internal solver and prediction message log sorted by type


The messages generated by the solver and the prediction runs are saved to disk and
sorted by type i.e. Log, Errors, Constraints, Events, ...

Internal OPENSERVER editor


An OPENSERVER command editor is available under the "Edit", "Execute Open Server
Statement" menu option. This allows the user to send OPENSERVER messages to the
application without the need of an external application. For example to make all the wells
controllable, the GAP.MOD[{PROD}].WELL[$].DPControl = CALCULATED command
can be executed from within GAP.

Customisable dialogue size


dialogues with the "sizeable window" pattern in the bottom right corner of the window can
be resized by the user to fit their screen resolution. Holding the Shift key down while
opening the dialogue will reset its size to its original value.

GAP User Guide August, 2012


Technical Overview 40

Convert well into inflow or split well into inflow and outflow
Existing wells can be split into an outflow only well (VLP) and inflow pieces of equipment.

Main screen equipment locator while editing


While editing the pieces of equipment, double click on an icon on the main screen to edit
that piece of equipment.

Main screen information displayed customisable


The "View", "Select Info Displayed" allows the user to select one parameter that will be
displayed along with the label on the main screen graph.

Modeling

Downhole Networks
Outflow only well and inflow pieces of equipment allow the modeling of smart wells. Any
piece of equipment (joints, pumps, separators, pipes or completions ...) can be inserted
between the inflows and the wells.

Outflow only wells (smart wells) with VLP or PROSPER online


Outflow only well can be modelled using lift tables or PROSPER online.

New ways of modeling pipelines - VLP and PROSPER online


Pipelines can be modelled using GAP internal correlations, lift tables or PROSPER online.

Internal lift curve generator for pipeline


GAP includes an internal lift curves generator for pipelines. GAP uses its own internal flow
correlation or the PROSPER online model to generate the lift curves.

PCP lifted wells


Progressive Cavity Pumps lifted wells can be modelled. The motor speed is available
has optimisation variable.

PVT impurities from composition


When run enabling the compositional tracking option, the black oil pvt impurities mirror
the composition impurities

IPR permeability correction due to compaction


Pemeability correction for compaction effect is available in the ipr description screen.

Revenue, Cost and Tax Regimes


The user can define multiple "Tax regimes" (i.e. revenue and cost prices) and assign

1990-2012 Petroleum Experts Limited


41 GAP

them to wells, inflows and sources.

Equipment Grouping
Individual pieces off equipment can be assign to one or several groups even if these
pieces of equipment are not related or connected together. The groups can then be
assigned rate constraints

Computation

Faster and more robust Solver and Optimiser

Potential calculation in solver and prediction runs


When requested to do so, the program will compute the field potential by removing all the
constraints and running an optimisation.

Optimisation on revenue

Riser gaslift gas included in revenue calculation

More robust compositional tracking

Prediction

Material balance and decline curve prediction types have been merged
Decline curves and material balance reservoir models can be associated in the a
prediction run.

Internal prediction Visual Basic script


Under the "Prediction", "Edit Prediction Script" menu option, an internal visual basic
script is available to dynamically control the prediction run.

IPR WCT or GOR versus cumulative production for decline curve tank
WCT and GOR profiles can be entered versus cumulative production or reservoir
pressure.

Prediction results and network snapshots are saved during prediction runs
through OPENSERVER

GAP User Guide August, 2012


Technical Overview 42

Note: The GAP sample files are distributed as archives (which contain all the files necessary to
run the models). For a quick description of how to extract the sample files, click here.

Note on Open Server


GAP can be operated or automated from other applications, for example through the writing of
spreadsheet scripts in Excel or Access.
The potential uses range from
Simple importing and exporting macros through
Interfacing GAP to other modeling applications such as reservoir and facilities simulators.

A powerful feature is the ability to perform predictions in a step-by-step mode, allowing Data
Server macros to be run at each timestep. This can be used to implement, for example, event
driven scheduling (changing IPR during a prediction, changing constraints with time, overriding
the GAP optimiser, scheduling compressors...)

1990-2012 Petroleum Experts Limited


43 GAP

GAP User Guide August, 2012


Chapter

2
45 GAP

2 User Guide

2.1 What is in this guide?


A flow chart which outlines the basic procedures required to carry out a full field network
optimisation study using GAP is shown in the last figure. The organisation of the manual
adheres to the GAP processing logic as outlined by the flowchart as much as possible.

Introduction 46 Introductory information on GAP and the user guide


Getting Started 51 General information on the usage of GAP
with GAP 51
Describing 150 This section describes the PVT modelling options available in GAP
the PVT 150
Equipment Data 180 This describes the interface used for entering equipment data, and
describes in detail the data entry screens for all elements
VLP/PR 46 This section shows how to generate VLP/IPR using PROSPER for
Generation 46 inclusion in the GAP system model
Model Validation 489 This section introduces the user to the 'Model Validation' menu option
in GAP which allows efficient quality checking of the well models in GAP
Network Solver 495 This section describes how to solve network and check that model
and Optimiser 495 production matches actual production
Prediction 516 This section describes the coupling of reservoir tank models to GAP for
production forecasting
Results and 565 This explains how to prepare, print and plot the results
Reporting 565
History Matching 576 General steps to follow to make sure that the model is calibrated and
an IPM Model 576 representing reality
Prediction Script 587 Section describing the scripting features present in GAP
Defining 592 This section describes how to set up Unit systems in GAP
System Units 592

GAP User Guide August, 2012


User Guide 46

2.2 Introduction
Petroleum Experts General Allocation Package (GAP) is an extremely powerful and useful tool
offered to the Petroleum Engineering community. GAP offers complete surface production/
injection network modelling, capable of handling a variety of different wells in the same network
with the ability to optimise hugely complicated systems very efficiently.

The optimiser controls production rates using wellhead chokes, ESP operating frequencies,
pump/compressor speeds or allocating lift gas to maximise the hydrocarbon production while
honouring constraints at the gathering system, well and reservoir levels.

The tools can be used to determine:

Allocation of production
Full field forecasts (predictions)
The interaction of coupled production and injection systems that captures the important
physics of both systems and then optimises the whole system taking into account the
physics and ensuring that the predicted control settings are representative of reality.

Optimisation

GAPs powerful optimisation engine can, for example, allocate gas for gas lifted
wells, alter the frequency of ESP pumps or sets wellhead chokes for naturally
flowing wells to maximise revenue or oil production while honouring constraints at
any level.

Running Predictions

GAP calculates full field production forecasts including gas or water injection
volumes required to meet reservoir pressure constraints.

Reservoir pressures can be obtained from decline curves, material balance or


simulation models.

The associated injection systems can be modelled and optimised so as to


achieve injection targets for pressure maintenance programmes.

Link to third party tools via OPENSERVER

GAP has an open architecture which allows


Third party software to exchange data with GAP.
Run and control GAP via the OPENSERVER technology developed by
Petroleum Experts

1990-2012 Petroleum Experts Limited


47 GAP

Link to MBAL

Reservoir performance for production forecasting is provided by links to


Petroleum Experts MBAL material balance program.

Link to PROSPER

Well performances for production forecasting are provided by links to Petroleum


Experts PROSPER, the single well model package within the IPM Suite.
PROSPER can be run in a batch mode from GAP for generation of well
performance and lift curves for simulation.

Fully Compositional or Compositional Tracking Modes

GAP can calculate the PVT fully compositionally and track compositions from the
well/source level through to the separators. In a prediction, GAP can take
compositions calculated by MBAL and record the evolution of compositions
throughout the system with time.

The compositional tracking can be done as in previous versions using the black
oil model. Lumping/delumping of compositions can be performed in both the fully
compositional and black oil cases.

GAP User Guide August, 2012


User Guide 48

2.2.1 How to Use This Guide


Depending on the modelling objectives and the amount of time the user wishes to spend
becoming familiar with the program, the user guide can be used in the following ways:

Beginning-to-end
If the user is new to Windows applications, we recommend reading this document from
beginning to end to become familiar with the program features, menus, and options. This is the
slow approach, but will cover all there is that is necessary to work with the program.

Selected tasks
Use this approach only if the user is already familiar with the basic functionality of the program.

Worked examples
If the user has limited time and wants to sample the program features quickly, follow the
instructions provided in the examples. The examples can be found in the Examples Guide 598 .
The examples demonstrate the fundamentals of building a network, running sensitivities and
performing predictions with full integrated models. Considerable effort has been made to
ensure that the examples are practical and relevant so that key engineering concepts and
problems are resolved throughout the different exercises.

1990-2012 Petroleum Experts Limited


49 GAP

2.2.2 GAP Glossary of Terms


The following table introduces some key terms in network modeling using GAP.

Term Application
Abandonment For prediction runs only. Minimum rates, maximum GOR etc. can
Value be set to turn wells off.
Actual Evaluation of well models for specified top node (wellhead)
pressure, GOR and water cut. Used to quality control well models
by comparing model and actual measured test rates.
Compositional The tracking of fluid components/compositions from the well bore
Tracking 172 to the top (separator) node.
Constraint Constraints are used to direct the GAP optimiser to honour
process limitations, limit well production rates. Constraints always
refer to the GAP optimiser. Well abandonment rates are set
elsewhere.
Element A well, joint, pipe, separator, tank etc. used to construct either the
production or injection systems.
Generate The process of calculating and importing well parameters like
IPR
VLP
GOR Gas / Oil Ratio. In GAP this is the 'Producing GOR' including
solution and free gas, but excluding gaslift injection.
Icon Graphical symbol used to represent a system element.
IPR Inflow performance relation. Function relating pressure drop
across reservoir and production rate. IPRs can be generated
directly from PROSPER.
Node Point where one or more production elements connect to another
system element.
Performance Curve Curve representing the well response. Expressed as pressure
(PC) downstream of the well (or manifold pressure) vs rate produced.
The PCs can be generated from VLP/IPR by sensitising on well
manifold pressure for a given reservoir pressure and water/gas
content (respectively, water cut and GOR).
Pipe Pipes connect joints together to form a gathering system. Pipes in
GAP have a length, elevation, inside diameter and roughness.
Prediction Calculation of (optimised or not optimised) future production and
injection rates using pressure decline curves or reservoir models (
MBAL for instance).
Production Use of systems analysis models in GAP to calculate field and well

GAP User Guide August, 2012


User Guide 50

Allocation production rates for specified reservoir and surface pressures


given the current water cut and GOR.
Production Process of maximising oil/gas production (or revenue) by adjusting
Optimisation wellhead chokes/gaslift injection/ESP frequency/compressor
speed while simultaneously honouring constraints at various points
in the system.
Solve Network The process of calculating the combined production response for
(optimised) the entire production system.This can be coupled with the
optimisation process, allocating the gas lift gas and the power
available to optimise the overall system production or injection.
Tank A reservoir unit.
It can be modelled rigorously with MBAL.
It can also be represented by a table, relating pressure and
cumulative oil production (decline curve option).
VLP Vertical lift performance. Expression relating surface well
pressure and bottom hole pressure.

1990-2012 Petroleum Experts Limited


51 GAP

2.3 Getting Started with GAP


For first time users, this chapter covers the essential features of data management and setting
up the calculation options in GAP. The chapter starts with a description of the user interface
followed by a step-by-step guide to starting a GAP project from scratch.

Menu options will be considered in this chapter, although some will be


discussed in more detail in later chapters when their use will be put in
context of an actual model.

2.3.1 The GAP User Interface


The main screen of GAP has the following structure.

The user interface consists of a framework window that contains several child windows, as well
as the menu and toolbar from which GAP commands are issued. The child windows include the
system windows that contain the system network drawing, and the navigator window that can

GAP User Guide August, 2012


User Guide 52

assist in the viewing of large networks.

The interface consists of four parts, as illustrated in the figure above:

System window the window on which the system network is drawn


Navigator window contains a full schematic which can be used to help navigation about large
systems
Toolbar contains menu accelerators, icons for selecting and manipulating system
equipment, and icons for zooming in or out of the system window
Menu usual menu for issuing commands to GAP

Menu functions are discussed in the following chapter. The other three parts of the interface that
are listed above are described in the sections below.

1990-2012 Petroleum Experts Limited


53 GAP

2.3.1.1 Opening a File


When GAP is opened, if the preferences have not been set up to open the last file accessed,
there will be a blank system view. To open a GAP file at any time during any GAP session,
select File Open. The following screen will be displayed:

This is the standard Windows file browser, which may be familiar from other
Windows applications.
The dialogue box lists the files that match the selection criteria on the left-hand
side.
The files in the default working directory are automatically shown first.

Double-click on the file name required and this will be opened by GAP.

The 'Open as read only' option enables to open a file as a read-only file, which can be consulted
but not modified.

2.3.1.2 Saving a File


When files are opened in GAP, a copy of the selected file is stored in computer memory. Any
changes to the file are made to the copy in memory. In case of a power failure or a computer
hanging up, these changes are completely lost. To maintain the present work, we recommend to
save the data on a regular basis. This simple procedure could potentially prevent hours of work
and analysis being lost.

To save a file, choose either File Save or File Save As from the main GAP menu. The 'Save'
command stores changes made to the current active file, overwriting the previous data. By
default, the Save command saves a file under its original name and to the drive and directory
last selected.

GAP User Guide August, 2012


User Guide 54

1990-2012 Petroleum Experts Limited


55 GAP

2.3.1.3 The System Window


The system window is the main window on which the GAP network is displayed. More than one
system window can be displayed in GAP at one time which means that different views of the
same system can visualised simultaneously. Alternatively this feature allows both the production
and associated injection system to be viewed at the same time.

An empty system view window is shown below:

The system window is used to draw, edit, and view the system. Coloured icons represent the
equipment nodes. The different actions that can be performed on this window are obtained by
clicking the right hand mouse button within the area of the system window. This action will
provide a menu from which the user can carry out actions. Alternatively, the same set of actions
can be performed using the toolbar or the menu, which are described below.

Addition of To add an item to the system, activate the required equipment type from
Network the toolbar or use the right hand mouse button. The cursor appearance on
Equipment the screen will change to indicate that an equipment selection has been
made. Click on the screen at the point where the equipment is to be
inserted. A network node will be created, and a label dialogue will appear

GAP User Guide August, 2012


User Guide 56

prompting the user to name the new equipment.


Zoom In / Out To zoom in or out, first select the appropriate icon from the toolbar or from
the right hand mouse menu described above. To zoom in on an area,
hold the left-hand mouse button while sweeping the cursor over the area
of interest. Alternatively, one may click once at a point in the system and
GAP will zoom in or out from that point using a fixed scaling factor (which
may be adjusted using the Preferences dialogue).

To revert to a full system view at any time, double-click the left-hand


mouse button at any point in the window (except on an equipment node).
The view will rescale to show the whole of the system.
Selection of Items To select an item or items, either choose the "Select" icon from the
toolbar or choose the option from the right hand mouse menu. Click on
the item to select, and a light blue circle will appear around the element.
Alternatively, dragging the left-hand mouse button over an area can make
group selections.
Masking / To mask or unmask an item or items, either select the "Mask" icon from
Unmasking of the toolbar or choose the option from the right hand mouse menu. Click
Items on an item to mask or unmask it. If the equipment is masked, all child
items will also be masked. To mask or unmask a group of nodes use the
left hand mouse button to drag over an area of the system view.

Deletion of itemsSelect the "Delete" icon from the toolbar or from the right hand mouse
menu. Groups of items may be deleted as above.
Right Hand Mouse Utility menus will appear when the right hand mouse button is clicked
Button Actions anywhere in the system view. The normal menu is displayed above, and
appears when the button is clicked over an empty space. If it is clicked
over an equipment node, a shorter menu will appear with a number of
equipment specific functions such as Delete, Mask, or Select.
Panning To move the view around the system, simply click on the main window
and hold the left mouse button down. Shift the cursor and the network will
be moved following the direction of the cursor.
Popup Status As the mouse is moved over equipment nodes, a small window will
Information appear. This contains basic status information for the node in question
and allows the status of a piece of equipment to be checked without
entering the data entry screen. This is an optional feature. To switch this
function off go to the' Preferences' screen and un-tick the Enable Flyover
Status Information.
Changing Icon These functions are also available from the right hand mouse menu as
Sizes / System well as from the main menu under 'Options.' See below for more
Fonts information.
Title Bar This indicates whether a production or injection system is being viewed.
Opening a New It is possible to open a new GAP window specifically focused on one
GAP Window area of the network. To do so, zoom in on the region of interest and press
the Shift key after the zoom region as been specified. Selecting Window |
New Window from the main toolbar will open the new window with this
magnified section of the network.

1990-2012 Petroleum Experts Limited


57 GAP

Windows specific Minimise: Click this button to minimise the window in the GAP
Actions workspace.
Maximise: Click this button to maximise the window to fill the GAP
workspace.

Following this, if GAP is shut down and restarted, it will automatically


bring up the new window in a maximised state.
Close: Click this button to remove the window from the workspace.
Restore: This restore the default system window

2.3.1.4 The Toolbar


The toolbar is located below the main menu at the top of the main window. It consists of a row of
icons (described below) which act as accelerators to common menu functions, or allow the
addition or manipulation of network icons in the system window.

The functions of the various buttons are described below.

File/Interface Functions

Accelerator for File | New. This clears the current system and initialises a new
one. A warning will be displayed if there are any unsaved changes in the old
system.
Accelerator for File | Open. This will prompt for a new file name. If the file can
be opened successfully, the old file will be cleared and the new file opened in a
new window.
Accelerator for File | Save. By default, this will override the currently saved
version of the file. Use File | Save As to save the file to a different location.
Accelerator for Window | New Window. This will open a new full system view of
the current file.

System Functions

Accelerator for Equipment Control / Model Validation screen

Accelerator for Network Solver.

Accelerator to access script

Accelerator for Prediction | Material Balance Forecast. This initialises a

GAP User Guide August, 2012


User Guide 58

material balance or decline curve prediction, depending on the system mode


as set up in the Method screen.

Equipment Set-up
When an equipment button is selected, click once on the system window to create a new node
of the required type at the chosen point. A label dialogue will appear to allow equipment to be
labelled immediately.

Add a separator. This is the final solution node and is located at the "top" of
the system, i.e. furthest from the wells. The separator does not have to be an
actual one. In GAP, separator is a convenient way of describing a point of
known pressure in the network. For injection systems, this button will add an
Injection Manifold.
Add a joint. This represents a network node. A joint is a solution point in the
system.
Add a link. Note that this can become a pipeline, a well-tank connection, or a
pump connection depending on the context of the connection being made.
Add a well. The default well type is an oil producer with no lift (unless in an
injection system). The well type can be changed from the main data entry
screen. When drawing well icons, it is suggested that they are arranged
around the connection point. This simplifies the drawing of the pipeline
connections.
Add a tank. This represents a reservoir source. Tanks are only required when
running predictions.
Add a flare or vent. This element withdraws from the system a fixed rate of
fluid.
Add a pump. A pump is associated with a joint or separator. If associated with
a joint, it is in line with the joint, between the joint and the pipeline connecting
the joint to the next level.
Add a compressor. A compressor is associated with a joint. If associated with
a joint, it is in line with the joint, between the joint and the pipeline connecting
the joint to the next level.
Add a source/sink. A source/since is created and should be described for;
fixed rate, fixed pressure or fixed mass.
Add an inline element. This can be an Inline Gate Valve, an Inline Check Valve,
an Inline Separation, an Inline Choke or an Inline programmable.
Add inflow (represents the IPR), when this option is selected it will contain
similar data as the well except that there is no VLP information. This icon is
used for downhole networks.
Add group, using this option the same constraint can be applied to certain
groups of wells.

1990-2012 Petroleum Experts Limited


59 GAP

Add flowsheet, creates sub-flowsheets that can be attached to the main GAP
flowsheet
Zoom in/out. When "zoom in" is selected, a zoom can be achieved either by
clicking the mouse on the system window which will zoom in a fixed amount
and set the centre of the view to the position clicked. Or, by sweeping an area
with the mouse which GAP will then view. The aspect ratio will be retained
when an area zoom is performed.
Mask/unmask. When either of these are selected, clicking on an equipment
item in the system window will mask or unmask the item as directed. For short-
term removals of equipment, this is to be preferred to deletion, which removes
the equipment permanently. When masking, all child nodes will also be
masked. When unmasking, parent nodes will be unmasked so as to clear a
passage to the top-most node. From GAP version 4.0 onwards, any masked
item will be brought online by 'Schedule' during prediction. To exclude any item
from prediction (irrespective of what is set in the 'Schedule'), use 'Disable/
Enable'.
This Icon will disable completely any item in the production / injection system
during the production forecast or solver network calculations even if the item is
set to run with a certain schedule.
This Icon will enable any element in the production / injection system.
Delete. After this is selected, it is possible to delete a node by clicking on the
item in the system window or delete a whole section of network by dragging a
box around it. The icon automatically becomes unselected following a deletion
to prevent accidental deletion of further nodes.
Move a node. After this is selected, a node may be moved by clicking on the
item in the system window and then, with the mouse button depressed,
dragging the item to the new position.
Select a node. After this is pressed, a node may be selected by clicking on the
item in the system window. A cyan circle around the item indicates the item is
highlighted. One can select any item on the window system for further actions
for example set wells to controllable, move items, delete items etc.
Unselect all items.

Find/locate equipment on the system window. Use this option to locate


equipment on the system window. This may be useful in large systems in which
the icons are close together and whose labels are therefore difficult to read.
Help Index/Accelerator. Use this option to access the online help index.
Undo button. This button will undo the actions taken when building/modifying
the model.

GAP User Guide August, 2012


User Guide 60

2.3.1.5 The Navigator Window


To activate the navigator window select Window | Toggle Navigator Display (see hiding/showing
the navigator described below) from the main menu. This window can be used to aid in
navigation about a large system. It will always consist of a system schematic that is independent
of any zooming on a system window. In addition to the network, it contains a tracking rectangle
that encloses the portion of the system currently under view in the system window. Other
functions are also available as described below.

Tracking This has two functions. If the focus is currently on a system window, this
Rectangle rectangle surrounds the area of the system that view is displaying.
Alternatively, the rectangle may be used to create new views of the system if the
navigator window is currently in focus. When the mouse is moved over the
rectangle, the cursor changes to allow to stretch or resize the rectangle. In this
way the window may be moved over an area of the system of interest. Double-
clicking the left hand mouse button in the area will create a new system view
displaying the area that has been selected. This is resized to preserve a
sensible aspect ratio
Hiding/ The navigator may be removed from the workspace by clicking on the cross
Showing the button at the top right hand corner of the window. Alternatively, the Window

1990-2012 Petroleum Experts Limited


61 GAP

Navigator menu item of the main menu contains a function to do this. Once removed, the
navigator will not appear in subsequent GAP sessions until reopened. This can
be done by clicking on Window | Toggle Navigator Display as below

Right Hand Clicking the right hand mouse button within the navigator window will produce a
Mouse Button utility menu. This contains the following functions
Menu
Navigator on By default, the navigator is always on top of all system views. This can be
Top changed by selecting this item from the menu
Hide Window A different way of hiding the navigator
New Window A different way of producing a new view (see above)
Icon Sizes Invokes the 'Icon Sizes' dialogue (see below)
File Options In this section, the user defines certain parameters which control the normal
Windows functionality of the program as well as preferences

GAP User Guide August, 2012


User Guide 62

2.3.1.6 Drawing the System


The following section describes the procedures required to define a system network topology.
This is done by manipulating graphical icons to draw a system schematic diagram. Once the
basics of drawing a system is understood, building a GAP network model will take very little
time. The GAP system network is based on a series of elements accessible from the program
Toolbar.

The Tool Bar


The GAP tool bar contains a button for each element that can be added to a system network. An
element can be placed anywhere on the screen, and its position on the screen does not affect
the program calculations. To select an element, press the appropriate button to activate the
object. To draw the element, position the mouse pointer anywhere on the system view and click.
A "Label" dialogue box appears to name or identify the icon. Data for each element can be
entered as the system is built, or once the entire system is completed.

When the data is entered while building the system, double-click the appropriate icon to access
the main data entry screen.

The following tool buttons are used to draw a system:

Separator Adds a production separator element. This is a point in the system whose
pressure is known and fixed.
This is the final solution node and is located at the "top" of the system i.e.
furthest from the wells. GAP will optimise the entire system connected to all
separators.
Joint Adds a manifold joint or connecting point in the system. A joint is a solution
point in the system.
Add Link/Pipe Creates a pipeline between two joints or links between separators and joints,
wells and joints, tanks and joints and separators and pumps/compressors.
Short flowlines are best modeled as part of the well rather than as a pipeline.
The type of link produced is decided from the context of the link.
To link two items, activate the link icon. Click on the first item in the system
view, and drag the mouse to the second item with the left mouse button
pressed. When the button is released a link will be produced if the context is
valid
Well Adds a well in the system network. When drawing well icons, it is suggested
they be arranged around the connection point. This simplifies the drawing of
pipeline connections
Tank Adds a tank in the system network. These may be modeled separately using
the MBAL software which can be supplied by Petroleum Experts.
Flares and Adds a sink at constant rate, mass or pressure and the amount of fluid
Vents collected by them is accounted for in the emissions results
Pump Adds a pump in the system network
Compressor Adds a compressor in the system network
Source/Sink Adds a source or a sink that injects/withdraws fluid at fixed mass, rate or
pressure.

1990-2012 Petroleum Experts Limited


63 GAP

Inline Adds a choke, inline separator, valve or virtually any piece of equipment that
elements can be described by a script
Inflow Adds an inflow element (IPR), which can be used to model complex well
geometries by decomposing the well into inflows and outflow
Group Adds a group element, which is used to report or impose constraints to groups
of elements in the GAP network (for example, clusters of wells can be grouped
together)
Flowsheet Allows to place whole sub-sections of the main model into different flowsheets.
Particularly useful in the case of big models, where the flowsheets allow to
simplify the model view

Drawing elements
The first thing to consider before drawing a system is its layout. For instance, the number of
elements to include can determine how to design the structure. A brief outline or sketch of the
network may help in deciding how to plan the model.

Since the key solution point in the network is the separator, one way to proceed is starting at the
top with the separator(s) and working down through the manifold joints (incoming connection
pipes) to the wells.

1. To draw an element on the screen, the appropriate object on the tool bar must be
selected. Positioning the pointer on the screen and clicking the Left mouse button will
place the element on the desired position. When drawing a system from scratch, it is
suggested to start at the top and centre of the screen and work down and outwards.

2. When the element is placed on the screen, a dialogue box will automatically appear
where the label of the element can be entered. Labeling is optional (unless the model is
being used in IFM where it is essential), however typing in a short name or abbreviation to
identify the element icon is suggested. Click the | OK button or press Enter to return the
screen display.

3. Select the next element to draw by clicking the relevant button on the tool bar. Position
the pointer on the screen where you want to place the element and click. A dialogue box
will appear prompting to label the element again. Follow these steps for each required
element

4. It is recommended to build a system gradually until a grouping of elements provides the


basic framework. To begin, it is not necessary to have a definite layout in mind as the
program easily allows modifying or adding additional elements to the system.

5. When all the elements have been set on the screen, select the Add Link/Pipe tool and
connect the elements by clicking and dragging with the left mouse button. The links should
be created in the direction of flow (i.e. from the upstream elements such as the reservoirs
to the downstream elements which would be the wells in a production system).

New elements to the network can be added until the system reflects the actual conditions or the
structure suits the particular requirements of the project.

GAP User Guide August, 2012


User Guide 64

Entering data
Once the icons had been placed and labeled, the data for each item needs to be entered. The
properties of an item can be entered as they are added to the system, or later when the
complete network model has been graphically laid out. To enter data, double-click on the
corresponding icon that is to be updated. The main data entry screen for the element will
appear. From this screen, other elements in the system for data entry can be selected.

Duplicating items
GAP includes a utility that enables elements to be copied. This facility is useful for adding many
elements with similar properties (e.g. wells), as it can save time entering data when editing the
item(s). When copying an icon, the program makes an exact duplicate of the item, which
includes the PROSPER file name, data and icon label. There are two approaches for duplicating
icons:
1. Hold the cursor over the element to be copied, right click the mouse and select "Copy" from
the menu. Place the cursor at the location where the new element is to be created and then right
click again and select "Paste"
2. First draw or add a new element icon. To copy, hold down the "Ctrl" key, while clicking and
dragging the original icon into the new unnamed icon.

Data from one element type cannot be copied into an element of another type. For example, the
data of a Separator icon cannot be copied into a Joints icon.

For more information on the user interface and its use, see The GAP user Interface.

1990-2012 Petroleum Experts Limited


65 GAP

2.3.1.7 The Preferences Dialog


The preferences dialogue allows a set of user-interface variables to be customised for
subsequent GAP sessions. Some of these options are self-explanatory so a limited description
is given below.

GAP User Guide August, 2012


User Guide 66

Enable Flyover If this is checked then it will be possible to see a status box appear as the
Status Information mouse pointer goes over the equipment icons
Auto-repeat delay When panning, one may hold the left-hand mouse button down to auto-
when panning repeat the action. The value given in this field represents the time (in ms)
before the auto-repeat action starts from when clicking the mouse button
Zoom/UnZoom A single click in a system window while the zoom or un-zoom icons are
factor active results in a fixed scaling to be applied to the view, while the centre
of the view is changed to the position in which the mouse was clicked. The
value entered in this field is the fixed scaling factor, and as such should be
greater than zero
Open server When GAP is run using the open server functionality, there is the option of
Monitoring displaying the results of all the open server commands in the OpenServer
Window Monitor Window. The option allows this window to be shown / hidden
Background The bitmap that is displayed on the background of the main window may
be changed. Select the required bitmap by pressing the browse button to
the right of the field. The bitmap will be loaded when GAP is restarted
Recent file list This is the number of files that are retained at the bottom of the File menu
length
Reload last project Check this to load the last file that was worked on when GAP is started
at start-up
Display Alter If checked, GAP will check all file paths once a file is opened and will allow
Project Paths the user to correct these if needed
prompt at load
time
License Handling With the PROSPER on line options added to GAP for Version 5.0 or
VERY later, licenses of PROSPER and/or MBAL may be used by GAP depending
IMPORTANT on the options chosen when building a model. It is recommended to keep
these options to the default. Please consult with the person in the
organisation responsible for license handling before changing any
of these options
Default Input (and This option allows the user to set the default unit systems for GAP model.
Output) Unit This unit system will be used whenever a new GAP model is built
System
Always Use Ticking this box will force the unit system to be the same as the default
Default Unit one. If a GAP model contains different units to the default, when opening
System the file, GAP will change the units to default

1990-2012 Petroleum Experts Limited


67 GAP

2.3.1.8 Defining User Correlations


GAP has the facility to use externally programmed pipeline flow correlations. Before they can be
accessed, they must first be linked into GAP. To use external correlations, click File User
Correlations | Flow Correlation. The following screen will be presented:

Click 'Add' and select the required .COR correlation file from the browser. The Info button can be
used to examine details of the selected correlation. Click | OK to return to GAP. The external
correlation will now be available for calculating pipeline/tubing pressure drops.

Please contact Petroleum Experts to obtain more details about the multiphase DLL
format required to create the *.COR files.

The "Remove" button removes the selected correlation from GAP. It is not possible to remove
the GAP internal correlations.

2.3.1.9 Edit Ini File


The 'Ini' file is a text file in which all the preferences for GAP are stored. Some of these are the
directory preferences, colours, tolerances etc.

It is recommended not to modify this file manually, as it is automatically updated based


on the selections made from the relevant windows in GAP.

GAP User Guide August, 2012


User Guide 68

2.3.1.10 Defining the Working Directory


In this option the location of the working directories can be defined:

Whenever a file is open, closed or created, the program automatically selects the files or
saves to the data directory defined in these menus.
It is recommended to keep data files separate from other program files in a related sub-
directory (e.g.: C:\PROJECT\GAPDATA).

MBAL executable location needs to be defined to be able to launch MBAL via the Tank
Summary Screen

1990-2012 Petroleum Experts Limited


69 GAP

PROSPER executable location needs to be defined to be able to launch PROSPER via the
Well Summary Screen

GAP User Guide August, 2012


User Guide 70

Application startup timeout time can be entered, after which the program will flag that the
MBAL and PROSPER licenses cannot be found.
2.3.1.11 Printing from GAP

Printer Set Up This will prompt the standard Windows Printer Set-Up screen. Use this to
select the preferred printing device
Printing the To print out a current network drawing, select 'Print' from under the File menu.
Network It is possible to print to a hardcopy device, to the clipboard, or to a windows
Drawing metafile (.WMF). There are options to print in colour, monochrome, or
greyscale.

The current menu options are:

Hard Copy ( the currently selected printer/plotter).


Clipboard for subsequent pasting into a word processor or painting
package (press <shift> <insert> to paste the picture).
Windows MetaFile for subsequent use in a drawing package

1990-2012 Petroleum Experts Limited


71 GAP

For each option the colour choices are


monochrome
grey scale
colour

2.3.1.12 Exiting GAP


To exit from GAP, the File | Exit command can be selected. If the file has not already been
saved, the program will prompt a screen allowing the user to save the current file.

GAP User Guide August, 2012


User Guide 72

2.3.2 Project Archiving


When storing or sending GAP files, this option offers the capability of creating an Archive of the
whole project. It is in a sense a ZIP file which includes all the associated files required to run the
model.

2.3.2.1 Archive Creation


To create an 'Archive', the File | Archive | Create option needs to be selected.

The user will be asked to select a file name for the archive from a file browser (the default
extension for GAP archives is .GAR).

Once the file name has been entered and saved, the user will be presented with a Project
Creation screen with the following options:

1990-2012 Petroleum Experts Limited


73 GAP

There is an example 728 provided in the manuals that demonstrates the application of this
feature.

Main features
The screen contains the following features:

Project This is a hierarchical listing of all the files in the project, also seen in the Edit
Project menu option. Select the files to be archived from the list (by default, all
valid file paths are highlighted). To select all files, click on the "All" button. It is
possible to double-click on an item in the project list or the baggage list (below)
to obtain the basic properties of the file in question.
Baggage It is possible to add other files that are not directly associated with the project
to the archive (for example, Excel spreadsheets or Word documents).
To add a file to the archive baggage, type in the file path in the Baggage File

GAP User Guide August, 2012


User Guide 74

field below the Baggage listing (or browse to it using the file browser provided),
and press the 'Add' button. The file will then appear in the list box. Duplicate file
names are added to the archive only once.
Project This field can be used to enter comments describing the project. This will
Comment appear whenever one wants to extract the files from the archive, and can help
recall the contents of a particular archive. Select the Write button to create
the .GAR file.
Add Assoc This adds associated files to the baggage list. For example, if one clicks on a .
vlp file in the project list and then click on Add Assoc, GAP will look in the
same directory as the .vlp file and, if they are present, also add the .tpd and/or .
mbv files to the baggage list. Multiple selections in the project list are possible.
The following gives the associated file types for project file types:

Well model files (.out, .sin, .anl)


Lift curves (.vlp, .tpd, .mbv lift curve import formats)
Tank model files (.mbi.mbr (results file))

Action Buttons

All/None Selects all/no valid files in the project listing


Add Adds a file to the baggage list
Remove Deletes the currently highlighted file(s) in the baggage list from the project archive
Write Creates the archive

1990-2012 Petroleum Experts Limited


75 GAP

2.3.2.2 Archive Extraction


To extract the files from an existing archive (*.GAR file), the File | Archive | Extract option needs
to be selected from the main menu.

The file can be browsed for and then selected.

Once the file has been selected GAP will enter the archive extraction screen as follows:

GAP User Guide August, 2012


User Guide 76

Main features
The screen contains the following features:

Project This is a listing of all the files that comprise the original GAP project. All files are
Listing selected by default.
Those files that were originally in the project but the archiver chose not to include in
the archive are displayed in light grey. It is possible to double-click on a file to
obtain its basic properties. Select from the list those files that are to be extracted.
All files are selected by default
Baggage This lists the baggage files that the user chose to add when the archive was
Listing created. As with the project listing, the user may double-click on an item to view its
properties. Select the files to be extracted. All files are highlighted by default. To
select all of the files, click on All Baggage

1990-2012 Petroleum Experts Limited


77 GAP

Extract Browse to the directory to which one would like to extract the archive files. If the user
wants to keep the original directory structure of the archive within the extraction
directory, click on Retain Directory Structure and new directories will be created if
necessary
Comment This displays the comment that was supplied with the original archive

Action Buttons

All Project Selects all files in the project listing


All Selects all files in the baggage listing
Baggage
Extract Extracts archive files to the directory supplied

GAP User Guide August, 2012


User Guide 78

2.3.3 The Options Menu


The following sections describe the menu options found under the 'Options' item of the main
menu.

2.3.3.1 Method
This section is where the overall system parameters are set up, including the type of system
(production or injection), the prediction mode, and various options on the optimisation process.

1990-2012 Petroleum Experts Limited


79 GAP

SYSTEM TYPE:

This section defines the type of network that can be modeled in GAP.

Production Production systems can contain oil (e.g. naturally flowing or artificially lifted
wells), gas or condensate wells which produce fluids to the separator.
Water This allows the engineer to model the water injection distribution network which
Injection can be coupled to the main production network model and then optimised
simultaneously. The water injection manifold takes the place of the production
separator at the top level of the system.
Gas This allows the engineer to model the gas distribution network which can be
Injection coupled to the main production network model and then optimised
simultaneously. The gas injection manifold takes the place of the production
separator at the top level of the system.
Gas Lift This allows the engineer to model the gas lift injection distribution network which
Injection can be coupled to the main production network model and optimised

GAP User Guide August, 2012


User Guide 80

simultaneously.

OPTIMISATION METHOD:

This section defines the objective function used by GAP to optimise the system.

Production This option optimises the production rate of the primary fluid (in an oil system
this is the oil for example) and penalises on the water production. GAP will
calculate the maximum rate of the primary fluid that can be achieved while
honouring any constraints in the system.
Revenue This option optimises on the revenue generated by sales of oil and gas
produced after taking into account specified costs. If this option is selected,
then prices need to be defined for each fluid in the system (see below).

Revenue from oil sales


Revenue from gas sales
Cost of water processing
Cost of injection gas
Cost of power
Cost of steam

Up to 32 different Tax Regimes can be set in one system and the currency can
be defined by selecting "Currency Setup". Different Tax Regimes can be
associated to different wells in the system.

1990-2012 Petroleum Experts Limited


81 GAP

The default Tax Regime is selected in Options | Default Settings.


Oil rate only / These methods are used when the objective is to maximise the Oil rate or the
Water rate Water rate only.
only
Gas + Oil rateThis method allows the user to maximise, at the same time, oil and gas
rate only production rates and honour constraints in the system.
Gross This option maximises the gross heating value produced by the field. This
Heating option is mainly used in the case of gas fields where one would like to
Value maximise the heating value of the delivered gas.
If the GAP model contains various streams of gas that will contain different
compositions and hence gravities, the optimizer will control the system in
order to provide at the delivery point a blend of gas that can have the highest
possible heating value. In black oil mode, the program will use a correlation to
associate the heating value to the gravity of the gas (Figure 4.82 in the
Handbook of Natural Gas Engineering published by McGraw-Hill).
Gas Rate This method allows the user to maximise, at the same time, oil and gas
with production rates and honour constraints in the system. This objective function
Preference to has a weighting on the oil content and can be particularly useful for optimising
Oil Content condensate systems.
NEW!!!
For example, a condensate system with large flowlines can have significant
pressure drops with increasing oil rate. This can impede gas production to
the extent that we may not satisfy our gas contracts. The "Gas Rate with
Preference to Oil Content" will ensure that we meet our gas contract and will
then try to maximise the oil rates in the system by finding the optimum fluid
fractions that minimise the production losses in the flowlines which may not be
captured by the option "Gas + Oil rate only" which has no weighting factor
assigned to a particular phase.

PREDICTION

This option needs to be on ON so that GAP can allow the user to carry out a prediction.

PVT MODEL

This option allows the user to define which PVT model in the system.

Four options are available:

Black oil Black oil model is used for all of the calculations.
Tracking This method is based on a combination of the black oil model and fully
compositional model (equation of state or EOS).

Black oil model is used for the main pressure drop calculations
The EOS is then used as a post calculation to determine the composition in

GAP User Guide August, 2012


User Guide 82

any part of the system by performing compositional blends and flashes


based on the rates determined from the Black oil calculations.

If a black oil reservoir simulation is used, the compositional tracking provides


the engineer with the capability of recombining the initial composition in order
to match the GOR of the fluid produced. This functionality is also available with
the following PVT methods.
Fully This method allows the user to run all the calculations using an equation of
Compositional state, which gives the compositions as well as the fluid PVT properties at any
point in the network.
Black Oil To speed-up calculations, the Black Oil Lumping/Delumping method tracks the
Compositional composition of the fluids throughout the network at each iteration of the solver
Lumping/ but performs pipeline, compressor, pump and choke calculations using the
Delumping Black Oil correlations which use the BO properties calculated from the tracked
composition. This option makes sure that the black oil model is at any point in
time consistent with the EOS.
This option can also be used with the Lumping/Delumping technique which
empowers the user with the possibility to run calculations using an extended
composition, or using an equivalent composition with fewer components
(lumped).

Black Oil Lumping/Delumping may use the full or the lumped compositions like
the "Fully Compositional" option.

Details about the PVT model options can be found further in the manual ( click here 150 to
view).

The EOS as models are not predictive, unless matched to measured lab data. Care
has to be taken in order to make sure that the EOS has been matched and is
applicable for the range of Pressures and Temperatures to be investigated.

Black Oil Compositional Lumping/Delumping is the recommended option whenever


one wants to speed up the calculations however the same care should be taken to
ensure the EOS being used is applicable.

Prediction Method

This option defines whether temperature calculations in pipelines are performed or not

Pressure Only Temperature changes along the flow lines are not calculated but instead
entered by the user
Pressure and GAP calculates both the pressure and temperature losses along the flow
Temperature lines, using either a simple temperature model or the more advanced
Enthalpy Balance option available through PROSPER on Line.

1990-2012 Petroleum Experts Limited


83 GAP

Wax or Hydrate Warning

This option can be used to predict the presence of Wax or Hydrates at any point in the system.
The Wax or Hydrate Warning is only available when the compositional details of the fluid are
available i.e. when the Compositional Model is set to "Tracking" or "Fully Compositional". If this
option is on and GAP encounters a wax or hydrate risk in the model then it will raise a flag in the
"Status" column of the pipeline results.

WATER VAPOUR

This option allows the user to enable/disable the calculation of condensed water vapour in
pipelines.

No Condensed/Vapourised water is not accounted for in the pipelines.


Calculations
Calculate This option allows the user to account for vaporization/condensation of water
Condensed with changing pressure and temperature conditions along the pipelines. This
Water Vapour option is required for steam calculations and if the user wishes to account for
condensed water in natural gas.

TEMPERATURE MODEL:

In previous versions of GAP, rigorous temperature modeling with the "Enthalpy Balance" or
"Improved Approximation" models could only be achieved by modeling the pipelines with the
PROSPER on line option.

Advanced temperature modelling can now be enabled and used along with the default pipeline
modeling option GAP Internal Correlations.

Rough This is a heat balance model that calculates the heat loss from the well to the
Approximation surroundings based on an overall heat transfer coefficient, the temperature
difference between the fluids and the surroundings and the average heat
capacity of the well fluids.
The Rough Approximation temperature model requires calibration using
measured temperature data. It is not accurate in a predictive mode.
Improved This is a rigorous thermodynamic model that is based on a full enthalpy
Approximation balance model considering all the components of energy (enthalpy, potential
energy, kinetic energy and heat transfer between fluid and surroundings).
The term of the enthalpy balance concerning the heat exchange with the
surroundings is simplified by a heat loss term characterised by an overall heat
exchange coefficient. For this reason data related to the completion hardware
is not necessary.
As in the enthalpy balance model the Joule-Thomson Effect is also accounted
for. These characteristics make this model particularly useful when an

GAP User Guide August, 2012


User Guide 84

accurate calculation of temperature is sought after and only limited data about
the completion is available.
The Improved Approximation temperature model also requires calibration
using measured temperature data.

NOTE on CO2 injection models


When modelling pipelines carrying CO2 for injection purpose, it is important to use the
appropriate options
PVT method should be Equation of State using "Fully Compositional"
Temperature model should be "Improved Approximation"

CALCULATE WELL CHOKE DELTA_T

A choke can be placed on the well directly, rather than to explicitly define a choke in the system.
By having this option set to YES, GAP will calculate the temperature drop in the fluid as it flows
through that choke using an isenthalpic flash. If set to NO, temperature drop is not accounted for.

BACKGROUND BITMAP

The user has the option of adding a picture in the background of the GAP model. This could be a
map of the area or an aerial photograph so that the position of the icons on the screen coincides
with their real geographical locations. Simply select the path pointing to a *.bmp file and this will
appear in the main screen as soon as "OK" is selected.

ASSOCIATED INJECTION MODELS

If along with the production network system there are associated gas injection and/or water
injection and/or gas lift injection networks it is possible to link them to the main production model
though this option and solve the combined systems simultaneously.

The associated injection model(s) for the field can be specified here. Select the check box to
indicate that an associated injection model exists and then specify the model file using the
button.

If no associated injection model exists, GAP will still calculate the injection volumes necessary
for the desired injection policy, but will simply assume that these volumes can be injected (not
taking into account how they will be injected).

1990-2012 Petroleum Experts Limited


85 GAP

2.3.3.2 Edit Injection Fluids


In a system with Gas-lifted wells, Gas Injectors, Water injectors or sources then the properties of
the injection fluids need to be defined.

The list of injection fluids can be edited from the Options | Injection Fluids screen shown below:

For each source:


Enter a unique label.
The source type (gas, water, oil and steam)
The source type can be steam, in which case the default quality needs to be entered in
this table. The quality is recalculated wherever steam is present in the system to make
sure it is consistent with the steam thermodynamics. GAP uses the 'Steam Calculation
Module' from PVTP which is based on published steam tables.
The source PVT properties
Gas gravity and the impurity levels (in terms of mole percentage for the gas).
Water salinity for water sources.
GOR, API, gas gravity, water salinity and water cut for oil sources
If GAP is run using the compositional options, the composition for each source needs to
be defined by clicking on the 'Edit' button (the Edit button will only be visible if the
compositional option is selected).

When a new file is created, the list will contain two default fluids
Gas source Gas01.

GAP User Guide August, 2012


User Guide 86

Water source Water01

Note about Gas Lifted Wells

When gas lifted wells are created, they will (by default) be assumed to be using gas
from the first source (Gas01) in the list.
The user can change the gas associated with gas lifted wells to another gas source in
the list (explained in Gas Lift Control topic 233 ).
When a GAP Generate | VLP is performed, the values of the lift gas properties used by
PROSPER to generate the lift curves for each well will be taken from the properties of the
gas source associated with the well in GAP.
The gas lift source data in GAP takes precedence over the current value gas lift gas
properties in the PROSPER file.
The original PROSPER files are changed by GAP, when generating VLP data and the
gas lift properties section of PROSPER is updated.

1990-2012 Petroleum Experts Limited


87 GAP

2.3.3.3 Edit Tax Regimes


When the optimisation method is set to Revenue, the user can define different tax regimes so
that the value of different fluids in the system can differ.

Each well in the system can then be assigned either the same or different tax regimes, thus
letting the program know the value of oil coming out of one well as opposed to oil coming from
another. The optimiser will then calculate the maximum amount of revenue that can be achieved
by the system.

The 'Gas Sales Revenue per BTU' switch at the bottom of the screen enables the user to choose
the units in which the gas sales price is described.

GAP User Guide August, 2012


User Guide 88

2.3.3.4 Edit Emulsion Models


Allows the user to setup and match, to measured data, different emulsion models to be used to
model emulsion behaviour in the GAP network.

GAP can model the effect of Oil/Water emulsions on mixture viscosity.

The behaviour of emulsions in producing equipment is not well understood. Emulsion


PVT in GAP provides a means to assess possible effects of increased emulsion
viscosity by curve fitting experimentally determined data. It must be emphasised that
the method is empirical and does not represent any rigorous model of emulsion
behaviour.

In the laboratory, stable emulsions can be prepared from many crude oil / water systems. Field
experience shows that the effect of emulsions is usually less than predicted by laboratory tests.
Emulsion PVT should be used with caution and only when it is certain that emulsions are
present and it is necessary to evaluate their effect on calculated pressures.

Emulsion viscosity will replace the mixture viscosity for selected elements of the production
system. Experimental or empirical emulsion viscosity data can be entered and curve-fitted
using a non-linear regression. The fitted curve is used to optionally replace the oil/water mixture
viscosity in pressure drop and pump calculations. When selected, emulsion viscosity for the
user-entered value of water cut will be substituted for the fluid mixture viscosity.

Emulsion viscosity is modelled as a function of water cut in 3 stages:

1. Sharp increase at low water cut.


2. Plateau with a constant maximum viscosity for intermediate water cuts.
3. Tail that declines to the viscosity of water after the plateau.

The parameters Left and Right Water Cut for Maximum Viscosity define the maximum plateau
region. To calculate emulsion viscosity:
- Enter the water cut and emulsion viscosity data points in the Emulsion Data table.
- Click the Match button.

1990-2012 Petroleum Experts Limited


89 GAP

When the regression has stopped, click Plot to display the matched mixture viscosity.

GAP User Guide August, 2012


User Guide 90

The regression algorithm will find the Parameter 2 and 3 that minimises the internal error
function. Parameters 4 and 5 can then be adjusted manually to fit the remaining the lab point if
necessary.

1990-2012 Petroleum Experts Limited


91 GAP

2.3.3.5 Edit Default Settings


Allows the user to set the default settings for:

Injection Fluids
Emulsion Model
Tax Regimes
PVT correlations for pipeline calculations
Volume Correction Factors
Pipe Lines

These can be also changed in each element in the model, allowing the user to use
different selections (for example, PVT correlations) in different areas of the system to
reflect the actual situation in the field.

GAP User Guide August, 2012


User Guide 92

Injection This is the default choice for the water injection and gas injection. The Edit
Fluids Injection Fluid 85 List allows the user to modify the list of fluids used in the
model.
Emulsion This is the default choice for the emulsion model. The Edit Emulsions 88 option
Model allows the user to modify the list of emulsion models used in the model.

1990-2012 Petroleum Experts Limited


93 GAP

Tax Regimes This is the default choice for the Tax Regimes. The Edit Tax Regimes 87
option allows the user to modify the list of tax regimes that can be used in the
various wells in the system.
Default PVT This is the default choice for the Oil Pb, Rs, Bo correlation, the oil viscosity and
Correlation the gas viscosity correlations.
Volume When GAP is reporting production rates it calculates Bo and Bg using its own
Correction PVT calculator and a virtual process occurring at the separator. When
Factors interfacing GAP with a process simulator one may wish to apply a correction to
the Bo and Bg calculated by GAP to match that calculated by the simulator,
which may be using an equation of state rather than a black oil model.
In the fields provided in this screen, one can enter the correction factors to Bo
and Bg. Note that these are corrections to the volume ratios, and not the volume
ratios themselves. GAP will perform the calculations based on the new values
of Bo and Bg.
Pipe Line This field represents the defaults used when creating a new pipe
Default pipe This is the default roughness that will appear as soon as a
roughness pipeline element is created. As mentioned above, if
required, each pipeline segment can have its own
roughness value to represent the actual field configuration
Gas/Liquid This cut-off parameter specifies the GOR at which the fluid
pipe GOR definition will switch from a liquid to a gas. This triggers the
Cutoff condensate to be treated as an equivalent gas in the
pipelines as opposed to a liquid. It is recommended to
keep this value at default. One can also select the
correlation for viscosity based on the one that matches the
fluid in the system
Water vapour This parameter specifies the value of the GOR above which
GOR Cutoff the water vapour calculations are performed.
Below the cutoff water is considered to be in liquid phase,
whilst above the cutoff presence of vaporised water is
accounted for.
This option is enabled when the water vapour calculations
are enabled in the main program Options 83

GAP User Guide August, 2012


User Guide 94

2.3.3.6 Edit System Summary


This option is used to enter the GAP title and some comments. The 'Title' and comments can be
displayed on the GAP network by selecting "Draw Network Title" and "Draw Network
Comments" from the View Menu.

The Title and Comments can be moved all over the network window by simply
dragging them while holding down the "Shift" key.

1990-2012 Petroleum Experts Limited


95 GAP

2.3.3.7 View System Statistics


This option allows the user visualise a summary of the GAP model providing information such as
the total number of wells, reservoirs, elements etc.

GAP User Guide August, 2012


User Guide 96

2.3.3.8 Disable Options


These options switch on/off the network data and interface validation.

Disable When selecting this option, the 'Automatic Masking' is disabled. This means
Automatic that if a well is disabled/masked, the pipe downstream the well will not be
Masking greyed out, but will appear on the screen in full colour.
Disable System Before accessing any calculation area, the program validates if there are
Validation missing/invalid items in the network and will activate a flag highlighting the
invalid item. This option disables that validation flag.
Disable Label The program sets a flag on any item that has an invalid label (for example, two
Validation wells with the same name). This option disables that validation flag.
Disable This option (when enabled) allows identifying any inconsistency between the
PROSPER/GAP GAP well model type [Oil producer (ESP lifted) for instance] and the well
Well Type definition of the PROSPER file associated. In the case of an inconsistency, the
Validation well becomes "invalid".

It is recommended to leave these as the default options.

1990-2012 Petroleum Experts Limited


97 GAP

2.3.4 The View Menu


The options under the view menu govern the appearance of the network drawing and activate
some validation checks on the equipment in the system. These can be activated or de-activated
as described below:

These options allow the user to view connection lines, masked items, equipment labels, the
grid, etc.

One important point the users are urged to consider is to leave the system validation
options switched on at all times as these will highlight areas at which the model can be
improved or corrected.

The View menu is divided in these fields:

GAP User Guide August, 2012


User Guide 98

Draw Options 98
Highlight Options 98
Window Aspect and Drawing Options
Network Drawing Position 109
2.3.4.1 Draw Options
A series of different options are available to modify the view of the GAP network model. Theses
options allow the user to toggle on/off the visualisation of solid and dotted line connections, tank-
tank connections, IPR icons, labels, grids etc. and are fairly self explanatory.

2.3.4.2 Highlight Options


These options enable/disable the visualisation of specific flags that are usually displayed by the
program in the main screen as result of a check of the model status or as a result of a Solve
Network calculation.

The options available are associated with the following issues:

Invalid items (usually highlighted by a thick red circle)


Bottle necked pipes (highlighted by a purple colour)
TVD differences (see below 98 )
Solver pressure and mass imbalances (see below 102 )
Limiting and violated constraints (see below 103 ).
2.3.4.2.1 Highlight TVD Differences
This option is used to highlight any inconsistence in the pipelines' TVD description. An orange
circle is displayed around the node where a TVD inconsistency arises.

For instance, considering the system below, one can see a TVD inconsistency highlighted on
the node "Riserbase":

1990-2012 Petroleum Experts Limited


99 GAP

Upon inspection of the pipeline description the TVD of the most downstream point of the
pipeline situated upstream of the node "Riserbase" is 0m. Where as the TVD of the most
upstream point of the pipeline situated downstream of the node "Riserbase" is 100m.

GAP User Guide August, 2012


User Guide 100

1990-2012 Petroleum Experts Limited


101 GAP

The location of this node within both pipeline descriptions should be the same and those
discrepancies will lead to erroneous pressure drop calculations across the pipelines.

GAP User Guide August, 2012


User Guide 102

2.3.4.2.2 Highlight Solver Pressure/Mass Imbalances


This option is used to highlight if the solver has converged at every node in the system. Each
node in the network must satisfy pressure and mass balance in order to ensure that the solution
is valid. The GAP solver 19 iterates to converge on a solution, and if convergence has not been
achieved then a dark blue circle will appear around any element that has pressure/mass
imbalances.

Imbalances are typically related to the quality of the input in each element that makes up the
system (i.e. VLP's, pipeline descriptions etc.) and these would need to be reviewed whenever
imbalances occur.

1990-2012 Petroleum Experts Limited


103 GAP

2.3.4.2.3 Highlight Violated and Limiting Constraints


The option to 'Highlight Violated/Limiting constraints' allows the user to visualise directly from the
network whether or not a constraint is violated or if the constraint is limiting the production of a
particular element:

Violated
constraint

This flag indicates that at the end of the Solve Network calculation the constraints
could not be honoured. When that happens, it is recommended to review both the
model and the constraints themselves. In this case there is an inconsistency in the
system that causes the constraints to not be achievable (an infeasible or
impossible problem is created).
Limiting
constraints

This flag indicates that the piece of equipment (in the case above, a separator) is
limiting the production. In other words, the element could produce more, but
constraints imposed on the equipment limit the production.

These flags can be displayed on any type of equipment where constraints have been set up.

GAP User Guide August, 2012


User Guide 104

2.3.4.3 Window Aspect and Drawing Options


These options allow the User to modify aspects of the program window and of the network
model drawing (in terms of colours, fonts icon sizes, etc.).

2.3.4.3.1 Select Info Displayed


Use this option to select what information to display on the main GAP network with each icon.

The section is divided in two main fields:

Icon Label This is the information that appears in the main screen along with each element.
The default setting is each icon's "label only". Select "Liquid Rate" for instance to
display the liquid rate results of the last network solver, along with each icon.
Icon This is the information that is displayed in the small "fly-over" window that is
Tooltip activated when passing the mouse through each element

1990-2012 Petroleum Experts Limited


105 GAP

2.3.4.3.2 Select Default Icon Label Position


This option defines the position of each icon label with respect to the icon itself.

Click on the desired label position and then | OK to change the label position.
2.3.4.3.3 Colours
From the View | Colours menu item the user may change the colours of the system drawing and
the GAP windows.

GAP User Guide August, 2012


User Guide 106

To change the customised colour use the Red/Green/Blue scrollbars on the right hand side of
the dialogue. Each colour can be varied from a value of 0 (off) to 255 (full on). The "Sample"
field of the dialogue provides the colour that is obtained by mixing the primary colours in the ratio
given.

There is also a choice of colour schemes, gained by toggling the radio boxes at the top of the
dialogue.

Colour allows full selection of any of the (255 x 255 x 255) colours
Grey scale forces the Red/Green/Blue values to be equal, so that only 255 shades of grey
are available
Monochrome forces the Red/Green/Blue values to be either on or off, giving a choice of two
colours (black or white)

Select the plot component from the list on the left-hand side of the form that is to be changed.
Select an appropriate colour using the colour-mixing palette on the right. Once the colour has

1990-2012 Petroleum Experts Limited


107 GAP

been chosen, save the current set of colours for future GAP sessions by clicking Save as user
default.

2.3.4.3.4 Icon Sizes


The sizes of the icons used to represent the equipment in GAP can be modified. Select View |
Icon Sizes from the main menu, or right-click on the main canvas and search for the same
option. The following dialogue will appear.

The dialogue consists of a slider with a data entry field, which contains the current icon size (this
defaults to 60 out of an arbitrary 0 100 range for a new file). Change the icon size by adjusting
the slider or entering a new size in the entry field. Check the "Automatic Update" box to update
the system window as the slider is moved.
2.3.4.3.5 Fonts
The fonts used in the network drawing can be modified. Select View | Fonts from the main
menu, or right-click on the main canvas and search for the same option. This will bring up a font
selection dialogue. Select the font size and style required and then | OK. The new font will be
applied to all system drawings.

Individual fonts for the Items' labels, the Network Title and the Comments can all be entered.
2.3.4.3.6 Grid
A background grid can be implemented in the GAP model by selecting View | Draw Grid from
the main menu. The settings of this grid can be modified using the "Grid" option which is also
accessed from the View menu.

GAP User Guide August, 2012


User Guide 108

The dialogue consists of two sliders with corresponding data entry fields, which regulate the
horizontal and vertical spacing of the grid lines. Change these spacings by adjusting the sliders
or entering a new size in the entry field. The line type and colour used for drawing the grid can
also be modified. Check the "Automatic Update" box to update the system window with the new
grid dimensions as the slider is moved.

1990-2012 Petroleum Experts Limited


109 GAP

2.3.4.4 Network Drawing Position


These options allows the user to modify the placement of the icons in the main program window.
2.3.4.4.1 Normalize Equipment Icons Position and Snap to Grid
The objective of these options is to modify the aspect of the network.

Normalize Resets the system of coordinates used by the program. This is particularly useful
Equipment when merging different models created according to different zoom scales.
Icons When merging the models, this option will reset both models to work with the
Position same scale so that the systems can be laid out correctly.
Snap to Grid When the Grid is active (Draw Grid options enabled), this option places each
element in the closest grid corner. This feature is useful to create tidy (squared)
network drawings

GAP User Guide August, 2012


User Guide 110

2.3.5 The Edit Menu


In this section, the program allows selection and manipulation of various items on the network for
a wide range of operations such as deleting. This section will describe some of the available
functionality that comes with this menu.

These are the options available in the Edit menu:


Undo Options 110
Select Options 112
Selected Equipment Options 115
Find Equipment 123
Edit Options 125
Transfer and Import Options 129
Execute OpenServer Command
2.3.5.1 Undo Options
These options allow the user to undo an operation performed on the network system drawing.
Every time the network drawing is modified, the program will record the action taken. These are
the options available:

1990-2012 Petroleum Experts Limited


111 GAP

Undo This will undo the last operation made


Undo All This will undo all the operations done on the network drawing
Clear Undo This will clear the list of changes made on the network
list

Note that the 'Undo' options are available only for actions done on the
network drawing and not on the input data entered in the equipment data
entry screens or in the various input menus

GAP User Guide August, 2012


User Guide 112

2.3.5.2 Select Options


These options select items in the GAP network model. The items can be selected one by one or
according to their type (all wells, all joints, etc.). The selection options available are:

Select All This option selects all the equipment in the network model
Items
Select All... This option allows the user to select items on the basis of their type or status. To
select the "type" or "status" of the item choose from the sub-menu:

Dialogue This option opens up a selection window where one can select the items one by
Select one:

1990-2012 Petroleum Experts Limited


113 GAP

Unselect This option unselects all the selected items. The option is active only when there
All Items are selected items in the system

Selected items are highlighted by a cyan circle around them.

GAP User Guide August, 2012


User Guide 114

1990-2012 Petroleum Experts Limited


115 GAP

2.3.5.3 Selected Equipment Options


This section of the Edit menu allows operations to be performed on multiple selected elements
and elements belonging to the same type. The options available are:
Selected Items
Selected Wells and Inflows
Selected Pipes
Selected Tanks

2.3.5.3.1 Selected Items


This menu allows the user to carry out bulk operations on all of the selected pieces of
equipment. For example, after selecting a series of valves, it is possible to bypass all of them in
the system at once using this option.

These are the main options:

Disable/Enable This option Disables/Enables an element in the system. The disabling action
is irreversible, that is to say, even if during the prediction a scheduled event
sets to open the element it will still remain closed.
Mask/Unmask This option Mask/Unmasks an element. The masking action is reversible, that
is to say, if during the prediction a scheduled event sets to open the element it
can be opened and introduced back into the system.
Bypass /Un- This bypass/unbypass option is applied to inline elements only (pipelines,
bypass chokes, valves, inline separators, etc.). For example, if a pipeline is bypassed
the solver will no longer consider the pressure drop across the element. When
an element is bypassed it is greyed-out.

GAP User Guide August, 2012


User Guide 116

Remove The objective is to eliminate inline elements from the system without having to
re-draw all of the connections again. This option allows the user to delete an
inline element and to re-establish the connection between the upstream and
downstream nodes of that element.

The following example illustrates how the option works.

Initially an inline element is present in the system (in this case an inline choke).

After selecting the element with the selection tool and applying the Edit |
Selected Items |Remove option the following changes are made.

1990-2012 Petroleum Experts Limited


117 GAP

The inline element has been removed and a connection between the well and
the pipeline joint is created.
Show Gradient This option allows the user to plot the pressure gradient along all the selected
pipelines.
Copy/Cut/ Options to duplicate, cut and delete selected items.
Delete
Extract to GAP This option allows to create a copy of the network or part of it, which can then
Partial File (. imported in another GAP project (see below 138 for further details).
gpp)
Snap to Grid This option snaps the selected elements to grid (see above 109 ).
Change Icon This option changes the elements' icon label position.
Label Position

GAP User Guide August, 2012


User Guide 118

2.3.5.3.2 Selected Wells and Inflows


This option can be used to perform specific tasks on well icons. For example, setting the well
head chokes to be calculated for optimisation.

Set dP Control This option sets the wellhead choke to None (choke switched off so
the well is fully open), Fixed pressure drop or Calculated (choke set by
the optimiser to maximise production and honour constraints).
Set Casing Pressure This option sets the casing pressure control to a fixed value or to be
Control controlled by the optimiser.
Set Use Casing This option is to switch on/off the casing pressure option for gas lift
Pressure wells.
Set Well model This option changes the well type for the selected wells (VLP/IPR
Intersection, PC Interpolation, Outflow Only - VLP and Outflow only -

1990-2012 Petroleum Experts Limited


119 GAP

PROSPER on line). Refer to the Well description 188 for further details.
Set IPR Rate model This option specifies if the IPR is defined in terms of volumetric flow
rates of mass flow rates.
Set IPR Use Original When running calculations in compositional mode the original
Composition composition entered in the model may be changed based on the input
from the reservoir model (for example when the produced GOR
changes as the reservoir pressure decreases below the bubble point).
The new composition is called the "Working" composition. This
option will reset the IPR composition to be the original composition.
When Composition This option is enabled when one of the compositional models is being
Changes used with the Lumping/Delumping enabled.
The options available are: 'Do Nothing' (if the composition changes,
then use the composition coming from the upstream reservoir
simulator), 'Lump' (lump the composition from the simulator) and
'Delump' (delump the composition from the simulator).
Refit PC curves This option regenerates the selected wells' performance curves.
Reset dP chokes This option resets the values of the fixed dP choke applied to the
selected wells.
Turn off if unstable The well outflow features are described in the VLP input section 219 .
Allow left hand VLP/ The options here have the objective to switch on/off these features
IPR intersection
Enable Safe VLP/IPR
intersection mode
Convert to inflow This option converts the selected wells to inflows eliminating de facto
the well outflow from the model.
Split into This option converts the selected wells into its components inflow and
inflow and outflow outflow. The application of this feature is in the modeling of complex
well geometries (see example on Smart wells 765 )

GAP User Guide August, 2012


User Guide 120

2.3.5.3.3 Selected Pipes


This menu allows to change the description of the selected pipes by means of these options:

Toggle Pipe It switches the direction of the pipe, in case the pipe was incorrectly
Description defined.
Pipe Model This changes the model used to calculate the pipeline dP (GAP
Internal Correlations, Lift Curves, PROSPER Online)
Lumping Calculation In Lumping/Delumping mode this option allows the user to run the dP
Model calculation using either the lumped or the full composition.
Convert to PROSPER This option converts the pipeline (initially modelled as GAP Internal
Online Correlations) to PROSPER Online.

1990-2012 Petroleum Experts Limited


121 GAP

2.3.5.3.4 Selected Tanks


When a prediction has been performed using MBAL tank models or external simulation models,
it is possible to switch them to decline curves.

The 'Selected Tanks' option will allow the user to import decline curve tanks from the production
obtained in the initial run by the pre-existing tank model, or from the production obtained by the
inflow elements linked to the tank itself.

GAP User Guide August, 2012


User Guide 122

2.3.5.3.5 Selected Groups


Show members as selected
This feature allows the user to highlight all the elements that belong to the selected groups. After
selecting the group,

and choosing the 'Show members' as selected option, the elements that are part of the group
become selected.

1990-2012 Petroleum Experts Limited


123 GAP

2.3.5.4 Find Equipment on System Window


In large systems made up of hundreds of elements, it may sometimes be difficult to locate
individual items in the drawing. This option pinpoints the location of an item for the user.
The top list in the dialogue gives the different equipment types available in GAP. When the
dialogue is invoked, all equipment types are selected. The lower list displays all the system
equipment of the selected types, sorted on the basis of equipment type and alphabetically. To
locate a piece of equipment on the system window, double-click on an entry in the lower list (or
select a piece of equipment and then press Locate). A pink rectangle will appear around the
icon representing the node in all the system views. The rectangle will disappear when leaving the
screen.

In the above screenshot, the separator element called Separator will be located on the network
by selecting "Locate" as shown. The requested item will then be highlighted on the main window
and on the navigator window if selected.

Note that whenever a selection is made in the "equipment type" list, the list of equipment in the
lower list changes to reflect the new selection.

GAP User Guide August, 2012


User Guide 124

Action Buttons

All Selects all the equipment types in the upper list


Invert Inverts the selection of the upper list
None Un-selects all the items
Locate Locates the currently selected piece of equipment in the system views
(equivalent to double-clicking on an item)
Edit This invokes the Data Entry screen for the currently selected piece of equipment
Select This selected the highlighted item
OK Clears the screen

1990-2012 Petroleum Experts Limited


125 GAP

2.3.5.5 Edit Options


This sub-menu allows the user to modify the equipment control set up (for example chokes, gas
lift allocation, etc.) and to modify the paths of the files connected by the GAP model.
2.3.5.5.1 Edit Equipment Controls
This option has been added in GAP so that users can easily access all the control mechanisms
available in the model. In this manner well head chokes, gas lift injection rates, pump power and
frequency can be set (prior to a calculation) or viewed (following a calculation) from the same
screen.

As an example, consider a situation where the performance of a gas-lifted model needs to be


compared to reality. Then for that comparison to be made the same gas lift injection rates that
were injected in the field need to be specified in the model. These rates can be set from the
Equipment Controls screen directly as shown above. GAP will then use these injection rates
during the solve network calculation.

The Edit buttons will lead directly to the control page of the individual well models.

GAP User Guide August, 2012


User Guide 126

The Display and Control Type buttons enable the user to filter the wells in the display on the
basis of how they are controlled or whether or not they are to be optimised.

A specific layout setup can be kept in memory using the Save Layout as button.

1990-2012 Petroleum Experts Limited


127 GAP

2.3.5.5.2 Edit Project Paths


This option allows all items and associated files in a GAP project to be viewed on a single
screen and shows the directory location of the associated files to the GAP network. The paths of
the files can be adjusted if required.

This option is useful when, having copied a GAP file from one machine to another, the
associated file paths are no longer valid. Selecting All and Alter Paths can allow the user to
define the new directory where the associated PROSPER, MBAL etc. files now reside.

A typical GAP project is displayed in the example above. The production system file is
displayed at the top with any associated well or tank files. Injection system files are listed in a
similar fashion below this. If a prediction history file is present this will be displayed at the
bottom.

GAP User Guide August, 2012


User Guide 128

The list icons are colour coded by type. For example, well files are represented by a green icon
and tank files by a yellow icon. In addition, a tick or a cross indicates whether the file is a valid
file of the required type.

From this screen the user may view or alter the properties of the associated files, or change the
paths of a group of files.

Action Buttons

Alter Paths This is used to change the paths for a group of files. The files to be altered can
be selected with the mouse or the Select button as described below. When this
button is invoked, a directory browser appears. Navigate to the new directory
and press OK. The file list will be updated accordingly
View This is only active when a single selection is made in the file list. When invoked
Details the 'File Properties' screen appears, allowing the the file properties to be viewed
or the file path to be modified. The same action is obtained by double-clicking
the left hand mouse button on a file list entry.
OK Clears the dialogue, saving any changes.
Cancel Clears the dialogue, ignoring any changes.
Apply This saves any changes without clearing the dialogue. This is useful if an injection
file name has changed as this will load the new file and display its contents in the
list.
Help Invokes this screen
Select Multiple selections from the file list can be made in the usual ways with the
mouse. Alternatively, all items of a particular type can be selected using this
button. Choose from the drop-down list which category is to be selected. The
following choices are possible:
All well files
All tank files
All item model files (tanks and wells)
Injection system files (associated gas/water injection systems)
Prediction history file

When Select is pressed the files of the given type will be highlighted.

1990-2012 Petroleum Experts Limited


129 GAP

2.3.5.6 Transfer and Import Options


This submenu allows the user to import information from various sources like MBAL (Material
Balance data), compositional data, gas lift injection input data, etc.
2.3.5.6.1 Transfer Well Data from MBAL Models
This screen is used to transfer well data from a material balance file within MBAL to the GAP
model.

Various categories of data can be transferred. This is is explained below.

On the screen there are two lists shown. On the left is a listing of the components (tanks and
wells) in the MBAL model and on the right are the wells of the GAP model. Valid layers are
displayed in the GAP well list and transfers to invalid layers can be accomplished by transferring
the required data to the well icon itself and then specifying the layer number in the resulting query
screen.

To transfer data, click on an item in the MBAL list and a destination in the GAP list. Click on
either the "IPR" or "Rel Perms" button in the middle of the form to transfer data of the required
type. The actual data transferred will depend on the type of the item selected in the MBAL list
(for example, tank IPR data will include the tank starting pressure and PVT data, whereas well
IPR data includes the PI). It is not possible to transfer VLP data from an MBAL tank.

Action Buttons

IPR This transfers IPR data from the MBAL item to the GAP target. The data
transferred is as follows:
From a tank:
Starting pressure
Starting temperature
Impurity data (% H2S, water salinity)
Gas gravity
Oil/condensate gravity
GOR/CGR
From a well:
PI (Darcy coefficients, C and n)
Layer type
PI Relative permeability correction (oil layers only)
Perforation depths
Breakthrough constraints
Match data
Test water cut / layer pressure
VLP Transfers lift curve data to the well in question. This is only possible if the data
has been imported into the MBAL well model
Rel Perm Transfers either the tank or the well relative permeability depending on the
source type. If the MBAL well model is set to "Use Tank Rel Perm", then this will
return the tank relative permeability anyway

GAP User Guide August, 2012


User Guide 130

New Model This will load in an additional MBAL model file (extension .mbi) and display the
File contents in the list. Choose the required file from the file selection box
displayed. Data can then be transferred from the new elements as above.

Note that new files are not stored when the screen is cleared and must be reloaded when going
into the screen on subsequent occasions.

1990-2012 Petroleum Experts Limited


131 GAP

2.3.5.6.2 Initialise IPRs from Tank Simulations


This option is particularly useful when history matching a full GAP model. The IPR screens of the
wells can be initialised with the reservoir pressure data and saturations from associated MBAL
models at any point during the historical period. This allows the user to check production from
the system at particular points in time rather than running the whole model for the full historical
period.
It is important to note that when using this feature, an MBAL simulation will be run up to the
initialisation date. The fluid saturations in the reservoir at this point in time will be used, along
with the set of relative permeabilities defined in the MBAL model, in order to obtain the WC/
GOR or WGR/CGR corresponding to that particular date.

As with the previous option, more details are provided in the History Matching chapter 576 which
deals specifically with history matching.

This screen allows the engineer to initialise a well IPR from a tank model (decline curve or
material balance). When one invokes the Edit | Initialise IPRs from Tanks menu item a list of
wells appears. Select the wells that are to be initialised and press | OK.

The list of tanks that are connected to the selected wells appear in a list in the Tank Name
column.

In order to evaluate the tank pressure and PVT, the tank models must have a history in the case
of material balance models and in the case of decline curve models there must be production
data. These are the options available:

MBAL Start For MBAL models only - the start date of the tank history
Date
MBAL End For MBAL models only - the end date of the tank history
Date
Start For Decline Curve models - the cumulative production at which the pressure
Cumulative and PVT data are to be evaluated
Production
Pressure Displays the pressure following a 'Calculate'
Start Date For all MBAL tanks, this is the date at which the pressure and PVT should be
evaluated

Action Buttons

Calculate Evaluates the tank pressure and PVT at the specified date/cumulative
production, and displays this in the Pressure column
Continue Calculates the PVT and pressure data at the required conditions, and places
this in the IPR data of those wells that were selected initially
Cancel Clears the screen, ignoring any changes

GAP User Guide August, 2012


User Guide 132

1990-2012 Petroleum Experts Limited


133 GAP

2.3.5.6.3 Import Compositions


When the model is in compositional mode, the "Import Compositions" feature allows the user to
import an EOS for multiple wells in a batch.

Select which wells in the system are going to be associated with a particular EOS (or fluid
composition).

Two selection boxes are available:

1. Import the Lumping Rules which may be desirable if the Lumping/delumping PVT option is
being used.
2. Import EOS Options which will include the Volume shift options, the fluid path to standard
conditions etc.

GAP User Guide August, 2012


User Guide 134

Selecting "Continue" will activate a new window so that the .PRP file (which contains all of the
compositions and EOS properties) can be imported into the wells' IPR input section. This
option is used in Example 9a 915 .

1990-2012 Petroleum Experts Limited


135 GAP

2.3.5.6.4 Lump/Delump Compositions


This option applies a lumping rule in a batch to multiple wells.
2.3.5.6.5 Transfer Options for Gas Lift Injection
When a gas lift injection network model is associated to the production network model three
options are available:

Transfer Well Gas Lift gas rates When a 'Solve Network' calculation (for example, an
to Injection System Sinks optimisation) is performed in the production system, the gas
lift rates used by each well can be passed to the gas lift
injection system, which can then be used to calculate the
pressure required to flow the gas
Transfer Injection System Sink When a 'Solve Network' calculation (for example, an
pressures to Gaslifted Wells optimisation) is performed in the gas lift injection system, the
casing pressure pressure calculated for each well (casing head pressure) can
be passed to the production system, which can then be used
to calculate the production that can be obtained applying
those casing pressures
Transfer Production System
Separator pressures to Gaslift This option transfers the production separator pressures to
System Injection Manifolds the gas lift injection manifolds

GAP User Guide August, 2012


User Guide 136

2.3.5.7 Execute OpenServer Statement


This feature performs basic OpenServer operations on any element of the GAP model.

The basic operations are:

DoGet Retrieves values of input data or results


DoSet Applies input data in the system
DoCommand Perform actions (like masking items or run calculations)

The applications of this feature are extensive however an example would be masking multiple
elements at the same time or reading the result of a particular element.

To use the feature enter the OpenServer string, select the "Mode" and then "Evaluate" to
execute the command.

In the Returned value/message the program will provide the numerical value or highlight if the
command has been successfully executed.

1990-2012 Petroleum Experts Limited


137 GAP

Using the wildcard $ in the place of the equipment label or index will give access
to all the items of the same type instantaneously. For example:
DoCmd("GAP.MOD[{PROD}].WELL[$].MASK()")
will mask all the wells in the system.
This feature could be used to change the flow correlation used by all the
pipelines or any other parameter shared amongst a particular item.

GAP User Guide August, 2012


User Guide 138

2.3.5.8 Importing GAP models in an existing project


GAP allows the engineer to build and match entire production sub-systems independently and
then combine them to build the overall system model.

This section explains how to save GAP Partial (.gpp) files for sub-systems and recall them later
to assemble a complete system model.

Saving a GAP Partial File (.gpp)


Once a sub-system model is set up (for example a platform in a multi-platform gathering system)
select all the items in this model by selecting the menu Edit | Select All Items.

The model will then be selected (cyan circles will indicate the selected items).

1990-2012 Petroleum Experts Limited


139 GAP

Note that the section of the model to be exported can also be selected manually using the cyan
arrow selection tool from the button toolbar. This allows sections of the system to be selected
instead of the whole model.

It is now possible to save the selected section of network as a GAP Partial file by selecting the
menu Edit | Selected Items | Extract to GAP partial file (.gpp):

GAP User Guide August, 2012


User Guide 140

and then save the .gpp file.

GAP saves a .gpp file that contains all the data for the selected system elements.

Recalling a GAP Partial File (.gpp)


In the destination model, it is possible to import the saved GAP model by right-clicking on the
main screen of the GAP model and selecting the option "Insert Gap partial file (.gpp)".

1990-2012 Petroleum Experts Limited


141 GAP

This will allow import the (.gpp) file into the system which can be connected as appropriate.

GAP User Guide August, 2012


User Guide 142

In this manner, the entire system can be built up from sub-systems that have been independently
prepared and matched. This is illustrated in detail in Example 10 975 .

1990-2012 Petroleum Experts Limited


143 GAP

2.3.6 The Constraints Menu


This menu provides access to a summary of the constraints applied on the entire system or to
the constraints applied to each piece of equipment in the system.

The excessive use of constraints within GAP is discouraged. Constraints


should never be used during the matching phase of the model building
process. Once a system model has been successfully validated against
actual measured rates, the minimum number of constraints should then be
introduced to make selected system elements behave as desired during the
optimisation phase. Constraints entered in GAP should represent the
constraints in the field in reality.

General constraints (as opposed to abandonment constraints) are displayed with two red
arrows pointing towards the element that is constrained.

Abandonment constraints are displayed with two blue arrows pointing towards the element that
is constrained.

2.3.6.1 System Constraints


The GAP system is defined as the total production from all the wells. System constraints can be
used to model, for example, pipeline export capacity for a platform with several separation
trains.

GAP User Guide August, 2012


User Guide 144

GAP constraints are used to direct the Optimiser algorithm and should not be confused with well
limits used in prediction runs to shut in high GOR wells (for example).

To set the total system or global constraints such as maximum water, gas or liquid select
Constraints | System Constraints from the main menu. The following screen appears:

These parameters are used to define the maximum and minimum production levels for the
system, where appropriate. When left blank, the program will assume no constraint for a
particular variable.

The Unscheduled Production Deferment constraint takes into account the effects on the
production due to any non-scheduled events. The influence of these events will be taken into

1990-2012 Petroleum Experts Limited


145 GAP

account statistically as an overall percentage of production.


Therefore, if an unscheduled production deferment value of 5% is specified in the system
constraints section, the entire field will only produce 95% of the total production calculated by the
solver. This deferment is applied to all average and cumulative rates, but not to the
instantaneous rates.

It is important to notice that this constraint, if used, will overwrite any downtime applied
at well level.

The excessive use of constraints within GAP is discouraged. Constraints


should never be used during the matching phase of the model building
process. Once a system model has been successfully validated against
actual measured rates, the minimum number of constraints should then be
introduced to make selected system elements behave as desired during the
optimisation phase.

Field Tabs

Value Enter in this screen the value of the constraint to be set in any element of
the model
Binding Selects which constraints are binding or not. The optimiser will always try
(Yes/No) to honour all of the constraints set in the model. When constraints are set
to binding Yes the optimiser will iterate until the constraints are honoured
(provided it is feasible) whilst in the case of NO binding, if the constraints
cannot be achieved (because physically infeasible) it will be neglected
and there will be no additional iterations.
Potential Enables the user to include constraints in the potential calculation. Those
(Yes/No) constraints set to NO will not be considered in the Potential calculation

Action Buttons

OK Use this button to leave the system constraints entry screen and save all
changes that have been made.
Cancel Use this button to leave the system constraints entry screen and ignore
any changes that have been made.

Report Use this button to produce a report of the data. Reports can be written to
a file, the Windows clipboard, the screen, or a hardcopy device. See the
Reports menu item for more information.
Help Use this button to access this screen.

GAP User Guide August, 2012


User Guide 146

2.3.6.2 Binding (Yes/No)


Binding (Yes/No)
Selects which constraints are binding or not. The optimiser will always try to honour all the
constraints set in the model, however when constraints are set to binding Yes the optimiser will
iterate until the constraints are honoured (provided it is feasible) whilst in the case of NO
binding, if the constraints cannot be achieved (because physically infeasible) it will be neglected
and there will be no additional iterations.

1990-2012 Petroleum Experts Limited


147 GAP

2.3.6.3 Edit Constraints Table


In GAP it is possible to set constraints at every level in the system. This option allows viewing,
checking or editing the specific constraints of a group of selected items in a single edit session.

This option provides a single table from which all of the constraints in the system, as well as the
system constraints, can be viewed and edited. An example of the dialogue produced is as
shown below.

The Type and Sub Type selection menus enable the user to filter the constraint tables. There
are three tab screens (highlighted in the figure) that allow the user to enter the magnitude of the
constraints, whether the constraints are binding or not and whether they should be included in the
potential calculations.

When setting a constraint as 'Binding' or 'Not Binding', the program will in both
cases try to honour the constraint, with the difference being that in the case of the
binding constraint the program will iterate until the constraint is honoured (if it is
feasible), whilst in the case of not binding constraint, if this cannot be respected, it
will be neglected and there will be no additional iterations.

In general constraints like maximum rate or also NO-CLOSE Minimum Gas


Injection Rate should be set as binding, because in most cases these are feasible
and we want the optimiser to try to honour them.

Field Tabs

Value Enter in this screen the magnitude of the constraint to be set in any
element of the model.

GAP User Guide August, 2012


User Guide 148

Binding Selects which constraints are binding or not. The optimiser will always try
(Yes/No) to honour all the constraints set in the model, however when constraints
are set to binding Yes the optimiser will iterate until the constraints is
honoured (provided it is feasible) whilst in the case on NO binding if the
constraint can not be achieved (because physically infeasible) it will be
neglected
Potential Enables to include the constraints in the potential calculation. Those
(Yes/No) constraints set to NO will not be considered in the Potential calculation

Action Buttons:

OK Removes the dialogue and saves any changes made


Cancel Removes the dialogue and ignores any changes made

Help Displays this screen

1990-2012 Petroleum Experts Limited


149 GAP

2.3.6.4 Edit Abandonment Constraints Table


This option allows viewing, checking or editing the abandonment constraints of a group of
selected items in a single edit session.

Items in the main network that have abandonment constraints have two blue arrows above
the icon pointing towards the element.

GAP User Guide August, 2012


User Guide 150

2.4 Describing the PVT


The following paragraphs summarise the steps to be taken in setting up the PVT options in GAP
based on the objectives and amount of PVT information available. Under the system Options|
Method four main options are available to model the fluid PVT:

Black oil Black oil model is used for all of the calculations.
Tracking This method is based on a combination of the black oil model and fully
compositional model (equation of state or EOS).

Black oil model is used for the main pressure drop calculations
The EOS is then used as a post calculation to determine the composition in
any part of the system by performing compositional blends and flashes
based on the rates determined from the black oil calculations.

If a black oil reservoir simulation is used, the compositional tracking provides


the engineer with the capability of recombining the initial composition in order
to match the GOR of the fluid produced. This functionality is also available with

1990-2012 Petroleum Experts Limited


151 GAP

the following PVT methods.


Fully This method allows the user to run all the calculations using an equation of
Compositional state, which gives the compositions as well as the fluid PVT properties at any
point in the network.
Black Oil To speed-up calculations, the 'Black Oil Lumping/Delumping' method tracks
Compositional the composition of the fluids throughout the network at each iteration of the
Lumping/ solver but performs pipeline, compressor, pump and choke calculations using
Delumping the black oil correlations which use the BO properties calculated from the
tracked composition. This option makes sure that the black oil model is at any
point in time consistent with the EOS.

This option can also be used with the Lumping/Delumping technique which
empowers the user with the possibility to run calculations using an extended
composition, or using an equivalent composition with fewer components
(lumped).

'Black Oil Lumping/Delumping' may use the full or the lumped compositions
like the "Fully Compositional" option.

In the case where Tracking, Fully Compositional or Black Oil Compositional Lumping/Delumping
is selected then an Equation of State will be required in order to either track the compositions in
the system or get the PVT directly from the EOS.

This section describes in more detail the various options available in GAP for both black oil and
compositional modelling.
2.4.1 Black Oil
If the PVT model model is set to Black Oil the PVT properties used in the pressure drop
calculations will be determined with a Black Oil model.

The term Black Oil refers to a PVT model that considers the fluid to be (when below
saturation conditions) split between a Liquid and a Gas (2 Phases) in equilibrium. The
implicit assumption being that the liquid and the gas are characterised by a fixed
composition, irrespective of the pressure and temperature conditions.
Correlations are used to calculate the Bo, Bubble Point, Gas Oil Ratio and viscosity
from measurements at surface (API gravity, gas gravity etc). This definition can be
extended to gases and condensates where correlations can be used to obtain the
CGR, dew point and other properties. Hence the existence of Black Oil PVT models
for condensates.

In the MBAL and PROSPER manuals, the black oil models have been described in more detail.
This description includes:

Entry of basic black oil PVT data


Matching of lab data to correlations
Selecting the best correlation

GAP User Guide August, 2012


User Guide 152

Discussion on the use of tables

The origin of the black oil properties used by GAP to perform the network calculations depends
on the way the model is run.

When running the model in "Solve Network" mode, the black oil properties used by GAP are the
ones in the well IPR input section that are imported from PROSPER with an IPR generation 452 .

When running the model in "Prediction" mode, the PVT black oil properties of the fluid produced
from each well will be obtained at every time step from the reservoir model (MBAL or an external
simulator). The PVT information transferred from PROSPER and present in the IPR screen of the
well models in GAP will be overwritten, along with the reservoir pressure.

GAP will then feed this PVT information into its internal PVT model (defined in the Default
Settings 91 ), which will calculate all the properties necessary for determining the pressure drops
throughout the system.

When two or more fluids are present in the system, GAP will blend the fluids at every
manifold where they meet in order to determine the properties of the new fluid that

1990-2012 Petroleum Experts Limited


153 GAP

forms as a result of the mixing. The black oil properties (gravities, GORs and CGRs) of
the resulting fluid will be calculated on the basis of the mass flow rates of each stream
(mass of blending fluids = mass of resulting stream) and properties of the original fluids.

GAP User Guide August, 2012


User Guide 154

2.4.2 Compositional Options


In GAP three main compositional PVT model options are available, which allow the user to
determine the fluid composition everywhere in the system and its variation with changing
reservoir conditions. These are:

Tracking click here 172


Fully Compositional click here 173

Black Oil Compositional Lumping/ click here 174


Delumping

Details about each PVT model option are reported in the next few sections (click on the above
links to access them).

2.4.2.1 EoS Model Setup


When any of the three compositional options (Fully compositional, Tracking and Black Oil
Compositional Lumping/Delumping) is selected, the setup of the model is exactly the same and
the results are visualised in the same way. The fundamental difference between Tracking, Fully
Compositional and Black Oil Compositional Lumping/Delumping is the way the EOS model is
handled (see sections for each option).

Once any of the compositional options have been selected from the System options menu the
EOS Model Setup will be displayed.

1990-2012 Petroleum Experts Limited


155 GAP

This gives access to the configuration section, where the EOS options are selected.

GAP User Guide August, 2012


User Guide 156

1990-2012 Petroleum Experts Limited


157 GAP

These options should reflect the EOS available for the fluid (from PVTP for
example) and the process (path) the fluid follows to standard conditions
(which will affect the volumes and quality of the resulting fluid).

General
In this field it is possible to decide which EOS model to select, as well as the calculation
engines.

EOS Model The choice is between the two industry-standard cubic EOS
models, Peng-Robinson and Soave-Redlich-Kwong.
Optimisation Mode This defines how the calculations are run. Our PVT experts have
been working on ways to speed up the calculation of properties
from an EOS model. Speed is one of the main issues with fully
compositional models and the options in this field will define the
speed of calculations. The objective of this option is to speed up
the calculations without penalising the accuracy the results. The
Medium mode is the fastest (up to 80 times) and also default and
this should be selected unless any problems are detected in the
calculations
Optimise Repeat When repetitive calculations are performed, this option can be
Calculations selected to reduce the number of compositional calculations
performed (increase of speed by up to 40 times). This option is
particularly useful when running the Black Oil Compositional
Lumping/Delumping option as the determination of the
equivalent black oil model is only done when the composition
changes. If the composition does not change then the black oil
properties remain the same, hence it is not required to use the
EOS to re-calculate the black oil properties

Volume Shift
In this field it is possible to decide if to apply the Volume Shift correction or not to the EOS. Note
that if Lumping/Delumping is enabled, it is possible to enable/disable the Volume Shift in both
the full and the lumped compositions.

GAP User Guide August, 2012


User Guide 158

If no Lumping is enabled, the only Full composition volume shift option is available.

Lumping
This option enables the lumping/delumping method and allows the user to specify which
composition should be used throughout the system (i.e. the lumped or the full composition) along
with the lumping rule that associates the two compositions.

Allow Lumping If No is selected, then there is no Lumping/Delumping enabled


which means that each fluid in the system is defined by one
EOS.
If Yes is selected, then the Lumping/Delumping option is enabled
which means that each fluid in the system can be characterised
by two equivalent EOS compositions, a full (high number of
components) and a lumped (reduced number of components)
associated by a lumping rule (ref. Lumping/Delumping 11 )
Mode This option defines which composition is used in the network
calculations
Use Full Comp
The full composition is used for the calculations
Use Lumped Comp
The lumped composition is used in the network
calculations.
This option also defines which composition is run in the MBAL
models in the case that Lumping/Delumping is enabled too.
Master Rule This field allows the user to select the Master Rule used to
perform Lumping/Delumping (ref. Lumping/Delumping 11 ). The
Master Rule can be created or imported from PVTP and contains
the logic required to pass from an extended composition to a
lumped one (lumping) and viceversa (delumping). The Master
Rule is the logic applied to all the network (included any MBAL
model connected)

1990-2012 Petroleum Experts Limited


159 GAP

More Lumping This section defines the Lumping Rule used in the whole GAP
model. See paragraph below 166 for further details

Reference Data for Standard Conditions


This section defines the Reference Standard Temperature and Pressure used to determine the
flow rates. It is important to remark that this option affects only the standard temperature and
pressure used to express the liquid rates. As far as the gas rates are concerned, the standard
conditions are defined by the Unit System.

For example, if the Unit System is Oilfield, the gas rates are expressed in Scf or MMscf (where
"S" indicates standard volumes) which are by definition at 60 deg F and 0 psig.

Set as Default allows to set the entered conditions as program default.

Water and Hydrates NEW!!!


This section defines how the PVT of water is handled along with the different hydrate models
that are available.

Flash Mode There are two different approaches to handle the water. The
"Two Phase" and the "Psuedo Multi Phase" methods. The "Two
Phase" method treats the water as a completely separate phase
from the hydrocarbon fluid and is the traditional modelling
approach. The "Pseudo Multi Phase" method can handle water
as part of the fluid composition and there are three methods
available:

1. Soreide and Whitson


2. Modified Cubic
3. Modified CPAs

More detailed information about these models is provided in the


PVTP manual.
Hydrate Model There are three models available for predicting the onset of
hydrate formation. These are:

1. Munck et al
2. Hydrafact Modified Cubic

GAP User Guide August, 2012


User Guide 160

3. Hydrafact Modified CPA

More detailed information about these models is provided in the


PVTP manual.
Water Composition This section is where the water composition is defined. See
paragraph below 163 for further details

Viscosity NEW!!!
This section defines the viscosity model used for the oil and the gas. In previous versions, when
using the EOS model only the Lohrenz, Bray Clark method (with regression on the critical
volumes) was available. The user now has the option to use the Pederson et al method and the
Lohrenz, Bray Clark method with regression on the coefficients which is the technique used by
other thermodynamics packages.
In addition to this, the user has the added functionality of being able to use the black oil viscosity
correlations which have been shown in many cases to be more reliable over a wider range of
temperature and pressure.

Blending
This section defines the rules followed by the program when two or more fluids compositions are
mixed.

Match The program will mix only the properties of components that have the
Components by: same name. When using this option the user has to make sure that the
Component mixing compositions have been defined with the same number of
Name Only components and same names

Match The program will mix only the properties of components that have the
Components by: same name or similar properties (Tc, Pc, etc.)
Component
Name or
Properties

Use Number of If Yes is selected, the program will try and blend components that
Components as correspond to the same component number. If components in two
key blending compositions have different names, these will be blended.
If No is selected, if components in two blending compositions have
different names, the components will not be blended, but they will be
carried on as separate components. The sketch below shows the
concept when "No" is selected:

1990-2012 Petroleum Experts Limited


161 GAP

This option allows the user to use compositions with a different number of
components. If that is so, each new set of pseudo components will be
carried along.

Phase Check
This section decides which method to use for the phase detection. This option should not be
modified.

Path to Surface and Recycle


This field defines the path followed by the fluid to standard conditions. Measured rates are
conventionally defined at standard conditions and depending on the path followed by the fluid
(the number of separator stages) more or less gas/oil can be reported at standard conditions
even though the mass rates will be the same.

GAP User Guide August, 2012


User Guide 162

In general the path to STD used in the model should be consistent with the path used in the field
to meter the phase rates.

Flash Straight Means that the fluid is flashed straight to STD


to Stock Tank
Use Separator Means that the fluid is flashed through a series of separators down to
STD
Train
Use K Values This option models the process based on K values (equilibrium
ratios). This can allow process calculations from systems more
complex than separation to be represented as Pseudo separators
that can be obtained from process simulators. Note that the use of K
values is discouraged by the fact that they depend on the fluid
composition. If the composition changes significantly then the k
values may not be representative anymore and incorrect answers
may be obtained.

Target GOR Method


The objective of the Target GOR is to recombine the original fluid in order to reproduce the
produced GOR. In other words the objective is to determine the evolution of the fluid composition
as the GOR changes.

To achieve that, the program determines a gas and a liquid from the original composition and
then it recombines them in order to reproduce the actual producing GOR. This entry option
defines the source of oil and gas used to recombine the fluid.

Use Separator The stream performs a full separator calculation using the
Fluids separator train input at the bottom of the dialogue. The
accumulated gas and dead oil compositions found during
this flash are then mixed in the GOR target calculation.
Use Fluid The stream has its saturation pressure calculated at the
from PSAT reservoir temperature. A flash is then carried out a
pressure just below this pressure value. The gas and oil
compositions found during this flash are then mixed in the
GOR target calculation.

It should be noted that this method restricts the range of possible


GORs to between the Rs of the oil just below PSAT (minimum GOR)
and the equivalent GOR of the gas just below PSAT (maximum
possible GOR).
Although more restricted, this mixture better reflects the case of an oil
entraining gas cap gas etc. The limits on the target GOR are

1990-2012 Petroleum Experts Limited


163 GAP

displayed as the min and max GOR in the Target GOR dialogue
window.

A reservoir or layer temperature is also required for this method. The


PSAT calculation is carried out at the entered temperature.

2.4.2.1.1 More Lumping


The "More Lumping" button gives access to the 'Lump Option' Dialogue, where the details of the
lumping rule are presented and can be edited.

The 'Lump Options' available are:

Lump Rules
This section allows to select the Master Rule used throughout the GAP model.

Lumping Rules

GAP User Guide August, 2012


User Guide 164

This contains a table with the list of lumping Rules currently imported in the GAP model. From
the "Select" button it is possible to Import or Export, view or edit the 'Lumping Rule'.

In the 'Lumping Rules Summary' dialogue section the lumps are described. For example in the
figure above, the first lump "N2C1" is associated with the components N2 and C1.

At the top right of the screen a BIC Multiplier is reported. This is a multiplier to the binary
interaction coefficients (BICs) of the lumped composition, which is a technique used to make
sure that the lumped composition reproduces the same saturation pressure as the full
composition.

The "Setup" button defines the logic behind each lump. For example the Lump "N2C1" was
created by combining the components N2 and C1 by name.

1990-2012 Petroleum Experts Limited


165 GAP

The remaining options are self-explanatory.

General
This section defines the options for Lumping/Delumping.

"Allow Lumping" and "Mode" are the same options that are reported in the main EOS Setup
section (see above 158 ). The remaining options are described below.

Seps It is possible to perform Lumping/Delumping using gas and oil


obtained by flashing the fluid straight to stock tank or through
multiple separator stages defined in the main EOS Setup
section.
Use Full One of the main reasons why surface and process models need
Composition for Enthalpies to have a large number of components is that thermal
calculations (heat capacities, enthalpies) require a very detailed
composition in order to be accurate.

This option forces the program to use the full composition every
time enthalpies need to be calculated, and should always be
selected.

DeLumping

GAP User Guide August, 2012


User Guide 166

This section defines the techniques used to Delump a lumped composition.

DeLump Method This option defines the method used to determine a full composition
from a lumped one. Three main options are available.
Use DeLump This option uses the 'Lumping Rule' to delump the
Rule and lumped composition, along with the 'Target GOR'
Target GOR method to make sure the delumped composition
reproduces the lumped composition's GOR. This
option is the default and is also recommended.
Use Target This option makes sure that the full composition
GOR Only matches the GOR of the lumped composition only.
Use DeLump Only the Lumping Rule is applied.
Rule Only
Hold C1 Group in This option makes sure that the C1 amount is preserved when
DeLumping passing from the de-lumped to the lumped composition. This is
useful to quality check.

Lumping
This section allows to define the techniques used to Lump a full composition.

Lump Method This option defines the method to determine the lumped
composition from the full. The options are the same as in the
DeLump Method options

2.4.2.1.2 Water Composition


NEW!!!
The "Water Composition" button gives the user access to the different salinity, hydrate and
inhibitor options.

1990-2012 Petroleum Experts Limited


167 GAP

Salt Mode
This option dictates how the salinity is handled.

Use Salinity Only This option uses the salinity entered in the "Water Salinity" field
which is the parameter required for calculating the water
properties from the internal correlations.
Use Water Composition This option will calculate the salinity based on the brine
composition which can be entered in the "Salts" section.

The brine composition and the salinity are directly related, and there are options to calculate one
based on the other.

GAP User Guide August, 2012


User Guide 168

Convert Salinity to This option calculates the equivalent concentration of Sodium


Composition Chloride based on the salinity entered in the "Water Salinity"
field.
Convert Composition to This option calculates the salinity based on the composition
Salinity entered in the "Salts" section.

Hydrate Model

This option is the same as the hydrate option reported in the main EOS Setup section (see
above 159 ).

Use inhibitors|Salts in Calculation

Yes This option will use the inhibitor|salt concentrations in the


calculation of the hydrate formation curve which is used to trigger
the hydrate warning 83 flag when this option is activated.
No This option means that the inhibitor|salt concentrations are not
used in the calculation of the hydrate formation curve.

Inhibitors

This option allows the user to specify the concentration of different inhibitors in the water

Salts

This option allows the user to specify the concentration of different salts in the water
2.4.2.2 Setting up a Compositional model
The process of building a GAP model when any of the compositional options is enabled
(Tracking, Fully Compositional or Black Oil Compositional Lumping/Delumping) is always the
same.

The following steps illustrate how a model is set-up with any of the compositional options:

1. Enable the desired PVT Model from the Options | Method entry screen.

2. Enter the compositions at the well level.

Note that it is also possible to perform a batch import of compositions by using


the menu Edit | Import Compositions (related topic 133 ).

To enter the compositions on a well-by-well basis, go to the well data input screen and
navigate to the "Ipr Layer" tab. In this screen total fluid compositions can be entered for

1990-2012 Petroleum Experts Limited


169 GAP

the entire well production (single-layer case) or for each valid layer of a multi-layer case.
Select the layer for which one wishes to enter a composition (if applicable) and press
the 'Composition' button. Compositional information can be entered into the resulting
screen by hand, imported from a .PRP file or pasted from a spreadsheet application (e.
g. Excel).

In this screen one may also perform phase envelope, hydrate, water composition and
Target GOR/H2O calculations.

GAP User Guide August, 2012


User Guide 170

If 'Lumping/Delumping' has been selected in the EOS Model Setup options then it is
possible to import a .PRP containing both the lumped and the full compositions (see
figure below). The 'Options' dictate which of the two compositions are used in the
network calculations.

1990-2012 Petroleum Experts Limited


171 GAP

When the composition has been entered, press | OK. The colour of the 'Composition'
button on the well composition entry screen is an indication of whether the composition
entered is valid. This procedure must be carried out for every well in the system.

3. For gas lifted wells, one must ensure that the gas lift source has an associated
composition. This is entered in the 'Well Gas lift Input' screen.

4. (Prediction only). If there is gas voidage replacement / injection, then the composition of
this needs to be specified. If there is no associated gas injection system, then the
composition of the injected gas can be entered from the 'Prediction Forecast Set-up'
screen or from the 'Tank Injection Entry' screen.

5. If there is an associated gas injection system then the composition of the injection
source has to be specified at every injection manifold in the injection system.

During the prediction run the wells will receive the fluid compositions from the tanks, provided
these have been set up in the MBAL model. If one reloads a snapshot 713 following a prediction
run then compositions received from the tanks can be viewed from the wells.

When a reservoir model (MBAL or an external simulator) is linked to GAP, the


composition comes from the reservoir model. If the reservoir model is not
compositional (for example, black oil), GAP will use the composition entered in
the well IPR section and will recombine it in order to match the fluid properties
(GOR) coming from the reservoir model. This means that GAP is able to
determine the composition even if the reservoir simulator is not.

GAP User Guide August, 2012


User Guide 172

2.4.2.3 Tracking
If "Tracking" is selected as the PVT model option, GAP uses the black-oil model in its network
calculations (to determine pressure drops and rates) and an EOS composition is carried along
and used to determine (or track) fluid compositions from the well bore through the surface
network system in a post calculation.

The compositional tracking feature takes advantage of the speed of the Black Oil
calculations and can still determine the resulting composition of the fluid at every node
in the system. Provided that the pressure drops are not affected significantly by the
fact that the EOS is not used directly for the PVT properties, then this method can yield
very good results without compromising on speed.

Compositions are tracked during the Solve Network or during one prediction time step as
follows:
GAP calculates fluid rates and specific gravities referred to surface conditions
throughout the system using the black oil correlations.
From these mass flow rates, and hence mole rates, can be evaluated.
Compositions at manifolds can then be found by a simple combination of molar
quantities of the input stream compositions.
By working from the bottom (well) level up, the composition of the fluid at the separator
can be determined.
If the fluid GOR changes with time (for example during a prediction) then the program
will recombine the initial composition entered in the well IPR section (using the Target
GOR function) in order to match the new fluid GOR coming from the reservoir. The
recombination technique is called Target GOR.

Gas injection at wells or in injection systems is handled in the same way. Knockout of gas at
joints is achieved by flashing the fluid to the manifold operating pressure and temperature, and
then removing the specified number of moles.

At the beginning of any calculation GAP will inform the user if the tracking calculation was
successful. The tracking will fail if there are any missing compositions or in the unlikely event of
a calculation failing.

When running the model in the tracking mode, it is possible to set the EOS Model Setup
options ( see above 154 ) to use the Lumping/Delumping methodology. This allows the
user to track either the full or the lumped composition.

1990-2012 Petroleum Experts Limited


173 GAP

2.4.2.4 Fully Compositional


If the PVT model is set to 'Fully Compositional', GAP will use an EOS model to determine the
fluid PVT properties used in the network pressure drop calculations. At each node in the system
the program will perform a full flash calculation using the EOS composition to determine the
liquid and vapour in equilibrium and their associated properties (FVFs, densities, viscosities,
phase split). When two different fluid streams blend, GAP will perform a mass balance (on a
molar basis) to determine the composition of the resulting fluid stream.

Whenever there is a phase separation (before pumps or compressors, inline separators, main
separators, etc.) the flash calculation that is executed provides the compositions of the oil and
gas along with flow rates.

The volumetric flow rates reported by the program at any point in the network are
expressed at Standard Conditions (which are by default 60 degF and 0psig) and should
not be confused with the in-situ rates.

For example, if the reported oil rate is 500 STB/day then this means the fluid as been
flashed from the in situ conditions in the network through a defined path to surface
conditions.

When using the Fully Compositional model the lumping/delumping methodology


should not be used. The lumping/delumping methodology can only be used in
conjunction with the Black Oil Compositional Lumping/Delumping model.

GAP User Guide August, 2012


User Guide 174

2.4.2.5 Black Oil Compositional Lumping/Delumping


If 'Black Oil Compositional Lumping/Delumping' is selected as the PVT model option, GAP
tracks the composition of the fluids throughout the network at each iteration of the solver but
performs pipeline, compressor, pump and choke calculations using the black oil correlations
which use the black oil properties calculated from the tracked composition.

The difference with the 'Tracking' option is that with the tracking, the EOS originally entered in
the well IPR section is recombined from the well up to the separator based on the calculated
rates of the black oil model in a post calculation. The problem that can arise is that the resultant
composition from the recombination can have different properties to the properties calculated by
the black oil model. In the case of 'Black Oil Compositional Lumping/Delumping', whenever a
pressure drop calculation is performed during each iteration of the solver the program
determines a black oil model from the EOS and uses the black oil model for the calculation
which avoids the inconsistency but maintains the speed in its calculations.

This option ensures that the black oil model is always consistent with the EOS and is in general
the recommended option to adopt when accurate results and quick run times are required.

When running the model as Black Oil Compositional Lumping/Delumping, it is possible


to set the EOS Model Setup options ( see above 154 ) to use the Lumping/Delumping
methodology.

1990-2012 Petroleum Experts Limited


175 GAP

2.4.2.6 Viewing Compositional Results


Whenever running one of the compositional options, it is possible to view the composition
anywhere in the GAP network for any calculation performed. For example,compositions at all of
the nodes can be viewed from the 'Solve Network' or the 'Prediction' results as required.

When inspecting the 'Solve Network' results, the fly-over will display the compositional results.

Note that to view the composition results in the fly-over, this has to be enabled in the menu View |
Select Info Displayed.

Alternatively, results can be viewed from any of the Results screens. It is also possible to view
the composition details by going to the results screen of the node in question, scrolling to the far
right end of the table, and clicking on the "View" Composition button.

GAP User Guide August, 2012


User Guide 176

The "View Composition" screen is common to all the results screens in IPM and provides the
user with a variety of additional functionality along with viewing the composition details. For
example the user can Import or Export the composition in the form of a .PRP file (for further
analysis in PVTP).

The user can calculate the fluid properties for a range of pressure and temperature using the
"Generate" button.

1990-2012 Petroleum Experts Limited


177 GAP

The user can quickly retrieve all the black oil properties of the composition from the "Properties"
button.

The user can perform a 'Target GOR' calculation to determine the composition required to
reproduce a given Produced GOR.

GAP User Guide August, 2012


User Guide 178

Similarly, the user can perform a Target H2O calculation to determine the water cut based on a
given composition and vice versa.

1990-2012 Petroleum Experts Limited


179 GAP

The "Phase Env..." button allows the user to visualise the phase envelope of the fluid and
calculate the hydrate/wax formation. The functionality of this option is well documented in
Example 9a 934 .

The water composition option has been explained previously (see above 166 ).

Note that if there are two compositions associated with the fluid (a lumped and a delumped
composition) there is the option to switch between the two can perform the above calculations.

GAP User Guide August, 2012


User Guide 180

2.5 Equipment Data


After completing the system drawing, the unique characteristics of each element must be
entered. This and the following chapter describes how to enter data for each element in the
system.

In this chapter the main equipment data entry screen is described. This is the screen
from which all equipment data can be entered and the results of the calculations for
the equipment are stored.
This is followed with a detailed description of the input data that is required for a full
description of a well model in GAP.
Finally, the results screens that apply to all the item types are described.

2.5.1 Introduction
This chapter describes the different elements making up a GAP model.

Description is provided on the use of:

Equipment data Entry in general 180


Wells 187
Separators 265
Joints 279
Pipelines 283
Tanks 338 (Reservoirs)
Flares and Vents 346
Pumps 353
Compressors 371
Sources/Sinks 392
Inline elements 400
Inflow elements 436
Groups 438
Flowsheets 442

These elements can all be accessed from the main toolbar.

2.5.2 Equipment Data Entry Screen Format


The main data entry screen is the "Summary Screen", a master section from which all the
equipment data can be entered. Enter the screen by double-clicking the left-hand mouse button
on any equipment icon on the GAP drawing.

1990-2012 Petroleum Experts Limited


181 GAP

The input screen for all the equipment has the same general format, though the data entry
headings/ formats vary from one to the other. The following diagram shows the data entry
screen for a well.

The screen consists of three parts:

The Navigator (Equipment List)


The Section Buttons
The Action Buttons

2.5.2.1 The Navigator - Equipment list


On the right-hand side of the screen is a list of the equipment making up the GAP network.

GAP User Guide August, 2012


User Guide 182

The equipment in the screen can be listed in four different ways, which can be changed simply
right clicking on the list:
Separator down sort
Tank up sort
Alphabetical sort by equipment label
Sort by equipment type

In the example above, the option Equipment Type Sort is used. The default is Separator down
Sort i.e. hierarchically going from the separators down to the wells and tanks.

1990-2012 Petroleum Experts Limited


183 GAP

Equipment is accompanied by a tick or a cross indicating the validity of the data


associated with the item. When first entering the screen, the piece of equipment
selected is highlighted in the system window .

2.5.2.2 Section Buttons


For each piece of equipment the data is sub-divided into three sections.

Summary Master section from which one can access all the different inputs
(i.e. controls, constraints etc.)
Input Accesses all the sections where data can be entered for the
particular element (for example: IPR, VLP, etc. for a well)
Results Section where the calculations results are reported.
Section buttons Each section can be accessed through the corresponding
buttons at the bottom of the screen.

2.5.2.2.1 Summary
The 'Summary' contains information about each element of the network (for example, a well, a
joint, etc.).

Label Name that appears in the GAP main screen (network drawing)
Name Extended name
Mask Option to mask the element
Comments Comments on each element can be entered
Data Summary Section containing the links to all the input screens. The number and type
of sections vary depending on the element.

Other sections vary depending on the element in consideration.

GAP User Guide August, 2012


User Guide 184

2.5.2.2.2 Input Button


Clicking the 'Input' button takes the user to the input data screens as shown below.

On this screen, it is possible to see various tabs, where the input data is entered. The number
and type of available tabs depends on the equipment type.

When one of these tabs / buttons is selected, a child screen appears in which the relevant data
can be entered.

2.5.2.2.3 Results Button


Clicking on the results button displays the calculation results for the specific equipment.

1990-2012 Petroleum Experts Limited


185 GAP

There are two tabs available for results buttons, one for each calculation type available in GAP:

Network Solver Tab reporting the results of the latest 'Solve Network' calculation.
Results
Prediction Results Tab reporting the results of the latest 'Prediction' calculation.

2.5.2.3 Action Buttons


On the screens shown above one can also find a set of buttons that perform various actions such
as, Report, OK, Cancel etc.

The buttons are referred to as 'action buttons' in this manual. There are action buttons at every
input data screen like the summary screen, various input screens and the results screen.

The buttons that are displayed active on a screen depend on the equipment type and the screen.
These are described in detail in the descriptions of all the individual equipment. Some of the
main buttons are described below:

GAP User Guide August, 2012


User Guide 186

Run In the case of a well, this opens the associated PROSPER file which can
PROSPER / MBAL be modified or updated. For a tank, this opens the associated MBAL file.
OK Removes the dialogue screen, saving all of the changes that have been
made in any of the screens.
Cancel Removes the dialogue, ignoring all changes. If any changes have been
made, a confirmation message will appear
Help Displays a help screen which assists the user with an additional
explanation about the currently displayed screen.
Revert This replaces the data of the current screen or tabbed screen with the
data that was current when the screen was entered
Validate Checks the data on the current screen or tabbed screen for validity. This
takes into account the prediction mode or whether or not the system is an
injection system. If the data is not valid, the validation dialogue will appear
with diagnostic messages.
Calculate Available for well, compressor and pump elements when the 'Summary'
and 'Input' section buttons are selected.

For wells:
If selected from the 'Summary' screen, this allows the user to
perform a VLP/IPR calculation.
If selected from the 'Input' screen, the user can estimate the liquid
rate or FBHP from the IPR or the VLP.
For compressors and pumps:
The 'Calculate' button is accessible from the 'Input' screen and
allows the user to perform a calculation of the compressor/pump
dP, head, power, etc. given the rate, PVT and inlet conditions.
Plot Will produce a plot screen appropriate to the screen or tabbed screen
being displayed (for example, an IPR plot will be displayed from the IPR
input screen). This is greyed out when there is no suitable plot
Report Enters the GAP Reporting System. The report produced will depend on
the currently displayed screen or tabbed screen (for example, an IPR
report for the IPR input screen)
Next (selected) These buttons can be used to navigate through the equipment list. Next
Previous (selected) will move to the next piece of equipment in the equipment list. Previous will
move to the previous piece of equipment in the list. If items are selected,
these buttons will navigate between selected items
Mark These buttons allow items to be marked for reference purposes during an
Mark All editing session (for example, to indicate to the user that a well
Unmark All performance curve has been regenerated). Marked items appear with
their status (tick or cross) displayed in reverse.

1990-2012 Petroleum Experts Limited


187 GAP

2.5.3 Wells

The modelling of the wells is the first part of building an accurate GAP field model. The rest of
this chapter is devoted to a description of the data required for a complete well model in GAP.

The data required for a well model in GAP depends on the mode in which GAP
is running and the type of well that is being modelled.

Like any other equipment, well data entry screens can be accessed by

Double-clicking the left-hand mouse button on a well icon on the main GAP drawing, or by

Clicking on the appropriate well icon in the equipment list of the main data entry screen.

On the well data entry/results screens, there are three sections.

Summary Screen This allows selection of the well model and well types, and also gives the
status of various aspects of the well input data. See the following section
Input Screen Includes tabbed screens for the following input fields:
Control
- dP Control
- Artificial Lift control.
The type of artificial lift control available will vary depending on the
type of well. For example, Gas Lift Control is for gas lifted wells
only and ESP Control is for ESP Wells only.
IPR Input
VLP Input
PC Data Input (For manual entry / generation of performance
curve (PC) data for wells)
Constraints
- General
- Abandonment
Downtime
Coning
Tank Connections
Production Data (Decline Curve prediction only)
Schedule (Only available is Prediction is Selected in the Main
Option)
Results Screen Contains the following fields:
Network Solver Results.
Prediction Results

GAP User Guide August, 2012


User Guide 188

2.5.3.1 Well Summary Screen


This screen is accessed by clicking on the "Summary" button of the well data entry screen.

Input Fields

Label Maximum of 18 characters allowed. This defaults to the name supplied in the
label dialogue box when the well icon was initially added to the system. If
blank, enter a short name or abbreviation to identify the icon on the screen.
Name Maximum of 32 characters allowed. Use this field to enter a full or descriptive
name, if any, for the well. This name will appear in the reports generated by
the allocation calculations.
Mask This option allows a well to be added or omitted from the network database
and consequently the calculations.

1990-2012 Petroleum Experts Limited


189 GAP

When the well is not to be taken into account in the system calculations, two
options are available:

Mask

Indicates the well is masked. A masked well is excluded from the system but
can be recalled during a prediction if an unmask event appears in the well
schedule.

Disable

Indicates the well is disabled. A disabled well is permanently excluded from


the system regardless of the events that are included in the well schedule.

Comments Enter any string of comments to provide more detailed information about the
well (for example, date shut-in, fractured, etc.)
Well Type Specifies the type of well. The well type should be the first thing to be
specified as the data required in the input screens depends on the well type.
These options are available:

Gas Injector
Gas Producer
Liquid Injector
Oil Producer (Diluent Injection)
Oil Producer (Diluent and Gas Injection) NEW!!!
Oil Producer (ESP Lifted)
Oil Producer (SRP Lifted) NEW!!!
Oil Producer (Gas Lifted)
Oil Producer (HSP Lifted)
Oil Producer (Jet Pump Lifted)
Oil Producer (No Lift)
Oil Producer (PCP Lifted)
Retrograde Condensate Producer
Water injector
Water producer
CBM Water producer (ESP Lifted) NEW!!!

GAP User Guide August, 2012


User Guide 190

CBM Water producer (PCP Lifted) NEW!!!

SWAG wells can be modelled using liquid injector or gas injector


well types. GAP handles simultaneous injection of gas and water.

The liquid injector well type can be used to model injection of any
liquid, for example polymer or NGL.
PROSPER GAP can work with PROSPER .OUT files. If a PROSPER .OUT file for this well
File is available, the file name should be specified here. When GAP accesses
PROSPER, the program will automatically load the file that has been
specified in this location.
Model Select one of the following:

VLP / IPR Well rates will be calculated based on the intersection of


Intersection VLP / IPR curves
PC Well rates will be calculated based on a performance
Interpolation curve (PC), which is the curve representing the relationship
between rate and manifold pressure. This option
interpolates between the points of the PC. If this option is
selected, the PC Generation option will be active. The PC
interpolation method can describe up to 20 points.
Outflow Only The well icon is only used to store the VLP curves that
VLP need to be pre-generated. An associated inflow icon will
then provide the IPR in order to have a complete well
model. This option is used to decompose complex
completions (for example multilayer 765 systems).
Outflow Only The well icon no longer stores any lift curves. When a
PROSPER pressure drop calculation is required, GAP can calculate it
dynamically using the equipment set in the PROSPER on
line section. Please refer to the following sections for
details

The outflow only models for well modelling have been introduced
from GAP v5.0 onwards. They increase greatly the capabilities of
GAP in terms of modeling smart well completions and multilayer
systems (an example of multilayer model 765 can be found in the
Examples Guide section)

Rate Model Rates can be defined in terms of volumes (at standard conditions) or mass.
(only when
compositiona Defining the rates in terms of mass has got the benefit of making
l model is the rates (hence the VLPs) process independent. This is because
enabled) volumetric rates at standard conditions depend on the process
used to analyse the fluid, whilst mass is invariant, therefore does
not depend on the process used. This option is particularly useful
when coupling models with different reference paths to standard

1990-2012 Petroleum Experts Limited


191 GAP

as using the mass mean that the IPRs and VLPs do not need to be
regenerated if the process changes.
When This option will lump/delump the composition entering the system through the
Composition wells.
changes
(only when
compositiona
l model with
lumping/
delumping is
enabled)
Data In addition to the selections discussed above, the well summary screen
Summary contains an input data summary area.
Area

This gives details on the status of various aspects of the well-input data. It
consists of various fields that correspond to different areas of the well-input
data. These screens have the following colour code:

Red If the data is invalid or missing


Green If the data are valid
Cyan Indicates that information have been entered (e.g. a
well constraint or dP control setting)

The icons that appear in this area are dependent on well model and
Prediction Type (None / Material Balance / Decline Curve) selection.

For the various fields, the following Status might be displayed:

Tank Connections (Valid/Invalid)


IPR Input Data (Valid/Invalid)
VLP Input Data (Valid/Invalid)
Constraints Data (None/Some/Invalid)
Controls (Set/Not Set)

GAP User Guide August, 2012


User Guide 192

Pump Control (Artificially lifted wells only) (Set/ Not Set / Not
Appl.)
Performance Curve Data (Only for PC well model) (Valid/
Invalid)
Gas Lift Control (Gas Lifted wells only)(Source name is
displayed)
Downtime (Set / None)
Coning (Set / None)
Scheduling (Set / None)

By clicking on any of these fields, one can access the input data for the field.

2.5.3.2 Calculate
For every well the user has access to a "Calculate" button.

Within the summary screen, the "Calculate" button will determine the liquid rate and
corresponding bottom hole pressure based on the IPR and VLP curves for a given set of
conditions.

1990-2012 Petroleum Experts Limited


193 GAP

The user can plot the VLP/IPR intersection by clicking on the 'Plot' button.

The 'Initialise from solver results' can be used to recall the flowing conditions
calculated during a Solve Network 495 calculation. This is useful when
troubleshooting the well performance as these are the same conditions that
occurred in the main calculation.

This will prompt the following VLP/IPR intersection screen:

GAP User Guide August, 2012


User Guide 194

Note that when there are two intersections between the VLP and the IPR curve,
GAP will by default pick up the intersection on the right hand side (as in general this
corresponds to the stable rate whereas the left hand intersection is the unstable
one).

GAP can be forced to use the left hand intersection when the Force Left Hand
Side Intersection (Solver) option has been enabled.

On the VLP input screen, the "Calculate" button invokes the VLP calculation dialogue. This
enables the user to calculate the FBHP from the vertical lift performance curve of the well for a
specific set of flowing conditions.

1990-2012 Petroleum Experts Limited


195 GAP

On the IPR input screen, the "Calculate" button invokes the IPR calculation dialogue. This
enables the user to calculate the FBHP/rate from the inflow performance curve of the well.

2.5.3.3 Well Input Screens


The tabs are coloured according to the validity of the data on the corresponding dialogues.
If the tab is green, then the data is valid for the current system set-up.
If it is red, then the data is invalid or empty.
If the tab is grey, then this tab is not applicable to the current model and so is
inaccessible.

The following table represents the division of the input data:

Tank Enter/visualise tank connections

GAP User Guide August, 2012


User Guide 196

Connections
IPR Input Used to enter/visualise IPR data, either for the well, or per-layer in a
multi-layer well.
VLP Input Used to enter/visualise the file that contains the lift curve data for the well.
Constraints Used to enter/visualise the well constraints and abandonment
constraints.
Controls Used to enter/visualise control data for the well. This allows wells to be
choked back to meet some throughput constraint, or for artificially lifted
wells allows artificial lift control parameters such as pump frequency in
ESP wells to be accounted for in optimisation.
Pump Controls Used to set the artificial lift quantity to a fixed value (for example, a fixed
operating frequency) or to becCalculated by the optimiser. This section
can be accessed from the 'Controls' section
PC Data Use this to manually enter/visualise performance curve data, or to
generate the data from VLP/IPR intersections.
Gas Lift Control Used to set the artificial lift quantity to a fixed value (for example,a fixed
gas lift injection rate) or to be calculated by the optimiser. This section
can be accessed from the 'Controls' section
Production Data Enter/visualise the production data for the well, for decline curve
predictions.
Downtime Enter/visualise the percentage of time a well is offline.
Coning If the well has gas coning the input data may be specified in this screen
for each layer.
Schedule Enter/visualise the schedule for changing constraints, masking/ un-
masking wells during a prediction.

Apart from the screen inputs as described in the following sections, there are
various action buttons such as OK, CANCEL etc. that appear in these screens.
Their function is the same in every screen.

2.5.3.3.1 Tank Connections


This section contains the list of all the tanks (MBAL models) connected to the well.

1990-2012 Petroleum Experts Limited


197 GAP

Use the buttons <<<Add and Remove>>> to create connections or disconnect a well from a
tank.
2.5.3.3.1.1 Multi-Layer Case
In this case, it is simply required to make connections using the two list boxes. The
breakthrough constraints and perforation depths are entered in the Well IPR screen.

Connected tanks are assigned to single layers of the model automatically. The tank name,
which has been assigned to a specific layer, is displayed in the Well IPR Input screen.

2.5.3.3.2 IPR Input

This screen inputs the well inflow performance data on a per-layer basis.

For a multi-layer well, any number of separate inflow performances can be


modelled (a well model can be producing from as many distinct layers as
the well has in reality).

The IPR data can be transferred from PROSPER using the Generate function of
GAP. However, if the user chooses to enter the data manually then this can be

GAP User Guide August, 2012


User Guide 198

done as well.

IPRs can also be generated with different PROSPER files for each layer by
associating different PROSPER models to the "PROSPER file for IPR section".

The IPR data input is divided into four tabbed screens as shown in the example below.

These are:

Ipr Layer Individual layer input data like PI, reservoir pressure, temperature etc
More... Data for defining relative permeability and layer breakthrough (water / gas)
parameters
Prod Data Section defining the well GOR and WC (or WGR in the case of gas) versus
reservoir pressure or cumulative production. Only available if the decline
curve option is selected in the tank model.
Grid View Screen where a summary of all layers is tabulated and the individual IPR
data can be plotted against each other
Abandonment To define the conditions at which the layer is abandoned (production is shut
down)

1990-2012 Petroleum Experts Limited


199 GAP

The data input for all the four sections of the well IPR input us described below:
2.5.3.3.2.1 Ipr Layer input data

In this screen, the data required to generate the IPRs for each layer is entered. The data input
screen is divided into four sections:

Select
Inflow Performance Input
Fluid Properties Input
PROSPER File for IPR

Select
This section has the following sub-menus:

Layer Use this to select the layer for which data is to be entered. When the list is
List Box produced, each layer appears in the drop down list with "Invalid" or "OK",
representing the status of the IPR layer data.
Layer Type (Available only for multi layer IPR Producers except WATER producer
and injection Wells)
This can be Oil, Gas, Condensate or CBM NEW!!!. When a well is created,
the layer type is set to reflect the well type however the layer type can be
changed using the drop down list.
Mask It is possible to Mask or Disable the selected layer from the IPR using this
option.

Switching to the More Input Screen will display data related to the
layer that has been selected in the layer input screen.

Inflow Performance
The data items shown in this dialogue depend on the well type, the layer type and the prediction
(None / Material Balance / Decline Curve) mode. In a multi layer model, data may be entered in
this dialogue or in the IPR Input Grid View, which displays all layers simultaneously.

Tank In a multi layer model, this gives the label of the tank which is connected to
Connection the selected layer.

The layer-tank connections are assigned automatically when a tank is


connected to a well and are fixed throughout the life of the well. It is possible
that the tank may be assigned to a different layer if the user chooses to do
so.
IPR Type Select from the combo box the type of the IPR curve. The current choices
are:
Straight Line + Vogel (Oil and Water Producers / Water Injectors).
Per phase (All wells) NEW!!!
Forcheimer (Gas / Condensate Producers / Gas Injectors)
Forcheimer Pseudo-Pressure (Gas / Condensate Producers / Gas

GAP User Guide August, 2012


User Guide 200

Injectors).This method uses the classic Forcheimer equation solved


with a pseudo-pressure method rather than with a pressure square
method.
C and n (Gas / Condensate Producers / Gas Injectors)
Table Look Up (All wells)

The Table Look Up utility has been included in the IPR types for allowing
an easy link between GAP and Reservoir Simulators. It stores the IPR
information generated by the reservoir simulator as a table with oil, gas and
water rates as a function of flowing bottom hole pressure (FBHP). IT
SHOULD ONLY BE USED FOR THOSE APPLICATIONS.
IPR dP The IPR dP is used when the datum for the reservoir pressure in the well
model is significantly different to the datum used in the reservoir model. The
IPR dP can be used to correct the reservoir pressure coming from the
reservoir model to the well model datum.
Permeability (Production systems only & NOT for Table Look Up)
Correction This is used to correct the absolute permeability of the layer as the pressure
with Pressure declines in a prediction. Enter the quantity N in the equation:
N
kp k0 1.0 p0 p Cf

where, p is the layer pressure, kp is the layer permeability at pressure p , k0


is layer permeability at pressure p0 and Cf is the formation compressibility.
Cross Flow (Production systems only & NOT for Table Look Up)
Injectivity This is only applicable to multi-layer models. In cases where there is cross-
Index flow between layers, it is possible to specify an injectivity index to be applied
to the layer for when the cross-flow rates are calculated.

The crossflow injectivity index represents the rate of injection in the reservoir
should the bottom hole pressure be greater than the reservoir pressure. In
other words, the crossflow injectivity index represents the IPR curve for
negative flow rates therefore the smaller the value the easier it is to inject into
the layer.

If the value of the crossflow injectivity index is not specified, the rate of
injection in the reservoir will be governed by the Productivity Index (indicating
that the production capacity of the reservoir is the same as the injection
capacity).

If there has been any studies made on the injectivity index for a given
reservoir, then this may be used to define the Crossflow injectivity index. The
use of Crossflow Injectivity Index may lead to large cross-flow rates and
potential instabilities in any prediction run as these rates are held constant
over a time-step.

1990-2012 Petroleum Experts Limited


201 GAP

In the case of gas wells and retrograde condensate wells, the corresponding
IPR model (that is defined in the IPR type section) will be used instead of the
productivity index. Only the primary coefficient of the IPR description is
required in this case, the non-Darcy coefficient (or n) is set to zero.

A combination of high instantaneous rates and large timesteps


may cause large cumulative volumes of fluid to be transferred
between layers over the timestep. This will lead to unrealistically
large pressures changes to be calculated between the layers and
will make the model unstable. For wells with cross flow between
layers it is recommended to use small step sizes in prediction
mode.
IPR Match Selecting Match IPR on the IPR Input screen will display the following
dialogue:

Test Layer Pressure


When an IPR transfer from PROSPER is done, this screen is
populated with data from the PROSPER IPR section.

Test Water Cut


See the Relative Permeability Section that follows for more details
about how these values are used to apply correction factors to the
IPR.

Test Points
These fields hold the set of test points of measured rate and flowing
bottom hole pressure.

GAP User Guide August, 2012


User Guide 202

Rate and pressure data can be entered by hand, or pasted from the
Windows clipboard or directly from PROSPERs IPR screen.

Click Match and GAP will regress on the well productivity (or
injectivity) index and AOF (or whichever coefficients are required from
the IPR model) so that the IPR curve passes through the match points.
Click OK, and the P.I. and the rest of the data will be passed back to
the well IPR screen.

When an IPR is generated, the reservoir pressure and PVT


information (e.g. GOR, Water Cut) are used in the calculation of an
IPR.

Different results may be obtained in IPR generation when a tank is


connected to a well and thus uses the tanks PVT calculation,
compared to the situation where the well is isolated and GAP uses its
own calculation.

Gravel Pack GAP models Gravel Packed completions as in PROSPER. More


detailed information about this model is available in the PROSPER
user Guide.
When the IPR is generated from a PROSPER file that contains a
Gravel Pack completion, the Gravel Pack information is transferred
from PROSPER to GAP. It is then possible to sensitize on Gravel
Pack parameters from within GAP.
When the system is solved, GAP calculates the pressure drop across
the Gravel Pack (accessible under the layer results). It is then
possible to constrain the well production based on:
The maximum gravel pack casing velocity
The maximum gravel pack screen velocity
The maximum gravel pack delta P
Fluid (for producer wells)
Properties This section contains the fluid PVT properties, which are used during the
Solve Network calculation. The properties are updated automatically during a
Prediction, based on the data coming from the connected reservoir model
(which could be MBAL or a third party numerical simulator)

PVT Data Enter:


(NOT for Water Oil / Condensate API
Producers) Gas Gravity
Current Water cut/ WGR
Current GOR /CGR
Enter water Salinity
Impurity Data Mole % of CO2, N2, and H2S in gas phase

1990-2012 Petroleum Experts Limited


203 GAP

Use Tank (NOT for Prediction modes None & Decline Curve)
Impurities If the Use tank impurities box is checked, GAP will use the values from
MBAL tank model and the impurity input data will be made unavailable
PROSPER For multi-layer well, it is possible to import the specific PROSPER file
File for IPR corresponding to each specific layer. When the option "Generate | Generate
Well IPRs from PROSPER..." is used, GAP calls all the PROSPER files to
generate the different layers' IPRs in a batch.

The 'Composition' button allows the user to enter/visualise the composition for the well.

This is available when one of the compositional options are selected. Selecting the
'Composition' Button allows to visualise the fluid composition.

Use Original By ticking this box the original composition entered in the well IPR section
Composition will be used for the calculations, overriding any composition coming from
MBAL or the Working composition present in the well IPR section

GAP User Guide August, 2012


User Guide 204

The IPR Input windows contain the following action buttons.

The action buttons have been explained in detail previously 185 and have here exactly the same
role.

The following action buttons are particular to the Input section, and their roles are described
below:

Plot Plots the IPR plot for the current layer (or the well in a single layer model).
The Match data (if present) is also displayed. In the Grid View all of the IPR
of all layers and the total IPR of the well as well
Calculate Displays the IPR Calculation screen. This allows rates to be calculated from
flowing bottom hole pressures or vice versa based on the resultant IPR.
From MBAL See description below

From MBAL

It is possible to transfer data from existing material balance models to well models inside GAP.
Either the VLP, IPR and relative permeability data can be transferred across. This action button
takes the user to the screen that allows these parameters to be transferred.

1990-2012 Petroleum Experts Limited


205 GAP

On the left hand side, the MBAL files associated with the tanks in GAP are opened and lists of
either history or prediction wells can be displayed, depending on the option chosen.

On the right hand side, all of the GAP wells along with their layers are displayed.

The user selects a layer in the MBAL list and a layer in GAP list. This gives the following two
transfer options:

IPR To transfer the layer IPR


Rel Perm To transfer the MBAL layer relative permeability data

GAP User Guide August, 2012


User Guide 206

If the user selects a well on both sides the following transfer option is available as well:

VLP To transfer the VLP data from the MBAL prediction well to
GAP well

The actual data transferred will depend on the type of item selected in the MBAL list (e.g. tank
IPR data will include the tank starting pressure and PVT data, whereas well IPR data includes
the PI).

At the bottom of the MBAL item list, is a New Model File button. Pressing this gives the user
access to MBAL files that might not be associated with the current GAP model which can also
be transferred. Note that new files are not stored when the screen is cleared and must be
reloaded when going into the screen on subsequent occasions.

The details of data transferred using this facility are:

IPR This transfers IPR data from the MBAL item to the GAP
target. The data transferred is as follows.

From a tank:
Starting pressure
Starting temperature
Impurity data (% H2S, N2, CO2 & water salinity)
Gas gravity
Oil/condensate gravity
GOR/CGR

From a well:
PI (Darcy coefficients, C and n)
Layer type
PI Relative permeability correction (oil layers only)
Perforation depths
Breakthrough constraints
Match data
Test water cut / layer pressure
VLP Transfers lift curve data to the well in question. This is only
possible if the data has been imported into the MBAL well
model in *.tpd format
Rel Perm Transfers either the tank or the well relative permeability
depending on the source type.

1990-2012 Petroleum Experts Limited


207 GAP

2.5.3.3.2.2 More Layer Data


This is the second screen in the IPR input. It has the following sections:

Layer This is the place where the current layer is selected. This by default is the
Selection same layer as selected in the first screen
Relative (NOT for Injectors and Water Producers). See description below:
Permeability

Relative Permeability Section

The fields available are:

Prediction Here, we define the set of relative permeability curves that GAP uses for:
Fractional 1. Calculating water cut and producing GOR (CGR/ WGR in gas / Condensate)
Flow wells during prediction (Material balance).
Rel. Perm 2. Calculating the changes in the well PI due to WC and GOR (No prediction/
Material Balance/ Decline Curve). Effectively, as the WC and GOR change,
the fluid mobilities will be modified.

The Options available are:

From Tank Model (Available only for Material Balance Prediction). GAP
will take relative permeability and data from the tank associated with the layer
considered (MBAL Model).
From Rel Perm 1 or 2. GAP will use the relative permeability entered under
the Edit button. These rel perms can be entered by hand or transferred from
MBAL by means of the button From MBAL (located at the bottom right of the
screen). In both cases the relative permeability curves are defined as Corey
functions (ref. MBAL user Guide).
From Table 1 or 2(see below 209 ) the user can directly enter the WC and the
GOR as a function of time, pressure or cumulative production

Shift Rel The option "Shift Rel Perm to Breakthrough" is used to smooth the set of relative
Perm to permeabilities of water or gas, after the breakthrough occurs (see "Breakthrough
Breakthrou and Perforation Depths" section hereafter). If this option is turned off, and the gas
gh breakthrough occurs at Sg,breakthrough>Sgr, the relative permeability of the gas goes
straight from zero to Krg_0 (cf. following sketch) creating a step change in
mobility. Consequently, this step change in mobility can result in a sharp increase
in WC or GOR which may not be representative of reality.

GAP User Guide August, 2012


User Guide 208

To prevent this from happening the user has the option to "Shift the Rel Perm to
Breakthrough" which effectively translates the rel perm curve to the breakthrough
saturation.
PI If this option is set to Yes, the PI will be corrected based on the changing WC
Correction which is directly related to the change in mobility. A test-water cut and a test
for Mobility pressure must be entered.

The test water cut, reservoir pressure and temperature are used to determine the
water saturations (Sw ) and oil and water viscosities. The oil saturation (So) is
calculated as described in the Vogel correction depending on the options as
indicated later.

With the use of relative permeability curves, the test mobility can be calculated
from:

K rw K ro
M test
w o

At a particular reservoir pressure and water cut, the current mobility (M) can be
calculated using a similar formula. Based on the two calculated mobility values,
the corrected productivity index will be:

M
PI PI test
M test

And this value of corrected PI will be used to generate the new IPR
Vogel (Available Only for Oil wells with Mobility correction for PI on)
Correction If this option is set to Yes, the relative permeability values that are used for PI

1990-2012 Petroleum Experts Limited


209 GAP

for GOR mobility corrections are calculated using the effect of reduced oil/water relative
permeability caused by the presence of free gas down hole. It requires the entry of
a test GOR value which refers to the total produced GOR.

The PVT, Test WC and GOR are used to calculate the downhole fractional flow
ratios (Fw and Fg). The saturations that satisfy the fractional flow ratios and the
relationship

So 1 Sw Sg

Are then used to calculate the mobility. The corrected PI is estimated from the
total liquid mobility ratios as indicated above.

In case this option is set to No


The oil and water mobility values are calculated on the basis of the assumption
that the free gas down hole is zero. In the this case only the Test WC is required to
determine the fractional flow of water (Fw ). The saturations that satisfy the Fw and
the expression

So 1 Sw

are used to determine the mobility. Based on these phase saturations, the
mobility ratios can be calculated and the PI correction can be applied.

It is important to note that two different sets of rel perms can be defined for the
fractional flow prediction and for the mobility correction (Rel Perm 1 and Rel Perm
2).

Breakthrou (ONLY for Material Balance Prediction)


ghs and The breakthrough saturation can be defined on the basis of:
Perforation Gas Saturation or Gas Contact (Oil layers only). As soon as the Oil-
s Water contact or Gas-Oil contact predicted by MBAL reach the specified
depths the breakthrough is triggered and the respective phases can flow.
Water Saturation and Water Contact (OIL / GAS/ CONDENSATE layers).
Oil Saturation (CONDENSATE Layers ONLY).
Top and bottom perforation depths (Perforation depths are currently
used only when performing gas coning calculations)

Entering the Fractional Flow rel perms as Tables


It is possible to enter directly the profile of WC and GOR (or WGR for gas) as a function of time,
reservoir pressure or cumulative production. To do this, select from the drop down menu the
option "from Table 1 or 2", as shown below:

GAP User Guide August, 2012


User Guide 210

Accessing the 'Edit' button will allow the user to enter the required fractional flow table:

In the primary column section select the basis for the fractional flow curves (time, pressure or
Cumulative Production).

2.5.3.3.2.3 Production Data


This option is active only when the "Decline Curve" 348 option is selected in the tank model. For
running predictions, GAP requires the current GOR and Water Cut for each well in order to
calculate the well behaviour for some future condition. When running a prediction using decline
curves GAP interpolates from a table of GOR and water cut as a function of reservoir pressure,
which must be entered for each well.

If the 'Decline Curves' option is active then the "Prod. Data" tab becomes available and the data
is entered as shown below.

1990-2012 Petroleum Experts Limited


211 GAP

Select the layer for which to enter the production data from the list box at the top of the screen.
For single-layer wells, only one layer is available. If there are multiple layers then GAP requires
production data entered for every layer associated with the well.

The required input fields are:

Current Reservoir pressure at which to evaluate the GOR and Water Cut
Layer Pressure
Interpolate on Curves can be expressed either as a function of Reservoir Pressure or
Cumulative Production.

Action Buttons:

Calculate Calculates the water cut and GOR for the Current reservoir pressure

GAP User Guide August, 2012


User Guide 212

Plot Displays the production data in graphical form. Use 'Variables' on the 'Plot'
screen to switch between GOR and water cut.

2.5.3.3.2.4 Tight Gas IPR


As opposed to the other pseudo-steady state IPR models, the Tight Gas IPR model is transient
and is based on type curves. As the model is transient, a complete description of the rate history
is required along with the reservoir model (for example, a bounded fractured reservoir which is
the PD function)

The reservoir model is created within the well IPR section, and therefore the
'Tight Gas' well cannot be linked to any reservoir models in GAP.

The 'Tight Gas' model is selected from the Summary section of the well screen, as shown below.

1990-2012 Petroleum Experts Limited


213 GAP

IPR Layer section


The inputs required for the IPR section of the 'Tight Gas' well are:

Where, in addition to the fluid properties entries:

The reservoir characteristics are entered separately for each well. Note that the drainage area
radius entry should be a result of a Type Curve Analysis, that can be carried out in MBAL. An
example of a type curve characterisation is given in the MBAL manual.

The Darcy (S) and Non-Darcy Skins (D) are the skins relating to the transient inflow equation:

n
1442T
m Pi m Pwf Qj Qj 1 PD t dn t dj 1 SQn DQn2
kh j 1

The "Current Time" input data is only used when the network is solved at a particular date. In
that case, the time since the production started is calculated based on the difference between
the "Current Time" entered and the "Start of Production" entered. For prediction runs, the time
since production started is calculated based on the current prediction time.

The time can be considered as "Normal Time", "Pseudo Time (Pwf)" or "Normal Time (Pbar)".

GAP User Guide August, 2012


User Guide 214

The dimensionless time td in the equation above is:

0.000264 kt
td 2
ct i rw

where the subscript i refers to the evaluation of these parameters at the initial pressure. The
time t can be considered as either the

The "Normal time" (time since the production started)

The "Pseudo Time (Pwf)":


t
dt
t ct i
t0
ct Pwf

where the subscript Pwf refers to the evaluation of these parameters at the bottom hole
pressure.

The "Pseudo Time (Pbar)":


t
dt
t ct i
t0
ct P

where the subscript P"bar" refers to the evaluation of these parameters at the average
reservoir pressure.

More information about this model and its theory can be found in the MBAL User Guide.

PROD DATA section

In this section, the production history is entered. It will be used to update the IPR for the first
timestep of the prediction.

1990-2012 Petroleum Experts Limited


215 GAP

2.5.3.3.2.5 Grid View


This screen also has the summary of all layer IPR data entered. The column headings are the
same as those displayed in the basic IPR Input screen (multi-layer case). To display total IPR
plots for a multi-layer well, go to the IPR Grid View and press Plot from that screen. This will
display the plots for the individual layers, as well as the overall IPR for all the layers.This is only
available in a multi-layer well model.

Action Buttons

Plot Plots the total well IPR, in addition to the individual layer IPRs for all valid
layers.

GAP User Guide August, 2012


User Guide 216

Calculate Invokes the IPR Calculation screen. This performs rate and bottom hole
pressure calculations based on the total well IPR (not the individual layer
IPRs).
Report Invokes the standard GAP report generator. This produces a report for the
total well IPR in addition to the individual layer IPRs (valid layers only)

2.5.3.3.2.6 Abandonment Section


This section is where the abandonment constraints (i.e. maximum GOR, maximum WC,
minimum Liquid Rate) for the well or the individual layers are entered. If these abandonment
constraints are met during the prediction, then the well or layers will be disabled by GAP for the
entire duration of the prediction without the option to schedule them to come back on.

1990-2012 Petroleum Experts Limited


217 GAP

Wells can be abandoned based on:

Maximum Gas Oil Ratio


Maximum Water Cut
Maximum Water Gas Ratio
Minimum Liquid Rate
Minimum Oil Rate
Minimum Gas Rate

2.5.3.3.2.7 Note on water injector's IPR


The IPR screen displayed for the "water injector" well is shown below.

GAP User Guide August, 2012


User Guide 218

The "Frac PI" and "Frac dP" input data are entered to model fractures. The following IPR sketch
illustrates how these two values are taken into account.

1990-2012 Petroleum Experts Limited


219 GAP

Bottom Hole Pressure

Fractured dP
i.e. Frac dP

Normal PI Fractured PI
Initial Reservoir i.e. P.I. i.e. Frac PI
Pressure
Water Rate

The normal P.I. entered or calculated (if the IPR is generated from PROSPER) is used up to a
bottom hole pressure equal to the initial reservoir pressure + the entered Frac dP value. From
this point on, the Frac PI is used.
2.5.3.3.3 VLP Input
This screen allows the user to specify the data file that contains the VLP tables of the well. If the
table does not exist, it can be generated using the using GAP. Details on the VLP generation
are given in the VLP/IPR generation 447 section.

The screen appears as follows:

GAP User Guide August, 2012


User Guide 220

In this screen, the following input fields are available:


VLP File Name
Turn off if unstable
Force Left Hand Side Intersection (Solver)
Allow Left Hand Side Intersection (Optimiser)
Safe VLP/IPR intersection
Import/Export
Inspect
Generate
VLP Information

VLP In this field, a valid vertical lift performance (VLP) file is required. The
File Name data file is a binary file. The file can be loaded/generated in the following
ways:

1990-2012 Petroleum Experts Limited


221 GAP

1. Using the "Import" button as shown. This button allows import of


the following lift curve formats:
*.TPD Petroleum Experts General GAP/ MBAL Format.
(These can be generated in PROSPER well models).
*.MBV Petroleum Experts MBAL Format. (These can be
generated in PROSPER well models).
*.ECL Eclipse Format. (Generated by any nodal analysis
well modeling package).
*.VFP Eclipse Format. (Generated by any nodal analysis
well modeling package).
Once files with this format are imported, GAP automatically
creates a *.VLP file and saves it for its own use.

2. Using the "Browse" button to pick up an existing VLP File.

3. Using the "Generate" button. This Generate button is a shortcut to


the GAP main VLP generation menu.

4. Using the "Generate VLP from PROSPER" command in the


Generate menu which can be accessed from the main screen to
batch generate the lift curves for all the wells in the model with
valid PROSPER files.

The label alongside the VLP file names will read either OK or Invalid.

An invalid flag means that an invalid file has been selected (e.g. a
gas VLP for an oil well) or that the path name is incorrect.
Import Imports VLP files of various formats into GAP (see above.)
Export A VLP table can be exported as a *.tpd file for use in other wells or
applications.
Turn off if This option closes the well as soon as the well becomes unstable (when
unstable the VLP and IPR intersect on the left-hand section of the VLP)
Force Left Selecting this option will force the solver to select the well rates
Hand Side (calculated by VLP / IPR intersection) on the left hand side of the
Intersection minimum stable rate as indicated by the VLP. The two plots below
(Solver) illstrate the concept.

Right hand intersection: Stable Well Production

GAP User Guide August, 2012


User Guide 222

Left hand intersection: Unstable Well Production

Allow Left Checking this option will allow the optimiser to use the unstable part of
Hand Side the lift curve in the search for the optimum solution. This can be the case
Intersection in wells which are coning gas for instance, where a higher Well Head
(Optimiser) Pressure will result to higher liquid rates (as the cone is eliminated)
Safe This is a new feature in GAP 5.0 and is an improvement in the case of

1990-2012 Petroleum Experts Limited


223 GAP

VLP/IPR complex lift curves (primarily for gas coning wells). As the GOR for these
intersection lift curves is a function of the liquid rate (and given by the coning model),
this intersection method provides a much safer way of getting an
intersection than the default method. It is, however, much slower than the
default method and should only be used when absolutely necessary
Inspect This option allows the user to view the tables of VLP curves and also to
plot them curves which can be used to quality check the sets of VLPs.
Generate This option accesses the VLP generation dialogue (see below 466 )
VLP Information In this section information concerning the VLP curves used are
displayed:
Type of well (indication of the VLP format)
Calculated Variables (sensitivity variables included in the VLPs
Surface and Vertical Correlations used to generate the VLPs
(including the matching parameters)

When a new well model is constructed, it is recommended to go through the


Generate menu option as this ensures that the VLPs are representative of the well
model and the correct variable formats are used.

.
2.5.3.3.3.1 Inspection of VLP Data

The VLP data that is associated with the VLP file can be inspected manually by selecting the
"Inspect" button from the VLP Input screen.

GAP User Guide August, 2012


User Guide 224

This is a lookup table of the VLP results. The left and right hand columns give the VLP curves for
the variable parameters highlighted (in reverse video) in the central columns.

The data presented can be edited. It may be exported into a performance data file by pressing
the 'Export' button which produces a file browser that can be used to navigate the appropriate
file destination.

The variables that are a part of the VLP file depend on the type of well. For
example this is a naturally flowing oil well VLP table.

It is recommended to check the VLP data manually before, running the


prediction cases in order to check the data validity.

On this screen, there are a few action buttons. These are:

OK Validate and go back to the previous panel


Cancel Disregard all changes and go back to the previous panel
Validate To visualise eventual out-of-range data
Plot The "Plot" button can be used to plot multiple VLP curves and to verify the
quality of the curves.

1990-2012 Petroleum Experts Limited


225 GAP

The 'Variables' menu can be used to select which sensitivity variables to plot.

Help To visualise this panel

2.5.3.3.4 Well Constraints

2.5.3.3.4.1 General Constraints

Well constraints can be used to control a well to meet physical or contractual requirements.
Select the "Constraints" tab to view the available well constraints.

GAP User Guide August, 2012


User Guide 226

Maximum Rates are controlled based on this maximum temperature at the wellhead
Temperature
Minimum Well Well is shut in or choked back if the flowing bottom hole pressure falls below
Flowing this value
Bottom-hole
Pressure
Maximum Draw GAP will ensure that the drawdown (difference between reservoir and
Down bottom hole pressure) does not exceed the entered pressure.
In a snapshot calculation, the reservoir pressure entered in the IPR section
will be used to calculate the constraint. In a prediction run, the reservoir
pressure will continually be recalculated for each time step.
In the case of a multi-layer well, the reservoir pressure reference is taken
from the extrapolation of the total IPR to zero rate
Well This is a multiplier that is used on the well production during the optimisation
Optimisation process.
Weighting
Maximum (Not for gas wells)
Liquid Well production cannot exceed this maximum. Naturally flowing wells will be
Production / choked back using 'dP Control' if necessary to meet the maximum rate
Injection constraint. Artificially lifted wells will be controlled using both 'dP control' and
artificial lift specific controls to meet the maximum rate constraint
Minimum (Not for gas wells)
Liquid GAP will try to produce this minimum rate irrespective of oil rate
Production / optimisation considerations.
Injection Rate
Maximum Gas (Gas Wells)
Production / Sets upper production limit for the well considered

1990-2012 Petroleum Experts Limited


227 GAP

Injection
Minimum Gas (Gas Wells)
Production / GAP will try to produce this minimum gas rate irrespective of optimisation
Injection considerations
Binding This option can be used to set whether a particular constraint is binding or
(Yes / No) not (see binding/not binding topic 146 )
Potential Includes or excludes the constraint in the potential calculations
(Yes / No)

GAP has the capacity to optimise the production from gas lifted wells by altering the
amount of gas lift gas injected into the well. If the gas lifted control has been
selected (refer to the Gas lift control 233 section) the constraints screen will display
new constraints relevant to gas lifted wells.

The following constraints are available for gas lifted wells control:

Maximum gas GAP will not inject more gas lift gas than the entered amount
injection rate
Minimum gas GAP leaves the well shut in unless it deserves at least this volume of
injection rate gas to optimise production
NO-CLOSE Forces GAP to allocate this volume of gas irrespective of whether the
minimum gas well should be allocated gas to optimise production or not. Used to
injection rate model particular field operating practices e.g. to ensure flow stability

GAP has the capacity to optimise the production from diluent injection wells by
altering the amount of diluent injected in the well. If the diluent control has been
selected the constraints screen will display new constraints relevant to diluent
injected wells.

The following constraints are available for diluent wells control:

Maximum Used to set field operational limits for diluent injection


diluent rate
Minimum GAP leaves the well shut in unless it deserves at least this volume of
diluent rate diluent to optimise production

GAP has the capacity to optimise the production from artificially lifted wells that use
pumps to provide the supporting energy. The constraints screen will change

GAP User Guide August, 2012


User Guide 228

according to the type of artificially lifted mechanism in question (i.e. HSP, ESP etc)

The following constraints are available for pump lifted wells:

Maximum Pump Frequency (ESP Wells)


Minimum Pump Frequency (ESP Wells)
Maximum Power Fluid Rate (HSP and Jet Pump Wells)
Minimum Power Fluid Rate (Jet Pump Wells)
Maximum Speed (HSP, PCP and SRP Wells)
Minimum Speed (HSP, PCP SRP Wells)
Maximum motor power
Minimum motor power
Maximum power fluid surface pressure (HSP wells)

As for natural oil producers these constraints are available through the Constraints | General
screen.

An additional feature in GAP is the ability to incorporate the performance limits of the pumps
which would be provided by the manufacturer (i.e. the upthrust/downthrust limits of an ESP
pump). These can be entered in the form of a table.

The following tables can be entered, according to the type of artificial lift system selected:

Table of Operating Frequency vs. Minimum Pump Rates (ESP Wells)


Table of PCP Speed vs.Minimum Pump Rates (PCP Wells)
Table of SRP Speed vs.Minimum Pump Rates (SRP Wells) NEW!!!
Table of Power Fluid Rate vs. Minimum Pump Rates (Jet Pumps Wells)
Table of Rotational Speed vs. Minimum Pump Rates (HSP Wells)

To enter these constraints tables, click the "Pump" subsection tab from the 'Constraints' menu,
as illustrated below for an ESP Well.

1990-2012 Petroleum Experts Limited


229 GAP

2.5.3.3.4.2 Abandonment Constraints


Abandonment constraints can now be set from the data entry screen and on a per-
layer basis.

To enter abandonment constraints, click the 'Abandonment' tab of the constraints screen. On the
resulting screen, the user may enter abandonment constraints for the entire well or for individual
layers (in the multi-layer model).

Abandonment constraints are used as criteria to shut the well in during a prediction run. For
example, if one sets a maximum GOR abandonment constraint then the well will be shut in
during a prediction run if the produced GOR exceeds this value.

The following abandonment can be set:

Maximum GOR
Maximum WC
Maximum WGR
Minimum Liquid Rate
Minimum Oil Rate

GAP User Guide August, 2012


User Guide 230

Minimum Gas Rate

2.5.3.3.4.3 Symbols
When setting 'Constraints', the program will plot in the network picture two arrows pointing
towards the element.

General red arrows pointing to the element


Constraints
Abandonment blue arrows pointing to the element
Constraints

2.5.3.3.4.4 Notes on Constraints


When setting up the model, it is recommended to start with the minimum necessary
number of constraints. This is because from a mathematical perspective, increasing
the number of constraints drastically complicates the optimisation problem.
Keeping constraints to a minimum allows the user to validate and ensure that the
model is performing as it is supposed to. After the validation, the number of
constraints can be increased if necessary. However the user should always try to keep
the number of constraints to a minimum by only including constraints that reflect true
restrictions or contractual obligations in the field. This is to prevent unnecessary
complexity and moreover to prevent unfeasible problems from being created.

If the objective is to shut down a well if it cannot produce a minimum rate, then this can
be achieved by setting up an 'Abandonment Constraint' of minimum rate in the'
Abandonment' section. As soon as the well production decreases below the set
minimum abandonment constraint, the well will be automatically closed by GAP.
2.5.3.3.5 Controls
The Controls section allows the user to specify choke settings and artificial lift controls (in the
case of an artificially lifted well).

1990-2012 Petroleum Experts Limited


231 GAP

2.5.3.3.5.1 Symbols
When activating a control (dP Control or Artificial Lift quantity control) the program will display
the following symbols in the network.

dP Control A thin solid red circle is set around the well icon.

If the circle is dashed the control is a 'Fixed Value'. If there is no circle


then there is no control on the well.
Artificial Lift A thin red square (rounded at the edges) is set around the well icon.
Control If the square is dashed, the control is set to 'Fixed Value'
If the square is solid, the control is set to 'Calculated'

2.5.3.3.5.2 dP Control
The "Control" section is where the well head choke controls are applied and in the case of
artificially lifted wells where the artificial lift controls are applied.

GAP User Guide August, 2012


User Guide 232

dP Control options

None There is no choke at the wellhead. Equivalent of having the well fully open
Fixed Value Allows the user to enter a fixed dP at the wellhead to model the effect of a
choke. The fixed pressure option applies the quantity specified in the field
as the wellhead choke dP.
Calculated GAP optimiser is used to calculate the pressure loss in the wellhead
choke to maximise production from the whole network while at the same
time honouring constraints.

The choke defined in this section is at the end of VLP curves. If the curves include
pressure losses up to the wellhead, the choke is at the wellhead level. If the curves
include pressure losses in the downhole equipment and a flow-line up to a
manifold, the choke is then considered to be at the end of flow line.

In the 'Calculated' option , the results screen has a choke calculator, which allows the user
to estimate the choke setting that corresponds to the dP calculated using the Perkin' s
choke model (SPE 20633).

1990-2012 Petroleum Experts Limited


233 GAP

2.5.3.3.5.3 Gas Lift Control

Gas Lift Control

Control Mode (Fixed / Calculated)


The gas lift gas rate injected into the well can be controlled by GAP by
setting the control mode field to "Calculated".

A range for the minimum and maximum gas lift gas injection rate can also
be specified
Fixed Gas The value of gas lift gas injection rate that GAP will use in calculations for
Lift Gas fixed gas lift gas rate.
Injection Rate
Fluid Properties The fluid properties of the injected gas lift gas are specified here. If a
compositional PVT modeling option is enabled then the composition of
the injected gas can be entered.

GAP User Guide August, 2012


User Guide 234

2.5.3.3.5.4 ESP Control

ESP Control

Frequency (Fixed / Calculated)


Control The operating frequency of the pump can be controlled by GAP by setting
the control mode field to "Calculated".

A range of minimum and maximum ESP frequencies can also to be


specified.
Fixed The value of fixed operating frequency of the pump that GAP will use in
Frequency calculations for fixed frequency control.

1990-2012 Petroleum Experts Limited


235 GAP

2.5.3.3.5.5 Diluent Control

Diluent Control

Control Mode (Fixed / Calculated)


The diluent rate injected into the well can be controlled by GAP by setting
the control mode field to "Calculated".

A range of minimum and maximum diluent rates can also be specified.


Fixed Diluent The value of fixed diluent rate that GAP will use in calculations for fixed
Rate diluent injection rates.
Fluid Properties The fluid properties of the diluent used can be specified.

GAP User Guide August, 2012


User Guide 236

2.5.3.3.5.6 Diluent Control with Gas Injection

Diluent Control

Control Mode (Fixed / Calculated)


The diluent rate injected into the well can be controlled by GAP by setting
the Control Mode field to "Calculated".

Minimum and Maximum gas injection rates need to be specified.


Fixed Diluent/Gas The value of fixed gas injection rate that GAP will use in calculations, for
Injection Rate fixed gas/diluent injection rates.
Diluent Rate The rate of diluent injection expressed as a fraction.
Fluid Properties The fluid properties of the diluent used can be specified.

1990-2012 Petroleum Experts Limited


237 GAP

2.5.3.3.5.7 SRP Control

SRP Control

Speed Control (Fixed / Calculated)


The operating speed of SRP wells can be controlled by GAP by setting
the Control Mode field to "Calculated".

Minimum and Maximum pump speeds need to be specified.


Fixed Speed The value of pump speed that GAP will use in calculations, for fixed
speed control.

GAP User Guide August, 2012


User Guide 238

2.5.3.3.5.8 HSP Control

HSP Control

Control Mode (Fixed / Calculated)


The rotational speed in HSP wells can be controlled by GAP by setting
the control mode field to "Calculate".

A range of minimum and maximum rotational speeds can also be


specified.
Rot.Speed The value of fixed rotational speed that GAP will use in its calculations
when running the pumps at fixed rotational speed.
Power Fluid Mode Specifies if the power fluid is commingled with the production fluid or in a
closed loop.
If the power fluid is commingled with the production fluid, its impact on the
pressure drop throughout the system will be taken into account (i.e. the
change in the fluid properties).
Fluid Injected The fluid properties of the power fluid used can be specified in this
section.

1990-2012 Petroleum Experts Limited


239 GAP

2.5.3.3.5.9 Jet Pump Control

Jet Pump Control

Control Mode (Fixed / Calculated)


The power fluid rate injected in jet pump wells can be controlled by GAP
by setting the control mode field to "Calculated".

A range of minimum and maximum power fluid rates can also be


specified
Fixed Power The value of fixed power fluid rate that GAP will use in calculations for
Fluid Rate fixed power fluid rate.
Power Fluid Mode Specifies if the power fluid is commingled with the production fluid or in a
(Available only in closed loop.
the Well Summary
screen) If the power fluid is commingled with the production fluid, its impact on the
pressure drop throughout the system will be taken into account
Fluid Properties The fluid properties of the power fluid used can be specified.

GAP User Guide August, 2012


User Guide 240

2.5.3.3.5.10 PCP Control

PCP Control

Speed Control (Fixed / Calculated)


The operating speed of PCP wells can be controlled by GAP by setting
the control mode field to "Calculated".

A range of minimum and maximum pump speeds can also be specified.


Fixed Speed The value of fixed speed that GAP will use in calculations for fixed speed
control

2.5.3.3.5.11 CBM Control


CBM wells can either be artificially lifted with either ESP's or PCP's and the controls are the
same as described in the previous sections.

1990-2012 Petroleum Experts Limited


241 GAP

The only difference is that the Casing Liquid Level must also be defined which is used to
calculate the casing pressure. Note that the application of the CBM wells is demonstrated in
the examples 984 .

2.5.3.3.5.12 Fluids Property Setup


For artificial lift systems associated with an injection/power fluid, it is possible to alter or modify
the fluid properties used in the 'Control' screen. Take for example the gas lift gas associated
with a particular well:

The 'Control' screen allows the user to change/define the gas lift source properties that are
associated with the well.

GAP User Guide August, 2012


User Guide 242

The source names are set up in the 'Injection Fluids' dialogue which can be accessed from the
'Options' menu. This menu can also be invoked by pressing the 'Edit List' button from the
"Control" screen.

Select the required gas lift source from the list of available injection fluids. The properties of the
source will be displayed for convenience in the 'Fluid Properties' area beside this option.

The composition of the source can be displayed by selecting the "Composition" button at the
base of the screen (when compositional tracking is enabled). This can only be edited through
the 'Injection Fluids' screen. The colour of the button indicates the validity of the source
composition.

2.5.3.3.6 PC Data
When the well mode is set to 'PC Interpolation' the 'PC Data' tab becomes available. This tab
contains all the information on the PC (ref. Summary screen for definition of PC 188 ), which can
be entered by hand or calculated on the basis of the well VLP/IPR.

1990-2012 Petroleum Experts Limited


243 GAP

The quality of the performance curves used can be verified by accessing the menu Results | Plot
Performance Curves, as shown in the following section 570 . This feature helps to validate if the
VLPs and IPR have been correctly generated.
2.5.3.3.6.1 PC Generation

This screen is used to generate a set of well performance curves using the VLP and IPR data
entered in the Well IPR Input 197 and Well VLP Input screens. It is called from the Well PC Data
screen from the 'PC Generation' button.

Input Fields

Reservoir The current reservoir pressure


Pressure
IPR dP Shift If enabled (from the Use IPR dP checkbox), offsets the reservoir pressure
used by the IPR
PVT Data These fields contains the PVT data for the IPR i.e. water cut, GOR, oil
gravity and gas gravity (for an oil well).
Manifold These fields contain the wellhead pressures used to generate the
Pressures performance curves. For non-gaslifted wells, clicking the Automatic WHP
button will allow PC generation using a set of pressures which cover the

GAP User Guide August, 2012


User Guide 244

wells operating range.

The reservoir pressure, PVT quantities etc. are the same as those
entered in the well 'IPR Input' screen.

Command Buttons

Generate Use this button to calculate the performance curves.


Ok Use this button to leave the screen and save all the changes that have
been made. The data generated in any 'Generate' process will be written
to the well PC input dialogue
Cancel Use this button to leave the screen and ignore any changes made
Help Use this button to access this screen

2.5.3.3.7 Downtime
This screen is where the well downtime is entered for a prediction run.

The cumulative production from the reservoir is calculated from the instantaneous rate multiplied
by the well efficiency factor (100% - down time).

Production constraints are evaluated using the instantaneous well rates.

2.5.3.3.8 Coning (For Oil Producers Only)


Coning of gas from a reservoir can be accounted for in the GAP well models.

Two scenarios are possible:


1. The well layer is not linked to any MBAL model. In that case one can directly switch the mode
from 'None' (no coning) to one of the coning options
2. The well layer is linked to a MBAL model. In this case, the mode option will be active only if
the coning model has been enabled in MBAL first.

See the MBAL manual for more information on the theory behind the gas coning models.

1990-2012 Petroleum Experts Limited


245 GAP

Layer Selection This list box contains a list of all valid layers, along with the name of the
tank to which they are attached, and whether or not gas coning is set up
in the tank model. Select from the list the layer which requires the coning
model.
Mode Select this check box to enable coning for the layer. Coning will then be
applied in the prediction, provided that the coning data is validated
successfully. Two options are available:

Analytic This option matches an analytical method to the profile of


liquid rate vs produced GOR
Lookup Table Allows the liquid rate vs produced GOR to be entered as a
table (Up to 10 points can be entered).

Perforation Depths These are the same variables that can be accessed from the "IPR |
More..." tab. Enter the top and bottom perforation depths for the well
relative to surface.
Gas-Oil Contact The gas-oil contact depth tracked in the MBAL model during a
prediction run overwrites this field. It may be used following a snapshot
reload, or whenever a performance curve is regenerated outside of a
prediction to adjust the gas-oil contact depth from the tank model.

GAP User Guide August, 2012


User Guide 246

Matching Data/Test These are used to evaluate the coning coefficients F2, F3, and the
Data exponent. Enter up to three match points (liquid rate against producing
GOR) and test values for gas-oil contact, water cut, and layer pressure.
When the "Match" button is selected, the values for the coefficients will
be entered automatically into the dialogue fields
Results The coning coefficients F2, F3, and the exponent may be entered by
hand (without performing a match). They must be present for the data to
be validated prior to performing a prediction run.
Note When the "Validate" button is selected, validation information for the
current layer will be displayed. The dialogue tab will be coloured
according to the validity of the entire data set. Any invalid or missing
fields in any layers will be picked up. Only those layers that have coning
enabled will be included in the validation.

2.5.3.3.9 Schedule (ONLY for Prediction)


Scheduling is used during the prediction to change the well constraints or to include or exclude
equipment in the system at a specific date during the forecast.

Since IPM version 6, it is possible to schedule any variable to be changed using the variable
OPENSERVER access string.

1990-2012 Petroleum Experts Limited


247 GAP

In order to obtain an OpenServer string the user can use CTRL+Right Click over any variable
and the OpenServer string along with the current value will be displayed.

For example, the OpenServer variable for the well water cut is displayed below.

GAP User Guide August, 2012


User Guide 248

2.5.3.4 Outflow Only Well


This method is a feature that offers greater flexibility in terms of modelling downhole networks
(multilayer systems and smart well completions). This option can be activated from the well
summary screen as shown.

Two methods are available for the Outflow only well:

VLP The dP along the wellbore is determined on the basis of VLP curves
PROSPER The dP along the wellbore is calculated using PROSPER online

These two options define the method by which the pressure drops in the Outflow part of the well
will be calculated, either using VLP tables or calculated on the fly using the PROSPER online
options. In the latter case, the well equipment and temperature options are defined inside GAP
and used whenever a pressure drop calculation needs to be performed as opposed to simply
looking up the pre-calculated pressure drops from the VLP table.

1990-2012 Petroleum Experts Limited


249 GAP

The IPR part of the well needs to be considered separately using an inflow icon, which is
described in the Inflow section 436 .

Only limited information is required in the outflow section related exclusively to the well outflow
performance(or VLPs). In the main GAP screen, the outflow only well is identified with the
following icon:

2.5.3.4.1 Outflow Only - VLP


If the VLP only case is selected then the well icon will only include the lift curves. In the 'Input
Data' section only data relevant to the outflow part of a well can be entered.

GAP User Guide August, 2012


User Guide 250

A VLP file can be imported if it already exists or can be generated using the "Generate" feature
from the GAP main screen (Please refer to VLP generation 466 section for details on the VLP
Generation).

The functions of this screen have already been explained in the previous section of this chapter.

2.5.3.4.2 Outflow Only - PROSPER


This option can be selected from the well summary screen.

The purpose of the Outflow Only PROSPER model is to enable the user to specify the well
equipment in GAP, take advantage of the advanced features within PROSPER (thermal and flow
assurance) or import from an existing PROSPER file. The pressure drops in the well bore can
then be calculated whenever needed by GAP rather than using a look up table.

There are two main advantages for using this method:

The advanced thermal and flow assurance options of PROSPER become available
in GAP for the pressure drop calculations.
The pressure drops are calculated with the PVT of the fluid that goes into the
wellbore, which may be changing over time. This is particularly useful in
multilayer systems in which the rate contribution from each layer changes
significantly over time (depending on the rate of depletion of each). When lift
curves are used, one can only assume the contribution of each layer and use

1990-2012 Petroleum Experts Limited


251 GAP

one set of PVT as the rate of depletion cannot be decided until a prediction is
carried out.

The well equipment can be setup in two ways, either imported directly from an existing
PROSPER file or entered directly in GAP.

2.5.3.4.2.1 Importing the equipment data from PROSPER


This can be done by selecting the "Import" button, as shown previously. The program will then
prompt the user with a file browser where an existing PROSPER file can be imported.

Selecting "Open" will automatically transfer the equipment data from the PROSPER file into the
equivalent screens in GAP.

GAP User Guide August, 2012


User Guide 252

The correlations used in PROSPER along with the corresponding match parameters will also be
transferred, as seen from the screen above. One can then go through the screens (starting from
the "Options" in order to validate that the data transferred is OK).

Selecting "Options" will prompt the following screen from within PROSPER:

1990-2012 Petroleum Experts Limited


253 GAP

In this screen the 'Options' selected in the PROSPER file can be viewed.

Moving to the PVT section:

GAP User Guide August, 2012


User Guide 254

The PVT used in PROSPER is transferred along with the PVT Matching parameters for the
different correlations.

The pressure drop calculations will be done based on the fluid entering the
well at every timestep. This PVT section is only used to match the
correlations that will subsequently be used to provide the PVT parameters
for the pressure drop calculations. The GOR and gravities entered here will
therefore be ignored during the calculations, only the matched (or original)
correlations will be used.

Following the PVT, the equipment section can then be accessed:

1990-2012 Petroleum Experts Limited


255 GAP

Here the user can specify the equipment which the pressure drop calculations will be based on.
This section is exactly the same as in PROSPER, with screens to enter the deviation survey,
surface equipment, the well equipment and geothermal gradient. Further screens will be made
available if the' Improved Approximation' or' Enthalpy balance' methods are selected.

Note on 'Surface Equipment' in PROSPER: There is no need to include any


surface pipelines in this section as they can be described separately in GAP. The
user has the option of including a single flow line leading from the well-head to a
manifold in either program depending on the objective of the model. However,
pipelines that carry fluid originating from more than one well need to be
described as separate GAP pipelines.

The next section is related to erosional velocities and solids transport. Selecting the Solids
button will prompt the following screen:

GAP User Guide August, 2012


User Guide 256

The variables in this section there are:

Density of sand Used to calculate the maximum grain diameter that can be transported
based on the velocities in the well.
Sand production Will be used to determine the erosional velocities in the pipe using the
rate and S factor Conoco model (Improvement to API14 E)
C factor Will be used to compute erosional velocities based on the API 14E
recommendation. A value of 400 is the default as opposed to 100
recommended by the API as this was found by various researches to be
overly pessimistic. The user can still modify this value accordingly.
Turner Constant Used for liquid loading calculations. Turner proposed this constant to be
20.4 but after extensive testing using our mechanistic flow correlations,
we have found that 2.04 gives much more realistic results

These constants can be left to their default values or changed depending on the users'
engineering judgement.

The last section in the PROSPER on line data has to do with matching of the pressure drop
correlations:

1990-2012 Petroleum Experts Limited


257 GAP

In the case where test data is available, this can be entered and all the quality check and
matching features of PROSPER can be utilised to quality check the data and match a correlation
to reproduce measured field data. More information is available on this topic in the PROSPER
User Guide.

Having finished this section, the well summary screen can now be revisited to ensure that all the
relevant information has been entered.

2.5.3.4.2.2 Entering The Equipment in GAP Directly


Selecting the "Edit" button as opposed to "Import" will allow the user to enter the well equipment
data directly into GAP without the need to specify a PROSPER file.

This "Edit" button will prompt the 'Equipment screen' and all of the related sections described
above which can be populated with data.
2.5.3.4.2.3 Completing the Outflow Only Well - Inflow Performance Setup
In order to complete an 'Outflow only' well, one or more corresponding inflows need to be
specified. One example of a two layered system is shown below:

GAP User Guide August, 2012


User Guide 258

An example of how to set up a model with inflow and outflow elements can be found in the
Examples Guide 765 .
2.5.3.5 Well Results Screen
This screen contains all the results from network solves and prediction runs for the selected well.
To switch between different well results, use the list on the right hand side of the summary
screen.

Network Solver The results screen is divided into two sections. The first is the network
Results Screen solver results associated with the previously solved network calculation.

1990-2012 Petroleum Experts Limited


259 GAP

Prediction The second is the 'Prediction' results which is only valid if a prediction
Results Screen run has been carried out:

GAP User Guide August, 2012


User Guide 260

2.5.3.5.1 Gradient Results


In the case where the well is modelled as an "Outflow only well PROSPER" well, the results after
a solve network or a prediction calculation will include a new option to view the gradient results.
This can be accessed from the results screen as shown.

Selection of this option will prompt the 'Gradient calculation' screen from PROSPER and display
the gradient traverse calculations.

1990-2012 Petroleum Experts Limited


261 GAP

This feature includes up to an additional 77 variables including


erosional velocity, hold-up, slip velocity etc.

2.5.3.5.2 Well Layer Results


In the case where the well is connected to more than one Layer (as in Well_A in the system
below).

The results can either be viewed as the total, which is the combined effect of all of the layers, or
the results can be viewed on a layer by layer basis. To visualise the layer results select the
"Layers" button from the "Prediction" tab.

GAP User Guide August, 2012


User Guide 262

This allows access to the results of each layer:

1990-2012 Petroleum Experts Limited


263 GAP

Crossflow is calculated based on the IPRs of each layer. A crossflowing layer will be
displayed with negative rates in the layer results.

2.5.3.5.3 Reporting Results


All the results can be exported in a variety of formats using the Report Button.

Selecting the "Report" button will prompt the following screen.

GAP User Guide August, 2012


User Guide 264

If results need to be exported to Excel, the "Clipboard" and "Tab Delimited" formats should be
selected. Selecting Run Report will then allow the program to place the results on the clipboard
which can then be pasted into Excel.

1990-2012 Petroleum Experts Limited


265 GAP

2.5.4 Separators (Production / Injection)

In GAP, separators are nodes where the pressure is fixed regardless of the rate going through
them. It does not necessarily have to represent an actual separator in the field. It can represent
any fixed pressure point in the system.

In a single GAP model there can be multiple separators defined, each with their own fixed
pressure value and their own independent constraints.

For systems with more than one separator, make sure that each separator has a
different name to enable easy identification in reports.

The pressure of the separator(s) is not specified in the separator element itself. It is
set under the 'Solve Network' or 'Prediction Forecast' screens. It is imperative that a
pressure is entered as it represents the boundary condition and cannot be solved
without it.

The following help section is valid for both production separators and injection manifolds. The
input screens do differ between the types of manifolds however the differences are explained in
the duration of the document.

Double clicking on the separator icon will provide access to the separator summary screen.
There are three sections, which are listed below:

Summary Screen This allows the selection of different separator types, and also gives
the status of various aspects of the separator input data.
Input Screen Includes tabbed screens for the following input fields:
Constraints
Separation ( Only for production separators)
Injection source ( Only for gas, water and steam injection
manifolds)
Schedule (Only if prediction selected in main option)
Results Screen Contains the following fields:
Network Solver Results
Prediction Results

The separated fluids can be picked up and sent through separate networks
to other separators. This operation can be done using sources connected
to the separator icon, as shown below. The source can be defined as
separator oil, gas or water to pick up the corresponding phases. This
means that up to three sources (one for oil, gas and water) can be
connected to a single separator.

GAP User Guide August, 2012


User Guide 266

2.5.4.1 Separator Summary Screen


When double-clicking on a separator in the system view, the main data entry screen initially
displays the separator summary screen as shown.

1990-2012 Petroleum Experts Limited


267 GAP

Input Fields

Label Maximum of 18 characters allowed. This defaults to the name supplied in


the label dialogue box when the separator icon was initially added to the
system. If blank, enter a short name or abbreviation to identify the icon on
the screen.
Name Maximum of 32 characters allowed. Use this field to enter a full or
descriptive name, if any, for the separator. This name will appear in the
reports generated by the allocation calculations.
Comments Enter any string of comments that gives more information about the
separator e.g. date brought on stream, etc.
Mask This option allows a separator to be added or omitted from the network
database and consequently the calculations. When the separator is not
to be taken into account in the system calculations, two options are
available:
Mask
Disable

Please refer to the section above 188 for description of these options.

GAP User Guide August, 2012


User Guide 268

Separation Type With this option the user defines whether the separator is
Production Separator
Water Injection Manifold
Gas Injection manifold
Steam Injection Manifold
Oil Injection Manifold
LNG Process Plant NEW!!!
Data Summary This field contains the summary of the data that is needed in the input
Area screens. This also indicates if the current data is valid or not. In the case
of an injection manifold there is an input field to define the source of the
injected fluid.

2.5.4.2 Separator Input Screens


The information required for the different input screens depends on the type of separator
(production or injection) and the type of prediction (None/ Material balance/Decline Curve).

The following sub-sections explain the details of these input screens.

2.5.4.2.1 Constraints
Constraint parameters are optional. They may be used to enter specific production, injection or
physical constraints at the separator. Selecting the constraints tab of the input data section will
display the following screen:

1990-2012 Petroleum Experts Limited


269 GAP

Constraints should not be entered until the entire GAP model has been validated against
measured production data (provided this is available).

Operational, environmental or mechanical constraints at the separator can be modelled by


entering the appropriate constraint values. When left blank, GAP assumes that there are no
constraints for this item. The program will not check that conflicting constraints have been
entered and it is important that the engineer takes care when applying them.

When constraints are active for any node in the system, the constraint symbol (two inward
pointing red arrows) is shown above the icon (see figure).

GAP User Guide August, 2012


User Guide 270

This is same for any other piece of equipment with constraints in the system.

The total list of of available constraints are as follows:

1) Maximum water production/ injection


2) Maximum gas production / injection
3) Maximum liquid production / injection
4) Maximum oil production / injection
5) Maximum LNG Production NEW!!!
6) Maximum condensate production NEW!!!
7) Minimum gas injection rate
8) Maximum power
9) Minimum pressure
10) Maximum pressure
11) Maximum CO2, H2S, N2
12) Minimum oil specific gravity
13) Maximum Gross Heating Value
14) Maximum Specific Gross Heating Value
15) Unscheduled production deferment

Separate constraints are available for the 'Total Gas' through the separator (i.e. sum of
produced and gas lift gas) or produced gas only. System constraints which refer to the total
combined production of all the separators in the system, are entered under Constraints | System
Constraints in the main menu. Please refer to the Constraints 143 tables section for details.

Use constraints with caution. It is recommended to review the notes on


constraints 230 provided in the manual before formulating the optimisation
problem.

1990-2012 Petroleum Experts Limited


271 GAP

2.5.4.2.2 Separation (PRODUCTION Separators ONLY)


This is required only for the production separators. At each separator it is possible to define the
proportion (expressed as either a fraction or a percentage) of the phases that are separated.

2.5.4.2.3 Plant Process (ONLY for LNG Process Plant)


NEW!!!
This input screen defines the relative proportions (expressed as either a fraction or a
percentage) of the fluid components that make up the LNG and the condensate.

GAP User Guide August, 2012


User Guide 272

Populate from This option will transfer all of the component names (i.e. C1, C2 etc.) from
solver results the solver results. The user can then enter the LNG fractions for each
component.
Populate from PRP This option will transfer all of the component names (i.e. C1, C2 etc.) from
file a .PRP file. The user can then enter the LNG fractions for each
component.
2.5.4.2.4 Schedule (ONLY for prediction)
Scheduling is used during the prediction to change the constraints or to include or exclude
equipment in the system at a specific date during the forecast. The application of schedules is
the same for every element in the system. Please refer to the section above 246 for a description
of the feature.
2.5.4.3 Injection Fluid Details (INJECTION Man.Only)
This is required for gas, water and steam injection systems. The properties of the oil/gas/water/
steam (quality) that are to be injected are specified in the list of injected fluids. If one of the
compositional PVT options is active then the user will also have the option to enter the

1990-2012 Petroleum Experts Limited


273 GAP

composition.

To modify the fluid properties select the "Edit List" button.

Note on "Steam Injection Manifolds":


The internal steam calculator will automatically calculate the saturation pressure and minimum
enthalpy given the injection temperature (inputted) and the steam quality (inputted in the fluids'
list).

GAP User Guide August, 2012


User Guide 274

2.5.4.3.1 Steam Injection Source

The steam Injection manifold is selected from the 'Separation Type' drop down menu.

A steam source needs to be created in the 'Injection Fluid' tab, using the "Edit List" button.

1990-2012 Petroleum Experts Limited


275 GAP

In this dialogue there is the option to create a fluid stream of steam. The quality of the steam
needs to be entered to define the thermodynamic state of the fluid.

The steam calculator can be used to calculate the steam properties at different conditions of
temperature, pressure and enthalpy. The steam calculator can been accessed either from the
Injection Fluids' window or from the Input | Fluid screen.

Steam Calculator

GAP User Guide August, 2012


User Guide 276

The option "Calculate Range" is used to calculate the steam properties over a range of different
pressure and temperature values. The option "Calculate Single" is used to calculate the steam
properties for a given pressure and enthalpy .

Calculate The following screen is used to enter the temperature and pressure ranges to
Range calculate the steam properties.

Press the "Calculate" button to access the calculator screen. Press


"Calculate" in the second screen to see the steam properties.

1990-2012 Petroleum Experts Limited


277 GAP

All the properties can be plotted using the "Plot" button.

Calculate Entering the pressure and enthalpy into the steam calculator will calculate the
Single steam properties at these conditions.

GAP User Guide August, 2012


User Guide 278

1990-2012 Petroleum Experts Limited


279 GAP

2.5.5 Joints

The joint is a point in the network where two or more pieces of equipment are connected. Each
joint is a calculation point within the GAP the network and the solver will try to achieve pressure
and mass balance at every node and joint in the system.

This following section describes the possible input options for joints.

Like any other equipment entry the joint data entry screen has three sections (as explained in the
Equipment data 180 section).

2.5.5.1 Joint Summary Screen


The summary screen appears in the main data entry screen when double-clicking on a joint in
the system window:

GAP User Guide August, 2012


User Guide 280

The summary screen for all of the equipment nodes are similar and as such its contents do not
need to explained here. Please refer to the Separator Summary 266 screen section for further
details.

Lumping Rule (Present only when Compositional PVT is enabled) It defines which lumping
rule is adopted for the fluid flowing through the joint

2.5.5.2 Joint Input Screen


The various input categories are displayed in the tabs at the bottom part of the screen. Navigate
through the input screens by clicking on the appropriate tab.

The tabs conform to a general colour-coding scheme which is consistent throughout GAP.

Green indicates that the data associated with the screen is valid
Red indicates that the data is not valid.
When the tab is greyed out, the tab is not accessible.

1990-2012 Petroleum Experts Limited


281 GAP

2.5.5.3 Joint Constraints

Joint constraint parameters are optional. They may be used to enter the specific production
constraints of a joint and the pipeline it feeds into. Joint constraints are entered on the following
dialogue box:

Enter the maximum levels of production that GAP can use while optimising production. These
are usually determined by the physical or mechanical constraints of the manifold or associated
pipes.
When left blank, the program assumes there are no constraints for this item.

The full list of constraints that may be set is:


1) Maximum water production/ injection
2) Maximum gas production / injection
3) Maximum liquid production / injection
4) Maximum oil production / injection
5) Minimum gas injection rate
6) Maximum power
7) Minimum pressure
8) Maximum pressure

GAP User Guide August, 2012


User Guide 282

9) Maximum CO2, H2S, N2


10)Minimum oil specific gravity
11)Maximum Gross Heating Value
12)Maximum Specific Gross Heating Value

Use constraints with caution. It is recommended to review the notes on


constraints 230 provided in the manual before formulating the optimisation
problem.

2.5.5.4 Schedule
Scheduling is used during the prediction to change the constraints or to include or exclude
equipment in the system at a specific date during the forecast. The application of schedules is
the same for every element in the system. Please refer to the section above 246 for a description
of the feature.

1990-2012 Petroleum Experts Limited


283 GAP

2.5.6 Pipelines

Pipeline connections are represented by blue pipe segments drawn across the centre of the line
connecting two joints.

A pipeline is created by connecting two joints together (refer to Case 1 in


the figure below). One joint is needed to specify the beginning of the pipe
and another for the end.

Connections between joints and elements have no input screens. For example, a connection
between a joint and an injection manifold (refer to Case 2 in figure below). For GAP calculations
there are no pressure drops across these types of links.

The figure below attempts to reinforce the above statements. Case 1 illustrates a link between
two joints which creates a pipeline element. Provided there is a pipeline description then GAP
will calculate a pressure drop across this type of link. Case 2 shows the link between a joint and
an injection manifold. In this case there is no associated pressure drop in the calculations.

The pipeline data entry/results screen has three sections (as explained in the Equipment
Summary section 180 ).

Summary This screen provides a summary of the method used to calculate pressure
Screen drops, the input data and the flow correlation in for the pipeline. See the
following section for further details
Input Screen Depending on the calculation method used, the required input data will
change. Please refer to the sections below on the data required for each
method
Results Contains the following fields:

GAP User Guide August, 2012


User Guide 284

Screen Network Solver Results.


Prediction Results

2.5.6.1 Pipeline Summary Screen


The pipe summary screen is displayed by default when double-clicking on a pipe icon in the
system window.

Input data

Label Maximum of 18 characters allowed. This defaults to the name supplied in


the label dialogue box when the pipe element was initially added to the
system. If blank, enter a short name or abbreviation to identify the icon on
the screen.
Name Maximum of 32 characters allowed. Use this field to enter a full or
descriptive name, if any, for the pipeline. This name will appear in the
reports generated by the allocation calculations.
Mask This option allows a pipeline to be added or omitted from the network
database and consequently the calculations. When the pipeline is not to

1990-2012 Petroleum Experts Limited


285 GAP

be taken into account in the system calculations, two options are


available:
Mask
Disable

Please refer to the section above 188 for description of these options.
Comments Enter any string of comments that gives more information about the
pipeline e.g. date brought on stream, etc.
Pipe Type Pressure drops in the pipe can be calculated using three options (see
below). One can use; the internal correlations of GAP, PROSPER on line or
lift curves. Options on the summary screen will change depending on the
method used. The following sections will describe each of these in detail

Pipe Type
Pressure drops in the pipe can be calculated using three options.

GAP Internal Multiphase flow correlations are used for the pressure drop calculation.
Correlations This is the recommended modelling approach.
Lift Curves Sets of VLP curves can be imported (for example from PROSPER or from
GAP Internal Correlations themselves)
PROSPER on line PROSPER is called from GAP and is used for the pressure drop
calculations.

Options on the summary screen will change depending on the method used. The following
sections will describe each of these in detail.
2.5.6.2 GAP Internal Correlations

GAP User Guide August, 2012


User Guide 286

The GAP Internal Correlations calculation method is the recommended approach for
modelling pipelines in GAP.

This method calculates the pressure drops on the fly using the internal PVT and pressure drop
correlations of GAP.

Correlation Select from the drop-down list the correlation to use in the calculation of
the pressure drops. In the presence of match data, then the correlation
selection will depend on the correlation that gives the closest match.
Correlation These fields display the gravity and friction coefficients that are used in
Coefficients the calculation of pressure drops. These coefficients are calculated when
the user performs a 'Match' calculation. For the ideal case of a
correlation that matches the measured data exactly then both
parameters should be 1 (the coefficients are multipliers).
Oil Viscosity The oil viscosity correlation can be selected for each pipeline
Correlation independently of the default oil viscosity correlation specified in the
'System Settings' (Edit | System Settings). The following correlations are
available:
Beal et al

1990-2012 Petroleum Experts Limited


287 GAP

Beggs et al
Bergman-Sutton
Egbogah et al (Heavy Oil)
Petrosky et al
Oil Pb, Rs, Bo The Bubble Point, Solution Gas Ratio, and Oil FVF correlations can be
correlation selected for each pipeline independently of the correlations entered by
default under the 'System Settings' (Edit | System Settings). The
following correlations are available:
Al-Marhoun
Glaso
Lasater
Petrosky et al
Standing
Vasquez-Beggs
Gas Viscosity The gas viscosity correlation can be selected for each pipeline
Correlation independently of the default gas viscosity correlation specified in the
'System Settings' (Edit | System Settings) The following correlations are
available:
Carr et al
Lee et al
Emulsion It is possible to account for the effects of emulsion on fluid viscosity by
ticking the 'Emulsion' box. Once selected, a list can be accessed and
edited, that takes into account any emulsion viscosity data.
Lumping (active only when compositional model is enabled) This option allows the
Calculation user to specify which composition to use for the main calculation. if
Mode <System Default> is selected, the program will use the Lumped or the
De-Lumped composition as specified in the menu Options | Method
Data Summary This shows the status of the various aspects of item data which are
Area described in the following sections.

2.5.6.2.1 Pipe Input Data


If the link is to be used to calculate the pressure drop along a section of pipe then a description
of the pipeline geometry is required. If the calculation method is set to "Pressure and
Temperature" in the main Options screen 78 then pipe Environment data is also required for the
fluid temperature calculations. All other data entry is optional, however, matching is
recommended if possible.

2.5.6.2.1.1 Pipe Environment


GAP can calculate 'Pressures Only' for each pipeline, or can calculate both the temperature and
pressure. For the case when both the pressure and the temperature are calculated, the program
requires information on the ambient temperature, heat transfer coefficient and thermal
properties (heat capacities) to run the calculations. GAP uses this information to determine the

GAP User Guide August, 2012


User Guide 288

rate of heat loss.

The following dialogue displays the Environment screen which is related to the fluid temperature
calculations.

Surface Temperature Enter the temperature of the environment surrounding the pipe
(ambient temperature).
Overall Heat Transfer This value accounts for steady state heat transfer by conduction, free
Coefficient convection, forced convection and radiation through the pipeline, the
insulation (if present) and to the surroundings. The overall heat
transfer coefficient is referenced to the pipe inside diameter
Heat Capacities Average heat capacities for Oil, Gas and Water.

2.5.6.2.1.2 Pipe Description


Click on the 'Description' tab to enter the geometry of the pipeline. Up to 100 pipeline segments
can be entered. Pipe data must be entered from the downstream node to the upstream node.

In this entry screen, begin at the top and work downwards to enter the data, as shown in the
following example.

1990-2012 Petroleum Experts Limited


289 GAP

Pipe Description Input Columns

Type Enter the type of pipe or choke in this section. The


available options are:
Line Pipe
Choke
Coated
Flexible
Fitting

The pressure drop calculations are performed in the


same manner, irrespective of the pipe designation
(Line, Coated or Flexible).
Length Enter the total length of this pipe section. Equivalent lengths can be used to
account for pressure losses associated with elbows, bends etc.
TVD TVD is the depth of the nodes that make up the pipeline. For example, in
the case below the node that represents the "Manifold" is at a TVD depth
of 0ft and the "sep" node is at a depth of 20ft.

GAP User Guide August, 2012


User Guide 290

There is also the option to define the pipe topography based on the
elevation change as apposed to the the TVD depth. This is achieved
through the option "Segment elevation change".

In the this case the elevation depth is always referenced from the
downstream node within the pipeline segment. This means it is not
possible to check if the dimensions of neighbouring pipeline segments are
consistent and therefore this option is not recommend.
Diameter Enter the inside diameter of the pipe.
Roughness Enter pipe surface roughness. The default value of 0.0006 inches is a
value that has shown to work well over a wide range of different pipes and
tubings. The value is based on experience and may not be applicable for
every case however if necessary it can be modified by the user.
Fittings In the case where fittings are selected as part of the pipe equipment the
program will prompt a secondary screen.

1990-2012 Petroleum Experts Limited


291 GAP

This screen is essentially a database with different K values corresponding


to each listed fitting.
The program will then use these K values in order to calculate the
equivalent length of pipe that will give the same pressure drop as the
fitting.

The formula used is HL = K(v2/2g)

Where:
HL = Velocity Head

GAP User Guide August, 2012


User Guide 292

K = Resistance coefficient
v = velocity
g = constant

K-Values are defined as the Resistance Coefficients.


Details on formulae and nomographs used can be found in Crane's book
Flow of Fluids through Valves, Fittings and Pipes

If a fitting cannot be found in the database then the user can specify a
custom K value.

1990-2012 Petroleum Experts Limited


293 GAP

Heat If in the main program Options 78 the 'Improved Approximation' is enabled,


Transfer then the heat transfer coefficient along the length of the pipeline is required
Coefficient is required as an input.

The elevation of the surface pipelines connected to each well must be entered with
respect to a common reference in GAP. For consistency and ease in troubleshooting, we
recommend that the user should enter all the depths in both PROSPER and GAP using the
same reference point.
Chokes are included in the pipeline data input section only to model a fixed restriction in
the pipe. If the choke setting can be changed and is a control mechanism used in the field
then it should be modelled as an inline choke element so that it can be incorporated into
the optimisation problem.

Other Input Fields

Rate MultiplierMultiplies the pipeline fluid velocity by this value. The option can be used to
model pipelines flowing in parallel. For example, two identical parallel pipes
can be modelled as a single pipe (of the same diameter) with a rate multiplier
of 0.5.
Max Length This is the iteration length used in the calculation of pressure drops over a pipe
Step length. This should not need to be altered unless the pipe under consideration
is particularly long or has complex geometry.
Flow Type Either tubing flow or annular flow can be modelled. If the annular flow option is
selected, it is required to enter the outer tubing information (roughness and ID)
as well as the casing inside diameter (roughness and ID).
Correlations / Select an appropriate pipeline correlation from those available. The correlation
Coefficients that is selected will be used in subsequent build operations, and if the
correlation has been matched to existing data the calculated coefficients will
also be incorporated (see below). The user may edit the coefficients by hand if
required.
Match Click on this button to perform a pipeline matching to the available multiphase
correlations. The button will be coloured green if there is no match data present
(blue otherwise).
Swap Node This button can be used to swap the inlet (upstream) and outlet (downstream)
joints of a pipe element. Note that the labels of the upstream and downstream
nodes are displayed. This display is very useful when handling complex
networks.

The white arrows in the pipeline icon denote the upstream and downstream
direction of the pipeline. The node at which the arrows are pointing towards is

GAP User Guide August, 2012


User Guide 294

the downstream node and the node they are pointing away from is the
upstream.
In the example below, 'Sep Joint' is the downstream joint and this corresponds
to the TVD in the first row. The upstream joint 'Manifold_B' refers to the bottom
row (5) of the description.

COPY, Select the row number of the desired pipe element(s) and click on particular
PASTE, CUT, button to perform the appropriate task
INSERT,
DELETE
ALL This option can be used to select all the rows in the pipe element
INVERT This option can be used to select all the points excluding the currently selected
row.

When GAP detects steam in the system (either coming from a source or an injection
manifold), the U-value needs to be specified at the "Segment Type" level for all the
pipelines in the system as the "Improved approximation" temperature model is used by
default.

The following example demonstrates how a pipeline is defined in GAP.

A pipeline is created every time 2 joints are linked. The elevation of the surface pipelines
connected to each well must be entered with respect to a common reference in GAP. For
consistency and ease of troubleshooting we recommend that the user should enter all of the

1990-2012 Petroleum Experts Limited


295 GAP

depths in both PROSPER and GAP using the same reference point.

As an example, the following pipeline sketch is going to be incorporated into GAP.

Please note that the above configuration can be merged into one single pipe element.
This will speed up the calculation since the are fewer elements interconnected in the
system and in some cases avoid confusion with the linking nodes reference. However,
the following network description is still valid and more applicable for demonstration
purposes.

The upstream and downstream ends of the pipeline are defined by how the link is created. The
first joint that is selected when the link is created corresponds to the upstream node. The
direction of the white arrows is also an indication of the upstream and downstream definitions.
For example, the node at which the arrows are pointing towards is the downstream node and the
node they are pointing away from is the upstream.

The upstream and downstream definition is not related to the actual flow direction (indicated by
a black arrow inside the pipe element), as this is governed by the pressures in the system.

GAP User Guide August, 2012


User Guide 296

When describing the pipelines the user should always create the pipelines so that the upstream
and downstream arrows follow the direction of flow. In a production system the arrows should
point from the reservoir towards the separator. The reverse would apply in an injection system.

When describing the pipeline, the first row in the description screen corresponds to the
downstream joint. In this example the joint J2 ends at 13 ft (downstream) and the pipe upstream
start at 0 feet

When describing consecutive pipelines, one should make sure that the connecting nodes have
consistent TVDs. The downstream end of one pipe element should be consistent with the
upstream end of the connecting pipe element. In this example the linking node is J2 and notice
that the downstream TVD of Pipe 1 is consistent with the upstream TVD of Pipe 2.

1990-2012 Petroleum Experts Limited


297 GAP

To change the definition of the nodes click on the Swap Nodes button.

2.5.6.2.1.3 Pipeline Pressure Matching


This section explains how to enter measured production rates and pressures, and then adjust
the pipeline pressure drop correlation parameters to achieve a match between the model and
reality. For design calculations, an appropriate correlation must be applied without matching.

By matching the pipeline pressure losses to real data, an accurate integrated model can be built
all the way from the reservoir, to the wells and through the gathering system up to the production
separator.

The engineer should treat the pipeline matching with care, especially when dealing
with multiphase mixtures flowing in long undulating pipelines where the field
measurements are taken at relatively large distances from each other. This because
the pressure measurements may not correspond to the measured rates due to the
combined effect of compressibility and the time taken for the fluid to flow between the
meters. In such cases, pipelines can easily be matched to erroneous data.
Pipeline pressure drop matching is not compulsory for carrying out production rate or gas lift
allocation calculations. If field data is available then it is possible to match the pipeline pressure
data with the pipeline models in GAP but the user must use this option with care.

A non-linear regression technique is used to adjust the selected pipe correlation parameters to
match the measured pressures. To begin the matching process, click on the Match button in the
pipe description screen. The following screen will be presented.

GAP User Guide August, 2012


User Guide 298

To enter the pipeline match data, carry out the following steps:

Ensure that the rate type selected is the same as the test data. Choose either liquid rates
or oil rates.
Enter the test points in the grid columns (up to 10 points may be entered). Match rows
can be removed or included in the regression by selecting the row and then clicking
enable or disable as required.
After the data is entered, click on 'Match' to proceed with the calculation.

To perform the surface pipe pressure drop matching, carry out the following steps:

Click 'Match' from the pipe match data entry screen which will prompt the following
dialogue.

1990-2012 Petroleum Experts Limited


299 GAP

Select the required correlations to match from the provided list. For horizontal flowlines,
use pipeline correlations (i.e. PE5, OLGAS etc.) and for vertical flowlines (e.g. platform
risers) select a vertical flow correlation (PE 2).
Click 'Match' to perform the regression (up to 300 iterations are possible). The results of
the matching can then be viewed by clicking the 'Statistics' command button, as shown
below.

GAP User Guide August, 2012


User Guide 300

In this screen, the 'Reset' button resets the fitting parameters for the given correlation to their
defaults. Similarly, 'Reset All' resets coefficients for all of the correlations.

The match parameters represent the corrections to the friction and the gravity that were required
to achieve a match. Parameter 1 is the gravity correction and Parameter 2 corrects the friction.
The calculated parameters for the selected correlation are used in any subsequent pressure
drop calculations.

The gravity loss is zero for horizontal pipelines therefore the gravity term cannot
be matched. In such cases, Parameter 1 is left set to 1.0. Refer to the PROSPER

1990-2012 Petroleum Experts Limited


301 GAP

manual for more details on the matching procedure.

Repeat the matching procedure for each pipe until all pipes have been matched to real data.
Provided that this step has been carefully carried out, the overall model should not require further
adjustment in order to match the measured production and pressure data.

2.5.6.2.1.4 Constraints
In this section the user can apply constraints to the pipeline such as maximum mixture velocity, C
factor and line pressure. Please note that constraints on rates can be applied at either of the
nodes that define the pipeline element.

2.5.6.2.1.5 Schedule (ONLY for Prediction)


Scheduling is used during the prediction to change the constraints or to include or exclude
equipment in the system at a specific date during the forecast. The application of schedules is
the same for every element in the system. Please refer to the section above 246 for a description
of the feature.
2.5.6.2.2 Pressure/Temperature gradient result
After the 'Network Solver' is run (or after a prediction snapshot is reloaded), the pressure and
temperature gradients calculated in the pipeline can be displayed. To view the gradients, right
click on the pipeline and select "Show Gradient".

GAP User Guide August, 2012


User Guide 302

Pressure and temperature gradients can be displayed using the "Variables" option from the plot
menu bar.

1990-2012 Petroleum Experts Limited


303 GAP

To view the detailed results of the pressure drop calculations, access the pipeline summary
screen by double clicking on a pipeline element and then select "Calculate".

After that, select "Initialise from Solver results" to import the results from the 'Network Solver'
calculation.

GAP User Guide August, 2012


User Guide 304

Finally, select "Calculate" to view the detailed gradient results through PROSPER online.

1990-2012 Petroleum Experts Limited


305 GAP

2.5.6.3 Using Lift Curves for the Pipeline Pressure Drops


This section will deal with the input screens when lift curves are used for calculating pipeline
pressure drops.

When the lift curve option is selected, the user needs to choose a model for generating the lift
curves.

There are four options in the drop down menu:


External
GAP internal Correlations
PROSPER On line
PROSPER file

The lift curve options should be handled with care and are generally not recommended
for modelling the pipeline pressure drops. The fundamental reason for this is because

GAP User Guide August, 2012


User Guide 306

of the PVT. The lift curves have to be generated for a constant PVT which for most
pipelines is not a valid assumption as the type of fluid flowing through the lines can
change very heavily as the relative proportions of the commingled fluids coming from
different wells changes over time. The recommended approach is to use the GAP
Internal Correlations as these will handle any change in the fluid properties and there
will be no interpolation errors which are inherent in the pipeline lift curves.

2.5.6.3.1 External
This option allows the user to enter a lift curve file that has been externally generated (in
PROSPER for example). The file can then be imported by selecting "Lift Curves" from the data
summary.

The user can then browse for the relevant file from the following screen.

1990-2012 Petroleum Experts Limited


307 GAP

The "Import" button will prompt a menu for selecting a variety of file formats.

The file can have the following extensions (as shown above):

*.tpd

GAP User Guide August, 2012


User Guide 308

*.mbv
*.ecl
*.vfp
*.snr

The *.tpd and *.mbv files can be generated by PROSPER. The difference between the two is that
the *.mbv file does not contain any temperature information and should ideally be used only with
a prediction in the MBAL software (as there is no surface network to carry temperature
information through). The .ecl and .vfp formats are recognised by the Eclipse simulator. The .snr
format is recognised by the Sensor simulator.

Selecting one of these appropriate files will be imported into GAP and automatically converted
into a *.vlp file. This is a binary file that GAP will use in the calculations. If this file already exists,
then it can be imported by using the "Browse" option instead of the "Import" button.

2.5.6.3.2 GAP Internal Correlations


The purpose of this option is to allow the user to generate the lift curves using the internal
correlations of GAP. The program will use the pipe description and correlations (with any
matching included) that have been entered in the previously described data input screens (see
above 287 ). The advantage of this method is speed, as the pressure drop is determined by
interpolating the lift curve tables instead of performing the calculations during each iteration of
the solve.

1990-2012 Petroleum Experts Limited


309 GAP

Upon selection of the lift curves tab (highlighted in red in the figure above) the user is prompted
with the following screen.

GAP User Guide August, 2012


User Guide 310

To create the file select "Generate".

The range of variables for which the VLP curves will be created need to be entered under the
"Data" section.

1990-2012 Petroleum Experts Limited


311 GAP

Selecting the fluid type will automatically display the correct variables that need to be defined
(for instance, in the case of "mainly liquid" the variables are liquid rate, upstream pressure,
GOR, water cut and upstream temperature). The user can either enter the ranges manually or
use the "Populate" Buttons on the bottom of this screen.

It is important to note that as pipelines can flow in either direction, the range of
rates selected for the VLP calculation should include both negative and positive
rates, as the flow direction throughout a long forecast is not always known until
the calculation has been performed. An illustration of entering negative rates is
shown in the figure above.

Selecting "OK" will lead the user back to the generation screen where selecting "Generate" will
commence calculations.

GAP User Guide August, 2012


User Guide 312

Progress can be monitored in the progress bar at the bottom of the form.

Pipe VLPs can also been generated in a batch mode, assuming that several pipes have been
previously set to "Lift Curves". Please refer to the section "Batch Generation of Pipe VLPs 466 "
for more information.
2.5.6.3.3 PROSPER on line
The purpose of this option is to allow the user to generate the lift curves using PROSPER online.
Selecting the PROSPER on line method will prompt the following screen:

1990-2012 Petroleum Experts Limited


313 GAP

The main advantage of this method is that the user can generate lift curves using
the advanced temperature models available through 'PROSPER on Line'

The 'Edit Pipe' button allows the user to create the pipeline model using the 'PROSPER on Line'
features.

Please refer to the next section, called "PROSPER on line Pressure Drops 314 " for
detailed information on how to model a pipe with PROSPER on Line.

In terms of the generation of lift curves, the method is exactly the same as described in the
previous section called "GAP Internal Correlations 285 ".

2.5.6.3.4 PROSPER file


The selection of this underlying method will allow the user to generate lift curves using an existing
PROSPER file (with the pipeline only option). When this option is selected, the following screen
will appear.

GAP User Guide August, 2012


User Guide 314

The "Browse" button can then be used to associate the corresponding PROSPER file.

In terms of the generation of lift curves, the method is exactly the same as described in the
previous section called "GAP Internal Correlations 285 ".
2.5.6.4 PROSPER On Line
This option is found in the well summary screen.

Using this option will enable the user to calculate the pressure drops in a pipeline on the fly,
using the advanced temperature options which were up to now only available in PROSPER.
Traditionally, the temperature calculations in GAP were done using the rough approximation
method. Now the user can do these using the enthalpy balance or improved approximation
method.

The advantages of using 'PROSPER on Line' over the lift curve option are:

1990-2012 Petroleum Experts Limited


315 GAP

No interpolation between lift curves is required as the exact conditions are passed to
PROSPER during each calculation.
Instead of assuming a fixed PVT, as is the case in the lift curve generation, the
calculations are done based on the commingled PVT coming from the reservoirs which
varies according to the conditions. This is particularly important in multilayer reservoirs
where the contribution of each reservoir can change over time.

The advantage of using the advanced temperature models over the rough approximation
method are:

When the pipelines are being designed, and no match data is available, the rough
approximation method is not sufficient as the heat transfer coefficient cannot be back
calculated. The enthalpy balance method allows accurate calculation of the temperature
for such cases.

The drawback of using the enthalpy balance method is speed, as the method is computationally
intensive.

In the 'Examples Guide' a ste by step description of PROSPER 731 online pipeline 731 can be used
for reference.

NOTE on CO2 injection models


When modelling pipelines carrying CO2 for injection purpose, it is important to properly
define the fluid options in the PROSPER on-line Options:
Fluid type should be retrograde condensate
PVT method should be Equation of State
Temperature model should be either enthalpy balance or improved approximation.

2.5.6.4.1 Edit Pipe entry


The next section explains how to enter the pipe data using the 'Edit Pipe' option.

GAP User Guide August, 2012


User Guide 316

The activation of the three temperature models (Rough Approximation, Enthalpy Balance and
Improved Approximation) can be done through the 'Options'.

And then under 'Model' as shown below.

1990-2012 Petroleum Experts Limited


317 GAP

The 'Equipment' section is then customised according to the temperature model selected. It is
therefore important for the user to make sure the appropriate model has been selected.

NOTE:
The black oil PVT correlations can be matched to measured lab data using the 'PVT Matching'
feature. More information about the PVT matching option is provided in the PROSPER manual.
The 'Solids' feature is where key variables 255 are set for several complementary calculations
in PROSPER (maximum grain size diameter, erosional velocity,liquid loading and pigging).
Multiphase Flow correlations can be matched to test data using the 'Correlation Matching'
feature. More information about the multiphase flow correlation matching option can be found
in the PROSPER manual.
The two matching parameters (gravity and friction) that are calculated during the matching
procedure can be accessed by clicking on the 'Correlation Parameters' button.

GAP User Guide August, 2012


User Guide 318

The 'Correlation Threshold' option allows the user to set the threshold angle of the pipeline so
that the pressure drop calculation can switch between using a vertical or horizontal flow
correlation automatically.

2.5.6.4.1.1 Rough Approximation

If the Rough Approximation temperature model is selected then the user needs to enter basic
information about the pipeline as well as the average surrounding temperature under equipment.

1990-2012 Petroleum Experts Limited


319 GAP

Note that the theory behind the Rough Approximation method is described in detail in the
PROSPER manual.
2.5.6.4.1.2 Enthalpy Balance
The enthalpy balance method will calculate the heat transfer coefficient as a function of heat
losses due to free convection, forced convection, conduction and radiation. This method is the
most accurate temperature calculation method available as it takes into account sea water
velocities, insulation, sea temperatures, burial depth etc. For details on the equations, please
refer to the PROSPER Manual.

GAP User Guide August, 2012


User Guide 320

To commence data entry for a new application, click 'All' and then 'Edit'. The program will then
display all of the input screens in sequence. To go back and edit one particular equipment item,
click the button on the left of the appropriate item.

Surface Equipment
An example of the surface equipment screen is shown below:

1990-2012 Petroleum Experts Limited


321 GAP

To calculate heat losses, additional data such as outside diameter, material type and insulation
(if used) are required to be input. The surface equipment model can utilise the following
equipment types:

Line pipe
Coated pipeline
Flexible tubes
user selected
Choke
Fittings

To allow for pipe bends and general fittings, the program contains a
database of K-values that capture the pressure drop for the
appropriate type of fitting

Choke Method The choke calculation handles both sub-critical and critical flow and the
program will calculate the temperature change across the choke due to the
Joule-Thomson effect.
Coordinate The surface equipment geometry can be entered either in terms of the
System TVD of the upstream end of the pipe segment or as X, Y (referenced from
the manifold or the Xmas Tree) co-ordinate pairs.
Rock Properties Enter the relevant rock properties which will be used in the heat transfer
calculations

GAP User Guide August, 2012


User Guide 322

Label Descriptive labels for each element can be entered in the label field if
desired and they will appear on the reports and calculation screens.
Burial Depth The burial depth is the distance between the soil surface and the bottom of
the pipe (including insulation, if present). The pipe is partially buried if the
burial depth < O.D. of the insulated pipe.

The calculated composite thermal conductivity is referenced to the pipe


inside diameter. The diagram above shows the burial depth geometry.

Ensure that the flowline pipe geometry is consistent with the pipe burial depth.
If necessary, insert another node and change the burial depth for e.g. the
riser.

The soil conductivity around buried surface pipes is taken from the 'Therma
Properties' database for the shallowest rock type entered in the Lithology
screen.

Insulation Pipe insulation (e.g. concrete, foam or bitumen) can also be modelled. To
define the pipe insulation click the 'Enter' button to display the following
screen:

1990-2012 Petroleum Experts Limited


323 GAP

Select the required insulation type from the drop-down list and then enter
the thickness. Enter the insulation beginning with the innermost layer.
PROSPER uses the thermal properties in its database to calculate the
thermal conductivity of the composite insulation.

Rate Multiplier Multiplies the pipeline fluid velocity by this value. The option can be used
to model pipelines flowing in parallel. For example, two identical parallel
pipes can be modelled as a single pipe (of the same diameter) with a rate
multiplier of 0.5. Alternatively, the option can be used to simulate the
pressure drop due to several wells. As an example, the pressure drop in a
flowline connected to 3 identical wells could be modelled using a pipeline
rate multiplier of 3.

Up to 200 pipe segments can be entered, enabling the user to model very long pipelines.

Temperature Data
'Surface Environment' data is required for the heat transfer calculations from the surface flow
lines and well risers. Data must be entered according to the screens shown below depending
on whether the prediction is being carried out offshore or on land (Specified from Options).

GAP User Guide August, 2012


User Guide 324

Temperature Data Input (Off Shore):

Temperature Data Input (On Land):

1990-2012 Petroleum Experts Limited


325 GAP

Databases
This optional feature is used to access the thermal properties databases for editing or adding
new materials.

GAP User Guide August, 2012


User Guide 326

Enter appropriate values for the conductivity of cement and casing. Depending on the selection,
PROSPER expects input for the thermal conductivity, emissivity, specific heat capacity, specific
gravity or density.

Check that the correct units are used before entering the thermal properties.

Edited values remain in memory and become part of the model when the file is saved. To
permanently save edited values or new user-defined entries for use in other projects, click the
'Save' button to write them to the database. The 'Reset' button is used to return all the entries to
their default values.

1990-2012 Petroleum Experts Limited


327 GAP

2.5.6.4.1.3 Improved Approximation


The advantage of using the improved approximation option over the rough approximation
method is that like the enthalpy balance model it is based on the full energy equation and can
also take into account the the Joules-Thomson effect (cooling or heating of the fluid because of
pressure drop in the pipe).
This can be particularly important in gas pipelines, where the J-T effect can cause the formation
of hydrates in high pressure/low temperature situations. In addition to this, the user can specify
different U-values along the pipe length in comparison to the 'Rough Approximation' method
which assumes a fixed value.

The equipment entry for the 'Improved Approximation' temperature model is slightly different to
the 'Rough Approximation' option. Click on 'Equipment' to display the following input screen:

To commence data entry for a new application, click 'All' and then 'Edit'. The program will then
display all the input screens in sequence. To go back and edit one particular equipment item,
click the button on the left of the appropriate item.

Surface Equipment

'Surface Equipment' requires the user to enter the temperature of the pipe surroundings and an
overall heat transfer coefficient for each pipe segment.

GAP User Guide August, 2012


User Guide 328

The heat transfer coefficient can be specified for each pipe segment and should not be
confused with the pipe thermal conductivity. This value accounts for steady state heat transfer by
conduction, forced convection, free convection and radiation through the pipeline, the insulation
(if present) and to the surroundings.

In PROSPER the overall heat transfer coefficient is referenced to the pipe inside diameter.

2.5.6.5 Gradient Calculation


The PROSPER on line method also offers the user the facility of doing gradient calculations to
see the pressure and temperature variations along a segment of pipe. This can be done through
the Calculate button shown below:

1990-2012 Petroleum Experts Limited


329 GAP

GAP User Guide August, 2012


User Guide 330

Results

After a solve network calculation or running a prediction, the user can view the results from the
"Results" tab in the pipe summary screen.

Scrolling to the right reveals a new button which is active and can perform gradient calculations
along the pipe segment.

1990-2012 Petroleum Experts Limited


331 GAP

The gradient calculation provides a number of different additional variables,


like C factors, Flow regimes, holdup etc, which are essential in pipeline
design.

2.5.6.6 Bottlenecks
GAP can be used to detect if pipelines are "bottle necking" the system.

After a "Solve Network" is run, the bottle necked pipelines are turned to the colour puce.

After a "Prediction" is run, a bottle neck flag is displayed in the pipelines prediction results,
under the "Status" results column.

Note that the option "Highlight Bottle Necked Pipes" in the 'View' menu must be selected for the
this to be active.

In order to determine if pipeline is bottle necked, GAP will use the following logic in a post
calculation (i.e. after the network has been solved):

1. From the results of the 'Solve Network' calculation, GAP extracts the liquid rate and the
upstream/downstream pressures for each pipeline.
2. GAP will then increase the calculated rate by 10%, fix the upstream pressure to the result

GAP User Guide August, 2012


User Guide 332

determined in the solve network and then calculate the downstream pressure in a post
calculation.
3. If the downstream pressure that is calculated becomes negative then this will trigger the flag.
2.5.6.7 Emulsion correction
GAP includes a model that corrects the viscosity of the fluid due to the effect of emulsions.

The emulsion correction will override the standard viscosity calculation based on the viscosity of
the water and the oil in the pipe. It is based on the Woelflin correlation which can be matched to
measured data.

Selecting the Emulsion checkbox will lead to the activation of the "Edit List" button. This
feature allows the user to create multiple emulsion corrections that can be applied to different
flowlines in the system. Selecting the "Edit List" button, will prompt a form which allows the
different models to be defined.

1990-2012 Petroleum Experts Limited


333 GAP

The behaviour of emulsions in producing equipment is not well understood. Emulsion


PVT in GAP provides a means to assess possible effects of increased or decreased
emulsion viscosity by curve fitting experimentally determined data. It must be
emphasised that the method is empirical and does not represent any rigorous model of
emulsion behaviour.

In the laboratory, stable emulsions can be prepared from many crude oil/water systems. Field
experience shows that the effect of emulsions is usually less than predicted by laboratory tests.
Emulsion PVT should be used with caution and only when it is certain that emulsions are
present and it is necessary to evaluate their effect on calculated pressures.

Emulsion viscosity will replace the mixture viscosity for selected elements of the production
system. Experimental or empirical data can be entered and curve-fitted using a non-linear
regression. The fitted curve is used to determine oil viscosity multipliers as a function of the
water cut which are used to modify the mixture viscosity in pressure drop and pump calculations.
When selected, the oil viscosity for the user-entered value of water cut will be factored
according to the fitted curve which will then be used in the calculation of the mixture viscosity.

The "Oil Viscosity multiplier" is modelled as a function of water cut in 3 stages:

1. Sharp increase at low water cut.


2. Plateau with a constant maximum viscosity for intermediate water cuts.
3. Tail that declines to the viscosity of water after the plateau.

The parameters Left and Right Water Cut for Maximum Viscosity define the maximum plateau
region. To calculate emulsion viscosity:
- Enter the water cut and emulsion viscosity data points in the "Emulsion Data" table.
- Click the "Match" button.

GAP User Guide August, 2012


User Guide 334

When the regression has stopped, click "Plot" to display the matched mixture viscosity.

1990-2012 Petroleum Experts Limited


335 GAP

The above regression will only match the first part of the curve (highlighted in red) using
parameters 2 and 3 to fit the data. For the viscosity correction applying to water cuts above the
right plateau limit (highlighted in blue), an exponential decline is implemented that needs to be
matched manually using parameters 4 and 5.

Having done the match the viscosity model can then be applied to one, some or all the pipelines
in the system.

2.5.6.8 Wax or Hydrate Risk


GAP can also be used to determine if there is any risk of Wax or Hydrates being formed in the
system. In order to perform this calculation, one of the compositional PVT options must be
selected (i.e. Fully Compositional, Tracking or Black Oil Lumping/Delumping). This is because
the calculations require the fluid composition.

If GAP does encounter an element where there is a potential for Wax or Hydrates forming then a
flag will be raised and the pipe element will change colour.

GAP User Guide August, 2012


User Guide 336

The flag above refers to the "Solve Network" results. In the case of a prediction the flag is raised
in the "Status" section of the results.

1990-2012 Petroleum Experts Limited


337 GAP

Like the "Bottle necking" calculation, the "Hydrate/Wax formation" is also a post-calculation
carried out at the end of the solve. GAP effectively calculates the hydrate/wax formation curve
from the composition and determines if the conditions in the pipeline (pressure and
temperature) are such that hydrates or wax are likely to form. This feature and its application is
illustrated in Examples 893 .

GAP User Guide August, 2012


User Guide 338

2.5.7 Tanks

In GAP, Tanks (Reservoirs) are used to predict the pressure response and the fluid saturations
during predictions (only).

A Tank in GAP refers to a reservoir. It should not be confused with Stock Tank
conditions.

Tanks can be represented in GAP as either:

A decline curve
MBAL Material Balance model file.

Please remember to set the prediction to "On" from the Options | Method 78 screen.

Within GAP three methods can be followed to model reservoirs:

Material GAP can use MBAL Material Balance models to determine reservoir
Balance pressures and fractional flows (well GOR s and water cuts).
Decline Decline Curves that express reservoir pressure as a function of cumulative
Curves production. The reservoir pressure decline therefore includes the effects of
aquifer pressure support or fluid influx from adjacent reservoir units
External An external simulator (like REVEAL, Eclipse, IMEX, MoReS, CHEARS, etc.)
Simulator can be linked to the wells in GAP. Linking GAP to a simulator is done
through RESOLVE.

Once a tank has been defined, production wells must be assigned to the tank. This can be done
either:

From Well data entry screen, or


From the Tank data entry screen (see below), or
By dragging connections between wells and tanks, in a similar fashion to the creation of
pipeline links.

Wells can connect to more than one tank by entering appropriate allocation factors (for
single-layer wells).

Wells can connect to more than one tank by associating different tanks to different well
inflow layers (for multi-layer wells).

1990-2012 Petroleum Experts Limited


339 GAP

The tank data summary screen has three sections (as explained in the Equipment Summary
section 180 ).

Summary This screen gives the status of various aspects of the input data and
Screen displays the MBAL file that represents the reservoir (for MBAL prediction). It
also allows the user to select which method to use for "Prediction".
Input Includes tabbed screens for the following input fields:
Screen Well Connections (Valid/Invalid)
Constraints (injection system only) (Present/None/Invalid)
Production Data (decline curve prediction only) (Present/None/
Invalid)
Injection Fluid (Injection source)
Schedule (None/Some)
Results Contains the following fields:
Screen Network Solver Results
Prediction Results

2.5.7.1 Tank Summary Screen


Double-click on a Tank icon in the system window to display the Tank summary screen.

GAP User Guide August, 2012


User Guide 340

Main features

Model The user can select the prediction method. There are three choices
available:
1. Material Balance
2. Decline Curve
3. External Simulator (ref. previous paragraph 338 )
Type The fluid type will be automatically selected based on the PVT
description in the MBAL file when using the Material Balance approach.

The user can select the fluid type when using Decline Curve. Choices
are:
Oil
Gas
Retrograde Condensate

1990-2012 Petroleum Experts Limited


341 GAP

PVT Model This field displays the PVT modelling option used by the reservoir
model. The options are Black Oil, Fully Compositional and Tracking.
MBAL File (Material Balance Prediction only)
For a material balance tank, this gives the name of the MBAL file that
contains the model for the tank. To select a new file, select the "Browse"
button and choose a file from the selection dialogue presented.
Number of Tanks (Material Balance Prediction only)
For a multi-tank, this displays the number of sub-tanks in the system
Tank ID (Material Balance Prediction only)
This displays the tank ID from the MBAL file
Start of (Material Balance Prediction only)
Production GAP will look up the start of production from the MBAL tank and display
it here.
End of History (Material Balance Prediction only)
GAP will display the end of history date in cases where the MBAL model
contains historical data.
Original Oil Displays the original oil or gas in place.
and Gas in Place
Run MBAL Opens the associated MBAL file. if there is no file specified then GAP
will open a fresh MBAL file which can be automatically be associated to
the tank in GAP.

Multiple tanks
If a multi-tank MBAL file is loaded into this screen, the conventional icon that
represents the single tanks will be replaced by a number of icons, each corresponding
to the tanks in the MBAL file.

Transmissibility links between tanks are represented by the lines joining the tanks
together.

2.5.7.2 Tank Input Data (Material Balance Tank)

GAP User Guide August, 2012


User Guide 342

2.5.7.2.1 Constraints
This tab allows the user to specify tank constraints.

2.5.7.2.2 Wells
For a tank to be considered in the prediction calculations it must be connected to one or more
wells. This can be achieved from this tab.

1990-2012 Petroleum Experts Limited


343 GAP

In this screen, select wells from the Not Connected list and click the "Add" button to connect
them to the tank. Alternatively, disconnect wells by removing them from the Connected list.

Alternatively, the same connections can be established using the following methods:
Through the Tanks tab in the Well Summary screen
Dragging a link between a well and a tank on the system window

2.5.7.2.3 Injection
This section is only used in cases where there is no associated injection system and allows the
user to define the properties of the injection fluids, which are then used for pressure drop
calculations.

GAP User Guide August, 2012


User Guide 344

Gas Injection Select the injection source from the current list.
Fluid
Edit List Invokes the fluid injection source dialogue (as accessed from the Options
menu 85 item). Use this to update or add to the current source list
Composition If one of the compositional methods is selected, there will also be an
option to an enter the composition.

2.5.7.2.4 Tank Schedule


Scheduling is used during the prediction to change the constraints or to include or exclude
equipment in the system at a specific date during the forecast. The application of schedules is
the same for every element in the system. Please refer to the section above 246 for a description
of the feature.

1990-2012 Petroleum Experts Limited


345 GAP

2.5.7.2.5 Tank Results


This screen is same for all of the elements in the system (see above 258 ).

GAP User Guide August, 2012


User Guide 346

2.5.8 Flares and Vents

Flares and Vents are elements that can be used to account for emissions for reporting
purposes. Flares and Vents act like sinks in the way that each flare or vent can be assigned a
fixed pressure, mass or flow rate.

These are two typical applications of Flares and Vent.

Note that the two elements are interchangeable, as their difference is only visual.
2.5.8.1 Summary and Input
These sections are the same as in Sinks 397 .
2.5.8.2 Results
The Results tab is exactly the same as any other element.

In the menu Prediction the results of the Flares and Vents are reported under Emissions. To
access the Emissions select the menu Prediction | View Prediction Results System Emissions,
or to plot go to Plot Emissions Prediction Results.

1990-2012 Petroleum Experts Limited


347 GAP

GAP User Guide August, 2012


User Guide 348

2.5.9 Tank Input Data (Decline Curve Tank)


When the Decline Curve option is chosen, the main input screen will change to accommodate
the different variables that are required.

Type This entry defines the main phase produced by the tank (Oil, Gas, Retrograde
Condensate)
Temperature Defines the temperature of the reservoir
Original Oil/ Specifies the oil/gas in place.
Gas in place

1990-2012 Petroleum Experts Limited


349 GAP

2.5.9.1 Tank Production Data


The reservoir pressure decline curves can be entered from the start of any Decline Curve
period. This does necessarily have to correspond to the beginning when the cumulative
production is zero and the reservoir pressure is at the initial reservoir pressure.

For example, it is possible to define a decline curve that starts at the "current" reservoir pressure
and corresponding cumulative oil production (see figure above) or alternatively the user can
enter the full decline curve starting from the initial reservoir pressure.

GAP User Guide August, 2012


User Guide 350

The reservoir pressure that GAP will use is based on the value of the "Current Oil Prod" in the
input screen. GAP will simply interpolate between the entered values within the table to calculate
the corresponding reservoir pressure.

The reservoir pressure vs. cumulative production data can be entered by hand or pasted from
the Windows clipboard.

Import from This feature allows the user to import the results of a material balance
Prediction model and convert it into a an equivalent decline curve.
Results
This option can be used when one wants to substitute the reservoir
model (for example, numerical simulation) with a quick decline curve to
perform many scenarios that would require long run times if the
simulator was used.

1990-2012 Petroleum Experts Limited


351 GAP

Calculate Interpolates the table to find the tank pressure corresponding to the
value of Current Oil Production
Plot Plots the tank pressure against cumulative production, as entered in the
table.

2.5.9.2 Compressibility
This option allows the engineer to enter the rock compressibility as a function of pressure.

There are two ways of defining the compressibility:

On Original The Cf at pressure P and V is defined using the formula,


Volume
Cf = - 1/Vi (V Vi) / (P Pi)

Where Vi and Pi are the pore volume and pressure at initial conditions.
This formulation means that the results are not dependant on the time
steps selected.
On Tangent The Cf at pressure P and V is defined using the formula:

Cf = - 1/Vi (dV / dP)

Where dV/dP is the derivative at pressure P.

GAP User Guide August, 2012


User Guide 352

The program ALWAYS uses the original volume Cf so this column


must be entered to make the dataset valid. However if the user only
has the Cf based on tangents, it is possible to enter these values in
the column and then use the 'Calculate' button to generate values
based on the original volume.

1990-2012 Petroleum Experts Limited


353 GAP

2.5.10 Pumps

Pumps can be handled in GAP with performance data provided by the pump manufacturer, or
based on a model.

Three types of pumps are available:

Performance Curves This is a table that relates head and power consumed to operating rate.
The lookup table can also have speed and gas/liquid fraction as
sensitivity variables. If desired, affinity laws can be used to scale the
calculations for actual vs. design speed. The pump pressure
calculations are based on an averaged rate through the pump i.e. the
volume changes that occur from inlet to outlet as a consequence of the
pressure change are taken into account. This averaged rate is then
used as the input to the performance table to obtain a head, which is
converted into a pressure using the average density of the fluid. Note
that the calculations are repeated sequentially for the number of stages
specified.
Jet Pump Jet pump model that can be used to predict jet pump performance. The
Jet pump can be selected from a list that mirrors the database of
pumps of PROSPER
Framo Pump FRAMO Multiphase pump model that can be used to account for the
pump performance. The pump can be selected from a list that mirrors
the database of pumps of PROSPER

When defining a pump, it should always be placed between two joints, one at its suction
and the other at its discharge end. This is done, by dragging connections between
pumps and joints with the Link icon selected.

NOTE: the pump connections (represented by the white arrows) should be consistent
with the actual flow direction:

GAP User Guide August, 2012


User Guide 354

Summary This screen gives the status of various aspects of the input data for the
Screen pump. See the following section for details
Input Includes tabbed screens for the following input fields:
Screen Data (Valid/Invalid)
Control (OK)
Schedule (Prediction Only)
Results Contains the following fields:
Screen Network Solver Results
Prediction Results

2.5.10.1 Pump Summary Data


Double click a pump icon to display the pump input summary screen:

1990-2012 Petroleum Experts Limited


355 GAP

Data Summary This shows the status of the various aspects of item data. These will be
Area described in the following sections
Number of Pumps This option allows the user to specify the number of pumps in parallel
in Parallel which GAP will take into consideration in the network calculation. It
prevents the user from having to create a separate pump element in the
main network.

2.5.10.2 Performance Curve Options


The "Performance Curves" option is designed for capturing the response of any pump in the
GAP model. Provided the user has access to the pump manufacturer's curves, then this feature
can be used to determine the impact of different pumps on the whole integrated system as in
principle any pump will have a unique relationship between rate and head. However, these
relationships can only be provided by the manufacturer as they are based on experimentation.

The alternative is to use a mathematical model that predicts the relationship between rate and
head (i.e. the Jet pump or Framo pump options). These mathematical models are developed
based on physical principles and assumptions about the type of pump which are then validated
against experimental data. They therefore should only be applied to the type of pumps that they
were designed for.

GAP User Guide August, 2012


User Guide 356

It is possible to implement a user-defined pump model through an inline programmable element


417 which allows the engineer to write script that can be executed during each iteration of the
solver.

No. of Stages This is the number of stages in the pump. The performance curve of
each stage is assumed to be the same. Pre, post and inter stage
separation can be set up via the "Stage Data" screen
Use Affinity Laws (Only use this option if speed is not an operating variable in the
performance curves)

The "Use Affinity Laws" option must be selected in order for the pump
to be controllable. The pump model uses affinity laws to scale the
calculations from design speed to actual speed. The pump speed
values are entered by selecting the "Control" tab in the pump element
input dialogue
Actual Speed Current speed of the operating pump
Design Speed Design speed of operation of pump, to which the performance data
refers to.
Stage Data Allows the specification of pre, post and inter stage separation and
cooling
Edit PC Input/editing of performance data for the pump. When entering the
performance curve data for a new pump, the following screen will
appear after pressing "Edit PC".

1990-2012 Petroleum Experts Limited


357 GAP

On this screen, choose the variables for the performance tables. These
are:
Operating rate
Frequency
Gas Fraction
Rotational Speed

One needs at least operating rate as a variable. Fill the data in the
following table

GAP User Guide August, 2012


User Guide 358

Delete PC Deletes the performance data entered for the pump. Once the
performance data is deleted, the pump input sections are treated as
new.

2.5.10.2.1 Pump Control


The pump model in GAP can be made controllable so that the speed of operation can be
modified to optimise production. In order to activate the Control section, the user needs to
provide information on how the pump will perform at different speeds. There are two different
options available:

1. Use Affinity Laws


2. Define speed as one of the input variables in the performance curves.

Note that either of the control options can be used however they should not be used
together. The most suitable option depends on the engineer's objectives and the
information available to him/her.

The "Use Affinity Laws" option should be used when there is only one head curve available for a
given design speed. The pump model uses the well known affinity laws to scale the calculations
from design speed to actual speed during the optimisation.

The option is activated in the "Data" section.

1990-2012 Petroleum Experts Limited


359 GAP

The maximum/minimum operating speed limits are then set in the "Control" tab.

GAP User Guide August, 2012


User Guide 360

Speed Control Options

Fixed Pump speed is fixed in the calculations.

Actual Speed Speed to be used in fixed speed calculations

Calculated GAP will modify the pump speed (between the speed limits) to optimise
production and obey all constraints.

Actual Speed Speed to be used in fixed speed calculations (not


optimised calculations)
Optimised This will be selected by the optimiser of GAP when
Speed performing the calculations
Minimum Speed Operating range of the pump speed
Maximum Speed

2.5.10.3 Jet Pump Options


When the pump is defined as Jet Pump, a database with available jet pumps will become active
as shown below:

1990-2012 Petroleum Experts Limited


361 GAP

The user can either select a pump of choice, or edit the database to add more jet pumps if the
pump is not available.

GAP User Guide August, 2012


User Guide 362

The theory behind the jet pump model that is used is described in detail in the PROSPER
manual. It is based on the following reference:

The Technology of Artificial Lift Methods - Volume 2b Chapter 6


SPE 19713 - Modelling and Design of Jet Pumps - D.T. Hatziavramidis

2.5.10.3.1 Jet Pump Control


The jet pump model in GAP can be made controllable so that the power fluid rate can be
modified to optimise production and honour constraints:

1990-2012 Petroleum Experts Limited


363 GAP

Power Fluid Control Options

Fixed Pump power fluid rate is fixed in the calculations.

Pump Power Fluid Rate The value of fixed power fluid rate that GAP will use in calculation
for fixed power fluid rate.

Calculated GAP will modify the pump power fluid rate (between the rate limits) to optimise
production and obey all constraints.

Pump Power Fluid power fluid rate used in the fixed rate calculations (not
Rate optimised calculations)
Optimised This will be selected by the optimiser of GAP when
Power Fluid Rate performing the calculations
Maximum/ Operating range of the pump power fluid rate
minimum power
fluid rate

GAP User Guide August, 2012


User Guide 364

Injection Specifies the magnitude of the injection pressure for the power fluid. It refers to
Pressure the pressure in the jet pump nozzle just before the throat.

Power Fluid The temperature of the power fluid has to be specified in order to calculate the
Temperature overall temperature of the commingled fluid.
Power Fluid The fluid properties of the power fluid can be modified using the "Edit List"
button

2.5.10.4 Framo Pump Options


When the pump is defined as Framo Pump, a database with available pumps will become
active as shown below:

1990-2012 Petroleum Experts Limited


365 GAP

The user can either select a pump of choice, or edit the database to add more pumps if the
pump is not available:

GAP User Guide August, 2012


User Guide 366

2.5.10.4.1 Framo Pump Control


The Framo Pump model in GAP can be made controllable so that the power can be modified to
optimise production and honour constraints:

1990-2012 Petroleum Experts Limited


367 GAP

Power Control Options

Fixed Power is fixed in the calculations.

Power Power used in the fixed power calculations

Calculated GAP will modify the pump power (between the speed limits) to optimise
production and obey all constraints.

Power Power used in the fixed power calculations (not optimised


calculations)
Optimised This will be selected by the optimiser of GAP when
Speed performing the calculations
Minimum Speed Operating range of the pump power
Maximum Speed

2.5.10.5 Constraints
This tab allows the user to specify pump constraints. The options will change according to the
type of pump selected:

GAP User Guide August, 2012


User Guide 368

2.5.10.6 Pump Calculate Button


On the main summary screen, there is a "Calculate" Button. This is the Pump Calculator which
can be used to calculate the outlet pressures, discharge temperature etc. based on the pump
performance tables entered.

1990-2012 Petroleum Experts Limited


369 GAP

Once selected, the calculation screen will appear:

The rate type list box can be used to select the desired input rate type. Pressing 'Calculate' will
perform the pump calculation for each line of data entered.

GAP User Guide August, 2012


User Guide 370

The "Initialise from solver results" button can be used to load the data from the
results of the last 'Solve Network' calculation. This allows the user to check the
pump performance under the same conditions as the main 'Solve Network'
calculation.

Input Fields

Table Enter test rates and inlet conditions. The rate can be specified as a liquid rate,
oil rate or gas rate, the type being chosen from the Rate Type combo box.

Action Buttons

Calculate Calculates the output head, pressure etc. for each test rate entered
Disable To disable a line, select the check box and press this button. Pressing the
button repeatedly toggles the enabled/disabled state
OK Removes the dialogue, saving the data entered
Cancel Removes the dialogue
Help Displays this screen

2.5.10.7 Pump Schedule (ONLY for prediction)


Scheduling is used during the prediction to change the constraints or to include or exclude
equipment in the system at a specific date during the forecast. The application of schedules is
the same for every element in the system. Please refer to the section above 246 for a description
of the feature.

1990-2012 Petroleum Experts Limited


371 GAP

2.5.11 Compressors

Compressors can be handled in GAP with performance data provided by the pump
manufacturer, or based on a model.

When defining a compressor, it should always be placed between two joints, one at its
suction and the other at its discharge end. This is done, by dragging connections
between pumps and joints with the 'Link' icon selected.

NOTE: the compressor connections (represented by the white arrows) should be


consistent the actual flow direction:

2.5.11.1 Compressor Summary Data


Double click on a compressor icon to display the compressor input screen:

GAP User Guide August, 2012


User Guide 372

Main options

Type Select the type of Compressor here. The options available are:
Performance Curves (Full model)
Fixed dP Compressor
Fixed Power Compressor
Reciprocating
MultiPhase Compressor/Pump NEW!!!
Data Summary This shows the status of the various aspects of item data. These will be
Area described in the following sections
Number of pumps This option allows the user to specify the number of compressors in
in parallel parallel which GAP will take into consideration in the network
calculation. It prevents the user from having to create a separate
compressor element in the main network.

1990-2012 Petroleum Experts Limited


373 GAP

2.5.11.2 Input Data for Compressor (Full Model)


This option is for modelling existing compressors with known performance curve data which
would be provided by the manufacturer.

Compressors have similar performance data tables to pumps; the difference being that the rate
refers to the gas at the inlet conditions. The performance curves provide a relationship between
the inlet rate (calculated at inlet conditions) as a function of the head and power. The user then
has the option to express the head provided in the table as either the polytropic head or
isentropic head, depending on the check box setting in the input screen.

The pressure calculations are performed by equating the idealised head expression for
isentropic or polytropic compression of the gas (see Gas Conditioning and Processing, by J.
Campbell). The fundamental equation used to correlate head and inlet/outlet conditions in a
compressor is given by:

The user can then account for energy losses by introducing an efficiency:

GAP User Guide August, 2012


User Guide 374

Main input data

No. of Stages This is the number of stages in the compressor.

NEW!!!
The user has the option to enter different performance curves for each
stage. This can be used to simulate multiple compressors running on
the same shaft.

Pre, post and inter stage separation and inter-cooling for


compressors can be set up via the 'Stage Data' screen
Use Affinity Laws (Only use this option if speed is not an operating variable in the
performance curves)

The "Use Affinity Laws" option must be selected in order for the
compressor to be controllable. The compressor model uses affinity

1990-2012 Petroleum Experts Limited


375 GAP

laws to scale the calculations from design speed to actual speed. The
compressor speed values are entered by selecting the "Control" tab
in the pump element input dialogue
Use Overall The user can enter the power consumed by the compressor in the
Efficiency performance curves (as a function of the inlet rate) and the program
will automatically calculate the efficiency.

Alternatively, the user has the option to "Use Overall Efficiency" and
enter the efficiency of the compressor in the performance curves. In
this case the program will automatically calculate the power required
by the compressor.
Actual Speed Current operating compressor speed.
Design Speed Design speed of the compressor, to which the performance data is
referenced.
Use Polytropic Head GAP gives the user the option to define the head curves using either
isentropic or polytropic head.

When this option is checked, GAP will assume the head in the
performance curve data refers to the polytropic head, otherwise the
head is treated as the isentropic head.
Polytropic Efficiency The internal calculations in GAP require the Polytropic Head.

When the performance curves refer to the isentropic head, GAP will
use the Polytropic Efficiency to convert the isentropic head into a
polytropic head.

It is also possible to define the Polytropic Efficiency Multiplier at


various Operating Rates to account for the variation of the polytropic
coefficient with the rate flowing through the compressor. This
'Polytropic Efficiency Multiplier' will scale the polytropic efficiency
depending on the operating rates so that the performance of the
compressor is captured accurately.
Edit PC Input/editing of performance data for the compressor. When entering
the performance curve data for a new compressor, the following
screen will appear after pressing "Edit PC".

GAP User Guide August, 2012


User Guide 376

On this screen, choose the variables for the performance tables.


These are:
Operating rate
Frequency
Liquid Fraction
Rotational Speed

One needs at least to specify the operating rate as a variable.


Delete PC Deletes the performance data entered for the compressor. Once the
performance data is deleted, the compressor input sections are
treated as new.

Performance Curve Input Data


Compressor performance data can be entered in the following screen. The minimum data
necessary to describe the compressor performance is the relationship between operating rate,
head and power:

1990-2012 Petroleum Experts Limited


377 GAP

Operating rate The gas rate flowing through the compressor, expressed at inlet
conditions.
Head Measure of the energy (expressed as a unit length) given to the fluid.

Power Power provided to the compressor.


Polytropic Multiplier is used to modify the polytropic efficiency with varying flow
Efficiency rate.
Multiplier

The Head is the energy provided to the fluid from the compressor and as such it is
used to directly determine the compressor dP.

The Power refers to the external power that is required by the compressor to provide
the head to the fluid. It is used for reporting (calculating the efficiency) and for
constraining the system however it is not used to determine the compressor dP.

With knowledge of the Head, it is possible to determine the power given to the fluid.
The ratio of this power to the corresponding external Power at a particular rate is
defined as the compressor efficiency.

If the "Use Overall Efficiency" option is enabled, then the efficiency can be entered in the
performance curve in place of the power consumed by the compressor. The overall efficiency is
defined as the ratio between the power given to the fluid (calculated from the Head) and the
external power required by the compressor. With knowledge of the Head and overall efficiency
is possible to calculate the power required by the compressor.

GAP User Guide August, 2012


User Guide 378

Surge/Choke
Two additional variables enable the user to specify the operating limits of the compressor (i.e.
stonewall and surge).

Minimum Rate (i.e. Surge)


For every single compression stage, the minimum rate will be re-
circulated in the compressor.
Maximum Rate (i.e. Stonewall)
This maximum rate will be seen as a constraint applied on the
compressor considered

Note on Performance Curves


To have a good definition of the compressors performance, the curves defined in GAP should
have at least one point outside of the operating range envelope. In other words, there must be at
least one point below the surge limit and one point above the choke limit. This allows for the
operating conditions to be accounted for.

Additionally, it is very important that the derivatives of the performance curves are smooth and
continuous. Even if the derivatives are smooth over the range of the expected operating
conditions, convergence issues can still occur if there are poor quality derivatives at the extreme
conditions beyond the operating envelope. This is due to the fact that as the network is being
solved it is possible for the solver to fall into a region with poor quality derivatives and
consequently the ability of the system to converge is greatly affected as there is no way for the
solver to resolve which direction to go in order to find the correct solution.

An example of poorly defined compressor curves is provided below where the problematic
areas have been highlighted in red:

1990-2012 Petroleum Experts Limited


379 GAP

Such performance curves should always be avoided as the real response of the compressor
would not have discontinuities and more importantly it can cause problems with the solver.

Example of Performance Curve


Examples of performance curves for different rotational speeds are shown in the following
figures:

GAP User Guide August, 2012


User Guide 380

Plot of Head vs Operating Rate at various speeds

1990-2012 Petroleum Experts Limited


381 GAP

Plot of Power vs Operating Rate at various speeds

2.5.11.3 Input Data for Fixed dP Compressor


This model will apply a fixed specified pressure difference across the compressor which does
not vary as a function of the rate.

This method needs to treated with care as the pressure difference across the
compressor is independent of the rate which is not representative of reality.
Consequently, using this method when running predictions can result in unrealistically
low (negative) inlet pressures being calculated as the field declines. This compressor
module should therefore only ever be used for scoping, when the compressor has not
been selected, and even then it should be handled with caution.

GAP User Guide August, 2012


User Guide 382

Main Input data

Number of Stages This is the number of stages in the compressor. Each stage is
identical.

Pre, post and inter stage separation and inter-cooling for compressors
can be set up via the 'Stage Data' screen.
Polytropic The polytropic efficiency is used for converting the isentropic
Efficiency coefficient k (which is the ratio of the heat capacities) to the polytropic
coefficients (n).

It is used to calculate the discharge temperature.


Delta P Pressure gain across each stage

2.5.11.4 Input Data for Fixed Power Compressor


This model specifies a constant supply of power to the compressor. GAP will use this power to
calculate the Head provided by the compressor for a given flow rate and thus calculate the dP
across the compressor.

This method should be used for scoping during the design phase when the compressor
has not yet been selected. It should however be treated with caution as by definition a

1990-2012 Petroleum Experts Limited


383 GAP

fixed power will tend to infinite head as the rate declines. This can result in unrealistic
negative inlet pressures being calculated. To avoid this it is recommended to enter a
curve of efficiency vs rate.

Main Input Data

No. of Stages This is the number of stages in the compressor. The stages are
identical.

Pre, post and inter stage separation and inter-cooling for compressors
can be set up via the 'Stage Data' screen
Poly Efficiency The polytropic efficiency is used for converting the isentropic
coefficient k (which is the ratio of the heat capacities) to the polytropic
coefficients (n).

It is used to calculate the discharge temperature.


Power per The overall power input per stage of the compressor
Stage
Overall Overall efficiency, used to correct overall power input to actual input to
Efficiency the compressor
Surge This represents the minimum surge rate. If the rate entering the
Minimum compressor decreases below the minimum surge rate, recirculation is
Rate activated, so that the actual flow through the compressor equals the
minimum surge rate. The head is then calculated based on the
minimum surge rate.

GAP User Guide August, 2012


User Guide 384

To enter the efficiency as a function of the rate, select the 'Efficiency' tab as shown in the figure
below:

2.5.11.5 Input Data for Reciprocating Compressor


Four types of reciprocating compressors can be modelled:

Single Acting Head End


Single Acting Crank End
Tandem
Double Acting

The number of stages is required, and for each stage the inputs are:
Number of cylinders
Stroke length

1990-2012 Petroleum Experts Limited


385 GAP

Rod diameter
Clearance (as a percentage)

2.5.11.6 Input Data for MultiPhase Compressor/Pump


NEW!!!
This option is for modeling multiphase pumps with known performance curve data which would
be provided by the manufacturer.

Multiphase compressors have similar performance data tables to pumps; the difference being
that the rate refers to the gas at inlet conditions. The performance curves provide a relationship
between the inlet rate (calculated at inlet conditions) and the liquid fraction as a function of the
head and power. The user then has the option to express the head provided in the table as
either the polytropic head or isentropic head, depending on the check box setting in the input
screen.

The pressure and temperature calculations are performed using an internal model that converts
the head based on the PVT and the fractions of the phases.

The user can then account for energy losses by introducing an efficiency.

GAP User Guide August, 2012


User Guide 386

All of the inputs are the same as in the Compressor element and the user should refer to this
section 373 for a detailed description of the available options.

The main difference in the multiphase compressor model is that an additional variable (liquid
fraction) has to be defined for the performance curves. This variable is entered in the
"Sensitivity Variable Selection" form as shown in the figure above.

1990-2012 Petroleum Experts Limited


387 GAP

2.5.11.7 Compressor Control (Full Model Only)


The compressor model in GAP can be made controllable so that the operating speed can be
modified to optimise production and honour constraints:

GAP User Guide August, 2012


User Guide 388

Speed Control Options

Fixed Compressor speed is fixed in the calculations.

Actual Speed Speed to be used in fixed speed calculations

Calculated GAP will modify the compressor speed (between the speed limits) to optimise
production and obey all constraints.

Actual Speed Speed to be used in fixed speed calculations (not


optimised calculations)
Optimised This will be selected by the optimiser of GAP when
Speed performing the calculations
Minimum Speed Operating range of the compressor speed
Maximum Speed

2.5.11.8 Compressor Schedule (ONLY for Prediction)


Scheduling is used during the prediction to change the constraints or to include or exclude
equipment in the system at a specific date during the forecast. The application of schedules is
the same for every element in the system. Please refer to the section above 246 for a description
of the feature.

1990-2012 Petroleum Experts Limited


389 GAP

2.5.11.9 Compressor Calculate Button


As in the pump input data screen, in the compressor input data screen, there is a "Calculate"
button. This is the 'Compressor Calculator', which can be used to calculate the outlet pressures,
discharge temperature etc. based on inlet conditions.

The rate type list box can be used to select the desired input rate type. Pressing "Calculate" will
perform the compressor calculation for each line of data entered.

The "Initialise from solver results" button can be used to load the data from the
results of the last 'Solve Network' calculation. This allows the user to check the
pump performance under the same conditions as the main 'Solve Network'
calculation.

NOTE: If the compressor is set to 'Controllable', then the solution speed from a
solve network must also be updated in the main compressor input screen prior to
using the performance calculator.

This screen can be extremely useful in matching the performance of the model to that of a real
compressor. A typical set of performance curves for a centrifugal compressor consists of: Inlet
Rate Vs Head, Inlet Rate Vs Power and Inlet Rate Vs Dicharge Pressure. So, having entered
the data, the user may enter various test points to check if for a given rate, inlet pressure and
speed, that the correct outlet pressure is displayed. If the pressure is not correct, then the
polytropic efficiency of the machine can be changed to match the real performance.

When using the compressor performance calculator to review the optimised compressor
results for multistage reciprocating compressors, the optimised compressor speed MUST
be entered in the compressor input screen prior to using the performance calculator utility.
2.5.11.10 Operating point in Plot
The operating point can be displayed by accessing the PC Input section, after running a 'Solve
Network' calculation, and plotting the compressor performance curve. GAP will display the
operating point along with the compressor curve as shown below.

GAP User Guide August, 2012


User Guide 390

1990-2012 Petroleum Experts Limited


391 GAP

2.5.11.11 Surge and Choke

In GAP it is possible to define the 'Surge Rate' (Minimum Rate) and 'Choke Rate' (Maximum
Rate) for the compressor.

During the compressor calculations, if the compressor rate falls below the surge limit, then GAP
will recycle the quantity of gas that is required. This means that if the surge (minimum) limit is
reached, the Head reported by GAP will correspond to the surge rates even though the actual
throughput of gas (from the upstream elements) is less than the surge limit.

If the quantity of gas produced upstream of the compressor is greater than the choke limit, then
GAP will increase the speed of the compressor so that the operating rate falls within the
operating range of the compressor (this is only if the compressor speed is controllable).

GAP User Guide August, 2012


User Guide 392

2.5.12 Sources / Sink

When entering a source/sink element in the network, the following dialogue is displayed, giving
the user the option to include either a 'Source' or a 'Sink':

Sources/ Sinks are connected to the main surface network via a joint

2.5.12.1 Source
A "Source" is an artificial element that can either inject a fixed rate (defined by the user) into the
system or apply a fixed pressure (by injecting fluid). To achieve a fixed rate GAP will apply the
necessary pressure at this element that balances the system. Conversely, to fix the pressure
GAP will inject the necessary rate that balances the system.

As the element is artificial it is not recommended to use sources to model wells. The
true rate and pressure response of a well is driven by the physical interaction of oil,
water and gas flowing through a completion under the forces of gravity and friction. All
of these effects are captured in the well elements (through the VLP/IPR intersection)
which is the approach that should be used in network modelling.

1990-2012 Petroleum Experts Limited


393 GAP

The source element can be used in two different ways, depending on the objectives.

Fixed When the source is only linked to a joint, it injects fluid into the system on the
rate / mass/ basis of fixed mass, fixed rate or fixed pressure.
pressure
sources In this way inline injection or even contribution of fluid from a nearby field, for
example, can be captured.

Separator Sources that are connected to separators can handle a separated stream (
oil/gas/ gas, oil, water or a mixture thereof).
/water When a source is linked directly to a separator (fixed pressure or inline
line separator) the source can be used to isolate one of the phases (oil, gas or
water) and send it to a different part of the network downstream.

In order to transfer one of the fluid phases to a different part of the network, the
source will apply the necessary pressure that balances the system. Therefore
the difference between the pressure at the separator (inlet) and the pressure
calculated at the source (outlet) corresponds to the pump/compressor duty
required to transmit the fluids.
This is particularly useful in the design phase to determine the duty of pumps
and compressors which is necessary for sizing the equipment.

GAP User Guide August, 2012


User Guide 394

To define which phase the source will transfer, access the source summary
screen and select the 'Type' as shown below:

2.5.12.1.1 Source Data Entry


The three section buttons of the source have the following entries:

Summary This screen gives the status of various aspects of the input data for the
Screen source. The type of source is also selected in this section
Input Includes tabbed screens for the following input fields:
Screen Fluid (Valid/Invalid)
Fixed Rate(Valid/Invalid)
Schedule (Prediction Only)
Results Contains the following fields:
Screen Network Solver Results
Prediction Results

2.5.12.1.1.1 Source Summary Data


This following screen is the source summary data screen.

1990-2012 Petroleum Experts Limited


395 GAP

Main Options

Type Here the type of source is selected. The options depend on whether or
not the source is connected to a separator.
Standalone If the source is an independent source, the options are:
sources Fixed Rate
Fixed Mass Rate NEW!!!
Fixed Pressure
Sources For sources connected to separators, the options are:
connected Separated gas
to Separated water
separators Separated Oil
Depends on Indicates the separator directly connected to the source
Pressure If "Yes" the source will have the same pressure as the connected
constrained separator, otherwise (recommended in most cases) the source will apply
the required pressure to transfer the fluid to a downstream network.

GAP User Guide August, 2012


User Guide 396

Data Summary This shows the status of the various aspects of item data
Area

The separated oil stream, contains the remainder of the fluid inlet stream after
the user defined gas % and water % are separated in the separator.

To define the injected fluid, we go to the following screen:


2.5.12.1.1.2 Source Data Input

The user can define the type of fluid (water, steam, oil and gas) and modify the properties by
selecting "Edit List". The PVT properties of the source are displayed in the area at the bottom
of the screen.

Edit List This button allows to edit the gas/water/steam injection source list
Fluid This can be used to view the details of the properties of the injection fluid.
Properties In case one of the compositional options is enabled, the 'Injection Fluids'
section will have a composition button as well. Clicking this will display
the composition associated with the injected fluid that will be used in the
calculations

Depending the type of source (fixed rate, fixed mass or fixed pressure) the user specifies the
fluid temperature and either the rates or the pressure.

1990-2012 Petroleum Experts Limited


397 GAP

2.5.12.1.1.3 Source Schedule (ONLY for Prediction)


Scheduling is used during the prediction to change the constraints or to include or exclude
equipment in the system at a specific date during the forecast. The application of schedules is
the same for every element in the system. Please refer to the section above 246 for a description
of the feature.
2.5.12.2 Sink
A Sink element represents a point in the network, where a given rate of a fluid (a user input) is
removed from the system at the connecting joint. Sinks must be connected to a joint.

2.5.12.2.1 Sink Data Entry


The three section buttons of the sink have the following entries:

Summary This screen gives the status of various aspects of the input data for the
Screen sink
Input Includes tabbed screens for the following input fields:
Screen Fixed Rate(Valid/Invalid)
Schedule (Prediction Only)
Results Contains the following fields:

GAP User Guide August, 2012


User Guide 398

Screen Network Solver Results


Prediction Results

2.5.12.2.2 Sink Summary Data


The data entry screen for a Sink is very to similar to that of a Source:

Type Here we select the type of the sink. Only one option is available:
Fixed Rate
Fixed Mass Rate NEW!!!
Fixed Pressure
Data Summary This shows the status of the various aspects of input datasets
Area

2.5.12.2.3 Sink Input Data


Depending on the Sink type (fixed rate, fixed mass or fixed pressure) the user needs to specify
the rates or pressures.

1990-2012 Petroleum Experts Limited


399 GAP

If one of the rate options has been chosen then the user will also have to select the rate type.
The options are:
Water
Gas
Oil
Liquid

2.5.12.2.3.1 Sink Schedule (ONLY for Prediction)

Scheduling is used during the prediction to change the constraints or to include or exclude
equipment in the system at a specific date during the forecast. The application of schedules is
the same for every element in the system. Please refer to the section above 246 for a description
of the feature.

GAP User Guide August, 2012


User Guide 400

2.5.13 Inline Elements

This is a generic piece of equipment that can be placed anywhere in the surface network
between two joints.

When an inline element icon is placed in the main window, the user will view the following
dialogue, allowing the selection of various types of inline elements:

The options available are:

Inline Gate Valve


Inline Check Valve
Inline Separation
Inline Choke
Inline Injection
Inline General (up to now known as Inline Programmable)

Label Short label used to distinguish equipment on the system drawing. Up to


18 characters are allowed
Edit Takes to the data entry screen for the element

1990-2012 Petroleum Experts Limited


401 GAP

Cancel Reverts back to the main GAP screen

2.5.13.1 Inline Gate Valve


The Inline Gate Valve is an on/off type of valve. This element can be placed in the
network to control the flow of fluids through certain parts of the network.

The three sections for data input in the Inline Gate valve have the following entries:

Summary This screen gives the status of various aspects of the input data for the
Screen Inline Gate Valve. The type of Inline Gate Valve is also selected in this
section
Input (Only for Prediction Case)
Screen This section contains an entry screen for the Schedule
Results Contains the following fields:
Screen Network Solver Results
Prediction Results

GAP User Guide August, 2012


User Guide 402

2.5.13.1.1 Inline gate Valve Data Summary Screen

Main options

Type Here we select the type of the element.


Two options are available:
Gate Valve
Check Valve
Status When selecting the type gate valve, two options are available:
Open
Close
Data Summary This shows the status of the various aspects of input datasets
Area

2.5.13.1.2 Input Data / Schedule ( ONLY for prediction)


Scheduling is used during the prediction to change the constraints or to include or exclude
equipment in the system at a specific date during the forecast. The application of schedules is
the same for every element in the system. Please refer to the section above 246 for a description
of the feature.

1990-2012 Petroleum Experts Limited


403 GAP

2.5.13.2 Inline Check Valve


The Inline Check Valve should be placed in a surface network if the objective is to
physically stop flow reversal in certain lines in the system.

The three sections for data input in the Inline check valve have the following entries:

Summary This screen gives the status of various aspects of the input data for the
Screen Inline check Valve. The type of Inline check is also selected in this
section
Input (Only for Prediction Cases)
Screen This section contains an entry screen for the 'Schedule'
Results Contains the following fields:
Screen Network Solver Results
Prediction Results

2.5.13.2.1 Inline Check Valve Data Summary Screen


The Inline Check valve has the following data entry screen:

GAP User Guide August, 2012


User Guide 404

Type Here we select the type of the element.


Two options are available:
Check Valve
Gate Valve
Data Summary This shows the status of the various aspects of input datasets
Area

2.5.13.2.2 Input Data / Schedule ( ONLY for prediction)


Scheduling is used during the prediction to change the constraints or to include or exclude
equipment in the system at a specific date during the forecast. The application of schedules is
the same for every element in the system. Please refer to the section above 246 for a description
of the feature.

1990-2012 Petroleum Experts Limited


405 GAP

2.5.13.3 Inline Separation

If there is a phase separation within the network, where the pressure values are
not fixed, but floating, the inline separation element can be used.

The user can also fix the pressure of the inline separation element if required.

The three sections of the inline separation element have the following entries:

Summary This screen gives the status of various aspects of the input data for the
Screen inline separation. The type of inline separation is also selected in this
section.
Input Includes tabbed screens for the following input fields:
Screen Separation (OK/Invalid)
Schedule (Prediction Only)
Results Contains the following fields:
Screen Network Solver Results
Prediction Results

2.5.13.3.1 Inline Separation Data Summary Screen


The Inline Separation has the following data entry screen:

GAP User Guide August, 2012


User Guide 406

Type Here we select the format in which inline separation variables are
defined.
The following options are available:
% Separation
Fixed Rate Removal
Data Summary This shows the status of the various aspects of item data
Area

1990-2012 Petroleum Experts Limited


407 GAP

2.5.13.3.2 Inline Separation Data Input Screen

The user defines the fraction (expressed either as a percentage or fraction) of the phases that
will be separated.

The separated oil stream, contains the remainder of the fluid inlet stream after the
user defined gas % and water % are separated in the separator.

If 'Fixed Rate Removals' had been chosen instead of '% Separation' then the
separation parameters are rates rather than % values.

2.5.13.3.3 Input Data / Schedule (ONLY for prediction)


Scheduling is used during the prediction to change the constraints or to include or exclude
equipment in the system at a specific date during the forecast. The application of schedules is
the same for every element in the system. Please refer to the section above 246 for a description
of the feature.

GAP User Guide August, 2012


User Guide 408

2.5.13.4 Inline Choke


If there is a fixed/controllable choke in the pipeline network, this element can be
used.

The choke model implemented in GAP is based on the Perkins choke model.

The three sections of the inline choke element have the following entries:

Summary This screen gives the status of various aspects of the input data for the
Screen inline choke
Input Includes tabbed screens for the following input fields:
Screen dP Control (OK)
Schedule (Prediction Only)
Results Contains the following fields:
Screen Network Solver Results
Prediction Results

2.5.13.4.1 Inline Choke Data Summary Screen


The Inline Choke has the following data entry screen:

1990-2012 Petroleum Experts Limited


409 GAP

Data Summary This shows the status of the various aspects of item data
Area

GAP User Guide August, 2012


User Guide 410

2.5.13.4.2 Inline Choke dP Control

The are four options for handling the pressure drop across the choke.

None No pressure drop across the choke considered


Fixed dP A fixed pressure loss equal to the value entered is applied for all
rates.
Fixed Choke Diameter The choke size is considered as constant
Calculated The choke diameter is calculated by GAP to maximise production
and honour constraints.

There is a choke calculator that allows the user to estimate the choke size at the well head
necessary to reproduce the calculated pressure drop based on the conditions in the network.
For example, if a well has been choked as a result of an optimisation, then from the well results
select 'Size' to access the choke calculator utility.

1990-2012 Petroleum Experts Limited


411 GAP

This prompts the following screen, automatically transferring the conditions from the results of
the Solve Network/Prediction. Pressing 'Calculate' performs the choke calculation.

GAP User Guide August, 2012


User Guide 412

The plot button displays the performance curve of the choke along with the operating point.

1990-2012 Petroleum Experts Limited


413 GAP

The discharge coefficient relates the actual flow to the ideal frictionless flow.

By default the discharge coefficient is 1. If choke measurements are available, it


is possible to tune this parameter so that the choke model reproduces the
measured data. This feature makes the choke model much more flexible in the
sense that is general and applicable to any choke design used in the field.

2.5.13.4.3 Input Data / Schedule (ONLY for prediction)


Scheduling is used during the prediction to change the constraints or to include or exclude
equipment in the system at a specific date during the forecast. The application of schedules is
the same for every element in the system. Please refer to the section above 246 for a description
of the feature.

2.5.13.5 Inline Injection


If there is injection at a particular point in the network, this option can be used. An
example of its application would be riser lift gas injection.

The three sections of the inline injection element have the following entries:

Summary This screen gives the status of various aspects of the input data for the
Screen inline choke
Input Includes tabbed screens for the following input fields:
Screen Fluid (OK / Invalid)
Injection Rate (OK / Invalid)
Schedule (Prediction Only)
Results Contains the following fields:
Screen Network Solver Results
Prediction Results

2.5.13.5.1 Inline Injection Data Summary Screen


The Inline Injection has the following data entry screen:

GAP User Guide August, 2012


User Guide 414

Data Summary This shows the status of the various aspects of item data
Area

2.5.13.5.2 Inline Injection Data Input Screen


For defining the fixed rate and the fluid, we go to the following screen from the summary area
and define the inlet fluid rate and the temperature.

1990-2012 Petroleum Experts Limited


415 GAP

2.5.13.5.2.1 Defining the Injection Fluid PVT

The user can define the type of fluid injected and modify the properties by selecting 'Edit List'.
The PVT properties of the injection source are displayed in the statistics area at the bottom of
the screen.

Edit List This button allows to edit the gas / water / steam injection source list
Fluid This can be used to view the details of the properties of the injection fluid.
Properties In case one of the compositional options is enabled, the 'Injection Fluids'
section will have a composition button as well. Clicking this will display
the composition associated with the injected fluid that will be used in the
calculations

2.5.13.5.2.2 Defining the Injection Rate


In this screen, we define the rate and the control.

GAP User Guide August, 2012


User Guide 416

Type Two options are available:

Fixed A fixed rate is injected into the network.


Optimised GAP will inject a rate that minimises the
pressure loss in the network downstream of the
injection point in order to maximise production
Rate Define the rate of injection or maximum rate of injection

The optimised method can be used to model riser lift scenarios

2.5.13.5.3 Schedule (ONLY for prediction)


Scheduling is used during the prediction to change the constraints or to include or exclude
equipment in the system at a specific date during the forecast. The application of schedules is
the same for every element in the system. Please refer to the section above 246 for a description
of the feature.

1990-2012 Petroleum Experts Limited


417 GAP

2.5.13.6 Inline General


The Inline General (Programmable) element can be used to define a variety of
custom equipment such as pressure loss elements, control valves, heat
exchangers etc. in the surface network through an internal script.

The functionality of inline programmable elements is demonstrated in some detail in the


examples 632 .

The three sections of this element have the following entries:

Summary This screen gives the status of various aspects of the input data for the
Screen Inline General element
Input Includes tabbed screens for the following input fields:
Screen Script (OK)
Variables (None/Some)
Schedule (Prediction Only)
Results Contains the following fields:
Screen Network Solver Results
Prediction Results

2.5.13.6.1 Notes on Inline General Elements


Inline programmable elements are objects whose behaviour is controlled by a program script
(written by the engineer) rather than a particular physical model (e.g. pipe). These can therefore
be used to create a user defined equipment (like a different pump model for example).

The syntax used is similar to the C programming language, and the variables considered can be
accessed using strings similar to the one used in OPENSERVER.

It is important to note than when using an inline element, only the current model (i.e. Production
or Injection) can be accessed. The inline script cannot access the injection model when the inline
element is located in the production model.

The following example shows the basic structure of a program script.


The example applies a fixed pressure drop over the object.

Example: DeltaPressure = 50;


Apply a fixed pressure PRESOUT = PRESIN - DeltaPressure;
drop of 50 psi over the if ( PRESOUT < DeltaPressure )
inline element PRESOUT = DeltaPressure;

Each line must be terminated by a semi colon. Local variables 418 (such as DeltaPressure) do
not need to be declared.

One can access various variables defined in GAP that correspond to the inlet and outlet
conditions of the inline programmable object, as well as other variables used by the solver. In

GAP User Guide August, 2012


User Guide 418

the above example, PRESOUT is the outlet pressure and PRESIN is the inlet pressure.

It is not possible to change inlet pressure, rate, etc., only the inline
programmable outlet conditions are writable or changeable. Inlet values are
Read Only.

The Inline General Element uses Field Units in all calculations.

NOTE: All calculated fluid density values are returned in SI Units i.e., g/cc.

2.5.13.6.2 Inline General Input Data (Script) Screen


The following screen is used to write the script for the element or associate the element with a
script file *.gsc by using the browse button at the top of the screen:

2.5.13.6.3 Inline General Script Variables


There are three different classes of variables that can be defined and used in the inline general
element script:

1990-2012 Petroleum Experts Limited


419 GAP

Local Temporary These variables are defined by the user within the script to for instance
Variables proceed to calculations internal to the script.
The values associated to these variables are lost at the end of the
script.
Temporary These variables are defined using the TEMPVAR[010] or ITEMPVAR
Variables [010] keywords. See section below 423
The values associated to these variables are initialised to 0 at the
beginning of the solver calculation.
The values associated to these variables can be kept throughout the
solver calculation process (i.e. they will be kept throughout the solver
calculation iterations) but will be lost at the end of the solver calculation
Permanent These variables are defined within the inline general script and their
Variables value can then be accessed and modified within the 'Variable' screen of
the inline general element. These variables will be kept throughout the
entire calculation

Important Note on Permanent Variables

These variables are not re-initialised when the run ends or is cancelled,
therefore it is recommended to use these variables only for fixed values.

These variables should only be used to define a state (i.e. open or closed) or a
parameter (i.e. frequency, power, efficiency, delta P) that will be used by the
associated script to model the behaviour of this inline element.

These permanent variables must not be used to store temporary values during
a solver or prediction run.
This will severely slow down the solver and may cause repeatability issues. At
the end of the solver, these variables are left with the value stored in them on
the last iteration of the solver or when the Cancel button was clicked.

Instead, the TEMPVAR and ITEMPVAR arrays need to be used to store


temporary values.

The user defines the name of each variable. Name of existing or predefined
script variables are not allowed. Therefore, any name starting with VAR should
be adequate.

There is no limitation on the number of user defined variables.

These variables will be accessible through OPENSERVER, and the


OPENSERVER string can be found using the Ctrl + Right Click facility.

GAP User Guide August, 2012


User Guide 420

2.5.13.6.4 Schedule (ONLY for prediction)


Scheduling is used during the prediction to change the constraints or to include or exclude
equipment in the system at a specific date during the forecast. The application of schedules is
the same for every element in the system. Please refer to the section above 246 for a description
of the feature.

2.5.13.6.5 Inline Element Variables


This section lists the variables that can be changed or accessed in the script and their
associated units.

Five stream arrays exist in an inline element:

IN[...] Inlet stream


OUT[...] Outlet stream
SEPGAS[...] This is a stream (called gas but not necessary being gas) that is
separated and sent to a gas source connected to the inline general
element
SEPOIL[...] This is a stream (called oil but not necessary being oil) that is
separated and sent to an oil source connected to the inline general
element
SEPWAT[...] This is a stream (called water but not necessary being water) that is
separated and sent to a water source connected to the inline general
element

The following keywords can be used to access the array values :

CO2 CO2 mole percent (mole percent)


CO2FREE injected gas CO2 mole percent (mole percent)
DILSG diluent specific gravity (sp. grav)
GGHV gas gross heating value (MMBTU/d)
GNHV gas net heating value (MMBTU/d)
H2S H2S mole percent (mole percent)
H2SFREE gaslift gas H2S mole percent (mole percent)
N2 N2 mole percent (mole percent)
N2FREE injected gas N2 mole percent (mole percent)
PRES pressure (psig)
PWFSG power fluid specific gravity (sp. grav)
QDIL diluent rate (STB/day)

1990-2012 Petroleum Experts Limited


421 GAP

QGAS gas rate (MMscf/day) - black oil model only, otherwise use QMOLE
QGFREE injected gas rate (MMscf/day) - black oil model only, otherwise use
QMOLE
QMOLE mole rate (mol/lbm/sec) - compositional model only
QOIL oil rate (STB/day) - black oil model only, otherwise use QMOLE
QPWF power fluid rate (STB/day)
QPWFU power fluid rate used (STB/day)
QWAT water rate (STB/day)
REVENUE revenue/cost of fluids flowing through (<0 for cost)
SGG gas specific gravity (sp. grav)
SGGFREE gaslift gas specific gravity (sp. grav)
SOG oil specific gravity (sp. grav)
TEMP temperature (degrees F)
WENT water enthalpy (BTU/lb)
This variable is only calculated when steam is present. If steam is not
present, the value associated to this variable will be nil
WSAL water salinity (ppm)

For example to access the inlet stream pressure, the IN[PRES] variable name should be used.

Shortcuts have been created for the frequently used inlet and outlet stream. Add the IN or OUT
suffix to the above indexes to directly access the corresponding stream variable. For example
PRESIN is a shortcut for IN[PRES].

When calling the calculation script, GAP initialises the fluid properties of the all streams and the
PVT calculator variables (see below) to the inlet stream fluid properties. The rates of the
separation streams are set to zero and the outlet stream rates are set to the inlet stream rates.
So by default, OUT[] is equal to IN[].

When in fully compositional mode, the five streams have an associated composition. These
compositions can be accessed through the five COMP type structures named:

COMPIN inlet stream composition


COMPOUT outlet stream composition
COMPSEPGAS composition of the stream that is separated by a gas source
COMPSEPOIL composition of the stream that is separated by an oil source
COMPSEPWAT composition of the stream that is separated by a water source

GAP User Guide August, 2012


User Guide 422

see definition of COMP structure 424 below.

2.5.13.6.6 Control Variables


Control variables enable to check or modify the behaviour and status of the system:

ABORT If set to a value # 0, the solver calculation will stop. This is


equivalent to clicking the Cancel button during the solver run
DERIVCALC Is non zero if the calculation currently held is a derivative
calculation. READ ONLY variable
EVALCOUNT Returns an evaluation of the number of times the script is called.
From 1 to n
FLOWDIR 1 or -1 if the fluid flows in a direction opposite to the pipe
description (pipe only). READ ONLY variable
ISBOTTLENECKED Is non zero if the pipeline rate is close to the pipeline critical
rate (pipe only). READ ONLY variable
ISCOMP Is 0 if the calculation is a BO calculation, Is non zero if the
calculation is compositional. READ ONLY variable.
IT IS IMPORTANT TO NOTICE THAT WHEN THE
CALCULATION IS DONE IN FULLY COMPOSITIONAL
MODE, ONLY MOLE RATES ARE USED.
ISPOTENTIALCALC Is non zero if the calculation currently held is a potential
calculation
LASTCALC Is non zero if the calculation currently held is in the last solver
calculation step. READ ONLY VARIABLE. It can be used for
instance when saving results in the OTHERRES[i] variable
OPTIMISATIONMODE Returns the status of the optimiser for the current run.
The following values are used:
0: No Optimisation
1: Optimise and Honour Constraints
2: Optimise with Potential Constraints Only
OPTIMISERITER Contains the current optimiser iteration number. From 0 to n.
Always 0 when the run is non-optimised
OUTLETJOINTPRES Returns the pressure of the joint downstream the inline general
element (psig)
OUTLETJOINTTEMP Returns the temperature of the joint downstream the inline
general element (F)
IT IS IMPORTANT TO NOTICE THAT THE DOWNSTREAM
AND UPSTREAM NODES OF THE INLINE ELEMENT WILL
NOT BE CHANGED THROUGHOUT THE CALCULATION,
EVEN IF THE FLOW DIRECTION IS CHANGED
SOLVERITER Contains the current solver iteration number. Starts at 0 when
the system is initialised, and 1 to n thereafter.
READ ONLY variable
Can be used to initialise the script temporary variables
TEMPVAR[ ] or ITEMPVAR[ ] when the solver calculation starts

1990-2012 Petroleum Experts Limited


423 GAP

2.5.13.6.7 Temporary Variables


A set of temporary variables that will be available throughout the solver calculation. They can be
used to store intermediate or calculated values as well as the state of a piece of equipment
modelled by the script. These variables are initialised to 0 when the solver calculation starts.

These variables can be defined as follows:

TEMPVAR[ ] An array of 10 real number variables, indices ranging from 0 to 9


ITEMPVAR[ ] An array of 10 integer variables, indices ranging from 0 to 9

2.5.13.6.8 Results Variables


In the 'Results' section for the inline programmable object, there are a number of user defined
results columns. It is possible for the script to assign values to these user defined results so they
can be viewed in the results section of the element and plotted against other variables.

This is done as shown in the following code fragment:

Example: DeltaPressure = 50.0;


Apply a fixed pressure PRESOUT = PRESIN - DeltaPressure;
drop of 50 psi over the if ( PRESOUT < DeltaPressure )
inline element PRESOUT = DeltaPressure;
OTHERRES[0] = DeltaPressure;

There are 10 user defined results available.


So one may use the variables OTHERRES[0] to OTHERRES[9].

2.5.13.6.9 Tax Regime Variables


The following variables can be used when the tax regime option is selected.

TaxRegimeRevenueOil Revenue from oil ($ per STB)


TaxRegimeRevenueGas Revenue from gas ($ per MMscf)
TaxRegimeCostWater Cost of water processing ($ per STB)
TaxRegimeCostInjGas Cost of injected gas ($ per MMscf)
TaxRegimeCostPower Cost of power ($ per HP)
TaxRegimePowerFluid Cost of power fluid ($ per STB)
TaxRegimeCostDiluent Cost of diluent ($ per STB)

GAP User Guide August, 2012


User Guide 424

2.5.13.6.10 FLOW and COMP Structure Variables


The FLOW Structure variables give access to data associated to other network nodes (i.e.
pressure at manifold) while the solver calculation is running.

In order to access the values of these variables, the following syntax can be used: MOD.EQUIP.
FLOW.VAR

FLOW is a READ ONLY structure and it is not necessary to use a DoGet command along with a
FLOW structure. The keywords used for these variables are tags that are added at the end of
the variable string, after the tag .FLOW.

CFACTOR C Factor (Pipelines only)


CO2 CO2 mole percent
DILSG Diluent specific gravity
FLUIDTYPE Fluid Type
GASSPECGROSSHEATVAL Gas specific gross heating value
GASGROSSHEATVAL Gas gross heating value
GASSPECNETHEATVAL Gas specific net heating value
GASNETHEATVAL Gas net heating value
GINJ Injected gas rate (SCF)
GINJCO2 Injected gas CO2 percent
GINJH2S Injected gas H2S percent
GINJN2 Injected gas N2 percent
GINJSGG Injected gas specific gravity
H2S H2S mole percent
HCMASSRATE Hydrocarbon mass flow rate
HCMOLERATE Hydrocarbon mole flow rate (Compositional model only)
ISBOTTLENECKED Returns a non zero value if the pipeline is bottlenecked
ISUNSTABLE Returns a non zero value if the well is unstable
MASSRATE Mass flow rate
MAXPRES Maximum pressure (Pipeline only)
N2 N2 mole percent
POWER Power used
PRES Pressure
QDIL Diluent rate of the element

1990-2012 Petroleum Experts Limited


425 GAP

QGAS Gas rate of the element


QOIL Oil rate of the element
QPWF Bottom hole flowing pressure
QPWFU Power fluid rate used by this element
QTOT Total liquid rate of the element
QWAT Water rate of the element
REVENUE Revenue / Cost
RDIL Average cost of diluent per unit
RGAS Average revenue of gas per unit
RGINJ Average cost of injected gas per unit
ROIL Average revenue of oil per unit
ROTHER Cost of other elements - By default the value of that
variable is 0.
This can be modified to factor in any additional costs (i.e.
negative value) / revenues (i.e. positive value) and
include them in the optimisation procedure
RPOW Average cost of power per unit
RPWF Average cost of power fluid per unit
RPWFU Average cost of power fluid used per unit
RSTM Average cost of steam used per unit
RWAT Average cost of water per unit
SGG Specific Gas Gravity
SOG Specific Oil Gravity
STMQUA Steam Quality
TEMP Temperature
VELOCITY Maximum velocity (Pipelines only)
WENT Water Entropy
WSAL Water Salinity

Example: MOD.JOINT[{Abc}].FLOW.PRES
to access the pressure
at the node'ABC'

COMP structure variables


When in fully compositional mode, the five streams have an associated composition. These

GAP User Guide August, 2012


User Guide 426

compositions can be accessed through the five COMP type structures named:

COMPIN inlet stream composition


COMPOUT outlet stream composition
COMPSEPGAS composition of the stream that is separated by a gas source
COMPSEPOIL composition of the stream that is separated by an oil source
COMPSEPWAT composition of the stream that is separated by a water source

The COMPx variables refer to the total hydrocarbon fluid composition, including gaslift or
injected gas.

It is possible to create local temporary compositions by simply copying and existing


composition. For example MYCOMP = COMPIN will create a local copy of COMPIN.

The following keywords are associated with compositional modelling:

BICOEFF[i][j] Binary interaction coefficients between component i and


component j
COMPINDEX(component name) Returns the index associated with the component
specified
MOLEPCT[i] Mole percent of the component index (i) specified
MW[i] Molecular weight of the component index (i) specified
NAME[i] Name of the component characterised by the index i
NumComp Number of Components
OMEGA[i] Omega value associated to the component index (i)
specified
OMEGAA[i] OmegaA of the component index (i) specified
OMEGAB[i] OmegaB of the component index (i) specified
PARACHOR[i] Parachor of the component index (i) specified
PCRIT[i] Critical pressure of the component index (i) specified
PROP1[i] Parachor of the component index (i) specified
PROP2[i] OmegaA of the component index (i) specified
PROP3[i] OmegaB of the component index (i) specified
PROP4[i] Original composition of the component index (i)
specified
SPGRAV[i] Specific gravity of the component index (i) specified
TBOIL[i] Boiling temperature of the component index (i) specified

1990-2012 Petroleum Experts Limited


427 GAP

TCRIT[i] Critical temperature of the component index (i) specified


VCRIT[i] Critical volume of the component index (i) specified
VSHFT[i] Volume shift of the component index (i) specified
Version PVTP version in use

They need to be preceded by the keyword COMPx, where x can be IN, OUT, SEPGAS,
SEPOIL, SEPWAT.

Examples
How to read the mole percent of COMPOUT.MOLEPCT[i]
component of index 'i' at the outlet
of the element
How to read the critical temperature COMPIN.PCRIT[2]
of the third component of the
composition at the inlet of the
element
How to determine the mole % of CO2 X = COMPIN. COMPINDEX(CO2);
in the composition at the inlet of the MPCT = COMPIN. MOLEPCT [X];
element

2.5.13.6.11 PVT Calculator - Black Oil


A PVT calculator is available which allows temporary calculation of PVT properties.

PVT calculation variables


The following functions can be called to perform PVT calculations:

CALCPVT () Simultaneous oil and gas calculator


CALCPVTOIL() Oil calculator black oil model only
CALCPVTGAS() Gas calculator black oil model only
CALCPVTWAT() Water calculator black oil model only
CALCPVTHT() Specific heat, conductivity and enthalpy calculator black oil
model only

PVT calculation input/output variables


The following variables can be referenced directly in the script. These variables include both
input values and values calculated by the calculator functions.

Input variables
PVTPRES Pressure

GAP User Guide August, 2012


User Guide 428

PVTTEMP Temperature
PVTSOLGOR GOR black oil mode only
PVTSOG Specific oil gravity black oil mode only
PVTSGG Specific gas gravity black oil mode only
PVTWSAL Water salinity black oil mode only
PVTH2S H2S impurity black oil mode only
PVTCO2 CO2 impurity black oil mode only
PVTN2 N2 impurity black oil mode only
PVTCOMP composition compositional mode only

Calculated variables
PVTRS Calculated RS
PVTPB Bubble Point
PVTRHOOIL Oil density
PVTGRVOIL Oil gravity
PVTOILFVF Oil FVF
PVTFMUOIL Oil viscosity
PVTCT Total compressibility
PVTRHOGAS Gas density
PVTGASFVF Gas FVF
PVTFMUGAS Gas viscosity
PVTFACTOZ Z factor
PVTPCRITP Critical pressure
PVTPCRITT Critical temperature
PVTRHOWSC Water density at SC
PVTRSOWAT Solubility of gas in water
PVTWATFVF Water FVF
PVTCOMWAT Water compressibility
PVTRHOWAT Water density
PVTFMUWAT Water viscosity
PVTCONWAT Conductivity of water
PVTCPROIL Specific heat capacity of oil

1990-2012 Petroleum Experts Limited


429 GAP

PVTCPRWAT Specific heat capacity of water


PVTCPVGAS Specific heat capacity of gas
PVTENTWAT Enthalpy of water
PVTCONOIL Conductivity of oil
PVTCONGAS Conductivity of gas
PVTENTOIL Enthalpy of oil
PVTENTGAS Enthalpy of gas
PVTVAPFRA Vapour/Liquid fraction after the flash compositional mode only
PVTVAPCOMP Vapour composition compositional mode only
PVTCOMPLIQ Liquid composition compositional mode only

Example
An example of PVTPRES = PRESOUT;
using the PVT PVTTEMP = TEMPOUT;
calculator. CALCPVTGAS();
The gas Z factor is Z1 = PVTFACTOZ;
calculated at the inline PVTPRES = PRESOUT + 20.0;
element outlet T and P and CALCPVTGAS();
pressure 20 psi higher Z2 = PVTFACTOZ;
dZ = (Z2 - Z1)/20.0;
2.5.13.6.12 PVT Calculator - Compositional
A PVT calculator is available within the script, which allows calculation of PVT properties for
compositional models.

In addition to the COMP structure 425 variables and the PVT black oil 427 calculator there is also:

PVTVAPFRA Vapour Fraction


PVTCOMPVAP Vapour Composition
PVTCOMPLIQ Liquid Composition

The following functions can be used to run a flash calculation. Added to this PVT flash calculator
there are blending calculations which can be performed in the script:

CALCPVT(Composition) Enables the user to perform a flash PVT calculation at a


specified PVTTEMP and PVTPRES.
Specifying the composition considered is optional. If it is not
specified, the program will use by default the composition
present in PVTCOMP. The liquid and vapour composition
resulting from a call to the CALCPVT() flash calculation are

GAP User Guide August, 2012


User Guide 430

stored in the PVTCOMPLIQ and PVTCOMVAP structures


CALCPVTWAT() Similar to the one used in BO
PVTBLENDSTART() To be called before any blending to initialise structures
PVTBLENDADD ( Add a composition to the blend in given proportion. The sum of
Composition, Fraction of all the proportions do not nedd to add up to 1 or 100.
the composition PVTBLENDCALC() below normalises the proportions
considered)
PVTBLENDCALC() Does the blending and stores the resulting composition in the
PVTCOMP structure
PVTCHANGECOMP() allows the script to alter the mole percentages of an existing
composition.
PVTCHANGECOMP(Composition, Component,
NewPercentage, RenormalizationFlag [, QMOLE]))
Component can be a component number or name, i.e. 12 or
CO2 .
RenormalizationFlag flag specifies whether the mole
percent is changed before renormalization of the
composition (flag = 0) or after renormalization of the
composition (flag = 1).
QMOLE is optional. If present, the function will adjust the
mole rate to take into account the change of mole percent of
the component.

A predefined composition called PVTCOMP is used by the PVT calculator such as


CALCPVT() or the blending routine described below. PVTCOMP is initialised to
COMPIN when the script is called. The liquid and vapour compositions resulting from a
call to the CALCPVT() flash calculation are stored in the PVTCOMPLIQ and
PVTCOMVAP structures.

Examples
How to flash the inlet PVTPRES = PRESIN - 10;
composition at P and T and PVTTEMP = TEMPIN;
send the vapour on the gas PVTCOMP = COMPIN;
line and the liquid CALCPVT();
hydrocarbon on the oil line COMPSEPOIL = PVTCOMPOIL;
COMPSEPGAS = PVTCOMPGAS;
SEPGAS[QMOLE] = IN[QMOLE] * PVTVAPFRA;
SEPOIL[QMOLE] = IN[QMOLE] * (1 - PVTVAPFRA);
OUT[QMOLE] = 0;
How to change the CO2
mole percent of
composition COMPOUT to PVTCHANGECOMP(COMPOUT, CO2, 1.2, 1,
1.2% after normalization i.e. QMOLEOUT);
the CO2 percent is set 1.2%

1990-2012 Petroleum Experts Limited


431 GAP

with the sum of the mole


percent of all the
components equal to
100% .
How to change the CO2
mole percent to 1.2%
without normalising the
total mole percent to 100% . PVTCHANGECOMP(COMPOUT, CO2, 1.2, 0,
This means that, if QMOLEOUT);
normalised, the CO2 mole
percent may no longer be
1.2%
How to blend the oil and PVTPRES = PRESIN;
50% of the gas and sets it PVTTEMP = TEMPIN;
as the outlet stream PVTCOMP = COMPIN;
composition CALCPVT();
PVTBLENDSTART();
PVTBLENDADD(PVTCOMPOIL, PVTVAPFRA / 2);
PVTBLENDADD(PVTCOMPOIL, (1 - PVTVAPFRA));
PVTBLENDCALC();
COMPOUT = PVTCOMP;

It is important to note that in compositional mode, inline elements cannot use hydrocarbon
rates anymore. QOIL, QGAS, and QGFREE are not available in compositional mode
2.5.13.6.13 Logging Messages
It is possible to log messages during the inline element script progress, through the following
function:

LogMsg(comma separated list of text strings or variables);

For example :
LogMsg(Oil rate: , IN[QOIL], Gas rate:, IN[QGAS]);

Important note: Outputting a log message is a slow process. As scripts are being called
thousands of times in a solver calculation, these statements will greatly slow down the
calculation. Make sure that these statements are used for debugging purposes only. Please
comment them when the script has been debugged. Also make sure not to display log
messages during derivatives calculation (i.e. DERIV #0) unless required.

2.5.13.6.14 Mathematical Functions

A number of maths functions are available in the script. These include:

GAP User Guide August, 2012


User Guide 432

COS(x) Returns the cosine of x (units of x are radians)


COSH(x) Returns the hyperbolic cosine of x (units of x are radians)
SIN(x) Returns the sine of x (units of x are radians)
SINH(x) Returns the hyperbolic sine of x (units of x are radians)
TAN(x) Returns the tan of x (units of x are radians)
TANH(x) Returns the hyperbolic tan of x (units of x are radians)
ACOS(x) Returns the inverse cosine of x in radians
ASIN(x) Returns the inverse sine of x in radians
ATAN(x) Returns the inverse tan of x in radians
ATAN2(x,y) Returns the inverse tan of x/y in radians
EXP(x) Returns the exponential of x
LOG(x) Returns the natural logarithm of x
LOG10(x) Returns the logarithm (base 10) of x
POW(x,y) Returns x raised to the power of y
FMOD(x,y) Returns the floating-point remainder of x / y
FABS(x) Returns the absolute value of x
SQRT(x) Returns the square root of x
CEIL(x) Returns a value representing the smallest integer that is greater than or
equal to x
FLOOR(x) Returns a value representing the largest integer that is less than or equal
to x
HYPOT(x,y) Returns the length of the hypotenuse of a right triangle, given the length
of the two sides x and y. It is equivalent to the square root of x2 + y2
J0(x) Returns the zeroth order Bessel function of the first kind of x
J1(x) Returns the first order Bessel function of the first kind of x
JN(n,x) Returns the nth order Bessel function of the first kind of x
Y0(x) Returns the zeroth order Bessel function of the second kind of x
Y1(x) Returns the first order Bessel function of the second kind of x
YN(n,x) Returns the nth order Bessel function of the second kind of x
LDEXP(x,n) Returns x*POW(2,n)

2.5.13.6.15 Control Structures


The control structures are the same as used in the C language. Examples of the basic structures
are shown below.

1990-2012 Petroleum Experts Limited


433 GAP

if block If ( QGASIN > 6.0 )


{
PRESOUT = PRESIN 50.0;
QWATOUT = QWATOUT * 0.75;
}
if-else block if ( QGASIN > 6.0 )
{
dP = 50.0;
}
else
{
dP = 100.0;
}
PRESOUT = PRESIN - dP;
if ( PRESOUT < dP ) PRESOUT = dP;
while loop i = 0;
dP = 0.0;
while ( i < 10 )
{
dP = dP + 10.0;
i = i + 1;
}
PRESOUT = PRESIN - dP;
do-while loop i = 0;
dP = 0.0;
do
{
dP = dP + 10.0;
i = i + 1;
}
while ( i < 20 );
PRESOUT = PRESIN - dP;
for-loop dP = 0.0;
for ( i = 0; i < 21; i++ )
{
dP = dP + 10.0;
}
PRESOUT = PRESIN - dP;

GAP User Guide August, 2012


User Guide 434

2.5.13.6.16 Example Script


Calculating the number of days since 1900. The following script fragment will calculate the
number of days since 1900 for a calendar date.

// Date to convert is 14th September 1996.


Year = 1996;
Month = 9;
Day = 14;
// Check if a leap year - the rules are:-
// If divisible by 400 then it is a leap year
// If not divisible by 400 BUT divisible by 100 then it is NOT a leap year
// If not divisible by 100 but divisible by 4 then it is a leap year.
LeapYear = 0;
if ( Year % 400 == 0 )
LeapYear = 1;
else if ( Year % 100 == 0 )
LeapYear = 0;
else if ( Year % 4 == 0 )
LeapYear = 1;
Year = Year - 1900;
NumDays = Year*365;
// Add extra days for leap years
NumDays = NumDays + floor((Year+3)/4);
// Don't count the days for the current month
Month = Month - 1;
// Add up days for the months in the current year
while ( Month > 0 )
{
if ( Month == 2 )
{
if ( LeapYear == 1 )
NumDays = NumDays + 29;
else
NumDays = NumDays + 28;
}
else if ( Month == 4 || Month == 6 || Month == 9 || Month == 11 )
{
NumDays = NumDays + 30;
}
else
{
NumDays = NumDays + 31;

1990-2012 Petroleum Experts Limited


435 GAP

}
Month = Month - 1;
}

NumDays = NumDays + Day;

GAP User Guide August, 2012


User Guide 436

2.5.14 Inflow Icon

This element allows the user to decompose the wellbore into sections to model complicated
down hole geometry such as downhole control valves in multilayer systems.

The inflow data entry is split into three sections as described below.

Summary This screen gives the status of the input inflow data and allows the type
Screen of well (producer or injector) and the location of an appropriate
PROSPER file to be defined
Input This screen allows the input data to be entered. The options in this
Screen section are the same as the IPR description discussed in IPR
section 197
Results Contains the following fields:
Screen Network Solver Results
Prediction Results

2.5.14.1 Inflow Summary Screen


The inflow summary screen is shown below.

1990-2012 Petroleum Experts Limited


437 GAP

Browse The browse button is used to select the location of a PROSPER file that
contains the IPR description. The file defined here can be used to import
the IPR information into GAP as outlined in the section about IPR
Generation 452

2.5.14.2 Input
Refer to IPR section 197 for further details.

GAP User Guide August, 2012


User Guide 438

2.5.15 Grouping

The grouping option allows collections of equipment to be controlled from one icon.

The 'Group' summary screen is divided into three sections:

Summary Allows navigation to the constraints and grouping input screens.


Screen
Input Allows values to be entered to constrain and schedule the group
Screen
Results Contains the following fields:
Screen Network Solver Results
Prediction Results

In order to create a group of nodes firstly add a group to the current system screen. To associate
a node with a group there are two options:
1. Press the control key and press the left mouse button whilst hovering the cursor over the
node, and move the mouse cursor until it is over the group. Now release the left mouse
button.
2. Connect the well to the group using the 'Add Link/Pipe' tool

Three wells associated with Group1 are shown below.

1990-2012 Petroleum Experts Limited


439 GAP

2.5.15.1 Grouping Data Entry

2.5.15.1.1 Constraints
When constraints are entered into the constraints input screen, the values entered represent an
overall constraint that the sum the values for the nodes in the group cannot exceed.
For example, if the maximum gas production rate for "Group1" is set to 5MMscf/day, then the
overall quantity of gas produced from wells W1, W2 and W3 will be constrained to ensure
that this quantity is not exceeded.

GAP User Guide August, 2012


User Guide 440

For systems containing multiple compressors, the "Group Constraints" section


will show an additional constraint option for 'Maximum Power'. This feature has
been designed to be used to manage the maximum compressor power
distribution between two (or more) independent networks. It is not designed to
be used for single network systems.

A total compressor maximum power constraint for single network systems can
be imposed on any downstream node (or separator) from the last compressor
described in the given system.
2.5.15.1.2 Schedule
Scheduling is used during the prediction to change the constraints or to include or exclude
equipment in the system at a specific date during the forecast. The application of schedules is
the same for every element in the system. Please refer to the section above 246 for a description
of the feature.

2.5.15.1.3 Grouping
The screen that is displayed when the grouping tab is clicked is shown below:

1990-2012 Petroleum Experts Limited


441 GAP

Belongs Each group can belong to other groups. This field highlights the
to group groups this group belongs to
Does not This field highlights the groups this group does not belong to
belong to group
Group members Elements of the network that belong to the group

The 'Add' and 'Remove' buttons allow pieces of equipment to be added to or removed from the
current group.

Selection of elements belonging to a group


It is possible to select all of the members belonging to the group by right-clicking
on the group (or using the menu Edit/Selected Groups) and selecting Show
Members as Selected:

GAP User Guide August, 2012


User Guide 442

2.5.16 Flowsheets

Flowsheets can be created to facilitate the visualisation of very large GAP models that may
contain thousands of wells. The 'Flowsheet' can be used to embed parts of the main network into
a smaller sub screen. One application of the feature is described in detail in the Examples 960 .

Considering the GAP model below, a worksheet can be created to group all the wells flowing
from the manifold "WH1".

1990-2012 Petroleum Experts Limited


443 GAP

The objective for this small example will be to copy these elements (Res1, Well1, Well1_ESP,
and Well1_GL) into a separate flowsheet.

Step 1: Copy the Copy the items from using the "Select" pointer from the main tool bar
items
.
Once the 'Select' pointer has been clicked on, elements can be
marked for copying using a left-mouse click.
Once the desired model elements have been selected, simply right-
click in the main GAP screen and select "Extract to GAP Partial FIle
(*.gpp") from the pop-up menu.
This will save a .gpp file to a relevant directory.
To insert the previously copied sub network into the flowsheet, enter
the flowsheet and right-click and select "Insert GAP partial file" from
the menu.
Step 2: Create the Create a flowsheet element in the main production system, using the
Flowsheet "Flowsheet" icon from the main menu bar.
Step 3: Paste the In the new flowsheet, right clicking and select the option "Insert GAP
elements in the Partial File".
flowsheet Point it to the .gpp file that was created in step 1.
This will paste all the five elements inside the flowsheet.
Clicking on Window|Tile Vertically will display both the main network
and the flowsheet side by side.

GAP User Guide August, 2012


User Guide 444

Step 4: Create the The next step will be to create the flowsheet port.
'Flowsheet Port'
The flowsheet port is the hydraulic link between the flowsheet elements
and the main network. In the above example this link will be the joint
"WH1".

To create the flowsheet port, double click on the WH1 element inside
the flowsheet and in the summary section there is an option called
"Flowsheet Port". Select the 'Radio' button.

Alternatively, it is also possible to just right click on the WH1 and select
the option from the menu.

This will publish the WH1 element inside the main network as shown in
the figure below.

1990-2012 Petroleum Experts Limited


445 GAP

Step 5: Create the The worksheet port created on the main worksheet can now be linked to
link between the the rest of the network.
Flowsheet Port and
the other elements Since the objective is to link up the WH1 to the manifold, a link will be
in the main network. created between the flowsheet port and the joint called "Manifold". This
will of course be an empty link (no pipeline) between the two nodes.

Step 6: Copy the Since the pipeline definition is already present in the link between WH1
contents of the (old) and manifold, this needs to be copied across to the newly created
pipeline across to link between the WH1 (new) and the Manifold.
the newly created The easiest way to do this is to press down the CTRL button on the
pipe. keyboard, left click on the existing pipe and drag and drop onto the
newly created link.

GAP User Guide August, 2012


User Guide 446

The screen after the drag and drop will look like this.

Step 7: Delete the The duplicated items in the main production system can be deleted
duplicated Network
elements.

The initial model and this model above are exactly equivalent however
the main production system is visually simpler as it has fewer
associated elements.

It might be possible that an item remains duplicated (such as a common joint), and therefore the
icon will turn "invalid", as GAP detects two elements with the same label in the system.

Double clicking on the 'Flowsheet' icon will open up a new window


containing the section of network described in the flowsheet.

1990-2012 Petroleum Experts Limited


447 GAP

2.5.17 Notes on Constraints


When setting up the model, it is recommended to start with the minimum necessary
number of constraints. This is because from a mathematical perspective, increasing
the number of constraints drastically complicates the optimisation problem.
Keeping constraints to a minimum allows the user to validate and ensure that the
model is performing as it is supposed to. After the validation, the number of
constraints can be increased if necessary. However the user should always try to keep
the number of constraints to a minimum by only including constraints that reflect true
restrictions or contractual obligations in the field. This is to prevent unnecessary
complexity and moreover to prevent unfeasible problems from being created.

If the objective is to shut down a well if it cannot produce a minimum rate, then this can
be achieved by setting up an 'Abandonment Constraint' of minimum rate in the'
Abandonment' section. As soon as the well production decreases below the set
minimum abandonment constraint, the well will be automatically closed by GAP.

2.6 VLP/IPR Generation


This chapter describes the following procedures:

Batch mode transfer of well inflow performance relations from PROSPER


Batch mode generation of well vertical lift performance curves using PROSPER
Batch mode generation of pipe VLPs
How to import externally generated well and pipe VLPs into GAP
How externally generated well IPRs can be imported into GAP

NOTE: Toable to generate IPRs or VLPs in batch mode, GAP needs to know the path of the
PROSPER file associated to each specific GAP well model. Therefore a PROSPER file needs to
be associated to each well in GAP.

2.6.1 A well model in GAP


A well element in GAP is essentially a mathematical representation of a real well. It needs to be
able to reproduce the performance of the well in the field (Flowrates, Water Cut, GOR etc) in
order for the engineer to have confidence in making predictions with the model.

A well model needs to be able to predict the rate and bottom hole pressure based on some
prescribed conditions (well head pressure, GOR and WC). This is done on the basis of a VLP
and IPR relationship as shown below:

GAP User Guide August, 2012


User Guide 448

The intersection between the VLP and the IPR corresponds to the flowing rate and bottom hole
pressure under the defined conditions. Therefore it is the combination of these two relationships
that constitute the full well model (it is not possible to predict the well performance without the
relationship between them).

This type of well model requires VLPs and IPRs to be generated for a range of different
conditions which the well will encounter throughout the field life.

2.6.1.1 IPR
Inflow performance relationships are transferred from PROSPER.

GAP has the PI and Vogel relationship (for Oil wells) built into it that captures the IPR response
of the well. This option determines an equivalent PI that can match the curve from PROSPER and
this will be used to perform the well calculations. GAP does this by extracting three test points
from PROSPER which can be viewed in the IPR Match section of the Well Summary screen.

1990-2012 Petroleum Experts Limited


449 GAP

Two of test points extracted are above the bubble point and are used to determine the PI. The
third test point (which is below the bubble point) is used to determine the AOF based on the
Vogel method.

This simple approach allows GAP to capture the reservoir performance efficiently and accurately
without the need to implement any of the complex IPR models that are available in PROSPER.
The assumption here is that IPR has already been characterised in PROSPER using field data
and one of many models that are available so that when GAP extracts the test points they are
representative of actual well. This one of the reasons why the PROSPER files need to be
matched before building the network model.

In the case of gas or retrograde condensate wells the user has the option to choose from
different IPR methods (which can take into account the pseudo pressure) however in principle
the transfer from PROSPER is still the same as for oil wells. GAP will determine the coefficients

GAP User Guide August, 2012


User Guide 450

of the specified IPR model so that it is equivalent to the IPR in PROSPER.

NEW!!!
The "Per phase" IPR model calculates the individual phases directly from the following
equations:

Unlike the other models where we calculate the IPR based on the major phase (either liquid or
gas) and then determine the other phases from the pseudo relative permeability curves.

The data entered in the IPR section can be verified by accessing the well IPR Input 197 section.
2.6.1.2 VLP
Lift Curves are generated by the PROSPER well file. The procedure will be outlined in the
following sections 466 .

2.6.1.3 Importance of VLP Data Ranges


In order to enable GAP to calculate production rates and optimise, it is essential that the VLP/
IPR data represent the well performance accurately. In order to ensure this requires that the
VLPs are generated for a wide enough range of conditions so that we can capture the true
behaviour of the well throughout the field life.
For example, if the well head pressure was to decline to 100psig towards the end of the field life
and the VLPs of that well had only been generated to a minimum well head pressure of 300psig
then GAP is forced to extrapolate to find a solution. The extrapolation technique in GAP is linear
however the true response of the well, as consequence of changing the well head pressure
pressure by 200psig, will not be linear and consequently this will result in errors. If the
extrapolation is large enough the results can become non-physical and this can cause problems
for the solver.

1990-2012 Petroleum Experts Limited


451 GAP

Conversely, if there are not enough variables defined there can be large interpolation errors that
are created. For example, if the VLPs have been generated for only two manifold pressures (i.
e. 100psig and 7000psig) that are significantly different in magnitude, then large interpolation
errors will be implicit in the calculations that are carried out for the intermediate manifold
pressures. It is therefore not only important that the ranges used in the VLP variables capture
the full range of expected conditions but there should also be enough variables defined so that
the numerical resolution minimises any interpolation error.

In order to assist the user we provide recommended ranges 470 that should ALWAYS be
applied as they attempt to eliminate extrapolation errors and minimise interpolation
errors.

Another potentially problematic issue for the solver is poor quality VLPs. Quality in this sense
refers to the derivatives of the VLP curves which should always be smooth and continuous
according to the physics in the wellbore. Discontinuous VLPs are not representative of reality
and are associated with poor derivatives. If the VLPs appear poor then it could either be the
multiphase flow correlation which has been selected or it may be the PROSPER file that needs to
be reviewed to understand what may be causing the effect.

The quality of the derivatives affect the solver because they drive the direction it takes in
order to converge to a solution. Derivatives that are not realistic and consistent with the
physics can drive GAP away from the natural response of the system and create
convergence problems. For this reason it is always recommended to inspect the VLP
curves in the GAP well model, which can be done by clicking on "Inspect" in the well
VLP section (ref. VLP Inspection 223 section).

GAP User Guide August, 2012


User Guide 452

2.6.2 Batch Generation of IPRs

2.6.2.1 Single layer wells


The following description assumes that a PROSPER model which includes an IPR has already
been built for each well.

It is first necessary to tell GAP the location of the PROSPER files that describe each well. The
method of doing this is summarised below:

1. Open the well summary screen by double clicking on the well icon. A well summary
screen is shown in below:

1990-2012 Petroleum Experts Limited


453 GAP

2. Click on the summary button in the bottom left hand corner of this window.
3. Click on the "Browse" button to open a file selection dialogue box. From this dialogue
box select the appropriate PROSPER file for the well.

Repeat this process for each of the wells that require IPR generation. Note that this is an
operation that is performed just once, when the model is built.

Now that the appropriate PROSPER files have been specified for each well click Generate
Generate Well IPRs with PROSPER from the main menu.

There will be a prompt which allows the user to specify whether all of the wells should have their
IPRs generated or only a selected number of wells.

GAP User Guide August, 2012


User Guide 454

Once this has been clarified the following window will appear.

The button "Generate" is eventually used to transfer, in a batch mode, the IPRs from the
PROSPER files to the GAP well models.

The result is that the IPR is imported into the well IPR section.

1990-2012 Petroleum Experts Limited


455 GAP

In the case of multilayer wells (wells where multiple IPR have been added in the IPR layer
section), clicking the "Generate" button will display the "Enter Layer Indices" screen shown
below.

GAP User Guide August, 2012


User Guide 456

The "Enter Layers Indices" screen is used to select the information that will be assigned to each
layer in GAP from PROSPER. In the case of PROSPER files built with the multi-layer IPR model it
should be noted that the total IPR is transferred to GAP. It is also possible to transfer the
individual layer IPRs and this is explained in the following section.

Click | OK to start PROSPER. Each wells input (.OUT) file will be opened in sequence and the
IPR data will be automatically read into GAP.

GAP uses the IPR model defined in the well IPR section regardless of the type of IPR model
used in PROSPER. This means that oil IPRs are always modelled with a PI and Vogel correction,
while gas or condensate IPRs are always modelled with either Forcheimer, Forcheimer (with
pseudo pressure) or C and n. GAP takes the reservoir pressure and PVT information from
PROSPER along with three IPR data points. These points become the 'Match' points in the GAP
model, which are used in a regression to determine the IPR coefficients.

1990-2012 Petroleum Experts Limited


457 GAP

2.6.2.2 Multilayer wells


The two following cases will be addressed:

a) Generating multiple IPRs in GAP when having different PROSPER files for each layer.

b) Importing multiple IPRs in GAP when having one single PROSPER file with a multilayer IPR
model.

The following example considers a multilayer gas well:

Case a

In this case it is assumed that each IPR layer in GAP corresponds to one PROSPER file (***.out)
containing a single layer IPR model (Jones, Forcheimer, etc.). The objective is to import each
IPR into GAP. The following figure illustrates the objective.

This can be achieved by first associating each layer to the corresponding PROSPER model and
then generating the IPRs in batch mode allowing all of the transfer to be done in one click. The
process is as follows:
Associate each layer in GAP to the appropriate PROSPER model. This can be achieved
by accessing the IPR Layer section and selecting "Browse" to locate the file. This is
shown below:

GAP User Guide August, 2012


User Guide 458

Assign the layer number in PROSPER to the layer in GAP.


Repeat this procedure for each of the four layers.
Import the IPRs by selecting Generate | Generate well IPRs with PROSPER from the main
menu.

Case b

In this case it is assumed that there is one single PROSPER file (***.out) with a multilayer IPR
model, and we need to import each layer IPR from PROSPER into GAP. The following figure
illustrates the objective.

1990-2012 Petroleum Experts Limited


459 GAP

The process is as follows:


Associate the PROSPER file in the summary section of the well as below.

GAP User Guide August, 2012


User Guide 460

Open the PROSPER model (by clicking "Run PROSPER", highlighted in the figure above).
Access the IPR section in PROSPER (System | Inflow Performance Relation )

Click on 'Input Data', and deselect all the layers but the first one. This can be done by selecting
the blank option in the IPR type pop-down menu (the other layers data will be kept stored and
will be recall every time the IPR type is restored).

1990-2012 Petroleum Experts Limited


461 GAP

GAP User Guide August, 2012


User Guide 462

Click "Calculate" to calculate the IPR, then "Done" to exit the IPR screen.
Save the PROSPER file, and return to GAP by clicking "GAP" from the main PROSPER menu.
Once in GAP, select Generate | Generate well IPRs with PROSPER from the main GAP menu.
Click "All" and select the well for which to generate the IPR.
Click on "Generate". GAP will ask which tank model (in brackets) to associate the IPRs with.
Select the tank model using the drop down menu illustrated below and click "Ok".

1990-2012 Petroleum Experts Limited


463 GAP

The IPR will be only be generated for this specific layer (Layer 1).
In order to generate the IPR for the Layer 2, open the PROSPER file again.
In the PROSPER IPR section, deselect Layer 1 and select the Layer 2 as shown below.

GAP User Guide August, 2012


User Guide 464

The previous steps are then repeated (PROSPER file is saved, IPR generated in GAP for the
second layer, etc...).
Repeat this procedure for the remaining layers.
The IPRs of each layer can finally be inspected using the drop down menu in the GAP well
model, as shown below.

1990-2012 Petroleum Experts Limited


465 GAP

GAP User Guide August, 2012


User Guide 466

2.6.3 Batch Generation of Well and Pipe VLPs

2.6.3.1 Batch Generation of VLPs


This section describes the process of batch generating VLPs in PROSPER and transferring the
information to GAP. As with the batch transfer of IPRs described previously, it is necessary to
have pre-built the PROSPER files for each well and also to have these PROSPER files referenced
in the well summary screens. The process of referencing the PROSPER files is described in the
introduction of the "VLP/IPR Generation 447 " section of this manual.

The following description assumes that the PROSPER models have been built for each well and
are already associated to the well models in GAP.

To generate the VLPs click Generate Generate Well VLPs with PROSPER.

The screen shown below will be presented:

Select the wells to perform the VLP generation.

1990-2012 Petroleum Experts Limited


467 GAP

This can be used in the same way as for the "Batch Transfer of IPRs".

To generate VLP tables for GAP, check the "For GAP model" box. PROSPER will be used to
calculate and save a *.VLP file (GAP Binary VLP lift curves) which automatically be transferred
into GAP.

If the For Simulator option is selected then it is necessary to select a lift curve format
compatible with the simulator. There are a variety of formats available which are displayed in
the figure below.

GAP User Guide August, 2012


User Guide 468

The 'PVT Method' drop down box enables the user to select which PVT dataset is to be used to
generate the VLPs. The user can either follow the PVT in the PROSPER model, use a black oil
PVT model or a full compositional PVT model if available.

The For GAP model option must be used when modeling pipeline Pressure
and Temperature in GAP. No other VLP format allows for transferring the
temperature values from the well models to the surface network.

The next step is to define the range of sensitivity variables used for generating the VLPs. To do
this select "Data" which will prompt the following screen

1990-2012 Petroleum Experts Limited


469 GAP

The populate buttons can be used to automatically generate a range of variables based on a
spacing.

Enter rates (up to 20) and a range of values for the manifold pressure, GOR and water cut. Note
that the sensitivity variables will change depending on the type of well and the fluid being

GAP User Guide August, 2012


User Guide 470

produced.

The values used for generating the VLP curves are dependent upon the conditions of the field.
The objective is to generate the VLP curves with a range of values that encompass all of the
expected conditions that will be experienced during the field life. The reason for using a high
range of values is so that GAP will always interpolate between the VLPs to find a solution.
Extrapolation, as previously described 450 , can give incorrect results or cause problems for the
solver.

A recommended range of sensitivity variables for different wells can be found here 470 .

Once the sensitivity variables have been entered for each well select the "OK" button to return to
the selection screen. GAP is now set up to calculate the well VLP curves in a batch.

Before generating the VLP curves, make sure that the correlation used in the PROSPER
corresponds to the correlation that is matched to the well test data (if any). When the "Generate"
button is pressed GAP will automatically direct PROSPER to calculate a VLP for every single
combination of the sensitivity variables entered in the "Data" section. The completed VLP
tables will be automatically saved as a .vlp file and transferred to the VLP section of the
corresponding well element in GAP.

The progress of the calculations can be monitored with the progress bar (shown below).

Once the generation is successfully completed, a screen will be prompted to notify the user.
Once finished the user must inspect the quality of the VLP curves to ensure that they are valid
for the network calculations. This is done by selecting "Inspect" in the well VLP section and
plotting the VLP curves for different variables and checking the quality of the derivatives.

2.6.3.2 Values to use for VLP Generation


The values used for generating the VLP curves are dependent upon the conditions of the field.
The objective is to generate the VLP curves with a range of values that encompass all of the

1990-2012 Petroleum Experts Limited


471 GAP

expected conditions that will be experienced during the field life. The reason for using a high
range of values is so that GAP will always interpolate between the VLPs to find a solution.
Extrapolation, as previously described 450 , can give incorrect results or cause problems for the
solver.

The following values can be used as suggested intervals to enter the data for the VLP curves.
Although these values will not correspond to the ideal ranges for every type of system they are
still a good starting point and the engineer is recommended to use them for guidance.

For Naturally Lifted Oil Wells.

From To Number of Distribution of Comments


Points Points
Liquid Rate From low AOF 20 Geometric
value (say (Absolute Spacing
100 stb/d) Open Hole
Flow of well)
Top Node From Reservoir 10 Linear Spacing The Top Node Pressure
Pressure separator Pressure corresponds to the Well
pressure Head Pressure.
value (for
example,
100 psig)
Water Cut 0% 90% or 95 % 10 Linear Spacing
or 99 %
GOR A value less 25000 scf/stb 10 Geometric The Solution GOR
than Spacing should be entered for
Solution one of the values to avoid
GOR unnecessary
interpolation. The value
less than Solution GOR
corresponds to the
reduction in GOR when
Reservoir Pressure just
falls below the bubble
point.

For Gas Wells

From To Number of Distribution Comments


Points of Points
Gas Rate From low AOF 20 Geometric
value (say (Absolute Spacing

GAP User Guide August, 2012


User Guide 472

0.1 MMscf/d) Open Hole


Flow of well)
Top Node From Reservoir 10 Linear Spacing The Top Node Pressure
Pressure separator Pressure corresponds to the Well
pressure Head Pressure.
value (for
example,
100 psig)
WGR 0 Refer to 10 Linear Spacing The value for Maximum
Comments WGR is dependent upon
on the Right the system. Generally a
value of 100 stb/MMscf is
reasonable.
CGR 0 Refer to 10 Geometric The value of the
Comments Spacing maximum CGR is
on the Right dependent on fluid
properties.

For Retrograde Condensate Wells

From To Numb Distribution Comments


er of of Points
Point
s
Gas Rate From low value AOF 20 Geometric
(say 0.1 MMscf/d) (Absolute Spacing
Open Hole
Flow of well)
Top Node From separator Reservoir 10 Linear The Top Node Pressure
Pressure pressure value Pressure Spacing corresponds to the Well
(for example, 100 Head Pressure.
psig)
WGR 0 Refer to 10 Linear The value for Maximum
Comments on Spacing WGR is dependent upon the
the Right system. Generally a value of
100 stb/MMscf is
reasonable.
GOR A value less than Refer to 10 Geometric The value for Maximum
GOR of the under Comments on Spacing GOR is dependent upon the
saturated the Right fluid properties.
condensate at
reservoir
temperature

1990-2012 Petroleum Experts Limited


473 GAP

For Artificially Lifted Wells

The VLP Data section for Artificially Lifted Wells requires inputting a fifth variable. The following
table shows the variables and values for different types of Artificially Lifted Wells.

Variable Values Comments


Gas GLR Injected or 0, 100, 200, 400, 800, 1600, Using the GLR Injected as a variable
Lifted 3200, 6400, 12800, 25600 will ensure that the VLP curves will
Wells (in scf/stb) always interpolate for the Gas Lift
Gas Rate. This is the
recommended method.
Gas Lift Gas Rate Enter the range of values that could
(not be injected in the well
recommended)
ESP wells Frequency of Depending on the Variable
Operation Frequency Drive Option, enter the
range of values for the frequency of
motor operation. These generally
range from 40 to 70 Hz.
PCP Well Motor RPM The Motor rpm corresponds to the
Pump Speed.
Jet Pump Power Fluid Rate
Well
HSP Well Pump Rotational
Speed
CBM Well Liquid Level The maximum depth of the liquid
level cannot exceed the depth of the
pump

The number of VLPs that can be generated is limited to 32,000 and the engineer must
take care in ensuring that this is not exceeded when generating VLPs for gas lifted wells
that include the casing pressure.

For GAS Injection Wells

From To Number of Distribution Comments


Points of Points
Gas Rate From low AOF 20 Geometric
value (say (Absolute Spacing
0.1 MMscf/d) Open Hole
Flow of well)

GAP User Guide August, 2012


User Guide 474

Top Node From low Reservoir 10 Linear Spacing The Top Node Pressure
Pressure value (for Pressure corresponds to the Well
example, Head Pressure.
100 psig)
WGR 0 Refer 10 Linear Spacing The Maximum Value for
Comments WGR is dependent upon
on Right the quality of the gas
being injected. Generally
a value of 50 stb/MMscf is
reasonable.
CGR 0 Refer 10 Geometric The Maximum Value of
Comments Spacing CGR is dependent upon
on Right the quality of the gas
being injected which can
change if different lines
are being blended before
the gas arrives at the
wellhead.

For WATER Injection Wells

From To Number of Distribution Comments


Points of Points
Liquid Rate From low AOF 20 Geometric
value (say (Absolute Spacing
100 stb/d) Open Hole
Flow of well)
Manifold From low Reservoir 10 Linear Spacing
Pressure value (for Pressure
example,
100 psig)
FWHT The temperature range
is dependent on the
temperature at the
injection manifold and
the surrounding
temperature in the
pipelines.

The VLP calculation data can easily be copied from one well to another using the
copy and paste functions. When copying data from one well to another, it should
be ensured that the data cover the operating range of the new well.

1990-2012 Petroleum Experts Limited


475 GAP

2.6.3.3 Generating Well VLP on a well-by-well basis


The generation of VLPs can also be carried out for an individual well by following the different
procedures below. These methods may be preferable if a model is small or if additional wells
are being added to an existing GAP model.

If the user only wants to generate the VLP file for " Well_A" then select this well only when the
following option is given when accessing the Generate | Generate VLPs with PROSPER.

Once "Well_A" has been selected it will be the only well that appears in the VLP generation
screen and the procedure is exactly the same as in the section described previously.

GAP User Guide August, 2012


User Guide 476

Alternatively, the VLP file can be generated in PROSPER and then exported to be used in GAP.
The procedure is as follows for generating the VLP file in PROSPER:

1. Load PROSPER from Windows or from the well data entry screen and open (or create)
the appropriate PROSPER well file.

2. The VLP curves can be generated by selecting Calculation | VLP Tubing Curves from
the menu bar.

3. Enter the top node pressure and water cut values into the input table and a range of liquid
rates that encompass the full range of operating conditions into the table at the bottom
screen. Now press the 'Continue' button at the top of the screen. This will display the
sensitivities screen shown below.

4. For a naturally flowing well the first node pressure, GOR and water cut must be varied.
For a gas lifted well the GLR injected must also be varied. An error message will be
displayed and the created file will not be useable in GAP if variables other than the above
are varied.

5. To start the generation of the VLPs click "Calculate".

1990-2012 Petroleum Experts Limited


477 GAP

6. The 'Export Lift Curve' button allows the user to export the curves in a variety of different
formats. For use in GAP select 'Petroleum Experts - GAP/MBAL'.

7. To import the file into GAP open the appropriate well VLP screen, click on the Import
button and then locate the file that has just been exported from PROSPER using the
Browser. GAP will automatically convert it to a .vlp file, and the name will be displayed in
the VLP file field of the dialogue.

GAP User Guide August, 2012


User Guide 478

2.6.3.4 Batch Generation of VLPs with Mass flow rates


The classic definition of a VLP curve is that it provides a physical relationship between the
surface rate (expressed at standard conditions) and the bottomhole pressure (considering the
pressure losses from wellhead to the top of the perforations) as a function of the operating
conditions (for example manifold pressure, WC and GOR).

In this definition the flow rates are defined as volumetric rates at standard conditions (STD). It is
important that this is understood as there are implications in this definition. This is because the
volumes measured at standard conditions are dependent on the way in which the fluid is
processed in order to reach standard conditions. Although the mass of fluid flowing will be the
same, the volumetric rates of the of the oil and gas at standard conditions can have different
rates (if the number of separator stages is different for example).

Defining the rates in terms of mass has the benefit of making the rates (hence the
VLPs) process independent. This is because volumetric rates at standard depend on
the process used to analyse the fluid, whilst mass is invariant, therefore does not
depend on the process used. This option is particularly useful when coupling models
that have different process paths to standard conditions defined. Using mass means
that the VLP and IPR would not have to be regenerated every time the process
changes.

When one of the compositional PVT models (see above 154 ) is selected, it is possible to
generate the lift curves with mass flow rates. To achieve that:
The PROSPER well model should be set to 'Equation of State'.

In GAP, in the well summary screen (accessible by double-clicking on the well) the rate
model should be set to "Use mass".

1990-2012 Petroleum Experts Limited


479 GAP

Generate the VLPs directly in PROSPER as showed in the section above 475 . In PROSPER
the 'Rate Type' selected in the VLP calculation section should be selected as
'Hydrocarbon Mass Flow Rate' :

GAP User Guide August, 2012


User Guide 480

And in the "Cases" the GOR should be replaced by a range of 'Molecular Weight', whilst all
of the other variables should be the same as the volumetric rate VLPs.

There are a few points that need to be considered before working on the basis of mass. In the
field we generally work on the basis of rates. So if rate constraints are to be introduced into the
system then a process must also be considered as the rates are dependent on the process that
fluid is passed through. In this case, the reference conditions in GAP need to be taken into
account so that we can translate these rate constraints into the model. Additionally, the regular
tasks of evaluating well performance and re-tuning the well models in PROSPER becomes more
difficult as the well test data will always be expressed in terms of rates and the equivalent mass
form would have to be repeatedly determined. Therefore from the perspective of managing the
model, using mass can actually demand more work for the engineer in the long term. It is
therefore recommended to carefully evaluate what the objectives are for the model before
considering if this approach should be used.

2.6.3.5 Batch Generation of Pipe VLPs


The batch generation of Pipe VLPs has been added to GAP to allow lift curves to be generated
for pipes based on either an underlying PROSPER file or the internal GAP correlations.

The procedure for generating pipe VLPs is similar to well VLPs. Select Generate | Generate
Pipe VLPs from the GAP menu bar.

1990-2012 Petroleum Experts Limited


481 GAP

If no wells have been selected, then the following screen will appear.

Clicking on "All" will select all the pipes in the system that have the "Use lift curves" option
selected.

Clicking on "Data" will display the "Generate Data" screen shown below.

GAP User Guide August, 2012


User Guide 482

This is used in the same way as described in the user Guide for "Well VLP generation" in that
the user must ensure that the sensitivity variables encompass the full spectrum of operating
conditions that are expected throughout the field life.

The lift curve options should be handled with care and are not recommended for
modelling the pipeline pressure drops. The fundamental reason for this is because of
the PVT. The lift curves have to be generated for a constant PVT which for most
pipelines is not a valid assumption as the type of fluid flowing through the lines can
change very heavily as the relative proportions of the commingled fluids coming from
different wells changes over time. The recommended approach is to use the GAP
Internal Correlations as these will handle any change in the fluid properties and there
will be no interpolation errors which are inherent in the pipeline lift curves.

It is important to note that as pipelines can flow in either direction, therefore the
range of rates selected for the VLP calculation should include both negative and
positive rates, as in general the flow direction is not known until the calculation has
been performed.

Populate the list of sensitivity variables for all of the selected pipelines.

Clicking on the "Ok" will return the user to the Generate dialogue. From this screen, press the
"Generate" button to begin the batch generation of the pipe VLPs. Once this is successfully
completed the software will prompt the user with a message.

As with the well VLPs, once the pipeline VLPs have been generated the user must inspect the
quality of the lift curves to ensure that they are valid for the network calculations. This is done be

1990-2012 Petroleum Experts Limited


483 GAP

selecting "Inspect" in the "Lift Curves" section of the pipe element and plotting the lift curves for
different variables and checking the quality of the derivatives.

GAP User Guide August, 2012


User Guide 484

2.6.4 Batch Generation of Well Performance Curves


This section describes the process of batch generating performance curves for the GAP well
models, using the well VLPs and IPR previously generated.

The 'Performance Curves' (PCs) are generated for unique values of Reservoir Pressure, WC (or
WGR for gas wells) and GOR (or CGR for dry gas wells). During a prediction, the PCs are
regenerated before each timestep using the WC, GOR and Reservoir Pressure coming from the
tank models.

In order to batch generate the PCs, the well models need to have previously been changed to
"PC interpolation". To do this select all the wells using Edit | Select All | Wells

And then Edit | Selected Wells and Inflows | Set Well Model | PC Interpolation.

1990-2012 Petroleum Experts Limited


485 GAP

Once the GAP well models are modified to "PC Interpolation", the batch generation option can
be followed.:

If no wells have previously been selected then this screen will be displayed:

GAP User Guide August, 2012


User Guide 486

This can be used in the same way as discussed for well selection during "Batch Transfer of
IPRs".

When the wells are selected from the list below, click "Continue":

On the table below, the well are listed accordingly to their types (Naturally flowing, Gas lifted,
ESP...):

1990-2012 Petroleum Experts Limited


487 GAP

As mentioned before, the WC, GPR and Reservoir Pressures are unique. They are by default
coming from the well IPR sections. However, the user has the option to "Transfer" the variables
from the "Wells Model Validation" screen.

The 20 different Manifold pressures can either be entered by hand or automatically generated
(recommended) by GAP using the "Automatic WHP" option. The "Generate" button will
calculate the Performance Curves.

Note on Gas Lift wells

For Gas Lift wells, the Performance Curves are generated for two variables:
1. Manifold Pressure (as the other wells)
2. GLR injected

GAP User Guide August, 2012


User Guide 488

As for the other wells, the range of Manifold Pressure has to be entered. The range of GLR
injected is then automatically selected by GAP.

Although the VLP/IPR intersection method is the preferred option as it is the more
accurate, the PC's curves can help to speed up the run times in very large systems.
Performance curves can also be used to highlight any issues in the quality of the VLP
curves.

1990-2012 Petroleum Experts Limited


489 GAP

2.7 Model Validation


In any GAP model it is important that the well models can reproduce the measured well
data from the field reasonably closely.

This section introduces the user to the 'Model Validation' menu option in GAP, which allows
efficient quality checking of the well models in GAP against measured field data, with added
functionality of being able to trouble shoot individual wells.

This chapter describes the validation of well models in GAP using the "Model Validation" menu
options. The well performance model considered can be either:

Performance Curves or
VLP/IPR intersection

2.7.1 Well Model Validation


The following assumes that the PROSPER well model has been matched to measured
production data.

The following steps outline how to ensure that the accuracy of the PROSPER model has been
preserved within GAP. The accuracy of the well models must be checked before attempting an
optimisation.

The following sections describe the quality checking methodology.

2.7.2 Checking Wells Calibration


'Model Validation' is based on measured reservoir pressure, water cut, GOR (for oil and
retrograde condensate producers wells) and manifold pressures recorded in a test.
GAP uses either the performance curves or the VLP and IPR curves entered in the well input
screens and calculates well production rates for the specified test conditions.
The calculated well rates are displayed against the measured rates and an overall liquid error is
indicated. Changes can then be made to the model in order to respect the measured data.

2.7.2.1 Running Model Validation / Quality Check


The objective of the model validation is to verify that the model reproduces the measured data
from the field to within an acceptable tolerance and to verify that the PROSPER models are

GAP User Guide August, 2012


User Guide 490

consistent with the well models in GAP. Once the engineer is confident that the model is a
reasonable representation of reality then it can be used for short or long term optimisation and
forecasts.

To carry out a "Model Validation" calculation, enter the following screen by selecting Model
Validation | Well Models Validation from the main menu.

On entering the dialogue, select the well type to work with and whether the oil or liquid rates
should be used when entering rates. (this will depend on the measured data available).

The values of Reservoir Pressure, Water Cut and GOR present in the wells IPR screen can be
transferred to this screen (for gas producers the CGR and WGR will be transferred). This is
done by using the "Transfer" button located at the bottom of the screen.

1990-2012 Petroleum Experts Limited


491 GAP

Select the "Transfer" from IPR/VLP option. The option "Transfer to IPR/VLP" option enables the
user to transfer the data from the validation screen in the IPR section of the wells considered.

The Transfer menu allows the engineer to transfer the well test data used
in the VLP/IPR matching in PROSPER. This is done by selecting "Transfer
latest Well Tests from associated PROSPER files" as shown below:

GAP User Guide August, 2012


User Guide 492

The wells to select can be chosen from the well list that is displayed once the user selects
continue.

If required, the transferred data (Reservoir Pressure, GOR, WC) can be changed manually to
match the field measured data. For the wells described with performance curves, the reservoir
pressure column will be disabled.

The "Import" button can be used to import a dataset from a text file. The "Paste" button can be
used transfer data from the clipboard.

Once part of the dataset has been transferred using the "Transfer" button, it will be possible to
enter the Manifold Pressure and Liquid Rate (or Gas Rate) that was measured during the well
tests.

1990-2012 Petroleum Experts Limited


493 GAP

Click the "Calculate" button and GAP will use the intersection of the VLP and IPR curves to
determine the rates predicted by the model at the test conditions.

Rates are marked with a contrasting colour if the lift curves were extrapolated to find a
solution.

In the case of a multi-layer IPR model, GAP will use the layer pressures used
in the well IPR entry screen and will disable the reservoir pressure column.

Once the calculation has been done, the user can compare the measured rates against the
calculated rates of the well models. If there are significant differences then the models can be
updated accordingly.

GAP will display a No Solution message if no intersection could be found.

GAP User Guide August, 2012


User Guide 494

2.7.2.2 Checking the Quality of Individual Wells Graphically


If a well has a large deviation between the measured and calculated rates, then the model can
be analysed using the "Edit" button to access the well input screen for troubleshooting purposes.

The intersection of the VLP and IPR can be visualised by selectings "Plot".

Once the reason for any discrepancy between measured and calculated well performance is
identified, any required adjustment can be done (e.g. PI adjustment, VLP re-generation with a
more appropriate range of variables).

As a final step, the values of reservoir pressure, water cut and GOR can be transferred back to
the wells IPR screen by using the 'Transfer' button as illustrated previously, using the option To
VLP/IPR screen. This step is required if GAP is to update the existing values in the wells with
the current measured values.

While troubleshooting always check that the IPR, PVT, reservoir pressure etc. are
identical to that of test. Also check that the set of VLP curves used in GAP have
been generated with a reasonable range of variables (i.e. there are no
extrapolation errors.

1990-2012 Petroleum Experts Limited


495 GAP

2.8 Network Solver and Optimiser


This chapter describes how GAP solves the surface network for the pressures and rates at every
node in the system. A completely defined system must have the following:

All wells with valid IPR and VLP data (or Performance Curve data).
All pipelines and other surface equipment defined and calibrated.

2.8.1 The Solver


The solver in GAP essentially generates a set of mass and pressure balance equations for each
node in the system, as explained in the Core GAP technique 19 . In this way a set of equations
that describe the whole network is created. Once the boundary conditions are applied, which are
fixed pressures in the system and implemented through the "Separator" elements the problem
can be solved.
In order to solve this system of equations under the applied boundary conditions the solver,
which is based on the Newton-Raphson method, iterates using the derivatives of each element
in the system in order to converge on the criteria that mass balance and pressure balance is
preserved at every node in the system (to within acceptable tolerance). Once this convergence
criteria is satisfied, the flow and pressure distribution according to the applied boundary
conditions corresponds to the natural physical response of the system.

2.8.2 The Optimiser


GAP contains at its core a powerful non-linear optimisation algorithm (NLP) which can identify
the optimum control settings (well head chokes, ESP frequencies, compressor speeds, gas
injection rates etc.) that maximise the production of hydrocarbons whilst honouring physical
constraints throughout the system.

Please refer to the section on the Optimiser 20 for further details.

2.8.3 Constraints and Equipment Control Screen


2.8.3.1 Constraints
Constraints can be used to choke wells back to meet production targets or processing
limitations while optimising fluid(oil, gas or retrograde condensate) production.

The optimiser in GAP is designed to optimise on the objective functions, which could be the oil
produced, revenue earned or gas produced depending on the options selected as defined in the
next section. The optimisation which is carried out is subject to the constraints entered at various
levels in the network.

GAP User Guide August, 2012


User Guide 496

The results of the optimisation will provide the engineer with the following control settings:

For Naturally Flowing Wells (Wellhead dP)


For Inflow Elements (down-hole dP)
For Gas Lifted Wells (Gas Allocated to the Well / dP at well head)
For Diluent Injection Wells (Diluent Injection Rate / dP at well head)
For CBM Wells with ESP or PCP (Frequency or Speed of operation and dP
at well head) NEW!!!
For SRP Wells (Pump speed / dP at well head) NEW!!!
For ESP Wells (Frequency of operation / dP at well head)
For PCP Wells (Speed of operation / dP at well head)
For HSP / Jet Pump Wells (Power Fluid Injection Rate / dP at well head)
For Inline Controllable Chokes (dP)
For Pumps with Control (Speed of rotation)
For Compressors with Control (Speed of Rotation)
For Optimised Inline Injection (Gas injection Rate)

When performing optimised runs, the wells in the system should be set
controllable (this tells the optimiser that the wells can be choked back to
control the system).

2.8.3.2 Equipment Control Screen


The equipment control screen provides the user with a summary of the status of all of the
different elements of the system relative to actual readings from the field and the suggested
'optimised' settings.

The equipment control screen can be accessed using the icon on the menu bar. The
equipment control screen appears as follows:

The equipment control screen will display all of the system equipment that can be controlled by

1990-2012 Petroleum Experts Limited


497 GAP

the optimiser, along with their control variable values.

The top part of the screen enables the user to filter the equipment list by equipment type, sub
type, control type, optimised only or Non optimised only elements (the figure above is filtered on
"Optimised only'). Once a specific layout has been defined, the "Save Layout" button enables
the user to save the current configuration to memory so that it can be recalled at a later date.

The bottom part of the screen displays the list of system elements as follow:

Equipment Enables the identification of the element considered


Label
Control Indentifies the parameter of a system element that can be controlled by
Type the optimiser
Control Identifies if the an element is controlled by the optimiser or is set to a
Mode fixed value
Measured Relates to the model validation 489 facilities and displays the current
measured value of the parameter considered.
Actual Displays the current value of a parameter in the system. For instance, if a
gas lift gas injection rate for a well has to be fixed, the value of gas lift gas
injection will be specified in this section and the control mode set to
'Fixed' value using the 'Edit' button.
Optimised Displays the optimised value.
Minimum If the control parameter is bounded by a minimum value, it will be
displayed.
Maximum If the control parameter is bounded by a maximum value, it will be
displayed.
Unit Refers to the unit used to define the control parameter
Edit Transfers the user to the 'Control' section of the element considered.
Transfer Enables the user to transfer one set of values from one column of the
equipment control screen to another (i.e. transfer optimised parameter
values to the actual column for instance).

2.8.3.3 Optimisation Objective Function


This section defines the objective function used by GAP to optimise the system To set the
objective function, click on Options | Method and choose from the available options in the
Optimisation method.

GAP User Guide August, 2012


User Guide 498

The following options are available.

Production This option optimises the production rate of the primary fluid (in an oil system
this is the oil for example) and penalises on the water production. GAP will
calculate the maximum rate of the primary fluid that can be achieved while
honouring any constraints in the system.
Revenue This option optimises on the revenue generated by sales of oil and gas
produced after taking into account specified costs. If this option is selected,
then prices need to be defined for each fluid in the system (see below).

Revenue from oil sales


Revenue from gas sales
Cost of water processing
Cost of injection gas
Cost of power
Cost of steam

1990-2012 Petroleum Experts Limited


499 GAP

Up to 32 different Tax Regimes can be set in one system and the currency can
be defined by selecting "Currency Setup". Different Tax Regimes can be
associated to different wells in the system.

The default Tax Regime is selected in Options | Default Settings.


Oil rate only / These methods are used when the objective is to maximise the Oil rate or the
Water rate Water rate only.
only
Gas + Oil rateThis method allows the user to maximise, at the same time, oil and gas
rate only production rates and honour constraints in the system.
Gross This option maximises the gross heating value produced by the field. This
Heating option is mainly used in the case of gas fields where one would like to
Value maximise the heating value of the delivered gas.
If the GAP model contains various streams of gas that will contain different
compositions and hence gravities, the optimizer will control the system in
order to provide at the delivery point a blend of gas that can have the highest
possible heating value. In black oil mode, the program will use a correlation to
associate the heating value to the gravity of the gas (Figure 4.82 in the
Handbook of Natural Gas Engineering published by McGraw-Hill).
Gas Rate This method allows the user to maximise, at the same time, oil and gas
with production rates and honour constraints in the system. This objective function
Preference to has a weighting on the oil content and can be particularly useful for optimising
Oil Content condensate systems.
NEW!!!
For example, a condensate system with large flowlines can have significant

GAP User Guide August, 2012


User Guide 500

pressure drops with increasing oil rate. This can impede gas production to
the extent that we may not satisfy our gas contracts. The "Gas Rate with
Preference to Oil Content" will ensure that we meet our gas contract and will
then try to maximise the oil rates in the system by finding the optimum fluid
fractions that minimise the production losses in the flowlines which may not be
captured by the option "Gas + Oil rate only" which has no weighting factor
assigned to a particular phase.

1990-2012 Petroleum Experts Limited


501 GAP

2.8.4 Solving the Network


There are three different options for solving the Network:

No optimisation
Optimise with all constraints
Optimise potentail constraints only

These options will be discussed later in this section.

To solve the network select Solve Network | Run Network Solver... from the main GAP menu.

If there are any gas lifted wells in the system then the total amount of gas lift gas that is available
needs to be specified. The pressure at the separator, which corresponds to the boundary
condition, must also be entered.

Up to ten different pressure boundary conditions can be entered and solved. Note that in a gas
lifted system the option changes and only one pressure can be specified however the user has
the option to enter ten different variables for the amount of available gas lift.

Once the total available gas lift has been defined (if there are gas lifted wells in the system) and
the separator pressure has been specified, selecting "Next" will bring the user to the following
screen.

GAP User Guide August, 2012


User Guide 502

The user can then specify the calculation mode and then solve the system by selecting
"Calculate".

The highlighted sections of the network solver window inform the user of how the calculation
progressed.

1.) Max Pressure Drop/ Mass Balance difference.

This tells the user what the maximum pressure drop or mass balance difference is at any of the
nodes in the system. If any of these exceed the tolerance set in the model then GAP will highlight
the nodes in the system (provided this option has been switched on).

2.) Last Error.

This is the error associated with the solver. It is an indication of whether the model has
converged properly. Large errors mean the solver has not converged and the engineer needs to
review the input into the model.

3.) Last Guess.

The last guess reports the objective function. For example, in this case as we are dealing with
an oil system (and the oil rate is therefore the objective function) and the value reported is the
optimised oil rate.

1990-2012 Petroleum Experts Limited


503 GAP

2.8.5 Solver Modes


This section describes the different calculation modes that can be selected when solving the
network:

NEW!!!
The user has the option to implement script during the 'Solve Network'. If some overlying logic is
to be applied during the solve then this can be captured using the "Run Prediction Script" option.

2.8.5.1 No Optimisation
This option invokes the solver only and GAP will calculate the pressures and rates throughout the
network to give the natural response of the system. Note that the natural response in this sense
refers to when the wells are fully open. The solution is according to the following criteria:

No constraints specified in the system are attempted to be honoured

GAP User Guide August, 2012


User Guide 504

For artificially lifted wells, the solver reads and applies the corresponding artificial lift
parameters for each well from the Equipment Control screen under the section "Actual".

For any Equipment with dP Control (Wells and online Chokes) specified as "Calculated"
in their respective control screen, GAP will apply the dP specified in the Equipment
Control screen under the section "Actual".

For any Equipment with dP Control (Wells and online Chokes) specified as a "Fixed
value", GAP will apply the value entered in the "Control" screen.
2.8.5.2 Optimise with all constraints
This option invokes both the solver and the optimiser. In this case the natural response of the
network may not correspond to the systems optimum and GAP will apply its powerful algorithm
to maximise a given objective function whilst honouring any specified constraints.

The solution given will satisfy the following criteria:

All specified binding constraints are honoured (provided they are feasible).

For artificially lifted systems, the optimiser allocates the artificial lift parameters (e.g. the
gas lift gas amongst gas lifted wells) in such a fashion that overall production is optimised.

For any equipment with dP Control (wells and inline chokes) specified as "Calculated" in
their respective "Control" screens, GAP will determine the necessary pressure drop to
apply in order to obtain the optimum solution.

For any equipment with dP Control (Wells and inline Chokes) specified as a "fixed value",
GAP will use this fixed value during the entire optimisation. This allows the user to remove
control from certain elements in the system and still carry out an optimisation calculation.

If this mode is selected, an option to also calculate the potential becomes available. If this option
is checked, GAP will determine the potential of the system and report it in the results. The
potential of the system is calculated by solving the network with the well head chokes fully open
therefore it is possible for bottle necking to occur in the pipelines and in such cases it is
possible for the potential to be less than the optimum rates.

Note
The constraints that have the "Potential" option turned to "Yes" will still be considered and
honored during the potential calculation.

1990-2012 Petroleum Experts Limited


505 GAP

2.8.5.3 Optimise with potential constraints only


GAP will optimise the system honouring the "potential" constraints only.

By default some of the constraints are set to "Yes" which are considered "physical" constraints
that are typically encountered in the field. The potential constraints are the constraints with the
potential option set to "Yes" (see figure above) and the GAP optimiser will honour these during
the calculations. The constraints that are set to "no" will be ignored during the calculation.

The user has the flexibility to include any of the constraints in the potential calculation. This is
done by modifying potential option to "Yes" as shown below.

GAP User Guide August, 2012


User Guide 506

2.8.6 The Solver / Optimiser Settings


The Solver and the optimiser both use numerical schemes to find a solution. For these schemes,
the derivatives (rates of change) of each element need to be calculated numerically. Also, we
define various tolerance criteria in order to check for convergence. All these criteria are defined
under the "Settings" which is highlighted in the figure below.

Selecting the Settings button will prompt the following screen with the default settings.

1990-2012 Petroleum Experts Limited


507 GAP

GAP offers various configurations which can be modified to handle any system of any
level of complexity. However, over 90% of systems can be accurately and efficiently
modelled using the "Default" configuration which has been tested extensively with
numerous different models with a high level of diversity. On this basis we discourage
the manipulation of solver/optimiser settings unless the user is an experienced user and
comfortable with formulating optimisation problems.

The following configurations are available:

Default
Fastest but may be less accurate in small systems
Large System (to speed up)
Quick and Rough
Tight tolerance (slower)

GAP User Guide August, 2012


User Guide 508

To change a Base Configuration, click on the drop down list box, selected the base
configuration that you wish to change to. Then, click on the Apply button, followed by the Reset
button.

Beyond this, the experienced user may customise the various settings.

Below are some descriptions of the available settings.

Solver - Max iterations This is the maximum number of iterations the solver is allowed to
perform in order to converge. If convergence has not been
achieved within this number of iterations, then the solver will
simply stop. However, in most systems the solver will require
much less iterations than 50 (the default number) so if
convergence has not been achieved, this may indicate a problem
in the model setup which prevents the solver from finding a
solution
Solver - Jacobian This parameter exaggerates the slopes (derivatives) hence a
Term Multiplier faster solution can be achieved if this value is increased.
However, there is the possibility that by increasing this value, the
solver may overshoot and cause problems with the convergence
Solver - pressure The GAP network Solver works with derivatives which are
perturbance created with a certain change in pressure. This delta in pressure
defines the magnitude of perturbation (in psi)
Solver - Total Rate This is the total rate used to calculate the derivatives (as with the
Perturbance pressure perturbance described above). A value of 1 (Mstb/day
or MMscf/day depending on the system being oil or gas) is the
default one and should be fine for most cases. If the model
contains chokes and long pipelines with small ID for instance, it is
recommended to reduce the total rate disturbance to 0.1 or 0.01
as appropriate
Solver - pressure Used to normalize the derivatives of dp/dDp and dq/dDq. It
balance normalizer defines the relative weighting of the pressure balance error
relative to the rate error. The smaller the value the more accurate
the balance will be, but then the more difficult it is to converge
Solver - well initial It is the fraction of the initial rates (generated from wells using
rate fraction separator pressures as back pressure) that is used to get the first
guess for the solver. The default is 1.0. In some long pipeline
systems or small pipeline systems, or systems with chokes,
where the initial rates are difficult to pass, setting a smaller
number may increase speed of convergence. In such a case, one
might reduce the initial rate fraction, to 0.1 for instance
Solver - tolerance F This is the root mean square of the errors in the material balance
and pressure differences at any node. The higher this number,
the higher the error in mass/pressure at each node, but the faster
the solution. The default is 0.1
Solver - tolerance min Do not change

1990-2012 Petroleum Experts Limited


509 GAP

Solver - tolerance X Do not change


Solver - Maximum The solver line search will limit the change from one iteration to
Step Size the other by this value
Solver - Mass to In IPM 4.0 and earlier, GAP was performing the calculations
Volume Scaling based on volumes. IPM 5.0 can be fully compositional so all the
calculations are done based on mass. This value can be used to
scale up or down the volume given by a particular amount of
mass in the system
Solver - Limit In certain cases derivatives can be very difficult to calculate
movement of because of extremely rapid changes or extremely low changes in
derivative the system. This parameter limits the movement of the derivatives
and attempts to get something meaningful from the system.
Minimum number is 0 and maximum 1
Solver - display This setting allows the user to display the pressure and mass
(0:none, 1:pipe, results in the network on the solver display screen during solver
2: eqns, 3: pipe+eqns) iteration.
0: No intermediate results are displayed
1: The intermediate results for the pipes are displayed
2: The intermediate residuals of equations at the nodes
displayed.
3: The intermediate residuals of equations at the nodes and the
pipes are displayed.
The default is 0 and does speed up the calculation time
Solver - Inflow This setting can be set to 0 or 1. If it set to 1, then cross-flow in an
Crossflow Control (0:Off, inflow element is not allowed (cross-flow is prevented). If instead
1:On) it is set to zero (default), then cross-flow is allowed to occur
Solver - report When running any calculation in optimisation mode the program
violated /limiting will highlight eventual limiting or violated constraints.
constraints without In the case the calculation is run in no optimisation mode the
optimisation program will run the system without changing controls, therefore
(0:Off, 1:On) in no optimisation mode the constraints will not be accounted for.
This setting allows to activate a report showing if a constraint is
violated or limiting for the system when the calculation is run
without optimisation
Optimiser - max This is the maximum number of iterations the optimizer is allowed
iterations to perform in order to converge. The default is 100
Optimiser - well This is the fraction of the normalized system potential used for the
initial rate fraction first guess. If there are small chokes and long pipelines in the
system, a smaller value (0.1) could be used, in order to ensure
that the calculations do not start with critical conditions at these
elements.
Another case where the well initial rate fraction may require
reduction to 0.1, is when there are constraints which are very
small compared to the potential of the wells. So the optimiser will
reach the constraints by increasing the rate of the wells, instead
of the conventional rate reduction than might pose problems in

GAP User Guide August, 2012


User Guide 510

such a case (optimiser not 'seeing' the constraints). The default


is 1
Optimiser - gas For gas lifted systems, this defines the gas lift gas injection rate
injection perturbance used to perturb the system. The default is 0.1 and should work for
most cases
Optimiser - frequency For ESP lifted system, this defines the magnitude of frequency
perturbance used by the optimizer in perturbing the system. The default is 0.1
and should work for most cases
Optimiser - rpm If there are surface pumps and/or compressors in a network and
perturbance pumps lifted system, this defines the magnitude of revolutions per
minute used by the optimizer in perturbing the system. The default
is 100 and should work for most cases
Optimiser - max In simple terms, this parameter will determine whether a
step size constraint is seen and whether it should be included in the matrix.
The higher this number is, the further the algorithm sees to
include violated constraints as part of the matrix. On the other
hand, a high value will lead to greater changes and a more
complicated problem. An inequality g is binding if g/max {1, ||grad
g||} <= max step size where g(x) (penalty) is m-vector of smooth
nonlinear constraint functions. Among the g's there may be any
lower or upper bounds on the variables. These are identified by a
special indicator array
Optimiser - parameter 1 Serves as a scaling of the "max step size" under certain
conditions. (An attempt to automate the above)
Optimiser - parameter 2 Optimiser-Parameter 2 is the factor that controls how far the
optimiser is allowed to work towards finding the optimum objective
function. The smaller this parameter the longer it will work to
extract every possible barrel. The default value is 1e-6 and it is
advised not to change this parameter.

Optimiser - parameter 3 There are two elements to consider when looking at an


optimisation problem.
1. Creating a solution space for the optimiser to work with
2. Solving the optimisation problem within the space created
The Space of potential solutions is created by the Solver. The
solver uses the input data (such as well IPRs, VLPs) to
generate this space of potential solutions. Thus the quality of the
input data will itself determine the performance of the optimiser.
When running the optimiser, the space of potential solutions is
divided in sub-spaces. Solutions within these sub-spaces will be
analysed by the optimiser at each iteration.
Parameter 3 regulates the size of the sub-spaces. The larger the
Parameter 3, the larger will be the sub-space being looked at.
The impact of this parameter could, for instance, be that if there
are two local maxima close by and a high value of Parameter 3 is
selected then it is possible that one of the two maxima might be
missed.

1990-2012 Petroleum Experts Limited


511 GAP

The Parameter 3 in most cases should be kept at the default


value unless otherwise recommended
Optimiser - optimisation This setting allows the user to display the intermediate values of
variable display the optimization variable. The following conventions apply:
(0:nothing, 1:final value 0: No intermediate value is displayed
only, 2:each trial) 1: The final values of each trial are displayed
2: Each trial value is displayed.
The default value is 2 and should be OK for most cases. In
general, hiding the display would reduce the time required for the
calculations
Optimiser - Optimisation Changes the sum of constraint violations allowed during iteration.
Mode Mode ZERO should switch automatically from one to the other
Optimiser - lift and choke Artificially lifted wells may be prevented to be choked and at the
wells simultaneously same time optimized on gas or frequency
Optimiser - report Controls the tolerance at which a constraint violation flag is
constraint violated triggered
by more than (percent)
Optimiser - Sensitivity Will change the driving term of the inflow of wells and hence the
on Inflow rest of the system after normalization and pre-conditioning
Optimiser - Maximum Self explanatory
number of retry when
well unstable
Prediction - save This setting allows the user to save or not to save the
intermediate step intermediate results during a prediction run. The following
results snapshots at conventions apply:
each prediction step 0: Intermediate steps results are not saved. No *.gmh file is
(slower!) generated.
1: All intermediate steps results are saved.
The default option is 0. For troubleshooting purposes, one might
want to save the intermediate step results at the expense of the
calculation time. During a prediction run, a so-called *..gapsnp (
GAP prediction snapshot file) file is created and can be reload
afterwards with |Prediction Prediction Snapshot Reload
Prediction - reset This setting allows to reset or not to reset the solver variables for
solver variables each new step during a prediction run. The following conventions
at each prediction apply:
step (slower!) 0: The solver uses the results of the last step as first guess for the
current step.
1: The solver will start any new step without using the results of
the previous step.
The default setting is 1 and should be fine for most cases
Prediction - reset This setting allows to reset or not to reset the optimizer variables
optimiser variables for each new step during a prediction run. The following
at each prediction conventions apply:
step (0:never, 0: The optimizer uses the results of the last step as first pass for
1:always, 2:smart) the current step.

GAP User Guide August, 2012


User Guide 512

1: The optimizer will start every new step without using the
optimization results of the previous step.
2: The optimizer will reset the variables whenever there are
changes is the system, such as wells coming on.
The default setting is 1 and should be fine for most cases.
However, in cases where major changes in system configuration
occur from one time step to another, it might be more appropriate
to reset the solver variables to account for changes in the model
response
Prediction - control This option will limit the movement of optimiser variables
movement of optimiser between timesteps. The default value is 1.
variables This setting is only valid in forecasting mode.
Let us say maximum separator constraint of 10 000 bbls is set on
a system with two wells but each single well is capable of
producing 8000 bbls for instance. Clearly, there is an infinite
number of solutions to achieve 10000 bbls as a total. Hence as
long as there is an infinite number of solutions, from one step to
the another we may go from one solution to the other .
Mathematically speaking, all these solutions are equally valid if
there is no discrimination in the objective function. However, the
profile can oscillate heavily . What has been added in IPM 6.2 is
a penalization of the movement of variables from last time step .
This is controlled by the Prediction - control movement of
optimizer variables at the bottom of the setting screen for
forecast . The default is 1 (means penalize movement from last
time) . Changing this setting to 0 means that the history has no
effect on the present optimization and the rate/time profile may
show oscillations

1990-2012 Petroleum Experts Limited


513 GAP

.
2.8.7 Calculation Results
Once the mode is selected, click on "Calculate" to run the 'Solver'.

To view the results of the solution, click "Main" to return to the main menu. Click 'Results' from
the main menu and choose from one of the available options to display or plot the results of the
calculations.

A convenient way to inspect production results is to plot a histogram of production for each well.
To do this click Results Summary All Wells Plot to display histograms similar to the plots
shown below.

Amount of Gas Lift


Allocated
(No optimisation):

GAP User Guide August, 2012


User Guide 514

Oil Production Results


(No optimisation)

Amount of Gas Lift


Allocated (Optimised)

1990-2012 Petroleum Experts Limited


515 GAP

Oil Production Results


(Optimised)

Refer to the chapter on Reporting 565 for more details. Clicking on an icon and
selecting the 'Results' data section allows the user to view the calculated results
for individual elements.

GAP User Guide August, 2012


User Guide 516

2.9 Prediction
The GAP prediction option allows the user to run forecasts, with optimisation, over user-defined
time steps taking into account the depletion in the reservoir(s). Tank pressure decline curves or
MBAL material balance models provide the mathematical model of how the reservoir pressure
will decline as a function of the produced fluids.

Each well connected to a tank shares the same reservoir pressure, however the parameter "IPR
dP Shift" can also be used to shift the reservoir pressure from the tank datum to each wells
intake node depth if necessary.

Reservoir targets can be set for each tank and abandonment limits for each well. GAP will
calculate how much water or gas injection is required to maintain the tank pressure and well,
tank, separator, and joint constraints can be scheduled to change with time.

In the next few sections the following topics will be explained:

How a prediction is carried out.

How to set up material balance prediction.

Options that are available for running predictions.

An overview of short term, decline curve forecast predictions.

In order to carry out predictions the prediction option must be enabled in the 'Options' screen. To
do this select Options | Method from the main menu.

From the drop down menu ensure that the prediction is set to On.

1990-2012 Petroleum Experts Limited


517 GAP

2.9.1 Prediction - Basics


The following steps describe how the calculations are carried through the predictions.

1. At the start of the timestep, to the reservoir pressure and saturations are passed from MBAL
to GAP.

2. The WC and GOR are then calculated from the fractional flow model entered at the well level
in GAP which defines the IPR curve.
3. GAP will then solve the network using the VLPs at the well, by interpolating on the manifold
pressure, so that pressure and rate are balanced throughout the system. This is illustrated in
the figure below.

GAP User Guide August, 2012


User Guide 518

The blue VLPs refer to the VLPs in the lift tables generated for different manifold pressures,
WC and GOR. GAP will interpolate between all of the VLPs with the same WC and GOR
(calculated from the saturations provided by MBAL) to find the manifold pressures and rates
that balance the system.

4. The calculated rates at each well, QL, w ell are then used to determine the average rate
removed from the reservoir (based on the downtime if it has been entered) which is held
constant over the defined timestep. This allows for the cumulative rates to be calculated
which will then be removed from the tank.

1990-2012 Petroleum Experts Limited


519 GAP

5. The removal of these fluid volumes will change the reservoir pressure and saturations which
will then be passed for the next timestep, t.
6. The whole process is then repeated until the end of the prediction.

To make a production forecast using material balance for the reservoir models, GAP requires
MBAL tank models that contain a minimum of the following data:

PVT data,
Oil (or gas) in place,
Residual saturations,
Aquifer model,
Pore Volume Vs Depth (if using breakthrough constraints),
Relative Permeability curves (as Corey exponents).

To run a forecast using decline curves the steps that are carried out differ in how the reservoir
pressure and the fractional flow (WC and GOR) is calculated. The user defines a relationship
between reservoir pressure and cumulative production withdrawn from the reservoir at the Tank
level.

GAP User Guide August, 2012


User Guide 520

At the beginning of the timestep the reservoir pressure is passed from MBAL to the well (there
is no concept of fluid saturations as in material balance).

At the well level there is a direct relationship between WC, GOR and the reservoir cumulative
production which is entered as a table. This information defines the IPR curve.

1990-2012 Petroleum Experts Limited


521 GAP

With the IPR defined, GAP will solve the network using the the method described in Step 3
(above) to determine the rates and pressures throughout the system.

The average rates are then calculated based on the downtime and these rates are applied
across the timestep to determine the cumulative reservoir production. This cumulative
production is then used to determine the new reservoir pressure (by interpolating between the
values defined in the table at the Tank level) and the whole process is repeated until the end of
the prediction.

GAP User Guide August, 2012


User Guide 522

2.9.1.1 Forecast Workflow


Assemble the required information:

Reservoir PVT data (Use Flash data)


Well inflow and equipment configurations
Reservoir data as listed above
System geometry
Production and process system constraints

A suggested workflow is described below:

1. Match PVT in PROSPER.

2. Build well inflow and outflow models and match to field data where
applicable.

3. Build and match reservoir models using MBAL. Matched PVT can be
shared with PROSPER *.pvt files.

4. Draw the gathering system sketch using GAP.

5. Batch calculate well VLP and IPR using PROSPER from within GAP.

6. Check GAP model using the 'Model Validation' and 'Solve Network'.

7. Set-up up well and reservoir constraints.

8. Run production forecast.

The following sections describe the data entry for the setting up of a Material Balance forecast in
GAP.

2.9.1.2 Linking MBAL files to GAP


To carry out a prediction requires a tank 338 model which can either use the material balance or
decline curve methods.

1990-2012 Petroleum Experts Limited


523 GAP

In order to use an MBAL model for predictions select the Material Balance option from the drop
down menu. This will display a 'Browse' button which allows an MBAL file to be associated to
the tank. Once a file has been associated the tank element becomes active.

2.9.1.3 Running Predictions


This section describes how to perform a prediction. It is assumed that the network model has
already been set up as described in previous chapters. If the user is unfamiliar with building a
network model then it is recommended to consult the examples 603 .

Click on Prediction | Run Prediction from the main menu:

GAP User Guide August, 2012


User Guide 524

The set-up screen shown below will be presented.

1990-2012 Petroleum Experts Limited


525 GAP

This screen is used to set the start and stop dates for prediction along with the time step size.

Start Enter the start date of the prediction. Note that the start date needs to be within the
Date historical ranges of all the tanks connected in the network model.
End Enter the final date of the prediction.
Date
Step Enter the prediction step size. Note that the rate produced is considered to be
Size constant across a time step.
Restart The Restart Facility can only be accessed if a run has been performed already
and the results are stored to memory. A restart can be beneficial in the sense that
it is possible to implement a change at some point during the forecast (for
example drilling a new well) without the need of running the entire prediction form
the beginning.
DCQ The "DCQ Prediction" option enables GAP to calculate the maximum daily gas
predictio contract quantity that the system can deliver for the entered DCQ period. This
n option is particularly useful to understand DCQ quantities that can be delivered by
the field over a given contract period.

The "Populate" button on the DCQ Prediction Schedule can be used to


automatically create a DCQ profile.

GAP fixes a DCQ constraint over the first DCQ period, and as soon as the
program sees that it cannot honour the maximum gas rate constraint during the

GAP User Guide August, 2012


User Guide 526

DCQ period, GAP reduces the DCQ constraint and runs the prediction over the
same time period up to the date it failed honoring the DCQ. The prediction will
only pass to the second DCQ period when GAP has ensured that the first DCQ
constraint can be honoured over the first period.

The program takes into account the seasonal swing factors entered in the "Swing
Factor" table and will calculate the controls that would need to be applied in the
field (wellhead chokes, compressor speed, etc.,) to honour the DCQ values during
the prediction period.

If no DCQ periods have been set to Predict | Yes, then the DCQ Prediction
dialogue will continue to appear until all (or one) of the entered DCQ "Predict"
periods has been set to YES. If the DCQ menu has been completed via
Prediction | Edit DCQ Schedule then the entered DCQ values will not be
accessible via the DCQ Prediction | Edit button shown above.

Wells Clicking on the 'Wells' button will display the screen shown below. This screen
allows well breakthrough and abandonment constraints to be defined.

1990-2012 Petroleum Experts Limited


527 GAP

Use this screen to enter constraints that are active for the entire prediction run.
Constraints can also be scheduled and modified through the 'Equipment
Schedule'.

Reservoir constraints can also be entered on this screen if desired. The constraint parameters
are outlined in the table below:

Target Pressure GAP will determine the gas or water injection required to
achieve the pressure target by the end of the prediction period
Gas Injection GAP will make up the required reservoir injection using the
Fraction specified fraction gas. If set to zero (or left blank), 100% water
injection is assumed
Voidage Repl. Pressure will be maintained by voidage replacement with
(Water) water
Voidage Repl. Pressure will be maintained by voidage replacement with gas
(Gas)
Water Recycling Produced water is re-injected
Gas Recycling Produced gas is re-injected
Gas Recycling The produced gas minus the entered amount is re-injected
(Prd amnt) into the tank. This constraint can be scheduled to model re-
injection of gas that exceeds the agreed sales contract.
Fixed Rate (Water) Injection of a specified rate of water
Fixed Rate (Gas) Injection of a specified rate of gas

GAP User Guide August, 2012


User Guide 528

The voidage replacement option does not work if the MBAL models contain
multiple tanks which are connected with transmissibilities. This is because
the production will affect the volumes transferred from one reservoir to the
other. The problem becomes non linear since the injection will change the
balance of volumes previously calculated based on production alone.

Click "Next" to proceed to the 'Results' screen:

Click "Next" from this screen, and in the dialogues that follow enter the separator pressure and
available gas lift gas (if applicable). The "Calculation" screen (shown below), which has the
same layout and options as for the 'Solve Network' is used to start the forecast.

1990-2012 Petroleum Experts Limited


529 GAP

When the user presses "Calculate" GAP will load the tank models and check that the IPR/VLP
data is available for each well. The MBAL simulations are run to the start date and the tank
pressure and saturations are passed from MBAL to the well models. GAP will then solve the
network to calculate the allocation of produced rates throughout the system. When constraints
are active, the optimiser will find the optimum control settings that maximise the objective
function and honour the constraints for the that timestep.

The cycle is repeated until the end of prediction time is reached.

NEW!!!
Plot Tanks The user can plot the tank results dynamically as the prediction
is being carried out.
Plot Nodes The user can plot the node results dynamically as the
prediction is being carried out.

GAP User Guide August, 2012


User Guide 530

2.9.1.4 Notes on Constraints


When setting up the model, it is recommended to start with the minimum necessary
number of constraints. This is because from a mathematical perspective, increasing
the number of constraints drastically complicates the optimisation problem.
Keeping constraints to a minimum allows the user to validate and ensure that the
model is performing as it is supposed to. After the validation, the number of
constraints can be increased if necessary. However the user should always try to keep
the number of constraints to a minimum by only including constraints that reflect true
restrictions or contractual obligations in the field. This is to prevent unnecessary
complexity and moreover to prevent unfeasible problems from being created.

If the objective is to shut down a well if it cannot produce a minimum rate, then this can
be achieved by setting up an 'Abandonment Constraint' of minimum rate in the'
Abandonment' section. As soon as the well production decreases below the set
minimum abandonment constraint, the well will be automatically closed by GAP.
2.9.1.5 Linking Production / Injection Forecasting
The reservoir targets allow GAP to model production rates under specified conditions of
injection and pressure maintenance. GAP will calculate both the production and the injection
rates required to satisfy the reservoir constraints assuming that sufficient equipment
(compressors, pumps, injection wells and flowlines to distribute the fluid) is available to inject the
required volumes of gas and water.

There are two ways to carry out a production prediction with both production and injection:

Having the production wells and injection wells described in the same model
Having two different models, one model for production, and one model for injection, and
link these models together.

To have the production wells and injection wells described in the same model, we simply add
the production wells and injection wells in the same network drawing and link them accordingly.
A simple system with one production well and one injection well linked to the same reservoir is
shown below as an example:

1990-2012 Petroleum Experts Limited


531 GAP

When the two models are linked in the same GAP file, they are solved together. In this
configuration GAP cannot constrain the injection system to honour reservoir management
targets.

The alternative is to have the injection system modelled as a separate GAP file.

GAP User Guide August, 2012


User Guide 532

This injection system can then be associated to the production system using the 'Options' menu.

To view both the system on the same screen select Window | Tile Vertically.

1990-2012 Petroleum Experts Limited


533 GAP

When two models are set in separate GAP files and linked as shown above, the production
system is solved first assuming that the reservoir targets can be met. GAP will then run the
linked injection models to determine the required injection pressures.
If the potential of the injection system is higher than the volume to be injected, then the injection
system will not be constrained so that the reservoir target is not exceeded. However, if the
injection system is unable to inject the target volumes, GAP will re-run the production forecast
step using the maximum available injection rate. In this way, realistic optimised production
forecasts can be computed that take into account both production potential and injection
capacity.

The decision on which method to choose will depend on whether or not pressure support
options are set (for example 90% voidage replacement is specified).

The Water Injection System 746 (in the Worked Example section) demonstrates to the user how a
water injection system is created, and how it can be linked to the production system to meet
reservoir targets.

GAP User Guide August, 2012


User Guide 534

2.9.2 Prediction Options


If a decline curve or material balance prediction is set up, the 'Prediction' menu becomes active.

2.9.2.1 Run Prediction


This is used to access the setup screen and initiate the prediction run.
2.9.2.2 View Prediction Log
This is used to access the 'Prediction Log Window'.

1990-2012 Petroleum Experts Limited


535 GAP

Log This reports the steps followed by the calculations


Events Log screen reporting any event occurring in the system (for example wells coming
on line, change of separator constraints, etc.)
Constrai This log screen highlights if constraints are violated during the prediction.
nts
Limiting The "Limiting" window shows the constraints that are limiting the overall system to
highlight the elements of the network that are constraining the system.
Script If a prediction script is defined, this log screen will report any message sent by the
script itself.
Message This log will report messages highlighting for example well or pipeline lift curves
s extrapolation.

2.9.2.3 Save Prediction Results as


The feature is accessed from the 'Prediction' menu. It allows the user to save the prediction
results every time a prediction is run. This allows the engineer to save multiple scenarios and
compare them on the same plot.

GAP User Guide August, 2012


User Guide 536

The "Add" button should be used to create a new stream, which can then be renamed.

When the the variables are plotted (either for the tanks or nodes) then the results streams will
automatically appear on the top left hand corner of the plot window. In order to plot the results of
two predictions simply select the element (System Totals) from one of the prediction streams
and then double click on the variable which in this case is the Cumulative Oil Production.
Repeat this for the other stream.

1990-2012 Petroleum Experts Limited


537 GAP

Alternatively, the user can select a variable (for example Cumulative Oil production) and then

select the icon. The user can then select all the predictions streams to plot the
variable.

GAP User Guide August, 2012


User Guide 538

2.9.2.4 Reload Prediction Snapshot


The user has the option to save snapshots of the network at each date of the prediction. The
user can then "reload" these snapshots and solve the network to analyse the system in greater
detail. This is extremely powerful for troubleshooting purposes as the user has the advantage of
being able to load a snapshot, make modifications to the system (delete wells, remove chokes
etc.) to understand the response and then when the snapshot is unloaded the network is
restored to its initial configuration with none of the changes applied.

In order to use this option it must be activated in the Optimiser Settings by setting the option
"Prediction - Save intermediate step results snapshots at each prediction step (slower!)" to 1.

1990-2012 Petroleum Experts Limited


539 GAP

Once the prediction has been carried out, the snapshots will be saved to memory and can be
called by selecting Prediction | Reload Prediction Snapshot.

Select the date and then OK to load the status of the system on that date.

GAP User Guide August, 2012


User Guide 540

Well performance curves (VLP/IPR intersection) and GAP results can then be checked for each
part of the system at that specific date in time.

By default, GAP does not save the snapshots for a prediction run as this adds to
the runtime. It will be down to the user to specify the option through the GAP
prediction settings if these snapshots have to be saved.

In the 'Prediction' menu other reloading options are available, which change the snapshot
currently in view.

Reload Prediction Previous Snapshot


Reload Prediction Next Snapshot
Unload Prediction Snapshot
2.9.2.5 Prediction Script Options
Selecting edit prediction script displays the screen where the script is entered and edited.

1990-2012 Petroleum Experts Limited


541 GAP

Please refer to the section "Prediction Script Options 587 " for more information on this topic.

Import/Export The script can be stored in an ASCII file (extension .gapscr) and
Prediction Script imported and exported in/from GAP
Disable This option discards the prediction script from the Prediction
Prediction Script

2.9.2.6 Edit System Constraints Schedule


Selecting Prediction | System constraints schedule displays the following screen.

GAP User Guide August, 2012


User Guide 542

From this screen, it is possible to modify system constraints and to change the prediction step
size. In the date column, specify the date that the event will occur. In the event type column
choose to either change a constraint, the prediction step size or any OpenServer variable.

In the constraint type column select the constraint that is to be changed and in the 'New' value
column enter the value.
2.9.2.6.1 Notes on Constraints
When setting up the model, it is recommended to start with the minimum necessary
number of constraints. This is because from a mathematical perspective, increasing
the number of constraints drastically complicates the optimisation problem.
Keeping constraints to a minimum allows the user to validate and ensure that the
model is performing as it is supposed to. After the validation, the number of
constraints can be increased if necessary. However the user should always try to keep
the number of constraints to a minimum by only including constraints that reflect true
restrictions or contractual obligations in the field. This is to prevent unnecessary
complexity and moreover to prevent unfeasible problems from being created.

If the objective is to shut down a well if it cannot produce a minimum rate, then this can
be achieved by setting up an 'Abandonment Constraint' of minimum rate in the'

1990-2012 Petroleum Experts Limited


543 GAP

Abandonment' section. As soon as the well production decreases below the set
minimum abandonment constraint, the well will be automatically closed by GAP.
2.9.2.7 Edit Separator and Joint Schedules
This option allows the user to schedule specific events at the joint and separator level. For
example, the separator pressure can be scheduled to change or a constraint can be applied at
one of the joints.

separator schedule is used to change separator or joint backpressure at any point during the
prediction run, or to change a particular constraint on the separator or joint operation. The
separator schedule operates in the same manner as the well Schedule described above.
Separator pressure changes can be used to model, for example, installation of gas
compression equipment.

To enter constraints, first select the separator or joint required from the list of system items in the
lower part of the dialogue. Then, in the upper list, enter the following data:

The date that the event will be executed. If this date does not fall on the scheduled time
step in the prediction run, GAP will perform an additional step to account for the
change.

GAP User Guide August, 2012


User Guide 544

Select the event type (change constraint, change manifold pressure) from the drop
down list in the next field.
If a constraint has been scheduled to change, select the type of constraint from next
field (i.e. maximum liquid rate)
In the final field, enter the new value to which it will be updated.

This screen allows scheduling for the joints and separators to be defined in a
batch mode, but each equipment could be scheduled in the equipment input data
screen as well. If this has been done, the screen will display these schedules.

The fields available are:

Date Date at which the event occurs. If this scheduled date lies between timesteps
then this date will be added to the number of prediction steps. This ensures
that the effect of an event is modelled when it happens, rather than delaying it
until the next regular timestep. Another effect of this will be to increase the time
taken to run the forecast, since any events that lie between timesteps add
another step to the overall calculation.
Event Choose the event from the ones that appear on the drop down list. The list of
Type available events depends on the type of equipment.

Wells
Change constraint
Start Well
Stop Well (X-flow is still allowed between layers if the well is multilayer)
Stop Well-No Xflow
Change Downtime
Change OPENSERVER variable
Execute OpenServer Command
Change VLP file NEW!!!

Pipelines / Joint
Change constraint
Mask
Unmask
Change OPENSERVER variable
Execute OpenServer Command

Separator / Injection Manifold


Change constraint
Change Pressure
Mask
Unmask
Change OPENSERVER variable
Execute OpenServer Command

1990-2012 Petroleum Experts Limited


545 GAP

Compressor / Pump / Check Valve / Gate Valve / Inline Separator /


Inline General
Mask
Unmask
Bypass
Unbypass
Change OPENSERVER variable
Execute OpenServer Command

Inline Choke
Change diameter
Mask
Unmask
Bypass
Unbypass
Change OPENSERVER variable
Execute OpenServer Command

Inline Injection
Change Injection Rate
Mask
Unmask
Bypass
Unbypass
Change OPENSERVER variable
Execute OpenServer Command

Sink / Source
Change Fixed Rate
Mask
Unmask
Change OPENSERVER variable
Execute OpenServer Command
Constraint If Change constraint was chosen above, this field contains a drop down list
Type of constraints. Select the desired constraint to change.
New value This field specifies the new value of pressure or constraint that is to be
scheduled.

Action Buttons

OK Save changes and go to the previous panel


Cancel Ignore any changes and go to the previous panel
Help Displays this screen

GAP User Guide August, 2012


User Guide 546

2.9.2.8 Edit Equipment Schedule


The equipment schedule is a summary screen that allows the user to input or edit schedules for
any piece of equipment from one screen. Click Prediction Equipment Schedule and the
following screen will appear.

The screen is divided into 2 sections. The lower part lists the equipment in the system. The
upper list will display the current set of schedules for the selected equipment.

In general, to schedule equipment constraints:

Select the relevant equipment


Enter the date that the schedule will be applied.
Select the event type (change constraint, mask/unmask etc.) from the drop down list
Select the constraint type (Maximum liquid rate, Maximum gas rate etc) from the drop
down list, if applicable.
Enter the new scheduled value, if applicable.

Note that the dialogue supports the standard GAP cut and paste facility, to aid the movement of

1990-2012 Petroleum Experts Limited


547 GAP

data between the dialogue fields.

This screen allows scheduling of all the equipment to be defined in a batch mode,
but each equipment could be scheduled in the equipment-input data screen as
well. If this has been done, the screen will display these schedules.

The fields available are:

Date Date that event occurs. If this scheduled date lies between timesteps then this
date will be added to the number of prediction steps. This ensures that the
effect of an event is modelled when it happens, rather than delaying it until the
next regular timestep. Another effect of this will be to increase the time taken to
run the forecast, since any events that lie between timesteps add another step
to the overall calculation.
Event Choose the event from the ones that appear on the drop down list. The list of
Type available events depends on the type of equipment.

Wells
Change constraint
Start Well
Stop Well (X-flow is still allowed between layers if the well is multilayer)
Stop Well-No Xflow
Change Downtime
Change OPENSERVER variable
Execute OpenServer Command
Change VLP file NEW!!!

Pipelines / Joint
Change constraint
Mask
Unmask
Change OPENSERVER variable
Execute OpenServer Command

Separator / Injection Manifold


Change constraint
Change Pressure
Mask
Unmask
Change OPENSERVER variable
Execute OpenServer Command

Compressor / Pump / Check Valve / Gate Valve / Inline Separator /


Inline General
Mask

GAP User Guide August, 2012


User Guide 548

Unmask
Bypass
Unbypass
Change OPENSERVER variable
Execute OpenServer Command

Inline Choke
Change diameter
Mask
Unmask
Bypass
Unbypass
Change OPENSERVER variable
Execute OpenServer Command

Inline Injection
Change Injection Rate
Mask
Unmask
Bypass
Unbypass
Change OPENSERVER variable
Execute OpenServer Command

Sink / Source
Change Fixed Rate
Mask
Unmask
Change OPENSERVER variable
Execute OpenServer Command
Constraint If Change constraint was chosen above, this field contains a drop down list
Type of constraints. Select the desired constraint to change.
New value This field specifies the new value of pressure or constraint that is to be
scheduled.
l

Action Buttons

OK Save changes and go to the previous panel


Cancel Ignore any changes and go to the previous panel
Help Displays this screen

1990-2012 Petroleum Experts Limited


549 GAP

2.9.2.9 Edit Tank Schedule


The tank schedule option is used to change reservoir parameters at any point during the
prediction run. The tank schedule operates in the same manner as the equipment schedule
described above. Supported tank target parameters are:

Voidage Replacement (with water or gas)


Pressure Target
Production recycling (water or gas)
Gas recycling less sales amount
Fixed rate (water or gas)

These parameters can all be scheduled in the same way as has been described previously.

The fields available are:

Date Date at which the event occurs. If this scheduled date lies between timesteps
then this date will be added to the number of prediction steps. This ensures
that the effect of an event is modeled when it happens, rather than delaying it
until the next regular timestep. Another effect of this will be to increase the time
taken to run the forecast, since any events that lie between timesteps add
another step to the overall calculation.

GAP User Guide August, 2012


User Guide 550

Event Choose the event type from one of:


Type
Voidage Replacement (Water)
Voidage Replacement (Gas)
Pressure Target (The User will also be required to input a gas injection
fraction)
Water Recycling
Gas Recycling
Gas Recycling (Produced gas - fixed amount)
Fixed Rate (Water)
Fixed Rate (Gas)
Voidage Replacement (Water) OFF
Voidage Replacement (Gas) OFF
Pressure Target OFF
Water Recycling OFF
Gas Recycling OFF
Gas Recycling (Produced gas - fixed amount) OFF
Fixed Rate (Water) OFF
Fixed Rate (Gas) OFF

These events allow the scheduling of any desired injection policy for the tank. If
no associated injection model exists, the desired injection will be calculated
and it will be assumed that the injection system provide the necessary fluid. If
an associated model exists, the desired injection will be used as a target in the
injection system which can then controlled through the application of
appropriate constraints. This is demonstrated in Example 4 746 .
Constraint If Change constraint was chosen above, this field contains a drop down list
Type of constraints. Select the desired constraint to change from this
New value This field specifies the new value of pressure or constraint that is to be
scheduled.

Action Buttons

OK Save changes and go to the previous panel


Cancel Ignore any changes and go to the previous panel
Help Displays this screen

This dialogue also supports the standard GAP copy and paste mechanism.
2.9.2.10 Edit Gas lift Schedule
This screen is used to change the amount of available gas lift gas at a particular point in the
prediction run. When selected, the following dialogue is provided.

1990-2012 Petroleum Experts Limited


551 GAP

Fields available:

Date Date at which the event occurs. If this scheduled date lies between timesteps
then this date will be added to the number of prediction steps. This ensures
that the effect of an event is modeled when it happens, rather than delaying it
until the next regular timestep. Another effect of this will be to increase the time
taken to run the forecast, since any events that lie between timesteps add
another step to the overall calculation.
Event Select the 'Event' type. The user has the option to:
Type
Change gas lift available
Change constraint
Change prediction step
Change OpenServer Variable
Execute OpenServer Command
New value This field specifies the new value of gas lift available or constraint that is to be
scheduled.

GAP User Guide August, 2012


User Guide 552

2.9.2.11 Edit Schedule Event Groups


A series of scheduled events can be "grouped" into an "Event Group". For example, to create
an 'Event Group' select Prediction | Edit Schedule Event Groups and enter the details of the
group as shown below.

Now, any schedule that has been entered at the element level (wells, pipelines, joints etc.) can
belong to one of the 'Event Groups' defined above. Simply use the drop down menu in the
'Schedule' section and define which Group the schedule belongs to.

When the 'Event Group' is "enabled" from the "Edit Schedule Event Group" window, all of the
schedules associated to this Event Group will be active. However if the group is "disabled" then
all of the schedules associated to this 'Event Group' will be disabled.
2.9.2.12 Edit DCQ Schedule
To meet seasonal and contractual demands, for example when producing a gas field, it is
possible to schedule contract volumes and seasonal swing factors when performing a

1990-2012 Petroleum Experts Limited


553 GAP

prediction. To do this, select Prediction | Edit DCQ schedule and the following screen will
appear.

This screen defines the DCQ schedule, the DCQ value (if the user desires to specify this value
manually rather than let GAP predict the DCQ quantity) and the Swing Factors. A DCQ
schedule can be applied to either Joints, Separators, Groups or the whole production system.

To define the DCQ schedule select the "Populate" option and define; the DCQ period, if there
are Swing Factors and whether or not GAP should predict the DCQ value through the forecast.

GAP User Guide August, 2012


User Guide 554

For example, the set up below describes a DCQ schedule with a period of 1 year with seasonal
swing factors that GAP will predict throughout the forecast.

As GAP is going to predict the DCQ values for every period there is no need to specify any
rates however the user has the option to fix the DCQ over a certain period. To do this, the user
simply sets the option "Predict" to 'No' and enters the rate. See Prediction Execution and

1990-2012 Petroleum Experts Limited


555 GAP

Results 523 for more information.

The swing factors are used to account for seasonal demands on the gas contract (i.e. a higher
demand during the winter months). The instantaneous gas production is the product of the DCQ
and the seasonal swing factor. For example if the calculated DCQ rate was 233 MMscf/D and
the swing factor was 1.5 then the instantaneous gas rate produced would be 350MMscf/d. In its
treatment of DCQs and swing factors, GAP sets a maximum gas constraint at the selected
system level that is equal to the DCQ value multiplied by the swing factor (if present).

To run a prediction using the DCQ (daily contracted quantity) schedule option it must be
checked in the 'Prediction' screen as shown below.

To view the results select Prediction | View DCQ Prediction Results. This displays the
calculated gas contract for each DCQ period that the system can provide.

GAP User Guide August, 2012


User Guide 556

Plotting the instantaneous rates for the entire production system shows the rate profile which
corresponds to the above DCQ schedule (assuming no swing factors).

1990-2012 Petroleum Experts Limited


557 GAP

If swing factors were included (based on the values used figure above) the following profile
would be observed.

GAP User Guide August, 2012


User Guide 558

The contract type (gas rate, gross heating value, water rate or oil rate) can be selected by
the user.
2.9.2.13 Apply Schedule to
This option is used to visualise the status of the system at a certain date during the prediction
period.
Once a date is entered, the GAP network is displayed as it will be at this specific date, taking
into account the "masked/unmasked" items and the constraints.

1990-2012 Petroleum Experts Limited


559 GAP

2.9.2.14 Purge Results


These options deletes the prediction results (latest run performed) and the prediction snapshots.
2.9.2.15 Plot and View the Prediction Results
The prediction results can easily be visualised, plotted, and analysed using the following options.

GAP User Guide August, 2012


User Guide 560

2.9.2.15.1 Plot Nodes Prediction Results


This feature provides the results of the individual nodes that make up the system. The first
screen (left) is used to select the type of nodes (for examples wells) to report and the second
screen (on the rate) allows the user to choose a specific piece of equipment that falls under that
category (i.e. Well 1A).

1990-2012 Petroleum Experts Limited


561 GAP

Click "Plot" to access a graph which provides the user with the option to plot variables for the
selected equipment.

GAP User Guide August, 2012


User Guide 562

When the the variables are plotted the results streams will automatically appear on the top left
hand corner of the plot window. In order to plot the results of two predictions simply select the
element (System Totals) from one of the prediction streams and then double click on the
variable which in this case is the Cumulative Oil Production. Repeat this for the other stream.

1990-2012 Petroleum Experts Limited


563 GAP

Alternatively, the user can select a variable (for example Cumulative Oil production) and then

select the icon. The user can then select all the predictions streams to plot the
variable.

GAP User Guide August, 2012


User Guide 564

2.9.2.15.2 Plot Tanks Prediction Results


The option is used in the same way as for the Nodes 560 , however it allows the user to view the
Prediction results from multiple tanks.
2.9.2.15.3 Plot Emissions Prediction Results
This option allows to view the results of all the Emissions, which are given by the sum of all
Flares and Vents in GAP. The screens work in the same way as in the case of Plot Nodes
Prediction Results 560 .
2.9.2.15.4 View DCQ Prediction Results
Refer to the section on the DCQ Schedule 552 .

1990-2012 Petroleum Experts Limited


565 GAP

2.10 Results and Reports


This chapter describes how to view results, and prepare plots and reports from GAP
simulations. GAPs features allow a wide range of data to be conveniently reported from the
'Results' and the 'Reports' menus.

Selection of "Results" from the main application menu gives the user access to the results on the
screen. Selection of "Reports" provides the user with options to set up hard copy reports and
options for writing to files that can be included in external applications such as spreadsheets or
word processors.

2.10.1 Results Menu

Click "Results" from the main menu and the user will be prompted to select the level of detail
required for display. Choose from the five following options:

Detailed To display detailed data including water cuts, pressures and


temperatures
Summary To display summary data for selected items.
Total System To display overall system production rates.
System Emissions To display all the results concerning the fluid that is vented or
flared. This option is active only when flares or vents are
present in the network.
Plot Performance Displays the PC curves. This option is active when in the
Curves system there are wells modeled with Performance Curves
Interpolation, and it can be used to verify the quality of the PC

For the 'Detailed' and 'Summary' reports the user can also select which elements to report the
results for. The available elements are:

All Items
All Wells
All Joints
All Pipes
All Separators
Selected Items.

GAP User Guide August, 2012


User Guide 566

2.10.1.1 Detailed Results


Detailed results are required for troubleshooting and investigating individual element
temperatures, pressures, etc. An example of a detailed results screen is shown below:

Selecting one of these options gives the user access to all of variables associated with all or a
single piece of equipment.

Use the arrows at the bottom of the screen to scroll to the right and display details such as choke
pressure losses, oil and gas gravity, etc. The following command buttons are used to display
data from the selected system elements and move about the results database.

1990-2012 Petroleum Experts Limited


567 GAP

2.10.1.2 Summary Results


Use the summary results to quickly identify where production problems are occurring or where
the best producers are located. An example of the summary results screen is shown below:

The difference between the 'Results Summary' and the 'Detailed Results' is that a single variable
is reported for every (or single if the option is selected) element in the system.

Results are displayed for each selected element in the system (up to 10 gas injection rates or
separator pressures). Use the scroll at the right hand side of the screen to pan through results.
Select the variable to display by clicking the direction arrows in the "Report item" field.

The lower half of the screen displays the selected variable for each component. The summation
of the variables or the totals is displayed in the top half of the window.

Clicking "Plot"from the 'Summary Results' screen will display a histogram of the selected

GAP User Guide August, 2012


User Guide 568

variable against the equipment items. This feature is useful for quickly identifying strong
producers or problematic wells.

An example of a summary histogram for oil production is shown below:

2.10.1.3 Total System Results


A quick way of accessing the results of the total system is through the 'Total System' results.

This will lead to a screen which displays the total system results from the network solve. By
default the program will display the solver results. The user can access the forecast results by
clicking the Prediction button. A typical display of the prediction results is shown below.

1990-2012 Petroleum Experts Limited


569 GAP

2.10.1.4 System Emissions


This section allows the user to display all the results concerning the 'Emissions', that is to say,
the fluid that is withdrawn from the network by means of flares and vents.

The results are displayed as in the previous sections. The figure below displays the results of
last 'Solve Network'.

GAP User Guide August, 2012


User Guide 570

Selecting "Prediction" displays the prediction results as before.

2.10.1.5 Plot Performance Curves...


This option is used to plot the well performance curves. This is useful to check the quality of the
PCs well by well.

1990-2012 Petroleum Experts Limited


571 GAP

2.10.1.6 Plot Options


NEW!!!
Below is a brief discussion on the different options that are available with the plotting.

Zoom To zoom in on a particular region of a plot, simply click and drag a box
around the area of interest using the cursor. When the bottom is released
the scales and view will be adjusted to fit the screen.
This option restores the plot to its original view (after any "zooming").
This option provides the user with the different plot settings. When
selected the following window will appear.

GAP User Guide August, 2012


User Guide 572

From this option the user can perform a variety of tasks including:
Modifying the titles
Modifying the margin
Changing the ranges on the Axes
Modifying the legends
Changing the fonts/colours
Selecting the print options

All of the options are fairly self explanatory and easily implemented.
This option allows the user to remove all the plotted variables (series) or
selected variables.
This option allows the user to remove multiple selected variables from a
list. When this option is selected the following window appears which
allows the user choose which variables should be removed from the plot.

1990-2012 Petroleum Experts Limited


573 GAP

This option allows the user to save plots which can then be later recalled.
This option allows the user to reload saved plots.

This option edits the Labels, Scales and the Legend.


This options allows the user to print a hard copy of the current plot.
This option adjusts the symbol sizes and and the plot widths.

2.10.2 Reports
Use the 'Report' option from the main menu to prepare reports from a current analysis, or from a
previously saved .GAP file.

GAP User Guide August, 2012


User Guide 574

When the 'Report' button is selected, a series of screens leads through the process of selecting
the data required for the report. To include a section in a report, click on the check box to the left
of the item and, depending on the selection, further input screens will be presented. This
process ensures that only relevant sections are reported.

For example, if the prediction results need to be extracted to Excel, then the "Prediction results"
option needs to be checked as shown below.

1990-2012 Petroleum Experts Limited


575 GAP

Selecting the Run Report button will allow the program to write the results to the clipboard,
which can then be pasted into Excel.

GAP User Guide August, 2012


User Guide 576

2.11 History Matching an IPM Model

2.11.1 Introduction
This chapter describes the recommended procedure to be followed in ensuring that an IPM
model has been fully "history matched" and is therefore a reliable platform upon which
management decisions can be made.

An IPM model consists of several elements which are interacting hence the response of one
element depends on one or more of the others. For example, the response of a well model
depends on both the reservoir and surface network performance. If a reservoir has been history
matched but no quality check has been done on the surface network, then the response of the
whole model will not represent reality and the results will be unreliable.

By its very nature, an IPM model can be made up of hundreds of nodes, making it complex and
difficult to manage if no procedures or methodologies are in place to allow effective
troubleshooting and matching. The aim of this chapter is to describe such a procedure and
guide the user in the process of history matching.

1990-2012 Petroleum Experts Limited


577 GAP

2.11.2 Procedure for History Matching


There are two ways an IPM model can be history matched:

1. A model can be created and run for the duration of history, checking the results at the end
to ensure that rates are consistent with measured cumulatives and rates.

2. Each element of the system can be created and matched independently. By definition,
when the individual models are put together into a full field system, this will automatically
be history matched.

The following is a comparison of the two methods.

2.11.2.1 Running the model and comparing to history


Consider the model shown in the figure above. This is a complex network that could take up to 5
hours to run for the duration of history (depending on the time step and the machine). If the
results at the end of the run do not reflect the historical production, the engineer would have to
make changes to the model and then re-run in order to validate. The following is a list of some

GAP User Guide August, 2012


User Guide 578

changes that could be made in the model:

1. Change the size of the fluid in place of one or more reservoirs


2. Change the PI of one or more of the wells
3. Change the pressure drop response of one or more wells
4. Change the pressure drop response of one or more surface pipelines
5. Change the response of one or more compressors

This list can extend to every single element that makes up the system. In addition to this, all the
events that took place in the history would need to be accounted for in the scheduling. For
example,

1. When each well was on or off line


2. When each compressor was on of off line
3. Routing of fluids through different pipelines
4. Shutdowns of part of the field

Again the list can be extensive and days can be spent scheduling events and gathering the
information.

This procedure for history matching is not the most efficient way a model can be
matched. It will take a lot of time to complete and the engineer will find it very difficult to
isolate where the changes should be made due to all of the physical interactions going
on in the system. It becomes very easy to make changes to the model when the
fundamental reason for the discrepancy may actually lay somewhere else entirely.

2.11.2.2 History matching each element independently


As GAP is a completely physical model of the real field, which is why it is so powerful,
then it will capture all of the interactions occurring between the different elements (well,
pipelines, reservoir etc.). Therefore from a troubleshooting perspective, in order to
understand the dependency of specific components in system, we should isolate the
elements and this is the recommended approach for history matching in IPM.

This procedure is the recommended way to perform history matching in a full IPM model:

1. Match the reservoir models to historical production data (independent of well


performance) and quality check the PVT.

2. Match the well models (independent of reservoir and surface facilities) to more than
one test in time. In order for a well model to be predictive, it needs to be able to
reproduce more than one independent test point. If changes have to be made to the
model to match to each test (different pressure drop correlation for example) then by

1990-2012 Petroleum Experts Limited


579 GAP

definition it is not predictive and the model cannot be considered reliable.

3. Match the surface pipelines to tests.

4. Run the full model (solve) at different points in time during the history. Since each
element of the system has been matched independently, then the results should by
default match the total production from the field. If the total results for the particular
date do not correspond to what was produced from the field, then the elements that
were not matched (lack of tests for pipelines for example) should be looked at to
determine the inconsistency.

The above procedure is demonstrated with a simple example below.

The matching procedure can start from the reservoir model. This can be history matched as
explained in the MBAL manual.

GAP User Guide August, 2012


User Guide 580

Fractional flow curves should also be matched to capture the interaction of the phases.

1990-2012 Petroleum Experts Limited


581 GAP

As soon as this is done, each well can be matched independently of the reservoir model in
PROSPER.

GAP User Guide August, 2012


User Guide 582

to more than one test at a time:

Tests can be matched in PROSPER based on the methodology described in the PROSPER
manual.

Note that there are step by step examples that describe history matching reservoirs and
matching well models in the MBAL and PROSPER manuals respectively.

Once each model is built and the network is completed, then the pseudo rel perms should be
transferred from the MBAL file to the corresponding wells in GAP. This can be done from the
well IPR screen using From 204 MBAL 204 ".

The surface pipelines can also be matched if the test data has been validated and shown to
representative.

1990-2012 Petroleum Experts Limited


583 GAP

In order to initialise the whole model for one specific date during the history, so that the user can
try to reproduce the rates for that date, select Edit | Initialise IPRs from Tank Simulations from
the main menu.

GAP User Guide August, 2012


User Guide 584

This feature will perform a simulation in MBAL, up to the entered date, and transfer the results
(Reservoir Pressure, water saturations and PVT) into the IPR sections of the connected wells in
GAP.

1990-2012 Petroleum Experts Limited


585 GAP

All of the wells in the model can be selected and then a date can be entered in the following
screen.

GAP User Guide August, 2012


User Guide 586

Selecting "Calculate" and "Continue" will update the well models, thus initialising them to the
date in question.

The Model Validation 489 feature can then be used to check well production against tests. If no
tests are available on a well by well basis for the date selected then the whole system can be
solved instead and results checked against the production data.

As the reservoir and well models have been validated, any problems can be isolated to the
elements of the system that have not been matched. The attention of the engineer can then be
focused on those particular elements making the trouble shooting far more efficient and direct.

1990-2012 Petroleum Experts Limited


587 GAP

2.12 Prediction Script

2.12.1 Introduction
The 'Prediction Script' is a feature which enormously enhances the capabilities of the software.
The scope and flexibility of this option allows the engineer to introduce control mechanisms, act
on scenarios or conditions changing during the predicition, modify parameters on the fly etc.
The range of applications is extremely diverse and this is demonstrated in Example 1b 632 ,
Example 5 765 and Example 8 841 .

The 'Prediction Script' can be accessed from the menu Prediction | Edit Prediction Script or
from the button in the main toolbar.

Selecting 'option' this will prompt the following screen.

The scripts can be written in "VB Script", which is a format very similar to VBA, to control the
prediction/solve network.

It is difficult to do the number of possible functions justice however these are some basic actions
that can be carried out through scripting:

a. Wells can be prioritised and switched on as soon as the potential of the field cannot
satisfy contracts volumes.
b. Log messages of prediction events (for instance water cuts reaching a given value)
c. Automatic detection of unwanted fluid volumes in the system and triggering of
disposal systems.

GAP User Guide August, 2012


User Guide 588

2.12.2 Functions
The scripting facility revolves around the following commands:

DoGet Used for retrieving a certain value.


DoSet Used for setting a certain value.
Cmd Used for performing a command (such as masking a well)
LogMsg Logging a message on the log screen appearing during the prediction:

EndRun Ends a prediction run


SetRedoStep Sets the flag that will force the program to re-run the solver for the current
time step
SetTakeSnapshot Switch on and off the 'take snapshot' flag. 1 = on
(0 or 1)

These commands can be set in the same way as the OpenServer commands in four
subroutines that are provided in the script.

1990-2012 Petroleum Experts Limited


589 GAP

PredProlog Subroutine that is executed once at the beginning of the prediction


(before any calculations are done).
PredEpilog Subroutine that is executed once at the end of the prediction (after
all calculations are done).
PredStepProlog This subroutine is executed at the beginning of each prediction
step.
PredStepEpilog This subroutine is executed at the end of each prediction step.
For example, results of the previous timestep can be used to
make decisions on how to set up the network for the timestep to
follow.
PredStepSolverProlog The script is run once at the beginning or end (depending on the
and Epilog Prolog/Epilog choices) of each solver step. This means that if the
GAP model has a production system, water injection and/or gas
injection system, the script will be run at the beginning or end of
solve of each of them. This mode is particularly useful, for
example, when we want to act on the injection systems during a
time step.

Helpful Tips
The function CDBL() converts the variable to a double ensuring that it is not a string. For
example, in the above script if it was not included the "If" statement would not work properly as
the Rate variable would be treated as a string.

Similarly the function CStr() converts the number to a string. This is useful for concatenating
strings and numbers. For example,

"GAP.MOD[{PROD}].WELL[{Well_A}].PREDRES[" & CStr(j) & "].LIQRATE"

with j=3 is equivalent to

GAP User Guide August, 2012


User Guide 590

GAP.MOD[{PROD}].WELL[{Well_A}].PREDRES[3].LIQRATE

2.12.3 Example
Let us consider an example.

In the above screen, the script is executed at the end of each timestep in the prediction of GAP,
as shown be the red marker.

Analysing the code line by line.

The first line checks if the well is masked or not. The MASKFLAG variable returns 0 if the well is
activated and a value 1 if the well is masked. The value returned by this variable is stored in
'Flag'.

If the well is activated (Flag = 0) the water cut of the well considered is taken from the solver
results and reported in the script log of the prediction.

The following lines state that if the water cut in Well A is greater than 15% the well will be shut in
(Masked) and this will be displayed in the log messages once the action has been carried out.

Running the prediction confirms that the action is carried out when we check the messages in
the 'Script' tab.

1990-2012 Petroleum Experts Limited


591 GAP

In order to obtain an OpenServer statement the user can use CTRL+Right Click over any
variable and the OpenServer string along with the current value will be displayed. For example,
the OpenServer variable for the surrounding temperature of the pipeline is displayed below.

The OpenServer commands are also documented in detail in the OpenServer manual.

When a model will be run using the 'Restart' facility, only the events entered in the schedule
will be considered and not events imposed by the script.

GAP User Guide August, 2012


User Guide 592

2.13 Defining System Units


In GAP, the units can be modified at two different levels. They can be changed globally, applied
to the whole system, or at the individual variable level.

2.13.1 Setting the Input / Output Unit System


The global unit system is defined in the 'Units' option which is accessed from the main menu. By
default the global unit system is 'Oil Field'.

The user can access the unit options from the main menu by selecting Unit | Edit Units. The user
can modify the unit system of the input and output variables globally by selecting from of the
available options at the top of the column.

This will change the default units for all variables in GAP. The following options are available:

Oilfield
Norwegian S.I.
Canadian S.I.
German S.I.
French S.I.

1990-2012 Petroleum Experts Limited


593 GAP

Latin S.I.

To change the units of individual variables and create a mixed set of units follow the steps
below:

First, locate the variable(s) that are going to have their units modified using the scroll bar. Select
the preferred measurement unit for that variable. Note that the user has the option to have a
different unit for the input and output of that variable.

The validation limits define the acceptable magnitudes that the program will use for the
calculations. Any variable that falls outside the defined limits will create a validation error and
the program will not allow the variable to be populated.

To view the conversion between the currently selected unit and the base (default) unit for the
variable in question, click on the "Details" button on the far right hand side of the window.

Once all of the changes have been made press the "Save" button and give the custom unit
configuration a name.

2.13.2 The Control Database


The "Controls" option takes the user into the controls database.

GAP User Guide August, 2012


User Guide 594

This screen allows the user to change the units of variables within a specific dialogue. For
example, the user could change the units reported for the oil rate in the 'Prediction' results as
shown below.

1990-2012 Petroleum Experts Limited


595 GAP

2.13.3 Defining Units at a Variable Level (Dynamic Unit


Conversions)
It is possible to change the units of a parameter on-the-fly, without having to consult the main
unit options described above. By clicking the right hand mouse button on a dialogue entry field, it
is possible to choose from a list of available unit conventions.

Select the new unit for the variable that is required. The values in the entry field will then be
updated accordingly. The variable database will also be updated with the new unit selection.

GAP User Guide August, 2012


User Guide 596

1990-2012 Petroleum Experts Limited


Chapter

3
Examples Guide 598

3 Examples Guide

3.1 Examples Index


The following table can be used as a reference for the examples included in this guide:

Application area Topic Examples Guide


Gas Field Modelling and Setting up a network model for a gas
field, entering constraints and Example 1a 603
Optimisation
schedules and running predictions
Advanced Gas field Modelling hydrate injection using inline
Modelling and Example 1b 632
elements in a gas field.
Optimisation
Setting up a network model for an oil
field, model validation to QC the well
Oil Field Modelling and models, using "Initialise IPRs from
Tank Simulations", setting constraints, Example 2 665
Optimisation
running "Solve Network," entering
schedules, running predictions and
troubleshooting tips.
Viewing details of the pressure drop
Detailed Results for Example 3 731
calculation in GAP using the PROSPER
Pipelines
on line feature
Setting up network model for water
Pressure Support with injection system, linking it to the main
production model and running Example 4 746
Water Injection
prediction with the two coupled
models
Setting up a network model for a multi-
layered well completion with inflow
controllable valves, optimising both of
Smart Well Completions Example 5 765
the layers to maximise oil production,
introducing scheduling and prediction
script.
Setting up network model with ESP
Artificial lift Optimisation - lifted wells, scheduling and running
predictions with optimisation to honour Example 6 793
ESP field
constraints on maximum power
available
Setting up network model with gas
Artificial lift Optimisation - lifted wells, scheduling and running
Example 7 816
Gas Lifted field predictions with optimisation to honour
constraints.

1990-2012 Petroleum Experts Limited


599 GAP

Setting up a gas lift injection network


and linking it to the main production
Gas Lift Injection Network model optimising the coupled models. Example 8 841
Running prediction script and
compressor modelling.
Setting up a fully compositional
LNG Field (Fully network of a LNG field, running
Compositional) predictions with advanced flow Example 9a 893
assurance studies to predict hydrate
formation.
LNG Field (BO Running predictions for a LNG network
Compositional Lumping/ with advanced PVT modelling. Example 9b 948
Delumping)
Setting up a tight gas field, creating/
Tight Gas Field importing partial GAP files and Example 10 960
compressor modelling.
Setting up a coal bed methane field,
Coal Bed Methane dewatering, routing and running Example 11 984
predictions.

GAP User Guide August, 2012


Examples Guide 600

3.1.1 Extracting a GAP Archive file (.GAR)


All the files related to the worked examples are stored in a single GAP archive file. An archive
file works in a similar way to a zip file in that a group of files can be compressed and stored in
one single file.

The files need to be extracted from the archived files so that they can be used in the following
examples. The simple process of extracting the files is described below.

To extract an archive file

From the GAP main screen, click on File | Archive | Extract, the following screen will appear:

Select the *.gar file to be extracted and click on | Open (details of the archive files that are
relevant to each example are given in the exercises.) The Extract archive screen will be
displayed. Fill in the Extract Directory box at the bottom of the screen to specify where the files
will be extracted to. Note the location that has been entered so that the files can be retrieved
later.

1990-2012 Petroleum Experts Limited


601 GAP

After setting the directory, click on | Extract to extract the files.

When the Job Progress bar has turned fully blue click on | OK. The files have now been
extracted.

Related topics:
Archive Creation 72

GAP User Guide August, 2012


Examples Guide 602

Archive Extraction 75

1990-2012 Petroleum Experts Limited


603 GAP

3.2 Example 1a - Gas Field Network modelling with GAP

3.2.1 Objectives
Definition of the Problem
A new gas field has been discovered on land in a harsh environment that is subject to large
temperature swings. The gas reservoir will be depleted by 4 wells that are tied back to two
manifolds where the produced fluids will travel approximately 40 km via a main pipeline to the
gas station.

The gas station can process a maximum 250 MMscf/day of gas and requires the gas to be
delivered at 1000psig. The objective is to determine for how long the field can keep producing
at the target rate over a ten year period commencing 01/01/2008.

Learning Topics
The objectives of this example are to learn how to:
Set-up a basic GAP model for a gas field.
Set-up constraints in the system.
Set-up well controls
Run a prediction using GAP, PROSPER and MBAL.

Executive Summary
The steps followed will be:
1. Build the GAP network
- Draw the GAP network
- Define a reservoir in GAP
- Define wells in GAP

GAP User Guide August, 2012


Examples Guide 604

- Generate well IPRs in GAP using PROSPER


- Generate well VLPs in GAP using PROSPER
- Define the pipeline and eventual surface equipment
- Setting constraints and well controls
2. Run the prediction

The initial files for this example and the final model can be found in the GAP
archive file format in the following directory.
~\samples\GAP\Example 1a - Gas Field

3.2.2 Data available


Description of the pipelines
Label Pipe Pipe ID Upstrea Downstre Overall Heat Multiphase Correlation
segme m TVD am TVD Transfer
nt Coefficient
Length
km Inches ft ft Btu/h/ft2/F -

Line 1 0.8048 4 0 0 3 Petroleum Experts 5

Line 2 1.1096 4 0 0 3 Petroleum Experts 5


Line 3 0.5 4 0 0 3 Petroleum Experts 5
Line 4 0.5 4 0 0 3 Petroleum Experts 5
Manifold_A to Manifold_B 0.3 12 0 0 3 Petroleum Experts 5
Manifold_B to Sep Joint 0.4 12 0 0 3 Petroleum Experts 5

Table 1 Pipeline description

Description of the reservoirs


Tank Name History Start - End GIIP MBAL File
(dd/mm/yyyy) Bscf -

Gas Reservoir No History 2000 Gas Reservoir.mbi


Table 2 Reservoir data

Description of the wells

The file names corresponding to each well are shown in the table below.
Well Name PROSPER File

Well1 Well1.OUT
Well2 Well2.OUT
Well3 Well3.OUT

1990-2012 Petroleum Experts Limited


605 GAP

Well4 Well4.OUT
Table 3 Wells data

3.2.3 Build the GAP model


This section can be used as a general step-by-step procedure to build any GAP model. The
following sketch will be used as a reference.

3.2.3.1 Draw the GAP Network


1. Getting Started
Begin by starting the program.
From the GAP entry screen, select File| New to reinitialise GAP.

GAP User Guide August, 2012


Examples Guide 606

2. Defining the Global System Option


To begin setting up the system options, select Options | Method and make the following
selections:

System Type : Production


Optimisation Method : Production
PVT Model : Black oil
Prediction: On
Prediction Method: Pressure and temperature
Water Vapour: Calculate Condensed Water Vapour
Temperature Model: Rough Approximation
Calculate Well Choke Delta T: On

1990-2012 Petroleum Experts Limited


607 GAP

The "Calculate Well Choke Delta T" takes into account the Joule-Thomson
effect that can become significant when a gas is subjected to a large
pressure drop.

The "Calculate Condensed Water Vapour" option will take into account the
water that has been vaporised from the formation brine which can potentially
condense in the pipelines due to changing pressures and temperatures.

Then click Ok to exit this screen.


This completes the system set-up and re-initialises the program.

3. Defining the Units System


In order to define the units system click on Units | Edit Units. The following screen will appear:

A units system can be selected by pointing the cursor in the cell below Input. This allows the
overall unit system to be selected. Clicking on the white cells below allows individual units to be
changed.
Input : Oilfield
Output : Oilfield

GAP User Guide August, 2012


Examples Guide 608

In order to reproduce the same results in this example, it is recommended


to set the inputs and outputs in Oilfield Units.

For further details, access the Units section 592 of the user Guide.

Click on OK to complete the selection of units and to close the screen.


If necessary, later we will modify the units system when entering input data.

4. Drawing the System


The purpose of this section is to demonstrate how to construct graphically the complete network.
In this example we will define the reservoirs first. However the order of how the icons are
introduced has no effect on the results.

The Reservoir
To draw a reservoir select the tank icon and click anywhere on the screen. This will create
an icon which will should be labeled Gas Reservoir.

The name Gas Reservoir is a label that is associated with the


reservoir icon. Node labels are not required in the IPM suite,
however if the models are to be used as fields in IFM then they will
require an individual label.

1990-2012 Petroleum Experts Limited


609 GAP

NOTE: If a mistake is made in entering the label, this can be changed


by double clicking on the element and in the "Summary screen"
changing the "Label" field.
NOTE: When a an icon is circled in red it means that it is not valid. In
this case it is because we have not yet defined the MBAL files for
these tanks.

The Wells
We will start with the first well Well1. Select the Well icon and add a well. Name this
Well1. After that, create the remaining wells in the configuration shown below:

GAP User Guide August, 2012


Examples Guide 610

Some useful tips

1. To move an icon to a new location on the screen, hover the mouse arrow over the icon to
be moved and press the left mouse button and the Shift key. Keep the left mouse button
pressed and move the node to the new location. Releasing the left mouse button will then
position the icon in the new location. This can also be achieved by selecting from the
main toolbar
2. Icons can be deleted by selecting the scissors icon from the toolbar menu and
clicking on the node to be removed.

The Joints
A joint (or node) is used to represent any manifold or intersection
where pipes meet. Every pipe must have each of its ends connected
to a joint.
THIS MEANS THAT TO CREATE A PIPELINE TWO JOINTS NEED TO
BE INTRODUCED

Seven joints will be required in this system:


A single joint will be required for each wellhead (i.e. "WH1") which will be placed near the well
icons.

1990-2012 Petroleum Experts Limited


611 GAP

Two joints for each of the pipeline manifolds (i.e. "Manifold_A").


One joint to represent the separator joint (i.e. "Sep Joint") which will be placed near the
separator.

Click on the joint icon from the main toolbar and add the 7 joints by clicking in the main
GAP display area as shown below.

The Separator Separator


A separator is considered by GAP to be the end of the production chain and
will be allocated a pressure at a later stage. It does not have to actually be a
separator, rather a convenient delivery point where a known pressure exists.

Select the separator icon from the main toolbar and click the left-hand mouse button in the
main GAP display area towards the top right. This will activate the window shown below.

GAP User Guide August, 2012


Examples Guide 612

Select the 'Production Separator' and label the icon as "Separator".

1990-2012 Petroleum Experts Limited


613 GAP

The Links /Pipes


Links are connection tools which connect the various nodes in the network
system. The following rules apply:

a link between a reservoir and a well has no dimension


a link between a well and a joint has no dimension
a link between 2 joints may have a dimension (pipe, chokes)
a link between a joint and a separator may have dimensions
a well can not be linked directly to a separator. An intermediate joint is compulsory.
a reservoir can not be linked directly to a separator.

Link the components together by doing the following:

1. Selecting the Link icon from the main toolbar.


2. Click on the first component to be connected with the left mouse button.
3. Keeping the left mouse button pressed, move the cursor from the first component to the
second component.
4. A joint will form when the mouse button is released over the second component.

Create links between the following components in the direction of the flow:

1. Connect the tank Gas Reservoir to all of the wells.

GAP User Guide August, 2012


Examples Guide 614

2. Connect the wells to the correspondent well heads.


3. Connect the well heads to the corresponding manifold.
4. Connect the manifold to the sep joint.
5. Connect the sep joint to separator.

The basic model layout has now been specified. Additional components can easily be added or
deleted when the model is refined later. The GAP screen display should look something like the
screen shot below:

The network drawing is completed.


3.2.3.2 Define the Reservoir
For the purposes of this example the MBAL files have already been built (ref. Table 2 604 ).
Please refer to the worked examples in the MBAL manual for a step by step guide of how to
build the file.

The MBAL files location need to be defined from within GAP. In order to do this, double click on
reservoir icon to open up the tank "Summary" screen . From this screen create a link to the
MBAL file by clicking on "Browse" and selecting the MBAL file. The MBAL file Gas Reservoir.
mbi is provided in the "Initial Files" folder.

1990-2012 Petroleum Experts Limited


615 GAP

Click on |Open to establish the link between tank icon in GAP and the MBAL file.

To confirm the changes that have been made to the tank click on | OK at the bottom left of the
summary screen. The tank icon should now no longer be highlighted by a red circle.

At this stage the GAP file should be saved. To do this click on | File | Save As and using the
browsing feature save the file as Gas Field.gap

3.2.3.3 Define the Wells


As with the tank models, we have already built the PROSPER models for all of the wells. The
PROSPER file associated with "Well1" has been constructed and documented in detail in the
PROSPER manual. Please refer to the PROSPER tutorials for more information on well modeling.

In this example we will define both the VLPs and the IPRs at the well level. To do this we will use
the "VLP/IPR intersection" model for all of the wells. In Example 6 we will demonstrate a

GAP User Guide August, 2012


Examples Guide 616

different method to handle the wells when we introduce smart well modeling.

To enter the well data double click on the well icon to access the well summary screen. Then in
the summary screen enter the following information:

Label: Well1
Mask: Include in System (default)
Well Type: Oil Producer (No Lift)
Model: VLP/IPR intersection
PROSPER file: Well1.OUT

PLEASE MAKE SURE THAT THE WELL TYPE IS DEFINED AS "Gas


Producer"

Access the IPR section from the summary screen and set the IPR Type to C & n for all well IPR

1990-2012 Petroleum Experts Limited


617 GAP

models:

Complete all of the wells according to the data provided in Table 3 604 .

3.2.3.4 Generate Well IPRs


Once all of the wells have been created and the associated PROSPER well models selected, the
IPRs can be generated in GAP in a batch mode.

From the main GAP menu select Generate | Generate Well IPRs from PROSPER.

Then select All | Generate.

GAP User Guide August, 2012


Examples Guide 618

By double-clicking on any of the wells and selecting the IPR tab, one can verify the IPR input data
as shown in the following screen shot:

The IPR curve can be visualised by selecting "Plot".

1990-2012 Petroleum Experts Limited


619 GAP

The scale of any plot can be changed by clicking on | Scales on the menu bar. This allows the
min and max X and Y axis values to be redefined, and the number of grid blocks (divisions) that
the axis can be divided into.

Before leaving the IPR section, access the More tab screen and select the set of Rel
Perms for fractional flow prediction to be From Tank Model. This is important to
determine the WGR produced by the well, based on the history matching performed in
MBAL.

Repeat this for all the wells. The IPR section of each well will then become green,
indicating that all of the fields necessary to define the IPR section have been updated.

Click on | OK to get back to the GAP main screen.

GAP User Guide August, 2012


Examples Guide 620

3.2.3.5 Generate Well VLPs


To generate the VLPs select Generate | Generate Well VLPs with PROSPER from the main
menu. The option will then be given to either select specific wells or to generate the VLPs for all
the wells in the network. To illustrate this feature select | All followed by "Data" to enter the
ranges for the sensitivity variables.

Please refer to the VLP generation 466 for guidelines on the ranges to use.

It is recommended to always use the ranges suggested in the


guidelines as these attempt to ensure there are no extrapolation
errors.

In this case, as the well models have already been saved, we will use the ranges already present
in the models:

1990-2012 Petroleum Experts Limited


621 GAP

NOTE: the CGR value is unique, as the fluid has been defined as a dry gas, which assumes the
fluid to have a fixed amount of condensate vaporised in the gas.

After that, select | Ok | Generate. At the end of the calculation the program will have generated
a .vlp file for each well that contains all of the VLP curves and this file is transferred to the VLP
section of the well summary screen.

In order to check the generated lift curve access the well summary screen by double clicking on
the well and then enter the VLP section. This will lead to the VLP description screen:

In this screen we can verify that the .vlp file has been created which contains the generated VLP
curves. Select | Inspect and then Plot to verify the quality of the curves.

GAP User Guide August, 2012


Examples Guide 622

The VLP curves should always be smooth and continuous. Discontinuous VLPs are not
representative of reality and lead to poor quality derivatives which can create problems for the
GAP solver.

If the VLPs appear poor then it could either be the multiphase flow correlation which has been
selected or it may be the PROSPER file that needs to be reviewed to understand what may be
causing the effect.

3.2.3.6 Define the Pipelines


Table 1 604 contains the information about all of the pipelines in the field.

According to the network sketch 605 , the wells "Well1" and "Well2" are tied back to "Manifold_A"
via devoted lines. The two lines are therefore represented by a link between each wellhead and
the manifold.

In order to describe the procedure for defining pipelines access the pipe summary screen by
double-clicking on the link that joins WH1 and Manifold_A. The summary screen is shown below.
Make the following changes:

Pipeline model: GAP Internal Correlations


Correlation: Petroleum Experts 5
Gravity Coefficient: 1

1990-2012 Petroleum Experts Limited


623 GAP

Friction Coefficient: 1

Environment
Select the 'Environment' tab to access the screen which allows the pipeline environment to be
defined and then enter the following values.

Surface Temperature: 32 degF


Overall Heat Transfer Coefficient: 3 Btu/h/ft
Oil Heat Capacity: 0.53 Btu/lb/F (default)
Gas Heat Capacity: 0.51 Btu/lb/F (default)
Water Heat Capacity: 1 Btu/lb/F (default)

GAP User Guide August, 2012


Examples Guide 624

Pipe Description
To define the pipeline dimensions select the | Description tab. Enter the following data (note
that the data are given from upstream to downstream).

Pipe Pipe ID Upstream Downstream Roughness Multiphase


Segment TVD TVD Correlation
Length
km Inches ft ft Inches -

Line 1 0.8048 4 0 0 0.0006 Petroleum


Experts 5

The upstream and downstream TVDs are the same therefore the pipeline is horizontal.

1990-2012 Petroleum Experts Limited


625 GAP

To change the length unit from ft to km point the cursor in the cell
containing the unit ft This will activate a pull-down menu list from
which km can be selected. The same principle applies for the TVD.

Once the data has been entered it is useful to click on | Validate in order to check whether the
description entered is valid or not. This is not compulsory but can be useful for verifying your
input. Click | OK to return to the main GAP screen.

Copy/Paste flowlines
If two pipe descriptions are the same, the information can be copied from a
described pipe to an undescribed pipe as follows:

1. Hold down the left mouse button on the described pipe and press the
Control key.
2. Move the cursor until it is over the un-described pipe and release the
control key. The information will now be transferred.

Repeat this procedure for all of the pipelines using the default roughness of 0.0006

GAP User Guide August, 2012


Examples Guide 626

3.2.3.7 Settings the Constraints


To enter the constraint double click on the "Separator" to access the Summary screen and then
select "Constraints." Enter a maximum gas constraint of 250 MMscf/d.

Two red arrows will appear in the main screen on the Separator icon as shown below.

3.2.3.8 Settings the Well Controls


In order for the optimiser of GAP to be able to maximise production and honour constraints,
controls have to be set in the system. In this case the field has well head chokes.

The wells can be made "controllable" (which means that the wellhead choke can be changed by
the optimiser) by:
Accessing the Controls 230 section in the well summary screen and setting the "dP Control" to
"Calculated" or "Fixed Value."
Right clicking on the well icon in the main GAP screen and selecting "Controllable" (this is
currently only for dP Control - for other controls, like gas lift injection rate or pump frequency,
the "Controls" section will also need to be accessed)

1990-2012 Petroleum Experts Limited


627 GAP

It is paramount to set controls every time a constraint needs to be


honoured. This is to reproduce what happens in reality where devices
like chokes are used to control the field

The figure below shows the "Controls" section in the well input area:

Ensure that all of the wells in the system are made controllable.

The GAP model has now been built. Save the file as Gas field.gap.

3.2.4 Running the Prediction


To run the prediction select Prediction | Run Prediction from the main GAP menu and then enter
the following information:

Start Date: 01/01/2008


End Date: 01/01/2018
Step Size: 2 Months

GAP User Guide August, 2012


Examples Guide 628

Select Next | Next and enter a separator pressure of 1000psig

Select | Next and then set the prediction mode to 'Optimise with All Constraints' and then |
Calculate:

1990-2012 Petroleum Experts Limited


629 GAP

The Plot Nodes/Tanks feature enables the user to visualise the results
dynamically as GAP is carrying out the prediction.

The 'Calculate Potential' option allows the user to calculate the field
Potential. If no Potential Constraints have been set up (ref. related
chapter 147 ) the program will calculate the maximum the field can
produce. It does this by solving the system with all of the well chokes
fully open. Solving the system with the wells fully open can result in
bottleknecking or high producers backing out low producing wells
which may actually lead to a reduction in the overall production.

Notes on Constraints 230

3.2.4.1 Results
To check the results of prediction there are various options available:
Double-Clicking on each element of the network and accessing the "Results" from the
"Summary" screen and then selecting the "Prediction" tab.
Accessing the "Results" menu from the main GAP screen.
Accessing the "Prediction" menu from the main GAP screen and then selecting the "Plot
Nodes (or Plot Tanks) Prediction Results" option.

We will follow the last method to plot the separator results:

GAP User Guide August, 2012


Examples Guide 630

In the plot select "Gas Rate" from the "Variables" menu. Also, use the plot options (highlighted
by the red square) to modify the scales or the positioning of the legend.

1990-2012 Petroleum Experts Limited


631 GAP

From the plot it is possible to confirm that the plateau will be maintained for approximately one
year and a half.

This can also be verified by inspecting the tabulated results of the prediction. To do this go back
to the main GAP screen and double-click on the Separator icon to access the summary screen.
From the summary screen select "Results" and then the prediction tab and then read off "Gas
Rate" until it drops below 250MMscf/d and take note of the date.

The flow rates reported by the program at any point in the network correspond to
the volumetric rate expressed at Standard Conditions (by default this is 60 degF
and 0 psig however these conditions can be modified in the main program
Options) and not the in-situ rates.

For example, if the reported oil rate at the well head node is 500 STB/day that
means the oil has been flashed to STD. The actual or in situ rate at the wellhead
can be calculated from the oil formation volume factor and the rate at Standard
Conditions.

GAP User Guide August, 2012


Examples Guide 632

3.3 Example 1b - Gas Field Network Modeling with GAP


(Advanced)

3.3.1 Objectives
Definition of the Problem
A new gas field is located in an environment with very extreme seasonal variations in
temperature and there is a concern this may lead to issues of hydrate formation in the flowlines.

The PVT engineers have provided hydrate curves for the gas that consider different inhibitor
concentrations. The objective is to estimate how much inhibitor will be required during the
different seasons and how this will affect the total gas production. The hydrate inhibitor in this
case will be methanol.

Learning Topics
The objective of this exercise is to build on the previous example and include additional physics
by
Setting up a simple script that will capture the seasonal variations in temperature.
Model the amount of methanol injection required to prevent hydrate formation via
Inline Programmable or General elements
Saving the prediction results
Comparing the results of different runs

Executive Summary
The steps followed will be:
1. Write a script that is executed during the prediction to regulate the surrounding
temperature

1990-2012 Petroleum Experts Limited


633 GAP

2. Write an inline programmable element to capture the inhibitor injection


3. Run a prediction with and without the methanol (inhibitor) included

The initial files for this example and the final model can be found in the GAP
archive file format in the following directory.
~\samples\GAP\Example 1b - Gas Field (advanced)
Extract 600 the archive file from the Initial Files folder.
3.3.2 Data Available
The average minimum temperature for each month has been provided for the region.

Table 1 Temperature Data

These temperatures will be used as the surrounding pipeline temperatures in the model.

The PVT engineers have also provided the hydrate curves for the case when no methanol is
added to the gas and for the case when there is 20% wt. of methanol added. The hydrate
curves dictate whether or not hydrates will form on the basis of the pressure and temperature. If
the pressure and temperature of the gas falls to the left of the hydrate curve then we can assume
that hydrates will form in the system.

GAP User Guide August, 2012


Examples Guide 634

These curves have been fitted with quadratic expressions in EXCEL so that they can be used to
calculate the volume of methanol in the inline elements.

Note: Hydrate curves like the ones above can be built in PVTP using a variety of different models
and inhibitors. For more information on this consult the examples provided in the PVTP manual.

3.3.3 Defining the Inline Programmable Elements


Extract the archive Gas Field Advanced.gar provided in the samples folder.

The network is based on the model that was built in Example 1a however there are additional
Inline General Elements that have been included at the pipeline manifolds. In order to insert
one of these elements into the model select the icon from the main GAP menu.

1990-2012 Petroleum Experts Limited


635 GAP

The red circle around the programmable element means that they have not been defined (i.e.
there is no script associated with any of the elements) and therefore are invalid.

It is assumed that the user has completed the previous example and is already familiar with the
model set-up.
3.3.3.1 Understanding the logic
The objective of the inline programmable elements is to calculate the amount of methanol that
needs to added to the system based on the hydrate curves that have been provided by the PVT
engineers.

The hydrate curves define three distinct regions where the conditions in the field can fall.

GAP User Guide August, 2012


Examples Guide 636

Region 3 is to the right of the hydrate curve (blue) when no inhibitor is added. If the conditions in
the field fall within this region then there is no need to add any methanol.

Region 2 is between the hydrate curve with 20% wt. methanol (red) and the hydrate curve with no
inhibitor (blue). If the conditions in the field fall into this region then we can interpolate between
the curves to calculate what weight percentage of methanol is necessary to prevent hydrate
formation.

Region 1 is to the left of the 20% wt. methanol curve. In order to calculate how much weight
percentage of methanol is required we can extrapolate linearly from the 20% wt. methanol curve.

Once we know what the weight percentage of methanol is (i.e. the ratio of the mass of methanol
to the mass of hydrocarbon) then we can calculate the rate using the properties of methanol.

3.3.3.2 Setting up the Inline Programmable Element


Double-click on the inline element to activate the Summary Screen and click on the 'Script'
button which will be labeled 'Invalid'.

1990-2012 Petroleum Experts Limited


637 GAP

This screen is where the script is entered.

GAP User Guide August, 2012


Examples Guide 638

By default the script screen contains information regarding the available variables, the functions
that can be carried out and a sample script at the bottom.

Any line starting with // will be ignored when running the script however to ensure there are no
issues, clear the screen before entering the script that has been provided below.

The syntax for the script is similar to the C programming language. For more information on the
inlet and outlet variables and other functions of the programmable element, please refer to the
user manual.

The first step to creating the Methanol Injection Element is to define the variables for the script.
To do this, select the 'Variable' tab and then click on the 'Setup Variables' option as shown
below.

1990-2012 Petroleum Experts Limited


639 GAP

Enter the following information for the two variables:

Description Type Unit Script Name


Maximum Weight Fraction of Methanol Real Number Fraction WT_MAX
Density of Methanol at Standard Conditions Real Number lb/cu.ft RHO_METHANOL

Note: the script names will be used in the main script to represent the defined variables.

Once the variable information has been entered, uncheck the 'Setup Variables' option and enter
a Maximum Weight Fraction of 0.2 (which is the maximum provided by the PVT engineers) and
a Density of 49 lb/cu.ft.

GAP User Guide August, 2012


Examples Guide 640

Once the variables have been defined the next step is to write the script which will entered in the
'Script File' section.

1990-2012 Petroleum Experts Limited


641 GAP

3.3.3.3 Methanol Injection Script for MEG_A

Ensure that the script file is completed blank like the figure shown above.

The first step in the script is to extract the temperature and pressure the node labeled
Manifold_A. This can be achieved using the flow variables shown below.

P=MOD.JOINT[{Manifold_A}].FLOW.PRES;
T=MOD.JOINT[{Manifold_A}].FLOW.TEMP;

The next step is to include the expressions for the hydrate curves provided by the PVT
engineers. These expressions are included with the hydrate curves 633 .

P_methanol=0.1607*T*T+7.6429*T+158.57;
P_no_inhibitor=0.1094*T*T+0.6696*T+44.643;

With these variables we can now write the logic that calculates the required volume of Methanol
to be injected. The first case we need to consider is when the pressure at the manifold exceeds
P_methanol (Region 2 or Region 3). To do this use the following "IF" statement:

if (P>P_no_inhibitor)
{

GAP User Guide August, 2012


Examples Guide 642

Calculate the weight percentage of methanol by interpolating between the hydrate curves

WT=WT_MAX*(P-P_no_inhibitor)/(P_methanol-P_no_inhibitor);

Extract the hydrocarbon mass rate from the following flow variable

MASS_gas=MOD.JOINT[{Manifold_A}].FLOW.HCMASSRATE;

Calculate the volumetric rate of methanol (expressed at SC) from the mass rate and the
density

MASS_methanol=WT*MASS_gas;
Q_methanol=MASS_methanol/RHO_METHANOL;

Calculate the volumetric rate of Methanol required and add it to the water stream

QWATOUT=QWATIN+Q_methanol;

Display the calculated variables so they can be viewed in the calculation results

OTHERRES[0]=Q_methanol;
OTHERRES[1]=WT;

An additional "IF" statement needs to be entered within the above "IF" statement to handle the
conditions in Region 3 where the pressure exceeds P_methanol (the 20% wt. methanol hydrate
curve)

if (P>P_methanol)
{

Calculate the weight percentage of methanol by extrapolating from the 20% wt. Methanol
Hydrate curve

WT=WT_MAX+WT_max*(P-P_methanol)/(P_methanol-P_no_inhibitor);
MASS_gas=MOD.JOINT[{Manifold_A}].FLOW.HCMASSRATE;
MASS_methanol=WT*MASS_gas;
Q_methanol=MASS_methanol/RHO_methanol;
QWATOUT=QWATIN+Q_methanol;

OTHERRES[0]=Q_methanol;
OTHERRES[1]=WT;
}

If the conditions fall into Region 1 then there is no need to add methanol.

1990-2012 Petroleum Experts Limited


643 GAP

else

{
Q_methanol=0;
OTHERRES[0]=Q_methanol;
}

The complete script is provided in a file which is part of the GAP archive located in the Initial
Files folder. To load the file select the option "Store in external file" and locate the file MEG_A.
gasc

This will import the script as shown below.

GAP User Guide August, 2012


Examples Guide 644

Repeat the same steps for the MEG_B element.

1990-2012 Petroleum Experts Limited


645 GAP

3.3.4 Setting up the Scheduling


The next step is to capture the seasonal temperature variations in the model as this will impact
the calculated inhibitor volumes. Two different approaches will be introduced which will achieve
the same objective.
3.3.4.1 Using the Schedule Option
The first option is to use the scheduling feature. Double click on one of the pipelines to activate
the summary screen.

Select the "Schedule" option from the main screen. From the schedule section it is possible to
change any variable (on a given date) by accessing its OpenServer string.

GAP User Guide August, 2012


Examples Guide 646

The surrounding pipe temperature can be therefore be modified using the following
OpenServer string which can be accessed by hovering the cursor over the variable and
pressing CTRL + Right Click.

This approach is very cumbersome as the temperature needs to be modified every two months (
See Table 1 633 ) over a 10 year period which would require approximately 50 schedules for each
pipe segment.

3.3.4.2 Using the Prediciton Script


The more elegant approach is take advantage of the "Prediction Script" feature in GAP. This
features enables the engineer to carry out simple logic which can be executed at the beginning
or at the end of every prediction step.

To enter script select Prediction | Edit Prediction Script from the main GAP menu or alternatively
select the icon from the main tool bar.

We will use this to set the temperature every month according to Table 1 633 .

The prediction will be run using 2 month time steps and the temperature needs to change every
two months therefore to to modify the surrounding temperature we can use the following simple

1990-2012 Petroleum Experts Limited


647 GAP

script which will be executed at the beginning of each prediction time step (using
PredStepProlog).

For more information about Prediction Script 587 refer to the main manual.

The script can be imported as a file which in provided in the archive located in the Initial Files
folder. To import the script select Prediction | Import Prediction Script... and then locate the file
Gas Field (Advanced).gapscr.

GAP User Guide August, 2012


Examples Guide 648

Note that the OpenServer strings use a wildcard ($) instead of the pipe name as this applies
the changes to every pipe in the system. In order to obtain an OpenServer statement hover the
cursor over the variable of interest and press CTRL+Right Click. For example, the OpenServer
variable for the surrounding temperature of the pipeline is displayed below.

The OpenServer commands are also documented in detail in the OpenServer manual.

The GAP model has now been built. Save the file as Gas field Advanced.gap.

3.3.5 Running the Prediction


There will be two different predictions carried out in order to break down the understanding of
the impact of varying surrounding temperatures and the injection of methanol into the system.
These will be:

1990-2012 Petroleum Experts Limited


649 GAP

1. A prediction run that includes the methanol injected into the system for varying
surrounding temperatures.
2. A prediction run that calculates the volume of methanol required (but does not inject
it) for varying surrounding temperatures.

Note that the second prediction is not correct as the assumptions conflict with what occurs in
reality. However, it is useful to run this case as it provides a basis for comparison and it will
reinforce the importance of using the correct approach.

3.3.5.1 Prediction 1 - Methanol Included in the System


The first case that is considered is when the Methanol is injected into the lines of the system and
the temperature varies throughout the year.

To run the prediction select Prediction | Run Prediction from the main GAP menu and then enter
the following information:

Start Date: 01/01/2008


End Date: 01/01/2018
Step Size: 2 Months

Select Next | Next and enter a separator pressure of 1000psig

GAP User Guide August, 2012


Examples Guide 650

Select | Next and then set the prediction mode to 'Optimise with All Constraints'. In the 'Settings'
choose the option to save the prediction snapshots as shown below.

1990-2012 Petroleum Experts Limited


651 GAP

Select | OK and then | Calculate to start the prediction.

GAP User Guide August, 2012


Examples Guide 652

Selecting the 'Script' tab it is possible the verify that the script is being executed at the relevant
time step and moreover the log messages indicate that the correct temperature has been
applied.

Save the results of the prediction by selecting Prediction | Save Prediction Results As from the
main GAP menu and entering a description as shown below:

1990-2012 Petroleum Experts Limited


653 GAP

The first step is to verify that the surrounding temperature is changing as expected. To do this
we can analyse the snapshot of a particular date during the prediction. Select Prediction |
Reload Prediction Snapshot and select the snapshot from 01/05/2010.

GAP User Guide August, 2012


Examples Guide 654

Double-click on one of the pipelines and inspect the surround temperature.

1990-2012 Petroleum Experts Limited


655 GAP

We can confirm that the temperature is 52 degF in May which is in agreement with Table 1 633 .

The next step is to interpret the results of the prediction. As the calculated Methanol in the Inline
General elements is based upon the pressure and temperature of Manifold A and B we should
analyse these variables first to understand how much methanol we would expect based on the
hydrate curves. To do this select Prediction | Plot Nodes Prediction Results from the main GAP
menu and then select 'Joint' from the 'Equipment Type' along with Manifold A and B as shown
below.

GAP User Guide August, 2012


Examples Guide 656

Select both the pressure and the temperature for each manifold.

1990-2012 Petroleum Experts Limited


657 GAP

The pressure at 'Manifold_A' is greater as it is the upstream manifold and flow is towards the
separator. The temperature at the manifolds is initially lower due to the Joule-Thomson cooling
at all of the wells which are being choked. The temperature then increases once the wells are
fully open and then cycles as a result of the seasons.

GAP User Guide August, 2012


Examples Guide 658

From the results of the plots we would expect that a greater volume of methanol would be
required at 'Manifold_A' based on the pressure and temperature. To verify the methanol
volumes double-click on the inline elements to activate the system summary screen and select |
Results | Prediction | Plot. The variable that corresponds to the methanol volume is 'User Result
1.'

1990-2012 Petroleum Experts Limited


659 GAP

Methanol injection at Manifold A

GAP User Guide August, 2012


Examples Guide 660

Methanol injection at Manifold B

The reason we require the methanol injection (at Manifold A) early on is due to the additional
cooling we get as a result of the Joule-Thomson effect which is caused by the wells being
choked. No methanol injection is required at Manifold B.
3.3.5.2 Prediction 2 - Methanol Excluded from the System
To exclude the methanol injection it is required to modify the script in the Inline General
elements. To do this, double-click on 'MEG_A' to activate the summary screen and select the
Script.

Modify the script by commenting out the lines

//QWATOUT=QWATIN+Q_methanol

as shown in the figure below.

1990-2012 Petroleum Experts Limited


661 GAP

This line will now be ignored and there will be no methanol added to the stream however the
volume required will still be calculated based on the temperature and pressure of 'Manifold_A.'

Re-run the prediction with the same settings as the previous run and save the results.

GAP User Guide August, 2012


Examples Guide 662

Plot the temperature and pressure at 'Manifold A' by selecting Prediction | Plot Node Prediction
Results from the main toolbar.

1990-2012 Petroleum Experts Limited


663 GAP

It is clear that the pressures and the temperatures are significantly different between the runs
and consequently we would expect different methanol volumes to be calculated.

GAP User Guide August, 2012


Examples Guide 664

In conclusion, the results of the predictions show that the inline elements enable us to
dynamically calculate the required methanol volumes and inject it into the system taking into
account the temperature and pressure variations that will occur as a result of this injected fluid. If
the methanol calculation was to be done externally, in a spreadsheet for example based on the
results of a model that does not include the methanol injection dynamically, then the predictions
would be erroneous as the pressure and temperature throughout the system would not take into
account the methanol flowing through the pipelines.

In order to improve the accuracy of the model, the temperature in the pipelines could be
modelled using the more advanced improved approximation method which uses the full energy
equation. However, as the model is using the black oil PVT method the thermal properties are
not as accurate as when using compositional modelling. For detailed flow assurance studies it
is recommended to use fully compositional modelling which is the method used in Example 9b
948 . This example also demonstrates many of the advanced flow assurance capabilities that are

embedded in GAP.

1990-2012 Petroleum Experts Limited


665 GAP

3.4 Example 2 - Oil Production Network

3.4.1 Objectives
Definition of the Problem
An offshore field which is located in the Logie Mill block consists of two reservoirs called
Reservoirs A and Reservoir B. Reservoir A has been in production since 01/01/2003 and
Reservoir B was brought online five years later in 01/01/2008. There are currently three wells
producing from each reservoir which all meet at a common manifold (either Manifold A or B)
which are approximately 600ft below sea level. Manifold A and B are connected by a 7.5km
flowline and the commingled fluids are then transported through a larger 12km pipeline across
undulating terrain where the fluid is processed. The separator pressure is maintained at
200psig and the current liquid capacity is restricted to 20,000STB/D.

The objective of the analysis to gain a better understanding of the field using an integrated
model of the whole system. In particular, it is required to know:
Question 1. How much we would get from the field on 01/12/2010 if the wells were fully
open? Go to answer 697
Question 2. How much we should choke back each of the wells in order to satisfy the
maximum liquid constraint at the process level and at the same time produce the maximum

GAP User Guide August, 2012


Examples Guide 666

amount of oil? Go to answer 702


Question 3. What would be the total amount of oil recovered if we continue with the proposed
development plan, which is to produce from the field for another 10 years? Go to answer 708
Question 4. If we can highlight any significant events during the prediction which may affect
our development strategy (for example wells becoming unstable, reservoir pressure falling
below the bubble point etc.) Go to answer 713
Question 5. If we can test different development scenarios based on the analysis of previous
runs Go to answer 724

Learning Topics
The objectives for this example are to learn how to:
Set-up a basic GAP model for an oil field
Use the' Model Validation' to quality check the model
Perform a pipeline matching
Update the model to a given date based on the MBAL History Matching using the
'Initialise IPRs from Tank Simulations' feature
Set-up constraints in the system
Running 'Solve Network'
Running 'Prediction' using GAP, PROSPER and MBAL
Saving the prediction results
Using the 'Target Pressure' feature
Comparing the results of different runs

Executive Summary
The steps followed will be:
1. Build the GAP network
- Draw the GAP network
- Define a reservoir in GAP
- Define wells in GAP
- Generate Well IPRs in GAP using PROSPER
- Generate Well VLPs in GAP using PROSPER
- Define the pipeline and eventual surface equipment
- Perform a pipeline matching and carry out a model validation
2. Use the 'Initialise IPRs from Tank Simulations' feature to update the model to the
22/12/2010
3. Run 'Solve Network' without optimisation to calculate the production with wells fully
open
4. Set the constraint of maximum liquid rate of 20000 STB/day at the separator and run
'Solve Network' with optimisation to assess if and which wells need to be choked
back
5. Run a prediction from 22/12/2010 for 10 years (2 months time step) with optimisation
to verify for how long we can keep the production plateau
6. Analyse the results of the run.

1990-2012 Petroleum Experts Limited


667 GAP

7. Test a new development strategy and compare the results of the prediction with the
original run.

The initial files for this example and the final model can be found in the GAP
archive file format in the following directory.
~\samples\GAP\Example 2 - Oil Field

3.4.2 Data available


Description of the surface network
In this example, we will define the sea level as the reference depth.
NOTE: the pipelines are defined from upstream to downstream

Label Pipe Pipe ID Upstrea Downstre Overall Heat Multiphase Correlation


segme m TVD am TVD Transfer
nt Coefficient
Length
km Inches ft ft Btu/h/ft2/F -

WH1_A to Manifold_A 1 6 600 600 8 Petroleum Experts 5

WH2_A to Manifold_A 0.8 6 600 600 8 Petroleum Experts 5


WH3_A to Manifold_A 1.2 6 600 600 8 Petroleum Experts 5
WH1_B to Manifold_B 0.5 6 525 525 8 Petroleum Experts 5
WH2_B to Manifold_B 0.3 6 525 525 8 Petroleum Experts 5
WH3_B to Manifold_B 0.4 6 525 525 8 Petroleum Experts 5
Manifold_A to Manifold_B 7.5 8 600 525 8 Petroleum Experts 5
Manifold_B to Sep Joint 3 12 525 0 8 Petroleum Experts 5
Manifold_B to Sep Joint 4 12 515 525 8 Petroleum Experts 5
Manifold_B to Sep Joint 3 12 480 515 8 Petroleum Experts 5
Manifold_B to Sep Joint 2 12 525 480 8 Petroleum Experts 5

Table 1 Pipeline description

Description of the reservoirs


Tank Name History Start - End STOIIP MBAL File
(dd/mm/yyyy) MMSTB -

Reservoir A 01/01/2003-22/12/2010 376.952 ResA.mbi


Reservoir B 01/01/2008-01/12/2010 238.93 ResB.mbi
Table 2 Reservoir data

Description of the wells

GAP User Guide August, 2012


Examples Guide 668

The file names corresponding to each well are shown in the table below.
Well Name PROSPER File VLP File

Well1A Well1A.OUT Well1A.vlp


Well2A Well2A.OUT Well2A.vlp
Well3A Well3A.OUT Well3A.vlp
Well1B Well1B.OUT Well1B.vlp
Well2B Well2B.OUT Well2B.vlp
Well3B Well3B.OUT Well3B.vlp
Table 3 Wells data

3.4.3 Build the GAP model


This section can be used as a general step-by-step procedure to build any GAP model.
The sketch illustrated below will be used as the reference for this example.

3.4.3.1 Draw the GAP Network


1. Getting Started
Begin by starting the program.
From the GAP entry screen, select File | New to reinitialise GAP.

2. Defining the global system option


To begin setting up the system options, select Options | Method and make the following
selections:

1990-2012 Petroleum Experts Limited


669 GAP

System Type : Production


Optimisation Method : Production
PVT Model : Black oil
Prediction: On
Prediction Method: Pressure and temperature
Water Vapour: No Calculations
Temperature Model: Rough Approximation
Calculate Well Choke Delta T: Off

Then click | Ok to exit this screen.


This completes the system set-up and reinitialises the program.

3. Defining the Units System


In order to define the units system click on Units | Edit Units. The following screen will appear:

GAP User Guide August, 2012


Examples Guide 670

A units system can be selected by pointing the cursor in the cell below Input. This allows the
overall unit system to be selected. Clicking on the white cells below allows individual units to be
changed.
Input : Oilfield
Output : Oilfield

In order to reproduce the same results in this example, it is recommended


to set the inputs and outputs in Oilfield Units.

For further details, access the Units section 592 of the user Guide.

Click on | OK to complete the selection of units and to close the screen.


If necessary, later we will modify the units system when entering input data.

4. Drawing the system


The purpose of this section is to demonstrate how to construct graphically the complete network.
In this example we will define the reservoirs first. However the order of how the icons are
introduced has no effect on the results.

1990-2012 Petroleum Experts Limited


671 GAP

The Reservoir
To draw a reservoir select the tank icon and click anywhere on the screen. This will create
an icon which will should be labeled Reservoir A.
Placing another icon anywhere on the screen will create the second reservoir, that can be
named "Reservoir B".

NOTE: If a mistake is made in entering the Label, this can be


changed by Double clicking on the element and in the Summary
screen changing the Label field.
NOTE: When a an icon is circled in red it means that it is not valid. In
this case it is because we have not yet defined the MBAL files for
these tanks.

The Wells
We will start with the first well Well1A. Select the Well icon and add a well. Name this
Well1A. After that, create the remaining wells in the configuration shown below:

GAP User Guide August, 2012


Examples Guide 672

Some useful tips

1. To move an icon to a new location on the screen, hover the mouse arrow over the icon to
be moved and press the left mouse button and the Shift key. Keep the left mouse button
pressed and move the node to the new location. Releasing the left mouse button will then
position the icon in the new location. This can also be achieved by selecting from the
main toolbar
2. Icons can be deleted by selecting the scissors icon from the toolbar menu and
clicking on the node to be removed.

The Joints
A joint (or node) is used to represent any manifold or intersection
where pipes meet. Every pipe must have each of its ends connected
to a joint.
THIS MEANS THAT TO CREATE A PIPELINE TWO JOINTS NEED TO
BE INTRODUCED

Nine joints will be required in this system:

1990-2012 Petroleum Experts Limited


673 GAP

A single joint will be required for each wellhead (i.e. "WH1_A") which will be placed near the
well icons.
Two Joints for each of the pipeline manifolds (i.e. "Manifold_A").
One joint to represent the separator joint (i.e. "Sep Joint") which will be placed near the
separator.

Click on the Joint icon from the main toolbar and add the 9 joints by clicking in the main
GAP display area as shown below.

The Separator Separator


A separator is considered by GAP to be the end of the production chain and
will be allocated a pressure at a later stage. It does not have to actually be a
separator, rather a convenient delivery point where a known pressure exists.

Select the Separator icon from the main toolbar and click the left-hand mouse button in the
main GAP display area towards the top right. This will activate the window shown below.

GAP User Guide August, 2012


Examples Guide 674

Select the 'Production Separator' and label the icon as "Separator".

1990-2012 Petroleum Experts Limited


675 GAP

The links /pipes


Links are connection tools which connect the various nodes in the network
system. The following rules apply:

a link between a reservoir and a well has no dimension


a link between a well and a joint has no dimension
a link between 2 joints may have a dimension (pipe, chokes)
a link between a joint and a separator may have dimensions
a well can not be linked directly to a separator. An intermediate joint is compulsory,
a reservoir can not be linked directly to a separator.

Link the components together by doing the following:

1. Selecting the Link icon from the main toolbar.


2. Click on the first component to be connected with the left mouse.
3. Keeping the left mouse button pressed, move the cursor from the first component to the
second component.
4. A joint will form when the mouse button is released over the second component.

Create links between the following components in the direction of the flow:

GAP User Guide August, 2012


Examples Guide 676

1. Connect the Tank Reservoir A to the wells Well1A,Well2A and Well3A and do the
same for "Reservoir B".
2. Connect the wells to the correspondent well heads.
3. Connect the well heads to the corresponding manifold.
4. Connect the manifold to the sep joint.
5. Connect the Sep Joint to Separator.

The basic model layout has now been specified. Additional components can easily be added or
deleted when the model is refined later. The GAP screen display should look something like the
screen shot below:

The network drawing is completed.


3.4.3.2 Define the Reservoirs
For the purposes of this example the MBAL files have already been built (ref. Table 2 667 ).
Please refer to the worked examples in the MBAL manual for a step by step guide of how to
build the file.

The MBAL files location need to be defined from within GAP. In order to do this, firstly double
click on each reservoir to open up the tank Summary screen . From this screen create a link to
the MBAL file by clicking on |Browse and selecting the MBAL file. The MBAL file ResA.mbi can

1990-2012 Petroleum Experts Limited


677 GAP

be found in the directory where the archived file was extracted to at the start of the exercise.

Click on | Open to establish the link between tank icon in GAP and the MBAL file.

To confirm the changes that have been made to the tank, click on | OK at the bottom left of the
summary screen. The tank icon should now no longer be highlighted by a red circle.

Repeat this process for the second reservoir.

At this stage the GAP file should be saved. To do this click on File | Save As from the main GAP
menu and using the browsing feature save the file as Oil Field.gap
3.4.3.3 Define the Wells
As with the tank models, we have already built the PROSPER models for all of the wells. The
PROSPER file associated with "Well1A" has been constructed and documented in detail in the
PROSPER manual. Please refer to the PROSPER tutorials for more information on well modeling.

In this example we will define both the VLPs and the IPRs at the well level. To do this we will use

GAP User Guide August, 2012


Examples Guide 678

the "VLP/IPR intersection" model for all of the wells. In Example 6 we will demonstrate a
different method to handle the wells when we introduce smart well modeling. For this exercise,
VLPs have been generated and saved so that they can be imported into GAP.

To enter the well data double click on the well icon to access the Well Summary screen. Then in
the summary screen enter the following information:

Label: Well1A
Mask: Include in System (default)
Well Type: Oil Producer (No Lift)
Model: VLP/IPR intersection
PROSPER file: Well1A.OUT

Complete all the wells according to the data provided in Table 3 667 .

1990-2012 Petroleum Experts Limited


679 GAP

PLEASE MAKE SURE THAT THE WELL TYPE IS DEFINED AS "Oil


Producer (No Lift)"

3.4.3.4 Generate Well IPRs


Once all the wells have been created and the associated PROSPER well models selected, the
IPRs can be generated in GAP in a batch mode.

From the main GAP menu select Generate | Generate Well IPRs from PROSPER.

Then select All | Generate.

By double-clicking on any of the wells and selecting the IPR tab, one can verify the IPR input data
as shown in the following screen shot:

GAP User Guide August, 2012


Examples Guide 680

The IPR curve can be visualized by selecting Plot.

The scale of any plot can be changed by clicking on | Scales on the menu bar. This allows the
min and max X and Y axis values to be redefined, and the number of grid blocks (divisions) that
the axis can be divided into.
Before leaving the IPR section, access the More tab screen and select the set of Rel
Perms for fractional flow prediction to be From Tank Model. This is important to
determine the Water Cut and GOR produced by the well, which should be based on rel
perms that were generated during the history matching which is performed in MBAL.

1990-2012 Petroleum Experts Limited


681 GAP

Repeat this for all the wells. The IPR section of each well will then become green,
indicating that all of the fields necessary to define the IPR section have been updated.

Click on | OK to get back to the GAP main screen.


3.4.3.5 Generate Well VLPs
To import the VLP curves in GAP the files must be already generated. These are saved as .vlp
files and as part of this example have been included in the archive. To load these files double
click on Well1A and then select the VLP tab.

GAP User Guide August, 2012


Examples Guide 682

Select browse and then load the Well1A.vlp file. The VLP section should then become green
which completes the input for the well description. Repeat this process and load the file for each
corresponding well.

In this example the .vlp files are provided however to generate the VLPs select Generate|
Generate Well VLPs with PROSPER from the main menu. The option will then be given to
either select specific wells or to generate the VLPs for all the wells in the network. To illustrate
this feature select All followed by Data to enter the ranges for the sensitivity variables.

Please refer to the VLP generation 466 for guidelines on the ranges to use.

It is recommended to always use the ranges suggested in the


guidelines as these attempt to ensure that there are no extrapolation
errors.

In this case, as the well models have already been saved, we will use the ranges already present
in the models:

1990-2012 Petroleum Experts Limited


683 GAP

NOTE: In the GOR ranges the value of 800 scf/STB for the wells connected to Reservoir A and
500 scf/ STB for wells connected to Reservoir B have been entered. These values are equal to
the Solution GOR of the two fluids from each reservoir. As the reservoirs are operating both
above the bubble point, the producing GOR will be equal to the Solution GOR, therefore it is
useful to enter directly those values in the VLPs to avoid any interpolation.

After that, select Ok and Generate. At the end of the calculation the program will have generated
a .vlp file for each well that contains all of the VLP curves and this file is transferred to the VLP
section of the Well Summary screen.

In order to check the generated lift curve access the Well Summary screen by double clicking on
the well and then enter the VLP section. This will lead to the VLP description screen:

GAP User Guide August, 2012


Examples Guide 684

In this screen we can verify that the .vlp file has been created which contains the generated VLP
curves. Select Inspect and then Plot to verify the quality of the curves.

1990-2012 Petroleum Experts Limited


685 GAP

The VLP curves should always be smooth and continuous. Discontinuous VLPs are not
representative of reality and lead to poor quality derivatives which can create problems for the
GAP solver.

If the VLPs appear poor then it could either be the multiphase flow correlation which has been
selected or it may be the PROSPER file that needs to be reviewed to understand what may be
causing the effect.

3.4.3.6 Model Validation to QC the wells


The 'Model Validation' is a feature in GAP that allows the engineer to verify that the well models
are able to reproduce the well tests that have been measured in the field.
Its purpose is for quality checking and it is the first step to ensuring the GAP model is
representative of reality. Please refer to the Model Validation topic 489 in the user guide for full
details.

The 'Model Validation' can be used:


Whenever the GAP model is built (as is the case for this example) to verify that the well VLP
and IPRs imported into GAP from PROSPER are consistent with reality
Whenever new well tests are performed and one wants to quickly validate them

In this case we have the most recent well tests available for each well in the field.

GAP User Guide August, 2012


Examples Guide 686

Well Name Reservoir Pressure Manifold Pressure Liquid rate Water Cut GOR

psig psig STB/D % scf/STB

Well1A 3722 507 7021 9 800


Well2A 3722 413 7850 8 800
Well3A 3722 510 7790 9 800
Well1B 3500 205 1274 8 500
Well2B 3500 350 965 8 500
Well3B 3500 300 1170 8 300

The PROSPER models were already matched to these tests.

These tests can be entered directly in the 'Model Validation' screen (Model Validation | Wells
Model Validation from main menu) and running 'Calculate':

It is possible to verify from the results that all the wells match the test data except Well3B which
is out by approximately 30%. What could be the cause of the discrepancy?

If we review the well test data we observe that the producing GOR is reported to be 300 scf/
STB. However the reservoir pressure has not fallen below the bubble point therefore the
producing GOR should not be lower than the solution GOR. Therefore we can conclude that the
well test data is not consistent. If we modify the producing GOR to 500scf/STB, which is the
solution GOR of the fluid in Reservoir B, and repeat the model validation we can confirm that the
well is representative of reality.

1990-2012 Petroleum Experts Limited


687 GAP

3.4.3.7 Define the Pipelines


Table 1 667 contains the information about all of the pipelines in the field.

According to the network sketch 665 , the wells Well1A, Well2A and Well3A are tied back to
Manifold_A via devoted lines. The three lines are therefore represented by a link between each
wellhead and the manifold.

In order to describe the procedure for defining pipelines access the pipe summary screen by
double-clicking on the link that joins WH1_A and Manifold_A. The summary screen is shown
below. Make the following changes:

Pipeline model: GAP Internal Correlations


Correlation: Petroleum Experts 5
Gravity Coefficient: 1
Friction Coefficient: 1

GAP User Guide August, 2012


Examples Guide 688

Environment
Select the 'Environment' tab to access the screen which the pipeline environment to be defined
and then enter the following values.

Surface Temperature: 50 degF


Overall Heat Transfer Coefficient: 8 Btu/h/ft
Oil Heat Capacity: 0.53 Btu/lb/F (default)
Gas Heat Capacity: 0.51 Btu/lb/F (default)
Water Heat Capacity: 1 Btu/lb/F (default)

1990-2012 Petroleum Experts Limited


689 GAP

Pipe Description
To define the pipeline dimensions select the Description tab.
Enter the following data (note: the data are given from upstream to downstream):

Pipe Pipe ID Upstream Downstream Roughness Multiphase


Segment TVD TVD Correlation
Length
km Inches ft ft Inches -

WH1_A to 1 6 600 600 0.0006 Petroleum


Manifold_A Experts 5

GAP User Guide August, 2012


Examples Guide 690

Once the data has been entered it is useful to click on 'Validate' in order to check whether the
description entered is valid or not. This is not compulsory but can be useful for verifying your
input. Click 'OK' to return to the main GAP screen.

Repeat this procedure for all of the well lines.

Description of the main flowlines


Double-click on the pipe linking Manifold_A to Manifold_B and enter the following data:

Pipe Pipe Upstream Downstream Roughne Multiphase Correlation


segment ID TVD TVD ss
Length
km Inches ft ft Inches -

Manifold_A to 7.5 8 600 525 0.0006 Petroleum Experts 5


Manifold_B

1990-2012 Petroleum Experts Limited


691 GAP

Similarly, double click on the pipe linking Manifold_B to Sep Joint and enter the following pipe
description:

Pipe Pipe ID Upstream Downstre Roughness Multiphase Correlation


segme TVD am TVD
nt
Length
km Inches ft ft Inches -

Manifold_B to Sep Joint 3 12 525 0 0.0006 Petroleum Experts 5


Manifold_B to Sep Joint 4 12 515 525 0.0006 Petroleum Experts 5
Manifold_B to Sep Joint 3 12 480 515 0.0006 Petroleum Experts 5
Manifold_B to Sep Joint 2 12 525 480 0.0006 Petroleum Experts 5

GAP User Guide August, 2012


Examples Guide 692

The figure on the right hand side allows the user to define which node
is upstream and which is downstream in the system:

1990-2012 Petroleum Experts Limited


693 GAP

To change the units of a variable click on the cell that displays the unit
and a drop down list will become available providing all the different
unit options.

The 'Plot' feature at the bottom of the screen allows the user to view the pipeline profile and
verify graphically that the data has been entered correctly.

GAP User Guide August, 2012


Examples Guide 694

3.4.3.8 Pipeline Matching


Measurements in the field have been provided for the flowline that links Manifold_A to
Manifold_B. The intention is to use this data to match the pipeline in GAP so that it reproduces
the measured pressure drop in the field.

The measurements that have been provided by the field engineers have been summarised
below.

Upstream Upstream Liquid Downstrea Water Cut Gas Oil Oil Gravity Gas Gravity Water
Pressure Temperature Rate m ratio Salinity
Pressure
psig degF STB/D psig % scf/STB API sp. gravity ppm
480 97 17250 340 47 800 37 0.76 23000

To carry out the pipeline matching double click on the pipeline that links Manifold_A to
Manifold_B to activate the pipe summary screen.

1990-2012 Petroleum Experts Limited


695 GAP

Select the 'Match Data' item and enter the measurements.

GAP User Guide August, 2012


Examples Guide 696

Match the Petroleum Experts 5 correlation by selecting 'Match' and then selecting the correlation
from the list of available multiphase flow correlations in GAP.

1990-2012 Petroleum Experts Limited


697 GAP

The GAP model now reproduces the measured field data and can now be used for forecasting
and modelling different development scenarios.

The GAP model has now been built. Save the file as Oilfield.gap.

3.4.4 Question 1 - Solution


In order to address Question 1 665 , it is required to update the status of the reservoir
performance (IPRs) to date 22/12/2010.
3.4.4.1 Initialise IPRs from Tank Simulations
To do this, the 'Initialise IPRs from Tank Simulations' feature can be used. This feature updates
the reservoir pressure and also the WC and GOR of each well. It does this by running an MBAL
simulation in the background to the date specified.

Please refer to the Edit menu 131 and History Matching 576 topics in the user Guide for further
details.

To use this feature access the menu Edit / Initialise IPRs from Tank Simulations and then
select all of the wells and then press 'Continue'.
At the bottom of the 'Initialise Well IPRs from tanks' window enter the desired date which in this
case is 01/12/2010, and then press 'Calculate' and 'Continue'.

GAP User Guide August, 2012


Examples Guide 698

Accessing the well IPR section of any well, it is possible to verify that the IPRs have been
updated with the reservoir pressure, WC and GOR according to the history matching in MBAL:

1990-2012 Petroleum Experts Limited


699 GAP

The status of the model is now updated to the 01/12/2008, which corresponds to the end
of production history of Reservoir B.

3.4.4.2 Solve network for wells fully open


Question 1 665 requires us to determine the production from the system when all of the wells are
fully open.
To do this, a 'Solve Network' calculation will be performed.

From the main GAP menu select the Solve Network / Run Network Solver.
Enter a separator pressure of 200 psig

GAP User Guide August, 2012


Examples Guide 700

Set the mode to 'No Optimisation'


Run the calculation by selecting 'Calculate':

1990-2012 Petroleum Experts Limited


701 GAP

NOTE: as no Controls have been set up, zero wellhead dp will be


applied, which means that no choke is set on the wells and that they
are fully open.
If Controls are set in the model and the model is run with 'No
Optimisation' then the program will use a Fixed value for the
Controls. A fixed value of 0psig also means the wells are fully open.
The value used for the Controls can be found under Edit / Edit
Equipment Controls and under the column name "Actual"

To check the results of a 'Solve Network' calculation there are various method available:
Fly-over. Placing the pointer on each element in the network drawing.
Double clicking on each element and accessing the Results section within the summary
screen.
Using the menu Results. Various formats are available. It is left up to the user to explore the
Results menu.

Using the Fly-over, it is possible to verify that the production at the Separator is around 23360
STB/day of liquid:

GAP User Guide August, 2012


Examples Guide 702

Answer to Question 1: If the wells were fully open they would produce approximately
23360 STB/day of liquid and 21400 STB/day of oil.

3.4.5 Question 2 - Solution


Question 2 665 requires us to determine how the wells should be choked back to honour a
constraint of 20000 STB/day of liquid at the separator whilst maximising the amount of oil
production.
3.4.5.1 Entering the Constraint
To enter the constraint double click on the 'Separator' to access the summary screen and then
select 'Constraints'. Enter a maximum liquid constraint of 20000 STB/day

1990-2012 Petroleum Experts Limited


703 GAP

Two red arrows will appear in the main screen on the separator icon as shown below.

3.4.5.2 Setting Well Controls


In order for the optimiser of GAP to be able to maximise production and honour constraints,
controls have to be set in the system.
In this case the field has well head chokes.

The wells can be made "controllable" (which means that the wellhead choke can be changed by
the optimiser) by:
Accessing the Controls 230 section in the well summary screen and setting the dP Control to
Calculated, or
Right clicking on the well icon in the main GAP screen and selecting "Controllable" (for other
controls, like gas lift injection rate or pump frequency, the "Control"s section also needs to be
accessed)

It is paramount to set controls every time a constraint needs to be


honoured. This is to reproduce what happens in reality, where
devices like chokes are used to control the field

The figure below shows the controls section in the well input area:

GAP User Guide August, 2012


Examples Guide 704

Ensure that all of the wells in the system are made controllable.

3.4.5.3 Solve Network with Optimisation


At this point the model is ready to be run.

From the main menu select Solve Network | Run Network Solver.
Enter a separator pressure of 200psig

1990-2012 Petroleum Experts Limited


705 GAP

Set the mode to 'Optimise with all Constraints'


Run the calculation by selecting 'Calculate':

GAP User Guide August, 2012


Examples Guide 706

In order to honour a constraint, the mode must be set to 'Optimise with


all constraints'

The 'Limiting' tab in the log allows the user to verify if an element is
limiting the production of the field. If this is the case then the field has
the potential to produce more.

Going to the main panel, one can check the results as described in the previous section 701 .

Using the fly-over, it is possible to verify that the constraint is honoured:

1990-2012 Petroleum Experts Limited


707 GAP

When an element is constrained and the constraint is being honoured then the icon is
highlighted in green. If however the constraint is violated then GAP will highlight the icon in pink
as shown below:

Violated constraints can occur for different reasons. The most common reason is that the
constraints that have been entered are not feasible and should therefore be reviewed by the
engineer.

To determine how the wells have been controlled by GAP double-click on the well to access the
summary screen and then select 'Results'.

GAP User Guide August, 2012


Examples Guide 708

Select the 'Network Solver' results and view the dP choke variable which corresponds to the
pressure drop across the well head choke.

Comparing the results of the other wells it can be seen that the wells producing from Reservoir A
are choked back more heavily. This is because these wells have a higher associated water cut
which means that for the same liquid rate there will be less oil produced from these wells.
Therefore to maximise the oil production GAP is choking back the higher water cut wells from
Reservoir A.

Answer to Question 2: Yes, the wells need to be choked back. To maximize the oil
production it is required to choke back the wells from Reservoir A as they have a
higher water cut.

3.4.6 Question 3 - Solution


Question 3 665 asks for how long the system can produce at the maximum capability of 20,000
STB/day.
3.4.6.1 Run Prediction with Optimisation
To answer to the question, a prediction from 22/12/2010 to 22/12/2020 can be run. The
prediction needs to be run with optimisation so that GAP can honour the liquid constraint that
has been placed at the separator. This constraint has been applied so that the restricted
capacity of the separator in the field is captured in the model. Whenever applying constraints in

1990-2012 Petroleum Experts Limited


709 GAP

GAP they should correspond to a physical constraint in the field. The best practice is always to
apply constraints in this manner and keep them to a minimum as a greater number of constraints
requires a more complex optimisation problem to solve.

To run the prediction select Prediction | Run Prediction from the main GAP menu and then enter
the following:

Start Date: 01/12/2010


End Date: 01/12/2020
Step Size: 2 Months

Note that the start of the prediction is set 01/12/2010 which coincides with the
end of the history in Reservoir B. The prediction must be run from this date or
earlier as otherwise the reservoir pressure in Reservoir B cannot be calculated
as it is dependent on the produced fluids which would have to be assumed.

Select Next | Next | Next and then set the prediction Mode to 'Optimise with All Constraints' and
then 'Calculate.'

To check the results of the prediction there are various options available:
Double-Clicking on each element of the network and accessing the results from the summary
screen and then selecting the 'Prediction' tab.
Accessing the results menu from the main GAP screen.
Accessing the prediction menu from the main GAP screen and then selecting the 'Plot Nodes
(or Plot Tanks) Prediction Results' option.

GAP User Guide August, 2012


Examples Guide 710

We will follow the last method to plot the separator results:

In the plot select the Cumulative Oil rate from the 'Variables' menu. Also, use the plot options
(highlighted by the red square) to modify the scales or the positioning of the legend.

1990-2012 Petroleum Experts Limited


711 GAP

From the plot it can be seen that the total oil produced after ten years of production is
approximately 28 MMSTB. This can also be verified by inspecting the tabulated results of the
prediction. To do this go back to the main GAP screen and double-click on the separator icon
to access the summary screen. From the summary screen select' Results' and then the
prediction tab and then read off the cumulative oil production from the last time step.

GAP User Guide August, 2012


Examples Guide 712

Answer to Question 3: The amount of oil produced by the end of the 10 years is
approximately 28 MMSTB.

3.4.6.2 Saving the Prediction results


In GAP it is possible to save the results obtained in a Prediction run (ref. Save Prediction
Results 535 ). This allows the engineer to compare multiple runs and evaluate different
development scenarios directly.

To save the results of a run:


Access the menu Prediction | Save Prediction Results As.
Select Add and Type the name of the scenario. In this case "Base Scenario", then 'Ok'

1990-2012 Petroleum Experts Limited


713 GAP

GAP will save the results in the memory and we will be able to retrieve them at any time.

3.4.7 Question 4 - Solution


Question 4 665 asks if there can be any significant events predicted by the model.
3.4.7.1 Interpreting a GAP Model
In order to gain an understanding of the GAP model there are several techniques that can be
used to troubleshoot the system which are applicable to any GAP model. These techniques
coupled with the prediction results are particularly useful for diagnosing problematic areas in the
model and can also help the engineer to obtain a feel for how the system responds to certain
conditions at different times during the prediction.

GAP User Guide August, 2012


Examples Guide 714

Before any interpretation is carried out the prediction needs to be re-run with the snapshots
saved. This option saves a 'snapshot' of the GAP model as it was for each time-step during the
prediction. This enables the engineer to load a snapshot from any date during the prediction
and troubleshoot the model at that time step. Additionally it is possible to make changes to the
model at that time step within the snapshot (for example disable wells, add pieces of equipment
etc.) which will all be reset once the snapshot is unloaded.

To set this option up select 'Settings' from the prediction screen.

Then activate the option 'Prediction-save intermediate step results snapshots at each prediction
step' by entering a value of 1.

1990-2012 Petroleum Experts Limited


715 GAP

Select OK and then re-run the prediction by pressing 'Calculate'.

The first thing to analyse is the individual well performance. To do this select Prediction | Plot
Nodes Prediction Results from the main GAP menu and select each well as shown below.

GAP User Guide August, 2012


Examples Guide 716

Then plot the individual oil rates of each well. This can be done by selecting each well
individually and then selecting the oil rate from the lower list.

1990-2012 Petroleum Experts Limited


717 GAP

Or alternatively, all the well rates can be plotted at once by carrying out the following steps:

1.) Select one of the wells from the top list.


2.) Select the oil rate from the lower list.
3.) Select the icon at the bottom left hand corner of the screen to activate the option to select
multiple streams.
4.) Select all of the wells in the system from the 'Select multiple streams' menu
5.) and then select OK.

GAP User Guide August, 2012


Examples Guide 718

From the plot we can see that Well1A and Well2A will die after just over 6 years.

We can also plot the reservoir pressure as a function of time by selecting Prediction | Plot Tank
Prediction Results.

1990-2012 Petroleum Experts Limited


719 GAP

From this plot we can observe that reservoir pressure of Reservoir A drops below the bubble
point (Pb is 3500psig) after about 1 year of production. Reservoir B sees a steady decline
however the pressure does not fall below the oil saturation pressure.

To analyse the model in more detail we will use the snapshots feature. In this case the date at
which Well1A dies is the focus of the investigation.

3.4.7.2 Analyzing Snapshots


From the results of the run we observed that Well1A dies in early 2017.

GAP User Guide August, 2012


Examples Guide 720

We will analyse this event using the snapshots to understand why this happens.

Whenever using the snapshots it is always recommended to analyse the snapshot just before
the event as well as the snapshot of when the event occurs. This enables the engineer to grasp
which conditions have changed as time advances.

To view a snapshot select Prediction | Reload Prediction Snapshot and select the date just
before Well1A dies which in this case is 01/02/2017.

1990-2012 Petroleum Experts Limited


721 GAP

To analyse Well1A in more detail double click on the Well1A icon to view the system summary
screen.

GAP User Guide August, 2012


Examples Guide 722

Select Calculate | Initialise from solver results | Calculate | Plot to view the intersection of the
VLP and the IPR at that time step.

1990-2012 Petroleum Experts Limited


723 GAP

From the plot it is very clear that the well is about to die. It is also possible to use the VLP/IPR
calculation to understand how sensitive the well is to changing conditions. For example if the
manifold pressure was increased to 430psig and the calculation is repeated it is possible to
confirm that the well would stop flowing.

GAP User Guide August, 2012


Examples Guide 724

The GOR and WC can also be modified to understand how the well would respond to these
parameters.

If this procedure is repeated for the next two consecutive time steps the engineer will observe
that there is very little change in the reservoir pressure, WC and GOR for Well1A. However the
slight changes in well head pressure, which are due to the rates being produced from each well
in the network as the prediction proceeds, coupled with Well1A's sensitivity to the well head
pressure is what leads to the well dying.

Answer to Question 4: The pressure of Reservoir A will drop below the bubble point
and wells 1A and 2A will die late in the field life.

3.4.8 Question 5 - Solution


Question 5 665 asks if it is possible to evaluate different development scenarios and compare
them directly.
3.4.8.1 Introducing Pressure Support
From the analysis of the results it was found that the pressure in Reservoir A was falling below
the bubble point. The objective is therefore to introduce pressure support into Reservoir A and
compare the results with the base case scenario.

To do this we will use the 'Target Pressure' feature which is activated from the prediction

1990-2012 Petroleum Experts Limited


725 GAP

window. Enter a value of 3650 psig for Reservoir A.

When the Target Pressure is used GAP will inject the necessary water into Reservoir A in order
to maintain the pressure at the value specified by the engineer. This enables the engineer to
screen different development strategies without the need to build an entire water injection
system each time. Once the final development strategy is decided upon then the engineer can
use the results of that run as the basis for designing the final water injection system that is
needed (i.e. using the average water injection).

Select Next | Next | Next and then set the prediction Mode to 'Optimise with All Constraints' and
then | Calculate.

3.4.8.2 Comparing Scenarios


When the prediction finishes save the results as shown in Question 3 712 .

GAP User Guide August, 2012


Examples Guide 726

Select Prediction | Plot Nodes Prediction Results from the main GAP menu and plot all of the oil
rates for each well.

1990-2012 Petroleum Experts Limited


727 GAP

The additional pressure support in Reservoir A removes any instabilities at the end of the field
life that were observed previously. The impact of this additional support results in a significant
increase in the cumulative oil production from 28 to 32.5MMSTB.

To view how much water is injected into Reservoir A and to confirm that the pressure is being
maintained select Prediction | Plot Tanks Prediction Results and select Reservoir A from the top
list followed by Avg Water Injection and Reservoir Pressure from the lower list.

GAP User Guide August, 2012


Examples Guide 728

The plot verifies that the reservoir pressure is being maintained at the target value of 3650psig.
It is also possible to confirm the volume of water which is necessary as a function of time in
order to maintain this pressure and this can be used as the basis for designing the water
injection network for the field.

Save the model.


3.4.9 Creating an Archive File
The final step to be carried out is to create an archive file of the entire model and the saved
results so that this can be passed onto other engineers or management for interpretation.

To do this select File | Archive | Create from the main GAP toolbar. This will prompt the following
dialogue from which the user can specify where the archive will be saved along with its name.

1990-2012 Petroleum Experts Limited


729 GAP

When "Save" is selected the following screen will appear.

GAP User Guide August, 2012


Examples Guide 730

By default, all of the files associated with the model will be selected as archive files however if
the user wants to only include the models (instead of the results and snapshot files) then this can
be achieved by de-selecting the appropriate files. There is also the option to include "Baggage"
files such EXCEL spreadsheets with completion reports, PVT reports etc.

Once the files have been selected the archive file is created by selecting "Write".

1990-2012 Petroleum Experts Limited


731 GAP

3.5 Example 3 - Pipeline detailed results

3.5.1 Objectives
Definition of the Problem
It is required to investigate the length and frequency of the slugs in the pipeline and the riser that
is tied back to Manifold B for the design of an upgrade of the current separation facility. The
upgrade is being considered in 01/10/2013 and it is necessary to determine these parameters
both on the 01/12/2010 and on the proposed date.

Learning Topics
The objectives for this example are to learn how to:

GAP User Guide August, 2012


Examples Guide 732

View detailed results of the pressure drop calculation (flow assurance)


Extra topic: Select the pipe and convert it to PROSPER on line

Executive Summary
Starting from the Oilfield.gap 725 model, the steps followed will be:

1. Run a Solve Network calculation to determine the production on 01/12/2010 (the system was
already initialised 697 )
2. Access the detailed results of the pipeline calculation
3. Convert the pipeline to PROSPER online.
4. Access the detailed results on 01/10/2013

The file for this example can be found in the GAP archive file format in the
following directory.
~\samples\GAP\Example 2 - Oil Field - Completed Files
Extract 600 the archive file from the Completed Files folder.

3.5.2 Data available


For this example we need to start from the saved Oil Field.gap model from Example 2 665 . The
completed archive of this model is saved in Example 2 - Oil Field - Completed Files directory.
Extract 600 the file to start the exercise.
3.5.3 Run Solve Network
The system has been already initialised to 22/12/2010 (ref. previous section 697 ), and the 'Solve
Network' has already been carried out (ref. previous sections 704 ).
We will repeat the 'Solve Network' (with optimisation) calculation, just in case the model has
been accidentally changed.

1990-2012 Petroleum Experts Limited


733 GAP

The highlighted sections of the network solver window inform the user of how the calculation
progressed.

1.) Max Pressure Drop/ Mass Balance difference.

This tell the user what the maximum pressure drop/mass balance difference is at any of the
nodes in the system. If any of these exceed the tolerance set in the model then GAP will highlight
the nodes in the system (provided this option has been switched on).

2.) Last Error.

This is the error associated with the solver. It is an indication of whether the model has
converged properly. Large errors mean the solver has not converged and the engineer needs to
review the input into the model.

3.) Last Guess.

The last guess reports the objective function. For example, in this case as we are dealing with
an oil system (and the oil rate is therefore the objective function) and the value reported is the
optimised oil rate.

Checking the results of the Solve Network with the fly-over:

GAP User Guide August, 2012


Examples Guide 734

3.5.4 Pipeline detailed results


To visualise the detailed pipeline results:

Access the pipeline summary screen by double-clicking on the flowline that links Manifold B to
Sep Joint and then select 'Calculate' from the bottom of the window:

1990-2012 Petroleum Experts Limited


735 GAP

Select 'Initialise from solver results'. This will import the results obtained from the 'Solve Network'
calculation.

GAP User Guide August, 2012


Examples Guide 736

Select 'Calculate' to visualise the Gradient Traverse menu and then scroll to the right to read the
required results on slug length and frequency.

1990-2012 Petroleum Experts Limited


737 GAP

The Mean Slug Length is around 324 ft, whilst the Mean Slug Frequency spans from 24 to 26 /
hour.

The pipe gradient calculation utility is not available for pipe elements described using
Annular Flow

GAP User Guide August, 2012


Examples Guide 738

3.5.5 Convert the pipeline to PROSPER online


The workflow illustrated above shows how to read directly the pipeline detailed results for a
'Solve Network' calculation.

The objective is to also view the pipeline parameters (slug frequency and mean slug length) at
the date we are considering the separator upgrade (01/10/2013) as this will dictate the
equipment sizing. This can be achieved by converting the pipelines to PROSPER on line.

To convert the pipeline to PROSPER on line:

Select the pipeline that links Manifold_B to Sep Joint


This can be done by using the cyan arrow tool and clicking on the pipeline element.
The pipeline will be circled by a thin light blue circle:

Use the 'Edit' menu from the main GAP screen to convert the pipeline to PROSPER on line
This can be achieved by selecting the menu Edit / Selected Pipes / Convert to PROSPER on
line:

1990-2012 Petroleum Experts Limited


739 GAP

After that, a confirmation message appears and 'Yes' needs to be selected for the conversion to
take effect.

The pipeline will be converted to PROSPER on line. Accessing the pipe Summary screen, the '
Edit' button will allow to access the input screens for the PROSPER on line feature, which are the
same as PROSPER.

GAP User Guide August, 2012


Examples Guide 740

For example, the equipment screens will have the equipment previously entered in the pipe
description:

1990-2012 Petroleum Experts Limited


741 GAP

To view the pipeline parameters on the 01/10/2013 select 'Results' from the system summary
screen and then select 'Prediction'.

GAP User Guide August, 2012


Examples Guide 742

Scroll to the right of the screen and select the 'Gradient' tab on the corresponding date.

1990-2012 Petroleum Experts Limited


743 GAP

This provides the detailed pipeline results on the 01/10/2013. The results show that the mean
slug frequency has reduced to between 23-24ft and the mean slug length is approximately 318ft.

The interpretation of the slug results is also provided in the PROSPER on line help however a
brief summary has been provided below.

When steady-state flow occurs in a pipeline, time-averaged mass flow rate at the pipeline inlet
and outlet are constant. If slug flow occurs through this pipeline, gas and liquid rates and
pressures are NOT constant as the liquid slugs and following gas bubbles will vary in velocity
and length.

Two slug calculations methods are applied in PROSPER. These are the Brill and RCS
Mechanistic methods. The Brill method is the most common approach and a more detailed
description of the parameters used to describe the slug characteristics can be found below.

The slug model is assuming that the slug period includes:


- A gas bubble included within a liquid film.
- A liquid slug containing small gas bubbles.

The association of the gas bubble and the liquid slug forms the slug period.

GAP User Guide August, 2012


Examples Guide 744

The following assumptions have been taken to develop the hydrodynamic model:
1. Small gas bubbles and liquid in the liquid slug travel at the same velocity.
2. The liquid film does not contain any gas bubbles.
3. Negligible liquid droplets exist in the gas bubble.

The hydrodynamic model is based on mass balance relationships for both the liquid and the gas
phase.

This will state for instance that the mass of liquid flowing out of the pipe section considered
during one specific period of time is equal to the sum of:
- the mass of liquid in the liquid slug, m1.
- the mass of liquid in the liquid film associated with the gas bubble, m2.
- the mass of liquid that is bypassed by the gas bubble following the liquid slug, m3.

mtotal m1 m2 m3

An equivalent mass balance principle will be applied to the gas phase flowing out of the pipe
section considered.

The slug properties are determined from empirical correlations relating the hold-up in different
sections of the slug period as well as the phase velocities. The output variables that can be
found in PROSPER are the following:

Mean Slug Length and 1/1000 Mean Slug Length


Mean Bubble Length and 1/1000 Mean Bubble Length
Slug Liquid Rate and Slug Gas Rate
Bubble Liquid Rate and Bubble Gas Rate

1990-2012 Petroleum Experts Limited


745 GAP

Mean Slug Frequency and 1/1000 Slug Frequency:


Slug Hold-up (HLS) and Equilibrium Hold-up (HLE):
Slug Surge Factor (Liquid) and Slug Surge Factor (Gas)
Bubble Surge Factor (Liquid) and Bubble Surge Factor (Gas)

These are standard characteristics parameters for slug analysis, and their description can be
found in the following references:

The Taitel-Dukler flow map that is used in PROSPER to assess the extent of the slugging
phenomenon in the system. This flow map is accessible for each calculation row by -+
86532clicking on the row number in the gradilll

A description of these slug calculation methods can be found for instance in the following
publications:vbn m,./

Beggs, H.D. and Brill, J.P. A study of two phase flow in inclined pipes Journal of Petroleum
technology, 13 (October 1973). p.607

Brill, J.P. and Beggs, H.D. Two phase flow in pipes Tulsa: University of Tulsa (1978)

Beggs, H.D. Production Optimization using Nodal Analysis OGCI publications (1991). p.88-
90.

Brown, K.E. - The technology of artificial lift methods- vol.4 - p83-85.

Crowley C.J. and Sam R.G. Investigation of Two-Phase Flow in Horizontal and Inclined Pipes
at Large Pipe Size and High Gas Density AGA report TN-399 (Feb. 1986).

Crowley C.J. and Rothe P.H. State of the Art Report on Multiphase Methods for Gas and Oil
Pipelines, Volume 2, Guide to Computerised Calculations Creare Inc. Report TN-409 vol.2
(1986).

Hill, T.J. and Wood D.G. A new approach to the prediction of slug frequency SPE 20629.
(1990). (i.e. RCS Mechanistical Slug Method).

GAP User Guide August, 2012


Examples Guide 746

3.6 Example 4-Associated Water Injection System

3.6.1 Objectives
Definition of the Problem
The engineers have come up with some development scenarios that were screened using the
integrated model of the full field containing Reservoir A and B (refer to Example 2 665 ). One
proposal was to provide pressure support in Reservoir A using water injection and take
advantage of the available sea water. From the integrated model the engineers were able to
estimate that the reservoir pressure in Reservoir A will fall below the bubble point after
approximately 1 year of production. The proposal is to maintain the pressure in Reservoir A at
3650psig and to to design an injection network that can provide the necessary water to meet
this target.

The objective of the study is to use GAP to determine how much water will be necessary to meet
the pressure target and then design a water injection system that can handle the calculated
water volumes.

Learning Topics

1990-2012 Petroleum Experts Limited


747 GAP

The objectives for this example are to learn how to:


Use GAP pressure support options to determine the amount of water required to
achieve a certain voidage target.
Use the existing injection network model to estimate the number of wells required.
Link the GAP production to the injection network model and run the prediction with the
two coupled models.

Executive Summary
The steps followed will be to:
1. Run a Prediction in the GAP production network using the 'Target Pressure' option to
estimate the amount of water required
2. Use the injection network model (initially with only one injector) to determine the
minimum number of water injection wells required to achieve the pressure support
target
3. Associate the production to the water injection model
4. Run the Prediction with the two coupled models

The initial files for this example and the completed model can be found in
the GAP archive file format in the following directory.
~\samples\GAP\Example 4 - Water Injection System
Extract 600 the archive files from the Initial Files folder.
3.6.2 Data Available
The data required to start the example are in the folder Example 4 - Water Injection System.

The are two archived files available:


The initial GAP model for the production network Oil Field.gar
The initial GAP model for the water injection network Water Injection System.gar

Extract both archives before starting the exercise.

Note that the completed archive of the model is called Oil Field with Water Injection System.
gar

3.6.3 Prediction to Determine Water Injection Requirement


Before we consider the design of the water injection system we must first determine the required
volumes that need to be injected into Reservoir A in order to maintain the pressure at 3650psig.
To accomplish the task, a prediction will be run with one of the voidage replacement options
available in GAP. These options can be found in the Prediction | Run Prediction section and
further details can be found in the User Guide 523 .

Starting from the production model, select Prediction | Run Prediction from the main GAP
screen. Run a prediction:

GAP User Guide August, 2012


Examples Guide 748

From the 01/12/2010 to the 01/12/2020.


Using 2 months time steps.
With the 'Target Pressure' for Reservoir A set to 3650 psig using 0% gas (which
means the injected fluid is 100% water)
With the optimisation mode set to 'Optimise with All Constraints'.

When running the prediction, GAP will automatically inject as much water into Reservoir A that is
required to maintain the pressure at 3650 psig.

At the end of the prediction various results can be viewed, in particular the results for Reservoir
A will be the focus as these will form the basis of our design. This can be achieved in various
ways, for example by double clicking on the tank and accessing the 'Result's section or
accessing the menu Prediction | Plot Tanks Prediction Results.

Plot the reservoir pressure and the average water injection together:

1990-2012 Petroleum Experts Limited


749 GAP

The liquid production profile is also useful for understanding the reservoir behaviour.

GAP User Guide August, 2012


Examples Guide 750

The reservoir pressure drops to 3650psig very quickly which suggests that water injection would
have to commence almost immediately. Initially quite a large volume of water is required to
maintain the pressure and then it declines from around 02/12/2013 as the liquid production from
the reservoir also begins to decline.

Note that the 'Target Pressure' feature assumes that the necessary water can be injected into
the tank instantly. It does not take into account how much water the reservoir can consume over
a given period time and therefore in reality the 'Target Pressure' may be reached at a later date
depending on the injectivity of the reservoir which is related to the thermal effects, the fluid
mobilities and petrophysical properties. To understand the impact of these effects in greater
detail and find the optimum water injection strategy, would require a numerical simulator like
REVEAL.

To summarise; the amount of water required to maintain the pressure constant during the field
life is between 9000-18000 STB/d.

Sizing the injection system for the highest rate would not make sense, as that volume is
theoretical and is based on achieving the target instantaneously.The larger rates are also only
required for a relatively short period of time anyway. On this basis if the water injection system is
designed to deliver less than the 18000 STB/d, but higher than 9000 STB/d, that means that
most likely the target can be achieved with much less water used.

In this case it will be assumed that the design water injection rate is 15000 STB/d and this

1990-2012 Petroleum Experts Limited


751 GAP

amount will be used to decide how many injection wells will be used in the injection system.

Save the prediction results by accessing the menu Prediction | Save Prediction Results As as
illustrated in the figure below:

Save the production model.


3.6.4 Calculating the Number of Water Injectors
The water is to be pumped from the platform along the sea bed in a flowline that runs parallel to
the producing line (refer to the Figure 746 for an illustration of the system). This main flowline has
already been entered into the water injection system.gap file along with one water injector that is
tied back to Manifold_A.

The PROSPER file associated with "Well1A_inj" has been constructed and documented in detail

GAP User Guide August, 2012


Examples Guide 752

in the PROSPER manual. Please refer to the PROSPER tutorials for more information on
modelling a water injector.

The available pressure at the injection manifold is 1000 psig which is located at the platform.
Upon inspection of the well system summary screen it is possible to verify, from the inflow
performance section, that the well has been set up to account for a pressure of 3650psig which
is the pressure target that has been set in Reservoir A.

This means that running a 'Solve Network' calculation will allow us to determine how much water
one injection well can inject when the target pressure is already achieved.

1990-2012 Petroleum Experts Limited


753 GAP

In a solve network calculation the tanks are not used. The network is
solved using the reservoir pressure and PVT properties that have
been entered in the IPR section of the well system summary

Run a 'Solve Network' calculation with optimisation for an injection manifold pressure of 1000
psig.

Checking the results, it is possible to see that the system can deliver a water rate of around
8395 STB/d:

As the design water rate is 15000 STB/d it is required to have at least 2 injection wells to
achieve the voidage replacement target.

Modify the model by adding a secondary water injector that is tied back to Manifold_A. To do
this simply copy and paste the existing well, Well1Ainj and label the new well as Well2Ainj. Then
create a link from the well head of the new injector to Manifold_A as shown in the figure below.

GAP User Guide August, 2012


Examples Guide 754

Assume that the wellhead is located 0.8km from Manifold_A and tied back with a pipeline that is
6 inches in diameter.

1990-2012 Petroleum Experts Limited


755 GAP

Running the 'Solve Network' again it is possible to verify that the system now can deliver around
16598 STB/d which is within our design water injection target.

GAP User Guide August, 2012


Examples Guide 756

Note that one well alone can deliver around 8395 STB/d, whilst 2 wells
producing together can achieve 16598 STB/d (approximately 8300 STB/d
each). This is because the increased rate results in a larger pressure drop
along the main shared pipeline which causes the wellhead pressure to
decrease and consequently reduces the volume of injection

When downtime is applied for injection wells, the Instantaneous rates are corrected
accordingly to obtain Average Rates that are reported at the Well and Tank level. The
injection manifold will not take well downtime into account and will still report the average
rates as the sum of the instantaneous rates from the wells.

This is because the solver for an injection system works from the injection manifold to
the tanks unlike the production system which is the other way round where the separator
can properly account for the total average rates from the producing wells.

However, note that the tanks will indeed have the average rates being injected into them
and the cummulative injection volumes will be updated accordingly. In essence, the
injection calculations will be correct. However, the injection manifold results should not
be referred to in terms of the average rates and if required, the well average rates can

1990-2012 Petroleum Experts Limited


757 GAP

be exported to Excel and summed up to obtain the total.

Save the model as water injection system final.gap.


3.6.5 Associate Production to Water Injection Network
At this point the proposed water injection model needs to be linked to the production model so
that a forecast can be run and we can evaluate how the design will perform over the course of
the field life.

To achieve this, perform the following steps:

Open up the Production System model.


Select Options | Method from the main GAP menu.
At the bottom of the screen, in the Associated Injection Models section tick the box for the
'Water Injection' and Browse for the previously saved water injection system final.gap
model.

GAP User Guide August, 2012


Examples Guide 758

Once 'OK' is clicked, the program will open the water injection system automatically along with
the production system
Arranging the windows by selecting the Windows | Tile Vertically from the main GAP menu will
allow the user to visualise both models together.

1990-2012 Petroleum Experts Limited


759 GAP

The two models are now linked through Reservoir A, as Reservoir A is the same MBAL model
in both models.

In order for the two models to be linked, it is paramount that Reservoir A in


the two models corresponds to the same MBAL file. If not, the program will
produce from one tank and inject in a different one. One way to troubleshoot
if this has not been done correctly is to check the number of tanks that
appear when the prediction is run. If three tanks appear (instead of two)
then we know that the tanks must be linked to different files.

Save the model naming the production model as Oil Field with Water Injection.gap.

GAP User Guide August, 2012


Examples Guide 760

3.6.6 Run Prediction With Coupled Models


The models are now ready to be run in a forecast.

Run a prediction with the same set up as before 747 :


From the 01/12/2010 to 01/12/2020.
Using 2 months time steps.
With the Target Pressure for Reservoir A set to 3650 psig using 0% gas (which means the
injected fluid is 100% water).
with the optimisation mode set to 'Optimise with All Constraints'.

It is important to understand the impact of including the injection system on the voidage
replacement options in GAP. If no injection system is included, the voidage replacement
options make use of a virtual source of water/gas for injection, which means the target will
always be achieved. This was shown at the start of the example before the water injection
system was linked to the production system.
If an injection system is included in the model, as it is now, the voidage replacement options
become constraints for the injection system, which means that the achievement of the target is
subordinate to the physics of the injection system. This means that if the injection system cannot
physically deliver the amount of water required then the target will not be achieved.

When running the two coupled models, the program will:

1990-2012 Petroleum Experts Limited


761 GAP

1. Solve the production system first and determine the production.


2. From the production, the voidage is calculated and then translated into an amount of water
required for injection.
3. The amount of water to inject is then passed to the injection system as a constraint and the
injection system is solved and the cycle restarts

The figure below shows the model while running. In the system area the program will show the
sequence of calculations switching from production to water injection system:

Once the calculation is finished, save the prediction results again:

GAP User Guide August, 2012


Examples Guide 762

To illustrate how the 'Target Pressure' option is working during the prediction reload a snapshot
of the prediction (e.g. 01/02/2012). This can be done by selecting Prediction | Reload
Prediction Snapshot from the main GAP menu and selecting any of the available snapshots for
each date during the prediction.

1990-2012 Petroleum Experts Limited


763 GAP

Upon inspection of the water injection system it will be observed that there is a constraint being
applied to Reservoir A. Accessing the system summary screen, by double clicking on the tank
icon, allows the engineer to view the calculated liquid constraint for that time step.

The GAP optimiser will then choke back on the water injectors in order to meet this constraint
which will ensure that the pressure target is achieved.

GAP User Guide August, 2012


Examples Guide 764

Whenever there is an associated injection system in a GAP model then the results are retrieved
slightly differently. For example:
Any result concerning the production can be accessed by making the production network
model screen active.
Similarly,any result concerning the injection can be accessed by making the injection network
model screen active.

Checking the results for the injection system (click anywhere in the injection system screen to
make this screen active), it is possible to view the results for Reservoir A in terms of reservoir
pressure and average water injections:

The target pressure is reached at the end of 2011 and then goes below the target by about 15
psig in around 02/12/2013. The target is then reached later in 01/04/2015 and is maintained for
the duration of the forecast. These results differ from the original Target Pressure method (see
above 749 , where an infinite source of water was used), as now it is dependent on the physics of
the injection network as in reality. The reason for the target pressure not being reached is
because the required water injection exceeds the capacity of the injection system. In order to
increase the capacity of the injection system it is possible to either increase the tubing
diameters of the water injectors or alternatively drill another well. This exercise is left to the user.

Save the model.

1990-2012 Petroleum Experts Limited


765 GAP

3.7 Example 5 - Smart Well Modelling in GAP

3.7.1 Objectives
Definition of the Problem
During drilling, into Reservoir B, it was confirmed that there was a productive gas layer located
at a shallower depth in the formation. The completion engineers have been proposing using this
shallow gas layer as a means of providing additional lift through multi-layered completions
coupled with "smart well" technology.

It has been verified that it is possible to perforate both the gas and oil layers in Reservoir B and
install downhole controllable chokes (inflow control valves) that can regulate the flow of gas into
the wells.

It is common knowledge that flowing more gas in a well along with oil decreases the pressure
losses due gravity, but increases the pressure losses due friction as result of the increased
velocities. This is the principle of natural gas lift.

GAP User Guide August, 2012


Examples Guide 766

The question that is being proposed from management is, what is the optimum flow of gas that
would maximize the amount of oil from the system if the gas layers were scheduled to be brought
online once the water cut of the wells in Reservoir B exceeds 20%?

Learning Topics
The IPM Suite has been developed over the years to be able to handle multi-layer situations in
the best possible way. This enables the engineer to model and optimise very complicated
downhole completions, like "intelligent" (or "smart") completions.
The objectives for this example are to learn in more detail how to:
Build a model for a multilayer well completion.
Optimise the oil production by regulating the amount of gas flowing into the well.

Executive Summary
The steps followed will be to:
1. Build the GAP network
- Setup the system in GAP
- Add an inflow model and a well model
- Convert the well to outflow only
- Link all the elements of the system
- Set the controls for the gas layer
2. Write a script that will allow the gas layers to be brought online when the water cut
exceeds 15%
2. Run a forecast without optimization on the gas
3. Run a forecast with optimization on the gas

The files for this example and the final model can be found in the GAP archive file
format in the following directory.
~\samples\GAP\Example 5 - Smart Well\Oil Field Smart Well.gar
Extract 600 the archive file in the Initial Files folder to an appropriate directory
3.7.2 Data Available
The data required to start the example is in the folder Example 5 - Smart Well.

In this folder there will be a GAP archive called Oil Field Smart Wells.gar. The folder will also
contain separate PROSPER files that are listed in Table 1 below.

Description of the wells

The file names corresponding to each well are shown in the table below. These files can be
linked to each respective inflow via the system summary screen so GAP can use the files to
automatically pass the PROSPER IPR and PVT data directly to the inflow IPR section via the
Generate | Generate Well IPR's with PROSPER option.

1990-2012 Petroleum Experts Limited


767 GAP

Well Layer 1 Layer 2 Outflow

Well1B Well1B_Gas Layer.OUT Well1B_Oil Layer.OUT Well1B_Outflow.OUT


Well2B Well2B_Gas Layer.OUT Well2B_Oil Layer.OUT Well2B_Outflow.OUT
Well3B Well3B_Gas Layer.OUT Well3B_Oil Layer.OUT Well3B_Outflow.OUT
Table 1 - PROSPER files

Description of the layers

Layer 1 Layer 2
Fluid Type Gas Oil
IPR Model Petroleum Experts Darcy
Table 2 - Layers parameters

Extract the GAP archive to start the exercise.

Note that the completed archive of the model is called Oil Field Smart Wells Final.gar

3.7.3 Build the GAP Network


The steps to set up a GAP model can be found in previous examples 605 , and it is recommended
to review this if engineer is not already familiar with the process.

The procedure below goes straight to building the multilayer well models in the GAP model.

The well schematic presented in the previous section 765 can be translated into a simpler form as
shown below:

GAP User Guide August, 2012


Examples Guide 768

The equivalent GAP topology is also included to help illustrate what points of the GAP model
correspond to which part of the real system.

To model the well above, one can decompose the problem into several key elements. For
example:

The two reservoir layers of the well can be described using IPR elements (Inflow
elements).
The completion (in this case, tubing) section EC and BC can be described using pipe
elements.
The completion corresponding to the section AB can be described by means of a well
(outflow only) element which will account the pressure drop from the top of the first layer
up to the wellhead.

Each well associated to Reservoir B will be assumed to have been completed as


shown in the diagram above.

The sketch illustrated below will be used as the reference.

1990-2012 Petroleum Experts Limited


769 GAP

3.7.3.1 Draw the GAP Network


Extract the GAP archive Oil Field Smart Well.gar

GAP User Guide August, 2012


Examples Guide 770

The GAP file will include all the well heads and the flowlines from Reservoir B, along with a gas
tank labelled 'Gas Layer' which represents the completed gas layer in the field.

To model the smart wells the well will be split so that the outflow is captured by the well and the
oil and gas layers are modeled by separate inflows (Note that in the previous examples both the
inflow and the outflow were modelled in the well).

To build the wells begin by placing a well icon for each well on the white-board screen as shown
below.

1990-2012 Petroleum Experts Limited


771 GAP

To switch the wells to outflow only, double-click on the well to activate the the system summary
screen and then modify the well model to 'Outflow Only-VLP'.

GAP User Guide August, 2012


Examples Guide 772

To add the inflows, select the inflow option from the main menu and paste it on the white-
board screen. This will display an icon shape element, which represents an IPR. A single inflow
or IPR will be required to represent the gas layer and the oil layer as shown below.

1990-2012 Petroleum Experts Limited


773 GAP

The next step is to add the Joints so that the pipelines, which will be used to model the wellbore,
can then be added into the model.

GAP User Guide August, 2012


Examples Guide 774

Once connected the system should look like the following:

1990-2012 Petroleum Experts Limited


775 GAP

It is now possible to fill all the data in the different parts of the model.

To keep things simple we assume the well to be completed vertically, so that the TVD=MD, with
a 6.4 ID casing string. This information can be used to enter the information for the pipe section
between the two layers.
3.7.3.2 Define the IPR Elements
For each layer associate the corresponding PROSPER file as per Table 1 766 , for example:

GAP User Guide August, 2012


Examples Guide 776

In the IPR section select the layer fluid type and the IPR model:

1990-2012 Petroleum Experts Limited


777 GAP

Repeat this for the rest of the layers and associate them with their corresponding PROSPER
files.

Follow the same steps as seen in previous examples 617 to generate the layer IPRs.

NOTE: the alternative to having an already prepared PROSPER model is to


enter the data manually in the IPR section

At the end, looking at the well IPR section, it is possible to verify that the data have been
entered.

GAP User Guide August, 2012


Examples Guide 778

3.7.3.3 Define the 'Completion' Pipes


The wellbore will be modelled using pipeline elements. There will be two segments of pipe
used, the first will model the pressure drop in the producing gas layer and the second will model
the pressure drop in the oil layer and the unproductive zone as shown in the Figure 768 .

To enter the description of the pipeline that models the pressure drop in the gas layer (i.e. the
pipeline that is linked directly to the well) double click on the pipeline and enter the following
description:

1990-2012 Petroleum Experts Limited


779 GAP

Select the Petroleum Experts 2 flow correlation and in the 'Environment' section enter a
temperature of 250 deg F. Similarly to enter the description of the other pipeline, double click
on the pipe element between the oil and gas inflows and enter the following data.

GAP User Guide August, 2012


Examples Guide 780

Lastly, modify the temperature in the environment section to 250 degF.


3.7.3.4 Define the Outflow
The next step is to define the outflows.

The Figure 768 shows that the well needs to capture the pressure drop from the well head down to
the top of the producing gas layer. Therefore, in order to generate the correct VLP curves a
PROSPER file has to be built that models the completion down to the top of the gas layer. This
has already been done in the ~Outflow.out PROSPER files that have been provided in the 'Initial
Files' folder.

The steps that will be followed are:


Associate the PROSPER file to each well.
Generate the VLP curves for GAP using the PROSPER file.

Double click on the well outflow icon to access the well summary screen and associate the
Outflow.OUT PROSPER files to each well.

1990-2012 Petroleum Experts Limited


781 GAP

Next, generate the VLP curves as shown in the previous examples 681 .

The values to use for the sensitivity parameters are provided below:

GAP User Guide August, 2012


Examples Guide 782

3.7.3.5 Write the Prediction Script


The next step is to write the prediction script so that the gas layer can be brought online once the
water cut in the wells exceeds 20%.

The first step is to mask the gas layers using the mask feature from the main GAP menu.

1990-2012 Petroleum Experts Limited


783 GAP

The masking tool allows the element to be brought online at some point during the prediction.
When an element is masked it is effectively ignored from the system until scheduled to be
included later.

To enter script select Prediction | Edit Prediction Script from the main GAP menu or alternatively
select the icon from the main tool bar.

The scripting is carried out through OpenServer and the following logic will be used to activate
the gas layers during the prediction.

GAP User Guide August, 2012


Examples Guide 784

This script will be executed at the end of every prediction step (PredStepEpilog).

The script can be imported as a file which in provided in the archive located in the Initial Files
folder. To import the script select Prediction | Import Prediction Script... and then locate the file
Oil Field_Smart Wells.gapscr.

1990-2012 Petroleum Experts Limited


785 GAP

Note that in order to obtain an OpenServer statement the user can use CTRL+Right Click over
any variable and the OpenServer string along with the current value will be displayed. For
example, the OpenServer variable for the well water cut is displayed below.

The OpenServer commands are also documented in detail in the OpenServer manual.

GAP User Guide August, 2012


Examples Guide 786

The GAP model has now been built. Save the file as Oil field_Smart Wells_Final.gap.

3.7.4 Run the Prediction Without Optimisation


The model is now ready to be run in a forecast.

Run a prediction with the same set up as before 708 :


From the 01/12/2010 to 01/12/2020
Using 2 months time steps.
With the Target Pressure for Reservoir A set to 3650 psig using 0% gas (which means the
injected fluid is 100% water).
with the Optimisation mode set to Optimise with All Constraints.

The 'Script' tab should become blue once it starts getting called during the prediction.

Once the calculation is finished, save the prediction results by selecting | Prediction | Save
Prediction Run Results As...

1990-2012 Petroleum Experts Limited


787 GAP

3.7.5 Run the Prediction With Optimisation


To run a forecast with optimisation on the gas layers, the gas layers must be made controllable.
To do this either right click on the gas inflow and select 'Controllable' (Inflow choke can be
changed by optimizer) or modify the dP Control to 'Calculated' in the System Summary screen.

GAP User Guide August, 2012


Examples Guide 788

The gas inflows should be centered inside a solid red circle to indicate that they are
controllable.

Once the calculation is finished, save the prediction results.

1990-2012 Petroleum Experts Limited


789 GAP

To compare the results of the predictions select Prediction | Plot Nodes Prediction Results and
select 'Well' from the Equipment Type and then 'System totals'.

GAP User Guide August, 2012


Examples Guide 790

Comparing the cumulative cil production from each case shows that by controlling the amount of
gas from the layers it is possible to improve the overall oil production by almost 1 MMSTB.

Comparing the gas rate of the gas inflows shows that, when there is no downhole choke (i.e. the
layers are not controlled), the excess gas injected into the system results in additional frictional

1990-2012 Petroleum Experts Limited


791 GAP

losses in the wells.

The GAP optimiser is able to detect this and by choking back on the amount of gas that is
allowed into the system the oil production is maximised as GAP operates the field at its full
potential.

GAP User Guide August, 2012


Examples Guide 792

Save the model as Oil Field Smart Well_Final.gap.

1990-2012 Petroleum Experts Limited


793 GAP

3.8 Example 6 - Electrical Submersible Pump

3.8.1 Objectives
Definition of the Problem

Based on the previous development scenarios put forward for Reservoir A and B the engineers
wish to evaluate the impact of installing artificial lift in the system to see if there is any
appreciable gain in the production. The engineers are proposing introducing artificial lift into the
field at some point during the field life (01/02/2013) and at the same time they are considering
upgrading the capacity of the separator facilities to 30,000 STB/D. The first artificial lift method
to be tested is electrical submersible pumps (ESPs) which will be installed in each of the wells in
Reservoir A and B.

The objective is to investigate the impact on oil production as result of the proposed workovers.
Also, the production engineers would like to understand how the field should be managed so
the total power consumption of all of the ESPs does not exceed 125hp.

Learning Topics

GAP User Guide August, 2012


Examples Guide 794

The objectives for this example are to learn how to :


Build a GAP model for an ESP lifted system.
Introduce scheduling into a GAP model.
Run optimisation using ESP frequency.
Honour constraints on maximum power.

Executive Summary

After building the model for this production network in GAP, a forecast will be run with the ESP's
operating at a fixed frequency. A second run will then be performed allowing GAP to optimise
on the allocation of the ESPs power in order to maximise oil production.

The steps followed will be:


1. Build the GAP network.
-Introduce ESP wells into the system
-Apply the scheduling in the system to bring the ESP wells online
-Generate well IPRs in GAP using PROSPER
-Generate well VLPs in GAP using PROSPER
2. Run a forecast for a fixed operating frequency.
3. Apply system constraints and run a forecast for variable operating frequency.

The initial files for this example and the final model can be found in the GAP
archive file format in the following directory.
~\samples\GAP\Example 6 - ESP Field
Extract 600 the archive file in the Initial Files folder to an appropriate directory

3.8.2 Data Available


Description of the wells

Well Name Well type PROSPER well model Lift curve file ESP Operating
Frequency (Hz)

Well1A_ESP ESP WELL1A_ESP.OUT WELL1A_ESP.vlp 55


Well2A_ESP ESP WELL2A_ESP.OUT WELL2A_ESP.vlp 55
Well3A_ESP ESP WELL3A_ESP.OUT WELL3A_ESP.vlp 55
Well1B_ESP ESP WELL1B_ESP.OUT WELL1B_ESP.vlp 55
Well2B_ESP ESP WELL2B_ESP.OUT WELL2B_ESP.vlp 55
Well3B_ESP ESP WELL3B_ESP.OUT WELL3B_ESP.vlp 55
Table 1

1990-2012 Petroleum Experts Limited


795 GAP

Extract the archive file Oil Field.gar to start the exercise.

3.8.3 Build the GAP Model


This section can be used as a general step-by-step procedure to build ESP wells into a GAP
model.
The sketch illustrated below will be used as the reference.

3.8.3.1 Draw the GAP network


Extract the GAP archive Oil Field.gar

GAP User Guide August, 2012


Examples Guide 796

The next step is to place a well adjacent to each naturally producing oil well as we intend to
convert these wells to ESP wells. The reason for creating an additional well in the model is
explained in the scheduling section 803 .

1990-2012 Petroleum Experts Limited


797 GAP

Link each well to its corresponding well head and reservoir as shown in the figure below.

GAP User Guide August, 2012


Examples Guide 798

3.8.3.2 Define the Wells


As it can be seen, when a well is defined in GAP, it is by default set up as an oil producer (no lift)
well. The description therefore has to be changed. In this case it will be defined as an Oil
Producer (ESP lifted) well.

In order to modify the well description, double-click on the well icon to activate the system
summary screen.

Select the type of well and choose the option Oil producer (ESP lifted).

PLEASE MAKE SURE THAT THE WELL TYPE IS DEFINED AS "Oil


Producer (ESP Lifted)"

The PROSPER files are included in the archive file. The PROSPER file associated with
"Well1A_ESP" has been constructed and documented in detail in the PROSPER manual.
Please refer to the PROSPER tutorials for more information on well modeling with artificial lifted
wells.

Associate the corresponding PROSPER files with each well as shown in Table 1 794 .

1990-2012 Petroleum Experts Limited


799 GAP

Click | OK to return to the main screen.

About some useful tips


The way that the equipment list is visualized can be changed by clicking on the equipment list
area with the right-hand side mouse button.
3.8.3.3 Generate Well IPRs
After all of the wells have been created and the associated PROSPER well models selected, the
IPRs can be generated in GAP in a batch mode.

From the main GAP menu select Generate | Generate Well IPRs from PROSPER.

Then select all of the ESP wells and then select Generate.

By double-clicking on any of the wells and selecting the IPR tab, the IPR input data can be
verified as shown in the following screen shot:

GAP User Guide August, 2012


Examples Guide 800

The next step is to define the relative permeability curves for each well. In this case the tank
relative permeability curves will be used and this is done by selecting the 'More' tab and
modifying the Fractional Flow Model to 'From Tank Model'. Ensure that this step has been
carried out for each well.

Click on |OK to get back to the GAP main screen.


3.8.3.4 Generate Well VLPs
To import the VLP curves in GAP (ref. VLP generation 466 ) the user can either:

Access the VLP section in the well input area and Browse for the VLP file that has been pre-
generated for this example (this is the fastest approach as no calculations are necessary
however in practice the VLPs will always need to be generated), or

1990-2012 Petroleum Experts Limited


801 GAP

Generate the VLPs by accessing the menu Generate | Generate Well VLPs with PROSPER.
In this case a range of values need to be entered and as the wells are ESP wells there is an
additionally variable (the Operating Frequency) that must be included.

When VLPs are generated for artificial wells there are a factor of 10 more
calculations to be performed (10,000 VLPs will be generated instead of 1,000) in
comparison to naturally flowing wells. Therefore the time taken to generate
VLPs will be considerably greater.

Please refer to the VLP generation 466 for guidelines on the ranges to use.

As the second method has been widely demonstrated in previous examples 681 , and the VLP
curves have already been generated, we will adopt the first approach.

To import the VLPs, access the VLP section of the Well System Summary screen and 'Browse'
for the corresponding .vlp file according to Table 1 843 :

GAP User Guide August, 2012


Examples Guide 802

If instead of the .vlp file the .tpd file (the file format used when VLPs are exported
manually from PROSPER) has been provided so the Import button can be used
to import the file.

Select 'Inspect' and then 'Plot' to verify the quality of the curves.

The VLP curves should always be smooth and continuous. Discontinuous VLP curves are not
representative of reality and lead to poor quality derivatives which can create problems for the
GAP solver.

1990-2012 Petroleum Experts Limited


803 GAP

If the VLPs appear poor then it could either be the multiphase flow correlation which has been
selected or it may be the PROSPER file that needs to be reviewed to understand what may be
causing the effect.

3.8.3.5 Set the Scheduling


The objective is to install ESPs in the existing wells at some date in the future (01/02/2013). To
capture this in the GAP model we have introduced two wells, a naturally lifted oil producer and a
separate ESP lifted well. In order for the two wells to simulate the effect of one well being
worked over and becoming an ESP lifted well we will take advantage of the scheduling feature
in GAP.

To do this, the naturally lifted well will be scheduled to go off on the 01/02/2013 whereas the
ESP lifted well, which is turned off as the other well is producing, will be scheduled to come on.

The scheduling will also be used to simulate the effect of the separator capacity increasing to
30,000STB/d. To do this we will modify the maximum liquid constraint at the separator from
20,000STB/d to 30,000 STB/d.

The steps that will carried out are:


1. Set up the scheduling for the wells.
2. Set up the scheduling for the separator.

Double-click on one of the ESP wells to activate the system summary screen and then select
'Schedule'.

Enter the date for when the well is to be brought online and in the 'Event Type' select 'Start Well'.
Repeat this for all of the other ESP wells.

The next step is to modify the scheduling of the naturally flowing wells. Using the same workflow,

GAP User Guide August, 2012


Examples Guide 804

modify the schedule section so that the well is stopped on the 01/02/2013.

Lastly, the separator constraint should be modified to 30,000 STB/d in the schedule section of
the Separator System Summary screen.

Whenever scheduling has been applied to an element in the GAP system a small clock will
appear at the bottom right hand corner of the icon.

The GAP model has now been built. Save the file as Oil Field ESP.gap.

3.8.4 Fixed Operating Frequency


To calculate the production for the field assuming that the operating frequency of the pumps is
fixed, the following two steps will be carried out:
Set well controls to fix the pump frequency

1990-2012 Petroleum Experts Limited


805 GAP

Run a forecast with optimisation

3.8.4.1 Run Forecast with Fixed Pump Frequency


To set the well control of the ESP wells, double-click on the one of the ESP wells to activate the
system summary screen.

Select the 'Pump Control' tab and then set the dP Control to 'None' and the 'Control Mode' to a
'Fixed value' of 55Hz. This will ensure that the pumps are operating at a fixed frequency during
the forecast and that the well head choke is fully open.

Repeat this procedure for all of the ESP wells in the network.

The model is now ready to be run in a forecast.

Run a prediction with the same set up as before 708 :


From the 01/12/2010 to the 01/12/2020
Using 2 months time steps.
With the 'Target Pressure' for Reservoir A set to 3650 psig using 0% gas (which means the
injected fluid is 100% water).
With the optimisation mode set to Optimise with All Constraints.
With the snapshots saved at each prediction step (Refer to Question 4 713 in Example 2 for
instructions for how to set up and use snapshots).

In this case the naturally lifted oil wells will still be controllable by GAP however when the ESP
wells come online they will operate at a fixed operating frequency of 55Hz with 0psig dP choke
on the wells.

GAP User Guide August, 2012


Examples Guide 806

Once the run has been completed, there are two ways to verify if the scheduling has been set up
correctly.

The first approach is to analyse the snapshots of the prediction on the 01/02/2013 and the
previous snapshot. The snapshot below shows the state of the system on 01/12/2012 (the
snapshot before the 01/02/2013).

The ESP wells remain masked and the naturally flowing wells are all producing. The following
snapshot shows the network on 01/02/2013.

1990-2012 Petroleum Experts Limited


807 GAP

At this point all of the naturally flowing wells have been masked and the ESP wells have been
brought online.

The other way to verify that the scheduling has been carried out correctly is to inspect the results.
If we inspect the well liquid rates and the system totals by selecting Prediction | Plot node
prediction results we can observe the ESP wells coming online on the 01/02/2013.

GAP User Guide August, 2012


Examples Guide 808

Additionally, we can see the impact of the separator constraint. The system can produce above
20,000STB/d as soon as the facilities are upgraded on the 01/02/2013.

Plotting the cumulative oil production shows us that the installation of the ESPs in the wells
increases overall production by approximately 6% in comparison to the case without artificial lift.
727

1990-2012 Petroleum Experts Limited


809 GAP

Lastly, we can plot the overall power consumption of the system.

GAP User Guide August, 2012


Examples Guide 810

3.8.5 Variable Operating Frequency


The production system is constrained by the total power (125hp) that can be allocated to the
ESP's. The objective is to understand how the power can be allocated amongst the different
ESP's so that the oil production is maximised and we do not exceed the power constraint that
we have in the field.

To achieve this we can use the optimiser in GAP to calculate what frequency each pump should
be operating under throughout the entire prediction.

The steps that will be carried out in this example are:


Set well controls (in this case, on pump frequency).
Set a maximum power constraint at the system level.
Run a forecast with optimisation.

3.8.5.1 Set Well Controls


To set the well control of the ESP wells, double-click on the Well1A_ESP well to activate the
system summary screen.

1990-2012 Petroleum Experts Limited


811 GAP

Select the 'Control' tab and then set the dP Control to 'None' and the Control Model to a
'Calculated'. These options will ensure that the well head choke is always fully open and the only
control variable is operating frequency of the pump. Select the 'Constraints' tab from the main
summary screen and then select 'Pump' to enter the operating limits of the pump if they have
been provided by the manufacturer.

GAP User Guide August, 2012


Examples Guide 812

This will allow GAP to change the pump frequency between the operating limits of the pump (i.e.
between the upthrust/downthrust limits at each frequency) in order to maximise the production
from the system.

Note that the minimum/maximum inlet rate that the pump can operate at (at a particular
frequency) is dependent upon the physical pump and this information should be available from
the pump manufacturer. In the PROSPER file it is possible to visualise the performance curve of
the pump as these are included in the ESP databases that are provided.

The pump plot for the Centrilift GC10000, which is used in the well1A is shown below.

Repeat this procedure for all of the ESP wells in the system.

The resultant network should look the figure 795 shown at the start of the section.

1990-2012 Petroleum Experts Limited


813 GAP

3.8.5.2 Set System Constraint on Maximum Power


In order to set the maximum power constraint select Constraint | System Constraints from the
main GAP menu and enter a maximum power of 125hp.

3.8.5.3 Run Forecast with Variable Operating Frequency


The model is now ready to be run in a forecast.

Run a prediction with the same setup as before 708 :

GAP User Guide August, 2012


Examples Guide 814

From the 01/12/2010 to the 01/12/2020.


Using 2 months time steps.
With the 'Target Pressure' for Reservoir A set to 3650 psig using 0% gas (which means the
injected fluid is 100% water).
With the optimisation mode set to 'Optimise with All Constraints'.
With the snapshots saved at each prediction step (Refer to Question 4 713 in Example 2 for
instructions for how to set up and use snapshots).

In this case the naturally lifted oil wells will be controllable by GAP, and when the ESP wells
come online the GAP optimiser will control the frequency at which they operate at so that the
power constraint is honoured and the oil production is maximised.

The plot below shows the total power consumed by the field along with the liquid production over
the course of the forecast.

The results show that the power constraint is honoured throughout the prediction and that on
01/02/2013, when the separator capacity is increased, we observe a spike in the production
indicating that we benefit from the facilities upgrade on the proposed date as we see more
production. Whether or not we decide to proceed with the installation would have to be justified
economically however the calculated rates from the GAP model will drive the economic analysis.

We can also inspect how the pump frequency evolves with time for any given well. In this case
the amount of available power to drive the ESP's is limited to 125hp and is the constraint on the

1990-2012 Petroleum Experts Limited


815 GAP

system. GAP honours this constraint by regulating the pump frequencies throughout the forecast
so that the the maximum power consumed by the ESP's never exceeds 125hp and the oil
production is always maximised.

In summary, we have shown that we can use GAP to determine what speed to run the ESP's at
so that we maximise our oil production with the power (in this case 125hp) that is available.

GAP User Guide August, 2012


Examples Guide 816

3.9 Example 7 - Gas Lift Optimisation

3.9.1 Objectives
Definition of the Problem

Based on the previous development scenarios put forward for Reservoir A and B the engineers
wish to evaluate the impact of installing artificial lift in the system to see if there is any
appreciable gain in the production. The engineers are proposing introducing artificial lift into the
field at some point during the field life (01/02/2013) and at the same time they are considering
upgrading the capacity of the separator facilities to 30,000 STB/D. The first artificial lift method
to be tested was ESP's (refer to previous example 793 ) however now the engineers want to
evaluate installing gas lift in all of the wells in the field.

The objective is to investigate the impact on oil production as result of the proposed workovers.
Also, the production engineers would like to understand how the field should be managed so
the total amount of gas lift gas available for the whole system does not exceed 10 MMscf/day.

Learning topics
The objectives of this example are to learn how to:
Build a GAP model for a gas lifted system.

1990-2012 Petroleum Experts Limited


817 GAP

Introduce scheduling into a GAP model.


Run a forecast with a fixed gas lift allocation.
Run a forecast with optimisation on the gas lift allocation.

Executive Summary
After building the model for this production network in GAP, a forecast will be run with a user-
specified gas lift gas injection rate for all of the gas lifted wells. A second run will then be
performed allowing GAP to optimise on the allocation of the gas lift gas amongst the wells in
order to maximise oil production.

The steps followed will be to:


1. Build the GAP network
- Draw the GAP network
- Define wells in GAP
- Generate well IPRs in GAP using PROSPER
- Generate well VLPs in GAP using PROSPER
2. Set the given gas lift gas allocation and run the a forecast.
3. Set the gas lift allocation to be controlled by GAP and run a forecast
4. Compare the results

The initial files for this example and the final model can be found in the GAP
archive file format in the following directory.
~\samples\GAP\Example 7 - GL Field
Extract 600 the archive file in the Initial Files folder to an appropriate directory

Click here 841 to include a gas lift injection network

3.9.2 Data Available


Description of the wells

Well Name Well type PROSPER well model Lift curve file Gas Lift Gas
(MMscf/D)

Well1A_GL Gas Lifted WELL1A_GL.OUT WELL1A_GL.vlp 1


Well2A_GL Gas Lifted WELL2A_GL.OUT WELL2A_GL.vlp 1
Well3A_GL Gas Lifted WELL3A_GL.OUT WELL3A_GL.vlp 1
Well1B_GL Gas Lifted WELL1B_GL.OUT WELL1B_GL.vlp 2
Well2B_GL Gas Lifted WELL2B_GL.OUT WELL2B_GL.vlp 2

GAP User Guide August, 2012


Examples Guide 818

Well3B_GL Gas Lifted WELL3B_GL.OUT WELL3B_GL.vlp 3


Table 1

Extract the archive file Oil Field.gar to start the exercise.

3.9.3 Build the GAP Model


This section can be used as a general step-by-step procedure to build Gas Lifted wells into a
GAP model. The sketch illustrated below will be used as the reference.

3.9.3.1 Draw the GAP Network


Extract the GAP archive Oil Field.gar

1990-2012 Petroleum Experts Limited


819 GAP

The next step is to place a well adjacent to each natural producing oil well as we intend to
convert these wells to gas lifted wells. The reason for creating an additional well in the model is
explained in the scheduling section 826 .

GAP User Guide August, 2012


Examples Guide 820

Link each well to its corresponding well head and reservoir as shown in the figure below.

1990-2012 Petroleum Experts Limited


821 GAP

3.9.3.2 Define the Wells


As it can be seen, when a well is defined in GAP, it is by default set up as an oil producer (no lift)
well. The description therefore has to be changed. In this case it will be defined as an Oil
Producer (Gas lifted) well.

In order to modify the well description, double-click on the well icon to activate the system
summary screen.

Select the type of well and choose the option Oil producer (Gas lifted).

PLEASE MAKE SURE THAT THE WELL TYPE IS DEFINED AS "Oil


Producer (Gas Lifted)"

The PROSPER files are included in the folder. The PROSPER file associated with "Well1A_GL"
has been constructed and documented in detail in the PROSPER manual. Please refer to the
PROSPER tutorials for more information on well modeling with artificial lifted wells.

Associate the corresponding PROSPER files with each well as shown in Table 1 817 .

GAP User Guide August, 2012


Examples Guide 822

Click | OK to return to the main screen.

About some useful tips


The way that the equipment list is visualised can be changed by clicking on the equipment list
area with the right-hand side mouse button.
3.9.3.3 Generate Well IPRs
Once all of the wells have been created and the associated PROSPER well models selected, the
IPRs can be generated in GAP in a batch mode.

From the main GAP menu select Generate | Generate Well IPRs from PROSPER.

Then select all of the 'GL' wells and then select 'Generate.'

By double-clicking on any of the wells and selecting the IPR tab, the IPR input data can be
verified as shown in the following screen shot:

1990-2012 Petroleum Experts Limited


823 GAP

The next step is to define the relative permeability curves for the well. In this case the tank
relative permeability curves will be used and this is done by selecting the 'More' tab and
modifying the Fractional Flow Model to 'From Tank Model'

Click on |OK to get back to the GAP main screen.


3.9.3.4 Generate Well VLPs
To import the VLP curves in GAP (ref. VLP generation 466 ) the user can either:

Access the VLP section in the well input area and 'Browse' for the VLP file that has been pre-
generated for this example (this is the fastest approach as no calculations are necessary
however in practice the VLPs will always need to be generated), or

Generate the VLPs by accessing the menu Generate | Generate Well VLPs with PROSPER.

GAP User Guide August, 2012


Examples Guide 824

In this case a range of values need to be entered and as the wells are gas lifted wells then
there is an additionally variable (the Injected Gas Liquid Ratio) that must be included.

When VLPs are generated for artificial wells there are a factor of 10 more
calculations to be performed (10,000 VLPs will be generated instead of 1,000) in
comparison to naturally flowing wells. Therefore the time taken to generate
VLPs will be considerably greater.

Please refer to the VLP generation 466 for guidelines on the ranges to use for GLR injected.

As the second method has been widely demonstrated in previous examples 681 , and the VLP
curves have already been generated, we will adopt the first approach.

To import the VLPs, access the VLP section of the Well System Summary screen and 'Browse'
for the corresponding .vlp file according to Table 1 843 :

1990-2012 Petroleum Experts Limited


825 GAP

If instead of the .vlp file the .tpd file (the file format used when VLPs are exported
manually from PROSPER) has been provided, then the Import button can be
used to import the file.

Select Inspect and then Plot to verify the quality of the curves.

GAP User Guide August, 2012


Examples Guide 826

3.9.3.5 Set the Scheduling


The objective is to install gas lift into the existing wells at some date in the future (01/02/2013).
To capture this in the GAP model we have introduced two wells, a naturally lifted oil producer
and a separate gas lifted lifted well. In order for the two wells to simulate the effect of one well
being worked over and becoming a gas lifted well we will take advantage of the scheduling
feature in GAP.

To do this, the naturally lifted well will be scheduled to go off on the 01/02/2013 where as the gas
lifted well, which is turned off as the other well is producing, will be scheduled to come on.
The scheduling will also be used to simulate the effect of the separator capacity increasing to
30,000STB/d. To do this we will modify the maximum liquid constraint at the separator from
20,000STB/d to 30,000STB/d.

The steps that will carried out are:


1. Set up the scheduling for the wells.
2. Set up the scheduling for the separator.

Double-click on one of the gas lifted wells to activate the System Summary screen and then
select 'Schedule'.

Enter the date for when the well is to be brought online and in the Event Type select 'Start Well'.
Repeat this for all of the other gas lifted wells.

The next step is to modify the scheduling of the naturally flowing wells. Using the same workflow,
modify the schedule section so that the well is stopped on the 01/02/2013.

1990-2012 Petroleum Experts Limited


827 GAP

Lastly, the separator constraint should be modified to 30,000 STB/d in the schedule section of
the separator system summary screen.

Whenever scheduling has been applied to an element in the GAP system a small clock will
appear at the bottom right hand corner of the icon.

The GAP model has now been built. Save the file as Oil field GL.gap.

3.9.4 Fixed Gas lift Gas Injection


In the is case the forecast will be carried out using a fixed allocation of gas lift gas amongst the
wells according to the proposed rates provided in Table 1 817 .

GAP User Guide August, 2012


Examples Guide 828

3.9.4.1 Run forecast with Fixed Gas Injection


To set the well control of the gas lifted wells, double-click on the Well1A_GL to activate the
System Summary screen.

Select the 'Control' tab and then set the dP Control to 'None' and the Control Model to a 'Fixed
value' of 1MMscf/d which is provided in Table 1 817 . This will ensure that this well will be injected
with a constant rate of 1 MMscf/d and that the well head choke is fully open.

Repeat this procedure for all of the gas lifted wells in the network and enter the rates
corresponding to the values provided in Table 1 817 .

There is a second option for entering the gas injection rate for each well that can also be used.
To do this select Edit | Edit Equipment Controls from the main GAP menu. The advantage of
this menu is that it enables the user to visualise the gas allocation for each well in the same
screen.

1990-2012 Petroleum Experts Limited


829 GAP

Note that the wells' 'Controls' section can be accessed from this screen by clicking on the 'Edit'
buttons.

Important note: The values for the controls under 'Actual' are the ones that
figure under "Fixed Value" in the wells' 'Controls' section. These values
will be used whenever the GAP model is run under No Optimisation

The model is now ready to be run in a forecast.

Run a prediction with the same set up as before 708 :


From the 01/12/2010 to the 01/12/2020.
Using 2 months time steps.
With the 'Target Pressure' for Reservoir A set to 3650 psig using 0% gas (which means the
injected fluid is 100% water).
With the optimisation mode set to 'Optimise with All Constraints'.
With the snapshots saved at each prediction step (Refer to Question 4 713 in Example 2 for
instructions for how to set up and use snapshots).

Once the calculation is finished, save the prediction results by selecting | Prediction | Save
Prediction Run Results As...

In this case the naturally lifted oil wells will still be controllable by GAP however when the gas
lifted wells come online they will operate at a fixed gas injection rate with 0psig dP choke on the
wells (i.e. the wells will be fully open).

Once the run has been completed, there are two ways to verify if the scheduling has been set up
correctly.

The first approach is to analyse the snapshots of the prediction on the 01/02/2013 and the
previous snapshot. The snapshot below shows the state of the system on 01/12/2012 (the
snapshot before the 01/02/2013).

GAP User Guide August, 2012


Examples Guide 830

The gas lifted wells remain masked and the naturally flowing wells are all producing. The
following snapshot shows the network on 01/02/2013.

1990-2012 Petroleum Experts Limited


831 GAP

At this point all of the naturally flowing wells have been masked and the gas lifted wells have
been brought online.

The other way to verify the scheduling has been carried out correctly is to inspect the results. If
we inspect the well liquid rates and the system totals by selecting Prediction | Plot node
prediction results we can observe the gas lifted wells coming online on the 01/02/2013.

Additionally, we can see the impact of the separator constraint. The system can produce above
20,000STB/d as soon as the facilities are upgraded on the 01/02/2013.

GAP User Guide August, 2012


Examples Guide 832

We can verify the gas injection rates for each well which remain constant throughout the
prediction.

Lastly, plotting the cumulative oil production shows us that the installation of the gas lift in the
wells increases overall production by approximately 11% in comparison to the case without
artificial lift. 727

1990-2012 Petroleum Experts Limited


833 GAP

3.9.5 Variable Gas Lift Injection


In the previous forecast the allocation of the gas lift gas amongst the wells was fixed. In this case
the GAP optimiser will be used in order to determine the allocation of gas lift gas amongst the
wells that will maximise the oil production in the system.
3.9.5.1 Set well Controls
To set the well control of the gas lifted wells, double-click on the Well1A_GL well to activate the
System Summary screen.

GAP User Guide August, 2012


Examples Guide 834

Select the 'Control' tab and then ensure that the dP Control is set to 'None' and the Control
Model is set to 'Calculated'. These options will ensure that the well head choke is always fully
open and the only control variable is the gas injection rate. Set the maximum gas injection rate
to 10MMscf/d, as this corresponds to the maximum gas that is available, and then set the
minimum gas injection rate to 0MMscf/d. This means that if necessary, GAP can allocate all of
the gas lift gas that is available to one well.

Repeat this procedure for all of the other gas lifted wells.
3.9.5.2 Set Maximum Gas Lift Available
To set the maximum gas lift gas that is available then select Prediction | Run Prediction from the
main GAP menu and then run through the forms until the following screen appears.

1990-2012 Petroleum Experts Limited


835 GAP

Enter a value of 10MMscf/d. This will ensure that total gas lift gas that is allocated amongst the
wells will not exceed 10MMscf/d.

3.9.5.3 Run Forecast with Variable Gas lift Injection


The model is now ready to be run in a forecast.

Run a prediction with the same set up as before 708 :


From the 01/12/2010 to the 01/12/2020.
Using 2 months time steps.
With the 'Target Pressure' for Reservoir A set to 3650 psig using 0% gas (which means the
injected fluid is 100% water).
With the optimisation mode set to 'Optimise with All Constraints'.
With the snapshots saved at each prediction step (Refer to Question 4 713 in Example 2 for
instructions for how to set up and use snapshots).

Once the calculation is finished, save the prediction results.

In this case the naturally lifted oil wells will be controllable by GAP and when the gas lifted wells
come online the GAP optimiser will control the allocation of gas lift gas to each well.

The following plot shows the gas lift injection rates for the wells over the course of the prediction.

GAP User Guide August, 2012


Examples Guide 836

By comparing the cumulative oil production from the previous prediction we can see that for the
same amount of available gas lift gas, GAP was able to produce more oil by changing the
allocation of gas amongst the wells.

1990-2012 Petroleum Experts Limited


837 GAP

Useful Tip

Note that the calculated gas allocation amongst the wells appears erratic throughout the
prediction. This is because some of the wells respond very similarly to the amount of gas lift gas
injected. For example, if 1MMscf/d is injected into either of the wells from Reservoir B we will
observe a similar increase in oil production even though they are different wells. This means we
have multiple ways of controlling the system to achieve our optimum and therefore there is no
unique answer for the optimiser. In such cases we can modify the optimiser settings so that the
optimiser uses the controls of the previous time step as a starting point.

GAP User Guide August, 2012


Examples Guide 838

This option can be activated by changing the value for 'Prediction - reset optimiser variables at
each prediction step' to 2.

Repeating the prediction with this option will yield smoother gas lift gas allocation profiles for all
the wells.

1990-2012 Petroleum Experts Limited


839 GAP

And if we compare the cumulative oil production with the new optimiser settings we observe no
difference in the totals.

GAP User Guide August, 2012


Examples Guide 840

1990-2012 Petroleum Experts Limited


841 GAP

3.10 Example 8 - Gas Lift Injection Network


The previous example 816 described the set-up of a gas lift production system and can be
applied to the majority of the cases. In many cases it is required to verify if the gas lift injection
network is able to provide the necessary pressure to inject the required gas lift gas. The
following example shows how to capture the physics of the gas lift injection system in an
integrated the model.
3.10.1 Objectives
Definition of the Problem
A gas lifted production system is being considered and it is required to design the gas lift
distribution network and the compression facility that would be necessary to deliver the gas.

In order to proceed with the construction of the gas lift network the contract states that there must
be 10 MMscf/d which has to be provided by the operator that will be piped back to shore along
the sea bed. The objective of the study is to understand how long this rate can be maintained
for.

The study will involve three different scenarios:


1. Case 1 will look at running a forecast with gas lift on all of the wells, with the total available gas
lift rate assumed to be10MMscf/d. The GAP optimisation algorithm will be used to determine

GAP User Guide August, 2012


Examples Guide 842

the allocation throughout the prediction.


2. Case 2 will look at running a forecast with gas lift on all of the wells, with the total available
gas lift rate assumed to be10MMscf/d until the total produced gas drops below 10MMscf/d.
At which point all of the allocated gas lift gas will be shared amongst the higher GOR wells
(wells from reservoir A) in order to understand if more gas can be produced in order to honour
the contract.
3. Case 3 will look at running a forecast with gas lift on all of the wells, with the total available
gas lift rate assumed to be10MMscf/d until the total produced gas drops below 10MMscf/d.
At which point all the allocated gas lift gas will be increased to 15MMscf/d.

For reasons of casing integrity, the maximum pressure at the Casing Head is restricted to 4000
psig.

Learning Topics
The objectives of this example are to learn how to:
Generate lift curves for gas lift oil producer wells with casing head pressure as
sensitivity variable
Build a GAP model for the gas lift injection network
Couple the production system to the gas lift injection network
Write a script to meet a gas contract
Optimise the gas lift allocation to the wells ensuring that this can be supplied by the
gas injection system.

Executive Summary
To achieve the objectives a gas lift injection network model will be built and then coupled to the
production model. GAP allows the user to optimise the production system and then to verify if the
gas lift injection network is able to provide the necessary pressure to inject the gas at the casing
head side.

The steps followed will be:


1. Modify the existing gas lift production network by:
- Generating PROSPER lift curves with casing pressure as a sensitivity variable and
import the curves in GAP
- Set the well controls in GAP
2. Build the gas lift injection network
- Draw the GAP network
- Define wells in GAP as sinks with the same name as the production wells
- Define the pipelines
- Define the compressor
3. Associate the gas lift injection system to the production system.
4. Set the gas lift gas allocation.
5. Write a simple prediction script to honour the gas contract.
6. Run a forecast with the gas injection network included to maximise oil production.

1990-2012 Petroleum Experts Limited


843 GAP

The initial files for this example and the final model can be found in the GAP
archive file format in the following directories.
~\samples\GAP\Example 8 - GL Field with Gas Network
Extract 600 the archive file in the Initial Files folder to an appropriate directory

3.10.2 Data Available


The data required to start the example are in the folder Example 8 - GL Field with Gas Network.
There is an archive called Oil Field_GL.gar

Extract the archive before starting the exercise.

Description of the wells

Well Name Well type PROSPER well model Lift curve file

Well1A_GL Gas Lifted WELL1A_GL.OUT WELL1A_GL.vlp


Well2A_GL Gas Lifted WELL2A_GL.OUT WELL2A_GL.vlp
Well3A_GL Gas Lifted WELL3A_GL.OUT WELL3A_GL.vlp
Well1B_GL Gas Lifted WELL1B_GL.OUT WELL1B_GL.vlp
Well2B_GL Gas Lifted WELL2B_GL.OUT WELL2B_GL.vlp

Well3B_GL Gas Lifted WELL3B_GL.OUT WELL3B_GL.vlp


Table 1

In order to model the Gas Lift Network, the PROSPER models must use the 'Valve Depths
Specified' method in the gas lift options.

Description of the surface network


In this example, we will define the sea level as the reference depth.
NOTE: the pipelines are defined from upstream to downstream

Label Pipe Pipe Upstrea Downstre Overall Heat Multiphase Correlation


segment ID m TVD am TVD Transfer
Length Coefficient
km Inche ft ft Btu/h/ft2/F -
s
Manifold_A to WH1_A 1 6 600 600 3 Beggs and Brill

Manifold_A to WH2_A 0.8 6 600 600 3 Beggs and Brill


Manifold_A to WH3_A 1.2 6 600 600 3 Beggs and Brill
Manifold_B to WH1_B 0.5 6 525 525 3 Beggs and Brill

GAP User Guide August, 2012


Examples Guide 844

Manifold_B to WH2_B 0.3 6 525 525 3 Beggs and Brill


Manifold_B to WH3_B 0.4 6 525 525 3 Beggs and Brill
Manifold_B to Manifold_A 7.5 6 525 600 3 Beggs and Brill
P_d to Manifold_B 2 6 0 525 3 Beggs and Brill
P_d to Manifold_B 3 6 525 515 3 Beggs and Brill
P_d to Manifold_B 4 6 515 480 3 Beggs and Brill
P_d to Manifold_B 3 6 480 525 3 Beggs and Brill
P_d to Shore 7.62 6 0 525 3 Beggs and Brill
P_d to Shore 0.16002 6 525 0 3 Beggs and Brill

Table 2 Pipeline description

Description of the Compressor

The performance curves of the compressor are provided in an Excel worksheet called
'Compressor Curves'. The file contains the polytropic head and power curves as a function of
the inlet rate. Note that the units are in SI and will have to be converted when entering the
performance curves into GAP.

In order to link a production network to an injection network, it is mandatory to


define the injection sinks with the same names as the production wells.
In the same way, defining the injection manifold with the same name as the
production separator will make GAP understand the two have the same pressure.
Note that the last consideration is not a mandatory requirement: if a different name
is used for the injection manifold, GAP will ask further for its pressure.

Note that the completed archive of the model is called Oil Field with GL Network.gar

3.10.3 Modify the Production Network


Extract the archive Oil Field GL.gar.

In the previous examples, the gas lifted wells were defined by VLP curves that take into account
the GLR injected (see previous example 823 ). The basic assumption being that there is sufficient
pressure available at the casing side for the injection of the gas lift gas.

The casing pressure required to inject the gas can be determined separately by running a
sensitivity analysis with the PROSPER model however this is limited as this can only be done for
a fixed set of conditions and it is not possible for the engineer to determine if the casing
pressure can be provided by the gas lift injection system.

In order to optimise the allocation of gas lift gas shared by the wells, and take into consideration
whether the gas lift injection system can provide the gas at the necessary casing pressure,
requires a full integrated model of the production system dynamically linked to the gas lift

1990-2012 Petroleum Experts Limited


845 GAP

injection system in GAP. This link between the networks is achieved by introducing the casing
pressure.

To set the gas lifted wells to use the casing pressure double-click on one of the wells to activate
the System Summary screen and tick the option 'Use Casing Pressure'.

The PROSPER well models have to be defined with 'Valve Depths Specified'.

Repeat this for all of the gas lifted wells in the system.

3.10.3.1 Generate the Well VLPs with Casing Pressure


This section explains how to generate the lift curves with casing pressure as an additional
sensitivity variable.

Note that the lift curves have already been generated (see Table 1 843 ), therefore the steps

GAP User Guide August, 2012


Examples Guide 846

described below are just as an illustration of how they were generated.

Provided the wells have been set to 'Use Casing Pressure' then GAP will automatically provide
the engineer with the option to enter the casing pressure as a fifth sensitivity variable when the
user accesses the menu Generate | Generate Well VLPs with PROSPER.

The PROSPER well models have to be defined with 'Valve Depths Specified' in
order for the casing pressure to be included.

With conventional VLP curves the pressure vs. rate profiles are always smooth and continuous
as this is consistent with the physics of the wellbore. The recommended ranges we provide in
the manual will almost always ensure this however in the case of gas lifted VLPs which have the
valve depths specified then depending on the conditions, the gas injection point can change
abruptly resulting in a sharp change in the pressure profile.

From a modelling perspective this can result in large interpolation errors or non-physical
solutions if the engineer is not careful with the ranges of the rates used when generating the
VLPs. For example, consider the VLP curve below of a gas lifted well for a given set of
conditions.

1990-2012 Petroleum Experts Limited


847 GAP

At approximately 7800 STB/day the injection point changes and a step change in the pressure
profile is observed. If the VLPs were generated for the same conditions but for a different range
of rates then is event will not be captured with sufficient resolution and there will be large
interpolation errors if the intersection with the IPR falls within this region.

GAP User Guide August, 2012


Examples Guide 848

It is therefore important for the engineer to ensure that this does not occur in the model, and
there may be some iterations required in identifying suitable ranges for the rates to ensure that
the VLPs are representative of the well.

The number of VLPs that can be generated is limited to 32,000 and the engineer must
take care in ensuring that this is not exceeded when generating VLPs for gas lifted wells
including the casing pressure.

To inspect the VLPs that have been generated for the gas lift wells, double-click on the wells to
activate the System Summary screen and select 'VLP' and then 'Inspect' from the screen shown
below.

1990-2012 Petroleum Experts Limited


849 GAP

In this example the VLPs have been generated using one GOR value (the solution GOR), as we
know from the evolution of the previous examples that the reservoir pressure does not drop
below the bubble point and therefore the producing GOR will remain constant throughout the
prediction.

3.10.3.2 Setting Well Controls in GAP


When the wells are set to 'Use Casing Pressure' then the casing pressure can be calculated by
GAP. To set the casing pressure to be calculated double-click on Well1A_GL and select
'Controls'. Modify the control mode to 'Calculated' and ensure that the maximum casing
pressure is 4000psig so that the casing pressure does not exceed the design limit.

GAP User Guide August, 2012


Examples Guide 850

Repeat this process for all of the other gas lifted wells.

The production model has now been built. Save the file as Oil Field_GL.gap.

3.10.4 Build the Gas Lift Injection Model


This section can be used as a general step-by-step procedure to build a Gas Lift Injection
system in GAP.
The sketch illustrated below will be used as the reference.

1990-2012 Petroleum Experts Limited


851 GAP

3.10.4.1 Draw the GAP Network


1. Getting Started
Begin by starting the program.
From the GAP entry screen, select File| New to reinitialise GAP.

2. Defining the global system option


To begin setting up the system options, select Options | Method and make the following
selections:

System Type : Gas Lift Injection


Prediction: On
Prediction Method: Pressure and temperature
Water Vapour: No Calculations
Temperature Model: Rough Approximation
Calculate Well Choke Delta T: Off

GAP User Guide August, 2012


Examples Guide 852

Then click 'Ok' to exit this screen.


This completes the system set-up and reinitialises the program.

3. Defining the Units System


In order to define the unit system click on Units | Edit Units. The following screen will appear:

1990-2012 Petroleum Experts Limited


853 GAP

A unit system can be selected by pointing the cursor in the cell below Input. This allows the
overall units system to be selected. Clicking on the white cells below allows individual units to be
changed.
Input : Oilfield
Output : Oilfield

In order to reproduce the same results in this example, it is recommended


to set the inputs and outputs in Oilfield Units.

For further details, access the Units section 592 of the user Guide.

Click on OK to complete the selection of units and to close the screen.


If necessary, later we will modify the units system when entering input data.

4. Drawing the system


The purpose of this section is to demonstrate how to construct graphically the complete gas lift
network. The sketch provided at the start of the section will be used as reference.

The network will be drawn from upstream to downstream defining the gas injection manifold first.

GAP User Guide August, 2012


Examples Guide 854

Note that the order in which the GAP network is constructed has no effect on the results.

In order to link a production network to an injection network, it is mandatory to


define the injection sinks with the same names as the production wells.
In the same way, defining the injection manifold with the same name as the
production separator will make GAP understand the two have the same pressure.
Note that the last consideration is not a mandatory requirement: if a different name
is used for the injection manifold, GAP will provide the option to enter its pressure.

Injection Manifold "Gas Inj. Manifold"


The Injection Manifold is defined using the same element as the Production Separator which can
be accessed by the Separator icon. Selecting this icon and then clicking on the main GAP
screen will activate the window shown below.

Select the 'Gas Injection Manifold' and an element will appear on the main screen.

1990-2012 Petroleum Experts Limited


855 GAP

The Joints
Eleven joints will be created:
One joint to represent the compressor inlet ("P_s")
One joint to represent the compressor outlet ("P_d")
One joint to represent each of the manifolds ("Manifold_A" and "Manifold_B")
One joint to represent the delivered gas for the contract (Shore)
One joint to represent each of the wellheads (i.e. "WH1_A")

Click on the Joint icon from the main toolbar and add the 11 joints by clicking in the main
GAP display area as shown below. Label the joint elements accordingly, following the sketch
provided for reference. The following screen shot shows the current layout of the system.

GAP User Guide August, 2012


Examples Guide 856

The Compressor
To add the compressor element select the compressor icon from the main toolbar and
place it between joints "P_s" and "P_d".

1990-2012 Petroleum Experts Limited


857 GAP

The Wellheads (casing side)


The wellheads will be modelled using sink elements which can be added to the network using
the icon.

It is imperative that each sink element is labelled with the same name as its
corresponding well. This is important because GAP will use the labels to recognise
the linking points between the production and gas lift injection systems.

Once the Source/Sink button is selected, place an icon on the screen and select 'Sink'.

Repeat this procedure for all of the other wells in the system.

GAP User Guide August, 2012


Examples Guide 858

Some useful tips

1. To move an icon to a new location on the screen, hover the mouse arrow over the icon to
be moved and press the left mouse button and the Shift key. Keep the left mouse button
pressed and move the node to the new location. Releasing the left mouse button will then
position the icon in the new location. This can also be achieved by selecting from the
main toolbar
2. Icons can be deleted by selecting the scissors icon from the toolbar menu and
clicking on the node to be removed.

The links /pipes


Links are connection tools which connect the various nodes in the network
system. The following rules apply:

a link between a reservoir and a well has no dimension


a link between a well and a joint has no dimension
a link between 2 joints may have a dimension (pipe, chokes)
a link between a joint and a separator may have dimensions
a well can not be linked directly to a separator. An intermediate joint is compulsory,
a reservoir can not be linked directly to a separator.

Link the components together by doing the following:

1990-2012 Petroleum Experts Limited


859 GAP

1. Selecting the link icon from the main toolbar.


2. Click on the first component to be connected with the left mouse.
3. Keeping the left mouse button pressed, move the cursor from the first component to the
second component.
4. A joint will form when the mouse button is released over the second component.

Create links between the following components in the direction of the flow:

1. Connect the Gas Inj. Manifold to joint P_s to the Compressor and then to joint P_d.
2. Connect the joint "P_d" to the manifolds and then to the joints representing all of the well
heads.
3. Connect the wellhead joints to the corresponding sinks.

The basic model layout has now been specified. Additional components can easily be added or
deleted when the model is refined later. The GAP screen display should look something like the
screen shot below:

3.10.4.2 Define the Wellheads and Delivery Station


Access the System Summary screen of the Sink labelled "Well1A_GL" and define a rate of 0
MMscf/d, as shown below.

GAP User Guide August, 2012


Examples Guide 860

Repeat this for all of the sinks that represent a well in the system.

Note that this is just to initialise the system. Later on, when running calculations the
program will determine the optimum value for the injection rate.

Select the sink that represents the Delivery Station and enter a gas rate of 10 MMscf/d as this is
the contractual obligation that has been agreed.

1990-2012 Petroleum Experts Limited


861 GAP

3.10.4.3 Define the Pipelines and Surface Equipment


Table 1 843 contains the information about all of the pipelines in the field.

According to the network sketch 850 , the wells Well1A, Well2A and Well3A are tied back to
Manifold_A via devoted lines. The three lines are therefore represented by a link between each
wellhead and the manifold.

In order to describe the procedure for defining pipelines access the pipe summary screen by
double-clicking on the link that joins WH1_A and Manifold_A. The summary screen is shown
below. Make the following changes:

Pipeline model: GAP Internal Correlations


Correlation: Beggs and Brill
Gravity Coefficient: 1
Friction Coefficient: 1

GAP User Guide August, 2012


Examples Guide 862

The 'Petroleum Experts 5' is a mechanistic model that was designed to model pipelines
with complex geometries flowing with multiphase mixtures. It is therefore more
computational intensive as it is capable of handling far more complexity. In this system
we do not require such a rigorous model as the flow is single phase (gas) and the
pipelines are not particularly undulating therefore we can save computational time by
using the simpler 'Beggs and Brill' correlation.

Environment
Select the 'Environment' tab to access the screen which allows you define the pipeline
environment and then enter the following values.

Surface Temperature: 50 degF


Overall Heat Transfer Coefficient: 3 Btu/h/ft
Oil Heat Capacity: 0.53 Btu/lb/F (default)
Gas Heat Capacity: 0.51 Btu/lb/F (default)
Water Heat Capacity: 1 Btu/lb/F (default)

1990-2012 Petroleum Experts Limited


863 GAP

Repeat this for all of the flowlines in the system.

Pipe Description
To define the pipeline dimensions select the description tab.
Enter the following data (note: the data are given from upstream to downstream):

Pipe Pipe ID Upstream Downstream Roughness Multiphase


Segment TVD TVD Correlation
Length
km Inches ft ft Inches -

Manifold_A to 1 6 600 600 0.0006 Beggs and Brill


WH1_A

GAP User Guide August, 2012


Examples Guide 864

Once the data has been entered it is useful to click on 'Validate' in order to check whether the
description entered is valid or not. This is not compulsory but can be useful for verifying your
input. Click 'OK' to return to the main GAP screen.

Repeat this procedure for all of the well lines.

Description of the main flowlines


Double-click on the pipe linking Manifold_A to Manifold_B and enter the following data:

Pipe Pipe Upstream Downstream Roughne Multiphase Correlation


segment ID TVD TVD ss
Length
km Inches ft ft Inches -

Manifold_A to 7.5 6 600 525 0.0006 Beggs and Brill


Manifold_B

1990-2012 Petroleum Experts Limited


865 GAP

Similarly, double click on the pipe linking Manifold_B to P_d and enter the following pipe
description:

Label Pipe Pipe ID Upstrea Downstre Overall Heat Multiphase Correlation


segme m TVD am TVD Transfer
nt Coefficient
Length
km Inches ft ft Btu/h/ft2/F -

P_d to Manifold_B 2 6 0 525 3 Beggs and Brill


P_d to Manifold_B 3 6 525 515 3 Beggs and Brill
P_d to Manifold_B 4 6 515 480 3 Beggs and Brill
P_d to Manifold_B 3 6 480 525 3 Beggs and Brill

GAP User Guide August, 2012


Examples Guide 866

The figure on the right hand side allows the user to define which node
is upstream and which is downstream in the system:

1990-2012 Petroleum Experts Limited


867 GAP

The 'Plot' feature at the bottom of the screen allows the user to view the pipeline profile and
verify graphically that the data has been entered correctly.

GAP User Guide August, 2012


Examples Guide 868

Double-click on the pipe linking joint "P_d" to "Shore" and enter the following data:

Label Pipe Pipe ID Upstrea Downstre Overall Heat Multiphase Correlation


segme m TVD am TVD Transfer
nt Coefficient
Length
km Inches ft ft Btu/h/ft2/F -

P_d to Shore 7.62 6 0 525 3 Beggs and Brill


P_d to Shore 0.1600 6 525 0 3 Beggs and Brill
2

1990-2012 Petroleum Experts Limited


869 GAP

To change the units of a variable click on the cell that displays the unit
and a drop down list will become available providing all the different
unit options.

This completes the pipeline description for the gas lift injection network.

Injection manifold
Double-click on the injection manifold to access the System Summary screen and enter an
injection fluid temperature of 60 deg F.

GAP User Guide August, 2012


Examples Guide 870

Lastly,define the injected gas properties by selecting the 'Edit List' section. In this case the
default PVT properties will be used.

1990-2012 Petroleum Experts Limited


871 GAP

3.10.4.4 Define the Compressor Curves


The performance curves of the compressor are provided in an Excel worksheet called
'Compressor Curves' and are based on genuine manufacturer curves for a centrifugal
compressor.

GAP User Guide August, 2012


Examples Guide 872

Note that the units are in SI and will have to be converted when entering the
performance curves into GAP.

The measured data, provided by the manufacturer, was fitted with curves to achieve smooth
derivatives beyond the surge and choke limits of the compressor. This is very important
because the GAP solver uses the derivatives of each element in the system in order to solve the
network so that convergence is achieved at each node. This is the same principal behind
having good quality VLPs which has been discussed in the previous examples.
Even if the derivatives are smooth over the range of the expected operating conditions,
convergence issues can still occur if there are poor quality derivatives at the extreme conditions.
This is due to the fact that as the network is being solved it is possible for the solver to fall into a
region with poor quality derivatives and consequently the ability of the system to converge is
greatly affected as there is no way for the solver to resolve which direction to go in order to find
the correct solution.

An example of poorly defined compressor curves is provided below where the problematic
areas have been highlighted in red.

1990-2012 Petroleum Experts Limited


873 GAP

Such performance curves should always be avoided as the real response of the compressor
would not have discontinuities and more importantly it can cause problems with the solver.

To enter the performance curves in GAP double-click on the compressor icon to activate the
system summary screen and select 'Data'. Enter three compressor stages and then select 'Edit
PC' to transfer the performance curves from EXCEL.

GAP User Guide August, 2012


Examples Guide 874

Ensure that the units are consistent.

To change the units of a variable click on the cell that displays the unit
and a drop down list will become available providing all the different
unit options.

Note that in this example the same performance curves have been defined for each stage
however there is the option to enter a unique set of performance curves for each stage. This
option becomes available when the 'Use Multi Stage PCs' is checked.

1990-2012 Petroleum Experts Limited


875 GAP

To specify the Surge/Choke limits as a function of the rotation speed then select the 'Surge/
Choke' tab from the bottom of the form as shown below.

Provided the compressor is controllable then GAP will regulate the rotational speed of the
compressor in order to honour these operating limits.

Lastly, define how the compressor speed is going to be controlled by selecting the 'Control' tab
and setting the Speed Control to 'Calculated' and entering the maximum/minimum speed limits
of 8000 rpm and 20000 rpm respectively.

GAP User Guide August, 2012


Examples Guide 876

GAP will now be able to regulate the compressor speed between these limits in order to
maximise the oil production.

The GAP model has now been built. Save the file as GL Network.gap.

3.10.5 Associate Production to Gas Lift Gas Network


At this point the proposed gas lift injection model needs to be linked to the production model so
that a forecast can be run and we can evaluate how the design will perform over the course of
the field life.

To achieve this, perform the following steps:

Open up the Production System model.


Select Options | Method from the main GAP menu.
At the bottom of the screen, in the 'Associated Injection Models' section tick the box for the
'Gaslift Injection' and Browse for the previously saved GL Network.gap model.

1990-2012 Petroleum Experts Limited


877 GAP

Once 'OK' is clicked, the program will open the gas lift injection system automatically along
with the production system
Arranging the windows by selecting the Windows | Tile Vertically from the main GAP menu will
allow the user to visualise both models together.

GAP User Guide August, 2012


Examples Guide 878

The program knows now that each well corresponds to a source element and the injection
manifold corresponds to the separator. This is because the same names have been used for
those elements.

Note that in the gas lift injection network the icons for the injection manifold and
sinks (wellheads) have turned upside down. This indicates that those elements are
linked to their corresponding wells in the production network.

Save the model naming the production model as Oil Production with GL Network.gap.

1990-2012 Petroleum Experts Limited


879 GAP

The whole model will be saved as Oil Production with GL Network.gap. This is the name of
the production network. The injection network will be saved as GL Network.gap. Note that as
the production network is the master model, the whole model can be opened from the master
file.

3.10.5.1 Write the Prediction Script


The next step is to write the prediction script so that the gas lift network is handling the correct
rates at each time step. For example, it is important to ensure that the produced gas and gas lift
gas rate (which is being cycled) is consistent with the rates in the production system.
Additionally, some additional logic will be required to capture each of the scenarios outlined in
the objectives 841 .

In GAP the gas lift gas is modeled as a separate phase which allows us to determine how much
gas is being injected. Therefore the actual gas production at the separator will be the sum of the
gas produced (Qgas) and the gas injected (Qginj).

GAP User Guide August, 2012


Examples Guide 880

If the gas production (Qgas) falls below the agreed 10MMscf/d then there is a separate logic
required to simulate the three cases specified in the objectives 841 . This can be done
dynamically through the prediction script which enables us to optimise our system to its full
potential whilst honouring the three different field management strategies.

To enter script select Prediction | Edit Prediction Script from the main GAP menu or alternatively
select the icon from the main tool bar.

The scripting is carried out through OpenServer and will be carried out at the end of each solve
(PredStepSolverEpilog). The script for Case 1 is shown below.

1990-2012 Petroleum Experts Limited


881 GAP

To summarise, the script updates the sink in the gas lift injection network so that it is consistent
with the produced gas calculated from the production system. There is then the additional logic
required to simulate Case 2 and 3 which will be described in the next section.

The script can be imported as a file which in provided in the archive located in the Initial Files
folder. To import the script select Prediction | Import Prediction Script... and then locate the file
called Case 1.gapscr.

GAP User Guide August, 2012


Examples Guide 882

In order to obtain an OpenServer statement the user can use CTRL+Right Click over any
variable and the OpenServer string along with the current value will be displayed. For example,
the OpenServer variable for the available gas lift gas is displayed below.

The OpenServer commands are also documented in detail in the OpenServer manual.

Note that although the model will meet the objectives set out at the start, its formulation
is rather complicated due the necessary scripting. It is also inefficient as additional
solves are required in order to consistently capture all of the rates in the different
systems. Moreover, if this model was to be passed onto another engineer then unless
they are familiar with the script they will have difficulty interpreting the model. It is
therefore recommended to handle such problems, which are based on field
management rules, with RESOLVE, as this tool provides a far simpler platform for
implementing logic in the model. For example, this problem could be solved in RESOLVE
with fewer solves and without the need for any scripting making the model more
efficient and easier for other engineers to understand.

1990-2012 Petroleum Experts Limited


883 GAP

3.10.6 Run Prediction With Coupled Models


The models are now ready to be run in a forecast.

GAP will first solve the production network based on the maximum casing pressure (4000psig)
specified at the wells and allocate the gas lift gas so that oil production is maximized. The
calculated gas injection rates for each well are then transferred to the corresponding sinks in the
gas lift network which is solved to determine the casing pressure at each sink. If the gas lift
injection network can provide the casing pressure then GAP will progress to the next time step.
If the casing pressure cannot be met then the calculated casing pressure from the injection
system is passed to the production system and the production network is re-solved until the
injection system can provide the calculated injected rates.

Run a prediction with the following set up:


From the 01/12/2010 to the 01/12/2020.
Using 3 months time steps.
With the 'Target Pressure' for Reservoir A set to 3650 psig using 0% gas (which means the
injected fluid is 100% water).
With the gas inj. manifold pressure set to 200 psig.
With the optimisation mode set to 'Optimise with All Constraints'.

GAP User Guide August, 2012


Examples Guide 884

3.10.6.1 Case 1
Once the calculation is finished, save the prediction results.

The first case was to run a forecast with gas lift on all of the wells, with the total available gas lift
rate assumed to be10MMscf/d.

The first step is to ensure that the prediction script is working correctly. This can be done by
inspecting the snapshots. The snapshot below shows the state of the system on 01/09/2014.

At this point in time the gas potential of the production system is greater than 10MMscf/d and we
can verify that the volume of produced gas is being delivered to shore.

To determine when the gas contract can no longer be met select Prediction | Plot Node
Prediction Results... and plot the gas production from the separator.

1990-2012 Petroleum Experts Limited


885 GAP

From the plot its clear that around 1/12/2016 the gas production falls below 10MMscf/d and it is
not possible to honour the contract.

GAP User Guide August, 2012


Examples Guide 886

3.10.6.2 Case 2
The second case was to run a forecast with gas lift on all of the wells, with the total available gas
lift rate assumed to be10MMscf/d until the total produced gas drops below 10MMscf/d. At which
point all of the allocated gas lift gas will be shared amongst the higher GOR wells (wells from
reservoir A) in order to understand if more gas can be produced and maintain the contract for a
longer period.

In order to set-up this scenario the script needs to be modified. The logic that will be executed
once the gas rate drops below 10MMscf/d is that wells connected to Reservoir B will be
switched to Fixed Control and the Gas Injection Rate will be set to 0MMscf/d.

This will be captured by modifying the script as shown below.

1990-2012 Petroleum Experts Limited


887 GAP

The script can be imported as a file which in provided in the archive located in the Initial Files
folder. To import the script select Prediction | Import Prediction Script... and then locate the file
called Case 2.gapscr.

Re-run a prediction with the same set up as the previous case which is listed below:
From the 01/12/2010 to the 01/12/2020.
Using 3 months time steps.
With the 'Target Pressure' for Reservoir A set to 3650 psig using 0% gas (which means the
injected fluid is 100% water).
With the gas inj. manifold pressure set to 200 psig.
With the optimisation mode set to 'Optimise with All Constraints'.

Once the calculations are complete save the prediction results.

GAP User Guide August, 2012


Examples Guide 888

Once the calculations are complete save the prediction results.

To determine the impact on the gas contract select Prediction | Plot Node Prediction Results...
and plot the gas production from the separator for Case 1 and 2.

The results show that on the 01/12/2016, which is when the logic is triggered, the gas production
drops sharply. This is because the wells from Reservoir B require gas lift in order to produce.

1990-2012 Petroleum Experts Limited


889 GAP

This development strategy is therefore undesirable.

GAP User Guide August, 2012


Examples Guide 890

3.10.6.3 Case 3
The third case was to run a forecast with gas lift on all of the wells, with the total available gas lift
rate assumed to be10MMscf/d until the total produced gas drops below 10MMscf/d. At which
point all of the allocated gas lift gas will be increased to 15MMscf/d in order to understand if
more gas can be produced and maintain the contract for a longer period.

In order to set-up this scenario the script needs to be modified. The logic that will be executed
once the gas rate drops below 10MMscf/d is the Gas Lift Available will be increased to
15MMscf/d

This will be captured by modifying the script as shown below.

1990-2012 Petroleum Experts Limited


891 GAP

The script can be imported as a file which in provided in the archive located in the Initial Files
folder. To import the script select Prediction | Import Prediction Script... and then locate the file
called Case 3.gapscr.

Re-run a prediction with the same set up as the previous cases which is listed below:
From the 01/12/2010 to the 01/12/2020.
Using 3 months time steps.
With the 'Target Pressure' for Reservoir A set to 3650 psig using 0% gas (which means the
injected fluid is 100% water).
With the gas inj. manifold pressure set to 200 psig.
With the optimisation mode set to 'Optimise with All Constraints'.

Once the calculations are complete save the prediction results.

GAP User Guide August, 2012


Examples Guide 892

Once the calculations are complete save the prediction results.

To determine the impact on the gas contract select Prediction | Plot Node Prediction Results...
and plot the gas production from the separator for Case 1 and 3.

Which inidiactes that there is effectively no gain in increasing the gas lift available to the system.
This confirms that, for the cases analysed, the contract can be honoured until 01/12/2016.

In summary we have demonstrated the capability of designing a gas lift injection network that
can supply the necessary gas lift gas to the wells. Additionally, we have incorporated a physical
compressor as well as some advanced logic that captures different management strategies that
are aimed at honouring a contract. Although the logic used meets the objectives it is fairly
detailed, takes time to formulate and can be difficult to understand if the engineer is unfamiliar
with script. On that basis it is always recommended to model such cases in RESOLVE as it is
far simpler and more efficient to implement.

1990-2012 Petroleum Experts Limited


893 GAP

3.11 Example 9a - LNG (Fully Compositional)

3.11.1 Objectives
Definition of the Problem
A new retrograde gas condensate field has been discovered with four appraisal wells. A simple
surface configuration has been defined for gathering all the fluid to a common manifold. The
produced fluid is to be delivered 5 km away from the main manifold to n LNG plant for
processing.

The objectives are to:


1. Calculate the total production from the system when the wells are fully open and assess if
there are any potential problems concerning deposition of solids (hydrates or waxes) in the
pipelines.
2. Generate a production profile from 01/01/2007 to 01/01/2012 operating at full production to
evaluate the changes in the composition of the fluid, especially evolution of the C1, C2 and
C3. The delivery pressure at the separator is fixed to 1000 psig until 01/01/2010 and from this
date onward the separator will operate at 500 psig.

Learning Topics
The objectives of this example are to learn how to:
Set up a GAP model for a retrograde condensate field using the fully compositional
method
Export and import compositional models in GAP
How to run a prediction using GAP, PROSPER and MBAL
How to evaluate changes in the fluid composition.

GAP User Guide August, 2012


Examples Guide 894

Executive Summary
The steps to follow will be to:
1. Build the GAP network
- Draw the GAP network
- Define a reservoir in GAP
- Define the MBAL model as compositional and Import the composition in MBAL
from PVTP
- Define wells in GAP
- Generate well IPRs in GAP using PROSPER
- Import well VLPs in GAP
- Import the composition in GAP from PVTP
- Define the pipeline and eventual surface equipment
2. Run Solve Network (no optimisation) to determine the actual production for the
current network status
3. Run the prediction and checking the results

The initial files to build this example along with the completed model can be
found in the directory:
~\samples\GAP\Example 9a - LNG (Fully Compositional)

Click here 948 to set the model to Black Oil compositional lumping/delumping
3.11.2 Data Available
Description of the Wells

In this example, the Forcheimer Pseudo Pressure Method will be used for the model the inflow
performance (IPRs). The file names containing the pre-generated lift curves corresponding to
each well are shown in the table below.

Well Name PROSPER File Lift Curves

Well1 Well1.OUT Well1.tpd


Well2 Well2.OUT Well2.tpd
Well3 Well3.OUT Well3.tpd
Well4 Well4.OUT Well4.tpd

Table 1 - Well data

Description of the Pipelines

Label Pipe Pipe ID Upstrea Downstre Overall Heat Multiphase Correlation


segme m TVD am TVD Transfer
nt Coefficient

1990-2012 Petroleum Experts Limited


895 GAP

Length
km Inches ft ft Btu/h/ft2/F -

Manifold to Top Riser 5 10 0 0 3 Petroleum Experts 5

WH1 to Manifold 3 6 0 0 3 Petroleum Experts 5


WH2 to Manifold 4 6 0 0 3 Petroleum Experts 5
WH3 to Manifold 8 6 0 0 3 Petroleum Experts 5
WH4 to Manifold 5 6 0 0 3 Petroleum Experts 5

Table 2 - Pipeline data

Description of the Reservoir

Tank Name History Start - End GIIP MBAL File


(dd/mm/yyyy) Bscf -

Reservoir No History 500 Reservoir_start.mbi

Table 3 - Reservoir data

Description of the PVT

The PVT equation of state data are in the PVTP model PVT model.pvi.

If the user does not have PVTP, the user can still use the .prp file which has been
previously exported to complete the example.

The initial files and final model for this example can be found in the following
directory:
~\samples\GAP\Example 9a - LNG (Fully Compositional)\Initial files

3.11.3 Build the GAP model


This section can be used as a general step-by-step procedure to build any GAP model. The
sketch below will be used as a reference.

GAP User Guide August, 2012


Examples Guide 896

3.11.3.1 Draw the GAP network


1. Getting Started
Begin by starting the program.
From the GAP entry screen, select File| New to reinitialise GAP.

2. Defining the global system option


To begin setting up the system options, select Options | Method and make the following
selections:

System Type : Production


Optimisation Method : Production

1990-2012 Petroleum Experts Limited


897 GAP

PVT Model : Fully Compositional


Prediction: On
Prediction Method: Pressure and temperature
Wax or Hydrate Warning: On
Water Vapour: Calculate Condensed Water Vapour
Temperature Model: Improved Approximation
Calculate Well Choke Delta T: On

The 'Calculate Well Choke Delta T' takes into account the Joule-Thomson
effect that can become significant when a gas is subjected to a large
pressure drop.

GAP User Guide August, 2012


Examples Guide 898

The 'Calculate Condensed Water Vapour' option will take into account the
water that has been vaporised from the formation brine which can potentially
condense in the pipelines due to changing pressures and temperatures.

The improved approximation temperature model will be used to measure the


temperature in the pipelines. This model is an advanced temperature model that takes
into account the full energy equation including the Joule-Thomson effect. This
approach enables the user to define an overall heat transfer coefficient that varies
along the length of the pipelines and considers complex fluids where the heat
capacities can no longer be assumed constant (i.e. CO2 or near critical fluids).

Then click 'EOS Model Set up' to access the general set up of the EOS model.
For this example the EOS options that will be used are:

EOS Model: Peng Robinson


Volume Shift: Yes
Allow Lumping: No. In this case we will use the original
full composition without lumping it in a smaller one with fewer components.
Reference Data for Standard conditions: 60 F and 0 psig
The path to Surface and Recycle: The fluid will be flashed through 2 separator
stages

1990-2012 Petroleum Experts Limited


899 GAP

GAP User Guide August, 2012


Examples Guide 900

Then Click on OK to accept the changes.

When using the Fully Compositional model the lumping/delumping


methodology should not be used. The lumping/delumping
methodology can only be used in conjunction with the Black Oil
Compositional Lumping/Delumping model.

Note that the options above are described in detail in the manual 154 .

This completes the system set-up and reinitialises the program.

3. Drawing the system


It is assumed that the user is familiar with the basics of GAP and is able to construct the network
(shown in the figure below) without further instructions. If help is required, please refer to any of
the previous examples 605 which provide step by step instructions of how to include the individual
elements that make up the system.

1990-2012 Petroleum Experts Limited


901 GAP

The exception of this example is the separator element. When the separator icon is
selected from the main GAP toolbar it will activate the following window.

GAP User Guide August, 2012


Examples Guide 902

Ensure that the LNG Process Plant 271 is selected as this will be used to model the process plant
and calculate the respective LNG and condensate rates. When linking the sources it is possible
to define the fluid line using the option highlighted below.

1990-2012 Petroleum Experts Limited


903 GAP

Note that when defining wells and reservoirs, by default they are considered to produce oil. As
we progress through the example we will correct each of the elements so that we are producing
the correct phase.

3.11.3.2 Define the Reservoir


To define the reservoir, the corresponding MBAL file will be associated to the tank in GAP. To
do that, double-click on the reservoir icon to activate the Tank Summary screen and 'Browse' for
the reservoir model reservoir_start.mbi, as shown below.

GAP User Guide August, 2012


Examples Guide 904

3.11.3.3 Setting up MBAL as compositional

In this section the existing MBAL model reservoir.mbi will be modified in order to have the PVT
defined as 'Fully Compositional.'

To do this we can open the MBAL file through GAP by accessing the tank system summary
screen and selecting 'Run MBAL' in the bottom hand corner of the window.

Once the MBAL file is open access 'Options' from the main tool bar and set the 'Compositional
Model' to 'Fully Compositional.'

1990-2012 Petroleum Experts Limited


905 GAP

Enter the 'EOS Model Setup' options and enter the same PVT information as was entered in
GAP.

GAP User Guide August, 2012


Examples Guide 906

Note that when linking a fully compositional MBAL model to GAP, MBAL will automatically use
the EOS settings defined in GAP as it is the master controller.
3.11.3.3.1 Entering compositional PVT Data
The next step is to import the equation of state (EOS) into MBAL. The EOS will be exported
from a pre-existing PVTP model (PVT model.pvi) as a .PRP file and imported in MBAL.

1990-2012 Petroleum Experts Limited


907 GAP

Open up the PVT model.pvi in PVTP located in the initial files folder. The PVTP file includes an
EOS that has already been matched (or characterised) to a PVT lab report. The initial
characterisation is the fundamental first step in constructing an integrated model and there are
step by step instructions for matching fluids in the PVTP manual that the engineer can refer to.

The EOS has been defined with 16 components and has been tuned using the Volume Shift
correction. From the main PVTP panel select 'View Properties' to view the composition and
component properties.

To export the EOS select File | Export from the main PVTP menu and then EOS Composition :

GAP User Guide August, 2012


Examples Guide 908

Save the .PRP file as PVT model.prp. The .prp file that is generated contains all of equation of
state properties shown above along with the fluid composition.

The next step is to then import the PVT file in MBAL. From the main toolbar in MBAL select
PVT | Fluid Properties which will activate the following window.

1990-2012 Petroleum Experts Limited


909 GAP

Select the 'Gas' tab and then 'Edit Compostion to import the .prp file as shown below.

GAP User Guide August, 2012


Examples Guide 910

The program will automatically load the EOS model that was built in PVTP, including the
separator train that defines the path to stock tank conditions.

Click on OK and ensure that all the other tabs have been validated.

1990-2012 Petroleum Experts Limited


911 GAP

Note: In the case shown above, the gas composition that has been entered
that the contains vaporised oil. When the fluid goes below the dew point, the
program will automatically determine the equilibrium oil composition, hence
there is no requirement to enter any oil PVT data.

In the Input | Tank data section enter an initial Oil leg equal to zero, as the reservoir is initially
above the dew point.

GAP User Guide August, 2012


Examples Guide 912

With no production history, no history matching can be carried out. This therefore completes the
set up of the tank model.

Select File | Save as and save the MBAL file as reservoir_final.mbi in a suitable directory. Then
click on GAP to return to GAP tank summary screen.

In GAP accept the change of file name:

1990-2012 Petroleum Experts Limited


913 GAP

At this stage the GAP file should be saved. To do this click on File | Save As from the main
toolbar and save the file as GAP Fully Compositional .gap.

3.11.3.4 Define the Wells


As with the previous models, we have already built the PROSPER models for all of the wells. The
PROSPER file associated with "Well1" has been constructed and documented in detail in the
PROSPER manual. Please refer to the PROSPER tutorials for more information on well modeling.

As in the previous examples we will define both the VLPs and the IPRs at the well level. To do
this we will use the "VLP/IPR intersection" model for all of the wells.

To enter the well data double click on the well icon to access the Well Summary screen. Then in
the summary screen enter the following information:

Label: W1

GAP User Guide August, 2012


Examples Guide 914

Mask: Include in System (default)


Well Type: Retrograde Condensate Producer
Model: VLP/IPR intersection
PROSPER file: Well1.OUT

PLEASE MAKE SURE THAT THE WELL TYPE IS DEFINED AS


"Retrograde Condensate Producer"

Complete all the wells according to the data provided in Table 1 667 .

Note that the well models have been defined using the black oil condensate PVT model in order
to save time. This is because in PROSPER there is the option to model the PVT of the
condensate as either fully compositional (EOS) or using black oil. In order to use the black oil
method it must be first validated against the results of the EOS method. Please refer to the
PROSPER manual for details about the validation steps.

1990-2012 Petroleum Experts Limited


915 GAP

3.11.3.4.1 Import EOS Composition in GAP


When the compositional PVT option is used, the fluid composition and EOS properties need to
be defined for each well and this is imported in the IPR section. These details are used to
calculate the fluid properties (i.e. density and viscosity) so that the pressure drop throughout the
network can be determined.

When running the model in prediction mode, the composition entered at the IPR level will be
updated with the one coming from the reservoir model (MBAL or other).

The fluid composition and EOS properties are part of the .PRP file which was exported from
PVTP and saved as PVT model.prp. There are two methods for importing the .PRP file into the
IPR section of each well:

Either by accessing the 'Composition' button in the well IPR Layer section (see figure below)
and importing the file directly as shown below.

Alternatively, access the Edit | Import Compositions from the main GAP toolbar and then select
all the wells and 'Import EOS Options'.

GAP User Guide August, 2012


Examples Guide 916

Selecting 'Continue' allows the user to recall the .PRP file previously exported from PVTP.

Once the EOS has been imported each well should be verified by checking the IPR layer and
confirming there is a composition entered.

1990-2012 Petroleum Experts Limited


917 GAP

3.11.3.4.2 Generate Well IPRs


Once all of the wells have been created and the associated PROSPER well models selected the
IPRs can be generated in GAP in a batch mode.

From the main GAP menu select Generate | Generate Well IPRs from PROSPER.

Then select All | Generate.

GAP User Guide August, 2012


Examples Guide 918

By double-clicking on any of the wells and selecting the 'IPR' tab, one can verify the IPR input
data as shown in the following screen shot:

Before leaving the IPR section, access the More tab screen and select the set of Rel
Perms for fractional flow prediction to be 'From Tank Model'. This is important to
determine the distribution of the different fluid phases (i.e. the WGR and GOR).

1990-2012 Petroleum Experts Limited


919 GAP

3.11.3.4.3 Import VLPs


In this example, the PROSPER and VLP files have already been constructed for the user. This
was done to save time in completing the exercise as it has been assumed that the user is
already familiar with the basics of the IPM Suite. For detailed information about the generation
of the VLPs please refer to previous examples 681 .

To import the VLP curves in GAP the files must be already generated. These are saved as .tpd
files and as part of this example have been included in the 'Initial Files folder.' To load these
files double click on well 'W1' and then select the VLP tab.

GAP User Guide August, 2012


Examples Guide 920

Select browse and then load the Well1.tpd file. The VLP section should then become green
which completes the input for the well description. Repeat this process and load the file for each
corresponding well.

3.11.3.5 Define the LNG Plant


To define the LNG Plant double-click on the element to activate the system summary screen and
select 'Plant Process' as shown below.

1990-2012 Petroleum Experts Limited


921 GAP

In this section we specify the overall composition of the fluid along with the fraction of the
components that will make up the produced LNG and Condensate. To import the composition
select 'Populate from PRP file' and import the PVT model file that was pre-generated in PVTP.
GAP will then use the composition that is associated with this .prp file.

Once the composition has been passed define the fraction of the components that will make up
the LNG, LPG (Fuel & Flare) and Condensate as shown below.

GAP User Guide August, 2012


Examples Guide 922

3.11.3.6 Define the Pipelines


Enter the pipeline data according to Table 2 894 and following the same steps as seen in
previous examples 861 .

1990-2012 Petroleum Experts Limited


923 GAP

In the 'Improved Approximation' method the user has the option to define a heat transfer
coefficient for each segment of pipe. If the the heat transfer coefficient varies along the pipe
length then this can be captured by adding multiple pipe segments within the pipe description.

To keep it simple, the pipelines are considered to be horizontal.


3.11.3.7 Setting the Well Controls
The wells can be made "controllable" (which means that the wellhead choke can be changed by
the optimiser) by:

Accessing the Controls 230 section in the well Summary screen and setting the dP Control to
'Calculated,' or
Right clicking on the well icon in the main GAP screen and selecting "Controllable."

The figure below shows the 'Controls' section in the well input area:

GAP User Guide August, 2012


Examples Guide 924

Ensure that all of the wells in the system are made controllable.

3.11.3.8 Set the Scheduling


The last step is to schedule the pressure in the LNG plant and the separators to change to 500
psig on 1/1/2010 (ref. previous example for details about entering Schedules 713 ):

LNG Plant Schedule

Separator Schedule

Water Schedule

1990-2012 Petroleum Experts Limited


925 GAP

The model is now complete and ready to run.

Save the model as GAP fully compositional.gap.

3.11.4 Solve Network


Once the model has been set up, the next step is to determine the total production from the
system when the wells are fully open and identify if there are any potential problems concerning
deposition of solids (hydrates or waxes). To do this we will use the 'Solve Network' feature.

From the main GAP menu select 'Solve Network' and enter a pressure of 1000 psig for each
separator. Click on 'Next' and set the calculation mode to 'No Optimisation' before selecting
'Calculate'.

Before inspecting the results, the user has the option to increase the amount of information that
is provided in the main fly-over by accessing the main menu and selecting View | Select Info
Displayed and enabling the viewing of compositions.

GAP User Guide August, 2012


Examples Guide 926

Pointing the cursor on the separator, it is possible to see that the wells fully open produce overall
around 2718 tonne/day of LNG and 2885 tonne/day of Condensate.

1990-2012 Petroleum Experts Limited


927 GAP

The results also show the composition in each point of the system.

GAP User Guide August, 2012


Examples Guide 928

3.11.4.1 Viewing the Detailed Compositional Results


Note that one can obtain the composition at any point in the system and if necessary extract that
composition and use it in other tools (like MBAL, PROSPER or PVTP).

To access the details of the composition:

Double click on the desired element (for example, in this case well 'W1')
Access the 'Results' section, scroll all the way to the right hand side and select 'Composition
View':

This will display the composition results for the fluid flowing through that given element.

Note that the EOS can be exported from by selecting 'Export...PRP'. The .
prp file that is generated can then be used in other tools within the IPM Suite
.

The same results can also be obtained from the main GAP toolbar by selecting Results |
Detailed | All Separators or Injection Manifolds.

To understand if there is a possibility of solids deposition throughout any of the pipelines in the
system then view the composition of each pipeline as shown above (for example the pipeline
that is defined between the joints 'Manifold' and 'Top') and from the 'View Composition' screen
select 'Phase Env...' and then 'Calculate Hydrate...Wax'.

1990-2012 Petroleum Experts Limited


929 GAP

Selecting 'Plot' then enables the user to see the pipeline pressure and temperature profile
relative to the hydrate formation curve.

GAP User Guide August, 2012


Examples Guide 930

The green curve on the plot represents the pipeline P vs T profile.

From the plot we can confirm that hydrate or wax formation is unlikely to be an issue in the this
flowline at these conditions.

Note that it is possible to model the effect of including different inhibitors and gain an
understanding of how hydrates can be prevented in the system.

3.11.5 Running the Prediction


One of the requirements of the model is to be able to capture the evolution of C1 and C2 during
5 years of production considering changes in the separator pressure.

To run the prediction select Prediction | Run Prediction from the main GAP menu and then enter
the following information:

Start Date: 01/01/2007


End Date: 01/01/2012
Step Sise: 2 Month

1990-2012 Petroleum Experts Limited


931 GAP

Select Next | Next and enter a pressures of 1000psig. Select | Next and then set the prediction
mode to 'No Optimisation' and then 'Calculate':

GAP User Guide August, 2012


Examples Guide 932

Once the prediction is completed take note of the CPU time (this will vary from machine to
machine) and save the prediction results. To save the prediction results select Prediction | Save
Prediction Results As...

1990-2012 Petroleum Experts Limited


933 GAP

GAP User Guide August, 2012


Examples Guide 934

3.11.5.1 Viewing the Detailed Compositional Results


From main GAP menu select Prediction | Plot Nodes Prediction Results as shown below and
plot the LNG Plant results.

Click on plot, and then view the LNG and condensate rates along with the GOR for the fully
compositional prediction as shown below.

1990-2012 Petroleum Experts Limited


935 GAP

The plot shows that the LNG/condensate rates decline with the time and at the beginning of
2010 there is sharp increase in production due to the sudden reduction of the LNG Plant
pressure. It is interesting to see that the GOR is initially constant as the reservoir pressure is
above the dew point, until it begins to increase midway through 2007 as the reservoir pressure
decreases below the dew point.

From the same plot it is possible to plot the evolution of methane.

GAP User Guide August, 2012


Examples Guide 936

The profiles of ethane and propane can also be plotted in the same way.

1990-2012 Petroleum Experts Limited


937 GAP

In the case of the propane it is interesting to note that the produced C3 decreases due to the
fact that it has condensed in the form of liquid in the reservoir. Consequently, the produced gas
becomes lighter due to the higher relative methane content.

GAP User Guide August, 2012


Examples Guide 938

This can be verified by inspecting the composition of the fluid in the reservoir. To access the
reservoir composition double click on the reservoir element and go to the prediction results.
Within this window select 'Load MBAL Results' which will provide the full detailed results of the
prediction that are associated with the MBAL model.

1990-2012 Petroleum Experts Limited


939 GAP

This step automatically loads the associated MBAL file and the results are stored in Production
Prediction | Run Prediction which is on the main toolbar. Plotting the propane demonstrates the
relative increase of propane in the reservoir as the liquid is dropping out.

The next step is to confirm whether or not there is any risk of hydrates forming in the pipelines as
the fluid is produced to the LNG plant. To do this inspect the pipeline results by double-clicking
on one of the pipeline elements (for example 'Manifold to Top') to activate the system summary
screen.

GAP User Guide August, 2012


Examples Guide 940

The 'Status' column will provide a warning regarding the risk of hydrates and based on the
results of the prediction it is clear that there is a risk of hydrate formation in several of the flow
lines.

In order to compare the pipeline conditions relative to the hydrate formation curves we can
select a date (01/01/2012) and then 'View' as shown below. From the 'View Composition form
select 'Phase Env...' and then 'Calculate Hydrate...Wax' to generate the curves.

1990-2012 Petroleum Experts Limited


941 GAP

The results show that the pipeline conditions, which are represented by the green line, are falling
on the other side of the hydrate formation curve which indicates the likelihood of hydrates
forming.

GAP User Guide August, 2012


Examples Guide 942

We can take this study even further and determine which mole percentage of inhibitor would be
required to prevent the hydrates from forming? To do this select the 'Water Composition' and
enter 10 % of methanol into the stream.

1990-2012 Petroleum Experts Limited


943 GAP

Re-calculate the hydrate curve and plot the results.

GAP User Guide August, 2012


Examples Guide 944

The inclusion of 10 % methanol removes the risk of hydrates however there is still the possibility
of wax formation which needs to be addressed. One solution could be to insulate the pipelines
(modify the heat transfer coefficient) which could also be easily captured in the GAP model.

It is possible to re-run the prediction with the inhibitor included to asses the impact on hydrate
formation throughout the field life. To do this select Options | Method from the main GAP menu.

1990-2012 Petroleum Experts Limited


945 GAP

In the 'EOS Model Setup' select the 'Water Composition' button.

Enter the methanol concentration in the Inhibitors section as shown below.

GAP User Guide August, 2012


Examples Guide 946

Note that it also possible to account for the inhibition effects of the produced brine.

Re-running the forecast and it is possible to confirm that the methanol will prevent the formation
of hydrates in the flowline.

1990-2012 Petroleum Experts Limited


947 GAP

To summarise, this example demonstrates the advanced temperature models and PVT
capabilities within GAP which enables the engineer to accurately perform flow assurance
studies on fields producing very complex fluids. The underlying hydrate models are well
documented in the PVTP manual and it is recommended for the user to consult this for a more
thorough background of the theory behind the models.

Save the model as GAP Fully Compositional.gap.

GAP User Guide August, 2012


Examples Guide 948

3.12 Example 9b - LNG (Black Oil Compositional


Lumping-Delumping)

3.12.1 Objectives
Definition of the Problem
In the case of the system described in the previous example 893 it is still required to know the
composition of the produced fluid at any given point in time. However, instead of using the Fully
Compositional PVT method which is computationally intensive, to reduce the run time (but still
making sure to use a realistic PVT model) it is suggested to use the Black Oil compositional
Lumping/Delumping 174 method which is one of the advanced PVT options available in GAP.

The requirements of the model are:

To determine the composition (EOS) any location in the network at any given point in time.
To ensure that the black oil model is consistent with the EOS composition at any given point
in time.
To reduce the run time in comparison to running the model using the EOS.

In order to illustrate the validity of the approach, a prediction will be carried out under the same
conditions as the previous example 893 .

Learning Topics
The objectives for this example are to learn in more detail how to:
Set the GAP model to work with Black Oil compositional lumping/de-lumping.
Compare the results obtained using Black Oil compositional Lumping/Delumping and
Fully Compositional.

Executive Summary
The starting point is the model 895 built in the previous example.
The steps to follow will be to:
1. Set the GAP model up to work with the Black Oil compositional Lumping/De-
lumping and to use the full composition.
2. Run 'Solve Network' (no optimisation) to determine the actual production for the
current network status.
3. Run the prediction in GAP and check the results.

Note that in this example MBAL is run Fully compositional.

The completed model can be found in the directory:


~\samples\GAP\Example 9b - LNG (BO Compositiona Lumping-Delumping)
Extract 600 the archive file in the 'Completed' folder of Example 9a to an
appropriate directory

1990-2012 Petroleum Experts Limited


949 GAP

3.12.2 Data Available


The data available for this example can be found in the archive Gap Fully Compositional.gar
which is located in the folder ~\samples\GAP\Example 9a - LNG (Fully Compositional).

3.12.3 Set up GAP as Black Oil compositional Lumping/Delumping


Extract the GAP fully compositional.gar file.

Switch the model to Black Oil Compositional Lumping/Delumping by accessing Options |


Method from the main menu and select the required PVT model:

GAP User Guide August, 2012


Examples Guide 950

In the case of this example no lumping/delumping is being carried out. The full composition is
going to be used to determine the equivalent black oil model, which will then in turn be used for
the network pressure drop calculations.

1990-2012 Petroleum Experts Limited


951 GAP

Note that in the EOS Model Setup options it is possible to enable the Lumping options (in case

GAP User Guide August, 2012


Examples Guide 952

a pair of associated lumped/de-lumped compositions is available, see further 959 ).

In the well IPR section, it is possible to verify that the Fluid Properties (Black Oil properties) have
been determined on the basis of the EOS present in the Composition section.

Note that in this example the MBAL model is still run Fully
compositional.

3.12.4 Running the Prediction


Run the prediction as in the previous example 930 .

1990-2012 Petroleum Experts Limited


953 GAP

Once the prediction is completed take note of the CPU time (this will vary from machine to
machine) and save the prediction results. Comparing the CPU time with the previous example
shows a reduction in the calculation time of approximately 50%.

To save the prediction results select Prediction | Save Prediction Results As...

GAP User Guide August, 2012


Examples Guide 954

3.12.4.1 Prediction and viewing the results


From main GAP menu select Prediction | Plot Nodes Prediction Results as shown below and
plot the LNG Plant results.

1990-2012 Petroleum Experts Limited


955 GAP

Click on plot, and then view the LNG and Condensate Rates along with the GOR for the Fully
Compositional and BO Compositional Lumping/Delumping predictions as shown below.

The plot shows that the LNG/Condensate rates and the GOR calculated by the BO
Compositional Lumping Delumping method are practically identical to the results of the fully

GAP User Guide August, 2012


Examples Guide 956

compositional run.

From the same plot it is possible to compare the evolution of methane using both methods.

The results indicate that the BO Compositional Lumping/Delumping method captures the
evolution of methane to within a fraction of the fully compositional method.

The same steps can be repeated for Ethane

1990-2012 Petroleum Experts Limited


957 GAP

And Propane

GAP User Guide August, 2012


Examples Guide 958

Reinforcing the validity of the BO Compositional Lumping/Delumping method.

In summary the BO Compositional Lumping/Delumping method significantly reduces the


calculation time without sacrificing accuracy in the model.

Save the model as GAP BO_COMP_Lumping_delumping.gap

1990-2012 Petroleum Experts Limited


959 GAP

3.12.5 Black Oil - Lumping/Delumping


When working in Black Oil compositional Lumping/Delumping mode, it is possible to allow
Lumping and then import a pair of lumped/de-lumped compositions, and then to choose which
composition to choose to use to generate the black oil model.

Setting up the model with lumping/delumping is straight forward.

In the main GAP PVT options enable the use of Lumping.

Then import into MBAL and GAP the .prp file containing the lumped and de-lumped
compositions.

For information about creating a lumped composition from a full composition please consult the
PVTP manual.

GAP User Guide August, 2012


Examples Guide 960

3.13 Example 10 - Tight Gas

3.13.1 Objectives
Definition of the Problem
A tight gas field development is made up of two main well clusters which are currently in
operation (See figure below). The two clusters are linked by a flowline so that the gas can be
transported from Sector A to Sector B. There are plans to commence an intensive drilling
schedule which will bring online more well clusters in the near future.

At present it is required to model Sector A to determine the present (01/01/2008) gas


production from this area of the field based on the measurements given from the metering
station.

Additionally, a proposal has been put forward suggesting the installation of a compressor at the
same location as the metering station. The compressor details are available and the intention is

1990-2012 Petroleum Experts Limited


961 GAP

to determine the gain in production and understand whether or not the proposed development is
justified.

Learning Topics
The objectives for this example are to learn how to:
Set-up a GAP sector model for a tight gas field.
Create partial GAP files
Importing partial GAP files
Solving the network
Equipment bypassing

Executive Summary
The steps followed will be:
1. Build the GAP network
- Draw the GAP network
- Define tight gas wells in GAP
- Generate well IPRs in GAP using MBAL
- Generate well VLPs in GAP using PROSPER
- Define the pipelines

2. Solve the network


3. Create partial GAP file
4. Import partial GAP file
5. Solve the network including the compressor
6. Solve the network bypassing the compressor

The files for this example and the final model can be found in the GAP
archive file format in the following directory.
~\samples\GAP\Example 10 - Tight Gas Field\Gas Field.gar
Extract 600 the archive file from the Initial Files folder

3.13.2 Data Available


Description of the pipelines

Label Pipe Pipe Upstrea Downstrea Overall Heat Multiphase Correlation


segme ID m TVD m TVD Transfer
nt Coefficient
Length
ft Inche ft ft Btu/h/ft2/F -
s
WH2_A to Manifold A2 700 2.743 0 0 3 Petroleum Experts 5

GAP User Guide August, 2012


Examples Guide 962

WH3_A to Manifold A1 200 2.743 0 0 3 Petroleum Experts 5


WH4_A to Manifold A2 750 2.743 0 0 3 Petroleum Experts 5
WH5_A to Manifold A1 1000 2.743 0 0 3 Petroleum Experts 5
WH6_A to P_in 500 2.743 0 0 3 Petroleum Experts 5
Manifold A1 to Manifold A2 1500 4 0 0 3 Petroleum Experts 5
Manifold A2 to Manifold A3 500 4 0 0 3 Petroleum Experts 5
Manifold A3 to Manifold P_in 1150 4 0 0 3 Petroleum Experts 5

Table 1 Pipeline description

Description of the reservoirs

MBAL File Estimated GIIP


- MMscf
Well1A.mbi 9105.57
Well2A.mbi 4725.45
Well3A.mbi 5589.71
Well4A.mbi 4572.39
Well5A.mbi 2151.03
Well6A.mbi 5910.2
Table 2 Reservoir data

Description of the wells

The file names corresponding to each well are shown in the table below.
Well Name PROSPER File

Well1A Well1A.OUT
Well2A Well2A.OUT
Well3A Well3A.OUT
Well4A Well4A.OUT
Well5A Well5A.OUT
Well6A Well6A.OUT
Table 3 Wells data

Well Production History

The well production history's are provided in an Excel worksheet called 'Well Production Data'.

1990-2012 Petroleum Experts Limited


963 GAP

Sector B Model

A pre-constructed GAP model of Sector B is provided in the Sector B.gar file. Extract the
model before starting the exercise.
3.13.3 Build the Sector model
This section can be used as a general step-by-step procedure to build any GAP model. The
following sketch will be used as a reference.

3.13.3.1 Draw the GAP Network


1. Getting Started
Begin by starting the program.
From the GAP entry screen, select File| New to reinitialise GAP.

2. Defining the Global System Option


To begin setting up the system options, select Options | Method and make the following
selections:

System Type : Production


Optimisation Method : Production
PVT Model : Black Oil
Prediction: On
Prediction Method: Pressure and temperature
Wax or Hydrate Warning: On
Water Vapour: No Calculations

GAP User Guide August, 2012


Examples Guide 964

Temperature Model: Rough Approximation


Calculate Well Choke Delta T: Off

3. Drawing the System


It is assumed that the user is familiar with the basics of GAP and is able to construct the network
(shown in the figure below) without further instructions. If help is required, please refer to any of
the previous examples 605 which provide step by step instructions of how to include the individual
elements that make up the system.

1990-2012 Petroleum Experts Limited


965 GAP

Note that when defining wells and reservoirs, by default they are considered to produce oil. As
we progress through the example we will correct each of the elements so that we are producing
the correct phase.

The separator element in GAP does not need to represent a physical separator in
the field. It can be used to model a fixed pressure point in the system which in
this case is the metering point. Although the pressure at the metering point may
float in reality it is still possible to model the performance of the well cluster
assuming a fixed pressure. To capture the change in pressure at the metering
station requires the equipment downstream of the meter to be modelled.

3.13.3.2 Define the Wells


As with the previous models, we have already built the PROSPER models for all of the wells. For
tight gas wells the PROSPER file is used to model the VLP section of the well and follows the
same approach that is used for constructing a normal gas well. The IPR section, which by
definition assumes that the well is flowing under state state conditions and is not applicable to
tight gas reservoirs, is not captured in PROSPER.

As in the previous examples we will define both the VLPs and the IPRs at the well level. To do
this we will use the "VLP/IPR intersection" model for all of the wells.

To enter the well data double click on the well icon to access the Well Summary screen. Then in
the summary screen enter the following information:

Label: Well1A

GAP User Guide August, 2012


Examples Guide 966

Mask: Include in System (default)


Well Type: Gas Producer
Model: VLP/IPR intersection
PROSPER file: Well1A.OUT

PLEASE MAKE SURE THAT THE WELL TYPE IS DEFINED AS "Gas


Producer" and the Tight Gas option is ticked.

Complete all the wells according to the data provided in Table 1 961 .

3.13.3.2.1 Generate transient IPR Data


In the case of a tight gas the flow is transient therefore the conventional material balance
techniques for modelling the reservoir are not valid. Instead the wells are modelled using type
curves, an additional feature available in MBAL, which allows a transient IPR to be calculated

1990-2012 Petroleum Experts Limited


967 GAP

based on the well history, the PVT and a model (i.e. type curve for a bounded fractured
reservoir) which has been characterised in MBAL. For details about type curves analysis and
how the reservoir characteristics are determined it is recommended to consult the MBAL
tutorials.

Activate the well IPR screen for well1A and load the associated MBAL file using the 'Browse'
option.

Once the file is linked select 'From MBAL' and then transfer the IPR data as shown in the below.

GAP User Guide August, 2012


Examples Guide 968

The information will then be transferred directly from MBAL and updated in the IPR screen. The
next step is to update the current date, which is 01/01/2008, as the objective is to determine the
production of the group of wells that make up Sector A.

1990-2012 Petroleum Experts Limited


969 GAP

Note that there is now the functionality to include to include any PD vs. TD function to describe the
well and reservoir geometry in a tight gas system.

GAP User Guide August, 2012


Examples Guide 970

This function can be generated through the applications in REVEAL and RESOLVE that allows
for complex well geometry (horizontal or deviated wells) with multiple fractures to be handled in
the system. These pseudo PD functions can also be generated in an external application and
then imported into the IPM suite for full integrated modelling.

Lastly, copy and paste the production history from the Excel worksheet into the 'Prod Data tab.'

1990-2012 Petroleum Experts Limited


971 GAP

Repeat this procedure for all of the wells in the system.

3.13.3.2.2 Import VLPs


In this example, the PROSPER and VLP files have already been constructed for the user. This
was done to save time in completing the exercise as it has been assumed that the user is
already familiar with the basics of the IPM Suite. For detailed information about the generation
of the VLPs please refer to previous examples 681 .

To import the VLP curves in GAP the files must be already generated. These are saved as .tpd
files and as part of this example have been included in the 'Initial Files folder'. To load these
files double click on Well1A and then select the VLP tab.

GAP User Guide August, 2012


Examples Guide 972

Select browse and then load the Well1A.tpd file. The VLP section should then become green
which completes the input for the well description. Repeat this process and load the file for each
corresponding well.

3.13.3.3 Define the Pipelines


Enter the pipeline data according to Table 2 961 and following the same steps as seen in
previous examples 861 .

1990-2012 Petroleum Experts Limited


973 GAP

Once the pipelines are defined the model is complete and ready to run.

Save the model as Sector A.gap.

3.13.4 Solve Network (Sector Model)


Once the model has been set up, the next step is to determine the total production from the
system when the wells are fully open based on the current measured pressure at the metering
station which is 200 psig. To do this we will use the 'Solve Network' feature.

From the main GAP menu select 'Solve Network', enter a pressure 200 psig and the current
time (01/01/2008). Click on 'Next' and set the calculation mode to 'No Optimisation' before
selecting 'Calculate'.

GAP User Guide August, 2012


Examples Guide 974

Pointing the cursor on the separator element, it is possible to see that the wells fully open
produce approximately 11.3 MMscf/d

3.13.5 Build the Full Model


The Sector A model represents a well cluster however we wish to import this model into another
GAP model which captures the full field and evaluate the possibility of installing a compressor
station. To do this requires a partial GAP file to be created which will then be imported into the

1990-2012 Petroleum Experts Limited


975 GAP

main model which has already been constructed.


3.13.5.1 Create Partial GAP file
To create the partial GAP file we must first select the elements in the model that are going to be
part of the file. This can be done using the icon which can be found on the main toolbar.
Select the icons as illustrated in the figure below.

Do not include the separator element as part of the partial GAP file.

From the main GAP menu select Edit | Selected Items | Extract to partial GAP File (.gpp) and
save the file as 'Sector A', save and then close the model.
3.13.5.2 Import Partial GAP file
Open the Sector B.gap file.

GAP User Guide August, 2012


Examples Guide 976

The .gpp file is going to be imported into a flowsheet 442 . The flowsheet elements are very useful
for managing potentially large models as it allows smaller parts of the network to be embedded
into separate subscreens. To include a flowsheet select the icon from the main toolbar and
then place it directly above the 'greyed-out' compressor icon.

Double-click on the flowsheet and then maximise the new window that is provided. Place the
cursor within the new window, right-click and the choose the option 'Insert GAP Partial file (.
gpp)'. Insert the Sector A.gpp file and then select View | Normalise equipment icon positions
which will re-arrange the layout of the icons so that they can all be viewed within the window.

1990-2012 Petroleum Experts Limited


977 GAP

The next step is to define the node in the system that will be the flowsheet port. This can be
done by accessing the system summary screen or by right-clicking on the joint 'P_in' and
selecting 'Flowsheet Port'.

This will now allow the flowsheet to be linked to Sector B which is the full system.

GAP User Guide August, 2012


Examples Guide 978

In the main production network the flowsheet, which captures an entire sub-network, is
represented by a simple element. It is also possible to have a flowsheet within another
flowsheet adding additional sub levels to manage larger models.

Save the model as Sector B Final.gap.

3.13.6 Solve Network (Full Model)


Once the model has been set up, the next step is to determine the total production from the
system excluding and including a compressor. To do this we will use the 'Solve Network' feature
to solve the two different cases.

Note that it has been assumed that the compressor model has already been built. For details of
compressor modelling in GAP please consult the Examples 871 .

3.13.6.1 Including the Compressor


The first case that will be considered includes the compressor.

1990-2012 Petroleum Experts Limited


979 GAP

From the main GAP menu select 'Solve Network', enter a pressure of 250 psig at the gathering
station and enter the current date (01/01/2008). Click on 'Next' and set the calculation mode to
'No Optimisation' before selecting 'Calculate'.

The gas rate at the gathering station with the compressor is approximately 19.95MMscf/D.

GAP User Guide August, 2012


Examples Guide 980

3.13.6.2 Bypassing the Compressor


The second case to consider is without the compressor. To do this it is possible to 'bypass' the
compressor element which effectively ignores the element in the network calculation.

Note that when an element is bypassed it is 'greyed out' in the system.

Repeat the 'Solve Network' calculation and compare the gas rates at the gathering station.

1990-2012 Petroleum Experts Limited


981 GAP

From the results it can be confirmed that the gas production is 19.69MMscf/D and that there is a
benefit of roughly 0.3MMscf/d including the proposed compressor on the current date.

Further analysis could be carried out, for example running forecasts, to asses the economic
impact of installing the compressor over a period of time. Additionally, if we analyse the
detailed results of the compressor it is possible to compare the pressure differential across the
compressor (which is related to the physical compressor itself) and the deliverability of the
Sector A wells.

For example, the impact of the compressor is to reduce the pressure at 'P_in' to approximately
100 psig. If the response of the system was something like the relationship below then there
would be little gain in reducing the P_in with a compressor as the increase in the gas production
does not justify it.

GAP User Guide August, 2012


Examples Guide 982

If we revert back to the original Sector A model and solve the network for a range of different
fixed pressures at P_in (e.g. from 50 psig - 100 psig) it is possible to establish if the production
is driven by the type of compressor or the potential of the wells. To do this, open Sector A.gap
and select Solve Network | Run Network Solver from the main menu. Enter the following
manifold pressures which will be applied at P_in and the current date (01/01/2008)

In the previous examples only one manifold pressure was entered. However it is
possible to solve the network for a range of different manifold pressures and
conduct a sensitivity study.

1990-2012 Petroleum Experts Limited


983 GAP

Select Next | Calculate.

Double-click on the separator icon and inspect the Network Results.

In this case, we can see that Sector A is limited by the productivity of the wells and that including
a separator at this location is not particularly beneficial. In summary, this example demonstrates
that GAP provides the engineer with capability to understand the interacting physics in a tight
gas system and assist in development decisions regarding compressor installations.

GAP User Guide August, 2012


Examples Guide 984

3.14 Example 11 - Coal Bed Methane

3.14.1 Objectives
Definition of the Problem
A coal bed methane (CBM) field with two wells producing from the same coal seam is to be
analysed. Initially, both wells will de-water the reservoir via electrical submersible pumps (ESPs)
producing the gas and water via two separate lines. After 4 years (on 01/01/2013), the pumps
will be pulled and replaced with a tubing and a packer and the commingled fluids will be
produced through the same lines for the remainder of the forecast.

The objective is to understand the overall system response due to the proposed workovers.

Learning Topics
The objectives of this example are to learn how to:
Set-up a GAP model for a CBM field.

1990-2012 Petroleum Experts Limited


985 GAP

Use scheduling to simulate a workover


Run predictions

Executive Summary
The steps followed will be:
1. Build the GAP network
- Draw the GAP network
- Define CBM wells in GAP
- Generate well IPRs in GAP using PROSPER
- Generate well VLPs in GAP using PROSPER
- Define the pipelines

2. Set up the scheduling


3. Run predictions

The files for this example and the final model can be found in the GAP
archive file format in the following directory.
~\samples\GAP\Example 11 - CBM Field
Extract 600 the archive file from the Initial Files folder

3.14.2 Data Available


Description of the pipelines
Label Pipe Pipe ID Upstrea Downstre Overall Heat Multiphase Correlation
segme m TVD am TVD Transfer
nt Coefficient
Length
m Inches ft ft Btu/h/ft2/F -

Line 1 300 4 0 0 3 Petroleum Experts 5

Line 2 200 4 0 0 3 Petroleum Experts 5


Table 1 Pipeline description

Description of the reservoirs


Tank Name History Start - End GIIP MBAL File
(dd/mm/yyyy) MMscf -

CBM Res No History 26581 CBM Reservoir.mbi


Table 2 Reservoir data

Description of the wells

The file names corresponding to each well are shown in the table below.

GAP User Guide August, 2012


Examples Guide 986

Well Name PROSPER File VLP File (with Pump) VLP File (No Pump)

Well1 Well 1.OUT Well 1.vlp Well 1_NoPump.vlp


Well2 Well 2.OUT Well 2.vlp Well 2_NoPump.vlp
Table 3 Wells data

3.14.3 Build the GAP Model


This section can be used as a general step-by-step procedure to build any GAP model. The
following sketch will be used as a reference.

3.14.3.1 Draw the GAP Network


1. Getting Started
Begin by starting the program.

From the GAP entry screen, select File | New to reinitialise GAP.

2. Defining the global system option

1990-2012 Petroleum Experts Limited


987 GAP

To begin setting up the system options, select Options | Method and make the following
selections:

System Type : Production


Optimisation Method : Production
PVT Model : Black oil
Prediction: On
Prediction Method: Pressure and temperature
Water Vapour: No Calculations
Temperature Model: Rough Approximation
Calculate Well Choke Delta T: Off

GAP User Guide August, 2012


Examples Guide 988

Then Click on OK to accept the changes.

This completes the system set-up and reinitialises the program.

3. Drawing the system


It is assumed that the user is familiar with the basics of GAP and is able to construct the network
(shown in the figure below) without further instructions. If help is required, please refer to any of
the previous examples 605 which provide step by step instructions of how to include the individual
elements that make up the system.

Note that when defining wells and reservoirs, by default they are considered to produce oil. As
we progress through the example we will correct each of the elements so that we are producing
the correct phase.

3.14.3.2 Define the Reservoir


To define the reservoir, the corresponding MBAL file will be associated to the tank in GAP. To
do this, double-click on the reservoir icon to activate the 'Tank Summary' screen and 'Browse'
for the MBAL file , CBM Reservoir.mbi as shown below.

1990-2012 Petroleum Experts Limited


989 GAP

3.14.3.3 Define CBM Wells


As with the tank models, we have already built the PROSPER models for all of the wells. The
PROSPER file associated with "Well1" has been constructed and documented in detail in the
PROSPER manual. Please refer to the PROSPER tutorials for more information on the well
modeling.

To enter the well data double click on the well icon to access the 'Well Summary' screen. Then
in the summary screen enter the following information:

Label: Well1
Mask: Include in System (default)
Well Type: CBM Water Producer (ESP Lifted)
Model: VLP/IPR intersection
PROSPER file: Well 1.OUT

GAP User Guide August, 2012


Examples Guide 990

Complete all the wells according to the data provided in Table 3 985 .

PLEASE MAKE SURE THAT THE WELL TYPE IS DEFINED AS "CBM


Water Producer (ESP Lifted)"

1990-2012 Petroleum Experts Limited


991 GAP

3.14.3.4 Define the Routing Links


Once the wells have been defined the main network should appear as shown in the figure below.

The CBM wells have two connection elements, the tubing (blue) outflow and the annular (red)
outflow elements. The objective is to initially produce the water and gas separately via different
lines while the well is under artificial lift (See Figure 984 ). After six years (01/01/2013) the tubing
will be pulled, the ESPs are removed, and the flow will be redirected so that the water and gas is
produced up the tubing and through the same line.

The change in the pressure drops between the sand face and the well head, as a consequence
of removing the pump, will be captured in a new set of VLPs. In order to capture the re-routing of
the fluid paths beyond the wellhead we will take advantage of the links and the scheduling
features within GAP.

The first step is to create the dimensionless links between tubing/annular outflow elements and
the main flow lines. Use the figure the below as guidance:

GAP User Guide August, 2012


Examples Guide 992

The dimensionless links, without an associated label in the figure above, will not be given a
pipeline description and hence there will be no pressure drops calculated across these
elements. However we can use these links in order to modify the fluid path by masking these
lines in different configurations.

Initially, in order to model the fluid being produced through the separate flowlines, the line
between the Gas Joint and the tubing (blue) outflow of Well 1 should be masked. This can be
done using the icon from the main GAP tool bar.

1990-2012 Petroleum Experts Limited


993 GAP

In order to switch the flow so that the water is routed to the same flowline as the gas then we can
use the Scheduling. Double-click on the masked flow line to activate the system summary
screen and select 'Schedule'. Enter the 01/01/2013 into the date section and then select
'Unmask' from the Event Type column.

GAP User Guide August, 2012


Examples Guide 994

Similarly, for the flowline that links the tubing (blue) outflow of Well 1 to the Water joint, schedule
the line to be masked on the 01/01/2013.

The model should now look like the figure displayed below.

The two small clocks beside each pipe element indicates that scheduling has been applied.

1990-2012 Petroleum Experts Limited


995 GAP

3.14.3.5 Define the Pipelines


Enter the pipeline data according to Table 2 985 and following the same steps as seen in
previous examples 861 .

3.14.3.6 Generate Well IPRs


After all of the wells have been created and the associated PROSPER well models selected, the
IPRs can be generated in GAP in a batch mode.

From the main GAP menu select Generate | Generate Well IPRs from PROSPER.

Then select All | Generate.

GAP User Guide August, 2012


Examples Guide 996

By double-clicking on any of the wells and selecting the IPR tab, one can verify the IPR input data
as shown in the following screen shot:

Selecting the 'More' tab, it can be confirmed that the fractional flow curves have been transferred
directly from PROSPER. This can be further verified by selecting 'Run PROSPER' from the main
summary screen and inspecting the PROSPER file directly.

1990-2012 Petroleum Experts Limited


997 GAP

3.14.3.7 Generate Well VLPs


To import the VLP curves in GAP (ref. VLP generation 466 ) the user can either:

Access the VLP section in the well input area and 'Browse' for the VLP file that has been pre-
generated for this example (this is the fastest approach as no calculations are necessary

GAP User Guide August, 2012


Examples Guide 998

however in practice the VLPs will always need to be generated), or

Generate the VLPs by accessing the menu Generate | Generate Well VLPs with PROSPER.
In this case a range of values need to be entered and as the wells are ESP lifted CBM wells
then the pump frequency, GLR and liquid level must also be included.

When VLPs are generated for artificial wells there are a factor of 10 more
calculations to be performed (10,000 VLPs will be generated instead of 1,000) in
comparison to naturally flowing wells. Therefore the time taken to generate
VLPs will be considerably greater.

For the case of CBM wells the liquid level in the casing must also be entered so that we can
determine the casing pressure. For more details of CBM well modelling it is recommended to
consult the PROSPER manual.

As the second method has been widely demonstrated in previous examples 681 , and the VLP
curves have already been generated, we will adopt the first approach.

To import the VLPs, access the VLP section of the Well system summary screen and 'Browse'
for the corresponding .vlp file according to Table 1 985 :

1990-2012 Petroleum Experts Limited


999 GAP

Do not use the ~NoPump.vlp files as these will be used in the scheduling

Select 'Inspect' and then 'Plot' to verify the quality of the curves.

When the user is generating VLP's for for an ESP lifted well care must be taken to
ensure that the range of GLR's used are physical and representative of the pump. This

GAP User Guide August, 2012


Examples Guide 1000

is because an increasing GLR (assuming a separator efficiency less than 100%) will
tend to reduce the inlet pressure of the pump for a given head. Therefore it is possible
to define a set of conditions that will calculate very low pump inlet pressures (and hence
bottom hole pressures) which are not physical. To ensure that this has not been done
simply inspect the VLPs and make sure that the bottom hole pressures are not 0psig (or
unrealistically low). An alternative approach is to check the calculated casing pressures.
If the conditions are non-physical then the calculated casing pressures will also be
unrealistically low (continue to the Interpret Results 1003 section to understand how to
visualise this variable).

3.14.3.8 Set the Scheduling for the Wells


The objective is to initially produce the water and gas separately via different lines while the well
is under artificial lift (See Figure 984 ). After six years (01/01/2013) the tubing will be pulled, the
ESPs are removed, and the flow will be redirected so that the water and gas is produced up the
tubing and through the same line.

The change in the pressure drops between the sand face and the well head, as a consequence
of removing the pump, have to be captured in a new set of VLPs. To implement this in the GAP
model we will schedule the VLP file of the well to change on 01/01/2013. The new VLP file will
capture the pressure drop in the well without the ESP included which will simulate the proposed
workover.

To implement the scheduling double-click on Well 1 to activate the system summary screen and
select 'Schedule'. Select the event to change the VLP file and then select the file Well
1_NoPump.vlp as illustrated in the figure below.

1990-2012 Petroleum Experts Limited


1001 GAP

This VLP file was generated by modifying the separator efficiency of the pump in the PROSPER
file to 0% and setting the operating frequency to 1Hz.

These changes ensure that no head is provided by the pump and simulates the well response if
all the fluids (gas and water) are being produced through the tubing which is consistent with the
workover.

Repeat the process for Well 2.


3.14.3.9 Set the Well Controls
To set the well control of the CBM (ESP lifted) wells, double-click on the Well 1 to activate the
system summary screen.

GAP User Guide August, 2012


Examples Guide 1002

Select the 'Control' tab and then set the dP Control to 'None' and the Control Mode to a 'Fixed
value' of 50Hz. Additionally, set the liquid level in the casing to 2000ft.

This will ensure that the ESP is operating at a fixed frequency of 50Hz and that the well head
choke is fully open. Repeat this for Well 2.

The model is now complete and ready to run.

Save the model as CBM Field.gap.


3.14.3.10 Run Prediction
To run the prediction select Prediction | Run Prediction from the main GAP menu and then enter
the following information:

Start Date: 01/01/2009


End Date: 01/01/2025
Step Sise: 3 Months

1990-2012 Petroleum Experts Limited


1003 GAP

Select Next | Next and enter a separator pressure of 100 and 100psig for Sep1 and Sep2
respectively.

Select | Next and then set the prediction Mode to 'No Optimisation' and then 'Calculate.'

3.14.3.10.1 Interpret the Results


To visualise the results select Prediction | Plot Nodes Prediction Results.

GAP User Guide August, 2012


Examples Guide 1004

Select both of the separators from the 'Equipment Type' and plot the gas and water rates for
each separator.

1990-2012 Petroleum Experts Limited


1005 GAP

The plots show that on 01/01/2013, when the workover takes place, that production from Sep 2
stops as the fluid is re-routed to the gas line.

Using the same steps to inspect the well results, it is also possible to plot the gas rate produced
through the casing along with the liquid level.

GAP User Guide August, 2012


Examples Guide 1006

In summary, we have demonstrated that ability to simulate a workover in a group of CBM wells
and predict the produced gas volumes as the coal seam is dewatered using ESP's.

1990-2012 Petroleum Experts Limited


1007 GAP

GAP User Guide August, 2012

You might also like