0% found this document useful (0 votes)
199 views1,422 pages

Gap Complete Updated

This document provides an overview of the GAP software for multiphase production optimization. GAP can model oil, gas, and gas injection systems and optimize production by allocating gas lift or setting wellhead chokes. It features a powerful optimization engine, compositional fluid modeling, artificial lift modeling, and integration with reservoir and well models to enable full-field production optimization and forecasting. Technical support and training resources are available to GAP users.

Uploaded by

Ivan BuenaVibra
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
199 views1,422 pages

Gap Complete Updated

This document provides an overview of the GAP software for multiphase production optimization. GAP can model oil, gas, and gas injection systems and optimize production by allocating gas lift or setting wellhead chokes. It features a powerful optimization engine, compositional fluid modeling, artificial lift modeling, and integration with reservoir and well models to enable full-field production optimization and forecasting. Technical support and training resources are available to GAP users.

Uploaded by

Ivan BuenaVibra
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 1422

Petroleum Experts

User Manual

IPM
GAP
Version 14
March 2022
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 methods
• 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, GAP Transient, PROSPER, MBAL, PVTp, REVEAL, RESOLVE, IFM, IVM, Model
Catalogue, OpenServer and MOVE are trademarks of Petroleum Experts Ltd.

We also recognise the registered trademarks of the following corporations that we may make reference to in
this manual: Microsoft, Schlumberger, Honeywell Process, Rock Flow Dynamics, Kongsberg Digital, AVEVA
SimSci, Halliburton, Stone Ridge Technology, CMG, AspenTech, Beicip-Franlab, ConocoPhillips, Emerson,
Shell, ExxonMobil, Saudi Aramco, BP, Chevron, WellDrill, SSI.

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: [email protected]
Internet: www.petex.com

1990-2022 Petroleum Experts Limited


I G AP

Table of Contents
0

Chapter 1 Technical Overview 2


1 Summary
...................................................................................................................................
of Capabilities 4
2 Field Optimisation
................................................................................................................................... 9
3 Field Planning
................................................................................................................................... 10
4 Fluid modelling
...................................................................................................................................
(PVT) 11
Introduction to
..........................................................................................................................................................
Lum ping/Delum ping 12
5 Reservoir
...................................................................................................................................
Modelling 15
6 Flow assurance
...................................................................................................................................
and advanced thermal modelling options 16
7 Artificial
...................................................................................................................................
Lift 17
8 Complex
...................................................................................................................................
Well Geometry 18
9 Automation
................................................................................................................................... 19
10 The Core
...................................................................................................................................
GAP Technique 20
Considerations
..........................................................................................................................................................
on Optim isation 22
11 Help and
...................................................................................................................................
Technical Support 29
Online Help .......................................................................................................................................................... 29
User Guide Manuals
.......................................................................................................................................................... 30
Support For Maintained
..........................................................................................................................................................
Clients 31
Softw are Upgrades
......................................................................................................................................................... 32
Annual User.........................................................................................................................................................
Group Meeting 33
Web User Area
......................................................................................................................................................... 33
12 Examples
...................................................................................................................................
Index 34

Chapter 2 User Guide 39


1 What's...................................................................................................................................
New 39
2 What is
...................................................................................................................................
in this guide? 56
3 Introduction
................................................................................................................................... 59
How to Use This
..........................................................................................................................................................
Guide 61
GAP Glossary..........................................................................................................................................................
of Term s 62
4 Getting
...................................................................................................................................
Started with GAP 64
The GAP User..........................................................................................................................................................
Interface 64
New File ......................................................................................................................................................... 66
Opening a .........................................................................................................................................................
File 66
Recent Files ......................................................................................................................................... 67
Saving a File
......................................................................................................................................................... 67
GAP Files ......................................................................................................................................................... 68
Save As ......................................................................................................................................................... 68
The System .........................................................................................................................................................
Window 68
The Toolbar......................................................................................................................................................... 71
Draw ing the
.........................................................................................................................................................
System 74
Auto Equipment
.........................................................................................................................................................
Layout 78
The Preferences
.........................................................................................................................................................
Dialog 79
Contents II

Defining User .........................................................................................................................................................


Correlations 82
Edit Ini File ......................................................................................................................................................... 84
Defining the .........................................................................................................................................................
Working Directory 84
Printing from .........................................................................................................................................................
GAP 86
Copy and Paste ......................................................................................................................................................... 87
Exiting GAP ......................................................................................................................................................... 87
Project Archiving .......................................................................................................................................................... 88
Archive Creation......................................................................................................................................................... 88
Archive Extraction
......................................................................................................................................................... 92
The Options Menu .......................................................................................................................................................... 95
Method ......................................................................................................................................................... 95
Edit Injection.........................................................................................................................................................
Fluids 104
Kill Fluid Type Properties
......................................................................................................................................... 107
Edit Formation.........................................................................................................................................................
Library 107
Edit Tax Regimes
......................................................................................................................................................... 108
Edit Emulsion .........................................................................................................................................................
Models 110
Edit Wall Materials
......................................................................................................................................................... 115
Edit System .........................................................................................................................................................
Settings 116
Edit System .........................................................................................................................................................
Summary 121
View System .........................................................................................................................................................
Statistics 123
Disable Options
......................................................................................................................................................... 124
The View Menu .......................................................................................................................................................... 125
Draw Options ......................................................................................................................................................... 126
Highlight Options
......................................................................................................................................................... 126
Highlight TVD Differences......................................................................................................................................... 126
Highlight Solver .........................................................................................................................................
Pressure/Mass Imbalances 129
Highlight Violated .........................................................................................................................................
and Limiting Constraints 130
Window Aspect .........................................................................................................................................................
and Draw ing Options 131
Select Info Displayed ......................................................................................................................................... 131
Select Default Icon .........................................................................................................................................
Label Position 133
Colours ......................................................................................................................................... 133
Icon Sizes ......................................................................................................................................... 135
Fonts ......................................................................................................................................... 135
Grid ......................................................................................................................................... 135
Netw ork Draw .........................................................................................................................................................
ing Position 137
Normalize Equipment .........................................................................................................................................
Icons Position and Snap to Grid 137
The Edit Menu .......................................................................................................................................................... 138
Undo Options ......................................................................................................................................................... 139
Select Options......................................................................................................................................................... 140
Dialog Select ......................................................................................................................................................... 143
Selected Equipment
.........................................................................................................................................................
Options 144
Selected Items ......................................................................................................................................... 144
Selected Wells and .........................................................................................................................................
Inflow s 147
Selected Pipes ......................................................................................................................................... 149
Selected Tanks ......................................................................................................................................... 150
Selected Groups......................................................................................................................................... 151
Find Equipment.........................................................................................................................................................
on System Window 152
Edit Options ......................................................................................................................................................... 154
Edit Equipment Controls ......................................................................................................................................... 154
Edit Project Paths ......................................................................................................................................... 155
Transfer and .........................................................................................................................................................
Import Options 157
Transfer Well Data .........................................................................................................................................
from MBAL Models 157
Initialise IPRs from .........................................................................................................................................
Tank Simulations 159
Import Compositions ......................................................................................................................................... 161

March, 2022 GAP User Guide

II
III G AP

Lump/Delump Compositions
......................................................................................................................................... 162
Transfer Options.........................................................................................................................................
for Gas Lift Injection 162
Execute OpenServer
.........................................................................................................................................................
Statement 164
Importing .........................................................................................................................................................
GAP models in an existing project 165
The Constraints
..........................................................................................................................................................
Menu 170
System Constraints
......................................................................................................................................................... 171
Binding (Yes/No)
......................................................................................................................................................... 174
Edit Constraints
.........................................................................................................................................................
Table 175
Edit Abandonment
.........................................................................................................................................................
Constraints Table 177
5 Describing
...................................................................................................................................
the PVT 178
Black Oil .......................................................................................................................................................... 179
Com positional ..........................................................................................................................................................
Options 182
EoS Model.........................................................................................................................................................
Setup 182
More Lumping ......................................................................................................................................... 190
Water Composition ......................................................................................................................................... 192
Setting up.........................................................................................................................................................
a Compositional model 194
Tracking ......................................................................................................................................................... 198
Fully Compositional
......................................................................................................................................................... 199
Black Oil Compositional
.........................................................................................................................................................
Lumping/Delumping 200
View ing Compositional
.........................................................................................................................................................
Results 201
Brine Modelling.......................................................................................................................................................... 206
Im port PROSPER..........................................................................................................................................................
PVT 208
6 Flow ...................................................................................................................................
Assurance 212
Tem perature..........................................................................................................................................................
Gradient 212
Form ation Data
.......................................................................................................................................................... 214
Flow Assurance
..........................................................................................................................................................
Properties 218
Sand Transport
......................................................................................................................................................... 218
Erosion ......................................................................................................................................................... 221
Liquid Loading
......................................................................................................................................................... 224
Pigging ......................................................................................................................................................... 225
Corrosion......................................................................................................................................................... 225
Pipeline Flow..........................................................................................................................................................
Assurance 226
Flow Regime
.........................................................................................................................................................
Plot 227
Slug Catcher
.........................................................................................................................................................
Calculation 228
Erosion Calculation
......................................................................................................................................................... 235
Corrosion.........................................................................................................................................................
Calculation 241
Flow Assurance
.........................................................................................................................................................
Plot 246
Severe Slugging
.........................................................................................................................................................
Plots 246
Pots Severe Slugging .........................................................................................................................................
Number 247
PE5 Stability ......................................................................................................................................... 249
7 Equipment
...................................................................................................................................
Data 252
Introduction .......................................................................................................................................................... 252
Equipm ent Data..........................................................................................................................................................
Entry Screen Form at 252
The Navigator
.........................................................................................................................................................
- Equipment list 253
Equipment List Filter ......................................................................................................................................... 254
Section Buttons
......................................................................................................................................................... 255
Summary ......................................................................................................................................... 256
Input Button ......................................................................................................................................... 256
Results Button ......................................................................................................................................... 257
Action Buttons
......................................................................................................................................................... 258
Wells .......................................................................................................................................................... 260
Well Summary
.........................................................................................................................................................
Screen 261
Calculate ......................................................................................................................................... 265
Contents IV

Well Input.........................................................................................................................................................
Screens 270
IPR Input ......................................................................................................................................... 271
Ipr Layer ................................................................................................................................... 272
IPR Layer Composition ................................................................................................................................... 282
IPR Match ................................................................................................................................... 283
FBHP/Rate Calculation ................................................................................................................................... 285
More Layer Data ................................................................................................................................... 285
Production Data................................................................................................................................... 289
Grid View ................................................................................................................................... 291
Abandonment Section ................................................................................................................................... 291
Note on w ater injector's
...................................................................................................................................
IPR 292
Transient IPR Input ......................................................................................................................................... 294
Transient IPR Layer ................................................................................................................................... 295
Transient IPR Model ................................................................................................................................... 298
Transient IPR Prod ...................................................................................................................................
Data 301
RESOLVE Tight...................................................................................................................................
Reservoir - Inflow Import 302
VLP Input ......................................................................................................................................... 310
Inspection of VLP ...................................................................................................................................
Data 314
Well Constraints......................................................................................................................................... 315
General Constraints ................................................................................................................................... 316
Gas Lifted Wells ...................................................................................................................................
Constraints 317
Diluent Injection...................................................................................................................................
Wells Constraints 318
ESP, HSP, PCP ...................................................................................................................................
and Jet Pump Wells Constraints 318
Abandonment Constraints................................................................................................................................... 320
Symbols ................................................................................................................................... 321
Notes on Constraints ................................................................................................................................... 321
Controls ......................................................................................................................................... 322
Symbols ................................................................................................................................... 322
dP Control ................................................................................................................................... 322
Gas Lift Control................................................................................................................................... 324
ESP Control ................................................................................................................................... 325
Diluent Control ................................................................................................................................... 326
Diluent Control w ...................................................................................................................................
ith Gas Injection 327
SRP Control ................................................................................................................................... 328
HSP Control ................................................................................................................................... 329
Jet Pump Control ................................................................................................................................... 330
PCP Control ................................................................................................................................... 331
CBM Control ................................................................................................................................... 331
Fluids Property ...................................................................................................................................
Setup 332
Control Group ................................................................................................................................... 333
Well Control Summary ................................................................................................................................... 335
PC Data ......................................................................................................................................... 337
PC Generation ................................................................................................................................... 338
Coning (For Oil Producers
.........................................................................................................................................
Only) 339
Dow ntime ......................................................................................................................................... 341
Tank Connections ......................................................................................................................................... 341
Schedule (ONLY.........................................................................................................................................
for Transient & Prediction) 342
Change OpenServer ...................................................................................................................................
Variable Linearly 344
Transient Well Input ......................................................................................................................................... 345
Well Description................................................................................................................................... 346
Well Environment ................................................................................................................................... 347
Transient Simulation ................................................................................................................................... 348
Outflow Only Well ......................................................................................................................................... 350
Outflow Only - ...................................................................................................................................
VLP 352

March, 2022 GAP User Guide

IV
V G AP

Outflow Only - ...................................................................................................................................


PROSPER 353
Importing the equipment ...................................................................................................................................
data from PROSPER 354
Entering The Equipment ...................................................................................................................................
in GAP Directly 360
Completing the ...................................................................................................................................
Outflow Only Well - Inflow Performance Setup 360
Well Results.........................................................................................................................................................
Screen 361
Change Layout ......................................................................................................................................... 363
VLP/IPR PlayBack ......................................................................................................................................... 363
Gradient Results......................................................................................................................................... 365
Well Layer Results ......................................................................................................................................... 366
Reporting Results ......................................................................................................................................... 369
Separators (Production
..........................................................................................................................................................
/ Injection) 371
Separator.........................................................................................................................................................
Summary Screen 372
Separator.........................................................................................................................................................
Input Screens 374
Separation (PRODUCTION .........................................................................................................................................
Separators ONLY) 374
Injection Fluid Details .........................................................................................................................................
(INJECTION Man. Only) 375
Steam Injection...................................................................................................................................
Source 377
Constraints ......................................................................................................................................... 382
Plant Process (ONLY .........................................................................................................................................
for LNG Process Plant) 383
Schedule (ONLY.........................................................................................................................................
for prediction) 384
Separator.........................................................................................................................................................
Results Screen 384
Joints .......................................................................................................................................................... 386
Joint Summary
.........................................................................................................................................................
Screen 386
Joint Input.........................................................................................................................................................
Screen 387
Joint Constraints......................................................................................................................................... 387
Schedule ......................................................................................................................................... 389
Joint Results
.........................................................................................................................................................
Screen 390
Show Pipe Gradient ......................................................................................................................................... 391
Create Fluid from .........................................................................................................................................
Results 393
Pipelines .......................................................................................................................................................... 395
Pipeline Summary
.........................................................................................................................................................
Screen 396
Pipeline Input
.........................................................................................................................................................
Data (GAP Internal Correlations) 398
Pipe Environment ......................................................................................................................................... 401
Pipeline Burial ................................................................................................................................... 404
Pipe Description......................................................................................................................................... 404
Pipe Entry Example ................................................................................................................................... 411
Heat Transfer Completion.........................................................................................................................................
Decription 413
Pipeline Pressure .........................................................................................................................................
Matching 416
The Match Calculation ................................................................................................................................... 417
OLGAS 3P Emulsion ...................................................................................................................................
Match Parameters 421
Constraints ......................................................................................................................................... 421
Schedule (ONLY.........................................................................................................................................
for Prediction) 422
Simulation ......................................................................................................................................... 422
Emulsion correction ......................................................................................................................................... 424
Pipeline Input
.........................................................................................................................................................
Data (Lift Curves) 430
External ......................................................................................................................................... 430
GAP Internal Correlations
......................................................................................................................................... 433
PROSPER on line......................................................................................................................................... 436
PROSPER file ......................................................................................................................................... 437
Pipeline Input
.........................................................................................................................................................
Data (PROSPER on line) 438
Edit Pipe entry ......................................................................................................................................... 439
Rough Approximation ................................................................................................................................... 442
Enthalpy Balance ................................................................................................................................... 443
Improved Approximation ................................................................................................................................... 450
Pipeline Results
.........................................................................................................................................................
Screen 451
Contents VI

Pipe Gradient & .........................................................................................................................................


Flow Assurance Result 452
Gradient Calculation ......................................................................................................................................... 455
Bottlenecks ......................................................................................................................................... 458
Wax or Hydrate.........................................................................................................................................
Risk 459
Tanks .......................................................................................................................................................... 462
Tank Summary
.........................................................................................................................................................
Screen 463
Tank Input.........................................................................................................................................................
Data (Material Balance Tank) 465
Constraints ......................................................................................................................................... 465
Injection ......................................................................................................................................... 466
Wells ......................................................................................................................................... 467
Tank Schedule ......................................................................................................................................... 469
Tank Input.........................................................................................................................................................
Data (Decline Curve Tank) 469
Tank Production.........................................................................................................................................
Data 470
Compressibility ......................................................................................................................................... 472
Tank Results
.........................................................................................................................................................
Screen 474
Flares and Vents
.......................................................................................................................................................... 475
Emissions.........................................................................................................................................................
Results 475
Pum ps .......................................................................................................................................................... 477
Pump Summary
.........................................................................................................................................................
Screen 478
Pump Calculate Button ......................................................................................................................................... 479
Performance.........................................................................................................................................................
Curve Options 481
Pump Control ......................................................................................................................................... 484
Pump Performance .........................................................................................................................................
Data 486
Jet Pump .........................................................................................................................................................
Options 487
Jet Pump Control......................................................................................................................................... 489
MultiPhase .........................................................................................................................................................
Pump Options 491
OneSubsea Pump .........................................................................................................................................
Control 493
Constraints......................................................................................................................................................... 496
Pump Schedule
.........................................................................................................................................................
(ONLY for prediction) 496
Surface Jet Pum..........................................................................................................................................................
ps 497
Surface Jet.........................................................................................................................................................
Pump Summary Screen 498
Surface Jet.........................................................................................................................................................
Pump Input Data 499
Surface Jet Pump .........................................................................................................................................
Data 499
Surface Jet Pump .........................................................................................................................................
Orientation 501
Com pressors .......................................................................................................................................................... 502
Compressor .........................................................................................................................................................
Summary Screen 502
Compressor Calculate .........................................................................................................................................
Button 504
Input Data.........................................................................................................................................................
for Compressor (Full Model) 505
Surge and Choke ......................................................................................................................................... 511
Performance Curves .........................................................................................................................................
Data Entry Recommendation 512
Operating point in .........................................................................................................................................
Plot 514
Input Data.........................................................................................................................................................
for Fixed dP Compressor 515
Input Data.........................................................................................................................................................
for Fixed Pow er Compressor 516
Input Data.........................................................................................................................................................
for Reciprocating Compressor 518
Input Data.........................................................................................................................................................
for MultiPhase Compressor/Pump 521
Compressor .........................................................................................................................................................
Control (Full Model Only) 523
Compressor .........................................................................................................................................................
Schedule (ONLY for Prediction) 524
Explicit Compressor
.........................................................................................................................................................
Recycling 525
Generate.........................................................................................................................................................
Compressor Curve From Data 527
Variables ......................................................................................................................................... 528
Create ......................................................................................................................................... 529
Sources / Sink .......................................................................................................................................................... 531
Source / Sink
.........................................................................................................................................................
Summary Screen 532
Source Connection .........................................................................................................................................
Setup 534

March, 2022 GAP User Guide

VI
VII G AP

Source / Sink
.........................................................................................................................................................
Input Screens 536
Source Fluid ......................................................................................................................................... 536
Fixed Rate/Pressure/Mass
......................................................................................................................................... 537
Schedule ......................................................................................................................................... 539
Inline Elem ents.......................................................................................................................................................... 540
Inline Gate.........................................................................................................................................................
Valve 541
Input Data / Schedule .........................................................................................................................................
( ONLY for prediction) 542
Inline Check.........................................................................................................................................................
Valve 543
Inline Check Valve .........................................................................................................................................
Data Summary Screen 543
Input Data / Schedule .........................................................................................................................................
( ONLY for prediction) 544
Inline Separation
......................................................................................................................................................... 545
Inline Separation.........................................................................................................................................
Data Input Screen 547
Input Data / Schedule .........................................................................................................................................
(ONLY for prediction) 547
Inline Choke......................................................................................................................................................... 548
Inline Choke dP Control......................................................................................................................................... 550
Input Data / Schedule .........................................................................................................................................
(ONLY for prediction) 553
Inline Injection
......................................................................................................................................................... 554
Defining the Injection .........................................................................................................................................
Fluid PVT 555
Defining the Injection .........................................................................................................................................
Rate 556
Schedule (ONLY.........................................................................................................................................
for prediction) 556
Inline General
......................................................................................................................................................... 557
Notes on Inline General.........................................................................................................................................
Elements 557
Inline General Script .........................................................................................................................................
Variables 558
Schedule (ONLY.........................................................................................................................................
for prediction) 559
Inline Element Variables
......................................................................................................................................... 560
Control Variables ......................................................................................................................................... 562
Temporary Variables ......................................................................................................................................... 563
Results Variables ......................................................................................................................................... 563
Tax Regime Variables ......................................................................................................................................... 563
FLOW and COMP .........................................................................................................................................
Structure Variables 564
PVT Calculator .........................................................................................................................................
- Black Oil 567
PVT Calculator .........................................................................................................................................
- Compositional 569
Logging Messages ......................................................................................................................................... 572
Mathematical Functions ......................................................................................................................................... 572
Control Structures ......................................................................................................................................... 573
Example Script ......................................................................................................................................... 574
Inflow Icon .......................................................................................................................................................... 576
Inflow Summary
.........................................................................................................................................................
Screen 576
Input ......................................................................................................................................................... 577
Grouping .......................................................................................................................................................... 578
Group Equipment
.........................................................................................................................................................
Input Data 578
Constraints ......................................................................................................................................... 580
Schedule ......................................................................................................................................... 580
Grouping ......................................................................................................................................... 581
Group Control
.........................................................................................................................................................
Input Data 583
Members ......................................................................................................................................... 583
Control ......................................................................................................................................... 585
Schedule ......................................................................................................................................... 586
Flow sheets .......................................................................................................................................................... 586
User Defined..........................................................................................................................................................
Elem ent 591
Heat Exchanger .......................................................................................................................................................... 594
Notes on Constraints
.......................................................................................................................................................... 597
8 VLP/IPR
...................................................................................................................................
Generation 598
A w ell m odel..........................................................................................................................................................
in GAP 598
Contents VIII

IPR ......................................................................................................................................................... 599


VLP ......................................................................................................................................................... 601
Importance .........................................................................................................................................................
of VLP Data Ranges 601
Batch Generation
..........................................................................................................................................................
of IPR’s 603
Single layer
.........................................................................................................................................................
w ells 603
Multilayer .........................................................................................................................................................
w ells 607
Batch Generation
..........................................................................................................................................................
of Well and Pipe VLPs 616
Batch Generation
.........................................................................................................................................................
of VLPs 616
Values to.........................................................................................................................................................
use for VLP Generation 621
Batch Generation
.........................................................................................................................................................
of VLPs w ith Mass flow rates 625
Generating .........................................................................................................................................................
Well VLP on a w ell-by-w ell basis 628
Batch Generation
.........................................................................................................................................................
of Pipe VLPs 631
Batch Generation
..........................................................................................................................................................
of Well Perform ance Curves 635
9 Model
...................................................................................................................................
Validation 640
Note on Outflow
..........................................................................................................................................................
Only MultiLayer Well 645
10 Network
...................................................................................................................................
Solver and Optimiser 646
The Solver .......................................................................................................................................................... 646
The Optim iser.......................................................................................................................................................... 646
Constraints and
..........................................................................................................................................................
Equipm ent Control Screen 646
Constraints
......................................................................................................................................................... 646
Equipment.........................................................................................................................................................
Control Screen 647
Equipment.........................................................................................................................................................
Control Groups 648
Optimisation
.........................................................................................................................................................
Objective Function 650
Solving the Netw
..........................................................................................................................................................
ork 653
Solver Modes .......................................................................................................................................................... 655
No Optimisation
......................................................................................................................................................... 655
Rule Based.........................................................................................................................................................
Netw ork Solver 656
Purpose ......................................................................................................................................... 656
Controls And Constraints
......................................................................................................................................... 657
Rules ......................................................................................................................................... 657
Control Step Types ......................................................................................................................................... 659
Search Modes ......................................................................................................................................... 660
Other Notes Regarding .........................................................................................................................................
the Rule Based Netw ork Solver 661
Ignored Constraints ................................................................................................................................... 661
Artificial Lift ................................................................................................................................... 662
Control Weightings ................................................................................................................................... 662
Controls Affecting ...................................................................................................................................
More Than One Constraint 663
Scaling Factor ................................................................................................................................... 663
Optimise w.........................................................................................................................................................
ith all constraints 664
Optimise w.........................................................................................................................................................
ith potential constraints only 665
Selecting .........................................................................................................................................................
the Appropriate Solver Mode 666
The Solver / Optim
..........................................................................................................................................................
iser Settings 666
Calculation Results
.......................................................................................................................................................... 679
Parallelisation
.......................................................................................................................................................... 681
11 Transient
................................................................................................................................... 682
Transient Sim..........................................................................................................................................................
ulation Options 682
Simulation.........................................................................................................................................................
Setup... 685
Defined Simulation
.........................................................................................................................................................
Schedule... 685
Run Simulation...
......................................................................................................................................................... 687
Separator / Injection .........................................................................................................................................
Manifold Pressure 688
Transient Simulation ......................................................................................................................................... 689
Save Simulation
.........................................................................................................................................................
Results As... 690
Purge All .........................................................................................................................................................
Simulation Results 690

March, 2022 GAP User Guide

VIII
IX G AP

Plot Nodes.........................................................................................................................................................
Simulations Results... 691
Transient Results
.......................................................................................................................................................... 691
Transient.........................................................................................................................................................
Plots 693
3D View s......................................................................................................................................................... 695
3D Plot ......................................................................................................................................... 697
3D Pipe View ......................................................................................................................................... 698
Transient.........................................................................................................................................................
Simulation Filter 699
Transient.........................................................................................................................................................
Simulation Preference 701
Transient.........................................................................................................................................................
Simulation Export 703
12 Prediction
................................................................................................................................... 706
Prediction - Basics
.......................................................................................................................................................... 707
Forecast .........................................................................................................................................................
Workflow 712
Linking MBAL
.........................................................................................................................................................
files to GAP 712
Running Predictions
......................................................................................................................................................... 713
Notes on .........................................................................................................................................................
Constraints 720
Linking Production
.........................................................................................................................................................
/ Injection Forecasting 720
Prediction Options
.......................................................................................................................................................... 725
Run Prediction
......................................................................................................................................................... 725
View Prediction
.........................................................................................................................................................
Log 725
Save Prediction
.........................................................................................................................................................
Results as 726
Reload Prediction
.........................................................................................................................................................
Snapshot 729
Prediction.........................................................................................................................................................
Script Options 731
Edit System.........................................................................................................................................................
Constraints Schedule 732
Notes on Constraints ......................................................................................................................................... 733
Edit Separator
.........................................................................................................................................................
and Joint Schedules 734
Edit Equipment
.........................................................................................................................................................
Schedule 737
Edit Tank .........................................................................................................................................................
Schedule 740
Edit Gas lift
.........................................................................................................................................................
Schedule 742
Edit Schedule
.........................................................................................................................................................
Event Groups 744
Edit DCQ Schedule
......................................................................................................................................................... 744
Apply Schedule
.........................................................................................................................................................
to 750
Purge Results
......................................................................................................................................................... 751
Plot and View
.........................................................................................................................................................
the Prediction Results 751
13 Results
...................................................................................................................................
and Reports 756
Results Menu .......................................................................................................................................................... 757
Detailed Results
......................................................................................................................................................... 758
Summary .........................................................................................................................................................
Results 759
Total System
.........................................................................................................................................................
Results 761
System Emissions
......................................................................................................................................................... 762
Plot Performance
.........................................................................................................................................................
Curves... 764
Plot Options
......................................................................................................................................................... 765
Insitu Rates
......................................................................................................................................................... 769
Reports .......................................................................................................................................................... 770
Hardcopy.........................................................................................................................................................
Reports 773
Report Setup
......................................................................................................................................................... 774
14 History
...................................................................................................................................
Matching an IPM Model 777
Introduction .......................................................................................................................................................... 777
Procedure for ..........................................................................................................................................................
History Matching 778
Running the
.........................................................................................................................................................
model and comparing to history 778
History matching
.........................................................................................................................................................
each element independently 779
15 Prediction
...................................................................................................................................
Script 788
Introduction .......................................................................................................................................................... 788
Functions .......................................................................................................................................................... 789
Contents X

Exam ple .......................................................................................................................................................... 791


16 Defining
...................................................................................................................................
System Units 793
Setting the Input
..........................................................................................................................................................
/ Output Unit System 793
The Control Database
.......................................................................................................................................................... 794
Defining Units
..........................................................................................................................................................
at a Variable Level (Dynam ic Unit Conversions) 796

Chapter 3 Examples Guide 799


1 Examples
...................................................................................................................................
Index 799
IPM Sam ple Files
..........................................................................................................................................................
Folder 801
Extracting a GAP
..........................................................................................................................................................
Archive file (.GAR) 801
2 Example
...................................................................................................................................
1a - Gas Field Network modelling with GAP 805
Objectives .......................................................................................................................................................... 805
Data available.......................................................................................................................................................... 807
Build the GAP ..........................................................................................................................................................
m odel 808
Draw the.........................................................................................................................................................
GAP Netw ork 808
Define the.........................................................................................................................................................
Reservoir 816
Define the.........................................................................................................................................................
Wells 818
Generate.........................................................................................................................................................
Well IPRs 820
Generate.........................................................................................................................................................
Well VLPs 823
Define the.........................................................................................................................................................
Pipelines 827
Settings the
.........................................................................................................................................................
Constraints 831
Settings the
.........................................................................................................................................................
Well Controls 831
Running the ..........................................................................................................................................................
Prediction 832
Results ......................................................................................................................................................... 835
3 Example
...................................................................................................................................
1b - Gas Field Network Modeling with GAP (Advanced) 838
Objectives .......................................................................................................................................................... 838
Data Available .......................................................................................................................................................... 839
Defining the ..........................................................................................................................................................
Inline Program m able Elem ents 841
Understanding
.........................................................................................................................................................
the logic 841
Setting up.........................................................................................................................................................
the Inline Programmable Element 842
Methanol .........................................................................................................................................................
Injection Script for MEG_A 847
Setting up the ..........................................................................................................................................................
Scheduling 851
Using the.........................................................................................................................................................
Schedule Option 851
Using the.........................................................................................................................................................
Prediciton Script 852
Running the ..........................................................................................................................................................
Prediction 854
Prediction.........................................................................................................................................................
1 - Methanol Included in the System 855
Prediction.........................................................................................................................................................
2 - Methanol Excluded from the System 864
Creating a User..........................................................................................................................................................
Defined Inline Elem ent 869
4 Example
...................................................................................................................................
2a - Oil Production Network 873
Objectives .......................................................................................................................................................... 873
Data available.......................................................................................................................................................... 875
Build the GAP ..........................................................................................................................................................
m odel 876
Draw the.........................................................................................................................................................
GAP Netw ork 877
Define the.........................................................................................................................................................
Reservoirs 885
Define the.........................................................................................................................................................
Wells 885
Generate.........................................................................................................................................................
Well IPRs 887
Generate.........................................................................................................................................................
Well VLPs 889
Model Validation
.........................................................................................................................................................
to QC the w ells 893
Define the.........................................................................................................................................................
Pipelines 895
Pipeline Matching
......................................................................................................................................................... 902
Question 1 - ..........................................................................................................................................................
Solution 905
Initialise IPRs
.........................................................................................................................................................
from Tank Simulations 905

March, 2022 GAP User Guide

X
XI G AP

Solve netw .........................................................................................................................................................


ork for w ells fully open 907
Question 2 - ..........................................................................................................................................................
Solution 910
Entering the
.........................................................................................................................................................
Constraint 910
Setting Well
.........................................................................................................................................................
Controls 910
Solve Netw .........................................................................................................................................................
ork w ith Optimisation 911
Question 3 - ..........................................................................................................................................................
Solution 914
Run Prediction
.........................................................................................................................................................
w ith Optimisation 914
Saving the .........................................................................................................................................................
Prediction results 918
Question 4 - ..........................................................................................................................................................
Solution 918
Interpreting
.........................................................................................................................................................
a GAP Model 918
Analyzing.........................................................................................................................................................
Snapshots 923
Question 5 - ..........................................................................................................................................................
Solution 928
Introducing.........................................................................................................................................................
Pressure Support 928
Comparing .........................................................................................................................................................
Scenarios 929
Creating an Archive
..........................................................................................................................................................
File 933
5 Example
...................................................................................................................................
2b - Oil Production Network (RBNS) 936
Objectives .......................................................................................................................................................... 936
Data Available
.......................................................................................................................................................... 938
Perform ing the
..........................................................................................................................................................
Prediction 938
Saving the Prediction
..........................................................................................................................................................
Results 940
Com pare the..........................................................................................................................................................
Results 941
6 Example
...................................................................................................................................
3 - Pipeline detailed results 944
Objectives .......................................................................................................................................................... 944
Data available.......................................................................................................................................................... 945
Run Solve Netw..........................................................................................................................................................
ork 945
Pipeline detailed
..........................................................................................................................................................
results 947
Convert the pipeline
..........................................................................................................................................................
to PROSPER online 951
7 Example
...................................................................................................................................
4 - Associated Water Injection System 959
Objectives .......................................................................................................................................................... 959
Data Available
.......................................................................................................................................................... 960
Prediction to..........................................................................................................................................................
Determ ine Water Injection Requirem ent 961
Calculating the
..........................................................................................................................................................
Num ber of Water Injectors 964
Associate Production
..........................................................................................................................................................
to Water Injection Netw ork 968
Run Prediction
..........................................................................................................................................................
With Coupled Models 971
8 Example
...................................................................................................................................
5 - Smart Well Modelling in GAP 976
Objectives .......................................................................................................................................................... 976
Data Available.......................................................................................................................................................... 978
Build the GAP ..........................................................................................................................................................
Netw ork 979
Draw the.........................................................................................................................................................
GAP Netw ork 980
Define the.........................................................................................................................................................
IPR Elements 986
Define the.........................................................................................................................................................
'Completion' Pipes 989
Define the.........................................................................................................................................................
Outflow 991
Write the .........................................................................................................................................................
Prediction Script 993
Run the Prediction
..........................................................................................................................................................
Without Optim isation 997
Run the Prediction
..........................................................................................................................................................
With Optim isation 998
9 Example
...................................................................................................................................
6 - Electrical Submersible Pump 1004
Objectives .......................................................................................................................................................... 1004
Data Available
.......................................................................................................................................................... 1005
Build the GAP..........................................................................................................................................................
Model 1006
Draw the .........................................................................................................................................................
GAP netw ork 1006
Define the
.........................................................................................................................................................
Wells 1009
Generate .........................................................................................................................................................
Well IPRs 1010
Contents XII

Generate .........................................................................................................................................................
Well VLPs 1011
Set the Scheduling
......................................................................................................................................................... 1014
Fixed Operating
..........................................................................................................................................................
Frequency 1015
Run Forecast
.........................................................................................................................................................
w ith Fixed Pump Frequency 1016
Variable Operating
..........................................................................................................................................................
Frequency 1021
Set Well.........................................................................................................................................................
Controls 1021
Set System
.........................................................................................................................................................
Constraint on Maximum Pow er 1024
Run Forecast
.........................................................................................................................................................
w ith Variable Operating Frequency 1024
10 Example
...................................................................................................................................
7a - Gas Lift Optimisation 1027
Objectives .......................................................................................................................................................... 1027
Data Available
.......................................................................................................................................................... 1029
Build the GAP..........................................................................................................................................................
Model 1029
Draw the .........................................................................................................................................................
GAP Netw ork 1029
Define the
.........................................................................................................................................................
Wells 1031
Generate .........................................................................................................................................................
Well IPRs 1033
Generate .........................................................................................................................................................
Well VLPs 1036
Set the Scheduling
......................................................................................................................................................... 1039
Fixed Gas lift
..........................................................................................................................................................
Gas Injection 1041
Run forecast
.........................................................................................................................................................
w ith Fixed Gas Injection 1042
Variable Gas ..........................................................................................................................................................
Lift Injection 1048
Set w ell.........................................................................................................................................................
Controls 1048
Set Maximum
.........................................................................................................................................................
Gas Lift Available 1049
Run Forecast
.........................................................................................................................................................
w ith Variable Gas lift Injection 1050
11 Example
...................................................................................................................................
7b - MultiPoint Gas Lift Optimisation 1056
Objectives .......................................................................................................................................................... 1056
Data Available
.......................................................................................................................................................... 1057
Base Case .......................................................................................................................................................... 1057
Initial Optim..........................................................................................................................................................
isation 1060
Optim isation..........................................................................................................................................................
Quality Check 1062
MultiPoint Optim
..........................................................................................................................................................
isation 1065
12 Example
...................................................................................................................................
8 - Gas Lift Injection Network 1071
Objectives .......................................................................................................................................................... 1071
Data Available
.......................................................................................................................................................... 1074
Modify the Production
..........................................................................................................................................................
Netw ork 1075
Generate .........................................................................................................................................................
the Well VLPs w ith Casing Pressure 1077
Setting Well
.........................................................................................................................................................
Controls in GAP 1080
Build the Gas..........................................................................................................................................................
Lift Injection Model 1081
Draw the .........................................................................................................................................................
GAP Netw ork 1082
Define the
.........................................................................................................................................................
Wellheads and Delivery Station 1090
Define the
.........................................................................................................................................................
Pipelines and Surface Equipment 1092
Define the
.........................................................................................................................................................
Compressor Curves 1103
Associate Production
..........................................................................................................................................................
to Gas Lift Gas Netw ork 1115
Write the.........................................................................................................................................................
Prediction Script 1117
Run Prediction
..........................................................................................................................................................
With Coupled Models 1121
Case 1 ......................................................................................................................................................... 1122
Case 2 ......................................................................................................................................................... 1124
Case 3 ......................................................................................................................................................... 1130
13 Example
...................................................................................................................................
9a - LNG (Fully Compositional) 1134
Objectives .......................................................................................................................................................... 1134
Data Available
.......................................................................................................................................................... 1135
Build the GAP..........................................................................................................................................................
m odel 1137
Draw the .........................................................................................................................................................
GAP netw ork 1137
Define the
.........................................................................................................................................................
Reservoir 1143

March, 2022 GAP User Guide

XII
XIII G AP

Setting up
.........................................................................................................................................................
MBAL as compositional 1144
Entering compositional
.........................................................................................................................................
PVT Data 1148
Define the
.........................................................................................................................................................
Wells 1153
Import EOS Composition
.........................................................................................................................................
in GAP 1156
Generate Well .........................................................................................................................................
IPRs 1158
Import VLPs ......................................................................................................................................... 1160
Define the
.........................................................................................................................................................
LNG Plant 1161
Define the
.........................................................................................................................................................
Pipelines 1163
Setting the
.........................................................................................................................................................
Well Controls 1164
Set the Scheduling
......................................................................................................................................................... 1165
Solve Netw ork
.......................................................................................................................................................... 1166
View ing.........................................................................................................................................................
the Detailed Compositional Results 1169
Running the..........................................................................................................................................................
Prediction 1173
View ing.........................................................................................................................................................
the Detailed Compositional Results 1176
14 Example
...................................................................................................................................
9b - LNG (Black Oil Compositional Lumping-Delumping) 1189
Objectives .......................................................................................................................................................... 1189
Data Available
.......................................................................................................................................................... 1190
Set up GAP ..........................................................................................................................................................
as Black Oil com positional Lum ping/Delum ping 1190
Running the..........................................................................................................................................................
Prediction 1193
Prediction
.........................................................................................................................................................
and view ing the results 1195
Black Oil - Lum
..........................................................................................................................................................
ping/Delum ping 1199
15 Example
...................................................................................................................................
10 - Tight Gas 1200
Objectives .......................................................................................................................................................... 1200
Data Available
.......................................................................................................................................................... 1202
Build the Sector
..........................................................................................................................................................
m odel 1203
Draw the .........................................................................................................................................................
GAP Netw ork 1204
Define the
.........................................................................................................................................................
Wells 1206
Generate transient .........................................................................................................................................
IPR Data 1208
Import VLPs ......................................................................................................................................... 1212
Define the
.........................................................................................................................................................
Pipelines 1213
Solve Netw ork
..........................................................................................................................................................
(Sector Model) 1214
Build the Full
..........................................................................................................................................................
Model 1215
Create Partial
.........................................................................................................................................................
GAP file 1216
Import Partial
.........................................................................................................................................................
GAP file 1216
Solve Netw ork
..........................................................................................................................................................
(Full Model) 1219
Including.........................................................................................................................................................
the Compressor 1219
Bypassing.........................................................................................................................................................
the Compressor 1220
16 Example
...................................................................................................................................
11 - Coal Bed Methane 1226
Objectives .......................................................................................................................................................... 1226
Data Available.......................................................................................................................................................... 1227
Build the GAP ..........................................................................................................................................................
Model 1228
Draw the .........................................................................................................................................................
GAP Netw ork 1229
Define the.........................................................................................................................................................
Reservoir 1231
Define CBM.........................................................................................................................................................
Wells 1232
Define the.........................................................................................................................................................
Routing Links 1234
Define the.........................................................................................................................................................
Pipelines 1238
Generate .........................................................................................................................................................
Well IPRs 1238
Generate .........................................................................................................................................................
Well VLPs 1240
Set the Well
.........................................................................................................................................................
Controls 1243
Set the Scheduling
.........................................................................................................................................................
for the Wells 1244
Run Prediction
......................................................................................................................................................... 1246
Interpret the Results ......................................................................................................................................... 1247
17 Example
...................................................................................................................................
12 - Surface Jet Pumps 1250
Contents XIV

Objectives .......................................................................................................................................................... 1250


Data Available
.......................................................................................................................................................... 1252
Build The GAP..........................................................................................................................................................
System 1253
Draw The .........................................................................................................................................................
GAP Netw ork 1254
Define the Wells ......................................................................................................................................... 1257
Generate the IPRs ................................................................................................................................... 1258
Import Well VLPs ................................................................................................................................... 1258
Define the Pipelines ......................................................................................................................................... 1260
Change the Information.........................................................................................................................................
Displayed on the System Window 1262
Solving The Netw .........................................................................................................................................
ork 1263
Analysing the...................................................................................................................................
Results 1265
Including the SJP ......................................................................................................................................... 1267
Copying the Pipeline ...................................................................................................................................
Data 1269
Defining the SJP ...................................................................................................................................
Properties 1273
Solving the Netw ...................................................................................................................................
ork With the SJP 1274
18 Example
...................................................................................................................................
13 - Explicit Compressor Recycling in GAP 1275
Objectives .......................................................................................................................................................... 1275
Data Available
.......................................................................................................................................................... 1277
Build The GAP..........................................................................................................................................................
System 1278
Draw The .........................................................................................................................................................
GAP Netw ork 1279
Define the Reservoirs ......................................................................................................................................... 1280
Define the Wells ......................................................................................................................................... 1281
Generate the IPRs ................................................................................................................................... 1282
Import Well VLPs ................................................................................................................................... 1284
Define the Pipelines ......................................................................................................................................... 1285
Define the Compressor ......................................................................................................................................... 1287
Perform the Prediction......................................................................................................................................... 1290
Save the Prediction .........................................................................................................................................
Results 1291
Enable the Explicit .........................................................................................................................................
Recycling 1292
Including the SJP ......................................................................................................................................... 1293
Entering the Pipeline ...................................................................................................................................
Data 1295
Defining the SJP ...................................................................................................................................
Properties 1297
Performing the.........................................................................................................................................
Prediction 1298
Analysing the Results ......................................................................................................................................... 1299
19 Example
...................................................................................................................................
14 - GAP Transient: Well Production Ramp-Up (Getting Started) 1301
Objectives .......................................................................................................................................................... 1301
Data Available
.......................................................................................................................................................... 1302
Build the GAP..........................................................................................................................................................
m odel 1303
Draw the .........................................................................................................................................................
GAP Netw ork 1304
Define Global
.........................................................................................................................................................
Temperature Profile 1305
Define the
.........................................................................................................................................................
Reservoir 1306
Define the
.........................................................................................................................................................
Well (Pipe Element) 1308
Define the
.........................................................................................................................................................
Wellhead Choke 1309
Determ ine Steady-State
..........................................................................................................................................................
Results 1310
Setup the GAP..........................................................................................................................................................
Transient Pipeline 1312
Prepare the..........................................................................................................................................................
Model for Ram p Up 1313
Run GAP Transient
..........................................................................................................................................................
Sim ulation 1315
Saving the Transient
..........................................................................................................................................................
Sim ulation Results 1317
Analyse GAP ..........................................................................................................................................................
Transients Results 1318
Detailed Transient
..........................................................................................................................................................
Results View 1323
Gradual Choke..........................................................................................................................................................
Opening Setup 1327
Linear Choke ..........................................................................................................................................................
Opening Results Analysis 1328
20 Example
...................................................................................................................................
15 - GAP Transient: Unstable Riser 1332

March, 2022 GAP User Guide

XIV
XV G AP

Objectives .......................................................................................................................................................... 1332


Data Available
.......................................................................................................................................................... 1333
Build the GAP..........................................................................................................................................................
Model 1335
Draw the .........................................................................................................................................................
GAP Netw ork 1335
Define Global
.........................................................................................................................................................
Temperature Profile 1337
Define the
.........................................................................................................................................................
Well 1338
Define the
.........................................................................................................................................................
Flow line 1344
Define the
.........................................................................................................................................................
Riser 1348
Define the
.........................................................................................................................................................
Riser Choke 1351
Define the
.........................................................................................................................................................
GasLift 1351
Run GAP Transient
..........................................................................................................................................................
Sim ulation 1352
Saving the Transient
..........................................................................................................................................................
Sim ulation Results 1355
Analyse GAP ..........................................................................................................................................................
Transient Results 1356
Detailed Transient
..........................................................................................................................................................
Results View 1357
Riser Holdup ..........................................................................................................................................................
Profile Analysis 1359
Mitigate Severe
..........................................................................................................................................................
Slugging - GasLift 1365
Mitigate Severe
..........................................................................................................................................................
Slugging - Riser Choke 1367
21 Example
...................................................................................................................................
16 - GAP Transient: Start Up From Static 1372
Objectives .......................................................................................................................................................... 1372
Data Available
.......................................................................................................................................................... 1373
Build the GAP..........................................................................................................................................................
Model 1376
Draw the .........................................................................................................................................................
GAP Netw ork 1376
Define Global
.........................................................................................................................................................
Temperature Profile 1377
Define the
.........................................................................................................................................................
Well 1378
Define the
.........................................................................................................................................................
Pipelines 1380
Calculate Steady
..........................................................................................................................................................
State Perform ance 1381
Configure Transient
..........................................................................................................................................................
Sim ulation 1383
Define transient
.........................................................................................................................................................
IPR 1383
Convert .........................................................................................................................................................
to Transient 1388
Define initialisation
......................................................................................................................................................... 1390
Run GAP Transient
..........................................................................................................................................................
Sim ulation 1394
Saving the Transient
..........................................................................................................................................................
Sim ulation Results 1395
Analyse GAP ..........................................................................................................................................................
Transient Results 1396
Mitigating Surges
.......................................................................................................................................................... 1400
Chapter

1
2 GAP

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 optimisation methods such as
SQP technique 22 (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
models, run sensitivities or implement complex workflows with the underlying network model.

GAP User Guide March, 2022


Technical Overview 3

MAIN APPLICATIONS

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

Field Optimisation 9

Field Planning 10

Fluid Modelling (PVT) 11

Reservoir Modelling 15

Flow Assurance and Advanced Thermal Modelling Options 16

Artificial Lift 17

Complex Well Geometry 18

Automation 19

Examples Index 34

1990-2022 Petroleum Experts Limited


4 GAP

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

GAP User Guide March, 2022


Technical Overview 5

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

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


functions for
optimization

1990-2022 Petroleum Experts Limited


6 GAP

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 of Through RESOLVE


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 Flow sheets can be used to embed parts of the main network
model visualization into sub screens

18 Ability to locate pieces New Equipment name filter allows the entire model to be
of equipment easily in searched by entering text
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 the
user decides

GAP User Guide March, 2022


Technical Overview 7

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.

25 Ability to Model SJP performance is captured using a model supplied by


Surface Jet Pumps Caltec

26 Ability to honour New Rule Based Network Solver allows predictions to be


constraints in the performed which honour constraints whilst taking less time than
network without using the full optimisation capabilities of GAP
performing a full
optimisation

27 Ability to model the The recirculation loop from the compressor can be modelled
recirculation loop of a explicitly and thus the interaction with other parts of the system
compressor can be captured.

28 Calculate Heat Detailed well/pipe and surrounding environment description


Transfer Coefficient can be entered to predict heat transfer coefficient for thermal
studies

1990-2022 Petroleum Experts Limited


8 GAP

29 Transient flow Transient multiphase flow simulation capturing time-dependent


modelling behaviour in pipeline networks and wells.

GAP User Guide March, 2022


Technical Overview 9

1.2 Field Optimisation


GAP features the fastest and most efficient optimiser in the industry which based at its core uses
the non-linear optimisation methods such as SQP 22 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-2022 Petroleum Experts Limited


10 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 March, 2022


Technical Overview 11

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
12 ).

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

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

Back to Overview 2

1990-2022 Petroleum Experts Limited


12 GAP

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
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).

GAP User Guide March, 2022


Technical Overview 13

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


14 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 March, 2022


Technical Overview 15

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


16 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 452 , 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.
Heat Transfer Coefficient Calculations.
Transient multiphase flow simulation.

Back to Overview 2

GAP User Guide March, 2022


Technical Overview 17

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
Coal Bed Methane (CBM) wells with ESP or PCP lift
Sucker rod pumps

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


18 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 976 , multilateral wells, wells with Inflow controllable devices 976 ) 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
Completion description for detailed heat transfer coefficient calculations

Back to Overview 2

GAP User Guide March, 2022


Technical Overview 19

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


20 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

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 March, 2022


Technical Overview 21

C = Constant

There are as many equations as unknowns.

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

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


22 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.1 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 methods, 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
plot above.

GAP User Guide March, 2022


Technical Overview 23

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.

In the context of a field, this is the case of a dry gas field with no water production in which

1990-2022 Petroleum Experts Limited


24 GAP

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 March, 2022


Technical Overview 25

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


26 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 March, 2022


Technical Overview 27

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.

As these responses are inbuilt in the calculations, the actual behaviour for the wells can be

1990-2022 Petroleum Experts Limited


28 GAP

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.

GAP User Guide March, 2022


Technical Overview 29

1.11 Help and Technical Support


While using the IPM suite, there is a number of different ways in which the User can get help and
support.

First and foremost, every User of the software has access to the Online Help and User Guide
Manuals which are included with the installation of the software.

For those client's who have a maintenance contract with Petroleum Experts, access to our
Web User Area and Technical Support team is also available.

More information on how to access all these different elements of help and support are provided
below.
1.11.1 Online Help
The online Help of each program can be found via the Help | Contents menu on the top tool bar:

To use this facility, the help file must be located in the same directory as the program. Please
note that due to security settings in Windows, if the help file is located on a shared drive, then the
help may have issues loading.

Additional ways of reaching the Help can also be seen below:

Help through the Almost every screen contains a Help button which, if selected, will take the
interface user directly to the appropriate help section for the given screen.
Help through From the menu bar, choose Help | Index or ALT H I, and select the
the menu desired subject from the list of help topics provided
Getting help To get help through the mouse, Press SHIFT+F1. The mouse pointer
using the changes to a question mark. Next, choose the menu command or option
mouse and to view. An alternative way is to click the menu command or option to
keyboard view, and holding the mouse button down, press F1. To get help using the

1990-2022 Petroleum Experts Limited


30 GAP

keyboard press the ALT key followed by the first letter of the menu name
or option and press F1
Minimising If the Help window is to be closed, but not exiting the help facility, click the
Help minimise button in the upper-right corner of the help window. If use of the
keyboard is preferred, press ALT Spacebar N

The help facility uses function buttons and jump terms to move around the 'Help' system. The
function buttons are found at the top of the window and are useful in finding general information
about Windows help. If a feature is not available, the button associated with that function is
dimmed.

'Jump' terms are words marked with a solid underline that appear in green if a colour VDU is in
use. Clicking on a jump term, takes the user directly to the topic associated with the underlined
word(s).

Finding information in 'Help'

There are several ways of getting the required information:

Using the Help This option is useful for viewing specific sections listed in the help menu.
Index Go to the topic of interest and select the necessary subject item
Using the Help This facility is useful for finding specific information about particular topics.
Search feature
For example, 'Production Constraints'. Type in the keyword 'constraints' to
search the system for the phrase, or select the corresponding topic from
the list displayed

1.11.2 User Guide Manuals


IPM is also installed with a User Guide Manual for each of the tools. This includes not only
information on each of the functionalities within the program but also a large array of step-by-
step Worked Examples to help Users understand how to use the vast range of value which the
tools can bring.

The User Guide Manuals are installed in the IPM installation directory (normally ...\Program Files
\Petroleum Experts\IPM XX\pdf\) or can be accessed via the Windows START menu:

GAP User Guide March, 2022


Technical Overview 31

In addition to information on the different models, screens and inputs which are required for each
tool, the User Manuals contain numerous step-by-step worked examples for each of the tools.
Completed models for each of these examples (and initial files where required) can be found in
the same IPM installation folder structure as the User Guides (normally ...\Program Files
\Petroleum Experts\IPM XX\Samples\). Please note that due to the size of these files, they are
not installed as part of the main installation of the software and are installed via a separate
installer. If the sample files are not present on a machine, please contact the IT department or the
user who downloaded the IPM installation files to obtain access to the worked example installer.

1.11.3 Support For Maintained Clients


In addition to the User Manuals and help files, users who have maintenance contracts with
Petroleum Experts have access to additional sources of information.

First and foremost, this includes access to our dedicated Technical Support teams based out of
Edinburgh, Scotland and Houston, USA. The role of the Technical Support team is to ensure that
the tools work as documented and also, where appropriate, demonstrate how options and

1990-2022 Petroleum Experts Limited


32 GAP

setting within the software can be used to achieve certain engineering objectives.

To ensure fairness to all of our clients, support queries are answered on a first come, first served
basis with the target of 50% of queries being answered within 24 hours and 95% of emails being
answered within 48 hours. In order to facilitate this, the primary route to obtain Technical Support
is via email. While it is possible to phone the Technical Support team, in cases where models
are required in order to understand the query, an email with the model will be required. Where
models are too large to send via email, the Technical Support team can send out a link which
can be used to upload the model. Where required, phone calls or video meetings can be set up
to discuss queries after the initial query has been received.

The contact details of the support teams are provided below:

Edinburgh, Scotland: Houston, USA:


email: [email protected] email: [email protected]
tele: +44 (0) 131 474 7030 tele: +1 281 531 1121

As well as access to Technical Support, maintained clients can also profit from a number of
other benefits.
1.11.3.1 Software Upgrades
Petroleum Experts are constantly improving the software and also researching new ways of
obtaining value from the software. These improvements and advancements are provided to
maintained clients via new builds and versions of the software.

Petroleum Experts aims to release a new version of IPM every 12-18 months and these new
versions are denoted with a change in the version number i.e. IPM 11.0 to IPM 12.0. Within
each version of the software, a number of different builds will be released to fix known issues
and add certain advancements.

It is important to note that all builds and versions of IPM are backwards compatible which means
that models build in older versions/builds of the tools will always be able to open and run in
newer versions. For example, a model build in IPM v9 can be opened in IPM v10. Models build
or saved in newer versions, however, cannot be opened in older versions of the software. For
example, a model saved in IPM v12 cannot then be opened in IPM v11 or earlier. Different
builds of the same IPM version are both backwards and forwards compatible which means that
a model saved in IPM v12 build 100 could be opened in previous builds (build 90 etc) and also
future builds (build 101 etc).

To find out the version of the tools which is currently being used, the User can browse to Help |
About... in any of the programs. The version and build is then shown on the screen:

GAP User Guide March, 2022


Technical Overview 33

To find out the current commercial version of the software, please either contact the Technical
Support team or log onto the Web User Area.
1.11.3.2 Annual User Group Meeting
Every year, Petroleum Experts hosts a meeting of our Users in Edinburgh, Scotland. This User
Group Meeting is an opportunity for Petroleum Experts to present the new functionality and also
for clients to present their work to each other to gain a better understanding of how others are
creating value. The User Group Meetings are also used as an opportunity to receive
development requests from clients and discuss each one with all attendees. Based upon the
feedback of the user community, each request will be given a priority and then added to the
development plan of the next version of the software as appropriate.

Invitations to the meeting are sent out to our main contacts in all maintained clients and then
each company decide to send a representative or team to attend the meeting.

As the number of clients who can attend the meetings from each client are limited, all
presentations which are given by Petroleum Experts (and all client who provide permission) are
uploaded to our Web User Area so that all clients can understand what new developments are
coming and also the presented case studies. A database of the presentations from all of the
User Group Meetings through time is also available and is a fantastic source of information on
the advancements and developments which have been made to the software over time.
1.11.3.3 Web User Area
Maintained clients also have access to the Petroleum Experts Web User Area which can be
accessed through the Help | Web User Area menu of any product:

1990-2022 Petroleum Experts Limited


34 GAP

In addition to access to the Web User Area, clients can also directly contact the Technical
Support team via the Help | Technical Support menu. This part of the Web User Area not only
allows support queries to be registered with the support team, but also stores all previous
queries which each user has sent so that they can be easily accessed and referenced in the
future.

When the Web User Area is accessed, different information can be seen:

- The current commercial version and build number


- A list of the issues fixed in the recently released builds
- Presentations from the User Group Meeting
- A database of Frequently Asked Questions about the software

1.12 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 805
Optimisation
schedules and running predictions
Advanced Gas field Modelling hydrate injection using
Modelling and Example 1b 838
inline 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 Example 2a 873
Optimisation
constraints, running "Solve Network,"
entering schedules, running
predictions and troubleshooting tips.

GAP User Guide March, 2022


Technical Overview 35

Oil Field Modelling Using Become familiar with using the Rule
The Rule Based Network Based Network Solver and analysing Example 2b 936

Solver results
Viewing details of the pressure drop
Detailed Results for
calculation in GAP using the Example 3 944
Pipelines
PROSPER 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 959
Water Injection
prediction with the two coupled
models
Setting up a network model for a
multi-layered well completion with
inflow controllable valves, optimising
Smart Well Completions Example 5 976
both of 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 Example 6 1004
ESP field
honour constraints on maximum
power available
Setting up network model with gas
Artificial lift Optimisation - lifted wells, scheduling and running
Example 7 1027
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 Example 8 1071

models. 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 1134

assurance studies to predict hydrate


formation.
LNG Field (BO Running predictions for a LNG
Compositional Lumping/ network with advanced PVT Example 9b 1189

Delumping) modelling.
Setting up a tight gas field, creating/
Tight Gas Field importing partial GAP files and Example 10 1200

compressor modelling.

1990-2022 Petroleum Experts Limited


36 GAP

Setting up a coal bed methane field,


Coal Bed Methane dewatering, routing and running Example 11 1226

predictions.
Surface Jet Pumps Setting up a model containing a SJP.
Copying and pasting data between Example 12 1250

equipment and analysing results.


Explicit Compressor Creating a surface network with a
Recirculation compressor. Defining compressor
input data and performance curves. Example 13 1275

Modelling the recirculation explicitly


and recovering energy using a SJP.
Well Production Ramp-Up This is a getting started example for
GAP Transient, which introduces the Example 14 1301

user to the functionality within the


tools.
Unstable Riser Investigation on a unstable system Example 15 1332

scenario using GAP Transient.

GAP User Guide March, 2022


Technical Overview 37

1990-2022 Petroleum Experts Limited


Chapter

2
User Guide 39

2 User Guide
2.1 What's New

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

GAP:
Outflow Only wells
Improvements to Outflow Only wells through introduction of ports, which
make more transparent the connections of elements/equipment to the
Outflow Only wells and will help to address issues that were sometimes
encountered when modelling smart well completions with Outflow Only
wells.

External equipment integration


Ability for users to add and use DLLs for custom equipment (e.g.
booster compressor models)

Solver enhancements
Numerical stability of network solver

Parallelisation of calculations
Parallelisation of calculations has been extended to include more
calculation options and model types, which will result in significantly
faster calculation speed for most models

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

GAP:
Control Groups
Allows for multiple equipment controls of the same type to be handled
by a single control value when using the RBNS or GAP Optimiser.

Auto Equipment Layout


Applies an algorithm to automatically layour equipment on the GAP
canvas. Particularly applicable when importing 3rd party data to create
a GAP model, such as ArcGIS data.

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

1990-2022 Petroleum Experts Limited


40 GAP

GAP:
Parallelisation of VLP generation
MultiPointing VLPs
Capturing valve throttling and multi-pointing behaviour as part of network
optimisation and field planning studies
Shared control/constraints for Gas Lifted Wells
Dual-String Gaslift optimisation
Improved Emulsion matching
Improved steam modelling
Steam enthalpy accounted for across chokes
Improved Choke calculations
Hydraulic Systems
Interrogate model by hydraulic system via OpenServer of the
RESOLVE GAP Topology DataObject
Improved OpenServer access
Saving of prediction results
Retrieval of well VLP correlations and match parameters
Etc.
Improved visualisation, validation and warnings
Reporting of additional results
ESP Wells: Surface kVA, Motor Power Factor, Load % and Fluid
Velocity
Gas-Lifted Wells: Injection Depth, Tubing Pressure and Temperature,
Casing Pressure, Critical Injection Rate, Casing Head Pressure, etc.
Various, including density and kinematic viscosity at separator,
unchoked well etc.

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

GAP:
Improved Validation and Warnings
Additional Constraints
Max C-Factor, GVF at ESP Inlet, Max Torque (Compressors), Max
temperature (nodes)
DCQ Control added to RBNS
Inline Injection Element: Controls/Constraints added to RBNS
Improved Thermal Models - Calculate Heat Transfer Coefficient
Similar to the Enthalpy Balance model PROSPER, allows calculation of
heat transfer coefficient taking into account heat tranfer mechanisms

GAP User Guide March, 2022


User Guide 41

and pipeline description and environment.


Group Control Equipment
Allows multiple compressor speed to be controlled with the same value
i.e. fixed speed or calculated by RBNS or Optimiser.
Compressor Wear Factor
Allows wear on compressor head to be captured and calibrated.
PVT Match Parameter Import From PROSPER
Ability to bring in PVT matching parameters from PROSPER, if a
consistent PVT correlation is selected throughout the model.
OLGAS 3P Emulsion Match Parameters (Pal & Rhodes
Parameters)
Plotting Package Enhancements
Prediction VLP/IPR Intersection Playback
Allows prediction results of a well in IPM 11 to be viewed in terms of
VLP/IPR curves over time
Plot pipeline gradient between two selected nodes
Improvement to emulsion modelling UI - Select injection fluid to
consider for plotting
Report In-situ Rate
Generate Compressor Curve from Test Data

GAP Transient:
New Transient Flow Simulator
Used with GAP to model transient flow within wells and surface pipeline
network.
Ability to quickly and easily transform an existing steady-state GAP
model into a transient model.
Flexible Model Setup
Allows the entire network of wells and pipeline to be modelled in
transient or alternatively a smaller subset of the network can be
modelled using transient calculations while the other elements remain
steady-state.
Robust IPR Modelling
Allows integration with Transient IPR models for more realistic inflow
response
Allows integration with numerical simulators through RESOLVE
2D/3D visualisation of detailed transient results
Direct access to results similar to steady-state pipeline flow assurance
Ability to run slug catcher analysis on transient pipeline/well results

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

1990-2022 Petroleum Experts Limited


42 GAP

Forecast Recommendations

Hydro -2P mechanistic flow model should be used when modeling long
pipelines

Rule Based solver should be used when running forecasts

PVT Modelling

Pressure corrected water viscosity correlation added

Ghetto et al black oil correlation has been added for heavy oils

Well Modelling

Gas coning model has been improved to capture more points, enter data at more
than one time and improved match algorithm

In VLP generation the calculations will now continue if an error is encountered.


Any errors that occur will be reported at the end of the calculation

Power fluid rate for jet pump lifted wells and drawdown for all wells can now be
viewed in well summary results

Maximum Oil and water constraints can now be specified for wells

Deviation has been added to the gravel pack data

Option to enter well fractional flow tables in terms of layer cumulative production
(This is additional to the default which is in terms of tank cumulative production)

Option to transfer IPR data from MBAL using ‘Transfer All Matching’

Choke sizes can now be calculated in network solve and predictions using one
of the available choke models. The calculated choke sizes will be reported in the solve
network/prediction results.

Program Interface

Option to display label in equipment popup window

GAP User Guide March, 2022


User Guide 43

Calculation start and end times now reported in the prediction and solver log

New archive method allows GAR files to be created greater than 2Gb

The tooltip can now be customised to allow users to configure the solver results
displayed for each type of equipment.

Option to increase size of table in layer production tab for tight reservoirs and
decline curves

Number of active wells are reported in separator results

The limiting constraints in the prediction now reports if the constraints is due to
the DCQ schedule

If there are errors when initialising tanks at the start of a prediction, the error
message will now display the tank name in the *.MBI file

Flow Assurance

Option to enter temperature gradient on field and individual equipment basis

Allow access to the flow assurance and gradient results via OpenServer

DNV corrosion and Erosion model added to flow assurance

Additional calculations are available in Flow assurance such as slugging

New Elements

Heat Exchanger

User Defined Element

Compressor modelling

Option to enter compressor performance curves as pressure ratio or energy

Pipeline Modelling

1990-2022 Petroleum Experts Limited


44 GAP

Number of pipe segments allowed has been increased from 100 to 500

Local temperature gradients can be added for pipelines

Flow Assurance option added to pipeline popup menu

Calculation Enhancements

RBNS can be used for injection systems

RBNS now handles impurity constraints

RBNS now handles minimum oil API

Implementation of option to parallelise solve network and prediction calculations


to reduce calculation times

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

Implementation of a Rule Based Network Solver

GAP now contains a Rule Based Network Solver (RBNS). This is a new approach
to performing predictions whilst obeying constraints in the system.

PVT Modelling

Improved CO2 modelling

Viscosity models in EOS can be changed

Multiphase Flash

Hydrate modelling with salts

Well Modelling

GAP User Guide March, 2022


User Guide 45

CBM well modelling

Well modelling with Sucker Rod Pumps

VLPs can be scheduled to change

Flow assurance related results in the VLPs

New IPR method (per phase)

VLPs can now be generated with up to 50 rates and 20 sensitivity variables

Pump/Compressor Modelling

Multiphase pump model available

Compressor results expanded

Option to model different compressor stages on the same shaft

Surface Jet Pump model now available

The compressor recycle loop can now be modelled explicitly

Program Interface

New plotting display

Running script for solve network

Sinks/Sources working on mass

Inline separator having fixed pressure

LNG element available.

New ability to filter equipment in the navigator window via text entry

1990-2022 Petroleum Experts Limited


46 GAP

Pipeline Modeling

Extra choke models available for choke calculations

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

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

GAP User Guide March, 2022


User Guide 47

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

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

1990-2022 Petroleum Experts Limited


48 GAP

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

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
GAP User Guide March, 2022
User Guide 49

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

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

1990-2022 Petroleum Experts Limited


50 GAP

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

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 User Guide March, 2022


User Guide 51

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

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.

1990-2022 Petroleum Experts Limited


52 GAP

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.

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

GAP User Guide March, 2022


User Guide 53

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.

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.

1990-2022 Petroleum Experts Limited


54 GAP

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

GAP User Guide March, 2022


User Guide 55

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

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 92 .

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


56 GAP

2.2 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 59 Introductory information on GAP and the user guide


Getting Started 64 General information on the usage of GAP
with GAP 64
Describing 178 This section describes the PVT modelling options available in GAP
the PVT 178
Equipment Data 252 This describes the interface used for entering equipment data, and
describes in detail the data entry screens for all elements
VLP/PR 59 This section shows how to generate VLP/IPR using PROSPER for
Generation 59 inclusion in the GAP system model
Model Validation 640 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 646 This section describes how to solve network and check that model
and Optimiser 646 production matches actual production
Prediction 706 This section describes the coupling of reservoir tank models to GAP for
production forecasting
Results and 756 This explains how to prepare, print and plot the results
Reporting 756
History Matching 777 General steps to follow to make sure that the model is calibrated and
an IPM Model 777 representing reality
Prediction Script 788 Section describing the scripting features present in GAP
Defining 793 This section describes how to set up Unit systems in GAP
System Units 793

Production Optimisation Using GAP

GAP User Guide March, 2022


User Guide 57

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 User’s Guide.

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

1990-2022 Petroleum Experts Limited


58 GAP

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 March, 2022


User Guide 59

2.3 Introduction
Petroleum Experts General Allocation Package (GAP) is an extremely powerful and valuable
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

Link to MBAL

1990-2022 Petroleum Experts Limited


60 GAP

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 March, 2022


User Guide 61

2.3.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 799 .
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-2022 Petroleum Experts Limited


62 GAP

2.3.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 198 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 March, 2022


User Guide 63

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


64 GAP

2.4 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.4.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
assist in the viewing of large networks.

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

GAP User Guide March, 2022


User Guide 65

System window The window on which the system network is drawn


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


66 GAP

2.4.1.1 New File


Clicking File | New will start a new system network from scratch. This option clears the current
system from memory and begins with an empty main screen to allow a new network to be
designed from scratch. The new system will not have an associated GAP file; choose File | Save
67 or Save As 68 to create a new file.

If the current system has not been saved, or has been changed since it was last saved, GAP will
warn of the possible loss of data and ask to save the changes to the previous model.

2.4.1.2 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.

GAP User Guide March, 2022


User Guide 67

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

If one chooses to type in a file name, the file extension can be omitted: the program will
automatically append the correct one.

If the current system has not been saved, or has been changed since the last save, GAP will
warn of possible loss of data when the new system is loaded over the old.

2.4.1.2.1 Recent Files


GAP stores a number of old files for fast reload. These are displayed at the bottom of the file
menu.

To load an old file, click on the number of file you wish to reload. If the file can be loaded, the
current file will be cleared an a new system window with the new file will be created.

The number of old files stored can be altered in the Preferences 79 dialogue, which is obtained
from the Options | Preferences menu item.

2.4.1.3 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.

1990-2022 Petroleum Experts Limited


68 GAP

2.4.1.4 GAP Files


GAP file structure is outlined below;

*.gar – GAP archive file containing all associated IPM files including GAP surface
network, MBAL tank and PROSPER well models.
*.gap – GAP file containing the surface network model.
*.gapprs – log file detailing prediction results. If more than one set of results have been
saved then multiple files
*.gaplgp/*.gaplgs – log messages from the prediction and network solve, respectively.
This contains details from the run such as limiting constraints, constraint violations, etc.
*.gapsnp – file containing data for saved snapshots.
2.4.1.5 Save As
Clicking File | Save As allows the saving of the current GAP system to a new file.

This option is used to create a new file for the current GAP network. A file browser is produced;
use this to select the required file. This can be an existing one or to create a new on. The file
extension can be omitted when typing in a name; the program will automatically append the
correct one.

If the file already exists, a warning message will be displayed asking if the file can be overwritten.

2.4.1.6 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 system view window is shown below:

GAP User Guide March, 2022


User Guide 69

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
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).

1990-2022 Petroleum Experts Limited


70 GAP

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 on
Items 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 area
GAP Window 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.
®
Windows specific Minimise: Click this button to minimise the window in the GAP workspace.
Actions 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

GAP User Guide March, 2022


User Guide 71

2.4.1.7 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


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

1990-2022 Petroleum Experts Limited


72 GAP

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.
Add flowsheet, creates sub-flowsheets that can be attached to the main GAP
flowsheet
Add a Surface Jet Pump. A SJP must have three connections; low pressure,
high pressure and discharge
Add a User Defined Element. A user defined element can be created from an
in-line general element which can be shared amongst multiple users within an
organisation.
Add a heat exchanger. This can be used to capture heating and cooling within
the network.

GAP User Guide March, 2022


User Guide 73

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.

1990-2022 Petroleum Experts Limited


74 GAP

2.4.1.8 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 71 .

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

GAP User Guide March, 2022


User Guide 75

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.
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
SJP Adds a surface jet pump in the system network
User Defined Adds a User Defined Inline Programmable element in the system network
Inline
Heat Adds a Heat Exchanger in the system network
Exchanger

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.

1990-2022 Petroleum Experts Limited


76 GAP

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.

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 252 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 64 GAP 64 user Interface 64 .

Combining Pipeline Elements


Pipe elements within the GAP interface can be combined to simplify the model, such that their
pipeline descriptions are contained within a single element on the interface. This can be done by
Right-clicking on the joint between to pipes, and selecting 'Combine pipes at joint'.

GAP User Guide March, 2022


User Guide 77

1990-2022 Petroleum Experts Limited


78 GAP

2.4.1.9 Auto Equipment Layout


This feature allows GAP to automatically find a new structural layout for equipment on the GAP
canvas. This is particularly useful when 3rd party data (such as ArcGIS data) has been ported
into GAP, where the pieces of equipment are automatically imported placed on top of one
another. To manually adjust such systems can often be a lengthy process.

The basic premise of this operation is to assign each piece of equipment a 'charge', which acts
to spread the equipment, and assign an 'attraction' between connected items (e.g. connected
joints) using spring-like forces. The equipment positions are then optimised by applying this
algorithm, leading to a more visually pleasing equipment configuration. The extent of the Auto-
Layout can be suited to various objectives by adjusting the algorithm parameters which are
outlined below.

To access the Auto-Layout feature, right-click anywhere on the GAP canvas and select Auto-
Layout which brings up the following window.

Algorithm Defines the algorithm used to perform the Auto-Layout. As above, the Simple
Force-Directed algorithm assigns each piece of equipment a charge to space
them and an attraction between connected objects to favourably layout the
elements on the canvas.
Initialisation Defines the starting point for the algorithm. Three options are available:
Circle initialises all elements in a circle
Current begins the algorithm using the geometry currently applied on the GAP
canvas.
Point initialises the algorithm by placing all equipment on a single point on the

GAP User Guide March, 2022


User Guide 79

canvas.

Maximum This value limits the number of steps allowed. Note, if the algorithm finds a
Iterations suitable geometry before it reaches the maximum number of iterations it will exit
the optimisation.
Force This parameter scales the attraction and repulsion forces involved, such that
Constant larger Force Constants leads to more rigid formations (i.e. increasing the Force
Constant favours attractive forces).
Initial This parameter defines the extent of the space explored by the algorithm. High
Temperature temperature values have more energy to explore the available space, whereas
reducing the temperature means the algorithm is confined to explore a smaller
space.
Perform This button simply begins the Auto-Layout algorithm.
Layout
Algorithm

2.4.1.10 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.

Enable Flyover If this is checked then it will be possible to see a status box appear as the

1990-2022 Petroleum Experts Limited


80 GAP

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
New Archive The new archive method allows GAP archive files (.GAR) to be created
Method which are larger than 2 GB for 32-bit applications.
VLP Read Mode Always read VLP's on opening GAP file

GAP will load all well VLP files when the file is being opened
Read VLP's at solver initialization

The model will be loaded without the well VLP data (fast for large models),
where the well VLP files will then be read at the start of a calculation
Never read VLP's

Well VLP files will not be loaded, and is time saving when working with
large models were results are only to be investigated
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

GAP User Guide March, 2022


User Guide 81

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
Show Flow Selecting the ‘Show Flow Assurance using Surface Terminology’ will
Assurance using
Surface display the flow assurance results in terms of total distance and elevation
Terminology rather than the default which is MD and TVD.

1990-2022 Petroleum Experts Limited


82 GAP

2.4.1.11 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.

GAP User Guide March, 2022


User Guide 83

In IPM 13, GAP has the capability to use externally programmed equipment models (e.g. booster
compressor model). Before they can be accessed, the custom equipment DLLs must first be
linked into GAP and this can be done by going to File | User Correlations | Booster Model
menu. The following screen will be presented:

Click ‘Add’ and select the required *.bst GAP external model file so it can be loaded in GAP.
Click “OK” button to return to GAP main interface. The external equipment model will now be
available for selection in the Compressor element in GAP where it can be used to calculate
performance of custom equipment.

Please contact Petroleum Experts to obtain more details about the Booster Model DLL
format required to create the *.bst GAP external model file.

1990-2022 Petroleum Experts Limited


84 GAP

The ‘Remove’ button removes the selected correlation from GAP.

2.4.1.12 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 G A P.

2.4.1.13 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

GAP User Guide March, 2022


User Guide 85

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

1990-2022 Petroleum Experts Limited


86 GAP

Application startup timeout time can be entered, after which the program will flag that the
MBAL and PROSPER licenses cannot be found.
2.4.1.14 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.

GAP User Guide March, 2022


User Guide 87

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

For each option the colour choices are


Monochrome
Grey scale
Colour

2.4.1.15 Copy and Paste


GAP includes a basic cut, copy and paste mechanism in many of its dialogues. This can be
used in addition to the standard Windows clipboard accelerators (Ctrl Insert to copy, Shift Insert
to paste, or Ctrl C to copy, Ctrl V to paste). Some or all of these buttons will be included:

Copy To copy a line of data, click the check box or the selection button next to the line
of data required and press the Copy button. This copies the data into GAP's
internal buffer
Paste To paste data to a required location, check the box or the selection button next
to the required location and press the Paste button. Any data that is currently at
that position will be overwritten
Delete To delete a row of data, check the box or click on the selection button alongside
the data and press Delete
All Checks all the check boxes in the array or highlights the entire grid
Invert Inverts the selection

In dialogues that support multiple selections, hold the <control> key down as the left hand mouse
button is clicked. This will enable more than one check box to be selected.

In some grids (post V3.2) it is possible to select portions of the grid by clicking the left hand
mouse button and dragging the mouse over the required region, prior to performing a copy or
paste. This feature is useful when copying data from GAP screens to other software, e.g. Excel
spreadsheets. Care should be taken when pasting to grids that the data items are consistent
with the position in the grid to which they are being pasted.
2.4.1.16 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.

1990-2022 Petroleum Experts Limited


88 GAP

2.4.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.4.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).

GAP User Guide March, 2022


User Guide 89

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

1990-2022 Petroleum Experts Limited


90 GAP

There is an example 933 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 155 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
field below the Baggage listing (or browse to it using the file browser provided),

GAP User Guide March, 2022


User Guide 91

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


92 GAP

2.4.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 March, 2022


User Guide 93

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


94 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 March, 2022


User Guide 95

2.4.3 The Options Menu


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

2.4.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-2022 Petroleum Experts Limited


96 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.

GAP User Guide March, 2022


User Guide 97

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
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.

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

Note regarding the cost of power:

1990-2022 Petroleum Experts Limited


98 GAP

In pump lifted wells, the motor power reported by GAP is actually the pump
power. The cost of power is calculated using the motor power divided by the
motor efficiency, as this is the actual electrical power consumed by the motor
(excluding power losses in the cable).
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 rate This 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 heating value comes from an internal correlation
developed from analysis of fluids done by Petroleum Experts. It considers all
the impurities that are entered in the gas stream and is a correlation based on
the gas gravity and the impurities.

If the model is compositional then the heating values come from the
composition.
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.

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
calculations.

PVT Model:

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

GAP User Guide March, 2022


User Guide 99

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
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 178 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

1990-2022 Petroleum Experts Limited


100 GAP

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.
Pressure and GAP calculates the pressure and temperature as above but allows a
Temperature - surrounding temperature gradient to be entered. The temperature gradient
Gradient can be specified on both a global level (by clicking Flow Assurance |
Global Temperature Gradient) or at individual pipe level.

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 of Hydrate Warning is only available through the GAP Options Menu 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 of hydrate risk
in the model, then it will raise a flag in the “Status” column of the pipeline results.

Please note: The Wax and Hydrate Warning option can be made available for Black Oil PVT
models when using PROSPER Online wells and pipelines.

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.

The improved steam modelling introduced in IPM 12 (i.e. accounting for the
steam enthalpy across the choke) is only available with the ELF choke model.

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.

GAP User Guide March, 2022


User Guide 101

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. Without this calibration, the temperature profiles
predicted may not be accurate.
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
accurate calculation of temperature is sought after and only limited data about
the completion is available.
Steam calculations require the Improved Approximation model to be used.
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 Heat The user can either enter a overall heat transfer coefficient or allow GAP to
Transfer predict the overall heat transfer value for a pipeline element.
Coefficient
The heat transfer coefficient calculated will capture heat transfer due to
conduction, forced/free convection and radiation. The thermal diffusivity of the
surrounding environment is taken into account and localised heating (or
cooling) of the formation by the well/pipeline fluid is also captured.

The completion description tool in the pipeline element input screen should be
used to define the detailed equipment description required (annulus fluid,
pipeline insulation etc.) to calculate the overall heat transfer coefficient.
Calculate Well
Choke DeltaT When the dynamic wellhead choke has been set on the well directly that GAP
will automatically control during optimization to meet constraints, rather than
explicitly defining an in-line choke in the system, the dynamic choke
temperature change can be captured by setting the option to YES, enabling
GAP to calculate the temperature drop using an isenthalpic flash. If set to NO,

1990-2022 Petroleum Experts Limited


102 GAP

the temperature drop is not accounted for.

The Calculate Well Choke dT option is not applicable for injection systems
Brine The brine properties option will define if the default water correlations or
Properties IAWPS correlations will be used by GAP. Enabling the IAWPS correlations will
Correlation allow further brine model setup options to account for dissolved gas in water
and pressure correlation. This will also disable the water viscosity correlations
option.

Further information on brine model setup can be found here 206 .


Water Use Default correlation
Viscosity
Correlation The default water viscosity in GAP uses a proprietary correlation. This water
viscosity correlation is a function of the temperature and salinity (at
atmospheric pressure).
Use Pressure Corrected Correlation
The pressure corrected water viscosity correlation modifies the default water
viscosity correlation to account for pressure. The correction is a based on
Figure 24-8, Bradley et al., Petroleum Engineering Handbook and is a function
of the temperature, salinity, and pressure.
Allow This option will toggle if transient pipeline calculations can be performed for
Transient pipeline elements. Please note that a separate GAP Transient license will be
Pipes/Wells required to transient calculations.
Background The user has the option of adding a picture in the background of the GAP
Bitmap 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 file path pointing to a *.bmp file and this will appear
in the main screen as soon as "OK" is selected, provided the following option
has also been selected.

GAP User Guide March, 2022


User Guide 103

If along with the production network system there are associated gas injection
Associated and/or water injection and/or gas lift injection networks it is possible to link
Injection them to the main production model though this option and solve the combined
Models 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-2022 Petroleum Experts Limited


104 GAP

2.4.3.2 Edit Injection Fluids


This is the fluid library that GAP will refer to when a particular fluids needs to be defined for
injection in a system with gas-lifted wells, gas/water injectors or sources etc. or when a particular
fluid needs to be defined for heat transfer coefficient calculations i.e. formation in-situ fluid or
annulus fluid.

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

For each row:


Enter a unique label.
The source type (gas, water, oil, steam and kill)
The source type can be steam, in which case the default quality needs to be entered in
this table. The steam quality is recalculated during a solve network based on the
prevailing steam injection manifold's pressure and temperature, thus, to use a steam
injection manifold steam quality of 70%, then the steam injection manifold pressure and
temperature must correspond to the prevailing steam saturation pressure and
temperature to be consistent with the steam thermodynamics. The Steam Calculation
utility shown below can be used to calculate the steam saturation temperature, as well as
accessed directly via the steam injection manifold.

GAP User Guide March, 2022


User Guide 105

If the source type is kill, then kill fluids properties (viscosity, volume factor) for up to 10
different temperatures can be entered.
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 four default fluids
Gas source - Gas01
Water source - Water01
Gas source - Atmosph01
Water source - SeaWater01

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 324 ).
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.

1990-2022 Petroleum Experts Limited


106 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.

GAP User Guide March, 2022


User Guide 107

2.4.3.2.1 Kill Fluid Type Properties


If the fluid type is kill, then PVT tables need to be defined. The required kill fluid properties kill
fluids properties (viscosity, volume factor) for up to 10 different temperatures need to be
entered.

2.4.3.3 Edit Formation Library


This is the formation library that GAP will refer to when either global or local pipeline environment
data needs to be setup i.e. air, sea, rock.

This information will be used for heat transfer coefficient calculations.

The list of formation types can be edited from the Options | Formation Library screen shown
below:

1990-2022 Petroleum Experts Limited


108 GAP

For each row:


Enter a unique label.
The formation type (air, water and formation)
If the formation type is Air, select a gas in-situ fluid from the fluid library and enter the
humidity and average wind speed
If the formation type is Water, select a water in-situ fluid from the fluid library and enter the
average sea velocity
If formation is defined, the heat transfer coefficient of the rock is calculated according to
shaliness, porosity etc. of the rock. Database values of formation conductivity, density
and heat capacity exist for pre-defined formation types
Fixed value stratum rock type can be used to manually define formation
conductivity, density and heat capacity
2.4.3.4 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.

GAP User Guide March, 2022


User Guide 109

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.

1990-2022 Petroleum Experts Limited


110 GAP

2.4.3.5 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 G A P 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 emulsion model is used to optionally replace the oil/water mixture
viscosity in pressure drop and pump calculations. When selected, the oil viscosity will be
factored according to the emulsion model which will be used in the calculation of the mixture
viscosity.

Emulsion viscosity is modelled as a function of water cut in 3 stages, as shown below.

GAP User Guide March, 2022


User Guide 111

Stage 1
Sharp increase at low water cut (WC), which is determined using the equation below.

Stage 2
Plateau with a constant oil viscosity multiplier for intermediate water cuts, which is determined
using the equation below.

The parameters Left and Right Water Cut for Maximum Viscosity (WC1 and WC2) define the
plateau region.

Stage 3
‘Tail’ that declines from the end of the plateau to the viscosity of water (at 100% water cut). This
is a proprietary model which is a function of the water viscosity, oil viscosity, WC1, WC2, P1, P2,
P3 and P4 parameters. As stage 3 is a function of oil/water viscosity, the shape of the curve is
thus dependent on the fluid PVT as well as the pressure/temperature which the fluid PVT is

1990-2022 Petroleum Experts Limited


112 GAP

evaluated at. Therefore a reference fluid PVT as well as reference pressure/temperature are
required to create the emulsion plot.

The reference oil and water viscosity used to determine the oil viscosity multiplier in stage 3 of
the emulsion plot (which is used to obtain the matching parameters) are calculated at the
specified Experiment match pressure and temperature. The PVT used to determine the
reference oil/water viscosity is based on an oil description from the 'Injection fluids' library, using
the black oil correlations selected in the ‘systems settings’.

If no oil fluid is present then default values are used:

o Oil gravity = 35 API

o GOR = 500 scf/STB

o Gas gravity = 0.7 sp. gravity

o Water salinity = 0 ppm

o No impurities

If there is more than one oil fluid type in the 'Injection fluids' list, then the user will be given

the choice of which to use (when ‘Plot’ is clicked)

If a composition is present it will use the black oil properties of that fluid

To calculate emulsion viscosity:


- Enter the water cut and emulsion viscosity multiplier data points in the "Emulsion
Data" table.
- Click the "Match" button.

GAP User Guide March, 2022


User Guide 113

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

1990-2022 Petroleum Experts Limited


114 GAP

The above regression will only match the first part of the curve (highlighted in blue) using
parameters 2 and 3 to fit the data. For the viscosity correction applying to water cuts above the
right plateau limit (highlighted in red), an exponential decline is implemented that needs to be
matched manually using parameter 4

GAP User Guide March, 2022


User Guide 115

2.4.3.6 Edit Wall Materials


This is the wall materials library which contains the thermal properties of pipes/insulation etc. that
can be set when allowing GAP to predict the overall heat transfer coefficient for a pipeline
element.

The database comes with 10 pre-defined items and more can be added by the user. When
adding a new item to the library; a label, thermal conductivity, heat capacity and emissivity will
need to be specified.

Colours...:

1990-2022 Petroleum Experts Limited


116 GAP

The colours button will open a new window which contains a list of all items in the library. A colour
to the material can be specified for display in the completion description tool. A specific colour
for the material can be defined by RGB colour code or using the slide bar - as shown below.

2.4.3.7 Edit System 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
Choke Parameters

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 March, 2022


User Guide 117

Injection This is the default choice for the water injection and gas injection. The Edit
Fluids Injection Fluid 104 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 110 option
Model allows the user to modify the list of emulsion models used in the model.
Tax Regimes This is the default choice for the Tax Regimes. The Edit Tax Regimes 108 option
allows the user to modify the list of tax regimes that can be used in the various
wells in the system.
Wall Materials This is the default choice for wall material when calculating heat transfer
coefficients. The Edit Wall Materials 115 option allows the user add additional
items to the list.

1990-2022 Petroleum Experts Limited


118 GAP

Default PVT This is the default choice for the Oil Pb, Rs, Bo correlation, the oil viscosity and
Correlation the gas viscosity correlations.

Note that the Beggs et al oil viscosity correlation has been modified at low
temperatures to account for the fact that the original correlation tended to over
predict viscosity at low temperatures.
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
themselves. GAP will perform the calculations based on the new values of Bo
and Bg.

'Use PROSPER Matching' will disable the volume correction to Bo and Bg and
use PVT match parameters imported from PROSPER. Further information can
be found here 208 .
Use It the PVT has been matched in the underlying PROSPER well models
PROSPER selecting the option means the underlying correlation matching parameters will
Matching be passed to GAP when generating the IPR. TO also use the matched PVT
correlations for flow line calculations, then it is important to also set the
corresponding Pb, Rs, GOR and viscosity correlations as per the underlying
PROSPER file at the pipeline element level.

The matched PVT correlations will be used at the pipeline level until a different
matched PVT is encountered, where at the corresponding node where fluids will
mix, the underlying global PVT correlations well be used for downstream PVT
calculations since it is not possible to mix invividually matched black oil PVT
correlations.

VLP The default setting is 20 rates and 10 sensitivity variables.


Generation
The maximum number of rates and sensitivity values that can be used for VLP
generation can be adjusted.

Modifying these values in the settings screen controls the maximum number
of values that the user can enter in the Generate | Generate well VLPs using
PROSPER data screen.

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

GAP User Guide March, 2022


User Guide 119

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 100
Slug Method System default slug characteristic method of calculations for
flow assurance results. Further details on these method can
be found in the PROSPER User Guide.
Brill
Petroleum Experts 6
RCS Mechanistic
Choke This is the default model for performing any choke calculations.
Parameters

Tight Reservoir Time-step Method

Use Historical IPR - This uses historical data points to define the IPR time step. This is the
default method.

Use Predictive IPR - This uses future data points to define the IPR time step.

1990-2022 Petroleum Experts Limited


120 GAP

GAP User Guide March, 2022


User Guide 121

2.4.3.8 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.

An example of the title and comment is shown below:

1990-2022 Petroleum Experts Limited


122 GAP

GAP User Guide March, 2022


User Guide 123

2.4.3.9 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.

The invalid items section displays equipment which contain errors and need to be reviewed.
Selecting an invalid item and clicking the 'Edit' button will take the user directly to the summary
screen of the item in question.

1990-2022 Petroleum Experts Limited


124 GAP

2.4.3.10 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.

GAP User Guide March, 2022


User Guide 125

2.4.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:

1990-2022 Petroleum Experts Limited


126 GAP

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:


Draw Options 126
Highlight Options 126
Window Aspect and Drawing Options 131

Network Drawing Position 137


2.4.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.4.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:

Grey out masked items (masked items in the network are coloured grey)
Invalid items (usually highlighted by a thick red circle)
Bottle necked pipes (highlighted by a purple colour)
TVD differences (see below 126 )
Solver pressure and mass imbalances (see below 129 )
Limiting and violated constraints (see below 130 ).
2.4.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 "Manifold_A":

GAP User Guide March, 2022


User Guide 127

Upon inspection of the pipeline description the TVD of the most downstream point of the
pipeline situated upstream of the node "Manifold_A" is 625ft. Where as the TVD of the most
upstream point of the pipeline situated downstream of the node "Manifold_A" is 600ft.

1990-2022 Petroleum Experts Limited


128 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 March, 2022


User Guide 129

2.4.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 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-2022 Petroleum Experts Limited


130 GAP

2.4.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 March, 2022


User Guide 131

2.4.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.4.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

1990-2022 Petroleum Experts Limited


132 GAP

Tooltip activated when passing the mouse through each element

Custom Tooltip
The Custom Tooltip option allows the user to configure the solver results displayed for each type
of equipment.

The Custom Tooltip can be defined by selecting the Custom Tooltip from the Icon Tooltip menu
and clicking Edit Custom Tooltip.

The tooltip can then be edited by selecting the equipment (LHS) and assigning to solver
variables (RHS). The example shown below shows that the separator tooltip will display the oil
rate, gas rate and water rate.

GAP User Guide March, 2022


User Guide 133

2.4.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.4.4.3.3 Colours
From the View | Colours menu item the user may change the colours of the system drawing and
the GAP windows.

1990-2022 Petroleum Experts Limited


134 GAP

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)

GAP User Guide March, 2022


User Guide 135

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
been chosen, save the current set of colours for future GAP sessions by clicking ‘Save as user
default’.

2.4.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.4.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.4.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.

1990-2022 Petroleum Experts Limited


136 GAP

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.

GAP User Guide March, 2022


User Guide 137

2.4.4.4 Network Drawing Position


These options allows the user to modify the placement of the icons in the main program window.
2.4.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

1990-2022 Petroleum Experts Limited


138 GAP

2.4.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 139
Select Options 140
Selected Equipment Options 144
Find Equipment 152
Edit Options 154
Transfer and Import Options 157

GAP User Guide March, 2022


User Guide 139

Execute OpenServer Command 164

2.4.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:

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

1990-2022 Petroleum Experts Limited


140 GAP

2.4.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:

GAP User Guide March, 2022


User Guide 141

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 - as shown


below.

1990-2022 Petroleum Experts Limited


142 GAP

GAP User Guide March, 2022


User Guide 143

2.4.5.3 Dialog Select


This screen allows the elements within the model to be selected via a screen rather than using
the Select cursor.

Elements can be selected by highlighting them on the right hand menu.

What is shown in the right hand menu can be filtered by equipment type by selecting them in the
left hand menu.

For both menus, the following options are available:

All Will select all of the items in the list.


Invert Will invert the current selection (i.e. any items which are selected will become
unselected and any unselected items will become selected)
None Will unselect all items in the menu

1990-2022 Petroleum Experts Limited


144 GAP

2.4.5.4 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.4.5.4.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 March, 2022


User Guide 145

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


146 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.
Show gradient This option allows the user to plot the pressure gradient along both the
between two upstream and downstream pipelines.
selected nodes
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 165 for further details).
(.gpp)
Snap to Grid This option snaps the selected elements to grid (see above 137 ).
Change Icon This option changes the elements' icon label position.
Label Position

GAP User Guide March, 2022


User Guide 147

2.4.5.4.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 -
PROSPER on line). Refer to the Well description 261 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 CompositionThis option is enabled when one of the compositional models is being

1990-2022 Petroleum Experts Limited


148 GAP

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).
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 310 .
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 976 )
Convert to well This option converts the selected inflow element into a well model
(VLP/IPR Intersection)
Toggle PROSPER This option toggles the 'Use match coefficients' check box option in the
PVT import well Input | IPR | More... tab
Import PROSPER PVT This option will import the PVT matching parameters of the associated
matching PROSPER file to the well model
Import transient well This option will import the equipment data of the associated
geometry from PROSPER file for the selected well
PROSPER
Convert to transient This option converts the selected well to a transient well model
well

GAP User Guide March, 2022


User Guide 149

2.4.5.4.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.
Toggle transient Flag This option will toggle on/off the transient check box for the selected
for selected pipeline element
Equipment
Set Pipe Calculate This option will toggle on/off the 'Calculate Heat Transfer Coefficient'
Heat Transfer option for the selected pipeline element

1990-2022 Petroleum Experts Limited


150 GAP

2.4.5.4.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 March, 2022


User Guide 151

2.4.5.4.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-2022 Petroleum Experts Limited


152 GAP

2.4.5.5 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

GAP User Guide March, 2022


User Guide 153

lower list changes to reflect the new selection.

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 252 for the currently selected piece of
equipment
Select This selected the highlighted item
OK Clears the screen

1990-2022 Petroleum Experts Limited


154 GAP

2.4.5.6 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.4.5.6.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.

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.

the 'Transfer' Button can be used to move the value of current equipment control in one column to
another column, for example the 'Measured' well head choke dP can be transferred to the
'Actual' when validating the system network with a solve network (no optimisation).

GAP User Guide March, 2022


User Guide 155

2.4.5.6.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.

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

1990-2022 Petroleum Experts Limited


156 GAP

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 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.

GAP User Guide March, 2022


User Guide 157

2.4.5.7 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.4.5.7.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.

1990-2022 Petroleum Experts Limited


158 GAP

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
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.

GAP User Guide March, 2022


User Guide 159

2.4.5.7.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 777 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

1990-2022 Petroleum Experts Limited


160 GAP

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 March, 2022


User Guide 161

2.4.5.7.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.

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 .1156

1990-2022 Petroleum Experts Limited


162 GAP

2.4.5.7.4 Lump/Delump Compositions


When the model is is compositional mode, the 'Lump/Delump Compositions...' option can be
used to apply a lumping rule to multiple wells in a batch.

Select which wells in the system are going to be associated with a particular lumping rule.

The required lumping rule can be selected from the drop down menu and modified with the 'Edit'
button. Further information on compositional lumping can be found here 190 .
2.4.5.7.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

GAP User Guide March, 2022


User Guide 163

System Injection Manifolds the gas lift injection manifolds

1990-2022 Petroleum Experts Limited


164 GAP

2.4.5.8 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.

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 March, 2022


User Guide 165

2.4.5.9 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-2022 Petroleum Experts Limited


166 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 March, 2022


User Guide 167

and then save the .gpp file.

1990-2022 Petroleum Experts Limited


168 GAP

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)".

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

GAP User Guide March, 2022


User Guide 169

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 .
1216

1990-2022 Petroleum Experts Limited


170 GAP

2.4.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.

GAP User Guide March, 2022


User Guide 171

2.4.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 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

1990-2022 Petroleum Experts Limited


172 GAP

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
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.

Note regarding the power constraint:


In pump lifted wells, the motor power reported by GAP is actually the pump power. The
maximum power constraint is compared against the motor power divided by the motor
efficiency, as this is the actual electrical power consumed by the motor (excluding power losses
in the cable).

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.

GAP User Guide March, 2022


User Guide 173

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 773 for more information.
Help Use this button to access this screen.

1990-2022 Petroleum Experts Limited


174 GAP

2.4.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.

GAP User Guide March, 2022


User Guide 175

2.4.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.

1990-2022 Petroleum Experts Limited


176 GAP

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

GAP User Guide March, 2022


User Guide 177

2.4.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.

1990-2022 Petroleum Experts Limited


178 GAP

2.5 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

GAP User Guide March, 2022


User Guide 179

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
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.5.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

1990-2022 Petroleum Experts Limited


180 GAP

Selecting the best correlation


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 603 .

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 116 ), 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, G A P will blend the fluids at every

GAP User Guide March, 2022


User Guide 181

manifold where they meet in order to determine the properties of the new fluid that 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.

1990-2022 Petroleum Experts Limited


182 GAP

2.5.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 198

Fully Compositional Click here 199

Black Oil Compositional Lumping/ Click here 200

Delumping

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

2.5.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.

GAP User Guide March, 2022


User Guide 183

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

1990-2022 Petroleum Experts Limited


184 GAP

GAP User Guide March, 2022


User Guide 185

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.

1990-2022 Petroleum Experts Limited


186 GAP

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

With the use of a polynomial that corrects the CO2 volume shift parameter ('correct CO2 Density'
enabled), the CO2 properties can be modeled such that they are consistent with the NIST
standard data up to 20 000 psi.

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 12 )
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

GAP User Guide March, 2022


User Guide 187

perform Lumping/Delumping (ref. Lumping/Delumping 12 ). 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)
More Lumping This section defines the Lumping Rule used in the whole GAP
model. See paragraph below 192 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


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

Flash Mode The "Two Phase" flash method treats the water as a completely
separate phase from the hydrocarbon fluid.
Hydrate Model There are three models available for predicting the onset of
hydrate formation. These are:

1. Munck et al
2. Hydrafact Modified Cubic
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 190 for further details

1990-2022 Petroleum Experts Limited


188 GAP

Viscosity
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.

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

Thermal
Two enthalpy models are available for selection. The Original model uses a simple correlation to
determine each component enthalpy as a function of SG, MW and BPt. Lee and Kesler model
provides a more complex description of fluid enthalpy by correcting specific heat capacities -
this is particularly useful for heavy oils.

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.

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

GAP User Guide March, 2022


User Guide 189

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
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.

1990-2022 Petroleum Experts Limited


190 GAP

2.5.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
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'.

GAP User Guide March, 2022


User Guide 191

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.

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 186 ). 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.

1990-2022 Petroleum Experts Limited


192 GAP

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
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.5.2.1.2 Water Composition


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

GAP User Guide March, 2022


User Guide 193

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.

1990-2022 Petroleum Experts Limited


194 GAP

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 187 ).

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 100 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.5.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 161 ).

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

GAP User Guide March, 2022


User Guide 195

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.

1990-2022 Petroleum Experts Limited


196 GAP

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.

GAP User Guide March, 2022


User Guide 197

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 918 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.

1990-2022 Petroleum Experts Limited


198 GAP

2.5.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 182 ) to use the Lumping/Delumping methodology. This allows the
user to track either the full or the lumped composition.

GAP User Guide March, 2022


User Guide 199

2.5.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. Gap will mix the properties of
components that have the same name or similar molecular weight. Components with different
names and molecular weights (such as pseudos) will not be blended and will be carried forward
as separate components. This is illustrated in the sketch below.

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.

1990-2022 Petroleum Experts Limited


200 GAP

2.5.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 182 ) to use the Lumping/Delumping
methodology.

GAP User Guide March, 2022


User Guide 201

2.5.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.

1990-2022 Petroleum Experts Limited


202 GAP

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.

GAP User Guide March, 2022


User Guide 203

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.

1990-2022 Petroleum Experts Limited


204 GAP

Similarly, the user can perform a Target H2O calculation to determine the water cut based on a
given composition and vice versa. Within this interface, we can also use the 'Calculate Saturated
Gas' option (enabled by setting the watercut to use 'Water/Volume Gas') to determine the
volume of water which will saturate the gas for a given temperature and pressure.

GAP User Guide March, 2022


User Guide 205

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 .1176

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

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.

1990-2022 Petroleum Experts Limited


206 GAP

2.5.3 Brine Modelling


As of IPM 11, there are now two options for modelling brine in the system:

The default correlation


The IAWPS correlation

Default

The default correlation uses a variety of correlations and methods to determine the water
properties to be used. This sections briefly outlines these.

There are two different water viscosity calculation methods available within GAP. These are:

The default correlation


o The water viscosity in GAP uses a proprietary correlation. This water viscosity
correlation is a function of the temperature and salinity (at atmospheric pressure).
Pressure corrected correlation
o The pressure corrected water viscosity correlation modifies the default water viscosity
correlation to account for pressure. The correction is a based on Figure 24-8, Bradley
et al., Petroleum Engineering Handbook and is a function of the temperature, salinity,
and pressure.

When the default brine correlation is used, one of the above options will be used as selected by
the user.

The water formation volume factor is determined from a proprietary curve fit to data from Frick
“Petroleum Production Handbook” (1962). In addition to this, GAP also makes a proprietary
correction for water salinity.

Water density is based on the water formation volume factor and the water specific gravity (i.e.
salinity), using the equation below:

IAWPS

The IAWPS Correlation uses the IAPWS-97 equation of state at its base to determine the water
properties at pressure and temperature. Although the IAPWS-97 equation of state is the basis
for calculations, additional methods have also been employed to account for salinity and gas
solubility. Depending on the options selected in the screen below, different modifications will be
applied.

GAP User Guide March, 2022


User Guide 207

The Spivey, McCain and North (2004) formulation has also been used to correct the density for
brine with a modification to the water vapour pressure method.

When this brine model is selected, the brine viscosity is modelled using the Kestin, Khalifa and
Correia (1981) method despite what may have been selected in the Fluid Description section.
The Kestin, Khalifa and Correia (1981) method is based on Chen and Millero's (1977) model at
standard pressure. Additional pressure modifications up to 500 MPa have been applied to the
Kestin method, with theoretical deviation is ±1.5%.

There are three options which are described below:

No Dissolved Gas - this option does not consider the presence of


dissolved gas in water.

Assume Methane Only - this option assumes that all of the dissolved
gas is methane. This uses the Duan and Mao (2006) formulation to
Brine find the gas fugacity and partial molar volumes.
dissolved gas
model Use Gas Gravity for Rsw - this option assumes that the dissolved
gas is a mixture of hydrocarbons and impurities. This uses also the
Duan and Mao (2006) formulation to find the gas fugacity and partial
molar volumes of methane and impurities with the additional
modification of using a proprietary method based on Henry's Law
constants. These constants can be found via the Max Planck Institute
database compilation (which is an open source) and allow for
changing gas composition to be accounted for.

There are two options which are described below:

No Pressure Correction
Brine thermal
Brine thermal properties are based on correlations developed by the
properties
Lawrence Livermore Laboratory with heat capacity being calculated
using the Jamieson et al. (1969) method.

1990-2022 Petroleum Experts Limited


208 GAP

Apply Pressure Correction


When the pressure correction is applied, this uses the work of Sun et
al. (2008).

References

Spivey, J. P., McCain, W. D., and North, R. (2004), Estimating Density, Formation Volum Factor,
Compressibility, Methane Solutbility, and Viscosity for Oilfield Brines at Temperatures from 0 to
275°C, Pressures to 200 MPa, and Salinities to 5.7 mole/kg, Journal of Canadian Petroleum
Technology, 43 (7), pp 52 - 61

Kestin, J., Khalifa, H. E., and Correia, R. J. (1981), Tables of the Dynamic and Kinematic
Viscosity of Aqueous NaCl Solutions in the Temperature Range 20-150°C and Pressure Range
0.1-35 MPa, Journal of Physical and Chemical Reference Data, 10 (1)

Chen, C. T., and Millero, F. J. (1977), Speed of sound in seawater at high pressures, The
Journal of the Acoustical Society of America, 62, pp 1129 - 1135

Duan, Z., and Mao, S. (2006), A thermodynamic model for calculating methane solubility, density
and gas phase composition of methane bearing aqueous fluids from 273 to 523 K and from 1 to
2000 bar, Geochimica et Cosmochimica Acta, 70, pp 3369 - 3386

Jamieson, D. T., Tudhope, J. S., Morris, R., and Cartwright, G. (1969), Physical properties of
sea water solutions: heat capacity, Desalination, 7 (1), pp 23 - 30

Sun, H., Feistel, R., Koch, M., and Markoe, A. (2008), New equations for density, entropy, heat
capacity, and potential temperature of a saline thermal fluid, Deep-Sea Research, pp 1304 -
1310

2.5.4 Import PROSPER PVT


It is possible to import the PVT match parameters from PROSPER into GAP. Similar to
PROSPER, the PVT match parameters will be used to apply a multiplier and shift to the black oil
correlations based on the PVT matching performed in the PROSPER file. These PVT match
parameters corrections will be used for well and pipeline pressure drop calculations.

PVT MATCH PARAMETER SETUP

In order for GAP to use the PROSPER PVT match coefficients, this needs to be in enabled from
the system default settings (as shown below) – this can be accessed from Options | Edit
System Settings…

GAP User Guide March, 2022


User Guide 209

The PVT match parameters are imported at the IPR level – this is in Well | Input | IPR | More …
(as shown below). The user is required to check the ‘Use match coefficients’ option and then
press the ‘Import PROSPER PVT’ button.

Please note that correlation field will be coloured red if the PROSPER PVT is not consistent with
the GAP default PVT correlations.

PVT MATCH PARAMETER RULES & BLENDING

The imported PROSPER PVT correlation and match parameter will be used to perform well
calculations (PI mobility correction etc.).

PVT match parameters will be passed along the network if the downstream pipeline network
contains the same PVT correlations as the imported PROSPER PVT at the well.

1990-2022 Petroleum Experts Limited


210 GAP

PVT match parameters will also be blended at a joint in the network if the PVT correlations are
the same.

If the PVT correlations are not the same at a joint in the network then PVT match parameters will
no longer be used downstream of that joint. The system default PVT correlations will be used to
obtain fluid properties for all equipment (pump, compressors etc.) calculations. When a pipe
connects to a equipment, if the upstream PVT correlation is not consistent with the system
default PVT correlation then PVT match parameters will no longer be used downstream.

GAP User Guide March, 2022


User Guide 211

1990-2022 Petroleum Experts Limited


212 GAP

2.6 Flow Assurance


This section summaries the advanced flow assurance features in GAP.

2.6.1 Temperature Gradient


A temperature gradient can be entered on a global basis or local pipeline basis. To enable a
temperature gradient to specified the prediction method in the system options should be set to
Pressure and Temperature - Gradient, as shown below.

Global Temperature Gradient

Clicking Flow Assurance | Global Temperature Gradient... a global temperature gradient that

GAP User Guide March, 2022


User Guide 213

covers all the pipelines in the GAP network can be specified in terms of TVD vs. surrounding
temperature, as shown below.

Local Temperature Gradient

A local temperature can also be specified on an individual pipeline level which can be done by
clicking on the pipeline in question | Input | Environment and ensuring the use local
gradient tick box in selected. The temperature gradient can then be entered by clicking on the
Enter Gradient Data button.

1990-2022 Petroleum Experts Limited


214 GAP

2.6.2 Formation Data


A formation profile can be entered on a global basis and local basis - similar to the temperature
gradient option. This information is used to describe the surrounding environment of pipeline
elements in GAP i.e. surrounded by air, sea or formation. The global formation data will be
followed by all pipelines and transient wells. Local formation data can be entered to individual
pipelines/transient wells to account for geographic variations.

GAP User Guide March, 2022


User Guide 215

This formation profile data is required to allow GAP to predict the heat transfer coefficient.
Global and local data entry will be possible once 'Heat Transfer Coefficient Calculations' have
been allowed from the system options - as shown below.

1990-2022 Petroleum Experts Limited


216 GAP

Global Formation Data:

This will require the prediction method in system options to be set as 'Pressure and temperature
- Gradient'. The setup of the global formation data can be accessed from the Global
Temperature Gradient window - as shown below. Different formation labels (defined in the
formation library) can be defined vs. TVD to create a surrounding environment for pipelines
which are set to calculate heat transfer coefficient.

GAP User Guide March, 2022


User Guide 217

Local Formation Data:

A local formation profile can be entered for individual pipeline by checking the 'Use local pipe
environment' check box - as shown below. The local environment data can then be entered by
clicking on the 'Enter Climate Data..' button. This will ignore the global formation data defined.

1990-2022 Petroleum Experts Limited


218 GAP

2.6.3 Flow Assurance Properties


The following screens allow users to specify key parameters in several flow assurance
calculations in GAP.
2.6.3.1 Sand Transport

This calculation determines the maximum size of a grain of sand which can be transported by the
producing fluid.

The only parameter required is the Sand Density.

GAP User Guide March, 2022


User Guide 219

The model implemented in GAP is based upon a series of equations derived by Thomas
(Reference 3) to calculate the friction velocity at the limit of solid transport in a liquid / solid
system.

Sand will be lifted to the wellhead only if the velocity of the fluid in the wellbore is greater than the
“Critical Transport Velocity”.

This velocity is function of sand particle size, shape and density and the fluid density and
viscosity.

Two different equations are used: one for oil wells and one for gas well:

1. Oil Wells

The equation used in this case is more applicable to laminar flow, conditions that are
likely to be encountered in oil and / or water wells.

Where:

- V = Critical Transport Velocity (cm/sec) - Equivalent to Superficial Fluid


Velocities in PROSPER

- N = Dynamic Fluid Viscosity (poise) - Equivalent to Mixture Viscosity in


PROSPER

- g = Gravity (980 cm/sec2)

- r = Particle Radius (cm) - This is the parameter calculated by


PROSPER

- = Fluid Density (gm/cm3) - By default, PROSPER uses a 2.65g/


cc sand density. This can be changed in the System | Solids section of the main
PROSPER menu.

- = Particle Density (gm/cm3)

1990-2022 Petroleum Experts Limited


220 GAP

2. Gas Wells

The equation used in this case is applicable to high gas flows and does not include a
factor for viscosity: viscosity has only an insignificant effect on lifting sand.

Where:

- V = Critical Transport Velocity (ft/sec) - Equivalent to Superficial Fluid Velocities in


PROSPER

- = Fluid Density (lb/ft3)

- = Particle Density (lb/ft3) - By default, PROSPER uses a 2.65g/cc sand


density. This can be changed in the System | Solids section of the main PROSPER
menu.

- g = Gravity (32.2 ft/sec2)

- d = Particle diameter (ft) - This is the parameter calculated by PROSPER

- Cd = Drag coefficient for the particle - Essentially a function of particle shape at high
Reynolds numbers. Cd value for sand grain is 0.85.

In both the oil/water and gas cases, PROSPER knows the fluid velocity in the wellbore. Therefore,
it will calculate the maximum particle diameter that can be transported by the well flow.

These calculations are important when an attempt is made to cut back the production rate so
that the well will stop producing sand and will help determine if the formation sand may be
accumulating at the bottom of the well.

References:

1. Fairhurst.CP – “Sand Transport in the South East Forties Pipe Line”, BHRA, 1983

2. Smith.M – “A Model for Predicting Solids Transport in near Horizontal Multi-Phase Oil
and Gas Pipe Lines”, XFE report 8/2/1993

GAP User Guide March, 2022


User Guide 221

3. Wasp, Kenny & Gandhi – “Solid-Liquid Flow Slurry Pipe Line Transportation”, Gulf
Publishing Company, Clausthal, Germany 1979

2.6.3.2 Erosion
The DNV erosion model will be used to calculate the rate of erosion based on the entered sand
production rate, wall material and deformation when performing a gradient calculation.

When performing pipeline calculations, GAP will evaluate the rate of erosion for the following
geometries:

Straight Pipe

Reducing Union (if present)

Bend (if present from deviation survey entered)

The geometry with the largest rate of erosion is reported in the gradient calculation.

Further details on the DNV erosion model can be found in the flow assurance section of the
PROSPER user manual.

The gradient calculation will also use the sand production rate, C-Factor and S-Factor input to
estimate the erosional velocity value

This erosion can be caused by the repeated impact of solid particles on tubings and pipelines.
To avoid this we attempt to estimate the velocity at which erosion will occur.

Normal practice is to use equation of API 14 E. This can be unreliable especially for clean
production where the limiting value of C (125) can be too restrictive. In practice, values of 1000
for C have been recorded in pipes where no erosion has been detected.

1990-2022 Petroleum Experts Limited


222 GAP

In PROSPER, we calculate and display the C value and it is the responsibility of the User to
work out whether for this C value, erosion will occur or not depending upon the expected
operating conditions. An interesting paper that deals with the subject is:
"Criteria for Sizing Multiphase Flowlines for Erosive/Corrosive Service" by S.J. Svedeman -
SPE Paper 26569.

The debate regarding the erosional velocity is still big concern; many investigators reviewed the
velocity limits specified in the RP 14E and concluded that the limits are too conservative

Some investigators define the use the C value as follows:

C=100 for continuous service


C=125 for intermittent service
C=150- in cases where corrosion is controlled by
200 inhibitors

In cases where sand is present even at very low velocities erosion will be a problem and there
are no guidelines on the amount of reduction to the calculated velocity in this cases.

Some times, limiting the velocity in flowlines to a unnecessarily low value will result in costly
oversised flowlines

Other investigators calculated that the velocity that would produce liquid impingement erosion
corresponds to C=300.

Other cases, for example the erosional velocity limits for water injection system correspond to
values of C=450 with out any solid and non corrosive conditions but when corrosion is present
this value can be reduced to C=250 depending on the corrosive condition

It is precisely because a variety of different erosion / corrosion applications defined by different


investigators that PROSPER only displays the C factor and we leave it to the user to work out,
based on different criteria, whether erosion will occur or not depending certain operating
conditions.

GAP User Guide March, 2022


User Guide 223

New erosional velocity calculations for sand landen fluids

A ConocoPhillips paper (An Alternative to API14E Erosional Velocity Limits for Sand
Laden Fluids - ASME Transaction - Energy Resources Technology Journal) challenges
API14E on the basis that it can be very conservative for clean service and is not applicable for
conditions where corrosion or sand are present. It proposes a simple alternative approach that
has been verified by a comparison with several multi-phase flow loop tests that cover a broad
range of liquid-gas ratios and sand concentrations. Values of S for different components are
proposed in the paper

The constants C and S for the two formulations can be customised by selecting System/Solids
and tab button Erosional Velocity or the Options button in any calculation screen.

When in this area a Sand Production Rate equal to nil is entered, then the program will utilise the
original API 14E equation. If a non-zero Sand Production Rate is entered then the program will
use the modified formulation subject to the following logic.

Calculate the Erosional Velocity for solid-free fluid using the C value entered (Vef).
If the Sand Production Rate (W) is greater than zero:
Calculate the Erosional Velocity using the ConocoPhillips method (Ves).
If the Vef (for solid free fluid) < Ves (for sand-laden fluid), set the erosional velocity = Vef.

In order to see the values computed by the ConocoPhillips method set C sufficiently high until the
values do not change for changing values of C.

1990-2022 Petroleum Experts Limited


224 GAP

2.6.3.3 Liquid Loading

The Turner Equation is used to study the continuous removal of liquid from gas wells.

This equation is used to determine the minimum velocity of the producing fluid necessary to drag
away the droplets of liquid. The original formulation of the equation is the following:

Please note that this is the equation from the original paper where the units are inconsistent with
the constant given. The 20.4 constant in fact relates to when the surface tension is defined in
units of 'lbf/ft'.

Using the Petroleum Experts 4 mechanistic model it has been found that 2.04 gives much more
reliable results in a wide range of examples.

This constant can be however changed by the User by selecting Flow Assurance | Flow
Assurance Properties | Liquid Loading...

GAP User Guide March, 2022


User Guide 225

2.6.3.4 Pigging

This calculation can be used to describe the pigging characteristics of the flow in pipelines.

Assuming 100% removal efficiency of a sphere and that all the liquid removed by the sphere is in
the form of a continuous slug, the pigged slug volume can be estimated by integrating the
difference between the liquid holdup and the no-slip holdup in the pipeline. Also the time to
produce the slug can be calculated from

These are the additional results reported in the Gradient Traverse results. These values are all
cumulative,
Pigged Slug Length
Pigged Slug Volume
Time to Produce Pigged Slug Length
Time for Pigged Slug to reach Outlet

Pigging Efficiency can be entered by user by clicking Flow Assurance | Flow Assurance
Properties | Pigging...
2.6.3.5 Corrosion
The NORSOK CO2 corrosion model will be used to calculate the rate of corrosion reported in
the pipeline flow assurance results.

The corrosion rate (CR) reported is:

CR = IRC * EFF + URC * (1-EFF)

The uninhibited rate of corrosion (URC) calculated by the NORSOK CO2 model will be adjusted
by the user entered inhibited rate (IRC) and inhibitor efficiency (EFF).

1990-2022 Petroleum Experts Limited


226 GAP

Further information on the NORSOK CO2 corrosion model can be flow assurance section of the
PROSPER user manual.

Please note that water and a %CO2 impurity must be present in the GAP pipelines for a
corrosion rate to be calculated. The alkalinity entered acts as a buffer in the pH calculations.

The standalone CO2 corrosion calculator can be accessed by navigating to the pipeline flow
assurance results and right clicking on the gradient results.
2.6.4 Pipeline Flow Assurance
GAP has been designed to be used as part of flow assurance studies. As part of this, a number
of flow assurance calculations and plots can be accessed from the pipeline results by clicking on
view button highlighted below.

This will bring up the Gradient Traverse calculation for the pipeline. Right clicking at a particular
depth will bring up a menu with a number of additional flow assurance calculations and plots that
can be accessed.

GAP User Guide March, 2022


User Guide 227

2.6.4.1 Flow Regime Plot


The Taitel-Dukler flow regime map can accessed by right-clicking on a gradient calculation point
and selecting 'Flow Regime Plot' or pressing the shift key and right-clicking on the desired result.

1990-2022 Petroleum Experts Limited


228 GAP

This plot can be used to identify the current operating point on a flow regime map and how it
stands compared to the flow regime boundary.

Please note that the operating point on the Taitel-Dukler flow regime map may differ to the
regime reported in gradient calculation as different flow correlations/models have different
methods of determining the flow regime.
2.6.4.2 Slug Catcher Calculation
The slugcatcher calculator is a powerful tool for sizing slugcatchers/separators, as well as
validating slug catcher designs for potential carry over and carry under situations.The slug
catcher calculation can accessed by right-clicking on a gradient calculation point and selecting
'Slug Catcher Calculation'

Invoking the slugcatcher calculator from a gradient calculation will automatically populate all input
fields with the current selected operating conditions.

GAP User Guide March, 2022


User Guide 229

Based on the slugging characteristics determined by the slug method selected , it is possible to
calculate the surge volume required to contain the slug.

First, the slugcatcher liquid rate (i.e. the slug and bubble liquid rate) can be determined based
on the average liquid rate and slug/bubble surge factor for liquid. The outlet liquid rate is the
steady state rate of production and is equal to the average liquid rate. The diagram below
illustrates the slugcatcher liquid rates plot:

1990-2022 Petroleum Experts Limited


230 GAP

Now that the inlet and outlet liquid rates are known with time, the surge volume of liquid in the
slug catcher can be calculated based on a mass balance over the slug catcher unit. The peak
surge volume reflects the maximum liquid surge volume in the slugcatcher and will occur at the
end of the slug length and start of the bubble length. The position of the peak surge volume over
a unit slug period will be dependent on the slug and bubble length.

GAP User Guide March, 2022


User Guide 231

Once the surge volume with time in the slugcatcher can be determined, design rules available in
the slugcatcher calculator can be used to size and validate slugcatcher designs in its ability to
separate the liquid and gas effectively e.g.

Max gas velocity to be able to separate liquid droplets from the vapour phase (Sounders-
Brown Equation)
Max liquid velocity to be able to separate gas bubbles from the liquid phase (Based on Stokes
Law)
Normal liquid level
Retention time: API Spec 12J or User Specified

The following input data is required:

Input

The entered pressure, temperature, WCT and total GOR should reflect the fluid PVT and insitu
conditions in the slugcatcher.

Mean Slug or 1/1000 If the slugcatcher calculator has been accessed from the flow
Slug assurance options of the gradient calculation screen, the mean
slug or 1/1000 slug radio button selected will determine the flow
characteristics to be used in the calculator (i.e. the mean or 1/1000
slug length, bubble length, slug frequency)
Pigged Slug The pigged slug characteristics are used as input data for the slug

1990-2022 Petroleum Experts Limited


232 GAP

catcher calculation.
No Slugs The steady state production rates can be used to investigate the
separator liquid level variation

K Factor

The K factor is required in the Souden-Brown equation to determine the max gas velocity. The K
value is dependent on the separator geometry and internals, flow rate and fluid properties.

Estimate K The estimated K value is based on recommendations from GPSA


"Engineering Data Book".
Enter K A user entered K value can be used to provide a more thorough
method of capturing the K factor.

Retention Time

This is the amount of time the liquid will remain in the slugcatcher unit.

API Spec 12J The API Spec 12J method is used to estimate the retention time.
This value calculated is sensitive to the fluid API entered in the PVT
data.

Oil Gravity Minutes (Typical)


Above 35° API 1
20 - 30° API 1 to 2
10 - 20° API 2 to 4

Enter Time User entered retention time.


Norm Liq Level This is available when the geometry is set to dimensional. When
selected the retention time will be back calculated.

Geometry

This will describe the shape of the slug catcher unit.

Dimensionless A dimensionless slug catcher unit will be used to illustrate the


evolution of the liquid and surge volume in time in the PlayBack.
Dimensional The dimensions entered will be used to identify potential carry over
and carry under situations and if there is sufficient volume to
contain the slug volume.
Horizontal The slug catcher is assumed to be a horizontally positioned and
requires a diameter and (L/D) ratio to be entered.

GAP User Guide March, 2022


User Guide 233

Vertical The slug catcher is assumed to be a vertically positioned and


requires a diameter and (L/D) ratio to be entered.

Flow Characteristics

Average Liq/Gas Rate This can be calculated based on the phase superficial velocity
multiplied by the pipe area.
Slug Surge Factor (Liq/ This is a ratio of the slug rate and average rate e.g. Slug Surge
Gas) Factor (Liq) = Slug Liq Rate divided by the average liquid rate.
Bubble Surge Factor This is a ratio of the bubble rate and average rate e.g. Bubble
(Liq/Gas) Surge Factor (Gas) = Bubble Gas Rate divided by the average gas
rate.
Slug Liq/Gas Rate Slug surge factor multiplied by the average phase rate.
Bubble Liq/Gas Rate Bubble surge factor multiplied by the average phase rate.
Slug/Bubble Length Length of the bubble or slug.
Slug Frequency Number of slugs per unit time.
Liquid Disposal Rate (Pigged Slug Only Input) Outlet liquid rate from separator.
Pigged Slug Rate (Pigged Slug Only Input) Pigged slug inlet rate.
Pig Prod Time (Pigged Slug Only Input) Time taken to produce the pigged slug.

Results

The PlayBack tool can be used to visualise the liquid level in the slugcatcher over the slug
period. Some of the results displayed will be specific to the time step selected on the PlayBack.

Peak Liquid Volume Sum of the peak surge volume and holdup volume.
Peak Surge Volume Maximum surge volume in separator, this occurs at the peak surge
time.
Holdup Volume The fixed volume of liquid in the separator during operation. This is
either calculated based on the retention time or norm liquid level.
Peak Surge Time Time taken for all of the liquid slug to travel through the slugcatcher.
This is calculated as a fraction of the slug clearance time based on
the ratio of the slug/bubble length.
Slug Clearance Time Time taken for one unit slug to travel through the slugcatcher. This
includes the liquid slug and gas bubble section and is the inverse
of the slug frequency entered.
Outlet Liq Rate Steady state outlet liquid rate of the separator.

1990-2022 Petroleum Experts Limited


234 GAP

Max Gas Velocity The maximum allowable superficial velocity of the gas at operating
conditions to allow liquid droplets to settle out of the moving gas.
This is calculated using the Souden-Brown equation.
Max Liquid Velocity The maximum allowable superficial velocity of the liquid at
operating conditions to allow gas bubbles to escape out of liquid
level in the separator. This is based on Stokes Law.
Normal Liquid Level (Dimensional Only) The normal liquid level in separator is
calculated based on the entered dimensions.
Retention Time This is the amount of time the liquid will remain in the slugcatcher
unit.
Liquid Volume The liquid volume in the separator at the current selected time step
on the PlayBack.
Surge Volume The surge volume in the separator at the current selected time step
on the PlayBack.
Surge Liquid Level The surge liquid level in the separator at the current selected time
step on the PlayBack.
Estimated Gas Velocity The gas velocity is estimated based on the cross-sectional gas
area for a horizontal or vertical separator and average gas rate
entered.

The value displayed is at the current selected time step on the


PlayBack.
Estimated Liquid The liquid velocity is estimated based on the cross-sectional area
Velocity for a vertical separator and the horizontal cylinder segment for a
horizontal separator and average liquid rate entered.

The value displayed is at the current selected time step on the


PlayBack.
Surge Liquid Level The surge liquid level in the separator at the current selected time
step on the PlayBack.

If a dimensional geometry has been entered into the slugcatcher calculator, then potential carry
over and under as well as sufficient volume to contain the slug will be evaluated.

The following messages are reported for the liquid and vapour:

Liquid

No liquid carry over


Potential liquid carry over - velocity (if the estimated gas velocity exceeds the max gas velocity)
Potential liquid carry over - gas height (if the surge liquid level is greater than 80% of the
slugcatcher height)

GAP User Guide March, 2022


User Guide 235

Vapour

No vapour carry over


Potential vapour carry over - velocity (if the estimated liquid velocity exceeds the max liquid
velocity)
Insufficient residence time and velocity (if the entered or calculated residence time is less than
60 seconds)

Additional note on negative rates

A primary assumption of the slug method models (Brill, RCS and PE5) is that the mass of liquid
and gas in a slug unit is conserved.

Depending on the slugging characteristics evaluated, for example, this means that if the slug
liquid rate is too large (i.e. too much mass in the liquid slug) then the bubble liquid rate will need
to be negative to maintain mass balance. The same principle applies for the slug/bubble gas
rate.

Physically, a negative rate would indicate that the size of the slug is not fixed and that liquid or
gas is flowing back to feeding into the next slug.

As a negative inlet rate into the slugcatcher is not physical, GAP will assume the inlet rate is zero
and modify the slug/bubble length accordingly to maintain mass balance.

2.6.4.3 Erosion Calculation


The erosion calculator in GAP is based on the DNV RP O501 model. This is a empirical model
which calculates erosion rate for different pipe components for sand laden fluids.

This can be applied for dimensioning new pipes and determining the maximum flow rate in
existing pipes.

This empirical model has the general form shown below:

Where

E is the rate of erosion (thou/year or mm/year)


mp is mass flowrate of sand

1990-2022 Petroleum Experts Limited


236 GAP

K is a material constants
n is a velocity exponent
Up is the velocity
ρt is the density of the wall material
At is the area
C is a conversion factor
F(α) is a geometric term dependent upon the impact angle and the material deformation
characteristics.

Further details on the formulation of the above empirical model can be found in the DNV RP
O501 reference – ‘Recommended Practice RP O501, Erosive Wear in Piping Systems.

The erosion calculator can be accessed by the flow assurance items in a gradient calculation
which will populate the calculator with the results of the current operating point (e.g. pressure,
temperature, rates, water cut, etc.). The mass of sand traveling in pipeiline is assumed to be
consistent through all pipelines and equivalent to the value specified in the erosion flow
assurance properties (Flow Assurance | Flow Assurance Properties | Erosion...)

GAP User Guide March, 2022


User Guide 237

The following input data is required:

Input Data
This input data will be used to calculate insitu fluid properties required by the erosion model.

Erosion Properties
The calculation type drop down menu defines the different pipe geometry for the erosion wear
calculations to be performed on.

1990-2022 Petroleum Experts Limited


238 GAP

Straight Pipe

Welded Joint /
Downstream Weld

GAP User Guide March, 2022


User Guide 239

Pipe Bend

Blind Tee

1990-2022 Petroleum Experts Limited


240 GAP

Reducer

Material Properties

This relates to the properties of the pipe element. The items in gray are the default material
property values from the DNV model.

Wall Material Describes the surface material of the pipe element


Velocity Exponent n in the general form of the empirical model
Material Constant K in the general form of the empirical model
Material Density Density of the pipe component
Deformation This will affect the F(α) parameter value and is a function of impact
angle input.

Sand Properties

Particle Mass Mass flow rate of sand produced


Particle Density Density of sand particle
Particle Diameter The DNV model assumes the particle to be spherical

Fluid Properties

These are the insitu properties of the fluid used by the DNV model.

GAP User Guide March, 2022


User Guide 241

Pipe Properties

Pipe Diameter Diameter of D1 from for the pipe element


Design Life Period of time that the pipe is expected to operate - this is used to
calculate the estimated loss
Impact Angle Angle at which the sand particle hits the pipe surface

Weld Height Height of weld - h


Curve Radius (R/D) Radius of curvature divided by pipe internal diameter
Diameter Ratio D1/D2

Results

The following output data is reported.

Erosion Rate Calculated pipe wall thickness loss per year


Estimated Loss Design life divided by the erosion rate
Impact Angle Calculated for pipe blend only

2.6.4.4 Corrosion Calculation


This corrosion model is based on the NORSOK CO2 corrosion model which was developed for
carbon steel in water containing CO2 at different temperatures, pHs, CO2 fugacity and wall
shear stresses.

This is an empirical model based on flow loop experiments for carbon steel and will be valid
where pure CO2 corrosion is the dominating corrosion reaction. Acetic acid and H2S are not
taken into account in the model.

This empirical model has the general form shown below:

1990-2022 Petroleum Experts Limited


242 GAP

Where:

KT is a constant which depends on the temperature


fCO2 is the fugacity of carbon dioxide

n(T) is the exponential constant of 0.6

KpH,T is a factor for the effect of pH on the corrosion rate for each temperature

KS,T,FCO2 is a factor for wall shear stress

The above factors where best fitted from data taken from a database containing more than 2400
data points.

The following ranges exist in the database used:

Temperature range: 20 - 160 °C

pH range: 3.5 - 6.5

Wall shear stress on smooth pipe: 1 - 150 Pa

Further information can be found in 'CO2 corrosion model for carbon steel including a wall shear
stress model for multiphase flow and limits for production rate to avoid mesa attack, Halvorsen &
Sontvedt, NACE International (1999)'.

The CO2 corrosion calculator can be accessed by the flow assurance items in a gradient
calculation which will populate the calculator with the results of the current operating point.

GAP User Guide March, 2022


User Guide 243

The following input data is required:

Calculation Options

Calculation Type Calculate Required Thickness:

Based on the entered design life and corrosion rate calculated, the
required allowance for corrosion will be determined.

Calculate Required Availability:

Based on the corrosion allowance entered, the required availability


will be determined.
pH Calculation The fluid pH can either be a user entered value or calculated based
on the entered CO2%, pressure and temperature.

Properties

These values should reflect the point of interest at the pipe and will be used to calculate the fluid

1990-2022 Petroleum Experts Limited


244 GAP

properties displayed.

Other Properties

Inhibited Rate The amount the corrosion rate is inhibited


Pipe Diameter Internal pipe diameter
Design Life length of pipe life, this will be used to calculate the required
thickness
Inhibitor Availability The inhibitor availability is defined as the percentage of time that
the inhibitor is applied correctly i.e. a efficiency factor
Corrosion Allowance The required thickness to achieve the entered design life
Entered pH User entered pH value

Fluid Properties

These are the insitu properties of the fluid used by the NORSOK model. This is determined
using the fluid PVT data entered into the PROSPER model and the entered properties in the
corrosion calculator.

Results

The following output data is reported:

Corrosion Rate The corrosion rate calculated takes into account the entered
inhibitor rate and inhibitor availability i.e. the inhibited rate
multiplied by the inhibitor availability plus uninhibited rate multiplied
by 1 minus the inhibitor availability factor.
Uninhibited Rate This is the corrosion rate calculated by the NORSOK CO2 model
Calculated pH This is the pH used by the NORSOK CO2 model
Required Availability Based on the entered corrosion allowance entered, the required
inhibitor availability will be back calculated.
Severity Level The severity level reported is based on the uninhibited rate
calculated. The value reported follow 'Guidelines for prediction of
CO2 corrosion in oil and gas production systems - IFE/KR/E-
2009/003'

GAP User Guide March, 2022


User Guide 245

1990-2022 Petroleum Experts Limited


246 GAP

2.6.4.5 Flow Assurance Plot


The flow assurance plots allow the user to visualise the change in fluid P&T in relation to the PVT
warning curve entered.

In order to perform the comparison, PVT warnings should be enabled in the GAP summary
options screen and the relevant PVT warning curves have to be entered.

The plots can be accessed by right-clicking on any result in a gradient calculation and navigating
to 'Flow Assurance Plots', as shown below.

2.6.4.6 Severe Slugging Plots


Severe slugging can occur at the bottom of a riser base or at highly deviated sections of tubing/
pipeline.

The phenomena is caused by liquid falling back in the opposite direction of flow causing it to
block the passage of gas. As time progresses, the liquid level in the riser will accumulate, grow
and produce at the top of the riser.

After a period of liquid production, the gas builds up at the bottom of the riser and begins to
penetrate the liquid column. When the gas reaches the top of the riser, the liquid is no longer

GAP User Guide March, 2022


User Guide 247

lifted and begins to fall back down again and a new cycle begins.

Such an operating condition can lead to the development of severely long liquid slugs and gas
surges which may cause surface operation problems and possible liquid carry over at the
separator.

Two methods for determining the onset of severe slugging or liquid falling back down are
available:

Pots Severe Slugging Number

PE5 Stability
2.6.4.6.1 Pots Severe Slugging Number
The POTS number reported in PROSPER is based on the model presented in 'Severe Slug
Flow in Offshore Flowline/Riser Systems by Pots et al'.

The POTS number calculated is a dimensionless number which is the ratio of the rate of
hydrostatic pressure buildup in the riser resulting from the growth of the slug against the rate of
gas pressure buildup in the flowline.

The POTS number has the form shown below:

Where

LF length of flowline
ygF gas hold up in the flowline
wg gas mass flowrate
wL liquid mass flowrate

If the POTS number is greater than 1 then severe slugging is unlikely.


If the POTS number is less than 1 then severe slugging is likely.

It is important to note that the POT number is sensitive to the ratio of gas and liquid mass rate.
This means that at high GLRs tend to be stable and low GLRs are unstable.

The POTS number will be calculated for surface equipment only and if there is a significant
change in the deviation angle of the pipe element.

1990-2022 Petroleum Experts Limited


248 GAP

The gradient calculation will report the POTS number as a column of results. A plot of the severe
slugging locations in the pipe can be found by going to Severe Slugging Plots | Pots Number, as
shown below.

The plot will contain the pipeline deviation survey with an overlay of the severe slugging
locations, the POTS condition and current operating point, as shown below.

GAP User Guide March, 2022


User Guide 249

2.6.4.6.2 PE5 Stability


The PE5 mechanistic model can capture the falling of liquid back in the opposite direction of
flow.

The PE5 Stability Criteria works on the basis of a momentum balance calculation by the PE5
mechanistic flow model, where the momentum of the liquid film on the pipe wall is evaluated to
determine its direction. Where the direction of fluid travel is calculated to be going down the well,
the PE5 stability flag will be raised, and this commonly will result in a negative frictional pressure
gradient.

If the flag = 0 then there is confidence that the flow is stable.

If the flag = 1 then it is possible that production is unstable (this can be investigated further using
transient modelling tools, e.g. GAP Transient).

1990-2022 Petroleum Experts Limited


250 GAP

This calculation will be performed for both surface and downhole equipment data in GAP.

The gradient calculation will report the PE5 stability flag as a column of results. A plot of the
severe slugging locations in the pipe can be found by going to Severe Slugging Plots | PE5
Stability, as shown below.

The plot will contain the pipeline deviation survey with an overlay of the severe slugging
locations, the PE5 tability flag and current operating point, as shown below.

GAP User Guide March, 2022


User Guide 251

1990-2022 Petroleum Experts Limited


252 GAP

2.7 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.7.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 252

Wells 260
Separators 371
Joints 386
Pipelines 395
Tanks 462 (Reservoirs)
Flares and Vents 475
Pumps 477
Compressors 502
Sources/Sinks 531
Inline elements 540
Inflow elements 576
Groups 578
Flowsheets 586

These elements can all be accessed from the main toolbar.

2.7.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.

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.

GAP User Guide March, 2022


User Guide 253

The screen consists of three parts:

The Navigator (Equipment List)


The Section Buttons
The Action Buttons

2.7.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.

1990-2022 Petroleum Experts Limited


254 GAP

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. This is the new default in IPM 9.

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.7.2.1.1 Equipment List Filter


The Equipment List is a useful tool for quickly browsing between different pieces of equipment
without having to locate items on the system window. To make it even easier to locate
equipment; it is possible in IPM 9 to filter the equipment list by entering text. As can be seen
below; the text entered can be located anywhere in the equipment label, all of the equipment
without this text will be filtered from the Equipment list.

GAP User Guide March, 2022


User Guide 255

NOTE REGARDING THE EQUIPMENT LIST FILTER


To use the filter option the equipment must either be sorted alphabetically or by
type.

2.7.2.2 Section Buttons


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

1990-2022 Petroleum Experts Limited


256 GAP

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.7.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.

2.7.2.2.2 Input Button


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

GAP User Guide March, 2022


User Guide 257

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.7.2.2.3 Results Button


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

1990-2022 Petroleum Experts Limited


258 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
Simulation Results Tab reporting the results of the latest 'Transient' calculation.
Prediction Results Tab reporting the results of the latest 'Prediction' calculation.

2.7.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:

Run In the case of a well, this opens the associated PROSPER file which can be
PROSPER / MBAL 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

GAP User Guide March, 2022


User Guide 259

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 will
Previous (selected) 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-2022 Petroleum Experts Limited


260 GAP

2.7.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

See also Well Summary Screen 261 .

GAP User Guide March, 2022


User Guide 261

2.7.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.
When the well is not to be taken into account in the system calculations, two
options are available:

Mask

1990-2022 Petroleum Experts Limited


262 GAP

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)
Oil Producer (ESP Lifted)
Oil Producer (SRP Lifted)
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)
CBM Water producer (PCP Lifted)

SWAG wells can be modelled using liquid injector or gas injector


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

GAP User Guide March, 2022


User Guide 263

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 976 systems).

In IPM 13, improvements have been made to the Outflow


Only wells to introduce connection ports which make more
transparent the connections of elements/equipment to the
Outflow Only wells and will help to address issues that
were sometimes encountered when modelling smart well
completions with Outflow Only wells.

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 976 can be found in the
Examples Guide section)

Rate Model Rates can be defined in terms of volumes (at standard conditions) or mass.

1990-2022 Petroleum Experts Limited


264 GAP

Defining the rates in terms of mass has got the benefit of making
the rates (hence the VLPs) process independent. This is because
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 as
using the mass mean that the IPRs and VLPs do not need to be
regenerated if the process changes.
Transient IPR This option allows the transient effects in the reservoir inflow to be captured
for unconventional (tight reservoir) systems or transient simulation studies.
Transient IPR models can be captured using the following methods:

Analytical solution to radial diffusivity equation i.e. bounded radial reservoir


and bounded fractured reservoir
RESOLVE Tight Reservoir DataObject - allows complex well geometry
(deviation, multiple fractures) description with history matching capabilities
on dimensionless time and dimensionless pressure curves (PdTd)
Table Lookup TdPd curves
Transient This option allows transient flow behaviour to be captured in the outflow
Well section of the well. The option will automatically import the equipment data of
the associated PROSPER file.
Use Casing This option allows the well to be linked to a sink (of the same name) in an
Pressure associated GasLift Injection Network. With this option enabled, the point of
injection can either be:
Fixed Depth
Multipoint
and requires the VLPs to have been generated accordingly

When (Only when compositional model with lumping/delumping is enabled)


Composition This option will lump/delump the composition entering the system through the
changes wells.
Data In addition to the selections discussed above, the well summary screen
Summary contains an input data summary area.
Area

GAP User Guide March, 2022


User Guide 265

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)
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.7.3.1.1 Calculate
For every well the user has access to a "Calculate" button.

1990-2022 Petroleum Experts Limited


266 GAP

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.

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

GAP User Guide March, 2022


User Guide 267

The 'Initialise from solver results' can be used to recall the flowing conditions
calculated during a Solve Network 646 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:

1990-2022 Petroleum Experts Limited


268 GAP

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.

GAP User Guide March, 2022


User Guide 269

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.

Calculate:
Performs an intersection calculation based on the current input data. This is also performed
automatically when the dialogue is entered.

Plot:
Performs a VLP/IPR intersection plot.

1990-2022 Petroleum Experts Limited


270 GAP

OK:
Clears the dialogue, saving any changes.

Cancel:
Clears the dialogue, removing any changes.

Help:
Invokes this screen.

Note also that this dialogue allows the copying and pasting 87 of row data.
2.7.3.2 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


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 be Calculated 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.

GAP User Guide March, 2022


User Guide 271

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.
Description (Transient calculation only) This contains the well geometry that will
be used for transient well calculations.
Environment (Transient calculation only) This contains the well surrounding
environment that will be used for transient well calculations.
Simulation (Transient calculation only) This contains the initialisation behaviour
for transient well calculations.

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.7.3.2.1 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
done as well.

IPR’s 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.

1990-2022 Petroleum Experts Limited


272 GAP

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)

The data input for all the four sections of the well IPR input us described below:
2.7.3.2.1.1 Ipr Layer
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

GAP User Guide March, 2022


User Guide 273

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. 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)

Forcheimer (Gas / Condensate Producers / Gas Injectors)

Forcheimer Pseudo-Pressure (Gas / Condensate Producers / Gas


Injectors).This method uses the classic Forcheimer equation solved with a

1990-2022 Petroleum Experts Limited


274 GAP

pseudo-pressure method rather than with a pressure square method.

C and n (Gas / Condensate Producers / Gas Injectors).

Note: Unit conversions for C


In converting the value of C from one unit system to another (oilfield to
metric for example), the value of n needs to be included in the unit
conversion formula. The unit conversion system in PROSPER can only
support units being converted by constant values. Therefore, any unit
conversions of C have to be done outside of PROSPER and the values
entered in the program - as opposed to allowing the program to perform
the unit conversion.

Table Look Up (All wells)

The “Table Look Up” utility has been included in the IPR types for allowing an eas
link between GAP and Reservoir Simulators. It stores the IPR informatio
generated by the reservoir simulator as a table with oil, gas and water rates as
function of flowing bottom hole pressure (FBHP). IT SHOULD ONLY BE USED
FOR THOSE APPLICATIONS.
Force Target
GOR
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:

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 larger the value (for oil wells - where the

GAP User Guide March, 2022


User Guide 275

index has the units STB/day/psi) 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.

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.

Effectively this means that the 'C and n' model injectivity index has the units
consistent with the 'C' reservoir parameter. When using Forchheimer and
Forchheimer Pseudo Pressure the units will be the reciprocal: psi2/(Mscf/
day) & psi2/cp/(Mscf/day) respectively. This represents the pressure
squared or pseudo pressure per unit rate injectivity - meaning that a large
value represents a system where it is difficult to inject.

1990-2022 Petroleum Experts Limited


276 GAP

Ü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.

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

GAP User Guide March, 2022


User Guide 277

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 tank’s 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

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

1990-2022 Petroleum Experts Limited


278 GAP

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.

ACTION BUTTONS
The IPR Input windows contain the following action buttons.

The action buttons have been explained in detail previously 258 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.

GAP User Guide March, 2022


User Guide 279

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

1990-2022 Petroleum Experts Limited


280 GAP

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.
Transfer All This option allows the user to select which batch transfers are to take place
Matching (Transfer History Relative Permeabilities, IPRs, VLPs, Prediction Relative
permeabilities). This will then automatically match up all the GAP IPRs and
MBAL History wells and transfer the data. This avoids having to match them up
manually.

Transfer Type
Under the transfer options, the user can select the data to be transferred, which

GAP User Guide March, 2022


User Guide 281

includes:

History relative permeabilities


IPRs
VLPs
Prediction Relative Permeabilities

Match Type
Match Exact names only. To use this option the names in MBAL and GAP
must be exactly the same.
Match GAP names in MBAL names . This option can be used to perform the
matching when part of the MBAL name exists in the GAP well.
Match MBAL names in GAP names. This option can be used when part of the
GAP name exists in MBAL.
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.

COMPOSITION BUTTON

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.

1990-2022 Petroleum Experts Limited


282 GAP

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

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.

GAP User Guide March, 2022


User Guide 283

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
Allows manual entry of IPR data to match a performance index.

This screen is used to match an equivalent PI to a set of IPR points. In normal use, this will be
imported directly from PROSPER in batch IPR generation mode.

1990-2022 Petroleum Experts Limited


284 GAP

Input Fields

Test Layer When an IPR transfer from PROSPER is done, this screen is populated with
Pressure data from the PROSPER IPR section
Test Water Cut Enter in these fields the test values for water cut and layer pressure that will
be used in the calculation of the IPR parameters. See the IPR data entry
screen 272 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 FBHP

Action Buttons

Match Use this button to calculate the matched IPR data. The AOF and performance
index will be calculated and placed in the fields at the base of the screen
(Darcy and non-Darcy or C and n for gas/condensate wells, depending on the
IPR type selected on the IPR input screen)
Ok Use this button to leave the screen and save all changes that have been
made. The layer data entered here is written to the layer data as displayed in
the IPR input screen. The performance index calculated in the Match process
is also written
Cancel Use this button to leave the screen and ignore any changes made

GAP User Guide March, 2022


User Guide 285

Help Use this button to access this screen

Rate and pressure can be entered by hand, or pasted from the Windows clipboard or directly
from PROSPER’s IPR screen.

Click Match and GAP will calculate the well productivity (or injectivity) index and AOF (or
whichever coefficients are required from the IPR model). 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 tank’s PVT calculation, compared to the situation where
the well is isolated and GAP uses its own calculation.

Use this screen to test the IPR relation.

This screen calculates flow rates from flowing bottom hole pressures and vice versa.

In the drop down list at the bottom of the dialogue, select whether one wishes to calculate rates
from flowing bottom hole pressures or flowing bottom hole pressures from rates. Enter the test
value into the appropriate edit field (the other will be coloured blue and be read-only).

Action Buttons

Calculate Performs the calculation and writes the result to the required edit field
OK Clears the dialogue
Help Activates this screen

2.7.3.2.1.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
Use match This will import the black oil PVT correlations and match parameters of the
coefficients underlying PROSPER PVT. Further information on this functionality can be
found here 208 .

Relative Permeability Section

The fields available are:

1990-2022 Petroleum Experts Limited


286 GAP

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) 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.

To prevent this from happening the user has the option to "Shift the Rel Perm to

GAP User Guide March, 2022


User Guide 287

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

1990-2022 Petroleum Experts Limited


288 GAP

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).

Use Match This option will toggle if the PVT match parameters (P1 multiplier and P2 shift) will
Coefficients be imported from the associated PROSPER file. Further information can be
found here 208 .

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:

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

GAP User Guide March, 2022


User Guide 289

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

If the fractional flow tables are entered in terms of cumulative production, select whether this is to
be based on the tank cumulative production or layer cumulative production.

2.7.3.2.1.3 Production Data


This option is active only when the "Decline Curve" 469 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-2022 Petroleum Experts Limited


290 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
Plot Displays the production data in graphical form. Use 'Variables' on the 'Plot'
screen to switch between GOR and water cut.

GAP User Guide March, 2022


User Guide 291

2.7.3.2.1.4 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 272 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.

Calculate Invokes the IPR Calculation 285 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.7.3.2.1.5 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.

For example, if a maximum water cut abandonment constraint is entered, then the well will be

1990-2022 Petroleum Experts Limited


292 GAP

shut-in during a prediction run if the produced water cut exceeds this value. When rate
abandonment constraints are applied (i.e. Qoil_min/Qgas_min/Qliquid_min) and the well has been
made controllable, the well will be shut-in once the rate falls below the abandonment value,
provided that there is also no dP across the wellhead choke determined by the RBNS/non-linear
optimiser.

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.7.3.2.1.6 Note on water injector's IPR


The IPR screen displayed for the "water injector" well is shown below.

GAP User Guide March, 2022


User Guide 293

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


294 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.7.3.2.2 Transient IPR Input
The Transient IPR option can be used to capture transient reservoir behaviour for unconventional
(tight reservoir) systems or transient network simulation studies. This option is based on
analytical solutions to the radial diffusivity equation or dimensionless pressure/time (PdTd) type
curves which can either be manually entered or generated and history matched using the
RESOLVE Tight Reservoir DataObject.

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

The 'Transient IPR' option is selected from the Summary section of the well screen, as shown
below.

GAP User Guide March, 2022


User Guide 295

2.7.3.2.2.1 Transient IPR Layer


This section defines the inflow performance model and reservoir fluid properties.

1990-2022 Petroleum Experts Limited


296 GAP

Inflow Performance Input Data

The reservoir characteristics are entered separately for each well.

If an MBAL file has already been created containing this IPR information; the values can be
copied over using the 'From MBAL' bubtton above.

If the user selects the "Use MBAL PVT Model" option; GAP will use the PVT as defined in
MBAL. GAP will use the PVT correlations selected in MBAL and will also apply the same match
parameters as defined in the MBAL file. If tables are being used in MBAL then GAP will
calculate the PVT properties based on these tables.

Model Type This defines the reservoir and well geometry in the model. The
Bounded Radial Reservoir & Bounded Fractured Reservoir models
assume that the reservoir is a cylinder with a vertical well at the center.

The Table Lookup option allows a dimensionless type curve to be


entered from a external source.

RESOLVE Tight Reservoir DataObject can be used to capture


different drainage area geometries and well configurations which are

GAP User Guide March, 2022


User Guide 297

not applicable to the above analytical models which can then be


history matched to production data.
Well Radius Wellbore radius
Darcy Skin (S) Skin factor to account for deviation from perfect radial flow assumption
e.g. mechanical/geometric skin effects
Non-Darcy Skin (D) (Gas producer only) Skin factor to account for inertial forces acting
on the pressure drop.
Initial Reservoir Defines the original pressure of the reservoir.
Pressure
Reservoir Defines the temperature of the reservoir.
Temperature
Permeability Defines the average reservoir permeability.
Porosity Defines the average porosity in the reservoir.
Drainage Area Radius The drainage area radius entry should be a result of a Type Curve
Analysis, that can be carried out in MBAL.
Layer Thickness Thickness of producing reservoir rock.
Connate Water Used to determine the total compressibility of the system.
Saturation
Water CompressibilityThe user has the choice of entering water compressibility or allowing
the internal correlations within the program to be used.

If a number is entered, the program will assume the water


compressibility does not change with pressure.
Rock Compressibility Used to determine the total compressibility of the system.
Start of Production/ The "Current Time" input data is only used when the network is solved
Current Time 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.
Predict WGR (Wc/ This defines how the fractional flow of water or gas (oil system) is
GOR) from evolved over time.

Lookup tables require a fractional flow table to be defined in terms of


time, reservoir pressure or cumulative production. GAP will interpolate/
extrapolate the table during a prediction to obtain the well WGR, WCT,
GOR etc.

Water vapour option predicts the WGR of the well based on condesed
water vapour.
Coal Bed Methane (Gas producer only) Tight gas systems with methane adsorbed on
the coal can be modelled using the same method in MBAL. The
method used is described in “Bumb, McKee, Gas-Well Testing in the
Presence of Desorption for Coalbed Methane and Devonian Shale,

1990-2022 Petroleum Experts Limited


298 GAP

SPE 15227”.

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

2.7.3.2.2.2 Transient IPR Model


This section defines the pseudo time function used and if phase correction is taken into account.

Pseudo Time Input Data

Pseudo Time The time can be considered as "Normal Time", "Pseudo Time (Pwf)",
"Pseudo Time (Pbar)" or "Pseudo Time (Petex)". The dimensionless
time td is:

GAP User Guide March, 2022


User Guide 299

where the subscript i refers to the evaluation of these parameters at


the initial pressure. The time t can be considered as either:

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

The "Pseudo Time (Pwf)":

where the subscript Pwf refers to the evaluation of these


parameters at the bottom hole pressure.

The "Pseudo Time (Pbar)":

where the subscript P"bar" refers to the evaluation of these


parameters at the average reservoir pressure.

The "Pseudo Time (Petex)"

where the subscript refers to the evaluation of these parameters


at a pressure between the bottom hole and average reservoir
pressure.

Pseudo time is a normalised function of time that takes into account the
change in viscosity and compressibility over time (due to changes in
pressure). In the Pseudo Time (Petex) method, the pressure at which
viscosity and compressibility is evaluated is a combination of Pwf and
Pbar.
Use Sub Steps The, ‘use sub-step’ option improves accuracy by employing the same
methodology but taking smaller timesteps – thus minimising the
difference in pressure between steps.
Use Previous Step The option to, ‘use previous step’ is faster as the PVT of the next
timestep will be evaluated at the current pressure.
PVT Modifier The PVT modifier defines the contribution of the Pwf and Pbar
pressures to evaluate fluid properties for the Pseudo Time (Petex)

1990-2022 Petroleum Experts Limited


300 GAP

method.

The PVT modifier reduces the pseudo time based on Pwf if the modifier
=1 or pseudo time based on Pbar if the modifier = 0
Shutin Time The average reservoir pressure is estimated by simulating a theoretical
shut-in period.
Cleat A pressure dependent correction can be made using the cleat
Compressibility compressibility. The cleat compressibility (c) affects the calculation as
shown below;

Permeability & If the "Pseudo Time (Petex)" option is selected, the user also has the
Porosity Multiplier option of using various tuning factors, including multipliers for the
porosity and permeability to match the PDtD curve to historical data.

More information about this model and its theory can be found in the MBAL and RESOLVE User
Guides.

Phase Correction Input Data

The 'Use Phase Correction' option includes a multi-phase correction when the reservoir
pressure drops below the bubble point/dew point. The traditional single-phase PdTd formulation
can be used to match the production history above the saturation pressure accurately. However
in some cases where the gas/oil production is high (below bubble point/dew point) then the
traditional approach cannot get a good match. The multi-phase correction uses the entered
relative permeabilities to correct the dimensionless pressure and PVT for matching the field
data.

GAP User Guide March, 2022


User Guide 301

2.7.3.2.2.3 Transient IPR Prod Data


In this section, the production history is entered. In tight systems, historical production has an
impact on current inflow performance. The data entered will be used to update the IPR for the
first timestep of the prediction using superposition.

1990-2022 Petroleum Experts Limited


302 GAP

2.7.3.2.2.4 RESOLVE Tight Reservoir - Inflow Import


Importing a PdTd file from the RESOLVE Tight Reservoir object:

A RESOLVE Tight Reservoir Object can be imported into a tight GAP well for calculation of
BHP. This option overcomes the industry limitation of using single phase PdTd and allows the
use of multiphase PdTd curves that are available through the RESOLVE Tight Reservoir Object.

To illustrate the use of the RESOLVE tight reservoir object import, a condensate system with as
dew point of 4500 psig will be considered in RESOLVE:

GAP User Guide March, 2022


User Guide 303

Reviewing the calculated single phase PdTd curve in RESOLVE, it can be seen that it provides
a poor match, when the FBHP goes below the dew point.

1990-2022 Petroleum Experts Limited


304 GAP

In this case, we want to apply the Multiphase correction using the Tight Reservoir Object in
RESOLVE and import this into GAP to capture the tight wells. This will take the following steps:

1. Apply Multiphase Correction in RESOLVE

In RESOLVE, the multiphase correction can be enabled by clicking Advanced and checking
the ‘correct for multiple phases’ box. Updating the plot, it is possible to see that accounting for
multiple phases results in a closer match, as shown below.

GAP User Guide March, 2022


User Guide 305

2. Export RDO file from RESOLVE

Once the match is satisfactory, the tight reservoir data can be exported by right clicking on the
icon in RESOLVE and selecting Export to File. This will export the tight reservoir data in a file
with .RDO extension.

1990-2022 Petroleum Experts Limited


306 GAP

3. Import RDO file into GAP

In GAP, the RDO can be imported into a tight condensate well by checking the Tight Con tick
box and then ticking the Use Resolve Tight Reservoir - Inflow.The user can then browse for tight
reservoir rdo file, as shown below.

The lift curves can be generated as per usual.

Manually Importing a PdTd curve from the RESOLVE Tight Reservoir object:

It is assumed that the user has created and matched a PdTd curve in the Tight Reservoir object
of RESOLVE. For more details on how to perform PdTd matching in RESOLVE please refer to
section 2.9.4.5 of the RESOLVE user manual, and to section 3.8.3 for a detailed step-by-step
example.

The following describes how to import the PdTd data from RESOLVE to GAP, ensuring
consistency between the calculated response in RESOLVE and GAP.

IPR Layer section:

GAP User Guide March, 2022


User Guide 307

The Model Type should be selected as Table Lookup. Under the Edit button, the PdTd curve
should be copied from RESOLVE. This can be found under the Plot PDTD button in the Analysis
tab of the Analysis screen.

1990-2022 Petroleum Experts Limited


308 GAP

The PdTd curve should then be copy/pasted into GAP. Please note that the point (0,0) should not
be included.

GAP User Guide March, 2022


User Guide 309

PLEASE NOTE: Care should be taken to note the first point in the PdTd curves as this
essentially acts to tell us the minimum time-step for which these curves are valid. If, for example,
the first point represents a time of 1 hour, then any results obtained for a time-step less than 1
hour will be non-physical and may lead to convergence issues.

The reservoir properties that should be entered in GAP can be found in the Edit PDTD tab of the
Analysis screen.

Please note that in the case of a horizontal well, the Length used by RESOLVE to a-
dimensionalise the physical response from REVEAL is the well Completion Length: hence this is
the value that should be entered as the Layer Thickness in GAP.

1990-2022 Petroleum Experts Limited


310 GAP

The PVT properties of the fluid should be input as per the input in RESOLVE. Please note that
the PVT correlations used should be consistent between GAP and RESOLVE.

Model section:
In the Model Tab, the Pseudo Time should be selected as "Pseudo Time (Petex)", and all the
matching parameters (Permeability Multiplier, Porosity Multiplier, PVT Modifier etc...) should be
copied across from the Analysis tab of the Analysis screen in RESOLVE. Please note that the
Cleat Compressibility is found in the Edit PDTD tab.

Prod Data section:


The production data should be entered in GAP according to the production data in the History
screen of RESOLVE.
2.7.3.2.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 598 section.

GAP User Guide March, 2022


User Guide 311

The screen appears as follows:

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:

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).

1990-2022 Petroleum Experts Limited


312 GAP

· *.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 March, 2022


User Guide 313

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


314 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 616 )
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.7.3.2.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.

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.

GAP User Guide March, 2022


User Guide 315

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.

The 'Sensitivity Cases' menu can be used to select which sensitivity


variables to plot.

Help To visualise this panel

2.7.3.2.4 Well Constraints

1990-2022 Petroleum Experts Limited


316 GAP

2.7.3.2.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.

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 optimisation

GAP User Guide March, 2022


User Guide 317

Production / considerations.
Injection Rate
Maximum Gas (Gas Wells)
Production / Sets upper production limit for the well considered
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 174 )
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 324 section) the constraints screen will display
new constraints relevant to gas lifted wells.

The following constraints are available for gas lifted wells control:

Maximum casing GAP locateensures that the difference between the calculated Casing
pressure differential Head Pressure between this and the associated Gaslifted well does
not exceed the entered amount. Two gaslifted wells can be associated
using the linking tool, see image below.

This option can be used to control DualSting Gaslifted wells (gas lift
gas is injected through a common conduit).

1990-2022 Petroleum Experts Limited


318 GAP

VLPs must be generated using the "Fixed Depth of Injection" option in PRO
for both wells.

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
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.

GAP User Guide March, 2022


User Guide 319

Note regarding the power constraint:


In pump lifted wells, the motor power reported by GAP is actually the pump power. The maximum
power constraint is compared against the motor power divided by the motor efficiency, as this is
the actual electrical power consumed by the motor (excluding power losses in the cable).

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)
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-2022 Petroleum Experts Limited


320 GAP

2.7.3.2.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

GAP User Guide March, 2022


User Guide 321

Minimum Liquid Rate


Minimum Oil Rate
Minimum Gas Rate

2.7.3.2.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.7.3.2.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. The abandonment constraints are designed to permanently
shut-in the well (i.e. mask the well) for the rest of the prediction when an abandonment
constraint has been reached (and cannot be re-opened using the well ‘Schedule’). For
example, if a maximum water cut abandonment constraint is entered, then the well will
be shut-in during a prediction run if the produced water cut exceeds this value. When
rate abandonment constraints are applied (i.e. Qoil_min/Qgas_min/Qliquid_min) and the well
has been made controllable, the well will be shut-in once the rate falls below the
abandonment value, provided that there is also no dP across the wellhead choke
determined by the RBNS/non-linear optimiser.

1990-2022 Petroleum Experts Limited


322 GAP

If the objective is to shut-in the well once it drops below a certain rate, and have the possibility to
reopen the well to flow again in the future (e.g. if the potential well rate increases, for instance,
due to compression facilities coming online), then this is best achieved using Visual Workflows
in RESOLVE.
2.7.3.2.5 Controls
The Controls section allows the user to specify choke settings and artificial lift controls (in the
case of an artificially lifted well).
2.7.3.2.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.7.3.2.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 March, 2022


User Guide 323

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.

Choke Calculation

Calculate choke If this option is ticked, the choke size will be calculated during network
size from dP solves and predictions and reported in the results. Please note that the
choke sizes will not be calculated until the solve network/prediction is
performed after enabling the option.
Choke Settings This button allows the choke model to be changed from the default choke
model. For some models, additional inputs will be required which can be
entered into this screen. Further information on the choke models can be
found in the PROSPER manual.

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.

1990-2022 Petroleum Experts Limited


324 GAP

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).

2.7.3.2.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

When multipointing VLPs are used, the Gas Lifted well is no


longer controlled using a GasLift Rate but rather via the Casing
Head Pressure

Fixed Gas The value of gas lift gas injection rate that GAP will use in calculations for
Lift Gas fixed gas lift gas rate.

GAP User Guide March, 2022


User Guide 325

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.

2.7.3.2.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-2022 Petroleum Experts Limited


326 GAP

2.7.3.2.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 March, 2022


User Guide 327

2.7.3.2.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-2022 Petroleum Experts Limited


328 GAP

2.7.3.2.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 March, 2022


User Guide 329

2.7.3.2.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-2022 Petroleum Experts Limited


330 GAP

2.7.3.2.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.
Fluid Properties The fluid properties of the power fluid used can be specified.
Note: Power fluid type can only be set as water, this is converted to an
equivalent liquid volume and treated as part of the water phase.

GAP User Guide March, 2022


User Guide 331

2.7.3.2.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.7.3.2.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-2022 Petroleum Experts Limited


332 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 . 1226

2.7.3.2.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 March, 2022


User Guide 333

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.7.3.2.5.13 Control Group


This section allows the user to set up Equipment Control Groups 648 for the well in question using
the Configure option, and specify whether the well is included in a control group via the Ignore
checkbox.

1990-2022 Petroleum Experts Limited


334 GAP

Configure

By selecting the Configure option, the user can specify wells within the GAP model which are to
be controlled by the well currently open provided they share a common type of control (e.g.
Pressure Drop). This is equivalent to setting the Evaluated Control of the controlled wells to the
well currently open as outlined in Equipment Control Groups 648 .

First, the control mode should be chosen (Pressure Drop, Frequency etc.) and select continue.
Next, the wells to be grouped under the control of the currently selected well should be chosen.
Select Continue to apply the changes.

GAP User Guide March, 2022


User Guide 335

Ignore

When this option is enabled, the well is not considered to be a part of a control group and any
group controls will be ignored.

2.7.3.2.5.14 Well Control Summary


See also: Main Data Entry 252 screen, Well Input Data 270 screen.

This screen allows to set choke values for the current well and the control for the artifitial lift
system of the well. It is the first tab of the well input screen.

For all the well types the dP Control is enabled (see below ), however depending on the type of
well selected the following options might appear:

Well Type Control Options


Naturally
Flowing dP Control None, or Fixed or Calculated wellhead choke dP
wells

1990-2022 Petroleum Experts Limited


336 GAP

Gas lifted
wells dP control None, or Fixed or Calculated wellhead choke dP
Gas Injection Fixed gas rate or calculated gas rate from minmum
Control and maximun values entered by the user
Gas lift fluid properties (the user cab enter and/or edit the injection fluid
properties)

ESP lifted
wells dP control None, or Fixed or Calculated wellhead choke dP
Pump Control Fixed Frequency (Hz) or calculated from minimum and
maximun values entered by the user

PCP lifted
wells dP control None, or Fixed or Calculated wellhead choke dP
Pump Control Fixed Pump speed (rpm) or calculated from minimum
and maximun values entered by the user

HSP lifted
wells dP control None, or Fixed or Calculated wellhead choke dP
Pump Control Fixed Pump speed (rpm) or calculated from minimum
and maximun values entered by the user

Power fluid properties (the user cab enter and/or edit the power fluid
properties)

Jet Pump
lifted wells Dp control None, or Fixed or Calculated wellhead choke dP
Pump Control Fixed power fluid rate or calculated rate from
minimum and maximun values entered by the user

Power fluid properties (the user cab enter and/or edit the power fluid
properties)

For the case of gas lifted, Jet pump and HSP wells, the properties of the fluid (gas/water /other)
can be edited and will be displayed under the fluid properties (see Injection fluid Source Data 104 )

The source names are set up in the fluid dialogue, which can be accessed from the 'Edit List'
button of this screen.

Select the required fluid source in the 'Enter Choice' drop down list box. The properties of the
source will be displayed for convenience in the 'Source Statistics' area below this.

Action Buttons

Composition This can be used to view the composition for the source that has been
chosen.

GAP User Guide March, 2022


User Guide 337

This button is coloured and labeled according to the status of the


composition
dP Control Three options are available to allow dP Choke Control; None , Fixed
Pressure, Calculated . Pressure control is used if this item is to be
choked back in order to meet some constraint on throughput. A well that
has DP control will be shown with the thin red circle around it on the
main GAP screen:

Select whether a fixed pressure drop is to be entered, or whether the


program can calculate the required dP; if a fixed drop is required, the
amount must be entered in the 'Delta P Pressure Drop' edit box.

This option should be used with care, and only after considering the
possible effects of constraints elsewhere in the system.
Wells which have dP Control allowed will have a circle plotted around
them on the schematic diagram

2.7.3.2.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 261 ), which can
be entered by hand or calculated on the basis of the well VLP/IPR.

1990-2022 Petroleum Experts Limited


338 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 764 . This feature helps to validate if the
VLPs and IPR have been correctly generated.
2.7.3.2.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 271 and Well VLP Input 310 screens. It is called from the Well PC Data
337 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
wells operating range.

GAP User Guide March, 2022


User Guide 339

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.7.3.2.7 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.

The gas coning model is based on Urbanczyk, C.H. and Wattenbarger, R.A.: "Optimization of
Well Rates under Gas Coning Conditions," SPE Advanced Technology Series, Vol. 2, No. 2.
Although the model is based on physics (coning will be less if anisotropy is smaller), the model is
essentially empirical and should always be matched.

When enabled, the gas coning model replaces the calculation of GOR which is normally from the
relative permeabilities and saturations.

See the MBAL manual for more information on the theory behind the gas coning models.

1990-2022 Petroleum Experts Limited


340 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

GAP User Guide March, 2022


User Guide 341

prediction to adjust the gas-oil contact depth from the tank model.
Matching Data/Test These are used to evaluate the coning coefficients F2, F3, and the
Data exponent. Enter up to 10 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.7.3.2.8 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.7.3.2.9 Tank Connections


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

1990-2022 Petroleum Experts Limited


342 GAP

Use the buttons <<<Add and Remove>>> to create connections or disconnect a well from a
tank.

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.7.3.2.10 Schedule (ONLY for Transient & Prediction)


Scheduling can be setup for transient simulations and forecast predictions. This is used to
change the well constraints, to include or exclude equipment and change OPENSERVER
variables in the system at a specific time/date during the run.

By default, the entered schedule refers to a forecast prediction. The transient simulation
schedule is activated by selecting the 'View/Edit Transient Simulation Schedule' option and is
independent of the prediction schedule. When setting up a transient simulation schedule, event
are defined based on a time since the transient simulation start time.

GAP User Guide March, 2022


User Guide 343

It is possible to schedule any variable to be changed using the variable OPENSERVER access
string.

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 productivity index is displayed below.

1990-2022 Petroleum Experts Limited


344 GAP

2.7.3.2.10.1 Change OpenServer Variable Linearly


The 'Change OpenServer variable linearly' event type can be used for transient simulations. This
option will change a OpenServer variable linearly between two event times. For example, a
choke diameter change from 0.5 to 2 inches will occur from the 2 minute to the 17 minute event
time - as shown below.

For the above choke diameter change, the results can be observed from the simulation results
section of the inline choke element - as shown below.

GAP User Guide March, 2022


User Guide 345

2.7.3.2.11 Transient Well Input


The transient well option on the well summary screen allows users to easily convert supported
steady-state PROSPER models into a equivalent transient well model in GAP. This allows quick
analysis of transient behaviour in a well model without the need to re-create a transient pipeline
element which replicates a well. It is important to ensure that the well type in GAP is consistent
with the well type in the PROSPER file.

1990-2022 Petroleum Experts Limited


346 GAP

By selecting this option, GAP will automatically import the well deviation and downhole
equipment data specified in the PROSPER file into a equivalent well description in GAP (this is
similar to a pipeline description). If the system options prediction method has been set to
'Pressure and temperature - Gradient' then a local temperature gradient for the well will also be
imported.

Once the transient well has been setup, transient simulation results for the transient can be
viewed in the same manner as a transient pipeline element in GAP.

For more complex downhole equipment descriptions (e.g. multiple injection points, branches,
restrictions), the well segments can be replicated using a transient pipeline element.

2.7.3.2.11.1 Well Description


The well description screen should described the well deviation and downhole equipment. The
well description screen is the same format as the pipeline description screen and shares the
same functionality, further information can be found here 404 .

GAP will automatically import the equivalent well deviation survey and downhole equipment
description from PROSPER.

GAP User Guide March, 2022


User Guide 347

For oil producer (gas lifted) well models, GAP will automatically import the deepest gas lift valve
depth specified. For oil producer (ESP lifted) well models, GAP will use the ESP data specified
in the PROSPER file. These specified pieced of equipment will be defined under the 'Transient
Fitting' segment type.

If the 'Allow Heat Transfer Coefficient Calculations' options have been enabled under the system
options, then users will also be able to defined detailed completion descriptions for heat transfer
coefficient calculations just like for a pipeline element.

2.7.3.2.11.2 Well Environment


The well environment should represent the surrounding environment of the well model. This is
equivalent to the geothermal gradient data in the PROSPER file.

The well environment screen is the same format as the pipeline environment screen and shares
the same functionality, further information can be found here 401 .

1990-2022 Petroleum Experts Limited


348 GAP

In order to replicate the geothermal gradient of the PROSPER file, the prediction method
'Pressure and temperature - Gradient' should be setup from the system options screen. This will
require a global temperature gradient to be defined in the flow assurance section.

If the PROSPER file has been setup with the rough approximation temperature model, GAP will
then automatically import the PROSPER geothermal gradient as a local temperature gradient. If
the 'Pressure and temperature - Gradient' option is not enabled then GAP will use the entered
average surrounding temperature. Further information on the 'Pressure and temperature -
Gradient' option can be found here 212 .

Please note that thermal data from enthalpy balance or temperature data (segment specific
overall heat transfer coefficient) from improved approximation will not be imported.
2.7.3.2.11.3 Transient Simulation
The simulation section will define the initialisation behaviour of the transient equipment. This is
the initial conditions (pressure, temperature, velocity) of the transient equipment at start of the
transient simulation calculation i.e. timestep zero of the transient simulation.

GAP User Guide March, 2022


User Guide 349

There are two methods available for initialisation: (1) Steady-State or (2) Static.

Steady-state:

This will initialise the transient equipment based on the results of a steady-state calculation - this
is determined by performing a solve network calculation.

If the solve network calculation cannot determine a steady-state mass and pressure balance in
the network, then this would suggest that an initial steady-state condition does not exist for the
current operating conditions. In this scenario, since transient calculations are time dependent
any subsequent transient calculations may not give valid results.

Static:

This will initialise the transient equipment based on a static fluid column i.e. zero velocity. If
simulating a well unloading process, the upstream pressure can be set to the static reservoir
pressure and the calculated downstream boundary pressure will represent the well shut-in
pressure.

Calculated Boundary This defines if the upstream or downstream pressure is calculated.

1990-2022 Petroleum Experts Limited


350 GAP

Liquid Level The liquid level (TVD) will define the interface of the upstream and
downstream fluid.
Upstream/ This will define the upstream fluid from the upstream node and the
Downstream Fluid downstream fluid from the downstream node defined in the
description section.
Upstream/ The pressure of the calculated boundary will be determined based
Downstream Pressure on a static fluid column and the upstream/downstream pressure
entered.
Edit Fluids This will open the fluid library. New fluids can be created which will
become selectable upstream/downstream fluids.
Calculate This will calculate the pressure of the calculated boundary based on
the entered conditions. The static pressure profile will represent
shut-in, non-flowing conditions.
Plot This will visualise the static gradient based on initial conditions
entered.

2.7.3.2.12 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.

GAP User Guide March, 2022


User Guide 351

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.

The IPR part of the well needs to be considered separately using an inflow icon, which is
described in the Inflow section 576 .

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

1990-2022 Petroleum Experts Limited


352 GAP

following icon:

2.7.3.2.12.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 March, 2022


User Guide 353

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 616 section for details on the VLP
Generation).

The functions of this screen have already been explained in the previous section of this chapter.

2.7.3.2.12.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-2022 Petroleum Experts Limited


354 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.

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 March, 2022


User Guide 355

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


356 GAP

In this screen the 'Options' selected in the PROSPER file can be viewed.

Moving to the PVT section:

GAP User Guide March, 2022


User Guide 357

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


358 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 March, 2022


User Guide 359

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


360 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.

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.
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 March, 2022


User Guide 361

An example of how to set up a model with inflow and outflow elements can be found in the
Examples Guide 976 .
2.7.3.3 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 three sections. The first is the network
Results Screen solver results associated with the previously solved network calculation.

1990-2022 Petroleum Experts Limited


362 GAP

T
Simulation Results The second is the 'Simulation' results which is only valid if a transient
Screen run has been carried out:

Prediction The third is the 'Prediction' results which is only valid if a prediction run
Results Screen has been carried out:

GAP User Guide March, 2022


User Guide 363

2.7.3.3.1 Change Layout


This screen allows the frequency of the prediction results screens to be changed:

While Normal will show a result for each time-step, the Customised option allows a filter to be
applied to show a different frequency of results than was actually calculated. Please note that if
the frequency requested is greater than the one used in the calculations (or dates are requested
which are different to the actual time-step dates) then the results displayed will be interpolated
from the real results.
2.7.3.3.2 VLP/IPR PlayBack
This option allows the user to 'play back' the VLP/IPR intersection of the well during a prediction.
It can be activated by selecting the 'View VLP/IPR' button on the results panel - as shown below.
Please note that a prediction must be run in IPM 11 prior to using the 'play back' functionality.

1990-2022 Petroleum Experts Limited


364 GAP

The new 'VLP & IPR Prediction Data' window will contain all the VLP/IPR solutions of the well
from the prediction. 'Charge start date' will change the start date of the VLP/IPR playback.
'Plot' will open up the VLP/IPR playback plot.

GAP User Guide March, 2022


User Guide 365

In the plot window, the play/pause button will start the playback animation. The stop/reset
button will reset the animation to the initial start date.

2.7.3.3.3 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

1990-2022 Petroleum Experts Limited


366 GAP

the gradient traverse calculations.

This feature includes up to an additional 77 variables including


erosional velocity, hold-up, slip velocity etc.

2.7.3.3.4 Well Layer Results


In the case where the well is connected to more than one Layer (as in Well_A in the system
below).

GAP User Guide March, 2022


User Guide 367

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.

1990-2022 Petroleum Experts Limited


368 GAP

This allows access to the results of each layer:

GAP User Guide March, 2022


User Guide 369

Crossflow is calculated based on the IPRs of each layer. A crossflowing layer will be
displayed with negative rates in the layer results.

2.7.3.3.5 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.

1990-2022 Petroleum Experts Limited


370 GAP

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.

GAP User Guide March, 2022


User Guide 371

2.7.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
Simulation 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.

1990-2022 Petroleum Experts Limited


372 GAP

2.7.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.

GAP User Guide March, 2022


User Guide 373

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 261 for description of these options.

1990-2022 Petroleum Experts Limited


374 GAP

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
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.7.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.7.4.2.1 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.

GAP User Guide March, 2022


User Guide 375

2.7.4.2.2 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
composition.

1990-2022 Petroleum Experts Limited


376 GAP

To modify the fluid properties select the Edit List button shown above.

Note on Steam Injection Manifolds:


The internal steam calculator automatically calculates the saturation pressure and minimum
enthalpy given the defined steam injection manifold temperature and the steam quality specified
in the injection fluids' list.

The Calculator utility can be used to understand the steam quality based on the prevailing
steam generation plant discharge pressure, where the enthalpy can be changed to understand
the required steam saturation temperature when combined with the injection manifold pressure
to obtain the required steam quality.

GAP User Guide March, 2022


User Guide 377

2.7.4.2.2.1 Steam Injection Source

The steam Injection manifold is selected from the 'Separation Type' drop down menu.

1990-2022 Petroleum Experts Limited


378 GAP

A steam source needs to be created in the 'Injection Fluid' tab, using the "Edit List" button.

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

GAP User Guide March, 2022


User Guide 379

Injection Fluids' window or from the Input | Fluid screen.

Steam Calculator

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


380 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 March, 2022


User Guide 381

1990-2022 Petroleum Experts Limited


382 GAP

2.7.4.2.3 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:

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 March, 2022


User Guide 383

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
6) Maximum condensate production
7) Minimum gas injection rate
8) Maximum power
9) Maximum CO2, H2S, N2
10)Minimum oil specific gravity
11)Maximum Gross Heating Value
12)Maximum Specific Gross Heating Value
13)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 170 tables section for details.

Use constraints with caution. It is recommended to review the notes on


constraints 321 provided in the manual before formulating the optimisation
problem.

2.7.4.2.4 Plant Process (ONLY for LNG Process Plant)


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. This is used for

1990-2022 Petroleum Experts Limited


384 GAP

reporting the mass rate of LNG, Fuel & Flare and Condensate produced at the LNG plant.

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.7.4.2.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 342 for a description
of the feature.
2.7.4.3 Separator Results Screen
The separator results for network solver, simulation and prediction all follow the same reporting
format as other equipment items. Further details on the results screen can be found in the

GAP User Guide March, 2022


User Guide 385

following section 257 .

Additional Results:

Production separators will report the number of active producer wells in the network.

1990-2022 Petroleum Experts Limited


386 GAP

2.7.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 252 section).

2.7.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 March, 2022


User Guide 387

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 372 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.7.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.

2.7.5.2.1 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:

1990-2022 Petroleum Experts Limited


388 GAP

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
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 321 provided in the manual before formulating the optimisation
problem.

GAP User Guide March, 2022


User Guide 389

2.7.5.2.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 342 for a description
of the feature.

1990-2022 Petroleum Experts Limited


390 GAP

2.7.5.3 Joint Results Screen


The joint results for network solver, simulation and prediction all follow the same reporting format
as other equipment items. Further details on the results screen can be found in the following
section 257 .

Additional Results:

The solve network results for a joint element will report the in-situ rates of oil, water and gas at
the joint pressure/temperature using the upstream fluid PVT configuration (e.g. system defaults,
PROSPER PVT matching).

The in-situ rates will be reported at joint elements in the network which are downstream of a
pipeline with pipe data automatically - as shown below:

The in-situ rates are populated by going to Results | Propagate In-situ Rates - as shown
below:

GAP User Guide March, 2022


User Guide 391

2.7.5.3.1 Show Pipe Gradient


This option will plot the pressure gradient of the flowlines both upstream and downstream of the
selected joint. This can be accessed by right-clicking on the joint and selecting 'Show Pipe
Gradient' - as shown below

This will open a new window with the pressure gradient of the all the flowlines.

1990-2022 Petroleum Experts Limited


392 GAP

Gradient between two nodes:

It is also possible to plot the gradient between two selected nodes in the network. This is
illustrated below:

Use the select button and click on two joints in the network. Selected joints will be highlighted
with a blue circle - as shown below.

From the main menu navigate to Edit | Selected Items | Show gradient between two
selected nodes
This will open a plot window with the pressure gradient between the two selected nodes

GAP User Guide March, 2022


User Guide 393

2.7.5.3.2 Create Fluid from Results


It is possible to create a new fluid from network solver results at a joint. This can be accessed by
right-clicking on the joint and selecting 'Create Fluid from Results' - as shown below.

1990-2022 Petroleum Experts Limited


394 GAP

The created fluid will be automatically saved to the injection fluids library with the fluid label
'ResXX' - as shown below.

GAP User Guide March, 2022


User Guide 395

2.7.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 252 ).

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:

1990-2022 Petroleum Experts Limited


396 GAP

Screen Network Solver Results


Simulation Results
Prediction Results

2.7.6.1 Pipeline Summary Screen


Pipeline Summary Screen

The pipe summary screen is displayed by default when double-clicking on a pipe icon in the
system window.

GAP User Guide March, 2022


User Guide 397

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
be taken into account in the system calculations the following options apply:
Masked

PIpe element remains inactive unless scheduled to be opened at a point


in-time via a prediction schedule
Disabled

Pipe element will remain excluded from the system


ByPassed

Pipe remains open, however, no pressure or temperature loss will be


associated with the pipe unless an "unbypass" action is applied via a
prediction schedule
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.

Correlation The selected multiphase flow correlation will be used for pressure loss
calculations
Gravity Gravity correction value associated with correlation matching

1990-2022 Petroleum Experts Limited


398 GAP

Coefficient
Friction Gravity correction value associated with correlation matching
Coefficient
Rate Multiplier A rate multiplier of 0.5 would imply that the pipe element was twinned,
eliminating the need to defined an additional pipeline element
Flow Type Pipe flow path can be set to either tubing or annular flow
Calculate Heat When selected the detailed pipe walls for thermal modeling become
Transfer available, as well as the option to tell GAP if a pipeline or well is being
Coefficient defined

For further information regarding thermal modeling see Pipe Environment


401

Options on the summary screen will change depending on the method used. The following
sections will describe each of these in detail.
2.7.6.2 Pipeline Input Data (GAP Internal Correlations)
GAP Internal Correlations require a description of the surrounding environment and pipeline
geometry in order to calculate the pressure drop along a section of a pipe. If the calculation
method has been set to Pressure and Temperature - Gradient in the main Options screen 95
then either global or local temperature must be set for the pipe Environment data for fluid
temperature calculations to proceed. All other data entry is optional.

GAP User Guide March, 2022


User Guide 399

Please note that GAP Internal Correlations calculation method is the recommended
approach for modelling pipelines in G A P.

This method calculates the pressure drops “on the fly” using the internal PVT and pressure drop
correlations of GAP.

Import This option allows the user to import a .out Pipeline only PROSPER file
or .psm file created in Pipesim
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.

1990-2022 Petroleum Experts Limited


400 GAP

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
Beggs et al
Bergman-Sutton
Egbogah et al (heavy Oil)
Petrosky et al
De Ghetto et al (heavy oil)
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 has lumping allowed) This option
Calculation allows the user to specify which composition to use for the main
Mode calculation. if <System Default> is selected, the program will use the
Lumped or the De-Lumped composition as specified in the menu
Options | Method
Slug Method This will define the model used for calculating slug characteristics when
performing a flow assurance/gradient calculation for the pipeline.
Transient This will enable transient flow calculations for the pipeline element and
will change the pipeline colours as shown below:

GAP User Guide March, 2022


User Guide 401

Description This will define the main orientation of the pipeline element in the
(Pipeline or Well) completion description tool when calculate heat transfer coefficient is
enabled i.e. Pipeline - Horizontal and Well - Vertical
Data Summary This shows the status of the various aspects of item data which are
Area described in the following sections.

2.7.6.2.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. The heat transfer coefficient can also be calculated in
GAP, the program requires information on the surrounding pipe environment, pipeline burial and
equipment description. GAP uses this information to determine the rate of heat loss.

The following dialogue displays the Environment screen which is related to the fluid temperature
calculations.

1990-2022 Petroleum Experts Limited


402 GAP

Calculate Heat This option is selectable if 'Allow Heat Transfer Coefficient


Transfer Coefficient Calculations' has been enabled from system options 95 . This will
enable GAP to calculate the heat transfer coefficient for the pipeline
element based on the information entered in the pipeline
environment and description input screen.
Time Since Production The heat transfer coefficient calculated by GAP is transient. Time
Started since production started is used to initialise the overall heat transfer
coefficient and then superposition is used to account for the effects of
historical production.
Surrounding Enter the temperature of the environment surrounding the pipe.
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

GAP User Guide March, 2022


User Guide 403

Heat Capacity Average heat capacities for Oil, Gas and Water.
Use Local Gradient This option is selectable if 'Pressure and temperature - Gradient' has
been enabled from system options 95 . This allows entry of a local
surrounding temperature gradient that is independent of the global
surrounding temperature gradient.

Further illustrations can be found here 212 .


Use Local Pipe This option is selectable if 'Allow Heat Transfer Coefficient
Environment Calculations' has been enabled from system options 95 . This allows
entry of a local surrounding environment that is independent of the
global surrounding temperature gradient. This information will be
used to calculate the overall heat transfer coefficient.

Further illustrations can be found here 214 .


Use Pipeline Burial This option is selectable if 'Allow Heat Transfer Coefficient
Calculations' has been enabled from system options 95 and the
pipeline description has been set to 'Pipeline' in the summary screen
398 .

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 d
If necessary, insert another node and change the burial depth for examp
riser.

The soil conductivity around buried surface pipes is taken from the 'Th
Properties' database for the shallowest rock type entered in the Lith
screen.

1990-2022 Petroleum Experts Limited


404 GAP

2.7.6.2.1.1 Pipeline Burial

Use Pipeline Burial This option is selectable if 'Allow Heat Transfer Coefficient
Calculations' has been enabled from system options 95 and the
pipeline description has been set to 'Pipeline' in the summary screen
398 .

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 d
If necessary, insert another node and change the burial depth for examp
riser.

The soil conductivity around buried surface pipes is taken from the 'Th
Properties' database for the shallowest rock type entered in the Lith
screen.

2.7.6.2.2 Pipe Description


Click on the 'Description' tab to enter the geometry of the pipeline. Up to 500 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.

GAP User Guide March, 2022


User Guide 405

Pipe Description Input Columns

Segment 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.

1990-2022 Petroleum Experts Limited


406 GAP

There is also the option to define the pipe topography based on the
elevation change as apposed to 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 specified diameter of the pipe. The outside diameter may be
required for annular flow type or heat transfer coefficient calculations.
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.

GAP User Guide March, 2022


User Guide 407

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

1990-2022 Petroleum Experts Limited


408 GAP

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.

GAP User Guide March, 2022


User Guide 409

Pipe Material This describes the main pipe material (i.e. the innermost layer) for line,
coated and flexible segment types. Additional layers on the main pipe
segment can be described from the 'Heat Transfer' button.

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

Enter This option will define if the pipeline elevation change is entered in terms of
elevation as TVD change or individual segment elevation change.
Transient This option will define the maximum step length used for transient calculations.
Pipe Step
Specify Step This option will allow the user to specify individual step lengths for each
Length by segment in the pipe description.
Segment
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).
Calculate Enabling this option will activate the 'Heat Transfer' button which can be used to
Heat Transfer add additional material layers to the pipeline element e.g. annulus, insulation.
Coefficient See Pipe Environment 401
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.
Maximum This is the iteration length used in the calculation of pressure drops over a pipe
Length Step length. This should not need to be altered unless the pipe under consideration
is particularly long or has complex geometry.
Transient When the transient option is enabled the step length will define the frequency
Result Data of the transient results reported in 'Show Transient Results...'
Sampling
Correlation/ Select an appropriate pipeline correlation from those available. The correlation
Coefficient 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.
Swap Nodes 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

1990-2022 Petroleum Experts Limited


410 GAP

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
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.

Heat Transfer This option will open the completion description tool. Further information can be
found here.
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).
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

GAP User Guide March, 2022


User Guide 411

default.

2.7.6.2.2.1 Pipe Entry Example


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
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.

1990-2022 Petroleum Experts Limited


412 GAP

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.

GAP User Guide March, 2022


User Guide 413

To change the definition of the nodes click on the ‘Swap Nodes’ button.

2.7.6.2.3 Heat Transfer Completion Decription


The Heat Transfer Completion Description tool allows the user to enter detailed tubing/pipeline
descriptions e.g. additional material layers, annulus fluid. This detailed information is required to
calculate the overall heat transfer coefficient for thermal temperature change calculations.

This tool will only be available if 'Allow Heat Transfer Coefficient Calculations' have been
enabled from system options and 'Calculate Heat Transfer Coefficient' has been selected in the
pipeline environment/description input screens.

1990-2022 Petroleum Experts Limited


414 GAP

The tool automatically imports the description (Line Pipe, Coated, Flexible) from the pipeline
description input screen. These segment lengths and dimensions are not editable in the tool.
Choke and fitting segment types will be ignored.

Completion Description Inputs

The completion description inputs allow additional layers of material to be added to the main
segment imported from the pipeline description input screen. These material layers created are
all displayed visually on the interface and on the top right panel.

Add/Remove This can be used to add/remove additional material layers which are
considered for the overall heat transfer coefficient calculation.
Drop Down Menu (ID, This can be used to sort the list of material layers displayed in the top
Label, Material/Fluid)
right panel.

Label This is the description used to identify the material layer in the top right
panel.
Material This defines the material thermal properties (Conductivity, Heat
Capacity, Emissivity) used to calculate the heat transfer coefficient of
the material.

GAP User Guide March, 2022


User Guide 415

Inner/Outer Diameter This is required to define the material thickness.


Measured Depth This depth defines the starting point of the material layer along the
measured length of the tubing/pipeline description.
Length This is the length of the material layer starting from the measured depth
location.
Annulus This allows annulus fluid to be defined as the material layer. Two fluids
can be defined from the fluid library which are separated by the Liquid
Level along the measured depth of the completion description

Annulus Models

Three different annulus heat transfer models are available.

Conduction Only
o This will capture heat transfer due to conduction and radiation to the surroundings.
Convection
o This will capture heat transfer due to conduction, convection in the annulus and radiation to
the surroundings.
Advanced Convection (GAP Transient Simulation Only)
o This will capture heat transfer due to conduction, both free and forced convection and
radiation to the surroundings.

Further information on the annulus temperature models can be found in the PROSPER User
Guide Appendix.

Model Conduction Only: To be used to capture well or pipeline descriptions


to capture insulating layers etc.
Convection: To be used for a pipeline element with the well
description type to capture convection in the annulus as well as
conduction and radiation to the surroundings.

1990-2022 Petroleum Experts Limited


416 GAP

Advanced Convection: To be used with a GAP Transient Simulation


only. If running a solve network or prediction, GAP will automatically
switch this option back to convection.
The Advanced Convection model will capture the fluid temperature
change in the annulus and the resulting fluid expansion, liquid level
change, annulus pressure build up and gas venting.

Fluid 1/Fluid 2 From the defined liquid level, Fluid 1 is used to defined the
downstream fluid and Fluid 2 is used to upstream fluid. The
selectable fluids are defined in the fluid library.

Liquid Level The static liquid level in the annulus that defined the partition between
Fluid 1 & Fluid 2.

CHP Casing head pressure. This is the initial casing head pressure that is
used to determine the mass of the fluid 1 and fluid 2 in the annulus
based on the specified liquid level. During a transient simulation, the
annulus pressure change required to balance the annulus
temperature change will be calculated.
Choke Size Casing head surface choke size for gas venting in the annulus. If a
choke size of 0 is entered then it is assumed that it is assumed that
all the mass in the annulus is conserved. If a choke size is entered,
then the calculated CHP, specified choke size and downstream
pressure will be used to determine the gas vent rate.
Downstream Casing head surface choke downstream pressure. This is a fixed
Pressure pressure boundary condition downstream of the gas vent valve.

2.7.6.2.4 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.

GAP User Guide March, 2022


User Guide 417

Entering Pipe Match 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.

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.

2.7.6.2.4.1 The Match 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-2022 Petroleum Experts Limited


418 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 March, 2022


User Guide 419

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
manual for more details on the matching procedure.

1990-2022 Petroleum Experts Limited


420 GAP

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.

Selected Correlation Details

As yet, no single correlation performs better than others for all flow conditions.

Fancher Fancher Brown is a no-slip hold-up correlation that is provided for use as
Brown a quality control. It gives the lowest possible value of pressure drop as it
neglects gas/liquid slip and should always predict a pressure which is less
than than the measured value. Even if it gives a good match to measured
downhole pressures, Fancher Brown should not be used for quantitative
work. Measured data falling to the left of Fancher Brown on the correlation
comparison plot indicates a problem with fluid density (i.e PVT) or field
pressure data
Hagedorn performs well in oil wells for slug flow at moderate to high production rates
Brown (well loading is poorly predicted). Hagedorn Brown should not be used for
condensates and whenever mist flow is the main flow regime. It under
predicts pressure drops at low rates and should not be used for predicting
minimum stable rates
Duns and Ros usually performs well in mist flow cases and should be used in high GOR
oil and condensate wells. It tends to over-predict VLP in oil wells. Despite
this, the minimum stable rate indicated by the minimum of the VLP curve
is often a good estimate
Duns and is the original published method, without the enhancements applied in the
Ros Original primary Duns and Ros correlation. The primary Duns and Ros correlation
in PROSPER has been enhanced and optimised for use with
condensates
Petroleum correlation combines the best features of existing correlations. It uses the
Experts Gould et al flow map and the Hagedorn Brown correlation in slug flow, and
Duns and Ros for mist flow. In the transition regime, a combination of slug
and mist results are used
Petroleum includes the features of the PE correlation plus original work on predicting
Experts 2 low-rate VLPs and well stability
Petroleum includes the features of the PE2 correlation plus original work for viscous,
Experts 3 volatile and foamy oils
Petroleum is an advanced mechanistic model suitable for any angled wells (including
Experts 4 downhill flow) suitable for any fluid (including Retrograde Condensate).
Especially good for pipeline pressure drop calculations and instability
calculations (detecting the conditions at which instability will occur)
Petroleum is an advancement on the PE4 mechanistic correlation. PE4 showed
Experts 5 some instabilities (just like other mechanistic models) that limited its use
accross the board. PE5 reduces the instabilities through a calculation that
does not use flow regime maps as a starting point.
PE5 is capable of modelling any fluid type over any well or pipe trajectory.

GAP User Guide March, 2022


User Guide 421

This correlation accounts for fluid density changes for incline and decline
trajectories.The stability of the well can also be verified with the use of
PE5 when calculating the gradient traverse, allowing for liquid loading,
slug frequency, etc. to be modelled
Beggs and is primarily a pipeline correlation. It generally over-predicts pressure
Brill drops in vertical and deviated wells

Note that the GRE (with decaying slug model) correlation is unidirectional. This means that in an
allocation calculation the pressure drop calculation method (as specified on the Method screen)
reverts to forward only, with the resulting increase in the calculation time.

Command Buttons

All Selects (or unselects) all the correlations of the list box
Match Use this button to perform the Match calculation
Main Use this button to leave this screen saving the data and return to the main
screen
Ok Use this button to leave this screen saving the data
Statistics Use this button to access the Parameters screen
Help Use this button to access this screen

2.7.6.2.4.2 OLGAS 3P Emulsion Match Parameters


This option refers to the OLGAS 3P and OLGAS 3P EXT internal emulsion viscosity models.
Further information, please refer to the OLGAS documentation.

2.7.6.2.5 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.

1990-2022 Petroleum Experts Limited


422 GAP

2.7.6.2.6 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 342 for a description
of the feature.
2.7.6.2.7 Simulation
The simulation section will define the initialisation behaviour of the transient equipment. This is
the initial conditions (pressure, temperature, velocity) of the transient equipment at start of the
transient simulation calculation i.e. timestep zero of the transient simulation.

GAP User Guide March, 2022


User Guide 423

There are two methods available for initialisation: (1) Steady-State or (2) Static.

Steady-state:

This will initialise the transient equipment based on the results of a steady-state calculation - this
is determined by performing a solve network calculation.

If the solve network calculation cannot determine a steady-state mass and pressure balance in
the network, then this would suggest that an initial steady-state condition does not exist for the
current operating conditions. In this scenario, since transient calculations are time dependent
any subsequent transient calculations may not give valid results.

Static:

This will initialise the transient equipment based on a static fluid column i.e. zero velocity. If
simulating a well unloading process, the upstream pressure can be set to the static reservoir
pressure and the calculated downstream boundary pressure will represent the well shut-in
pressure.

Calculated Boundary This defines if the upstream or downstream pressure is calculated.

1990-2022 Petroleum Experts Limited


424 GAP

Liquid Level The liquid level (TVD) will define the interface of the upstream and
downstream fluid.
Upstream/ This will define the upstream fluid from the upstream node and the
Downstream Fluid downstream fluid from the downstream node defined in the
description section.
Upstream/ The pressure of the calculated boundary will be determined based
Downstream Pressure on a static fluid column and the upstream/downstream pressure
entered.
Edit Fluids This will open the fluid library. New fluids can be created which will
become selectable upstream/downstream fluids.
Calculate This will calculate the pressure of the calculated boundary based on
the entered conditions. The static pressure profile will represent
shut-in, non-flowing conditions.
Plot This will visualise the static gradient based on initial conditions
entered.

2.7.6.2.8 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

GAP User Guide March, 2022


User Guide 425

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.

The implemented default values of P1 = 1, P2 = 2.5, P3 = 14.1 are based on the equation
presented by Smith and Arnold.

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


PVT in G A P 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 emulsion model 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 will be factored according to the emulsion model 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, as shown below.

1990-2022 Petroleum Experts Limited


426 GAP

Stage 1
Sharp increase at low water cut (WC), which is determined using the equation below.

Stage 2
Plateau with a constant oil viscosity multiplier for intermediate water cuts, which is determined
using the equation below.

The parameters Left and Right Water Cut for Maximum Viscosity (WC1 and WC2) define the
plateau region.

Stage 3
‘Tail’ that declines from the end of the plateau to the viscosity of water (at 100% water cut). This
is a proprietary model which is a function of the water viscosity, oil viscosity, WC1, WC2, P1, P2,
P3 and P4 parameters. As stage 3 is a function of oil/water viscosity, the shape of the curve is

GAP User Guide March, 2022


User Guide 427

thus dependent on the fluid PVT as well as the pressure/temperature which the fluid PVT is
evaluated at. Therefore a reference fluid PVT as well as reference pressure/temperature are
required to create the emulsion plot.

The reference oil and water viscosity used to determine the oil viscosity multiplier in stage 3 of
the emulsion plot (which is used to obtain the matching parameters) are calculated at 60 °F and
14.696 psia. The PVT used to determine the reference oil/water viscosity is based on an oil
description from the 'Injection fluids' library, using the black oil correlations selected in the
‘systems settings’.
If no oil fluid is present then default values are used:
o Oil gravity = 35 API
o GOR = 500 scf/STB
o Gas gravity = 0.7 sp. gravity
o Water salinity = 0 ppm
o No impurities
If there is more than one oil fluid type in the 'Injection fluids' list, then the user will be given
the choice of which to use (when ‘Plot’ is clicked)
If a composition is present it will use the black oil properties of that fluid

To calculate emulsion viscosity:


- Enter the water cut and emulsion viscosity multiplier data points in the "Emulsion
Data" table.
- Click the "Match" button.

1990-2022 Petroleum Experts Limited


428 GAP

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

GAP User Guide March, 2022


User Guide 429

The above regression will only match the first part of the curve (highlighted in blue) using
parameters 2 and 3 to fit the data. For the viscosity correction applying to water cuts above the
right plateau limit (highlighted in red), an exponential decline is implemented that needs to be
matched manually using parameter 4.

Once the viscosity model has been matched to the emulsion data it can then be applied to one,
some or all the pipelines in the system.

References:

1. Woelflin, W., "The Viscosity of Crude-Oil Emulsions", American Petroleum Institute, Drilling
and Production Practice, New York, 1942

2. Smith H.V., Arnold, K. E. "Crude Oil Emulsions" Chapter 19, Petroleum Engineering
Handbook, H. B. Bradley, SPE, Richardson, Texas, 1987

1990-2022 Petroleum Experts Limited


430 GAP

2.7.6.3 Pipeline Input Data (Lift Curves)


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
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.7.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.

GAP User Guide March, 2022


User Guide 431

The user can then browse for the relevant file from the following screen.

1990-2022 Petroleum Experts Limited


432 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
*.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.

GAP User Guide March, 2022


User Guide 433

2.7.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 398 ). 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.

Upon selection of the lift curves tab (highlighted in red in the figure above) the user is prompted
with the following screen.

1990-2022 Petroleum Experts Limited


434 GAP

To create the file select "Generate".

GAP User Guide March, 2022


User Guide 435

The range of variables for which the VLP curves will be created need to be entered under the
"Data" section.

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.

1990-2022 Petroleum Experts Limited


436 GAP

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 616 "
for more information.
2.7.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:

GAP User Guide March, 2022


User Guide 437

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 438 " 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 398 ".

When using PROSPER Online, the PVT is initially specified within the data input as this can be
used to obtain a matched PVT to test data. When performing a solve network or prediction, the
PVT determined at the node upstream of the pipeline is passed to the PROSPER Online
pipeline in order to perform the pressure drop calculations - therefore the PVT data originally
specified in the pipeline data is not used.
2.7.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.

1990-2022 Petroleum Experts Limited


438 GAP

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 398 ".
2.7.6.4 Pipeline Input Data (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:

GAP User Guide March, 2022


User Guide 439

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 step by step description of PROSPER 944 online pipeline 944 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.7.6.4.1 Edit Pipe entry


The next section explains how to enter the pipe data using the 'Edit Pipe' option.

1990-2022 Petroleum Experts Limited


440 GAP

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.

GAP User Guide March, 2022


User Guide 441

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 358 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.

1990-2022 Petroleum Experts Limited


442 GAP

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.7.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.

Note that the theory behind the Rough Approximation method is described in detail in the

GAP User Guide March, 2022


User Guide 443

PROSPER manual.
2.7.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.

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


444 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 TVD
System 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 March, 2022


User Guide 445

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


446 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 March, 2022


User Guide 447

Temperature Data Input (Off Shore):

Temperature Data Input (On Land):

1990-2022 Petroleum Experts Limited


448 GAP

Databases
This optional feature is used to access the thermal properties databases for editing or adding
new materials.

GAP User Guide March, 2022


User Guide 449

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


450 GAP

2.7.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 is based on the full energy equation and can also
take into account 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 March, 2022


User Guide 451

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.7.6.5 Pipeline Results Screen


The pipeline results for network solver, simulation and prediction all follow the same reporting
format as other equipment items. Further details on the results screen can be found in the
following section 257 .

Additional Results:

The following additional result variables will also be reported for pipeline results:

Pressure drop
Pipeline Status - Bottleneck, Wax/Hydrate Risk

1990-2022 Petroleum Experts Limited


452 GAP

Maximum mixture velocity, C Fator and Max line pressure


dP components due to gravity, friction and acceleration
2.7.6.5.1 Pipe Gradient & Flow Assurance 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 Pipe Gradient Plot".

Pressure and temperature gradients can be displayed using the lower left panel from the plot
menu.

GAP User Guide March, 2022


User Guide 453

To view the detailed results of the pressure drop calculations, select 'Show Flow
Assurance...' (as described in Pipeline Flow Assurance 226 ) or 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.

1990-2022 Petroleum Experts Limited


454 GAP

Finally, select "Calculate" to view the detailed gradient results through PROSPER online.

GAP User Guide March, 2022


User Guide 455

2.7.6.5.2 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-2022 Petroleum Experts Limited


456 GAP

GAP User Guide March, 2022


User Guide 457

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


458 GAP

The gradient calculation provides a number of different additional variables,


like C factors, Flow regimes, holdup etc, which are essential in pipeline
design.

For gas-lifted systems, for like-for-like oil viscosity calculation comparisons


between GAP pipe gradient results and the PROSPER PVT calculator at the
prevailing pipe P&T, the PROSPER PVT SG value must be updated with the
GAP pipe SG that combines both the produced solution gas, and gas-lift-gas
gravity.

2.7.6.5.3 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.

GAP User Guide March, 2022


User Guide 459

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 main phase 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
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.

Please note, the main phase (i.e. liquid or gas) is determined from the GOR cutoff (i.e. if GOR is
below cut off use liquid rate). The water and other phase rate are also increased via the GOR
and WCT.
2.7.6.5.4 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.

1990-2022 Petroleum Experts Limited


460 GAP

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.

GAP User Guide March, 2022


User Guide 461

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 . 1134

1990-2022 Petroleum Experts Limited


462 GAP

2.7.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 95 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.
When linking is done through RESOLVE, the external simulator tank is not
required - a direct link to the well can be made in 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).

GAP User Guide March, 2022


User Guide 463

The tank data summary screen has three sections (as explained in the Equipment Summary
section 252 ).

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
Simulation Results
Prediction Results

2.7.7.1 Tank Summary Screen


Double-click on a Tank icon in the system window to display the Tank summary screen.

1990-2022 Petroleum Experts Limited


464 GAP

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 462 )
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
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"

GAP User Guide March, 2022


User Guide 465

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.7.7.2 Tank Input Data (Material Balance Tank)


2.7.7.2.1 Constraints
This tab allows the user to specify tank constraints.

1990-2022 Petroleum Experts Limited


466 GAP

This screen is used to set up any maximum rate constraints for the tanks.

Maximum Gas / Enter the maximum amount of gas to be produced from the tank
Water / Oil / Liquid
Rate

2.7.7.2.2 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 March, 2022


User Guide 467

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 104 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.7.7.2.3 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-2022 Petroleum Experts Limited


468 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

Input Fields:

Connected This list displays the wells that are connected to the given tank. To
remove a connection, highlight the well to disconnect and click on the
Remove button
Not Connected This list displays the wells that are not connected to the tank. To make
a connection to a well, highlight the well in this list and click on the Add
button

GAP User Guide March, 2022


User Guide 469

2.7.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 342 for a description
of the feature.

2.7.7.3 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)

1990-2022 Petroleum Experts Limited


470 GAP

Temperature Defines the temperature of the reservoir


Original Oil/ Specifies the oil/gas in place.
Gas in place

2.7.7.3.1 Tank Production Data


The reservoir pressure decline curves can be entered from the start of any Decline Curve period.
This does not 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 March, 2022


User Guide 471

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


472 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.7.7.3.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

GAP User Guide March, 2022


User Guide 473

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.

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 and override any existing data entered
for compressibility on original volume.

1990-2022 Petroleum Experts Limited


474 GAP

2.7.7.4 Tank Results Screen


The tank results for network solver, simulation and prediction all follow the same reporting format
as other equipment items. Further details on the results screen can be found in the following
section 257 .

Additional Results:

The 'Show MBAL Results' and 'Load MBAL Results' options allow further detailed results to be
reported from a prediction/simulation. 'Show...' will open a copy of the MBAL results window.
'Load...' will open a temporary copy of the MBAL file with prediction results.

GAP User Guide March, 2022


User Guide 475

2.7.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.

The summary and input data for flares and vents are the same as the ones required in Sinks 531 .

2.7.8.1 Emissions 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-2022 Petroleum Experts Limited


476 GAP

GAP User Guide March, 2022


User Guide 477

2.7.9 Pumps

Pumps can be handled in GAP with performance data provided by the pump manufacturer, or
based on a model.

Four 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
OneSubsea / Sulzer OneSubsea & Sulzer pump models that can be used to account for the
Pump 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:

1990-2022 Petroleum Experts Limited


478 GAP

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
Simulation Results
Prediction Results

2.7.9.1 Pump Summary Screen


Double click a pump icon to display the pump input summary screen:

GAP User Guide March, 2022


User Guide 479

Main Features

Model Select the desired pump model.


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.
Pump Wear Factor This is used to account for deviation from the manufacturers model due
to wear etc.
Type For the selected pump model, select the type of pumping equipment.
Edit Database This will open the artificial lift database where users can add and edit
the types of pumping equipment available for the selected model.

2.7.9.1.1 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-2022 Petroleum Experts Limited


480 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 March, 2022


User Guide 481

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.7.9.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 OneSubsea 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.

It is possible to implement a user-defined pump model through an inline programmable element


557 which allows the engineer to write script that can be executed during each iteration of the

solver.

1990-2022 Petroleum Experts Limited


482 GAP

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".

GAP User Guide March, 2022


User Guide 483

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

1990-2022 Petroleum Experts Limited


484 GAP

Delete PC Deletes the performance data entered for the pump. Once the
performance data is deleted, the pump input sections are treated as
new.
Separation and This can be used to separate and remove water, oil or gas from the
Cooling Data network before or after the pump element.

2.7.9.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.

GAP User Guide March, 2022


User Guide 485

The maximum/minimum operating speed limits are then set in the "Control" tab.

1990-2022 Petroleum Experts Limited


486 GAP

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.7.9.2.2 Pump Performance Data


Clicking Edit from the Pump/Compressor Input screen allows the inspection and manual editing
of the Performance data for a particular pump or compressor.

GAP User Guide March, 2022


User Guide 487

The head and power consumed are displayed in columns on the left and the sensitivity variables,
i.e. rate, liquid/gas fraction and speed appear on the right hand sides of the dialogue. To display
a particular head - rate curve select the appropriate values for the other variables : selected
values are displayed in reverse video as shown.

Data can be copied around the table by using the standard GAP copy and paste mechanism 87 .

Action Buttons:

OK Removes the dialogue, saving any changes made


Cancel Removes the dialogue, ignoring any changes
Plot Displays the Plot screen for the data
Help Displays this screen

UNITS OF RATES:

It can be observed that the units for Rate is specified as RMMcf/d (in Oil Field Units.)

The 'R' indicates the volume is at insitu conditions of Pressure and Temperature and not at
standard conditions.
2.7.9.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-2022 Petroleum Experts Limited


488 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 March, 2022


User Guide 489

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.7.9.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-2022 Petroleum Experts Limited


490 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 March, 2022


User Guide 491

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.7.9.4 MultiPhase Pump Options


When the pump is defined as a OneSubSea/Sulzer Pump, a database with available pumps will
become active as shown below:

1990-2022 Petroleum Experts Limited


492 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 March, 2022


User Guide 493

2.7.9.4.1 OneSubsea Pump Control


The OneSubSea Pump in GAP can be made controllable. The control used depends on the type
of pump selected;

H-Series Pumps

The pump power can be modified to optimise production and honour constraints:

1990-2022 Petroleum Experts Limited


494 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

HX-Series Pumps

The pump speed can be modified to optimise production and honour constraints:

GAP User Guide March, 2022


User Guide 495

Pump Speed Control Options

Fixed Speed is fixed in the calculations.

Actual Speed Fixed speed used in the calculations. Please note that this va
cannot be greater than the maximum speed defined in
database.

Calculated GAP will modify the pump speed (between the speed limits) to optimise
production and obey all constraints.

Actual Speed 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

Note on Controlling OneSubsea Pumps

When optimising, GAP will ensure that the pump does not exceed a maximum power
constraint by controlling the pump speed.
However it is possible that whilst honouring this constraint, the pressure differential

1990-2022 Petroleum Experts Limited


496 GAP

between the pump suction and discharge will exceed the maximum allowable.
The optimisation of pump speed and simultaneous control of pump dP can be
implemented via a workflow in RESOLVE or a script in GAP.
2.7.9.5 Constraints
This tab allows the user to specify pump constraints. The options will change according to the
type of pump selected:

2.7.9.6 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 342 for a description
of the feature.

GAP User Guide March, 2022


User Guide 497

2.7.10 Surface Jet Pumps

Surface Jet Pumps (SJPs) can be included in the surface network in GAP. The pump
performance is calculated based on a model supplied by Caltec. This model calculates the
discharge pressure based on the inlet pressures and mass flowrates.

The SJP data entry screen has three sections (as explained in the Equipment Summary Section
252 ).

Summary Allows navigation to the SJP input screens


Screen
Input Includes tabbed screens for the following input fields:
Screen Pump Data (Valid/Invalid)
Pump Orientation
Constraints (Valid/None/Invalid)
Schedule (None/Some)
Results Contains the following fields:
Screen Network Solver Results
Prediction Results

An SJP has three connections in GAP;


1. [H] The high pressure (power fluid) entering
2. [L] The low pressure (suction fluid) entering
3. [D] The comingled fluid leaving

Note; the connections to the SJP (represented by white arrows) should be consistent with
the flow direction in reality.

1990-2022 Petroleum Experts Limited


498 GAP

2.7.10.1 Surface Jet Pump Summary Screen


Double clicking on a SJP takes the user to the summary screen.

Label Maximum of 18 characters allowed. This defaults to the name supplied in the
label dialogue box when the SJP 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 SJP. This name will appear in the reports generated by
the allocation calculations.
Mask This option allows a SJP to be added or omitted from the network database
and consequently the calculations.

Comments Enter any string of comments to provide more detailed information about the
SJP
Data Summary This shows the status of the various aspects of item data. These will be
Area described in the following sections

GAP User Guide March, 2022


User Guide 499

2.7.10.2 Surface Jet Pump Input Data


2.7.10.2.1 Surface Jet Pump Data
The data section is split into two parts;

SJP Parameters The physical dimensions of the pump should be entered here
SJP Design This section can be used to calculate any unknown parameter based on
the known parameters

SJP Parameters

The SJP parameters are used as inputs to the ELF choke model to calculate the pressure loss
in the nozzle. As the motive fluid and suction fluid meet at the outlet of the nozzle; the pressures
of both fluids must balance at this point.

1990-2022 Petroleum Experts Limited


500 GAP

SJP Design

The SJP model in GAP is a combination of the ELF choke model and a model supplied by
Caltec. The ELF model is used to calculate the pressure loss in the nozzle while the Caltec
model is used to calculate the discharge pressure based on the inlet rates and pressures.

The SJP Design section uses the above models to calculate unknown parameters based on
known parameters. For example, the ELF choke model can be used to calculate the required
nozzle properties based on design criteria. The Caltec model can be used to calculate the
discharge pressure based on inlet conditions. The calculated nozzle parameters can be
transferred to the actual model using the "copy design to model" option.

GAP User Guide March, 2022


User Guide 501

2.7.10.2.2 Surface Jet Pump Orientation


As explained previously; the SJP has three connections. The orientation tab allows the user to
specify the location of each connection.

The orientation specified will be reflected in the SJP icon in GAP;

Note On Orientation

Changing the orientation of the SJP will not affect the path of the fluid, hence the results in GAP
will not be affected. Changing the orientation will only affect how the SJP is displayed in GAP.

1990-2022 Petroleum Experts Limited


502 GAP

2.7.11 Compressors

Compressors can be handled in GAP with performance data provided by the compressor
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 the compressor and joints with the 'Link' icon selected.

NOTE: The compressor connections (represented by the white arrows) should be


consistent the actual flow direction:

2.7.11.1 Compressor Summary Screen


Double click on a compressor icon to display the compressor input screen:

GAP User Guide March, 2022


User Guide 503

Main options

Type Select the type of Compressor here. The options available are:
Performance Curves (Full model)
Fixed dP Compressor
Fixed Power Compressor

A fixed power compressor by definition will give infinite head for low r
and may provide with inconsistent results.

Because of this, this type of compressor should be used only for scop
and a curve of efficiency vs rate should be entered to avoid infinite hea

Reciprocating
MultiPhase Compressor/Pump

1990-2022 Petroleum Experts Limited


504 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 This option allows the user to specify the number of compressors in
Compressors in parallel which GAP will take into consideration in the network
parallel calculation. It prevents the user from having to create a separate
compressor element in the main network.

2.7.11.1.1 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.

GAP User Guide March, 2022


User Guide 505

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.7.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:

1990-2022 Petroleum Experts Limited


506 GAP

Main input data

No. of Stages This is the number of stages in the compressor.

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 'Separation and Cooling 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

GAP User Guide March, 2022


User Guide 507

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.

Note: With Use Overall Efficiency enabled, Polytropic Efficiency


used for the compressor calculations (i.e. discharge temperature and
pressure) is taken as the minimum value of the entered Polytropic
Efficiency and the Overall Efficiency (from the performance curve).
When calculating the Power Required from the Power to Fluid, the
Overall Efficiency is used.
Use Wear Factor This is used to account for deviation from the manufacturers model
due to wear etc.
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".

1990-2022 Petroleum Experts Limited


508 GAP

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.

At the bottom of the screen, the way the head can be chosen. The

GAP User Guide March, 2022


User Guide 509

options are:

Head (e.g. ft)

Energy (e.g. BTU/lb)

Pressure Ratio (e.g. fraction)

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:

Operating rate The gas rate flowing through the compressor, expressed at inlet
conditions.
Head Measure of the energy given to the fluid. This will be expressed as per
the head definition in the sensitivity variable selection screen (previous
screen).
Power Power provided to the compressor.
Polytropic Multiplier is used to modify the polytropic efficiency with varying flow

1990-2022 Petroleum Experts Limited


510 GAP

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.

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

GAP User Guide March, 2022


User Guide 511

2.7.11.2.1 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).

Note on compressor recycling: Compressor with several stages


Consider the following two cases:
1) A single Compressor object is created with two stages
2) Two Compressor objects are created with one stage each

In case 1), if the 2nd stage is surging it will recycle rate to the start of the 1st stage. Thus the
pump inlet rate will be affected by the recycling.
In case 2), if the 2nd stage is surging it will recycle rate to the start of the 2nd stage only. As a
result the inlet pump rate for the first stage will be unchanged.

1990-2022 Petroleum Experts Limited


512 GAP

2.7.11.2.2 Performance Curves Data Entry Recommendation


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:

GAP User Guide March, 2022


User Guide 513

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:

Plot of Head vs Operating Rate at various speeds

1990-2022 Petroleum Experts Limited


514 GAP

Plot of Power vs Operating Rate at various speeds

2.7.11.2.3 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 March, 2022


User Guide 515

2.7.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.

1990-2022 Petroleum Experts Limited


516 GAP

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 'Separation and Cooling 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.7.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

GAP User Guide March, 2022


User Guide 517

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.

To enter the efficiency as a function of the rate, select the 'Efficiency' tab as shown in the figure

1990-2022 Petroleum Experts Limited


518 GAP

below:

2.7.11.5 Input Data for Reciprocating Compressor


Reciprocating compressors are positive displacement machines which compress and displace
gas using a piston within a cylinder. A single cylinder compressing on one side of the piston is
known as a single acting compressor. A unit compressing on both sides of the piston is known
as double acting.

Please note that reciprocating compressors are designed to operate at a constant speed to
maximise typical high-speed lean-burn clean-burn driver efficiencies. As always, production
operations will provide further guidance with respect to compressor speed.

With a fixed displacement volume based on the cylinder dimensions (i.e. operate at a fixed
rate), care should be taken with long term forecasts with integrated systems where a range of
operating rates may occur. It may be necessary to re-cylinder the reciprocating compressor

GAP User Guide March, 2022


User Guide 519

using schedules in GAP. Note that over-sized compressor stages will be reported in the solver
and prediction message log.

Four types of reciprocating compressors can be modelled, as illustrated by the figures below:

Single Acting Head End

Single Acting Crank End

Double Acting

Tandem

Input Data

Number of Stages This will automatically populate the number of rows for separation/

1990-2022 Petroleum Experts Limited


520 GAP

cooling and stage data.

Actual Speed This is the compressor speed.

Polytropic Efficiency This may be known (or approximated) from a prior test and will impact
the discharge temperature calculations.

Separation and Cooling Data

Reciprocating compressors separate any liquid prior to compression and usually require inter-
cooling of the gas between stages.

Stage Data

The number of stages is required, and for each stage the inputs are:

Number of cylinders Number of cylinders in each unit stage.

Stroke Length Length of the compression stroke.

Piston Diameter Diameter of piston.

Rod Diameter Diameter of rod.

Clearance (as a Space remaining in compressor cylinder at head-end/crank-end as well


percentage) as gas expansion at the valve gallery.

GAP User Guide March, 2022


User Guide 521

2.7.11.6 Input Data for MultiPhase Compressor/Pump


This option is for modeling multiphase pump/compressor 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.

All of the inputs are the same as in the Compressor element and the user should refer to this
section 505 for a detailed description of the available options.

1990-2022 Petroleum Experts Limited


522 GAP

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.

GAP User Guide March, 2022


User Guide 523

2.7.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:

1990-2022 Petroleum Experts Limited


524 GAP

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.7.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 342 for a description
of the feature.

GAP User Guide March, 2022


User Guide 525

2.7.11.9 Explicit Compressor Recycling


In previous versions of the tools, the amount of fluid recycled by the compressor was calculated
and reported in the results. The user now has the option to model this recirculation loop explicitly
in GAP.

To activate the explicit compressor recycling, the user can right-click on the compressor icon in
the system window and select "Explicit Compressor Recirculation";

The compressor icon will then change to show that the recycle is being modeled explicitly;

1990-2022 Petroleum Experts Limited


526 GAP

The top control valve indicates the internal recycle of the compressor whilst the second control
valve indicates an external recirculation loop. To complete the external recirculation loop, this
control valve can then be connected to another piece of equipment such as the high pressure
port of a surface jet pump;

Hovering the mouse over the compressor will display the solver results of the compressor
Hovering the mouse over the top control valve will display the internal recirculation results
Hovering the mouse over the recirculation valve will display the outlet conditions of this
valve

GAP User Guide March, 2022


User Guide 527

2.7.11.10 Generate Compressor Curve From Data


The generate compressor curve from data option allows users to create a common compressor
performance curve to be used by GAP for different compressor sensitivity variables.

Once a compressor element has been placed on the GAP canvas (which does not already
contain data), the user can navigate to Generate | Generate Compressor Curves from Data...

In the new window, the user can select the compressor element of interest and change the
compressor type via the compressor options panel. The required compressor type should be
'Performance Curves'.

Selecting 'Variables 528 ' will allow the user to define the sensitivity variables for the compressor
curve. Selecting the 'Create 529 ' button after setting up the variables will allow the user to enter the
input data.

1990-2022 Petroleum Experts Limited


528 GAP

2.7.11.10.1 Variables
In this window, the user can define the compressor sensitivity variables.

GAP User Guide March, 2022


User Guide 529

2.7.11.10.2 Create
The user will first need to define the sensitivity variables parameters, previously defined in the
sensitivity variables screen.

1990-2022 Petroleum Experts Limited


530 GAP

Once defined, the user can enter the input data for each sensitivity variable and the desired
reference rate. Once the data can been entered, selecting the 'Create Curve and Plot' button will
generate the compressor performance curve data. Selecting the 'Apply To Equipment' button will
transfer this information to the selected compressor equipment.

GAP User Guide March, 2022


User Guide 531

2.7.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':

1990-2022 Petroleum Experts Limited


532 GAP

Sources/ Sinks are connected to the main surface network via a joint

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
Simulation Results
Prediction Results

2.7.12.1 Source / Sink Summary Screen


A "Source" or "Sink" is an artificial element that can either inject/remove a fixed rate (defined by
the user) in the system or apply a fixed pressure (by injecting/removing fluid).

For "Source" elements, 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

GAP User Guide March, 2022


User Guide 533

rate that balances the system.

For "Sink" elements, care should be taken that the user defined fixed rate removal does not
exceed the upstream potential.

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.

Source Summary Data

This following screen is the source summary data screen.

Main Options

Type (Source Here the type of source is selected. The options depend on whether or
Element) not the source is connected to a separator.

1990-2022 Petroleum Experts Limited


534 GAP

Standalone If the source is an independent source, the options are:


sources Fixed Rate
Fixed Mass Rate
Fixed Pressure
Sources For sources connected to separators, the options are:
connected Separated gas
to Separated water
separators Separated Oil

Type (Sink Here the type of sink element is selected. Vents and flares are exactly the
Element) same as the sink element and can be used for emission reporting.

Model options:

Fixed Rate
Fixed Mass Rate
Fixed Pressure
Depends on Indicates the separator directly connected to the source element
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.
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.

2.7.12.1.1 Source Connection Setup


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.

GAP User Guide March, 2022


User Guide 535

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.

To define which phase the source will transfer, access the source summary
screen and select the 'Type' as shown below:

1990-2022 Petroleum Experts Limited


536 GAP

2.7.12.2 Source / Sink 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.

The following table represents the division of the input data:

Fluid (Source This will defined the type of injection fluid from the injection fluid library.
only)
Fixed Rate/ This will defined the fixed quantity and fluid temperature.
Pressure/Mass
Schedule This will define the schedule of the source/sink element.

Source Schedule (Only for Predictions)

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 342 for a description
of the feature.
2.7.12.2.1 Source Fluid
Source Fluid Data

GAP User Guide March, 2022


User Guide 537

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.

It is also possible to create a new fluid from network solver results at a joint - more information 393

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.7.12.2.2 Fixed Rate/Pressure/Mass


Source Fixed Quantity

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


538 GAP

Sink Fixed Quantity

Depending on the Sink type (fixed rate, fixed mass or fixed pressure) the user needs to specify
the rates or pressures.

GAP User Guide March, 2022


User Guide 539

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.7.12.2.3 Schedule
Source/Sink Schedule (Only for Predictions)

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 342 for a description
of the feature.

1990-2022 Petroleum Experts Limited


540 GAP

2.7.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

GAP User Guide March, 2022


User Guide 541

Cancel Reverts back to the main GAP screen

2.7.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
Simulation Results
Prediction Results

Inline Gate Valve Summary Screen

1990-2022 Petroleum Experts Limited


542 GAP

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.7.13.1.1 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 342 for a description
of the feature.

GAP User Guide March, 2022


User Guide 543

2.7.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
Simulation Results
Prediction Results

2.7.13.2.1 Inline Check Valve Data Summary Screen


The Inline Check valve has the following data entry screen:

1990-2022 Petroleum Experts Limited


544 GAP

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.7.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 342 for a description
of the feature.

GAP User Guide March, 2022


User Guide 545

2.7.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
Simulation Results
Prediction Results

Inline Separation Data Summary

The Inline Separation has the following data entry screen:

1990-2022 Petroleum Experts Limited


546 GAP

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

GAP User Guide March, 2022


User Guide 547

2.7.13.3.1 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.7.13.3.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 342 for a description
of the feature.

1990-2022 Petroleum Experts Limited


548 GAP

2.7.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
Simulation Results
Prediction Results

Inline Choke Summary Screen

The Inline Choke has the following data entry screen:

GAP User Guide March, 2022


User Guide 549

Data Summary This shows the status of the various aspects of item data
Area

1990-2022 Petroleum Experts Limited


550 GAP

2.7.13.4.1 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.

GAP User Guide March, 2022


User Guide 551

This prompts the following screen, automatically transferring the conditions from the results of the
Solve Network/Prediction. Pressing 'Calculate' performs the choke calculation.

1990-2022 Petroleum Experts Limited


552 GAP

The plot button displays the performance curve of the choke along with the operating point.

There are various choke models available in GAP. For more information on these models
please see the PROSPER user manual.

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.
The improved steam modelling introduced in IPM 12 (i.e. accounting for the
steam enthalpy across the choke) is only available with the ELF choke model.

Input Fields:

GAP User Guide March, 2022


User Guide 553

dP Control Drop down menu options

None
This toggles the dP control for the item on or off.

Fixed delta pressure:


A fixed pressure drop will be applied applied to the item.

Fixed choke Diameter:


The pressure drop across the choke will be calculated for the choke size especified.

Calculated:
The optimiser will calculate the choke size required to meet any constrainst of the system, within
the boundaries enetered.

The discharge coefficient relates the actual flow to the ideal frictionless flow.
By default the discharge coefficient is 1, which means that the Perkins model is
used as such. If choke measurements are available, it is possible to tune this
parameter so that the choke model reproduces them. This feature makes the
choke model in GAP general and customizable.

Command Buttons:

Plot/Calculate:
No action for this screen

2.7.13.4.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 342 for a description
of the feature.

1990-2022 Petroleum Experts Limited


554 GAP

2.7.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
Simulation Results
Prediction Results

Inline Injection Data Summary Screen

The Inline Injection has the following data entry screen:

GAP User Guide March, 2022


User Guide 555

Data Summary This shows the status of the various aspects of item data
Area

2.7.13.5.1 Defining the Injection Fluid PVT


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.

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

By design, the inline injector may only be optimised when injecting the fluid types
gas and steam (i.e. not for fluids where the main phase is liquid). If a oil, water or
kill fluid is set as the controllable injection fluid, the optimiser log will report that
there are no optimisation variables available.

1990-2022 Petroleum Experts Limited


556 GAP

2.7.13.5.2 Defining the Injection Rate


In this screen, we define the rate and the control.

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.7.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 342 for a description
of the feature.

GAP User Guide March, 2022


User Guide 557

2.7.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 838 .

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
Simulation Results
Prediction Results

2.7.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 a custom language that is similar to '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 drop PRESOUT = PRESIN - DeltaPressure;
of 50 psi over the inline if ( PRESOUT < DeltaPressure )
element PRESOUT = DeltaPressure;

Each line must be terminated by a semi colon. Local variables 558 (such as DeltaPressure) do
not need to be declared.

1990-2022 Petroleum Experts Limited


558 GAP

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
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.

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.7.13.6.2 Inline General Script Variables


There are three different classes of variables that can be defined and used in the inline general
element script:

Local TemporaryThese variables are defined by the user within the script to for instance

GAP User Guide March, 2022


User Guide 559

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[0…10] or
Variables ITEMPVAR[0…10] keywords. See section below 563
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.

2.7.13.6.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 342 for a description
of the feature.

1990-2022 Petroleum Experts Limited


560 GAP

2.7.13.6.4 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)
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

GAP User Guide March, 2022


User Guide 561

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

see definition of COMP structure 564 below.

See also Control Variables 562 , Temporary Variables 563 , Results Variables 563 , Tax Regime
Variables 563 , Flow & Comp Structure Variables 564 , PVT Calculator- Black Oil 567 , PVT
Calculator - Compositional Variables 569

1990-2022 Petroleum Experts Limited


562 GAP

2.7.13.6.5 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

GAP User Guide March, 2022


User Guide 563

2.7.13.6.6 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.7.13.6.7 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 drop PRESOUT = PRESIN - DeltaPressure;
of 50 psi over the inline if ( PRESOUT < DeltaPressure )
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.7.13.6.8 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)

1990-2022 Petroleum Experts Limited


564 GAP

2.7.13.6.9 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

GAP User Guide March, 2022


User Guide 565

QGAS Gas rate of the element


QOIL Oil rate of the element
QPWF Power fluid rate
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

1990-2022 Petroleum Experts Limited


566 GAP

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

GAP User Guide March, 2022


User Guide 567

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.7.13.6.10 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
PVTTEMP Temperature

1990-2022 Petroleum Experts Limited


568 GAP

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
PVTCPRWAT Specific heat capacity of water

GAP User Guide March, 2022


User Guide 569

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 In-situ Vapour volume 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.7.13.6.11 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 565 variables and the PVT black oil 567 calculator there is also:

PVTVAPFRA In-situ Vapour volume 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
stored in the PVTCOMPLIQ and PVTCOMVAP structures

1990-2022 Petroleum Experts Limited


570 GAP

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 need 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.

To avoid potential calculation errors, please ensure that the script is included within the "if"
statement shown below.

Examples
How to flash the inlet
composition at P and T and PVTPRES = PRESIN;
send the vapour on the gas PVTTEMP = TEMPIN;
line and the liquid PVTCOMP = COMPIN;
hydrocarbon on the oil line
CALCPVT();

GAP User Guide March, 2022


User Guide 571

COMPSEPOIL = PVTCOMPLIQ;
COMPSEPGAS = PVTCOMPVAP;

alpha= (COMPIN.MOLEPCT[0] -
PVTCOMPLIQ.MOLEPCT[0]) /
(PVTCOMPVAP.MOLEPCT[0] -
PVTCOMPLIQ.MOLEPCT[0]);

SEPGAS[QMOLE] = IN[QMOLE] * alpha;


SEPOIL[QMOLE] = IN[QMOLE] * (1 - alpha);
OUT[QMOLE] = 0;

How to change the CO2


mole percent of
composition COMPOUT to
1.2% after normalization i.e.
PVTCHANGECOMP(COMPOUT, “CO2”, 1.2, 1,
the CO2 percent is set 1.2%
QMOLEOUT);
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
50% of the gas and sets it PVTPRES = PRESIN;
as the outlet stream PVTTEMP = TEMPIN;
composition PVTCOMP = COMPIN;

CALCPVT();

alpha= (COMPIN.MOLEPCT[0] -
PVTCOMPLIQ.MOLEPCT[0]) /
(PVTCOMPVAP.MOLEPCT[0] -
PVTCOMPLIQ.MOLEPCT[0]);

PVTBLENDSTART();
PVTBLENDADD(PVTCOMPLIQ, (1-alpha));
PVTBLENDADD(PVTCOMPVAP, (alpha/2));
PVTBLENDCALC();

1990-2022 Petroleum Experts Limited


572 GAP

beta=(1-alpha)+(alpha/2);

COMPOUT=PVTCOMP;
COMPSEPGAS=PVTCOMPVAP;

OUT[QMOLE]=IN[QMOLE]*beta;
SEPGAS[QMOLE]=IN[QMOLE]*(1-beta);

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.7.13.6.12 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.7.13.6.13 Mathematical Functions

A number of maths functions are available in the script. These include:

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

GAP User Guide March, 2022


User Guide 573

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 zero’th 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 n’th order Bessel function of the first kind of x
Y0(x) Returns the zero’th 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 n’th order Bessel function of the second kind of x
LDEXP(x,n) Returns x*POW(2,n)

2.7.13.6.14 Control Structures


The control structures are the same as used in the C language. Examples of the basic structures
are shown below.

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;

1990-2022 Petroleum Experts Limited


574 GAP

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;

2.7.13.6.15 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

GAP User Guide March, 2022


User Guide 575

// 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;
}
Month = Month - 1;
}

NumDays = NumDays + Day;

1990-2022 Petroleum Experts Limited


576 GAP

2.7.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 271
Results Contains the following fields:
Screen Network Solver Results
Simulation Results
Prediction Results

2.7.14.1 Inflow Summary Screen


The inflow summary screen is shown below.

GAP User Guide March, 2022


User Guide 577

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 603

2.7.14.2 Input
Refer to IPR section 271 for further details.

1990-2022 Petroleum Experts Limited


578 GAP

2.7.15 Grouping
The grouping option allows a collection of equipment in the network to be assembled together.
This can be used for reporting purposes, scheduling or to impose constraints to a group of
elements in the network. There are two group equipment types (i) Group Equipment and (ii)
Group Control.

The user will be prompted to select the equipment type when adding a group item.

2.7.15.1 Group Equipment Input Data


The Group equipment type can be used to allow a collection of equipment in the network to
share the same constraint and schedule.

The 'Group' summary screen is divided into three sections:

Summary Allows navigation to the constraints and grouping input screens.

GAP User Guide March, 2022


User Guide 579

Screen
Input Allows values to be entered to constrain and schedule the group
Screen
Results Contains the following fields:
Screen Network Solver Results
Simulation 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-2022 Petroleum Experts Limited


580 GAP

2.7.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.

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.7.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 342 for a description
of the feature.

GAP User Guide March, 2022


User Guide 581

2.7.15.1.3 Grouping
The screen that is displayed when the grouping tab is clicked is shown below:

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:

1990-2022 Petroleum Experts Limited


582 GAP

GAP User Guide March, 2022


User Guide 583

2.7.15.2 Group Control Input Data


The Control Group equipment type can be used allow multiple equipment controls of the same
type to be handled by one single control value when using the RBNS or GAP Optimiser.

Summary Screen Options

Control Group Type Compressor Train – This allows multiple compressor trains with
different performance curves on the same shaft to be modelled. This
means that all compressor share the same compressor speed.

In order to create a group of nodes firstly add a group to the current system screen. To associate
a compressor with a control group the 'Add Link/Pipe' tool should be used.

Two compressors associated with 'CtrlGrp1' is shown below.

2.7.15.2.1 Members
Input | Members Options

This screen can be used to view and setup control group type and the selection of group
members from the equipment available in the network.

1990-2022 Petroleum Experts Limited


584 GAP

Control Group Type The control group equipment type selected in summary screen options
Member Selection Available members for the control group equipment type
Group Members The selected group members for the control group

GAP User Guide March, 2022


User Guide 585

2.7.15.2.2 Control
The control group will define the speed control for all connected compressors.

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

1990-2022 Petroleum Experts Limited


586 GAP

2.7.15.2.3 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 342 for a description
of the feature.

2.7.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 .
1200

Considering the GAP model below, a worksheet can be created to group all the wells flowing
from the manifold "WH1".

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

GAP User Guide March, 2022


User Guide 587

.
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.

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".

1990-2022 Petroleum Experts Limited


588 GAP

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.

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.

GAP User Guide March, 2022


User Guide 589

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.

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.

1990-2022 Petroleum Experts Limited


590 GAP

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.

GAP User Guide March, 2022


User Guide 591

2.7.17 User Defined Element

It is now possible to export Inline General elements as ‘User Defined Elements’ which can be
distributed within an organisation to model specific equipment.
To add a User Defined Element to the model, one must first be created as described below.
Creating a User Defined Element
To author a user defined inline element, create an inline element writing the script and defining
variables as normal.
To create a user defined element, a bitmap image and name must be assigned which will be
used to define the element in the GAP Interface. The user-defined inline element can then be
exported by clicking Save As User defined Inline Element File..., which will create a file with
the *.gapinl extension.

Please note that it will not be possible to save the user defined element if the script is saved as
an external file. As such, the Store in external file tick box should be unchecked, as shown
below.

1990-2022 Petroleum Experts Limited


592 GAP

Inputs

Name Specify display name of user defined element


Bitmap file A bitmap can be selected which will represent the user defined element in
imported as icon the GAP flowsheet
Hide script in User- Ticking this box will hide the script the in user defined element. The can be
Defined Element use to protect proprietary data, for instance.
Save as User- Clicking this button will save the general inline element as a user defined
defined Inline element with a file extension *.gapinl
Element File

User-Defined Inline Element Directory


It is good practice to create a file that contains all the user defined elements that are created.
GAP can then be setup to obtain any user defined elements in this location by clicking File |
Directories... and setting the User-Defined Inline Directory. This allows user defined element
to be shared within an organisation. When GAP is opened, it will look for any *.gapinl files in the
run directory and user-defined inline directory.

Adding a User-Defined Element

GAP User Guide March, 2022


User Guide 593

It is important to note that once a user-defined element has been created, GAP must be
restarted before the new user defined element can be added to the GAP network. When adding
a user defined element, the user will be able to select from the available user defined elements
in the directory, as shown below.

1990-2022 Petroleum Experts Limited


594 GAP

2.7.18 Heat Exchanger


Heat exchangers can be included in the surface network to capture heating or cooling of a
stream.

Inputs

Heat Exchanger A fixed heat duty is to be specified in the input tab


Type – Heater
Heat Exchanger There are three ways to model a cooler in GAP:
Type – Cooler
1. User Entered Duty
A fixed coolant duty can be entered in the input tab.
2.
A fixed temperature drop can be entered in the input tab
3. Calculate Outlet
This uses the NTU method to calculate the outlet temperature. This
requires additional inputs such as coolant flow type, which are described
below.
Enter Pressure If this tab is selected, a fixed pressure drop (independent of rate) can be
Drop specified across the heat exchanger in the input tab
Coolant flow type - This option can only be specified when modeling a cooler using the
Shell and Tube Calculate Outlet option. There are 3 coolant options that can be selected :

1. Counter current
2. Parallel Current Hot-min

GAP User Guide March, 2022


User Guide 595

3. Parallel Current Cold-min

NTU Method

For coolers the Number of Transfer Units (NTU) method can be used to calculate the rate of heat
transfer.
The NTU method works by finding the maximum possible heat transfer that can be hypothetically
achieved in a counter-flow heat exchanger of infinite length ( ). This proceeds by calculating
the heat capacity rates (i.e. mass flow rate multiplied by specific heat) for both the hot and cold
fluids, to find the smaller heat capacity rate ( . Qmax is then given by Cmin multiplied by the
temperature difference between the inlet temperature of the hot stream and the inlet temperature
of the cold stream:
q max Cmin (Th ,i Tc ,i )

In reality, heat exchangers are unable to transfer the theoretical maximum and we therefore
define a Heat Exchanger Effectiveness (E) which is the ratio between the actual heat transfer
and the maximum possible heat transfer rate :
q
E
q max

Effectiveness is dimensionless quantity between 0 and 1. If we know E for a particular heat


exchanger, and we know the inlet conditions of the two flow streams we can calculate the amount
of heat being transferred between the fluids by:
q EC min (Th , i Tc , i )

Heat Exchanger Heat Exchanger Effectiveness (E) is the ratio between the actual heat
Effectiveness transfer rate and the maximum heat transfer rate:

It is a dimensionless quantity between 0 and 1. This can be entered by the


User or calculated by GAP.
Coolant Mass Flow Flow rate of coolant
rate
Coolant Specific Heat capacity of coolant
heat capacity

1990-2022 Petroleum Experts Limited


596 GAP

Coolant Inlet Inlet temperature of coolant


Temperature

Calculate Effectiveness

If the Calculate Effectiveness tick box is selected, then GAP will calculate the heat exchanger
effectiveness based on the entered overall heat transfer coefficient and heat transfer area.

Overall heat Overall heat transfer coefficient


transfer coefficient
Produced fluid Total heat transfer area that the fluid sees inside the heat exchanger.
total surface area

GAP User Guide March, 2022


User Guide 597

2.7.19 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. The abandonment constraints are designed to permanently
shut-in the well (i.e. mask the well) for the rest of the prediction when an abandonment
constraint has been reached (and cannot be re-opened using the well ‘Schedule’). For
example, if a maximum water cut abandonment constraint is entered, then the well will
be shut-in during a prediction run if the produced water cut exceeds this value. When
rate abandonment constraints are applied (i.e. Qoil_min/Qgas_min/Qliquid_min) and the well
has been made controllable, the well will be shut-in once the rate falls below the
abandonment value, provided that there is also no dP across the wellhead choke
determined by the RBNS/non-linear optimiser.

If the objective is to shut-in the well once it drops below a certain rate, and have the possibility to
reopen the well to flow again in the future (e.g. if the potential well rate increases, for instance,
due to compression facilities coming online), then this is best achieved using Visual Workflows
in RESOLVE.

1990-2022 Petroleum Experts Limited


598 GAP

2.8 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: To be able 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.8.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 March, 2022


User Guide 599

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.8.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-2022 Petroleum Experts Limited


600 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 March, 2022


User Guide 601

of the specified IPR model so that it is equivalent to the IPR in PROSPER.

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 271 section.
2.8.1.2 VLP
Lift Curves are generated by the PROSPER well file. The procedure will be outlined in the
following sections 616 .

2.8.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.

Conversely, if there are not enough variables defined there can be large interpolation errors that

1990-2022 Petroleum Experts Limited


602 GAP

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 621 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 G A P 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 G A P well model, which can be done by clicking on "Inspect" in the well
VLP section (ref. VLP Inspection 314 section).

GAP User Guide March, 2022


User Guide 603

2.8.2 Batch Generation of IPR’s

2.8.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:

2. Click on the summary button in the bottom left hand corner of this window.

1990-2022 Petroleum Experts Limited


604 GAP

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 IPR’s 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.

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.

GAP User Guide March, 2022


User Guide 605

The result is that the IPR is imported into the well IPR section.

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.

1990-2022 Petroleum Experts Limited


606 GAP

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 well’s 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. Please note that when
using the 'Forcheimer Pseudo Pressure' IPR type, the PVT in the tank model is used to
determine the pseudo pressure (if the well is connected to a tank).

GAP User Guide March, 2022


User Guide 607

Note On PVT Method


By default, The IPRs will be generated using whichever PVT
method is defined in PROSPER (Black oil or EoS). However the
user can force GAP to select one method in particular.
Please be aware however that the PROSPER file must contain the
relevant information - i.e. if no composition has been entered into
PROSPER it is not possible to generate an IPR using the
compositional method.
If both a black oil and compositional model have been entered in
PROSPER then the user can select either method.
2.8.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

1990-2022 Petroleum Experts Limited


608 GAP

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:

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.

GAP User Guide March, 2022


User Guide 609

The process is as follows:


Associate the PROSPER file in the summary section of the well as below.

1990-2022 Petroleum Experts Limited


610 GAP

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).

GAP User Guide March, 2022


User Guide 611

1990-2022 Petroleum Experts Limited


612 GAP

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".

GAP User Guide March, 2022


User Guide 613

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.

1990-2022 Petroleum Experts Limited


614 GAP

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.

GAP User Guide March, 2022


User Guide 615

1990-2022 Petroleum Experts Limited


616 GAP

2.8.3 Batch Generation of Well and Pipe VLPs

2.8.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 598 " 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 VLPs:

1. Click Generate Generate Well VLPs with PROSPER.

2. Select the wells for which VLPs should be generated.

3. Select whether the VLPs are intended for use in GAP or a simulator

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.

GAP User Guide March, 2022


User Guide 617

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.

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.

4. Select the calculation mode

With the Parallelise VLP calculation option is ticked, the calculation of the VLPs can be
parallelised across multiple processors. Please note, parallelisation follows the settings defined
within PROSPER via File | Preferences | Limits.

5. Select the PVT model

The 'PVT Method' drop down box enables the user to select which PVT dataset is to be used to

1990-2022 Petroleum Experts Limited


618 GAP

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.

6. Enter the sensitivity data

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

The populate buttons can be used to automatically generate a range of variables based on a
spacing.

GAP User Guide March, 2022


User Guide 619

Enter rates (up to 50) 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
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 601 , can give incorrect results or cause problems for the
solver.

A recommended range of sensitivity variables for different wells can be found here 621 .

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).

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).

7. Calculate the VLPs by pressing Generate

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

1990-2022 Petroleum Experts Limited


620 GAP

section of the corresponding well element in GAP.

The progress of the calculations can be monitored with the progress bar (shown below).

With the calculation parallelised, PROSPER first configures the different threads before
calculating the VLPs for the specified sensitivities.

Once the generation is successfully completed, a screen will be prompted to notify the user.

8. Before using the generated VLPs for network calculations, these must first be quality checked
by the user to ensure they are valid. 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 (i.e.
are the curves smooth).

GAP User Guide March, 2022


User Guide 621

Also see Values to use for VLP Generation 621

2.8.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
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 601 , 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

1990-2022 Petroleum Experts Limited


622 GAP

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 Solution Spacing should be entered for one
GOR of the values to avoid
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
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 since the first dependent on fluid

GAP User Guide March, 2022


User Guide 623

value cannot properties.


be 0, we can
enter 0.1 and
manually
replace this to
0 afterwards.

For Retrograde Condensate Wells

From To Number Distribution Comments


of of Points
Points
Gas Rate From low value (say AOF (Absolute 20 Geometric
0.1 MMscf/d) Open Hole Flow Spacing
of well)
Top Node From separator Reservoir 10 Linear The Top Node
Pressure pressure value (for Pressure Spacing Pressure
example, 100 psig) corresponds to the
Well Head
Pressure.
WGR 0 Refer to 10 Linear The value for
Comments on Spacing Maximum WGR is
the Right dependent upon the
system. Generally
a value of 100 stb/
MMscf is
reasonable.
GOR A value less than Refer to 10 Geometric The value for
GOR of the under Comments on Spacing Maximum GOR is
saturated the Right dependent upon the
condensate at fluid properties.
reservoir
temperature

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.

1990-2022 Petroleum Experts Limited


624 GAP

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 Dependent on the system in
Well question. Should cover the pump
control (min/max) power fluid rates.
HSP Well Pump Rotational The pump rotation speeds should
Speed correspond to the selected pump
unit.
CBM Well Liquid Level The maximum depth of the liquid
level cannot exceed the depth of the
pump

Due to memory limitations of 32 bit applications, care must be taken to ensure that the
number of VLPs generated is less than 32,000. This is particularly important when
generating VLPs for gas lifted wells that include the casing pressure variable. This does
not apply when using 64 bit applications.

For GAS Injection Wells

From To Number of Distribution Comments


Points of Points
Gas Rate From low Refer 20 Geometric The maximum available
value (say Comments Spacing rate is dependant on the
0.1 MMscf/d) on Right equipment present and
the field itself.
Top Node 0 psig Injection 10 Linear Spacing
Pressure manifold
pressure
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

GAP User Guide March, 2022


User Guide 625

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 Refer 20 Geometric The maximum available
value (say Comments on Spacing rate is dependant on the
100 stb/d) Right equipment present and
the field itself
Top Node 0psig Injection 10 Linear Spacing The maximum pressure
Pressure manifold should be the maximum
pressure injection manifold
pressure
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.
2.8.3.3 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)

1990-2022 Petroleum Experts Limited


626 GAP

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 182 ) 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".

GAP User Guide March, 2022


User Guide 627

Generate the VLPs directly in PROSPER as showed in the section above 628 . In PROSPER
the 'Rate Type' selected in the VLP calculation section should be selected as 'Hydrocarbon
Mass Flow Rate' :

1990-2022 Petroleum Experts Limited


628 GAP

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.8.3.4 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.

GAP User Guide March, 2022


User Guide 629

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.

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.

1990-2022 Petroleum Experts Limited


630 GAP

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 'Cases' 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 VLP’s click "Calculate".

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'.

GAP User Guide March, 2022


User Guide 631

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.

2.8.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

1990-2022 Petroleum Experts Limited


632 GAP

Pipe VLPs from the GAP menu bar.

If no pipes 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 March, 2022


User Guide 633

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


634 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 March, 2022


User Guide 635

2.8.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-2022 Petroleum Experts Limited


636 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 March, 2022


User Guide 637

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


638 GAP

As mentioned before, the WC, GOR 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 March, 2022


User Guide 639

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


640 GAP

2.9 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

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.

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.

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

GAP User Guide March, 2022


User Guide 641

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 well’s 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-2022 Petroleum Experts Limited


642 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:

The wells to select can be chosen from the well list that is displayed once the user selects
continue.

GAP User Guide March, 2022


User Guide 643

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.

Click the "Calculate" button and GAP will use the intersection of the VLP and IPR curves as
defined in the well model 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

1990-2022 Petroleum Experts Limited


644 GAP

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.

Note regarding the IPR dP shift:


For single layer wells, in the Model Validation dialog:
If "Use IPR dP shift" is deselected the IPR calculations will use a dP shift of 0 psi.
If "Use IPR dP shift" is selected, it will use the value entered in the "IPR Offset dP" column.

For multi-layer wells:


If "Use IPR dP shift" is deselected, the IPR calculation will use a shift of 0 psi for all layers.
If "Use IPR dP shift" is selected, the "IPR Offset dP" column will remain disabled and instead
the IPR calculations will use the "IPR dP shift" from the IPR input screen of each layer.

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.

Quality Checking 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

GAP User Guide March, 2022


User Guide 645

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 well’s 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.

2.9.1 Note on Outflow Only MultiLayer Well

When performing model validation on outflow only multilayer wells, GAP will
disable all items in the network and add a separator at the wellhead with
the specified measured manifold pressure. A solve network calculation is
then performed to determine the smart well production rate based on the
setup of the well model (VLP data, well control data & IPR layer data).

If the user wishes to perform model validation with specific layers ignored
in the multilayer well, then these layers should be masked (not disabled)
in the GAP network.

1990-2022 Petroleum Experts Limited


646 GAP

2.10 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.10.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 20 . 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.10.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.10.3 Constraints and Equipment Control Screen


2.10.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.

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)

GAP User Guide March, 2022


User Guide 647

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)
For SRP Wells (Pump speed / dP at well head)
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.10.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
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.

1990-2022 Petroleum Experts Limited


648 GAP

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 fixed
Mode value
Measured Relates to the model validation 640 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.10.3.3 Equipment Control Groups


Within GAP, Control Groups can be defined to allow multiple equipment controls of the same
type to be handled by one single control value when using the RBNS or GAP Optimiser. To setup
control groups, the Control Group Table can be opened via Edit | Edit Control Group Table...

GAP User Guide March, 2022


User Guide 649

This screen allows the user to define the control groups based upon the control type. To setup a
control group, a given piece of equipment (the Item) can be chosen to be controlled by another
piece of equipment (the Evaluated Control) provided the control type is the same.

The inputs in this screen are described as follows:


Type Allows the user to choose which equipment type to apply group controls to,
e.g. wells.

Sub Type Specify the Equipment sub type. For example, distinguishing between well
types (Oil Producer etc.).

Control Specify the method of applying control e.g. Pressure Drop, Gas Injection
Type Rate etc.

Item The piece of equipment to be managed.

Evaluated Control This field defines the equipment used to control the Item. By default, the
Item will have an Evaluated Control of itself and is not part of a Group
Control.

Multiplier Used to scale a control value for a controlled element based upon the
value which is found for the element that is controlling the group.

Reset Current Resets the Evaluated Controls to the default (removing Control Groups).
Items
Update Current Applies any changes made within the Control Group Table.
Items
Enable Group Allows the user to enable or disable Group Controls in the current model.
Control

1990-2022 Petroleum Experts Limited


650 GAP

N.B. To apply changes made in this window, Update Current Items must
selected before moving on.

2.10.3.4 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.

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).

GAP User Guide March, 2022


User Guide 651

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.

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 rate This 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

1990-2022 Petroleum Experts Limited


652 GAP

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.

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.

GAP User Guide March, 2022


User Guide 653

2.10.4 Solving the Network


There are four different options for solving the Network:

No optimisation
Rule Based
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.

1990-2022 Petroleum Experts Limited


654 GAP

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.

GAP User Guide March, 2022


User Guide 655

2.10.5 Solver Modes


This section describes the different calculation modes that can be selected when solving the
network:

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.10.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

For artificially lifted wells, the solver reads and applies the corresponding artificial lift

1990-2022 Petroleum Experts Limited


656 GAP

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.10.5.2 Rule Based Network Solver
In previous versions of the tools, the user had two options when solving the network;

1. No optimisation – faster but does not consider the optimum solution or any constraints in
the system.

2. With optimisation – Uses the powerful optimisation capabilities of GAP to optimise


production and manage constraints. Due to the more complex nature of the problem,
solving the network with optimisation takes more time.

The Rule Based Network Solver (RBNS) released in IPM 9 combines advantages of both above
methods. The RBNS;

Uses simple rules to ensure that constraints are honoured.

Takes less time to solve than a full optimisation.

Please note that the Rule Based Network Solver is NOT an optimiser and as such may calculate
lower recoveries than solving the network with optimisation.

2.10.5.2.1 Purpose
The purpose of the RBNS is to control a production system, ensuring that constraints are
satisfied. It does so by following a set of simple rules which govern how the system is
controlled.

In contrast; the GAP optimiser has two purposes; to both ensure that any constraints are
satisfied whilst simultaneously optimising an objective function (e.g. oil rate).

The rule based network solver is therefore NOT an optimiser but is a method of
performing predictions whilst honouring constraints.

The RBNS uses the same controls as the optimiser (well chokes, ESP frequency, in-line chokes
etc.) to control the system. The rules used follow a clear logic, similar to what an engineer would
do if tasked with manually adjusting the controls to meet constraints.

GAP User Guide March, 2022


User Guide 657

2.10.5.2.2 Controls And Constraints


The principle of the RBNS is to adjust controls to satisfy constraints in the system. In order to do
this, two things are required;

1. The relationships between each control and the constraints (which controls
affect which constraints).

2. The control depths (are there controls further upstream).

For each constraint; GAP will generate a list of available controls related to this constraint known
as the control set. This list is based on the upstream/downstream hydraulic conductivity between
control and constraint. If the fluid can travel through a path directly upstream or downstream
between the constraint and control then this control will be added to the list of available controls.
Paths which require the fluid to travel both upstream and downstream between constraint and
control are not considered.
ALL controls are assumed to be related to any system constraints.

The control depth of any control is defined as the maximum number of controls upstream of that
piece of equipment on any one path. This is not the same as the total number of controls
upstream. Consider the following example; the control depth of the pump is 1 – not 2. The control
depth of the wellhead chokes is zero;

2.10.5.2.3 Rules
When solving the network, the RBNS follows a set of rules which are used to determine which
controls to adjust and in what order. As explained in the previous section, each constraint has a

1990-2022 Petroleum Experts Limited


658 GAP

list of related controls (control set) which will affect the constrained property.

The controls are altered in a logical fashion which would be applied in reality to the field. For
example, in a gas lifted well, the lift gas rate is reduced before choking back the well. The
controls are adjusted based on the following criteria;

Powered vs. unpowered

Control depth

Control availability

To understand how the logic is applied, consider the case where the current system state is
capable of delivering a larger rate than the constraint in the separator – i.e. the rate must be
reduced.

The powered versus unpowered rule will ensure that any powered controls are reduced first.
Powered controls are any type of control which costs money and adds energy to the system, for
example; pumps, compressors or gas lift. Unpowered controls remove useful energy from the
system, for example; chokes.

The control depth will then select the furthest upstream controls to be selected first. For example
a wellhead choke would be reduced before an in-line choke further downstream.

Control availability will select the controls which are not already at their minimum value and thus
cannot be adjusted any further.

The available controls at the selected control depth are known as the active control set. The
controls in the active control set will be adjusted uniformly. For example, if the active control set
consists of five wells with wellhead chokes; all wells will be choked uniformly, irrespective of
watercut.

The logic for both reducing and increasing the rate is shown below as an example;

GAP User Guide March, 2022


User Guide 659

2.10.5.2.4 Control Step Types


The above sections describe how the related controls are identified for each constraint and the
rules used to control the system. The RBNS also requires a method of determining by how much
to adjust the controls. There are three different control step types;

1. Fixed Step

2. Calculated Step

3. Bisection Step – towards known control strategy

For each of the step types, all controls for a given constraint are adjusted by the same value. The
only difference is how this value is calculated.

The fixed step is the most simple and adjusts the active control set by a fixed amount.

The calculated step evaluates the current conditions and constraints and attempts to calculate
how much to adjust the controls to meet the constraint. As an example, consider the below

1990-2022 Petroleum Experts Limited


660 GAP

scenario; there are two wells each producing 15,000 STB/day of liquid. The constraint at the
separator is 20,000 STB/day and thus these wells (the active control set) must be choked back.

The wells need to be controlled in such a way that they only produce two thirds of their current
amount (10,000 STB/day each) thus the rate reduction value is calculated as 0.33. The pressure
loss required through each wellhead choke is then calculated based on this value.
Due to back pressure effects this calculation will be inexact; however it is a valid approximation
which will converge with a series of iterations.

The bisection step type requires a known, valid control strategy (a valid control strategy is one in
which none of the constraints are violated). If any constraints are violated in the current control
strategy then the related controls require adjustment. The amount of adjustment required for the
active control set is calculated as a fixed fraction between the current control value and the
control value in the valid control strategy.

2.10.5.2.5 Search Modes


The control step types above explain the different methods used to adjust the controls in the
system. Which methods are used and in which order is dictated by the search mode selected.
There are three search modes which can be selected for the RBNS;

1. Downward

2. Incremental

3. Refined

GAP User Guide March, 2022


User Guide 661

The downward search is the simplest search mode. It begins with all of the controls fully open
and takes fixed steps downwards (reducing the rate) until a valid control strategy is found. The
downward search mode is a fast and robust method of finding an initial valid control strategy.
Calculated steps are not used for this method as they can suffer from robustness issues (where
the calculated reduction undershoots each time leading to smaller and smaller reductions being
calculated and stalling the solver). Due to the speed and robustness of this method it is used to
calculate the initial control strategy for use in the incremental search.

The incremental search option requires a valid control strategy as a starting point. Starting at the
valid control strategy this search mode first takes a calculated step upwards (increasing the
rate). If this calculates a valid production strategy then this becomes the new best control
strategy and will be the starting point of the next step. If the calculated step does not calculate a
new valid strategy then bisection steps are taken backwards to the starting point. If a bisection
step calculates a new valid strategy then this becomes the new best control strategy and the
process will continue. If the bisection steps do not calculate a new valid strategy then the
incremental search is said to have stalled. The valid strategy at the start of the search is then
accepted. This search mode provides a method of calculating the highest possible rate which
follows the rules of the solver whilst honouring all constraints. This is not the same as the
optimum production which can only be calculated using the optimiser in GAP.

The refined search is used ONLY if the incremental search has stalled. The refined search
performs calculated steps upwards until all of the constraints are violated (or all controls are fully
open). At this point a downward search is performed using small fixed steps until a valid control
strategy is found. An incremental search is then performed using smaller bisection steps. The
refined search has been designed for use in systems where the incremental search has had
difficulty solving.

2.10.5.2.6 Other Notes Regarding the Rule Based Network Solver


2.10.5.2.6.1 Ignored Constraints
Some constraints are not applicable when using the rule based network solver. If the below
constraints are entered they will be ignored by the RBNS;

Percent CO2

Percent H2S

Percent N2

Oil Gravity

Gross Heating Value

Specific Gross Heating Value

1990-2022 Petroleum Experts Limited


662 GAP

Minimum Pressure

2.10.5.2.6.2 Artificial Lift


Gas lift controls are unique to other controls in the network in that they are not independent of
each other; there is a fixed, maximum amount of gas lift gas available shared by each well.
Another unique property of the gas lift controls is that increasing the allocated gas can either
increase OR decrease the produced liquid rate depending on the gas lift performance curve
(compare this with a choke for example, increasing the choke size will increase the rate from the
well).

There are two methods of handling gas lift controls in the RBNS;

1. Uniform Allocation

2. Equal Return Allocation

Uniform allocation considers gas lift controls like any other and as the name suggests allocates
the lift gas uniformly to each well.

Equal return allocation will allocate the gas lift in such a way that the marginal gain in oil rate per
unit of gas lift is equal for all the wells. It does this by generating a gas lift performance curve for
each well (Qoil vs. Qgas). The derivative of this curve is taken to give the marginal gain in oil
production per unit of gas lift (dQoil/dQgas). The amount of gas to be injected in each well is then
found by setting the derivative term equal for each well and finding the corresponding lift gas
rate.

Please note; GAP will use the uniform allocation method if any of the gas lifted wells uses one of
the outflow only models.

NOTE: RBNS requires both a MINIMUM and MAXIMUM artificial lift control value to be
specified in the well CONTROL section.

For example, for a gas lifted well, the Minimum Gas Injection Rate = 0, and the Maximum Gas
Injection Rate = [maximum value]. For an ESP lifted well with variable speed drive, the
Minimum Frequency = [lowest frequency VLP value], and the Maximum Frequency = [highest
frequency VLP value], etc.

2.10.5.2.6.3 Control Weightings


Wells and inflows in GAP can be given a user defined weighting. This value can be specified in
the constraints tab and is applied when using the optimiser or the RBNS. When using the RBNS
this value is used a multiplier on how much the well controls are adjusted at each step.
For example; consider a well which has a weighting of 2.

GAP User Guide March, 2022


User Guide 663

At a particular timestep the rate reduction value of the well has a value of 0.8.

In order to obey the constraints; the rate produced by the system has to be reduced.

The RBNS determines that the rate reduction value for the wells should be changed to 0.6
(i.e. a difference of 0.2).

The weighting of this well will adjust how the control is applied. In this case the rate reduction
value calculated would be 0.8 – (0.2/2) = 0.7.

Alternatively; if the rate reduction value was to be increased from 0.8 to 0.9 for all wells then
the weighting in this case would cause the value to be 0.8 + (0.1*2) = 1 (fully open).

Weightings are used to reduce the downward adjustments and increase the upwards
adjustments at the well or inflow.

Note on Control Weightings

Adjusting the control weightings will lead to some wells/inflows being preferentially produced.
Weightings substantially different from unity (i.e. 0.1 or 10) can cause the RBNS to fail. Setting all
control weightings away from unity can also cause the performance to slow considerably thus the
weightings should be used with care.

2.10.5.2.6.4 Controls Affecting More Than One Constraint


As more than one constraint can exist in the network it is possible that any control can affect
more than one constraint. If a control is present in more than one control set then more than one
control value may be calculated. In this case the minimum of the suggested values will be chosen
to ensure that both constraints are honoured.

2.10.5.2.6.5 Scaling Factor


The rule based solver determines the proportional weighting that each control in the system is
given based on the relative phase fractions that are flowing through that control.
Giving the oil scaling factor a larger number will increase the weighting with respect to the
relative amount of oil that is produced compared to gas. Increasing the water penalty factor will
decrease the weighting with respect to the amount of water that is being produced.
Care should be taken with these factors, values of 10 – 100 can be used (perhaps larger in very
small systems, with 2-3 controls) however larger parameters can lead to invalid weights.
Weighting factors are normalised through the whole system so large factors can lead to very
small minimum weights on some controls – this could lead to potentially killing wells.

1990-2022 Petroleum Experts Limited


664 GAP

2.10.5.3 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. When the
potential calculation is performed, GAP solves the system considering only the constraints which
have the potential option set to ‘YES’. If the potential option is set to ‘NO’, then the system is
solved as though no constraint value has been entered. As such, the potential calculation in GAP
is essentially solving the model with some or all the constraints removed from the system, and
therefore 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.

GAP User Guide March, 2022


User Guide 665

2.10.5.4 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.

1990-2022 Petroleum Experts Limited


666 GAP

2.10.5.5 Selecting the Appropriate Solver Mode


GAP is a useful tool for performing many tasks from allocation to optimisation studies. However,
when performing these tasks, it is important to ensure the appropriate solver mode is being
used. The recommended solver modes for various tasks are outlined in the following table.

No RBNS Optimise with Workflows/


Optimisation All Constraints logic
SOLVE NETWORK
Design
Allocation
Surveillance
Optimisation
Flow Assurance Studies
PREDICTIONS
Design
Opimisation
Flow assurance Studies

In particular, when running predictions, it is recommended to use RBNS rather than the full
optimiser (Optimise with All Constraints). This is because it is often meaningless to perform a full
mathematical optimisation over long forecasts and will significantly increase computation time.

Workflows and additional logic can be implemented using RESOLVE.


2.10.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.

GAP User Guide March, 2022


User Guide 667

Selecting the “Settings” button gives access to the underlying solver and optimiser settings in
GAP.

1990-2022 Petroleum Experts Limited


668 GAP

G A P 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 March, 2022


User Guide 669

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.

1990-2022 Petroleum Experts Limited


670 GAP

The Solver 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

GAP User Guide March, 2022


User Guide 671

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
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 Crossflow This setting can be set to 0 or 1. If it set to 1, then cross-flow in an
Control (0:Off, 1:On) inflow element is not allowed (cross-flow is prevented). If instead
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
program will run the system without changing controls, therefore in

1990-2022 Petroleum Experts Limited


672 GAP

optimisation no optimisation mode the constraints will not be accounted for.


(0:Off, 1:On) 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
Solver - Report This setting specifies the tolerance applied to each constraint.
Constraint Violated By The constraint will only be considered violated if the calculated
More than (percent) results are outwith this tolerance.

GAP User Guide March, 2022


User Guide 673

The Rule Based Solver Settings


.

Below are some descriptions of the available settings;

This is the maximum number of iterations the solver is allowed to


perform in order to find a solution. If solution has not been
RBNS - Max iterations achieved within this number of iterations, then the solver will
simply stop. If convergence has not been achieved, this may
indicate a problem in the model setup which prevents the solver
from finding a solution.
RBNS - Liquid Rate Used to determine whether calculated liquid rates are within
Constraint Tolerance tolerance (i.e. a valid control strategy has been found).
RBNS - Gas Rate As with liquid constraint tolerance but for gas rates.
Constraint Tolerance
RBNS - Pressure As with liquid constraint tolerance but for pressures.
Constraint Tolerance
RBNS - Other Constraint As with liquid constraint tolerance but for other constraints. Note
Tolerance that the above tolerances are absolute values (i.e. have units)
whilst the tolerance value entered here is a relative value.
This specifies the minimum control adjustment the rule based
RBNS - Stall Tolerance solver must take. If the control adjustment is less than this value, a
stall is detected and the solver exits. This prevents increasingly
smaller steps being taken without improving the solution.
RBNS - Max Control This specifies the largest change that the RBNS can make to a
Change Per Iteration control variable during a single iteration of the search.This also
determines the fixed step size of the downward search.
RBNS - Adjustment Rule Defines which search mode is used by the Solver. Please see
Mode Search Modes 660 for further information
RBNS - gas lift allocation Defines how the gas lift allocation is calculated. Please see Gas
mode Lift Allocation 662 for further information.
RBNS - Parallelisation: | This option allows the user to set the maximum number of cores
from the CPU (processor) that are used during a network

1990-2022 Petroleum Experts Limited


674 GAP

calculation by GAP.

The default is ‘0’ which means use all available. The


Maximum number of recommendation is that for all user related purposes that this be
processors left as the default. In the case of clustering calculations (e.g. using
the scenario manager in RESOLVE or in the DOF RTC cluster) it
may be beneficial to set this to a lower value to ensure that
resources are consumed efficiently.
RBNS - oil weight The rule based solver determines the proportional weighting that
scaling factor each control in the system is given based on the relative phase
fractions that are flowing through that control. Please see Scaling
Factor 663 for further information.
RBNS - water penalty
scaling factor
This option allows the user to specify the fraction of unstable wells
RBNS - fraction of to be closed after each evaluation of the network. With the
unstable items to close unstable wells closed the field deliverability is reduced, allowing
after an evaluation wellhead chokes to be relaxed and thus the remaining wells to
flow more stably.

GAP User Guide March, 2022


User Guide 675

The Optimiser Settings

Below are some descriptions of the available settings;

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
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 3
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

1990-2022 Petroleum Experts Limited


676 GAP

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.
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

GAP User Guide March, 2022


User Guide 677

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.
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 between
movement of optimiser timesteps. The default value is 1.
variables This setting is only valid in forecasting mode.

1990-2022 Petroleum Experts Limited


678 GAP

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

GAP User Guide March, 2022


User Guide 679

2.10.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):

Oil Production Results


(No optimisation)

1990-2022 Petroleum Experts Limited


680 GAP

Amount of Gas Lift


Allocated (Optimised)

Oil Production Results


(Optimised)

Refer to the chapter on Reporting 756 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 March, 2022


User Guide 681

2.10.8 Parallelisation
The solver calculations can be parallelised (selecting the option shown below) to speed up Solve
Networks/Predictions. This option is useful for large models that have long run times.
In order to solve a GAP network it is necessary to create a Jacobian of the system, this
represents the derivatives of every item in the network with respect to every other item, in both
rate and pressure.

The parallelisation is used to generate the Jacobian matrix required for the network calculation.
Given the amount of time taken in the total calculation to generate the Jacobian, any saving in
time that can be made will have direct benefits to the overall calculation.

Using the parallelisation option in GAP we have seen reductions in calculation times of 2x to 4x.
Of course, this is model and model set-up specific, and an increase in calculation time when
parallelising may actually be observed (for example due to the overhead required to parallelise
the calculations).

In almost all cases we have found that computational power and software brute-force can only
achieve small gains in calculation speed when compared with a rigorous problem formulation
based approach.

1990-2022 Petroleum Experts Limited


682 GAP

2.11 Transient
GAP maintains the ability to perform network calculations or run predictions based on steady-
state calculations which use multiphase flow correlations/models to determine the pressure
change in the pipeline network, as it has always done. These multiphase flow correlations/
models capture the total pressure drop based on the summation of three components; gravity,
friction and acceleration pressure drops. Further information on steady-state multiphase flow can
be found in Appendix B of the PROSPER User Guide.

As of IPM 11, GAP has the capability to model transient flow throughout a network using an
implicit formulation, which balances mass, momentum and energy. In a steady-state network
calculation GAP will make the assumption that the flow into a pipe element is equal to the flow
out. In GAP Transient, in addition to the pressure and mass balances across nodes, the
transient behaviour in a pipe must also consider mass accumulation and inertia change through
time i.e. in a transient system, the volume into a pipe may not equal the volume out.

The general transient model in GAP Transient allows engineers to take advantage of the GAP
network modelling capabilities, and easily switch between transient and steady-state networks in
order to investigate the transient behaviour induced by changes to a system and its impact on
the integrated model. The chosen multiphase flow correlation/model is used to initialise the
transient simulation (e.g. steady-state hold-up calculation) before the implicit formulation of the
transient equations are solved. Creating consistency between the transient and steady-state
calculations allows model/system validation to be more rigorous. The capability to model
transient behaviour will allow for greater depth in flow assurance and optimisation studies as well
as the ability to capture production/pressure surges and instabilities. Investigation into mitigation
strategies for these undesirable transient behaviours is also possible within the context of an
integrated model.

At present transient simulations consider two phases, with on-going research and development
into three phase modelling. In the case of segregation of fluid in a pipe the separation of the
phases is not fully resolved at this time and is the subject of on-going research. PVT propagation
in a two phase model have the current limitation that counter-current flow has also been disabled
at present.
2.11.1 Transient Simulation Options
GAP Transient simulation options allows the user to run transient simulations of the network
(either no optimisation or RBNS) over user-defined time steps.

In order to carry out transient simulations a GAP Transient license will be required. The transient
simulation options must be enabled in the 'Options' screen. To do this, select Options | Method
from the main drop down menu.

GAP User Guide March, 2022


User Guide 683

The GAP network can be setup to be completely transient or a combination of steady-state and
transient - this allows flexible detailed analysis of large and small systems.

Transient Pipeline Element:

A pipeline element can be toggled to perform transient calculations by checking the transient
option - as shown below:

1990-2022 Petroleum Experts Limited


684 GAP

This will make the pipeline element colours change as shown below:

Transient Well Element:

A well model can be toggled to perform transient calculations by checking the transient well
option - as shown below:

Once transient equipment have been defined in the GAP network, transient simulation

GAP User Guide March, 2022


User Guide 685

calculations can be performed.

2.11.1.1 Simulation Setup...


This screen defines the setup of the transient simulation run.

Allow Dynamic This will allow GAP Transient to dynamically change the transient
Timestepping simulation timestep length based on the relative change in the system. If
the system is highly transient then the user timestep will be reduced to a
fraction of the min. step size. If the system has hit steady-state then the
user timestep will increase based on the step growth factor (e.g. 1.5) to
the max. step size.
Redo Non- If a transient simulation timestep does not converge for mass, pressure
Converged Time and momentum balance then subsequent timesteps may give non-
Steps consistent results. This option will force GAP Transient to reproduce
any non-converged timesteps again.

2.11.1.2 Defined Simulation Schedule...


The simulation schedule is a summary screen that allow allows the user to input or edit
schedules for any piece of equipment from one screen. The simulation schedule is independent
of the prediction schedule.

Click Transient | Defined Simulation Schedule and the following screen will appear.

1990-2022 Petroleum Experts Limited


686 GAP

The summary screen is divided into three sections. On the right, the user can select which
equipment type in the system should be shown in the lower portion of the screen. The upper list
will display the current set of schedules for the selected equipment.

For transient simulations, any scheduled event (e.g. speed change, choke size change,
downstream pressure change) that cause a sudden change can make the system highly
transient and cause surge flow. In reality, changes are gradually made over a short time of period
to mitigate transience in the system.

The 'Change OpenServer variable linearly' event type can be used for transient simulations. This
option will change a OpenServer variable linearly between two event times. For example, a
choke diameter change from 0.5 to 2 inches will occur from the 2 minute to the 17 minute event
time - as shown below.

GAP User Guide March, 2022


User Guide 687

For the above choke diameter change, the results can be observed from the simulation results
section of the inline choke element - as shown below.

2.11.1.3 Run Simulation...


This window defines the transient simulation start and end date, the transient simulation step
size and sampling on transient results.

1990-2022 Petroleum Experts Limited


688 GAP

Start/ This defined the start and end date of the transient simulation. The date/time format
End can be changed by right-clicking on the input field.
Date
Step This defines the transient simulation step size. If the step size is too small then GAP
Size will automatically apply the minimum step size required to capture the fluid
movement through a transient pipeline segment i.e. if the step size is too small the
fluid entering the transient pipeline segment will not have sufficient time (due to its
velocity) to exit the transient pipeline segment.
Sample Transient results can be recorded for all transient steps or sampled to record data
Results every n step size or minimum time intervals.

2.11.1.3.1 Separator / Injection Manifold Pressure


This window is specifics the separator pressure in the network model. This is the boundary
condition against which the transient simulation is solved.

GAP User Guide March, 2022


User Guide 689

2.11.1.3.2 Transient Simulation


This window defines the mode the transient simulation calculation is run and provides a log of
the transient simulation calculation.

Whilst the calculation is running, the 'Plot Tanks' and 'Plot Nodes' buttons can be selected to
visualise the current run results. Once the run has completed, the buttons can no longer be used
and results must be visualised via Transient | Plot Nodes Simulation Results...

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.

1990-2022 Petroleum Experts Limited


690 GAP

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.11.1.4 Save Simulation Results As...


This feature is accessed from the 'Transient' main drop down menu. It allows the user to save the
transient simulation results every time a simulation is run. This allows the user to save multiple
scenarios and compare them on the same plot (Node Simulation Results) and access the
detailed transient results.

The 'Add' button should be used to create a new stream, which can then be renamed. Existing
streams can be replaced and removed by first selecting the run description.

Node simulation results are saved in the same manner as prediction results. These saved
simulations can all be viewed under the 'Simulation' tab of the results screen of a equipment or
by going to Transient | Plot Nodes Simulation Results.
2.11.1.5 Purge All Simulation Results
This option will purge all saved transient simulation results.

GAP User Guide March, 2022


User Guide 691

2.11.1.6 Plot Nodes Simulations Results...


The simulation results can be easily visualised, plotted and analysed using the following option.

This feature provides the results of the individual notes that make up the system. The plotting
functionality is the same as 'Plot Nodes Prediction Results'. Further information can be found
here 751 .
2.11.2 Transient Results
Once a transient simulation calculation has been run, transient simulation results will be available
in two ways (1) Node simulation results and (2) Detailed Transient Results.

Node simulation results follow the same result visualisation format as node prediction results.
These results can be accessed under the 'Simulation' tab of the results screen of a equipment or
by going to Transient | Plot Nodes Simulation Results.

This section describes the detailed transient results in further detail.

Detailed transient results for transient equipment (pipe and transient wells) can be found by right-
clicking on a transient equipment and selecting 'Show Transient Results...' as shown below.

1990-2022 Petroleum Experts Limited


692 GAP

The detailed transient simulation results window is similar to flow assurance results. The window
is split into six main sections as shown and explained further below:

Detailed Transient From here; the user can setup 2D and 3D plots, filter results in the
Results Options transient table results (5), setup preferences and export data.
(1)
Timestep Control Timestep control will define the results displayed in the Transient Table
(2) Results (5) and Transient Plot Results(6). The timestep control panel

GAP User Guide March, 2022


User Guide 693

can be used to cycle through or play the transient simulation. The 'Go
To' field can be used to jump to transient results on a specific timestep.
Variable Control This section defines the plot type and variables displayed in Transient
(3) Plot Results (6).

Plot Type Plot - Variable vs. Time: this will display the selected
variables vs. time at a specific depth control (2)
Plot - Variable vs. Depth: this will display the selected
variable vs. depth at a specific timestep control (4)
Variable 1/ The variables to be displayed in Transient Plot
Variable 2 Results (6). The selectable variables will honour the
variable filter setup.
Global Min/ If active, the minimum and maximum value of the
Max Scale variable during the transient simulation will be used
as the scale for the Transient Plot Result.
Plot Multiple If active, this will plot multiple transient results based
on the plot type method selected.
Show Results If active, this will display the Transient Table Results
Grid (5) section.
Depth Control (4) When the plot type has been set to 'Plot - Variable vs. Time', the depth
control section allows control of the specific depth at which to display
the selected variables.
Transient Table This is a table result of the transient simulation. The variables displayed
Results (5) will honour the variable filter setup. If the plot type has been set to 'Plot -
Variable vs. Time', then the user manually can select specific depths.
Transient Plot Transient plot results will be displayed based on the configuration of
Results (6) timestep (2), variable (3) and depth control (4). Plot options like Cross-
Hair, Peak to Peak and Period are also available by right-clicking on
the plot window.

2.11.2.1 Transient Plots


Further 2D Transient Plots can be created by going to 'Plots' under the detailed transient result
options, as shown below.

1990-2022 Petroleum Experts Limited


694 GAP

This will open a new window from which the user can select the cases and a variable to plot. The
selectable cases will be dependent on the plot type setup in the variable control section of the
main detailed transient simulations results window.

Once the desired cases and variable has been selected, select 'Plot' to open the 2D Transient
Plot window, as shown below. The 'Variables' button under the main drop down menu allows the
user to return to the previous screen. Plot options like Cross-Hair, Peak to Peak and Period are
also available by right-clicking on the plot window.

GAP User Guide March, 2022


User Guide 695

2.11.2.2 3D Views
3D Views allows users to visualise transient results in 3D plots or 3D equipment view.

3D Plot allows 3D visualisation of a selected variable against time and length - the user can
create 2D plots from 3D plots. 3D view allows users to view the pipeline/wellbore in 3D and

1990-2022 Petroleum Experts Limited


696 GAP

visualise selected variables against time.

Variable This defined the variable to be displayed in the selected 3D view.


Time This defined the start and end time period for the 3D view.

Length This defined the start and end length segment of the pipeline/wellbore
for the 3D view.

GAP User Guide March, 2022


User Guide 697

2.11.2.2.1 3D Plot
The user can rotate the 3D plot by moving the mouse in the desired direction while left-click and
holding the mouse button. Right-click and holding the mouse button on the 3D plot allows the
user to pan the length and selected variable axis.

Axes This will return the user to the 3D views setup screen.

Toggle This will switch the 3D plot to a 3D view. This can also be obtained by
double left-clicking on the 3D plot.
Plot Type The 3D plot can be changed into a contour plot.

Colour Scheme This will define the colour scheme used for the 3D and contour plot.

2D Transient Plot

When hovering the mouse over the 3D plot, the current variable, length and time selected will be
displayed on the top-left corner.

2D transient plots can be created from the 3D plot by holding T or L on the keyboard and left-
clicking the desired conditions. 2D transient plots with multiple results can be created by
continually holding the keyboard letter and
left-clicking on multiple conditions.

Holding T will select transient conditions based on time(s) and create a 2D transient plot for the
selected variables vs. length.

1990-2022 Petroleum Experts Limited


698 GAP

Holding L will select transient conditions based on length(s) and create a 2D transient plot for the
selected variable vs. time.
2.11.2.2.2 3D Pipe View
The user can rotate the 3D view by moving the mouse in the desired direction while left-click and
holding the mouse button. Zooming in and out of the 3D view can be achieved by using the
mouse scroll wheel or by right-click and holding the mouse button on the 3D view while moving
the mouse forward and backwards.

Hovering the moose over the 3D pipe/wellbore will display the current variable value and length
location. The current timestep is displayed in the buttom left corner of the 3D view window.

Axes This will return the user to the 3D views setup screen.
Toggle This will switch the 3D plot to a 3D view.

Playback Options From left to right, each button will perform the following action:

1. Step forward one timestep


2. Play forward the transient simulation
3. Go to the end of the transient simulation

GAP User Guide March, 2022


User Guide 699

4. Stop the current play forward


5. Go to the start of the transient simulation
6. Play backward the transient simulation
7. Step backward one timestep

Pipe Graphical From left to right, each button will perform the following action:
Options
1. Reset the 3D view to default
2. Increase pipe aspect ratio
3. Decrease pipe aspect ratio

Drop Down From left to right, each button will perform the following action:
Options
1. Quick selection of a specific timestep
2. Quick selection of 3D view colour scheme
3. Quick selection of variable min/max scale

2.11.2.3 Transient Simulation Filter


Transient simulation results can be filtered by variable, length and timestep by going to 'Filter'
under the detailed transient result options, as shown below.

Filtering data helps to simplify the review of results and allows tables and plots to load faster.
Once the desired data has been filtered, selecting the 'Filter' button will return the user to the
detailed transient simulation results window. The filter will allow to all subsequent transient result
viewing options.

1990-2022 Petroleum Experts Limited


700 GAP

Variable Filter The list of variables displayed in the grid results and selectable under
variable control in the main detailed transient results window.

The key variables option will automatically select the default variables
setup in transient simulation preferences.
Length Filter The length segments displayed in the grid results and transient plots.
This can be filtered in terms of length or length segment intervals.
Timstep Filter This defined the timesteps segments available under timestep control
and displayed in transient plots. This can be filtered in terms of time or
timestep intervals.

Once a filter has been applied, a filter warning will be displayed in the detailed transient results
option section, as shown below.

GAP User Guide March, 2022


User Guide 701

2.11.2.4 Transient Simulation Preference


The default transient simulation preferences can be setup by going to 'Options' under the
detailed transient result options, as shown below.

This is a user preference setup on the default filtering options for detailed transient results.
These default settings will be applied to all transient equipment detailed transient results in the
GAP model.

1990-2022 Petroleum Experts Limited


702 GAP

Apply Default This will define if the current filtering setup is always applied as the
Filters default filter.

The variable, depth and time filter configuration will need to be setup.

The 'Filter Variables', 'Filter Depth' and 'Filter Time' check boxes need
to be selected to apply the default filter.
Define Key These are the key variables that will be applied to the variable filter and
Variables also 'Key variables' option in the filter setup screen.

GAP User Guide March, 2022


User Guide 703

Maximum Multiple This will define the maximum number of multiple plots displayed in the
Plots main window when 'Plot Multiple' option is selected for transient plots.
Default Options This will define the default visualisation options in the main detailed
transient results screen.

Default Global If active, the minimum and maximum value of the


Scale variable during the transient simulation will be used
as the scale for the Transient Plot Result.
Default Plot If active, this will plot multiple transient results based
Multiple on the plot type method selected.
Default Show If active, this will display the Transient Table Results
Grid section.

2.11.2.5 Transient Simulation Export


Use this option to export the current transient simulation results.

Two export options are available:

Full Export: This will follow the filter setup and export all filtered variables, lengths and timesteps.
Single Variable Export: This will export a selected variable for length and time.

1990-2022 Petroleum Experts Limited


704 GAP

The export option will allows users to report to printer, file, clipboard or screen.

GAP User Guide March, 2022


User Guide 705

Printer The primary printer as setup under Windows.


File Creates an ASCII export and saves it. Clicking Print brings up a
dialogue box that requests a file name and destination. Enter a suitable
file name (the program automatically appends a .prn extension) and
click Done to save the file. Use the Tab Delimited format to save a file
suitable for importing directly into a spreadsheet.
Clipboard Clicking Print after selecting this option copies the exported data onto
the Windows clipboard. From the Clipboard it is possible to view, edit
and paste the data directly into another Windows application.
Screen Clicking Print after selecting this option allows to view the exported data
on the screen.

1990-2022 Petroleum Experts Limited


706 GAP

2.12 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”.

See also Forecast Workflow 712

GAP User Guide March, 2022


User Guide 707

2.12.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.

1990-2022 Petroleum Experts Limited


708 GAP

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.

GAP User Guide March, 2022


User Guide 709

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.

1990-2022 Petroleum Experts Limited


710 GAP

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.

GAP User Guide March, 2022


User Guide 711

With the IPR defined, GAP will solve the network using 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.

1990-2022 Petroleum Experts Limited


712 GAP

2.12.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.12.1.2 Linking MBAL files to GAP


To carry out a prediction requires a tank 462 model which can either use the material balance or
decline curve methods.

GAP User Guide March, 2022


User Guide 713

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.12.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 799 .

Click on Prediction | Run Prediction from the main menu:

1990-2022 Petroleum Experts Limited


714 GAP

The set-up screen shown below will be presented.

GAP User Guide March, 2022


User Guide 715

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

1990-2022 Petroleum Experts Limited


716 GAP

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.

GAP User Guide March, 2022


User Guide 717

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. GAP will first calculate the
production system and then determine the injection rates required to satisfy the reservoir
constraints. If no injection network has been associated to the production system then GAP will
assume that sufficient equipment (compressors, pumps, injection wells and flowlines to distribute
the fluid) is available to injection the required volumes of gas and water. If a injection network has
been associated to the production system then GAP will use the injection network to determine
the injection capacity and constrain the system to honour any reservoir constraints determined.

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

1990-2022 Petroleum Experts Limited


718 GAP

Gas Recycling The produced gas minus the entered amount is re-injected into
(Prd – amnt) 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

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.

GAP User Guide March, 2022


User Guide 719

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.

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.

1990-2022 Petroleum Experts Limited


720 GAP

2.12.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. The abandonment constraints are designed to permanently
shut-in the well (i.e. mask the well) for the rest of the prediction when an abandonment
constraint has been reached (and cannot be re-opened using the well ‘Schedule’). For
example, if a maximum water cut abandonment constraint is entered, then the well will
be shut-in during a prediction run if the produced water cut exceeds this value. When
rate abandonment constraints are applied (i.e. Qoil_min/Qgas_min/Qliquid_min) and the well
has been made controllable, the well will be shut-in once the rate falls below the
abandonment value, provided that there is also no dP across the wellhead choke
determined by the RBNS/non-linear optimiser.

If the objective is to shut-in the well once it drops below a certain rate, and have the possibility to
reopen the well to flow again in the future (e.g. if the potential well rate increases, for instance,
due to compression facilities coming online), then this is best achieved using Visual Workflows
in RESOLVE.
2.12.1.5 Linking Production / Injection Forecasting
There are two ways to carry out a production prediction with both production and injection:

Having two different models, one model for production, and one model for injection, and
link these models together (recommended)
Having the production wells and injection wells described in the same model

Production model with associated water/gas injection (recommended):

The injection network should be modelled as a separate GAP file with the system type set to
water/gas injection.

GAP User Guide March, 2022


User Guide 721

In the GAP file of the production system, the injection system can then be associated to the
production system under system options.

1990-2022 Petroleum Experts Limited


722 GAP

To view both the system on the same screen select Window | Tile Vertically.

GAP User Guide March, 2022


User Guide 723

With a associated water injection system, from the prediction setup window 713 , GAP allows
reservoir constraints to be specified.

When two models are set in separate GAP files and linked (a shown above), this allows GAP to
solve the production system first to determine the required reservoir constraints to achieve the
specified reservoir targets in the prediction setup window.

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 (reservoir
constraint), then the injection system will be constrained (welhead choke dP control, pump speed
control by RBNS or Optimiser) 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).

1990-2022 Petroleum Experts Limited


724 GAP

The Water Injection System 959 (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.

Both Production and Injection in same model:

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:

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. This will also increase the complexity of the network for the GAP solver and increase
computational time.

GAP User Guide March, 2022


User Guide 725

2.12.2 Prediction Options


If a decline curve or material balance prediction is set up, the 'Prediction' menu becomes active.

2.12.2.1 Run Prediction


This is used to access the setup screen and initiate the prediction run.
2.12.2.2 View Prediction Log
This is used to access the 'Prediction Log Window'.

1990-2022 Petroleum Experts Limited


726 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.12.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 March, 2022


User Guide 727

The "Add" button should be used to create a new stream, which can then be renamed.

When 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-2022 Petroleum Experts Limited


728 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 March, 2022


User Guide 729

2.12.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-2022 Petroleum Experts Limited


730 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 March, 2022


User Guide 731

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.12.2.5 Prediction Script Options
Selecting edit prediction script displays the screen where the script is entered and edited.

1990-2022 Petroleum Experts Limited


732 GAP

Please refer to the section "Prediction Script Options 788 " 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.12.2.6 Edit System Constraints Schedule


Selecting Prediction | System constraints schedule displays the following screen.

GAP User Guide March, 2022


User Guide 733

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.12.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-2022 Petroleum Experts Limited


734 GAP

Abandonment' section. The abandonment constraints are designed to permanently


shut-in the well (i.e. mask the well) for the rest of the prediction when an abandonment
constraint has been reached (and cannot be re-opened using the well ‘Schedule’). For
example, if a maximum water cut abandonment constraint is entered, then the well will
be shut-in during a prediction run if the produced water cut exceeds this value. When
rate abandonment constraints are applied (i.e. Qoil_min/Qgas_min/Qliquid_min) and the well
has been made controllable, the well will be shut-in once the rate falls below the
abandonment value, provided that there is also no dP across the wellhead choke
determined by the RBNS/non-linear optimiser.

If the objective is to shut-in the well once it drops below a certain rate, and have the possibility to
reopen the well to flow again in the future (e.g. if the potential well rate increases, for instance,
due to compression facilities coming online), then this is best achieved using Visual Workflows
in RESOLVE.
2.12.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.

GAP User Guide March, 2022


User Guide 735

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.
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

1990-2022 Petroleum Experts Limited


736 GAP

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
Unmask
Bypass
Unbypass
Change OPENSERVER variable
Execute OpenServer Command

Inline Choke
Change diameter
Mask
Unmask

GAP User Guide March, 2022


User Guide 737

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 of
Type 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

2.12.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.

1990-2022 Petroleum Experts Limited


738 GAP

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
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:

GAP User Guide March, 2022


User Guide 739

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

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
Unmask
Bypass
Unbypass
Change OPENSERVER variable
Execute OpenServer Command

Inline Choke
Change diameter
Mask

1990-2022 Petroleum Experts Limited


740 GAP

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 of
Type 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

2.12.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)

GAP User Guide March, 2022


User Guide 741

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.
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)

1990-2022 Petroleum Experts Limited


742 GAP

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 959 .
Constraint If Change constraint was chosen above, this field contains a drop down list of
Type 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 87 .
2.12.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.

GAP User Guide March, 2022


User Guide 743

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.

1990-2022 Petroleum Experts Limited


744 GAP

2.12.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.12.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

GAP User Guide March, 2022


User Guide 745

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.

1990-2022 Petroleum Experts Limited


746 GAP

The "Event Group" option in this screen allows the user to place the DCQ schedule within
an event group 744 .
If this event group has been enabled then the DCQ schedule will be used.
If the event group has been disabled then the DCQ schedule will not be used

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.

GAP User Guide March, 2022


User Guide 747

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 Results 713 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.

1990-2022 Petroleum Experts Limited


748 GAP

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.

Plotting the instantaneous rates for the entire production system shows the rate profile which
corresponds to the above DCQ schedule (assuming no swing factors).

GAP User Guide March, 2022


User Guide 749

If swing factors were included (based on the values used figure above) the following profile would
be observed.

1990-2022 Petroleum Experts Limited


750 GAP

The contract type (gas rate, gross heating value, water rate or oil rate) can be selected by
the user.
2.12.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.

GAP User Guide March, 2022


User Guide 751

2.12.2.14 Purge Results


These options deletes the prediction results (latest run performed) and the prediction snapshots.
2.12.2.15 Plot and View the Prediction Results
The prediction results can easily be visualised, plotted, and analysed using the following options.

1990-2022 Petroleum Experts Limited


752 GAP

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).

GAP User Guide March, 2022


User Guide 753

Click "Plot" to access a graph which provides the user with the option to plot variables for the
selected equipment.

1990-2022 Petroleum Experts Limited


754 GAP

When 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.

GAP User Guide March, 2022


User Guide 755

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.

1990-2022 Petroleum Experts Limited


756 GAP

Plot Tanks Prediction Results


The option is used in the same way as for the Nodes, however it allows the user to view the
Prediction results from multiple tanks.

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 751 .

View DCQ Prediction Results


Refer to the section on the DCQ Schedule 744

2.13 Results and Reports


This chapter describes how to view results, and prepare plots and reports from GAP simulations.
GAP's 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.

GAP User Guide March, 2022


User Guide 757

2.13.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.
Propagate In-situ Rates To calculate in-situ rates for all joints of the network that are
not downstream of a pipeline with pipe data.

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 Inflows
All Joints
All Pipes
All Separators and Injection Manifolds
All Emissions
Selected Items.

1990-2022 Petroleum Experts Limited


758 GAP

2.13.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 scroll bar 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 command buttons 'First', 'Prev', 'Next' and
'Last' on the top ribbon allows to move about the results database and to display data from the
selected system elements. The 'Prediction' button enables to load and visualise the prediction
results of the element.

GAP User Guide March, 2022


User Guide 759

2.13.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 'Summary' Results and the 'Detailed' Results is that a single
variable is reported for every (or single if the option is selected) element in the system.

1990-2022 Petroleum Experts Limited


760 GAP

Results are displayed for each selected element in the system (up to 10 gas injection rates or
separator pressures). Use the scroll bar 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' window will display a histogram of the selected
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:

GAP User Guide March, 2022


User Guide 761

2.13.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.

1990-2022 Petroleum Experts Limited


762 GAP

The user can access the forecast results by clicking the “Prediction” button. A typical display of
the prediction results is shown below.

2.13.1.4 System Emissions


This 'System Emissions' feature 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.

GAP User Guide March, 2022


User Guide 763

The results are displayed as in the previous sections. The figure below displays the results of
last 'Solve Network'.

Selecting "Prediction" displays the prediction results as before.

1990-2022 Petroleum Experts Limited


764 GAP

2.13.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.

GAP User Guide March, 2022


User Guide 765

2.13.1.6 Plot Options


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 draw 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.

1990-2022 Petroleum Experts Limited


766 GAP

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 the
plot. When this option is selected the following window appears which
allows the user to choose which variables should be removed from the
plot.

GAP User Guide March, 2022


User Guide 767

This option allows the user to save plots which can then be later recalled.

1990-2022 Petroleum Experts Limited


768 GAP

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.

GAP User Guide March, 2022


User Guide 769

This option adjusts the symbol sizes and and the plot widths.

2.13.1.7 Insitu Rates


The solve network results for a joint element will report the in-situ rates of oil, water and gas at
the joint pressure/temperature using the upstream fluid PVT configuration (e.g. system defaults,
PROSPER PVT matching).

The in-situ rates will be reported at joint elements in the network which are downstream of a
pipeline with pipe data automatically - as shown below:

1990-2022 Petroleum Experts Limited


770 GAP

The in-situ rates are populated by going to Results | Propagate In-situ Rates - as shown
below:

2.13.2 Reports
Use the 'Reports' option from the main menu to prepare reports from a current analysis, or from
a previously saved .GAP file.

GAP User Guide March, 2022


User Guide 771

When the 'Reports' 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-2022 Petroleum Experts Limited


772 GAP

Selecting the “Run Report” button will allow GAP to write the results to the clipboard, which can
then be pasted into Excel.

GAP User Guide March, 2022


User Guide 773

2.13.2.1 Hardcopy Reports


This section provides a detailed description of the different formats available in GAP to produce
reports.

Reports can be sent to a choice of:

Printer The primary printer as set up under Windows.


File Creates an ASCII report file and saves it. Clicking 'Run Report' brings up
a dialogue box that requests a file name and destination directory. Enter a
suitable file name (the program automatically appends a *.prn extension)
and click 'Save' to save the file.

The Fixed Format option saves a file in a printer ready format that can be
imported into a word processing program such as Microsoft Word.

Use the Tab Delimited format to save a file suitable for importing directly
into a spreadsheet such as EXCEL
Clipboard Clicking 'Run Report' after selecting this option copies the report onto the
Windows clipboard. From the clipboard, one can paste the report directly
into another Windows application. e.g. a word processing program, by
pressing the keyboards <shift> and <insert> together or Ctrl + V on
Windows PCs.

For pasting into Excel, the tab delimited format has to be selected:

1990-2022 Petroleum Experts Limited


774 GAP

Screen Clicking 'Run Report' after selecting this option allows to view the report
on the screen. Scroll through the report to view all the data. When finished
viewing, click on the red cross at the top right of the window to return to the
main menu.

Action Buttons

OK Removes the Report dialogue, saving the current Report configuration


Cancel Closes the Report dialogue without saving
Help Displays this Help screen
Run Report Creates the report. The effect of this button will depend on the settings
described above
Setup Opens the Reports Setup 774 dialogue

2.13.2.2 Report Setup


This option allows the setting up of the look of reports on the chosen hardcopy device.

The report setup window is invoked from the main Reports dialogue (see Reports menu item 770

for more information)- as shown below:

GAP User Guide March, 2022


User Guide 775

Input Fields

Margins Use these to specify where the report will appear on the page.
Orientation Specifies a landscape or portrait report.
Copies Specifies the number of copies.
Font Specifies the font type and size. Only evenly-spaced fonts will be
presented in order to assure that report tables are aligned correctly.
Plot border This option will draw a rectangle around the perimeter delineated by
the Margins settings.
Report date stamp This will put the current date and time on the report header.
Report file name This will put the name of the GAP file on the report header.
stamp
Report version This will put the current GAP version number on the report header.
stamp

Action Buttons

Ok Saves the selections entered and returns to the main Report window
Cancel Ignores the selections entered and returns to the main Report window

1990-2022 Petroleum Experts Limited


776 GAP

Help Accesses this Help screen


Printer Accesses the Printer Setup 86 screen

GAP User Guide March, 2022


User Guide 777

2.14 History Matching an IPM Model

2.14.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-2022 Petroleum Experts Limited


778 GAP

2.14.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.14.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 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.

GAP User Guide March, 2022


User Guide 779

2.14.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 the system, we should isolate the
elements and this is the recommended approach for history matching an 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
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.

1990-2022 Petroleum Experts Limited


780 GAP

The matching procedure can start from the reservoir model. This can be history matched as
explained in the MBAL manual.

Fractional flow curves should also be matched to capture the interaction of the phases.

GAP User Guide March, 2022


User Guide 781

As soon as this is done, each well can be matched independently of the reservoir model in
PROSPER.

1990-2022 Petroleum Experts Limited


782 GAP

to more than one test at a time:

GAP User Guide March, 2022


User Guide 783

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 272 MBAL 272 ".

The surface pipelines can also be matched if the test data has been validated and shown to
representative.

1990-2022 Petroleum Experts Limited


784 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 March, 2022


User Guide 785

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


786 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 March, 2022


User Guide 787

Selecting "Calculate" and "Continue" will update the well models, thus initialising them to the
date in question.

The Model Validation 640 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 troubleshooting far more efficient and direct.

1990-2022 Petroleum Experts Limited


788 GAP

2.15 Prediction Script

2.15.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 prediction, modify parameters on the fly etc. The
range of applications is extremely diverse and this is demonstrated in Example 1b 838 , Example
5 976 and Example 8 . 1071

The 'Prediction Script' can be accessed from the menu Prediction | Edit Prediction Script or
from the button in the main toolbar. 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 March, 2022


User Guide 789

2.15.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 six subroutines
that are provided in the script.

1990-2022 Petroleum Experts Limited


790 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 March, 2022


User Guide 791

GAP.MOD[{PROD}].WELL[{Well_A}].PREDRES[3].LIQRATE

2.15.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 by 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-2022 Petroleum Experts Limited


792 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 March, 2022


User Guide 793

2.16 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.16.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 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.
Latin S.I.

1990-2022 Petroleum Experts Limited


794 GAP

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.16.2 The Control Database


The "Controls" option takes the user into the controls database.

GAP User Guide March, 2022


User Guide 795

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


796 GAP

2.16.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 units.

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 March, 2022


User Guide 797

1990-2022 Petroleum Experts Limited


Chapter

3
Examples Guide 799

3 Examples Guide
This section contains step-by-step examples that will illustrate how to setup integrated models
and introduce users to the various capabilities of GAP for different engineering applications.

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


Setting up a network model for a gas
Gas Field Modelling and
field, entering constraints and Example 1a 805
Optimisation
schedules and running predictions
Advanced Gas field Modelling hydrate injection using
Modelling and Example 1b 838
inline 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 Example 2a 873
Optimisation
constraints, running "Solve Network,"
entering schedules, running
predictions and troubleshooting tips.
Oil Field Modelling Using Become familiar with using the Rule
The Rule Based Network Based Network Solver and analysing Example 2b 936

Solver results
Viewing details of the pressure drop
Detailed Results for
calculation in GAP using the Example 3 944
Pipelines
PROSPER 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 959
Water Injection
prediction with the two coupled
models
Setting up a network model for a
multi-layered well completion with
inflow controllable valves, optimising
Smart Well Completions Example 5 976
both of the layers to maximise oil
production, introducing scheduling
and prediction script.

Setting up network model with ESP


Artificial lift Optimisation - Example 6
lifted wells, scheduling and running 1004

ESP field
predictions with optimisation to

1990-2022 Petroleum Experts Limited


800 GAP

honour constraints on maximum


power available
Setting up network model with gas
Artificial lift Optimisation - lifted wells, scheduling and running
Example 7 1027
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 Example 8 1071

models. 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 1134

assurance studies to predict hydrate


formation.
LNG Field (BO Running predictions for a LNG
Compositional Lumping/ network with advanced PVT Example 9b 1189

Delumping) modelling.
Setting up a tight gas field, creating/
Tight Gas Field importing partial GAP files and Example 10 1200

compressor modelling.
Setting up a coal bed methane field,
Coal Bed Methane dewatering, routing and running Example 11 1226

predictions.
Surface Jet Pumps Setting up a model containing a SJP.
Copying and pasting data between Example 12 1250

equipment and analysing results.


Explicit Compressor Creating a surface network with a
Recirculation compressor. Defining compressor
input data and performance curves. Example 13 1275

Modelling the recirculation explicitly


and recovering energy using a SJP.
Well Production Ramp-Up This is a getting started example for
GAP Transient, which introduces the Example 14 1301

user to the functionality within the


tools.
Unstable Riser Investigation on a unstable system Example 15 1332

scenario using GAP Transient.

GAP User Guide March, 2022


Examples Guide 801

3.1.1 IPM Sample Files Folder


The samples files folder can also be accessed from the windows start menu, as shown below.
This file contains worked examples for all the IPM tools.

3.1.2 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:

1990-2022 Petroleum Experts Limited


802 GAP

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.

GAP User Guide March, 2022


Examples Guide 803

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 88

1990-2022 Petroleum Experts Limited


804 GAP

Archive Extraction 92

GAP User Guide March, 2022


Examples Guide 805

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

1990-2022 Petroleum Experts Limited


806 GAP

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

The samples files folder can also be accessed from the windows start menu,
as shown below. This file contains worked examples for all the IPM tools.

GAP User Guide March, 2022


Examples Guide 807

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 40 12 0 0 3 Petroleum Experts 5
Manifold_B to Sep Joint 1 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 Well Type PROSPER File IPR Type

Well1 Gas Producer Well1.OUT C and n


Well2 Gas Producer Well2.OUT C and n
Well3 Gas Producer Well3.OUT C and n
Well4 Gas Producer Well4.OUT C and n
Table 3 Wells data

1990-2022 Petroleum Experts Limited


808 GAP

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.

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

GAP User Guide March, 2022


Examples Guide 809

Water Vapour: Calculate Condensed Water Vapour


Temperature Model: Rough Approximation
Heat Transfer Coefficient: Enter Heat Transfer Coefficient
Calculate Well Choke Delta T: On
Brine Properties Correlation: Use Default Correlation
Water Viscosity Correlation: Use Default Correlation
Allow Transient Pipes/Wells: Enable Transient Calculations

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.

1990-2022 Petroleum Experts Limited


810 GAP

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

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 793 of the user Guide.

Click on OK to complete the selection of units and to close the screen.

GAP User Guide March, 2022


Examples Guide 811

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 canvas 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.

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.

1990-2022 Petroleum Experts Limited


812 GAP

NOTE: Icon size and font can be changed by going to View 125 from
the main drop down menu or right-clicking on the GAP canvas

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:

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 equipment meet.

Pipelines are created by linking two joints together.

GAP User Guide March, 2022


Examples Guide 813

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.
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.

1990-2022 Petroleum Experts Limited


814 GAP

Select the 'Production Separator' and label the icon as "Separator".

The Links /Pipes


Links are connection tools which connect the various nodes in the network
system. The following rules apply:

GAP User Guide March, 2022


Examples Guide 815

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.


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:

1990-2022 Petroleum Experts Limited


816 GAP

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 807 ).
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.

GAP User Guide March, 2022


Examples Guide 817

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

1990-2022 Petroleum Experts Limited


818 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
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: Gas Producer
Model: VLP/IPR intersection
PROSPER file: Well1.OUT

GAP User Guide March, 2022


Examples Guide 819

PLEASE MAKE SURE THAT THE WELL TYPE IS DEFINED AS "Gas


Producer"

Access the IPR section from the summary screen by either selecting the IPR 'Invalid' button or
navigating from Input | IPR | Ipr Layer from the Input section button.
In the Ipr Layer tab, set the IPR Type to C & n for all well IPR models:

1990-2022 Petroleum Experts Limited


820 GAP

Complete all of the wells according to the data provided in Table 3 807 .

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.

GAP User Guide March, 2022


Examples Guide 821

In the next window, select 'All' pick all wells or press the 'Select' button to select the desired wells
and return to Generate | Generate Well IPRs from PROSPER.

Select 'Generate' to import the IPR calculated in PROSPER to the GAP model. The 'PVT Method'
will define which PVT Data in the PROSPER file is imported to GAP. The 'Import Match
Parameters' option will import PROSPER PVT match parameters into GAP.

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:

1990-2022 Petroleum Experts Limited


822 GAP

The IPR curve can be visualised 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 WGR produced by the well, based on the history matching performed in
MBAL.

GAP User Guide March, 2022


Examples Guide 823

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.2.3.5 Generate Well VLPs


To generate the VLPs select Generate | Generate Well VLPs with PROSPER from the main
menu.

1990-2022 Petroleum Experts Limited


824 GAP

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' in the new window to
enter the ranges for the sensitivity variables.

Please refer to the VLP generation 616 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:

GAP User Guide March, 2022


Examples Guide 825

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:

1990-2022 Petroleum Experts Limited


826 GAP

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 March, 2022


Examples Guide 827

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 807 contains the information about all of the pipelines in the field.

According to the network sketch 808 , 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:

Label Line 1
Pipeline model: GAP Internal Correlations
Correlation: Petroleum Experts 5
Gravity Coefficient: 1
Friction Coefficient: 1

1990-2022 Petroleum Experts Limited


828 GAP

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 March, 2022


Examples Guide 829

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


830 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 un-described pipe as follows:

1. Hold down the Control key and pressure the left mouse button on the
described pipe.
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 March, 2022


Examples Guide 831

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 322 section in the well summary screen and setting the "dP Control" to

1990-2022 Petroleum Experts Limited


832 GAP

"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)

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.

GAP User Guide March, 2022


Examples Guide 833

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

1990-2022 Petroleum Experts Limited


834 GAP

Select | Next and then set the prediction mode to 'Optimise with All Constraints' and then |
Calculate:

The Plot Nodes/Tanks feature enables the user to visualise the results
dynamically as GAP is carrying out the prediction.

GAP User Guide March, 2022


Examples Guide 835

The 'Calculate Potential' option allows the user to calculate the field
Potential. If no Potential Constraints have been set up (ref. related
chapter 175 ) the program will calculate the maximum the field can
produce.
Notes on Constraints 321

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:

In the plot select "Gas Rate" from the "Variables" menu. Also, use the plot options (highlighted by

1990-2022 Petroleum Experts Limited


836 GAP

the red square) to modify the scales or the positioning of the legend.

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.

GAP User Guide March, 2022


Examples Guide 837

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.

1990-2022 Petroleum Experts Limited


838 GAP

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:

GAP User Guide March, 2022


Examples Guide 839

1. Write a script that is executed during the prediction to regulate the surrounding
temperature
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 801 the archive file from the Initial Files folder.

The samples files folder can also be accessed from the windows start menu,
as shown below. This file contains worked examples for all the IPM tools.

3.3.2 Data Available


The average surrounding temperature for each month has been provided for the region.

Month Average surrounding temperature (degF)


January 32
February 32
March 42
April 42
May 52
June 52
July 60
August 60
September 42
October 42
November 32
December 32

1990-2022 Petroleum Experts Limited


840 GAP

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.

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.

GAP User Guide March, 2022


Examples Guide 841

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.

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.

1990-2022 Petroleum Experts Limited


842 GAP

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'.

GAP User Guide March, 2022


Examples Guide 843

This screen is where the script is entered.

1990-2022 Petroleum Experts Limited


844 GAP

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.

GAP User Guide March, 2022


Examples Guide 845

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.

1990-2022 Petroleum Experts Limited


846 GAP

Once the variables have been defined the next step is to write the script which will entered in the
'Script File' section.

GAP User Guide March, 2022


Examples Guide 847

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 839 .

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)

1990-2022 Petroleum Experts Limited


848 GAP

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;
}

GAP User Guide March, 2022


Examples Guide 849

If the conditions fall into Region 1 then there is no need to add methanol.

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.

1990-2022 Petroleum Experts Limited


850 GAP

Repeat the same steps for the MEG_B element.

GAP User Guide March, 2022


Examples Guide 851

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.

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 +

1990-2022 Petroleum Experts Limited


852 GAP

Right Click.

This approach is very cumbersome as the temperature needs to be modified every two months
(See Table 1 839 ) 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 839 .

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
script which will be executed at the beginning of each prediction time step (using
PredStepProlog).

For more information about Prediction Script 788 refer to the main manual.

GAP User Guide March, 2022


Examples Guide 853

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.

1990-2022 Petroleum Experts Limited


854 GAP

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:

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.

GAP User Guide March, 2022


Examples Guide 855

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

1990-2022 Petroleum Experts Limited


856 GAP

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.

Select | OK and then | Calculate to start the prediction.

GAP User Guide March, 2022


Examples Guide 857

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


858 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 March, 2022


Examples Guide 859

Double-click on one of the pipelines and inspect the surround temperature.

1990-2022 Petroleum Experts Limited


860 GAP

We can confirm that the temperature is 52 degF in May which is in agreement with Table 1 839 .

The snapshot can be unloaded by going to Prediction | Unload Prediction Snapshot

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 March, 2022


Examples Guide 861

Select both the pressure and the temperature for each manifold.

1990-2022 Petroleum Experts Limited


862 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 March, 2022


Examples Guide 863

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.'

Methanol injection at Manifold A

1990-2022 Petroleum Experts Limited


864 GAP

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.

GAP User Guide March, 2022


Examples Guide 865

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.

1990-2022 Petroleum Experts Limited


866 GAP

Plot the pressure drop in the main flowline (40 km) by double-clicking on the pipeline, entering
Input | Prediction and selecting Plot.

GAP User Guide March, 2022


Examples Guide 867

It is clear that the pipeline pressure drop is effected by the quantity of methanol volume injected
and consequently we would expect different methanol volumes to be calculated.

1990-2022 Petroleum Experts Limited


868 GAP

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
. This example also demonstrates many of the advanced flow assurance capabilities that are
1189

embedded in GAP.

GAP User Guide March, 2022


Examples Guide 869

3.3.6 Creating a User Defined Inline Element


Having created an Inline Programmable Element and spent time developing the logic and
creating the script, we would now like to make this functionality available to all users within the
organisation. This can be done by creating a User Defined element.

To create an User Defined element, it is important that the script file is not stored as an external
file. This can be done by ensuring the Store in external file box is not enabled, as shown
below.

Next we can go to the summary screen and define the name, description and bitmap image for
the User Defined element, as shown below.

1990-2022 Petroleum Experts Limited


870 GAP

In this case, a bitmap image had been created beforehand, however, the choice of bitmap
image is entirely up to the user.

The User Defined element can then be created by clicking Save as User-defined Inline
Element File... which will create a file with the *.gapinl extension. It is good practice to save this
in a directory along with all other User Defined elements. In the GAP flowsheet, it is now possible
to see that the Inline Programmable element has the been assigned the bitmap image.

GAP User Guide March, 2022


Examples Guide 871

To add this newly created User Defined element to the worksheet, GAP must first be saved, shut
down and re-opened. On opening, GAP will search for any file with the *.gapinl extension in the
run directory. It is also possible to assign a directory for GAP to search for any *gapinl files by
clicking File | Directories...

The user defined element can now be added to the GAP flowsheet by clicking on the user
defined element icon in the GAP toolbar, clicking the location on the flowsheet and selecting the
User Defined element of interest as shown below.

1990-2022 Petroleum Experts Limited


872 GAP

This concludes this example.

GAP User Guide March, 2022


Examples Guide 873

3.4 Example 2a - 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 905

Question 2. How much we should choke back each of the wells in order to satisfy the

1990-2022 Petroleum Experts Limited


874 GAP

maximum liquid constraint at the process level and at the same time produce the maximum
amount of oil? Go to answer 910

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 914

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 918

Question 5. If we can test different development scenarios based on the analysis of previous
runs Go to answer 928

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

GAP User Guide March, 2022


Examples Guide 875

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.
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 2a - Oil Field

The samples files folder can also be accessed from the windows start menu,
as shown below. This file contains worked examples for all the IPM tools.

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

1990-2022 Petroleum Experts Limited


876 GAP

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

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.

GAP User Guide March, 2022


Examples Guide 877

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:

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
Heat Transfer Coefficient Enter Heat Transfer Coefficient
Calculate Well Choke Delta T: Off
Brine Properties Correlation Use Default Correlation
Water Viscosity Correlation Use Default Correlation
Allow Transient Pipes/Wells Enable Transient Calculations

1990-2022 Petroleum Experts Limited


878 GAP

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 March, 2022


Examples Guide 879

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 793 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

1990-2022 Petroleum Experts Limited


880 GAP

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 March, 2022


Examples Guide 881

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:


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.

1990-2022 Petroleum Experts Limited


882 GAP

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 March, 2022


Examples Guide 883

Select the 'Production Separator' and label the icon as "Separator".

The links /pipes


Links are connection tools which connect the various nodes in the network
system. The following rules apply:

1990-2022 Petroleum Experts Limited


884 GAP

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:

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:

GAP User Guide March, 2022


Examples Guide 885

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 875 ).
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
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.

1990-2022 Petroleum Experts Limited


886 GAP

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
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 875 .

GAP User Guide March, 2022


Examples Guide 887

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:

1990-2022 Petroleum Experts Limited


888 GAP

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.

GAP User Guide March, 2022


Examples Guide 889

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.

1990-2022 Petroleum Experts Limited


890 GAP

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 616 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:

GAP User Guide March, 2022


Examples Guide 891

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:

1990-2022 Petroleum Experts Limited


892 GAP

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 March, 2022


Examples Guide 893

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 640 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.

Well Name Reservoir Pressure Manifold Pressure Liquid rate Water Cut GOR

1990-2022 Petroleum Experts Limited


894 GAP

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.

GAP User Guide March, 2022


Examples Guide 895

3.4.3.7 Define the Pipelines


Table 1 875 contains the information about all of the pipelines in the field.

According to the network sketch 873 , 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

1990-2022 Petroleum Experts Limited


896 GAP

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)

GAP User Guide March, 2022


Examples Guide 897

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

1990-2022 Petroleum Experts Limited


898 GAP

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

GAP User Guide March, 2022


Examples Guide 899

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

1990-2022 Petroleum Experts Limited


900 GAP

The figure on the right hand side allows the user to define which node
is upstream and which is downstream in the system:

GAP User Guide March, 2022


Examples Guide 901

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.

1990-2022 Petroleum Experts Limited


902 GAP

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.

GAP User Guide March, 2022


Examples Guide 903

Select the 'Match Data' item and enter the measurements.

1990-2022 Petroleum Experts Limited


904 GAP

Match the Petroleum Experts 5 correlation by selecting 'Match' and then selecting the correlation
from the list of available multiphase flow correlations in GAP.

GAP User Guide March, 2022


Examples Guide 905

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 873 , 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 159 and History Matching 777 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'.

1990-2022 Petroleum Experts Limited


906 GAP

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:

GAP User Guide March, 2022


Examples Guide 907

The status of the model is now updated to the 01/12/2010, which corresponds to the end
of production history of Reservoir B.

3.4.4.2 Solve network for wells fully open


Question 1 873 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

1990-2022 Petroleum Experts Limited


908 GAP

Set the mode to 'No Optimisation'


Run the calculation by selecting 'Calculate':

GAP User Guide March, 2022


Examples Guide 909

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:

Answer to Question 1: If the wells were fully open they would produce approximately
23000 STB/day of liquid and 21000 STB/day of oil.

1990-2022 Petroleum Experts Limited


910 GAP

3.4.5 Question 2 - Solution


Question 2 873 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

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:

GAP User Guide March, 2022


Examples Guide 911

Accessing the Controls 322 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:

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


912 GAP

Set the mode to 'Optimise with all Constraints'


Run the calculation by selecting 'Calculate':

GAP User Guide March, 2022


Examples Guide 913

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 909 .

Using the fly-over, it is possible to verify that the constraint is honoured:

When an element is constrained and the constraint is being honoured then the icon is highlighted
in green. If the green icon is not visible, please navigate to View | Highlight limiting constraints. 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.

1990-2022 Petroleum Experts Limited


914 GAP

To determine how the wells have been controlled by GAP double-click on the well to access the
summary screen and then select 'Results'.

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 873 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 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

GAP User Guide March, 2022


Examples Guide 915

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.

We will follow the last method to plot the separator results:

1990-2022 Petroleum Experts Limited


916 GAP

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.

GAP User Guide March, 2022


Examples Guide 917

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.

1990-2022 Petroleum Experts Limited


918 GAP

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
726 ). 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'

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 873 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.

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.

GAP User Guide March, 2022


Examples Guide 919

Then activate the option 'Prediction-save intermediate step results snapshots at each prediction
step' by entering a value of 1.

Select OK and then re-run the prediction by pressing 'Calculate'.

1990-2022 Petroleum Experts Limited


920 GAP

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.

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.

GAP User Guide March, 2022


Examples Guide 921

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.

1990-2022 Petroleum Experts Limited


922 GAP

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.

GAP User Guide March, 2022


Examples Guide 923

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 late 2016/early 2017.

1990-2022 Petroleum Experts Limited


924 GAP

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/08/2016.

GAP User Guide March, 2022


Examples Guide 925

To analyse Well1A in more detail double click on the Well1A icon to view the system summary
screen.

1990-2022 Petroleum Experts Limited


926 GAP

Select Calculate | Initialise from solver results | Calculate | Plot to view the intersection of the VLP
and the IPR at that time step.

GAP User Guide March, 2022


Examples Guide 927

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.

1990-2022 Petroleum Experts Limited


928 GAP

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 873 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
window. Enter a value of 3650 psig for Reservoir A.

GAP User Guide March, 2022


Examples Guide 929

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 918 .

1990-2022 Petroleum Experts Limited


930 GAP

Select Prediction | Plot Nodes Prediction Results from the main GAP menu and plot all of the oil
rates for each well.

GAP User Guide March, 2022


Examples Guide 931

The additional pressure support in Reservoir A removes any instabilities observed previously
around 2016/2017 and extends the well life almost until the end of the field life. The impact of this
additional support results in a significant increase in the cumulative oil production from 28 to
32MMSTB.

1990-2022 Petroleum Experts Limited


932 GAP

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 March, 2022


Examples Guide 933

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


934 GAP

When "Save" is selected the following screen will appear.

GAP User Guide March, 2022


Examples Guide 935

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


936 GAP

3.5 Example 2b - Oil Production Network (RBNS)


Before starting this exercise it is recommended to first complete Example 2a 873 on which this
example is based.
3.5.1 Objectives
Definition of the Problem
The scenario in question is the same as the previous example 873 ; 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 this exercise is to compare the results obtained using the GAP optimiser and
the Rule Based Network Solver 656 (RBNS).

GAP User Guide March, 2022


Examples Guide 937

Learning Topics
The objectives for this example are to learn how to:
Perform predictions using the RBNS
Save the prediction results
Compare the results of different runs

Executive Summary
The steps followed will be:
1. Extract 801 the GAP archive file (.gar)
2. Run a prediction from 01/12/2010 for 10 years (2 months time step) using the RBNS
3. Save the results of the prediction
4. Compare the results of multiple predictions

1990-2022 Petroleum Experts Limited


938 GAP

3.5.2 Data Available


For this example we need to start from the saved Oil Field.gap model from Example 2a 873 . The
completed archive of this model is saved in Example 2a - Oil Field - Completed Files directory.
Extract 801 the file to start the exercise.

The samples files folder can also be accessed from the windows start menu, as shown below.
This file contains worked examples for all the IPM tools.

3.5.3 Performing the Prediction


The extracted GAP archive has already been set up as described in the previous exercise.

The next step is to perform the prediction using the Rule Based Network Solver (RBNS). The
method to do this is exactly the same as the previous exercise, only this time selecting "Rule
Based" in the mode section of the prediction screen;

GAP User Guide March, 2022


Examples Guide 939

1990-2022 Petroleum Experts Limited


940 GAP

3.5.4 Saving the Prediction Results


After the prediction has been performed; the results obtained using the RBNS are to be saved
726 in order to compare them with the results of the optimiser in GAP.

This can be done by selecting Prediction | Save Prediction Results as;


Select "Add"
Enter a name to identify the prediction results
Press "OK"

Note the case "Base scenario with pressure support" contain the results from the previous
exercise using the optimiser. These are the results we will be comparing with the results of the
RBNS.

GAP User Guide March, 2022


Examples Guide 941

3.5.5 Compare the Results


The results obtained using the RBNS will be compared to the results obtained using the
optimiser in GAP. In particular at the separator;

The liquid rates will be compared to ensure the constraints have been honoured
The cumulative oil production will be used to compare the recovery achieved using the
two methods

To view the results at the separator double click the separator icon and select the "prediction"
tab in the "results" screen. The results can be plotted by selecting the plot button.

The first step is to compare the liquid rate at the separator over time using the RBNS and
optimiser.

1990-2022 Petroleum Experts Limited


942 GAP

It can be seen that the two cases calculate extremely similar liquid rates and that the RBNS has
obeyed the constraints in the system. The next result to compare is the cumulative oil production;

GAP User Guide March, 2022


Examples Guide 943

The RBNS also calculates a similar cumulative oil recovery to the optimiser in GAP.

In summary; the RBNS has calculated very similar results to the optimiser for this simple oil
production network. It has done this whilst taking less time to perform the prediction than the
optimiser.

1990-2022 Petroleum Experts Limited


944 GAP

3.6 Example 3 - Pipeline detailed results

3.6.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 March, 2022


Examples Guide 945

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 929 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 905 )
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 801 the archive file from the Completed Files folder.

The samples files folder can also be accessed from the windows start menu,
as shown below. This file contains worked examples for all the IPM tools.

3.6.2 Data available


For this example we need to start from the saved Oil Field.gap model from Example 2a 873 . The
completed archive of this model is saved in Example 2a - Oil Field - Completed Files directory.
Extract 801 the file to start the exercise.
3.6.3 Run Solve Network
The system has been already initialised to 01/12/2010 (ref. previous section 905 ), and the 'Solve
Network' has already been carried out (ref. previous sections 911 ).
We will repeat the 'Solve Network' (with optimisation) calculation, just in case the model has
been accidentally changed.

1990-2022 Petroleum Experts Limited


946 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 March, 2022


Examples Guide 947

3.6.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-2022 Petroleum Experts Limited


948 GAP

Select 'Initialise from solver results'. This will import the results obtained from the 'Solve Network'
calculation.

GAP User Guide March, 2022


Examples Guide 949

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


950 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 March, 2022


Examples Guide 951

3.6.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-2022 Petroleum Experts Limited


952 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 March, 2022


Examples Guide 953

For example, the equipment screens will have the equipment previously entered in the pipe
description:

1990-2022 Petroleum Experts Limited


954 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 March, 2022


Examples Guide 955

Scroll to the right of the screen and select the 'Gradient' tab on the corresponding date.

1990-2022 Petroleum Experts Limited


956 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 March, 2022


Examples Guide 957

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
Mean Slug Frequency and 1/1000 Slug Frequency:

1990-2022 Petroleum Experts Limited


958 GAP

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 March, 2022


Examples Guide 959

3.7 Example 4 - Associated Water Injection System

3.7.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 873 ). 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-2022 Petroleum Experts Limited


960 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 801 the archive files from the Initial Files folder.

The samples files folder can also be accessed from the windows start menu,
as shown below. This file contains worked examples for all the IPM tools.

3.7.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

GAP User Guide March, 2022


Examples Guide 961

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.7.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 713 .

Starting from the production model, select Prediction | Run Prediction from the main GAP
screen. Run a prediction:
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

1990-2022 Petroleum Experts Limited


962 GAP

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:

The liquid production profile is also useful for understanding the reservoir behaviour.

GAP User Guide March, 2022


Examples Guide 963

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


964 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.7.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 959 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 March, 2022


Examples Guide 965

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

1990-2022 Petroleum Experts Limited


966 GAP

one injection well can inject when the target pressure is already achieved.

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
8300 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.

Assume that the wellhead is located 0.8km from Manifold_A and tied back with a pipeline that is
6 inches in diameter.

GAP User Guide March, 2022


Examples Guide 967

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.

Note that one well alone can deliver around 8300 STB/d, whilst 2 wells
producing together can achieve 16500 STB/d (approximately 8250 STB/d

1990-2022 Petroleum Experts Limited


968 GAP

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
be exported to Excel and summed up to obtain the total.

Save the model as water injection system final.gap.


3.7.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 March, 2022


Examples Guide 969

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


970 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 March, 2022


Examples Guide 971

3.7.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 961 :


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


972 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 March, 2022


Examples Guide 973

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


974 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.

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.

GAP User Guide March, 2022


Examples Guide 975

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 962 , 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-2022 Petroleum Experts Limited


976 GAP

3.8 Example 5 - Smart Well Modelling in GAP

3.8.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 March, 2022


Examples Guide 977

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 801 the archive file in the Initial Files folder to an appropriate directory

The samples files folder can also be accessed from the windows start menu, as
shown below.

1990-2022 Petroleum Experts Limited


978 GAP

3.8.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.

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

GAP User Guide March, 2022


Examples Guide 979

3.8.3 Build the GAP Network


The steps to set up a GAP model can be found in previous examples 808 , 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 976 can be translated into a simpler form as
shown below:

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

1990-2022 Petroleum Experts Limited


980 GAP

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.

3.8.3.1 Draw the GAP Network


Extract the GAP archive Oil Field Smart Well.gar

GAP User Guide March, 2022


Examples Guide 981

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


982 GAP

To switch the wells to outflow only, double-click on the well to activate the system summary
screen and then modify the well model to 'Outflow Only-VLP'.

GAP User Guide March, 2022


Examples Guide 983

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


984 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 March, 2022


Examples Guide 985

Once connected the system should look like the following:

1990-2022 Petroleum Experts Limited


986 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.8.3.2 Define the IPR Elements
For each layer associate the corresponding PROSPER file as per Table 1 978 , for example:

GAP User Guide March, 2022


Examples Guide 987

In the IPR section select the layer fluid type and the IPR model:

1990-2022 Petroleum Experts Limited


988 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 820 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 March, 2022


Examples Guide 989

3.8.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 979 .

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


990 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 March, 2022


Examples Guide 991

Lastly, modify the temperature in the environment section to 250 degF.


3.8.3.4 Define the Outflow
The next step is to define the outflows.

The Figure 979 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-2022 Petroleum Experts Limited


992 GAP

Next, generate the VLP curves as shown in the previous examples 889 .

The values to use for the sensitivity parameters are provided below:

GAP User Guide March, 2022


Examples Guide 993

3.8.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-2022 Petroleum Experts Limited


994 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 March, 2022


Examples Guide 995

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


996 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 March, 2022


Examples Guide 997

The GAP model has now been built. Save the file as Oil field_Smart Wells_Final.gap.

3.8.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 914 :


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


998 GAP

3.8.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 March, 2022


Examples Guide 999

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


1000 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 March, 2022


Examples Guide 1001

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


1002 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 March, 2022


Examples Guide 1003

Save the model as Oil Field Smart Well_Final.gap.

1990-2022 Petroleum Experts Limited


1004 GAP

3.9 Example 6 - Electrical Submersible Pump

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 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 March, 2022


Examples Guide 1005

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 801 the archive file in the Initial Files folder to an appropriate directory

The samples files folder can also be accessed from the windows start menu, as
shown below.

3.9.2 Data Available


Description of the wells

1990-2022 Petroleum Experts Limited


1006 GAP

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

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 ESP 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

GAP User Guide March, 2022


Examples Guide 1007

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 .
1014

1990-2022 Petroleum Experts Limited


1008 GAP

Link each well to its corresponding well head and reservoir as shown in the figure below.

GAP User Guide March, 2022


Examples Guide 1009

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 (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 1005 .

1990-2022 Petroleum Experts Limited


1010 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.9.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 March, 2022


Examples Guide 1011

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.9.3.4 Generate Well VLPs
To import the VLP curves in GAP (ref. VLP generation 616 ) 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-2022 Petroleum Experts Limited


1012 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 616 for guidelines on the ranges to use.

As the second method has been widely demonstrated in previous examples 889 , 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 :
1074

GAP User Guide March, 2022


Examples Guide 1013

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


1014 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.9.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 March, 2022


Examples Guide 1015

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.9.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-2022 Petroleum Experts Limited


1016 GAP

Run a forecast with optimisation

3.9.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 914 :


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 918 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 March, 2022


Examples Guide 1017

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


1018 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 March, 2022


Examples Guide 1019

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.
931

1990-2022 Petroleum Experts Limited


1020 GAP

Lastly, we can plot the overall power consumption of the system.

GAP User Guide March, 2022


Examples Guide 1021

3.9.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.9.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-2022 Petroleum Experts Limited


1022 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 March, 2022


Examples Guide 1023

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 1006 shown at the start of the section.

1990-2022 Petroleum Experts Limited


1024 GAP

3.9.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.9.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 914 :

GAP User Guide March, 2022


Examples Guide 1025

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 918 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-2022 Petroleum Experts Limited


1026 GAP

system. GAP honours this constraint by regulating the pump frequencies throughout the forecast
so that 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 March, 2022


Examples Guide 1027

3.10 Example 7a - Gas Lift Optimisation

3.10.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 ) however now the engineers want to
1004

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


1028 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 801 the archive file in the Initial Files folder to an appropriate directory

The samples files folder can also be accessed from the windows start menu:

Click here 1071 to include a gas lift injection network

GAP User Guide March, 2022


Examples Guide 1029

3.10.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
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.10.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.10.3.1 Draw the GAP Network


Extract the GAP archive Oil Field.gar

1990-2022 Petroleum Experts Limited


1030 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 .
1039

Link each well to its corresponding well head and reservoir as shown in the figure below.

GAP User Guide March, 2022


Examples Guide 1031

3.10.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.

1990-2022 Petroleum Experts Limited


1032 GAP

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.

GAP User Guide March, 2022


Examples Guide 1033

Associate the corresponding PROSPER files with each well as shown in Table 1 1029 .

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.10.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.

This can be achieved by first selecting all the 'GL' wells for which the IPRs are to be generated

1990-2022 Petroleum Experts Limited


1034 GAP

by using the Cursor button from the top ribbon.

From the main GAP menu select Generate | Generate Well IPRs from PROSPER, as shown
below.

Click on Generate to launch the IPR generation in batch mode.

GAP User Guide March, 2022


Examples Guide 1035

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 screenshot:

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'

1990-2022 Petroleum Experts Limited


1036 GAP

Repeat the above steps for all 'GL' wells.

When completed, click on OK to get back to the GAP main screen.


3.10.3.4 Generate Well VLPs
To import the VLP curves in GAP (ref. VLP generation 616 ) 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.
In this case a range of values need to be entered and as the wells are gas lifted wells then
there is an additional variable (the Injected Gas Liquid Ratio) that must be included.

When VLPs are generated for artificially lifted 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.

GAP User Guide March, 2022


Examples Guide 1037

Please refer to the VLP generation 616 section for guidelines on the ranges to use for GLR
injected.

As the second method has been widely demonstrated in previous examples 889 , and the VLP

1990-2022 Petroleum Experts Limited


1038 GAP

curves have already been generated, we will adopt the first approach.

To import the VLPs, access the VLP section of the well by going to Input | VLP and 'Browse'
for the corresponding '*.vlp' file according to Table 1 , as shown below.
1074

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.

Click on the 'Inspect' button and then 'Plot' to verify the quality of the curves.

GAP User Guide March, 2022


Examples Guide 1039

Repeat the above steps for all of the other gas lifted wells to import the VLPs and quality check
them to ensure they are smooth.

3.10.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 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 whereas the gas

1990-2022 Petroleum Experts Limited


1040 GAP

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,000 STB/day. To do this we will modify the maximum liquid constraint at the separator from
20,000 STB/day to 30,000 STB/day.

The steps that will be 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 open the input screen and then navigate to
'Schedule' by going to Input | Schedule - as shown below.

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 wells are stopped on the 01/02/2013.

GAP User Guide March, 2022


Examples Guide 1041

Lastly, the separator constraint should be modified to 30,000 STB/day in the schedule section of
the separator element.

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 - as shown below.

The GAP model has now been built. Save the file as Oil field GL.gap.

3.10.4 Fixed Gas lift Gas Injection


In this 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 . 1029

1990-2022 Petroleum Experts Limited


1042 GAP

3.10.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 well
input screen and navigate to Input | Control tab.

Set the dP Control to 'None' and the Control Mode (in the Gaslift Control section) to a 'Fixed
value' of 1 MMscf/day which is provided in Table 1 . This will ensure that this well will be
1029

injected with a constant rate of 1 MMscf/day 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 .1029

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.

GAP User Guide March, 2022


Examples Guide 1043

Note that the wells' 'Control' 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' 'Control' 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 914 :


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).
Insert the amount of gaslift gas available: 10 MMscf/day

With the optimisation mode set to 'Optimise with All Constraints'.


With the snapshots saved at each prediction step (Refer to Question 4 918 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 gas

1990-2022 Petroleum Experts Limited


1044 GAP

lifted wells come online they will operate at a fixed gas injection rate with 0 psig dP choke on the
wells (i.e. the wells will be fully open).

Once the calculation is finished, save the prediction results by selecting Prediction | Save
Prediction Results As...

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 March, 2022


Examples Guide 1045

The gas lifted wells remain masked and the naturally flowing wells are all producing. The
following snapshot shows the network on 01/02/2013.

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 Nodes
Prediction Results we can observe the gas lifted wells coming online on the 01/02/2013.

1990-2022 Petroleum Experts Limited


1046 GAP

Additionally, we can see the impact of the separator constraint. The system can produce above
20,000 STB/day as soon as the facilities are upgraded on the 01/02/2013.

GAP User Guide March, 2022


Examples Guide 1047

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. 931

1990-2022 Petroleum Experts Limited


1048 GAP

3.10.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.10.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 March, 2022


Examples Guide 1049

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.10.5.2 Set Maximum Gas Lift Available
To set the maximum gas lift gas that is available, select Prediction | Run Prediction from the
main GAP menu and then run through the forms until the following screen appears.

1990-2022 Petroleum Experts Limited


1050 GAP

Enter a value of 10MMscf/day. This will ensure that total gas lift gas that is allocated amongst
the wells will not exceed 10MMscf/d.

3.10.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 914 :


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 918 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.

GAP User Guide March, 2022


Examples Guide 1051

The following plot shows the gas lift injection rates for the wells over the course of the prediction.

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


1052 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 1 MMscf/day 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 March, 2022


Examples Guide 1053

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


1054 GAP

And if we compare the cumulative oil production with the new optimiser settings we observe no
difference in the totals.

GAP User Guide March, 2022


Examples Guide 1055

1990-2022 Petroleum Experts Limited


1056 GAP

3.11 Example 7b - MultiPoint Gas Lift Optimisation

3.11.1 Objectives
Definition of the Problem

In an onshore field comprised of two wells, one naturally flowing the other gas lifted, with
additional gas lift gas having become available (maximum of 2mmscf/day), due to other wells in
the system having been abandoned, the gaslift allocation is to be optimised to ensure the
production is maximised.

The gaslift system was designed for a WCT of 30% and Total GOR of 300scf/stb, a reservoir
pressure of 3000psig, a well head pressure of 230 psig and a casing head pressure 1150 psig,
with a total of 4 gas lift valves being required and an orifice of 14 64thin. Over time, the WCT has
increased to 40% and from a recent study using Quicklook, the orifice was found to be acting
like it was only 11 64thin. Currently around 0.615MMscf/day of gaslift gas is injected into Well 2
and the separator pressure is 200psig.

The engineer has been tasked with building a GAP model of the system in question and using
this to optimise the gaslift allocation.

Learning topics
The objectives of this example are to learn how to:
Perform network optimisation
Quality check the recommendations in PROSPER
Optimise the network performance, accounting for possible multipointing behaviour.

Executive Summary

After building the model, an initial allocation will be performed to asses how much of the
available gas lift gas could be used. The optimised allocation will then be quality checked within
PROSPER to verify that the gas can be injected, and if required, the gas lift allocation will then
be reviewed.

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 7b - MultiPoint Gas Lift Optimisation
Extract 801 the archive file in the Initial Files folder to an appropriate directory

The samples files folder can also be accessed from the windows start menu:

GAP User Guide March, 2022


Examples Guide 1057

Click here 1071 to include a gas lift injection network

3.11.2 Data Available


Extract the archive file MultiPoint.gar to start the exercise.

3.11.3 Base Case


Before performing the optimisation, it is important to establish a base case, which can be used
as a base case to compare the optimised production to. To generate the base case:

Within Well 2, set the Gaslift Control Mode to "Fixed Value" and specify a Gaslift Injection Rate
of 0.615MMscf/day (via Input | Control)

1990-2022 Petroleum Experts Limited


1058 GAP

Return to the main screen and navigate to Solve Network | Run Network Solver...
Specify the Gas available to be 2MMscf/day then press Next

Specify the separator pressure as 200psig

GAP User Guide March, 2022


Examples Guide 1059

Select "No Optimisation" then press calculate

Upon returning to the main screen, the cursor tool can be used to find the total field liquid
production by hovering above the separator element, see below. With 0.615MMscf/day of gaslift
gas being injected, the total liquid rate can be seen to be around 8000stb/day.

1990-2022 Petroleum Experts Limited


1060 GAP

3.11.4 Initial Optimisation


Now that the base case has been established, the next step will be to allow GAP to determine
the allocation that allows the production to be maximised. To perform the optimisation:

Within Well 2, set the Gaslift Control Mode to "Calculated" (via Input | Control)

Return to the main screen and navigate to Solve Network | Run Network Solver...| Next | Next
Select "Optimise with full constraints" and then press Calculate

GAP User Guide March, 2022


Examples Guide 1061

Upon returning to the main screen, the cursor tool can be used to find the total field liquid
production by hovering above the separator element, see below. After the optimisation, it can be
seen that all of the available lift gas (i.e. 2MMscf/day) should be injected into Well2, yielding a
total liquid rate at the separator of around 8841 stb/day - an increase of almost 600 stb/day
compared to the Base Case.

From the well solver results, it can be seen that the Casing Head Pressure required to inject the
2MMscf/day is around 2970psig and the well head pressure is around 213psig.

1990-2022 Petroleum Experts Limited


1062 GAP

As this is significantly higher than the design casing head pressure of 1150 psig, there are
concerns that the higher casing pressure may result in some of the gas lift valves reopening gas
being injected at multiple points along the wellbore - Multi-Pointing. Before implementation in the
field, the optimisation recommendations are to be further analysed to verify that stable injection
through the orifice can be achieved.
3.11.5 Optimisation Quality Check
To analyse whether injection occurs via the orifice or whether the valves along the wellbore start
opening as the casing head pressure is increased, the full dynamics (i.e. throttling behaviour)
must be captured. Within PROSPER this can be modelled using the Multipoint gaslift method
and the the Petex valve model.

For further information on matching the valve dynamics using the Petex valve model please refer
to Tutorial 23b in the PROSPER User Guide.

Navigate to the Well2 Summary screen and press Run PROSPER to open the
corresponding PROSPER file.

GAP User Guide March, 2022


Examples Guide 1063

In PROSPER, navigate to the Gaslift Input Data via System | Gaslift Data
Set the Gas Lift Method to "Multipoint" - the valve data has already been entered.
Adjust the Casing Pressure to 2970psig

Press Done to return to the main screen, then navigate to the System calculation via
Calculation | System (IPR +VLP)

1990-2022 Petroleum Experts Limited


1064 GAP

Update the Top Node Pressure to 213 psig and the WCT to 40%
Press calculate to determine the well performance and status of the individual valves at the
specified conditions

From the calculation results, it can be seen that at a Casing Pressure of 2970 psig, all valves
along the wellbore will be open, injecting a total of 9.2 MMscf/day, greatly exceeding the
available gaslift gas. In this respect, to ensure the calculated gaslift rate can be injected in reality
and corresponds to the optimum, the gas dynamics must also be considered when performing
optimisation in GAP.

Next, press Done to return to the main PROSPER screen and press GAP to save the changes
and return to GAP.

GAP User Guide March, 2022


Examples Guide 1065

3.11.6 MultiPoint Optimisation


Now that the Multipoint option has been enabled within PROSPER, to ensure that the valve
dynamics are considered as part of the gaslift allocation optimisation, the lift curves for Well2
must be regenerated.

Enable the Use Casing Pressure (via Well 2 | Summary)


Select the MultiPoint option

Navigate to Input | VLP by pressing the VLP button


Navigate to Generate | Data and sensitivities for the Casing Pressure (min value = 1000 psig,
max value = 3000 psig, geometric spacing for ten values)

1990-2022 Petroleum Experts Limited


1066 GAP

Press OK, then Generate to calculate the multi-pointing VLPs

When calculating the well performance with the MultiPoint option enabled, the gaslift rate is
calculated on the basis of the casing head pressure. Before continuing with the optimisation, it is
therefore a good idea to validate that the interpolation of the VLPs gives consistent results to
PROSPER.

Navigate to the Input | Control tab and set the Casing Pressure Control to "Fixed Value" and
specify the previously determined casing head pressure of 2980psig.

GAP User Guide March, 2022


Examples Guide 1067

Calculating the network performance (via Solve Network | Run Network Solver...), the calculated
Gas Lift Rate can be seen to be consistent with the value of 9.2 MMscf/day calculated in
PROSPER.

1990-2022 Petroleum Experts Limited


1068 GAP

With the above in place, the optimisation can now be performed by changing the Casing
Pressure Control to "Calculated".

GAP User Guide March, 2022


Examples Guide 1069

Now that the well has been configured to also account for the valve dynamics, when calculating
the system performance, the optimisation can be recalculated.

Navigate to Solve Network | Run Network Solver and calculate the network performance using
the "Optimise with all constraints" Solver Mode, see below.

1990-2022 Petroleum Experts Limited


1070 GAP

The cursor can be used view the results from the main canvas.

From the results it can be seen that whilst like before the full 2MMscf/day are being injected, the
gains in Oil Rate are significantly less (just 50 stb/day as opposed to 600stb/day). The difference
in gains between the two optimisation cases is that the first approach of assuming a fixed depth
of injection is not valid for the well in question as raising the casing pressure to inject more gas
results in valves further up the wellbore opening and beginning to inject. Hence, although more
gas is being injected, the reduction in fluid density and in turn the reduction in bottom hole
pressure is less, meaning smaller gains in production can be expected.

This concludes Example 7b and the file can now be saved by going to File | Save As.

GAP User Guide March, 2022


Examples Guide 1071

After completion of Example 7b, the user should be able to perform the following analysis:

Perform gas lift optimisation in GAP assuming fixed depth of injection


Validating the recommendations using the MultiPoint gas lift option in PROSPER
Model a well using MultiPoint VLPs and perform gas lift optimisation in GAP

3.12 Example 8 - Gas Lift Injection Network


The previous example 1027described 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 model.
3.12.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/day 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.

1990-2022 Petroleum Experts Limited


1072 GAP

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 be 10 MMscf/day. The GAP optimisation algorithm will be used to
determine 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 be 10 MMscf/day until the total produced gas drops below 10 MMscf/
day. 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 be 10 MMscf/day 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

GAP User Guide March, 2022


Examples Guide 1073

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 two compressors mounted on the same shaft and controlled through the
'Control Group' equipment (new feature in IMP 11).
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.

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 801 the archive file in the Initial Files folder to an appropriate directory

The samples files folder can also be accessed from the windows start menu, as
shown below. This file contains worked examples for all the IPM tools.

1990-2022 Petroleum Experts Limited


1074 GAP

3.12.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 -

GAP User Guide March, 2022


Examples Guide 1075

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
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 Compressors

The performance curves of the compressors 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.12.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 ). The basic assumption being that there is sufficient
1036

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

1990-2022 Petroleum Experts Limited


1076 GAP

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
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'.

GAP User Guide March, 2022


Examples Guide 1077

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.12.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 1074 ), therefore the steps
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

1990-2022 Petroleum Experts Limited


1078 GAP

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.

At approximately 630 STB/day and 10250 STB/day, the injection point changes and step
changes in the pressure profile are observed. If the VLPs were generated for the same
conditions but for a different range of rates then these events will not be captured with sufficient
resolution and there will be large interpolation errors if the intersection with the IPR falls within
these regions.

GAP User Guide March, 2022


Examples Guide 1079

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 lifted wells, double-click on the wells
to activate the System Summary screen and select 'VLP' and then click on the 'Inspect' button
as shown below.

1990-2022 Petroleum Experts Limited


1080 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 pressure and therefore the producing GOR will remain constant
throughout the prediction.

3.12.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 navigate
to Input | Control tab. 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 March, 2022


Examples Guide 1081

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.12.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-2022 Petroleum Experts Limited


1082 GAP

3.12.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, go to Options | M ethod 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 March, 2022


Examples Guide 1083

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


1084 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 793 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.

GAP User Guide March, 2022


Examples Guide 1085

The network will be drawn from upstream to downstream defining the gas injection manifold first.
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.

Gas lift 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-2022 Petroleum Experts Limited


1086 GAP

The Joints
Twelve joints will be created:
One joint to represent the inlet of the first compressor ("P_s")
One joint to represent the outlet of the first compressor and inlet of the second compressor
("P_int")
One joint to represent the outlet of the second compressor ("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.

The Compressor
To add the two compressors, select the compressor icon from the main toolbar and place
them between joints "P_s" and "P_int" for 'Compressor_1', "P_int" and "P_d" for

GAP User Guide March, 2022


Examples Guide 1087

'Compressor_2'.

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'.

1990-2022 Petroleum Experts Limited


1088 GAP

Repeat this procedure for all of the other wells in the system.

Some useful tips

1. To move an element of the network to a new location on the screen, hover the mouse

GAP User Guide March, 2022


Examples Guide 1089

arrow over the element to be moved and press the left mouse button and the Shift key.
Keep the left mouse button pressed and move the element to the new location. Releasing
the left mouse button will then position the element in the new location. This can also be
achieved by selecting from the main toolbar
2. Elements can be deleted by selecting the scissors icon from the toolbar menu and
clicking on the element 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:

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. In fact, the 'Control Group' equipment will be added
later in the section where the compressors' curves will be defined.

The GAP screen display should look something like the screenshot below:

1990-2022 Petroleum Experts Limited


1090 GAP

3.12.4.2 Define the Wellheads and Delivery Station


Double click on the sink "Well1A_GL" 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 March, 2022


Examples Guide 1091

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


1092 GAP

3.12.4.3 Define the Pipelines and Surface Equipment


Table 1 1074 contains the information about all of the pipelines in the field.

According to the network sketch , the wells Well1A, Well2A and Well3A are tied back to
1081

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

GAP User Guide March, 2022


Examples Guide 1093

Gravity Coefficient: 1
Friction Coefficient: 1

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
computationally 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
Go to Input | Environment tab to access the screen which allows to define the pipeline
environment and then enter the following values.

1990-2022 Petroleum Experts Limited


1094 GAP

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)

Repeat this for all of the flowlines in the system.

Pipe Description
To define the pipeline dimensions select the Input | 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

GAP User Guide March, 2022


Examples Guide 1095

km Inches ft ft Inches -

Manifold_A to 1 6 600 600 0.0006 Beggs and Brill


WH1_A

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.

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 -

1990-2022 Petroleum Experts Limited


1096 GAP

Manifold_A to 7.5 6 600 525 0.0006 Beggs and Brill


Manifold_B

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

GAP User Guide March, 2022


Examples Guide 1097

P_d to Manifold_B 3 6 480 525 3 Beggs and Brill

The figure on the right hand side allows the user to define which node
is upstream and which is downstream in the system:

1990-2022 Petroleum Experts Limited


1098 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 March, 2022


Examples Guide 1099

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


1100 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.

GAP User Guide March, 2022


Examples Guide 1101

Repeat the above procedure to define all of the remaining well flowlines.

This completes the pipeline description for the gas lift injection network.

Injection manifold
Double-click on the injection manifold and navigate to Input | Fluid to enter an injection fluid
temperature of 60 deg F.

1990-2022 Petroleum Experts Limited


1102 GAP

Lastly, define the injected gas properties by clicking on the 'Edit List' button. In this case, the
default PVT properties will be used.

GAP User Guide March, 2022


Examples Guide 1103

3.12.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.

1990-2022 Petroleum Experts Limited


1104 GAP

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 principle 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.

GAP User Guide March, 2022


Examples Guide 1105

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.

1990-2022 Petroleum Experts Limited


1106 GAP

Ensure that the units are consistent.

GAP User Guide March, 2022


Examples Guide 1107

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


1108 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.

GAP User Guide March, 2022


Examples Guide 1109

Provided the compressor is controllable, then GAP will regulate the rotational speed of the
compressor in order to honour these operating limits.

When modelling a single compressor within the network, it is possible and required to define
how the compressor speed is going to be controlled by selecting the Input | Control tab. For
example, if 'Compressor_1' was not mounted on the same shaft with 'Compressor_2', we would
set the Speed Control of 'Compressor_1' to 'Calculated' and enter the minimum/maximum
speed limits of 8000 rpm and 20000 rpm respectively - as shown below. A value for 'Actual
Speed' (20000 rpm for example) should be entered. With Speed Control set to 'Calculated',
this value is needed just for initialisation of the solver.

1990-2022 Petroleum Experts Limited


1110 GAP

However, as in this case both compressors are mounted on the same shaft and will therefore
operate at the same speed, it is not necessary to define the 'Control' for each compressor. This
will be done in the 'Control Group' equipment as further explained towards the end of this
section.

Note that the 'Control Group' equipment is a powerful new feature


introduced in IPM 11.

Repeat the above procedure for 'Compressor_2' which has only one stage and the same
performance curve as 'Compressor_1'.

GAP User Guide March, 2022


Examples Guide 1111

To add the 'Control Group' equipment that will allow the two compressors (mounted on the
same shaft) to operate at the same speed during the optimisation, click on the 'Group' icon
. Then click on the canvas (near the two compressors) and select 'Control Group' in the window
that appears - as shown below.

1990-2022 Petroleum Experts Limited


1112 GAP

Enter the equipment label name as 'ControlGroup'. To make the compressors members of the
'Control Group' equipment, use the 'link/pipe' element to connect the compressors to the
'Control Group' equipment. Left click on the compressor first and then with the left mouse
button maintained pressed, move to the 'Control Group' and release the mouse button. A dash
line with an arrow in the middle will appear to indicate that the connection has been made - as
shown below.

GAP User Guide March, 2022


Examples Guide 1113

To define how both compressors' speed is going to be controlled double click on the 'Control
Group' element and navigate to the Input | Control tab. Set the Speed Control to 'Calculated'
and enter the minimum/maximum speed limits of 8000 rpm and 20000 rpm respectively - as
shown below. A value for 'Actual Speed' (20000 rpm for example) should be entered. With
Speed Control set to 'Calculated', this value is needed just for initialisation of the solver.

1990-2022 Petroleum Experts Limited


1114 GAP

GAP will now be able to regulate the speed of both compressors between these limits in order to
maximise the oil production. Thanks to the 'Group Control' equipment, both compressors will
always operate at the same speed reflecting the fact that they are mounted on the same shaft.

The GAP model has now been built. Save the file as GL Network.gap.

GAP User Guide March, 2022


Examples Guide 1115

3.12.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-2022 Petroleum Experts Limited


1116 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.

The program knows now that each well corresponds to a sink element. 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 (through File | Save As) naming the production model as Oil Production with
GL Network.gap.

GAP User Guide March, 2022


Examples Guide 1117

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.12.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 .
1071

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).

1990-2022 Petroleum Experts Limited


1118 GAP

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 . This can be done dynamically
1071

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 the 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.

GAP User Guide March, 2022


Examples Guide 1119

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 is 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'.

1990-2022 Petroleum Experts Limited


1120 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 available gas lift gas is displayed below.

GAP User Guide March, 2022


Examples Guide 1121

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.

3.12.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 separator and gas inj. manifold pressures set to 200 psig.
With the optimisation mode set to 'Optimise with All Constraints'.
Enable the prediction snapshot in the settings.

1990-2022 Petroleum Experts Limited


1122 GAP

3.12.6.1 Case 1
Once the calculation is finished, save the prediction results by going to Prediction | Save
Prediction Results As.

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 be 10 MMscf/day.

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 10 MMscf/day and
we can verify that the volume of gas 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.

GAP User Guide March, 2022


Examples Guide 1123

From the plot its clear that around 01/12/2016 the gas production falls below 10 MMscf/day and
it is not possible to honour the contract.

1990-2022 Petroleum Experts Limited


1124 GAP

3.12.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 be 10 MMscf/day until the total produced gas drops below 10 MMscf/day. 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 10 MMscf/day is that wells connected to Reservoir B will be
switched to Fixed Control and the Gas Injection Rate will be set to 0 MMscf/day. The below
figure is for illustration only and the gaslift control mode should not be manually changed. This will
be done automatically via the prediction script.

This will be captured by modifying the script as shown below.

GAP User Guide March, 2022


Examples Guide 1125

The script can be imported as a file which is 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:

1990-2022 Petroleum Experts Limited


1126 GAP

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 separator and gas inj. manifold pressures set to 200 psig.
With the optimisation mode set to 'Optimise with All Constraints'.

Once the calculations are complete save the prediction results.

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.

GAP User Guide March, 2022


Examples Guide 1127

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 -
as shown below.

1990-2022 Petroleum Experts Limited


1128 GAP

It can be noted that "Well3B_GL" produces around 270 STB/day from 01/06/2017 to
01/03/2019. This production is achieved with a very marginal VLP/IPR intersection that can be
identified by reloading the prediction snapshot - as shown below. It is expected that the wells in
reservoir B have different responses as the depths of the gas lift valves are not the same in
these wells.

GAP User Guide March, 2022


Examples Guide 1129

This development strategy is therefore undesirable as it gives less production.

1990-2022 Petroleum Experts Limited


1130 GAP

3.12.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 10 MMscf/day. At which
point all of the allocated gas lift gas will be increased to 15 MMscf/day 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 10 MMscf/day is the Gas Lift Available will be increased to 15
MMscf/day.

This will be captured by modifying the script as shown below.

GAP User Guide March, 2022


Examples Guide 1131

The script can be imported as a file which is 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'.

1990-2022 Petroleum Experts Limited


1132 GAP

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 separator and gas inj. manifold pressures set to 200 psig.
With the optimisation mode set to 'Optimise with All Constraints'.

Once the calculations are complete, save the prediction results.

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.

GAP User Guide March, 2022


Examples Guide 1133

The above plot indicates that there is effectively no gain in increasing the gas lift gas 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 two physical
compressors mounted on the same shaft 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-2022 Petroleum Experts Limited


1134 GAP

3.13 Example 9a - LNG (Fully Compositional)

3.13.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 an 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 March, 2022


Examples Guide 1135

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)

The samples files folder can also be accessed from the windows start menu,
as shown below.

Click here 1189 to set the model to Black Oil compositional lumping/delumping
3.13.2 Data Available
Description of the Wells

In this example, the Forcheimer Pseudo Pressure Method will be used to 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

1990-2022 Petroleum Experts Limited


1136 GAP

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

GAP User Guide March, 2022


Examples Guide 1137

3.13.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.

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 | M ethod and make the following

1990-2022 Petroleum Experts Limited


1138 GAP

selections:

System Type : Production


Optimisation Method : Production
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
Water Viscosity Correlation Use Default Correlation

GAP User Guide March, 2022


Examples Guide 1139

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.

The improved approximation temperature model will be used to calculate 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.
Hydrate model: Hydrafact Modified Cubic
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-2022 Petroleum Experts Limited


1140 GAP

Then click on OK to accept the changes.

Note that the options above are described in detail in the manual 182 .

GAP User Guide March, 2022


Examples Guide 1141

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 808 which provide step by step instructions of how to include the individual
elements that make up the system.

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.

1990-2022 Petroleum Experts Limited


1142 GAP

Ensure that the LNG Process Plant 383 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.

GAP User Guide March, 2022


Examples Guide 1143

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.13.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.

1990-2022 Petroleum Experts Limited


1144 GAP

3.13.3.3 Setting up MBAL as compositional

In this section the existing MBAL model "reservoir_start.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 right corner of the window - as shown below.

GAP User Guide March, 2022


Examples Guide 1145

Once the MBAL file is open, access 'Options' from the main tool bar and set the
'Compositional Model' to 'Fully Compositional.'

1990-2022 Petroleum Experts Limited


1146 GAP

Enter the 'EOS Model Setup' options and enter the same PVT information as was entered in
GAP.

GAP User Guide March, 2022


Examples Guide 1147

Note that when linking a fully compositional MBAL model to GAP, MBAL will automatically use

1990-2022 Petroleum Experts Limited


1148 GAP

the EOS settings defined in GAP as it is the master controller.


3.13.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 *.PRP file and imported in MBAL.

The .prp file has been pre-generated from PVTP and can be found in the Sample files folder.

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.

Select the 'Gas' tab and then 'Edit Compostion' to import the .prp file as shown below.

GAP User Guide March, 2022


Examples Guide 1149

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.

1990-2022 Petroleum Experts Limited


1150 GAP

Click on OK and ensure that all the other tabs have been validated.

GAP User Guide March, 2022


Examples Guide 1151

Note: In the case shown above, the gas composition that has been entered
contains the 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 'Oil Leg (downhole ratio)' equal to zero, as the
reservoir is initially above the dew point.

1990-2022 Petroleum Experts Limited


1152 GAP

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:

GAP User Guide March, 2022


Examples Guide 1153

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.13.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.

1990-2022 Petroleum Experts Limited


1154 GAP

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
Mask: Include in System (default)
Well Type: Retrograde Condensate Producer
Model: VLP/IPR intersection
PROSPER file: Well1.OUT

GAP User Guide March, 2022


Examples Guide 1155

PLEASE MAKE SURE THAT THE WELL TYPE IS DEFINED AS


"Condensate Producer"

Complete all the wells according to the data provided in Table 1 875 .

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

1990-2022 Petroleum Experts Limited


1156 GAP

PROSPER manual for details about the validation steps.

3.13.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 and importing the file
directly - as shown below:

Alternatively, access the Edit | Import Compositions from the main GAP toolbar and then

GAP User Guide March, 2022


Examples Guide 1157

select all the wells and 'Import EOS Options'.

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


1158 GAP

3.13.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 March, 2022


Examples Guide 1159

By double-clicking on any of the wells and selecting the Input | 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 set the Prediction Fractional
Flow Model to be 'From Tank Model'. This is important to determine the distribution of the
different fluid phases (i.e. the WGR and GOR).

1990-2022 Petroleum Experts Limited


1160 GAP

3.13.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 889 .

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 navigate to the Input | VLP tab - as shown below.

GAP User Guide March, 2022


Examples Guide 1161

Click on the 'Import' button 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.13.3.5 Define the LNG Plant


To define the LNG Plant, double-click on the element and navigate to the Input | Plant Process
tab - as shown below.

1990-2022 Petroleum Experts Limited


1162 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 March, 2022


Examples Guide 1163

3.13.3.6 Define the Pipelines


Enter the pipeline data according to Table 2 1135 and following the same steps as seen in
previous examples .
1092

1990-2022 Petroleum Experts Limited


1164 GAP

In the 'Improved Approximation' method, the user has the option to define a heat transfer
coefficient for each segment of pipe. If 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.13.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:

Going to the Input | Control tab 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 'Control' tab section in the well input area:

GAP User Guide March, 2022


Examples Guide 1165

Ensure that all of the wells in the system are made controllable.

3.13.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 918 ):

LNG Plant Schedule

1990-2022 Petroleum Experts Limited


1166 GAP

Separator Schedule

Water Schedule

The model is now complete and ready to run.

Save the model as GAP fully compositional.gap.

3.13.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'.

GAP User Guide March, 2022


Examples Guide 1167

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.

1990-2022 Petroleum Experts Limited


1168 GAP

Pointing the cursor on the separator, it is possible to see that the wells fully open produce overall
around 2771 tonne/day of LNG and 2942 tonne/day of Condensate.

GAP User Guide March, 2022


Examples Guide 1169

The results also show the composition in each point of the system.

3.13.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).

1990-2022 Petroleum Experts Limited


1170 GAP

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 'View'
in the Composition column:

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 click on the 'Calculate Hydrate...Wax' button.

GAP User Guide March, 2022


Examples Guide 1171

Selecting 'Plot' then enables the user to see the pipeline pressure and temperature profile
relative to the hydrate formation curve.

1990-2022 Petroleum Experts Limited


1172 GAP

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.

GAP User Guide March, 2022


Examples Guide 1173

3.13.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-2022 Petroleum Experts Limited


1174 GAP

Select Next | Next and enter pressures of 1000 psig for each separator. Select Next and then
set the prediction mode to 'No Optimisation' and then 'Calculate':

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 |

GAP User Guide March, 2022


Examples Guide 1175

Save Prediction Results As...

1990-2022 Petroleum Experts Limited


1176 GAP

3.13.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.

GAP User Guide March, 2022


Examples Guide 1177

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.

1990-2022 Petroleum Experts Limited


1178 GAP

The profiles of ethane and propane can also be plotted in the same way.

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.

This can be verified by inspecting the composition of the fluid in the reservoir. To access the

GAP User Guide March, 2022


Examples Guide 1179

reservoir composition, double click on the reservoir element and go to the prediction results
(Results | Prediction). Within this window, select 'Load MBAL Results' which will provide the
full detailed results of the prediction that are associated with the MBAL model.

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

1990-2022 Petroleum Experts Limited


1180 GAP

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') and navigate to Results |
Prediction.

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. There is also risk of wax deposition.

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.

GAP User Guide March, 2022


Examples Guide 1181

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.

1990-2022 Petroleum Experts Limited


1182 GAP

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.

GAP User Guide March, 2022


Examples Guide 1183

Re-calculate the hydrate curve and plot the results.

1990-2022 Petroleum Experts Limited


1184 GAP

The inclusion of 10% methanol removes the risk of hydrates. However, there is still the possibility
of wax formation in the flowlines 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.

GAP User Guide March, 2022


Examples Guide 1185

In the 'EOS Model Setup', click on the 'Water Composition' button.

1990-2022 Petroleum Experts Limited


1186 GAP

Enter the methanol concentration in the Inhibitors section as shown below.

GAP User Guide March, 2022


Examples Guide 1187

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. The wax deposition risks remain though.

1990-2022 Petroleum Experts Limited


1188 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 March, 2022


Examples Guide 1189

3.14 Example 9b - LNG (Black Oil Compositional


Lumping-Delumping)

3.14.1 Objectives
Definition of the Problem
In the case of the system described in the previous example it is still required to know the
1134

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 200 method which is one of the advanced PVT options available in GAP.

The requirements of the model are:

To determine the composition (EOS) at 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 . 1134

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/delumping.
Compare the results obtained using Black Oil compositional Lumping/Delumping and
Fully Compositional.

Executive Summary
The starting point is the model built in the previous example.
1137

The steps to follow will be to:


1. Set the GAP model up to work with the Black Oil compositional Lumping/
Delumping 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 801 the archive file in the 'Completed' folder of Example 9a to an
appropriate directory

1990-2022 Petroleum Experts Limited


1190 GAP

The samples files folder can also be accessed from the windows start menu,
as shown below.

3.14.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.14.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 - as shown below:

GAP User Guide March, 2022


Examples Guide 1191

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


1192 GAP

Note that in the EOS Model Setup options, it is possible to enable the Lumping options (in case
a pair of associated lumped/de-lumped compositions is available, see further ).
1199

GAP User Guide March, 2022


Examples Guide 1193

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.14.4 Running the Prediction


Run the prediction as in the previous example 1173 .

1990-2022 Petroleum Experts Limited


1194 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 70%.

To save the prediction results select Prediction | Save Prediction Results As...

GAP User Guide March, 2022


Examples Guide 1195

3.14.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.

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.

1990-2022 Petroleum Experts Limited


1196 GAP

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
compositional run.

From the same plot it is possible to compare the evolution of methane using both methods.

GAP User Guide March, 2022


Examples Guide 1197

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

And Propane

1990-2022 Petroleum Experts Limited


1198 GAP

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_Compositional_Lumping-Delumping.gap

GAP User Guide March, 2022


Examples Guide 1199

3.14.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 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.

1990-2022 Petroleum Experts Limited


1200 GAP

3.15 Example 10 - Tight Gas

3.15.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

GAP User Guide March, 2022


Examples Guide 1201

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\Sector B_Initial.gar
Extract 801 the archive file from the Initial Files folder

The samples files folder can also be accessed from the windows start menu,
as shown below.

1990-2022 Petroleum Experts Limited


1202 GAP

3.15.2 Data Available


Description of the pipelines

Label Pipe Pipe Upstrea Downstre Overall Heat Multiphase


segm ID m TVD am TVD Transfer Correlation
ent Coefficient
Lengt
h
ft Inch ft ft Btu/h/ft2/F -
es
WH2_A to Manifold A2 700 2.74 0 0 3 Petroleum Experts 5
3
WH3_A to Manifold A1 200 2.74 0 0 3 Petroleum Experts 5
3
WH4_A to Manifold A2 750 2.74 0 0 3 Petroleum Experts 5
3
WH5_A to Manifold A1 1000 2.74 0 0 3 Petroleum Experts 5
3
WH6_A to P_in 500 2.74 0 0 3 Petroleum Experts 5
3
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 1150 4 0 0 3 Petroleum Experts 5
P_in

Table 1 Pipeline description

Description of the reservoirs

GAP User Guide March, 2022


Examples Guide 1203

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'.

Sector B Model

A pre-constructed GAP model of Sector B is provided in the Sector B_Initial.gar file. Extract
the model before starting the exercise.
3.15.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.

1990-2022 Petroleum Experts Limited


1204 GAP

3.15.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 | M ethod 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: Off
Water Vapour: No Calculations
Temperature Model: Rough Approximation
Calculate Well Choke Delta T: Off

GAP User Guide March, 2022


Examples Guide 1205

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 808 which provide step by step instructions of how to include the individual
elements that make up the system.

1990-2022 Petroleum Experts Limited


1206 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.15.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 steady 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 March, 2022


Examples Guide 1207

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 'Transient IPR' option is ticked.

1990-2022 Petroleum Experts Limited


1208 GAP

Complete all the wells according to the data provided in Table 1 1202 .

3.15.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
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' by going to Input | IPR | IPR Layer tab 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 below.

GAP User Guide March, 2022


Examples Guide 1209

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


1210 GAP

Note that there is now the functionality to include any PD vs. TD function to describe the well and
reservoir geometry in a tight gas system.

GAP User Guide March, 2022


Examples Guide 1211

This function can be generated through the applications in REVEAL and RESOLVE that allow 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-2022 Petroleum Experts Limited


1212 GAP

Repeat this procedure for all of the wells in the system.

3.15.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 889 .

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

GAP User Guide March, 2022


Examples Guide 1213

these files, double click on 'Well1A' and then navigate to Input | VLP tab.

Click on the 'Import' button 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.15.3.3 Define the Pipelines


Enter the pipeline data according to Table 2 1202 and following the same steps as seen in
previous examples . 1092

1990-2022 Petroleum Experts Limited


1214 GAP

Once the pipelines are defined the model is complete and ready to run.

Save the model as Sector A.gap.

3.15.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 March, 2022


Examples Guide 1215

Pointing the cursor on the separator element, it is possible to see that the wells fully open
produce approximately 10.5 MMscf/day

3.15.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

1990-2022 Petroleum Experts Limited


1216 GAP

compressor station. To do this requires a partial GAP file to be created which will then be
imported into the main model which has already been constructed.
3.15.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'. After saving the file, close the model.
3.15.5.2 Import Partial GAP file
Open the Sector B.gap file.

GAP User Guide March, 2022


Examples Guide 1217

The .gpp file is going to be imported into a 'flowsheet 586 '. 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 - as shown below.

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


1218 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 March, 2022


Examples Guide 1219

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.15.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 . 1103

3.15.6.1 Including the Compressor


The first case that will be considered includes the compressor.

1990-2022 Petroleum Experts Limited


1220 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.6 MMscf/day.

3.15.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.

GAP User Guide March, 2022


Examples Guide 1221

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


1222 GAP

From the results it can be confirmed that the gas production is 19.3 MMscf/day and that there is
a benefit of roughly 0.3 MMscf/day 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.

GAP User Guide March, 2022


Examples Guide 1223

For example, the impact of the compressor is to reduce the pressure at 'P_in' to approximately
190 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.

1990-2022 Petroleum Experts Limited


1224 GAP

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 100 psig to 190 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)

GAP User Guide March, 2022


Examples Guide 1225

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.

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.

1990-2022 Petroleum Experts Limited


1226 GAP

3.16 Example 11 - Coal Bed Methane

3.16.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.

GAP User Guide March, 2022


Examples Guide 1227

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 801 the archive file from the Initial Files folder

The samples files folder can also be accessed from the windows start menu,
as shown below.

3.16.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 -

1990-2022 Petroleum Experts Limited


1228 GAP

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.
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.16.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.

GAP User Guide March, 2022


Examples Guide 1229

3.16.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
Water Vapour: No Calculations
Temperature Model: Rough Approximation
Calculate Well Choke Delta T: Off

1990-2022 Petroleum Experts Limited


1230 GAP

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 808 which provide step by step instructions of how to include the individual
elements that make up the system.

GAP User Guide March, 2022


Examples Guide 1231

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.16.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-2022 Petroleum Experts Limited


1232 GAP

3.16.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 March, 2022


Examples Guide 1233

Complete all the wells according to the data provided in Table 3 1227 .

PLEASE MAKE SURE THAT THE WELL TYPE IS DEFINED AS "CBM


Water Producer (ESP Lifted)"

1990-2022 Petroleum Experts Limited


1234 GAP

3.16.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 ). After six years (01/01/2013) the tubing
1226

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 March, 2022


Examples Guide 1235

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


1236 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 March, 2022


Examples Guide 1237

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


1238 GAP

3.16.3.5 Define the Pipelines


Enter the pipeline data according to Table 2 1227 and following the same steps as seen in
previous examples . 1092

3.16.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 March, 2022


Examples Guide 1239

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


1240 GAP

3.16.3.7 Generate Well VLPs


To import the VLP curves in GAP (ref. VLP generation 616 ) 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 March, 2022


Examples Guide 1241

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 889 , 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 :
1227

1990-2022 Petroleum Experts Limited


1242 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 March, 2022


Examples Guide 1243

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 section to understand how to
1247

visualise this variable).

3.16.3.8 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.

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.

1990-2022 Petroleum Experts Limited


1244 GAP

3.16.3.9 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 ). After six years (01/01/2013) the tubing will be pulled, the
1226

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.

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.

GAP User Guide March, 2022


Examples Guide 1245

As the VLP has been generated for a frequency of 1 Hertz, the pump frequency can also be
changed in the schedule section via OpenServer.

To do this, the OpenServer string for the pump frequency must be obtained from GAP by holding
the ctrl key and right-clicking, then selecting copy;

This string will be used to change the pump frequency in the schedule section by selecting
"change OpenServer Variable" in the event type. The copied string can be pasted in the correct
section in GAP and the new value of frequency (1HZ) can be entered;

1990-2022 Petroleum Experts Limited


1246 GAP

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.

The model is now complete and ready to run.

Save the model as CBM Field.gap.


3.16.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

Select Next | Next and enter a separator pressure of 100 and 100psig for Sep1 and Sep2
respectively.

GAP User Guide March, 2022


Examples Guide 1247

Select | Next and then set the prediction Mode to 'No Optimisation' and then 'Calculate.'

3.16.3.10.1 Interpret the Results


To visualise the results select Prediction | Plot Nodes Prediction Results.

Select both of the separators from the 'Equipment Type' and plot the gas and water rates for

1990-2022 Petroleum Experts Limited


1248 GAP

each separator.

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 March, 2022


Examples Guide 1249

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


1250 GAP

3.17 Example 12 - Surface Jet Pumps

3.17.1 Objectives
Definition of the Problem
An on-shore gas field has been producing for some time and as a result some of the reservoirs
have been depleted and are at low pressures. As part of the development of this field, a new
higher pressured reservoir has been discovered. The objective of this exercise is to determine
how best to link production from this reservoir into the surface network in GAP.

Learning Topics
The objectives of this example are to learn how to:
Set-up a basic GAP model for a gas field.
Include a surface jet pump.
Copy information in GAP.
Change the Information displayed on the system window

Executive Summary
The steps followed will be:
1. Build the GAP network
- Draw the GAP network
- Define wells in GAP
- Generate well IPRs in GAP using PROSPER
- Import well VLPs in GAP
- Define the pipeline and eventual surface equipment
2. Solve the network
3. Include the SJP
4. Re-solve the network

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 12 - Surface Jet Pumps in GAP

The samples files folder can also be accessed from the windows start menu,
as shown below.

GAP User Guide March, 2022


Examples Guide 1251

1990-2022 Petroleum Experts Limited


1252 GAP

3.17.2 Data Available


Description of the pipelines
Label Pipe segment Pipe ID Upstream Downstream Multiphase
Length TVD TVD Correlation
feet Inches ft ft -

HP to Man 5000 4.5 0 0 Beggs and Brill

LP to Man 500 6 0 0 Beggs and Brill


Man to Sep 10,000 6 0 0 Beggs and Brill

Description of the wells

The file names corresponding to each well are shown in the table below.
Well Name PROSPER File

HP Well HP.OUT
Well1 Well1.OUT
Well2 Well2.OUT
Well3 Well3.OUT

GAP User Guide March, 2022


Examples Guide 1253

3.17.3 Build The GAP System


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.

1990-2022 Petroleum Experts Limited


1254 GAP

3.17.3.1 Draw The GAP Network


Getting Started
Begin by starting the program.
From the GAP entry screen, select File| New to reinitialise GAP.

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

GAP User Guide March, 2022


Examples Guide 1255

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.

1990-2022 Petroleum Experts Limited


1256 GAP

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 808 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.

GAP User Guide March, 2022


Examples Guide 1257

3.17.3.1.1 Define the Wells


As with the previous models, we have already built the PROSPER models for all of the wells. 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: HP
Mask: Include in System (default)
Well Type: Gas Producer
Model: VLP/IPR intersection
PROSPER file: Well HP.OUT

Complete all the wells according to the data provided at the start of the exercise.

1990-2022 Petroleum Experts Limited


1258 GAP

3.17.3.1.1.1 Generate the 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 explained in example 2a 887 . The IPR curve can be visualized by selecting Plot.
3.17.3.1.1.2 Import 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 supplied in the initial files folder. To load these files
double click on Well1 and then select the VLP tab.

Select browse and then load the Well1.vlp file. The VLP section should then become green

GAP User Guide March, 2022


Examples Guide 1259

which completes the input for the well description. Repeat this process and load the file for each
corresponding well.

1990-2022 Petroleum Experts Limited


1260 GAP

3.17.3.1.2 Define the Pipelines


The pipeline descriptions are given at the start of the exercise.

In order to describe the procedure for defining pipelines access the pipe summary screen by
double-clicking on the link that joins the HP wellhead to the manifold. The summary screen is
shown below. Make the following changes:

Label: HP to Man
Correlation Beggs and Brill

GAP User Guide March, 2022


Examples Guide 1261

Pipe Description
To define the pipeline dimensions select the Pipe Data Button.
Enter the following data (note: the data are given from upstream to downstream):

Pipe Pipe ID Upstream TVD Downstream Roughness Multiphase


Segment TVD Correlation
Length
feet Inches ft ft Inches -

HP to Man 5000 6 0 0 0.0006 Beggs and


Brill

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.

Repeat this procedure for all of the well lines using the data at the start of the exercise 1252 .

1990-2022 Petroleum Experts Limited


1262 GAP

3.17.3.1.3 Change the Information Displayed on the System Window


By default the equipment label is displayed next to each item on the system window. However, to
get a quick overview of the system it is possible to plot other properties. In this exercise the gas
rate will be displayed at each piece of equipment. This allows the user to see the total gas
produced at the separator along with each well's contribution.
To view the gas rate navigate to View | Select Info Displayed;

Ensure that Gas Rate is selected.

GAP User Guide March, 2022


Examples Guide 1263

3.17.3.1.4 Solving The 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, 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 . Click on 'Next' and
set the calculation mode to 'No Optimisation' before selecting 'Calculate'.

Press "main" to return to the system window. The gas rate at each item of equipment is shown;

1990-2022 Petroleum Experts Limited


1264 GAP

In this case it can be seen that the gas rate at the separator is approximately 23.6 MMscf/d.
An interesting result is that well 2 is not producing anything. This is due to back pressure effects
associated with linking the high pressure well to the network.

GAP User Guide March, 2022


Examples Guide 1265

3.17.3.1.4.1 Analysing the Results


By inspecting the VLP/IPR intersection for well 2 the reason for the lack of production can be
seen.

To view the VLP/IPR intersection double click on well 2 and navigate to the summary screen;

Selecting calculate will allow the VLP/IPR intersection to be viewed for a range of conditions.
Select "initialise from solver results" to copy the current operating conditions of the field;

1990-2022 Petroleum Experts Limited


1266 GAP

Select Calculate then Plot to view the current VLP/IPR intersection;

The VLP/IPR intersection is to the left of the minimum stable rate.


The well is unstable and not capable of producing at a stable flowrate.

GAP User Guide March, 2022


Examples Guide 1267

3.17.3.1.5 Including the SJP


In order to prevent the high pressure well from causing well 2 to become unstable there are a few
options available including;

1. Construct a separate flowline for the high pressure well


2. Choke the high pressure well
3. Use the high pressure energy to pump the low pressure fluid with a SJP
In this example, option three will be used. The surface jet pump can be added by selecting the
associated icon on the toolbar

As the pipeline dimensions will be unaffected, the data already entered can be copied and
pasted into the new pipelines required to include the SJP. To do this connect the SJP as shown;

1990-2022 Petroleum Experts Limited


1268 GAP

The high pressure well should be connected to the high pressure inlet of the SJP
The low pressure manifold should be connected to the low pressure inlet of the SJP
The discharge outlet of the SJP should be connected to the Sep Joint

GAP User Guide March, 2022


Examples Guide 1269

3.17.3.1.5.1 Copying the Pipeline Data


The pipeline data can be copied in two ways;

1. Copy and paste


Right click on the source pipeline and select "copy"
Right on the target pipeline and select "paste"

2. Click and Drag


Hold down the ctrl key and click on the source pipeline
Drag to the target pipeline and release

Using one of these methods copy the data


From the LP to Man pipeline
To the pipe connected to the low pressure inlet of the SJP;

The original pipeline can now be deleted (or masked);

1990-2022 Petroleum Experts Limited


1270 GAP

GAP User Guide March, 2022


Examples Guide 1271

Repeat for the final two pipelines;

The system should now look as below;

1990-2022 Petroleum Experts Limited


1272 GAP

GAP User Guide March, 2022


Examples Guide 1273

3.17.3.1.5.2 Defining the SJP Properties


The last thing to do before solving the network is to define the SJP properties. to do this double
click on the SJP and navigate to the Input | data section.

The surface jet pump dimensions must be entered in the "SJP Parameters" section.
The information in the SJP design section will not affect results and can be ignored, for further
information on the SJP data screen please refer to the section of the manual 499 describing
surface jet pumps.

1990-2022 Petroleum Experts Limited


1274 GAP

3.17.3.1.5.3 Solving the Network With the SJP


Now that the SJP has been added, the effect on the overall production can be analysed by
solving the network and comparing the cases with and without the surface jet pump.

It can be seen that the production at the separator has increased and Well 2 is no longer
unstable and has begun flowing once more.
In summary, this example shows how SJPs can be used in GAP to increase recovery by utilising
the energy of a high pressure system to reduce the wellhead pressures in a lower pressure
system.

GAP User Guide March, 2022


Examples Guide 1275

3.18 Example 13 - Explicit Compressor Recycling in GAP

3.18.1 Objectives
Definition of the Problem
A gas field is being exploited and the produced gas must be compressed for export. The
objective of this exercise is to model this system with and without the explicit compressor
recirculation option selected.In particular the compressor performance over time will be
analysed.

Learning Topics
The objectives of this example are to learn how to:
Set-up a basic GAP model for a gas field.
Set up the explicit recycle option for the compressor.

Executive Summary
The steps followed will be:
1. Build the GAP network
- Draw the GAP network
- Define wells in GAP
- Generate well IPRs in GAP using PROSPER
- Import well VLPs in GAP
- Define the pipeline and eventual surface equipment
- Define the compressor performance in GAP
2. Run a prediction
3. Model the recycle loop of the compressor explicitly
4. Perform another prediction and 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 13 - Explicit Compressor Recycling in GAP

The samples files folder can also be accessed from the windows start menu,
as shown below.

1990-2022 Petroleum Experts Limited


1276 GAP

GAP User Guide March, 2022


Examples Guide 1277

3.18.2 Data Available


Description of the pipelines
Label Pipe segment Pipe ID Upstream Downstream Multiphase Correlation
Length TVD TVD
feet Inches ft ft -

Man 2 to Man 1 3000 4.5 0 0 Beggs and Brill

Man 1 to Comp In 5300 6 0 0 Beggs and Brill


Comp Out to Sep 10,000 6 0 0 Beggs and Brill
WH6 to Man 3 3000 4.5 0 0 Beggs and Brill
Man 3 to Comp In 2200 6 0 0 Beggs and Brill

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
Well4 Well4.OUT
Well5 Well5.OUT
Well6 Well6.OUT
Well7 Well7.OUT
Well8 Well8.OUT
Well9 Well9.OUT

Description of the reservoir

The file names corresponding to each tank are shown in the table below.
Well Name PROSPER File

Res1 Res1.MBI
Res2 Res2.MBI
Res3 Res3.MBI

Description of the Compressor

The compressor performance data can be found in an Excel spreadsheet in the samples folder.

1990-2022 Petroleum Experts Limited


1278 GAP

3.18.3 Build The GAP System


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.

GAP User Guide March, 2022


Examples Guide 1279

3.18.3.1 Draw The GAP Network


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 808 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.

1990-2022 Petroleum Experts Limited


1280 GAP

3.18.3.1.1 Define the Reservoirs


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 Res1.mbi can
be found in the samples folder for this exercise.

Repeat this process for all reservoirs.

GAP User Guide March, 2022


Examples Guide 1281

3.18.3.1.2 Define the Wells


As with the previous models, we have already built the PROSPER models for all of the wells. 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: Well 1
Mask: Include in System (default)
Well Type: Gas Producer
Model: VLP/IPR intersection
PROSPER file: Well 1.OUT

Complete all the wells according to the data provided at the start of the exercise.

1990-2022 Petroleum Experts Limited


1282 GAP

3.18.3.1.2.1 Generate the 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 explained in example 2a 887 . The IPR curve can also be visualized by selecting Plot.

To determine the Water Cut and GOR produced by the well during the prediction, a set
of rel perm curves are required. These are specified in the "more" tab in the IPR
section. For each well the rel perms used will come from the tank model as
demonstrated for Well 1;

GAP User Guide March, 2022


Examples Guide 1283

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.

1990-2022 Petroleum Experts Limited


1284 GAP

3.18.3.1.2.2 Import 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 supplied in the initial files folder. To load these files
double click on Well1 and then select the VLP tab.

Select browse and then load the Well1.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.

GAP User Guide March, 2022


Examples Guide 1285

3.18.3.1.3 Define the Pipelines


The pipeline descriptions are given at the start of the exercise.

In order to describe the procedure for defining pipelines access the pipe summary screen by
double-clicking on the link that joins the HP wellhead to the manifold. The summary screen is
shown below. Make the following changes:

Label: Man 2 to Man 1


Correlation Beggs and Brill

1990-2022 Petroleum Experts Limited


1286 GAP

Pipe Description
To define the pipeline dimensions select the Pipe Data Button.
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
feet Inches ft ft Inches -

Man 2 to Man 3000 4.5 0 0 0.0006 Beggs and Brill


1

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.

Repeat this procedure for all of the well lines using the data at the start of the exercise 1277 .

GAP User Guide March, 2022


Examples Guide 1287

3.18.3.1.4 Define the Compressor


The last item which needs defined is the compressor. The compressor will be modelled using
performance curves, this can be specified on the summary screen of the compressor;

To enter the compressor information select the "Data" button;

1990-2022 Petroleum Experts Limited


1288 GAP

Select Use Overall Efficiency


Select Use Polytropic Head
Enter the post compression cooling data

GAP User Guide March, 2022


Examples Guide 1289

To enter the performance curve select "Edit PC" then OK.


The performance curve can then be generated using the data supplied in the Excel
Spreadsheet;

Compressors, like pumps have a maximum and minimum rate which they can process. This
information must be entered before performing the prediction. This can be done in the "Surge/
Choke" tab in this case the compressor will be operating at 20,000 rpm;

At this point the file can be saved as Example 13.gap

1990-2022 Petroleum Experts Limited


1290 GAP

3.18.3.1.5 Perform the Prediction


The prediction will be performed for five years between 01/01/2013 and 01/01/2018 with two
month timesteps;

The separator pressure will be specified as 1100 psig and the prediction will be performed with
the wells fully open (no optimisation);

GAP User Guide March, 2022


Examples Guide 1291

3.18.3.1.6 Save the Prediction Results


After the prediction has been performed; the results obtained are to be saved 726 in order to
compare them with the results of the optimiser in GAP.

This can be done by selecting Prediction | Save Prediction Results as;


Select "Add"
Enter a name to identify the prediction results
Press "OK"

1990-2022 Petroleum Experts Limited


1292 GAP

3.18.3.1.7 Enable the Explicit Recycling


Before Looking at the results of the prediction, another prediction will be performed with the
compressor recirculation calculated explicitly. To activate the explicit compressor recycling, the
user can right-click on the compressor icon in the system window and select "Explicit
Compressor Recirculation";

The compressor icon will then change to show that the recycle is being modeled explicitly;

GAP User Guide March, 2022


Examples Guide 1293

3.18.3.1.8 Including the SJP


Some of the high pressure gas leaving the compressor is to be recycled back to the compressor
inlet. In order to do this, the pressure of the recycled gas has to be reduced. Typically this is done
via some sort of choke however in this case some of this energy is to be recovered by using a
surface jet pump. The high pressure recycled gas will be used to lower the wellhead pressure of
the wells connected to manifold 3.
The surface jet pump can be added by selecting the associated icon on the toolbar

In order to connect the SJP into the network in a neat fashion, the orientation 501 of the pump will
be changed by double clicking on the SJP and selecting the "orientation" tab in the input section

1990-2022 Petroleum Experts Limited


1294 GAP

The position of the HP inlet and Discharge outlet have been modifed as above. Once this has
been done, the SJP can be connected into the network.

The recycle outlet of the compressor can then be connected to the HP inlet of the SJP
Manifold 3 can be connected to the LP inlet of the SJP
The discharge outlet of the SJP should be connected to the Comp Inlet joint

GAP User Guide March, 2022


Examples Guide 1295

3.18.3.1.8.1 Entering the Pipeline Data


The network should now look as follows;

The information contained in the pipeline "Man 3 to Comp In" should be copied to the new
pipeline "LP Inlet". The original pipeline "Man 3 to Comp In" can then be deleted.

For an example of how to copy the pipeline data please see Example 12 - Surface Jet
Pump Modelling in GAP . 1269

Next the pipeline information for the discharge and HP inlet should be added. These pipelines
are identical and the information is given below;

Pipe Description
To define the pipeline dimensions select the Pipe Data Button.
Enter the following data (note: the data are given from upstream to downstream):

Pipe Pipe ID Upstream TVD Downstream TVD Roughness Multiphase


Segment Correlation
Length
feet Inches ft ft Inches -

Discharge 50 6 0 0 0.0006 Beggs and Brill


AND LP
Inlet

The model should now look as below;

1990-2022 Petroleum Experts Limited


1296 GAP

GAP User Guide March, 2022


Examples Guide 1297

3.18.3.1.8.2 Defining the SJP Properties


The last thing to do before solving the network is to define the SJP properties. to do this double
click on the SJP and navigate to the Input | data section.

The surface jet pump dimensions must be entered in the "SJP Parameters" section.
The information in the SJP design section will not affect results and can be ignored, for further
information on the SJP data screen please refer to the section of the manual 499 describing
surface jet pumps.

1990-2022 Petroleum Experts Limited


1298 GAP

3.18.3.1.9 Performing the Prediction


Once the SJP and associated pipelines have been defined, the prediction can be performed
once more. Save the results as "Recycle With SJP";

Save the model.

GAP User Guide March, 2022


Examples Guide 1299

3.18.3.1.10 Analysing the Results


Once both predictions have been performed the results can be compared.

For example; at the separator it can be seen that including the SJP has increased the produced
gas rate at later time and thus the cumulative production has increased;

At the Compressor level, including the SJP has caused the amount of gas recycled to decrease;

1990-2022 Petroleum Experts Limited


1300 GAP

The reason for the reduction in the recycle rate with the SJP included is;

Recycling the fluid reduces the pressure at the LP inlet to the SJP
This in turn increases the drawdown at those wells connected to the LP inlet
The produced rate from these wells therefore increases
As the produced gas rate has increased, the amount required to recycle will be less
than if there was no SJP

GAP User Guide March, 2022


Examples Guide 1301

3.19 Example 14 - GAP Transient: Well Production


Ramp-Up (Getting Started)

3.19.1 Objectives
Introduce GAP Transient pipeline and well studies;
Model a ramp up scenario;
Consider how to mitigate against rapid liquid rate surge;

Definition of the Problem


A well is currently operating against a fixed flowline pressure and production is choked back.
The field production team plan to schedule a choke change on the well to ramp-up production.

The engineering team wish to investigate the transient behaviour of the well as it transitions from
one steady-state operating condition to another.

During this process, the team wish to understand two main engineering objectives:

Quantify the surge in production in the field when the choke change is made.
Determine the time required for transience in the system to settle down and achieve steady-
state condition – this will help coordinate planning logistics for other field operations.

Topics Covered
The objectives of this example are as follows:

Setup a basic GAP Transient model of a well using a transient pipeline element;
Setup a global temperature gradient;
Show how to run a GAP Transient simulation;
Show how to analyse GAP Transient results to quantify surge volumes.

Please note that the GAP Transient simulation calculations will require a separate GAP
Transient license. All other learning topics can be achieved with standalone GAP license.

Executive Summary
In order to investigate the transient response induced by moving from one steady state to
another, the following steps will be performed:

1. Build the GAP network


i. Draw the GAP network elements
ii. Define global temperature and formation profile
iii.Define the IPR layer data
iv. Define the transient pipeline data
v. Define the inline choke data
2. Solve the network to determine the production ramp-up and analyse the steady-state results

1990-2022 Petroleum Experts Limited


1302 GAP

3. Setup a GAP Transient simulation


4. Analyse GAP Transient 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 14 – GAP Transient: Well Production Ramp-up

The samples files folder can also be accessed from the windows start menu,
as shown below. This file contains worked examples for all the IPM tools.

3.19.2 Data Available


Temperature Gradient:

True Surrounding
Vertical Temperature
Depth (ft.) (oF)
0 60
600 40
9275 210

IPR Data:

The IPR data will be generated from the PROSPER file GAP Transient Ramp-Up Inflow.out.

Well Completion Data:

Environment Data
Calculate Heat Transfer Coefficient Unchecked
Overall Heat Transfer Coefficient 8.6416 BTU/h/ft2/F

GAP User Guide March, 2022


Examples Guide 1303

Oil Heat Capacity 0.53 BTU/lb/F


Gas Heat Capacity 0.51 BTU/lb/F
Water Heat Capacity 1 BTU/lb/F

Pipe Description
Transient Pipe Step Length 100 ft.
Specify Step Length by Segment Unchecked
Flow Type Tubing Flow
Correlation Petroleum Experts 2
Gravity Coefficient 1
Friction Coefficient 1
Rate Multiplier 1
Maximum Step Length 10000 ft.
Transient Result Data Sampling None

Segment Length (ft.) TVD (ft.) Tubing Inside Tubing Inside


Type Diameter (in.) Roughness (in.)
600
Line pipe 405 1000 4.5 0.0006
Line pipe 3070 4000 4.5 0.0006
Line pipe 3625 7500 4.5 0.0006
Line pipe 1300 8738.095 4.5 0.0006
Line pipe 275 9000 7.625 0.0006

3.19.3 Build the GAP model


This section will sequentially go through step by step how to build a GAP model which includes
the following GAP functionality:

Global temperature gradient;


Model a well using a transient pipeline element;
Setup a transient simulation;
View the transient simulation results.

The following sketch will be used as a reference of the final GAP model setup:

1990-2022 Petroleum Experts Limited


1304 GAP

3.19.3.1 Draw the GAP Network


Getting Started
Begin by starting GAP through the Windows start menu. From the GAP entry screen, select File|
New to reinitialise GAP with a new project.

Defining the Global System Options


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 -


Gradient
Water Vapour No Calculations
Temperature Model Rough Approximation
Heat Transfer
Enter Heat Transfer Coefficient
Coefficient
Calculate Well Choke
On
Delta T
Brine Properties
Use Default Correlation
Correlation
Water Viscosity
Use Default Correlation
Correlation

GAP User Guide March, 2022


Examples Guide 1305

Allow Transient Pipes/


Enable Transient Calculations
Wells

Then click Ok to exit this screen.

This completes the system set-up and re-initialises the program.

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 directions are required, please refer to
previous examples in the manual which provide step by step instructions of how to include the
individual elements that make up the system.

3.19.3.2 Define Global Temperature Profile


The global temperature profile will be entered to capture the surrounding geothermal gradient of
the well. This data is the same as the geothermal gradient in the provided PROSPER file (GAP
Transient Ramp-Up Inflow.out) and is provided in the available data section.

The global temperature gradient can be entered by going to Flow Assurance| Global
Temperature Gradient…, as illustrated below.

1990-2022 Petroleum Experts Limited


1306 GAP

In the Global Temperature Gradient interface, enter the profile as below:

3.19.3.3 Define the Reservoir


The reservoir data will be transferred from the PROSPER file (GAP Transient Ramp-Up
Inflow.out) to the inflow element data.

So the IPR can be generated from the PROSPER file, double click on the Inflow element and
proceed to Input | IPR Layer tab and browse for the PROSPER file in the initial files folder:

GAP User Guide March, 2022


Examples Guide 1307

The IPR data can be imported by going to Generate | Generate Well IPRs with PROSPER… and
then select to generate for All wells.

In the IPR generation window, select ‘Generate’ to transfer the well IPR data to the inflow
element.

If desired, the highlighted ‘Import Match Parameters’ can be used to transfer the PVT match
parameters from the PROSPER PVT description. Further information on the PVT Match can be
found here 208 .

1990-2022 Petroleum Experts Limited


1308 GAP

3.19.3.4 Define the Well (Pipe Element)


In the pipeline element, enter the Input | Environment tab and set the Overall Heat Transfer
Coefficient to 8.6416 BTU/h/ft2/F, and leave the fluid heat capacities as default:

In the description tab, we will define the well downhole equipment description and select the
multiphase flow correlation to be used. Enter the data as illustrated below:

GAP User Guide March, 2022


Examples Guide 1309

Please note that when entering pipe segment lengths for transient simulations, it is best practice
to avoid very large sections of pipe followed by small segment lengths to ensure accumulation
effects are numerically captured accurately.
3.19.3.5 Define the Wellhead Choke
The inline choke element will represent the wellhead choke. In order to define the choke
properties, double click on the inline choke element and proceed to the Input | Control tab, where
we will define the dP control and the choke diameter.

The dP Control should be set to ‘Fixed choke diameter’ with an initial choke diameter of 1 inch
and the choke model left as default, as shown below:

1990-2022 Petroleum Experts Limited


1310 GAP

3.19.4 Determine Steady-State Results


The next step is to determine the magnitude of change between the two steady state responses
of the system when the choke diameter is changed during the ramp up process.

To conduct the comparison, first we need to solve the network (No Optimisation) with the current
operating conditions of a 1 inch choke diameter and a Flow Line pressure of 500 psig, which
calculates a steady state liquid rate of around 9850 STB/day.

GAP User Guide March, 2022


Examples Guide 1311

The field management plan is to open the wellhead choke to 4 inches. Return to the Inline Choke
element and change the inline choke to 4 inches and solve the network again (No Optimisation)
with a Flow Line pressure of 500 psig. We can see that the new steady-state liquid rate is
around 13100 STB/day.

1990-2022 Petroleum Experts Limited


1312 GAP

3.19.5 Setup the GAP Transient Pipeline


Having established the anticipated magnitude change between the two steady state system
responses of around 3250 STB/day, we will now consider the transient behaviour associated
with the ramp up.

Pipeline equipment by default perform only steady-state calculations. In order to perform GAP
Transient calculations, transient equipment needs to be define. In order to convert the steady
state pipe to a transient equipment element, the ‘Transient’ option can be activated in the Pipe
element Summary interface, as illustrated below:

By converting the pipe to a piece of transient equipment, a new input data tab called ‘Simulation’
will be activated. The Simulation interface allows the user to define the initialisation behaviour of
the transient equipment at time zero of the transient simulation, either Steady-State or Static.
Steady state conditions is applicable when moving from one steady state scenario to another,
whilst static is to be used to capture the start-up process (e.g. unloading of kill fluid).

In this scenario, we have confirmed that the well is producing under steady-state conditions with
a wellhead choke of 1 inch; therefore, select Steady-State as the initialisation condition as
illustrated below:

GAP User Guide March, 2022


Examples Guide 1313

Click OK to confirm the changes, upon which the pipe will appear multi-coloured (illustrated
below) which indicates the equipment is set up as a transient item.

3.19.6 Prepare the Model for Ramp Up


In preparation for the transient study to be performed, we must first define the choke diameter at
the start of the simulation and then schedule the diameter change. First, reset the choke
diameter back to 1 inch.

1990-2022 Petroleum Experts Limited


1314 GAP

Next, in the Input | Schedule tab of the Inline Choke, switch on the ‘View/Edit Transient Simulation
Schedule’ option and set the choke diameter to change at 15 minutes. Please note that this will
mean that the choke is open at 15 minutes, not will start to open at 15 minutes.

Click OK to return to the main screen; the equipment is now set up to perform a transient
simulation.

GAP User Guide March, 2022


Examples Guide 1315

3.19.7 Run GAP Transient Simulation


As with a steady state prediction forecast, we must setup the transient simulation. To run a GAP
Transient simulation, navigate to Transient | Run Simulation, as shown below:

The transient simulation should be setup as follows:

Start Date 14/02/2018 00:00:00


End Date 14/02/2018 02:00:00
Step Size (dt) 1 Minute
Sample Results None

The transient simulation calculation is solved implicitly which means any changes in the transient
system (e.g. scheduled choke change) occurs over the duration of the timestep size period. For
example, the choke in this example will be open at 15 minutes but implicitly it is opening over the
duration of the previous timestep.

1990-2022 Petroleum Experts Limited


1316 GAP

Once the data above has been entered, select Next, ensure the separator pressure is 500 psig
and click Next again.

The solver settings of the transient simulation can be changed to help with convergence. Select
Settings and in the new window switch the base configuration to 'Transient - Used for transient
calculations' and click Apply. Click OK to close the window.

Run the transient simulation with No Optimisation by clicking Calculate.

GAP User Guide March, 2022


Examples Guide 1317

Once the calculation has concluded, select Main to return to the main interface, where we are in
a position to save and then analyse the results.
3.19.8 Saving the Transient Simulation Results
Once the transient simulation has been run, a copy of the transient simulation results can be
saved by going to Transient | Save Simulation Results As…

In the resultant interface, select ‘Add’ to save a copy of the transient run with the run description
“Well Ramp-Up”. This will allow for these results to be recalled at any time and compared to
alternative scenarios which are to be considered for the ramp-up procedure.

1990-2022 Petroleum Experts Limited


1318 GAP

3.19.9 Analyse GAP Transients Results


Transient results can be viewed in a similar manner to prediction results, either individually within
the element results tab, where as of IPM 11 there is a Simulation tab with the transient results,
multiple nodes collectively through Transient | Plot Nodes Simulation Results… or for more
detailed transient result analysis through Right Click | Show Transient Results… on transient
equipment elements.

First we will analyse the node results of BH and WH by going to Transient | Plot Nodes
Simulation Results…, selecting the two nodes and then Plot.

In the next window, select the nodes ‘BH’ and ‘WH’ and click ‘Plot’:

GAP User Guide March, 2022


Examples Guide 1319

First plot the liquid rate and pressure of the ‘BH’ node (i.e. bottomhole) by selecting BH in the top
left hand section of the window and then double clicking the variables in the bottom left, as
illustrated below:

1990-2022 Petroleum Experts Limited


1320 GAP

For the initial 15 minutes pressures and rates are constant due to the system being initialised
from steady-state conditions. The initial rate corresponds to the steady-state liquid rate of
around 9850 STB/day as per the previous GAP solve network calculation.

At 15 minutes, the wellhead choke at surface has been opened up, which causes the bottomhole
pressure to gradually reduce and consequently the bottomhole liquid rate to increase to the
steady-state rate of around 13100 STB/day as per the second GAP solve network calculation
previously performed.

Remove the bottomhole liquid rate from the plot using the red X, as illustrated below:

GAP User Guide March, 2022


Examples Guide 1321

Then add the wellhead pressure (node WH):

Analysing the results, it can be seen at 15 minutes the wellhead pressure will suddenly drop by
around 500 psi due to the wellhead choke diameter changing from 1” to 4”.

Due to the transient behaviour within the system, the bottomhole pressure takes around 30
minutes to reach the new steady-state bottomhole pressure, and therefore we see a surge in
rate at the wellhead due to a sudden change in the holdup and fluid velocity. The surge in liquid
rate at the wellhead can be plotted as below and compared to the bottomhole liquid rate, which
increases gradually in line with the gradual pressure change illustrated above:

1990-2022 Petroleum Experts Limited


1322 GAP

Based on the above analysis, we can quantify that the peak surge volume will be much greater
than the new state-state rate of around 13000 STB/day, if the choke change is implemented over
one minute, and the system will take around 40-60 minutes to reach a steady-state condition.

In addition to analysing the pressures and rates, a study can be conducted to determine when
would be appropriate to take field measurements of the well. For example, we can plot the
wellhead (WH node) GOR, as below:

GAP User Guide March, 2022


Examples Guide 1323

From the above plot it can be seen that during the liquid rate surge, the wellhead GOR fluctuates
significantly, and therefore an estimate could be obtained as to when stable flow is achieved and
production monitoring/logging can begin with confidence.
3.19.10 Detailed Transient Results View
Further detailed analysis can be performed on the transient pipe element. This information can
be accessed by right-clicking the pipe and selecting ‘Show Transient Results…’

1990-2022 Petroleum Experts Limited


1324 GAP

In the new window, select the saved transient simulation ‘Well Ramp-Up’ and then Continue.

GAP User Guide March, 2022


Examples Guide 1325

The detailed transient simulation results window that appears is similar to the flow assurance
results window. From here, the user can look at detailed results inside the pipe equipment during
the transient simulation (i.e. pressure, temperature, velocities, holdup etc.) using the timestep/
variable/depth controls.

For example, we can view the holdup change during the wellhead choke change. In order to
analyse the holdup with depth at multiple time steps during the transient simulation in a 2D plot,
the following steps can be taken:

1. Change Plot Type to Variable vs. MD at the top of the interface;


2. Select Plots in the top left hand corner;

1990-2022 Petroleum Experts Limited


1326 GAP

3. Select the variable Holdup for comparison at time steps 0, 14, 15, 20, 30, 50, 60 and 70
minutes; then select Plot.

The resultant Transient Plot allows us to visualise the change in holdup with depth through time.

GAP User Guide March, 2022


Examples Guide 1327

What is apparent is the change between 14 and 15 minutes, when the choke is being opened, at
the top of the wellbore where the holdup decreases more rapidly than the bottom of the well. This
is indicative of the surge in production observed at the wellhead seen in the node results
previously plotted.

Once the choke is at 4 inches (15 minutes), the holdup steadies through time until around 60
minutes when we see a stable profile with depth again through time; this indicates that the new
steady state conditions have been reached.

Select Done to return to the transient results interface.

3.19.11 Gradual Choke Opening Setup


In order to open the choke gradually to avoid such a large surge in production, and therefore
minimise the risk of operational issues downstream (e.g. backing out other wells etc.), we must
revisit the transient schedule for the choke. In this instance, a linear opening of the choke from 1
to 4 inches will be implemented over twenty minutes by utilising the Change OpenServer
Variable Linearly option for the Event Type.

Close the detailed transient results window and open the choke summary screen.

In order to obtain the OpenServer string for the choke diameter, go to the Input | Control tab and
Ctrl + Right Click on the Choke Diameter cell, and then select copy:

1990-2022 Petroleum Experts Limited


1328 GAP

Once the OpenServer string has been copied, return to the Schedule tab and enter the data to
implement the desired choke opening profile as illustrated below:

Please note that in order to define a linear change in the choke diameter, two event times must
be defined to provide the duration of the linear change.

Select OK to return to the main GAP canvas and run the transient simulation again with the same
settings as previously conducted, then save the transient simulation results as ‘Linear Choke
Opening’.
3.19.12 Linear Choke Opening Results Analysis
As the choke has been opened in a linear fashion over twenty minutes rather than rapidly over
the space of a minute, we can see by plotting the WHP for the node WH that the pressure
reduction is more gradual when the choke is opened slowly, as illustrated below:

GAP User Guide March, 2022


Examples Guide 1329

As the WHP decreases more gradually, we can also see that the surge in liquid rate is much
less abrupt, as illustrated below:

1990-2022 Petroleum Experts Limited


1330 GAP

With regard to the time at which reliable production logging can commence, we can once again
analyse the GOR for the WH node and observe that the time at which steady state is achieved
when the choke is opened to 4 inches is near enough the same in both cases, as illustrated
below:

GAP User Guide March, 2022


Examples Guide 1331

In order to avoid operational issues downstream of the choke when opened as part of the ramp
up procedure, it can be concluded that a gradual opening of the choke reduces the maximum
surge rate. Further sensitivities could be conducted to determine the optimum time period
across which to open the choke, and these would be best implemented as part of the entire
integrated network.

This concludes Example 14 and the file can now be saved by going to File | Save As.

After completion of Tutorial 14, the user should be able to perform the following analysis in GAP:

Setup a basic GAP Transient model of a well using a transient pipeline element;
Set up a global temperature gradient;
Run a GAP Transient simulation;
Analyse GAP Transient results to quantify surge volumes and investigate how to reduce the
initial surge volume;
Implement the Change OpenServer Variable Linearly Event Type in equipment schedules;

1990-2022 Petroleum Experts Limited


1332 GAP

3.20 Example 15 - GAP Transient: Unstable Riser

3.20.1 Objectives
Introduce GAP Transient riser and well studies;
Model a unstable riser;
Investigate how to mitigate against an unstable riser;

Definition of the Problem


A subsea well is connected to a 2000 ft riser which is downstream of a 4000 ft section of
downwards inclined pipeline. Both the pipeline and riser have a large diameter completions.

Current measured production at the production separator indicates severe slugging in the
system. The flow assurance team wish to replicate this behaviour in a transient model to identify
the source of the slugging behaviour followed by an investigation into methods to mitigate the
transient nature of the system.

Given the remote location of the subsea wellhead, the engineering team only have access to two
controls in the system: (1) gaslift at the base of the riser or (2) riser topside choke control.

During this investigation, the team have three main engineering objectives:

Identify the source of the slugging behaviour.


Determine which of the two mitigation methods is most beneficial to the system.
Determine the time required for transience in the system to settle down and achieve steady-
state condition.

Learning Topics
The objectives of this example are to learn how to:

Setup a GAP Transient well model


Setup a GAP Transient model of the flowline from subsea wellhead to riser top
Setup a global temperature gradient thermal modelling
Show how to run a GAP Transient simulation
Show how to analyse GAP Transient results to quantify transition time.

Please note that the GAP Transient simulation calculations will require a separate GAP
Transient license. All other learning topics can be achieved with standalone GAP license.

Executive Summary
The steps followed will be:

1. Modify existing GAP network to include subsea flowline and riser


i. Draw the GAP network elements
ii. Define the transient pipeline data

GAP User Guide March, 2022


Examples Guide 1333

iii.Define the surface inline choke data


2. Setup a GAP Transient simulation
3. Analyse GAP Transient 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 15 – GAP Transient: Unstable Riser

The samples files folder can also be accessed from the windows start menu,
as shown below. This file contains worked examples for all the IPM tools.

3.20.2 Data Available


Temperature Gradient:

True Surrounding
Vertical Temperature
Depth (ft.) (oF)
0 60
2000 40
9400 210

Well Model Data:

The well IPR data will be generated from the PROSPER file GAP Transient Well1.Out and the
well VLP data will be manually imported from the TPD file GAP Transient Well1.tpd

Flowline Data

Environment Data
Calculate Heat Transfer Coefficient Unchecked

1990-2022 Petroleum Experts Limited


1334 GAP

Overall Heat Transfer Coefficient 9.5 BTU/h/ft2/F


Oil Heat Capacity 0.53 BTU/lb/F
Gas Heat Capacity 0.51 BTU/lb/F
Water Heat Capacity 1 BTU/lb/F

Pipe Description
Transient Pipe Step Length 100 ft.
Specify Step Length by Segment Unchecked
Flow Type Tubing Flow
Correlation Hydro-2P
Gravity Coefficient 1
Friction Coefficient 1
Rate Multiplier 1
Maximum Step Length 10000 ft.
Transient Result Data Sampling None

Segment Tubing Inside Tubing Inside


Length (ft.) TVD (ft.)
Type Diameter (in.) Roughness (in.)
2000
Line pipe 4000 1000 8 0.0006

Riser Data

Environment Data
Calculate Heat Transfer Coefficient Unchecked
Overall Heat Transfer Coefficient 9.5 BTU/h/ft2/F
Oil Heat Capacity 0.53 BTU/lb/F
Gas Heat Capacity 0.51 BTU/lb/F
Water Heat Capacity 1 BTU/lb/F

Pipe Description
Transient Pipe Step Length 100 ft.
Specify Step Length by Segment Unchecked
Flow Type Tubing Flow

GAP User Guide March, 2022


Examples Guide 1335

Correlation Hydro-2P
Gravity Coefficient 1
Friction Coefficient 1
Rate Multiplier 1
Maximum Step Length 10000 ft.
Transient Result Data Sampling None

Segment Length (ft.) TVD (ft.) Tubing Inside Tubing Inside


Type Diameter (in.) Roughness (in.)
0
Line pipe 2000 2000 8 0.0006

3.20.3 Build the GAP Model


This section can be used as a general step-by-step procedure to build a GAP model which
includes the following GAP functionality:

Global temperature gradient;


Model a transient well;
Setup a transient pipeline element;
View the transient simulation results.

The following sketch will be used as a reference of the final GAP model setup:

3.20.3.1 Draw the GAP Network


Getting Started
Begin by starting GAP through the Windows start menu. From the GAP entry screen, select File |
New to reinitialise GAP with a new project.

Defining the Global System Option

1990-2022 Petroleum Experts Limited


1336 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
Pressure and temperature -
Prediction Method
Gradient
Water Vapour No Calculations
Temperature Model Rough Approximation
Heat Transfer Coefficient Enter Heat Transfer Coefficient
Calculate Well Choke
On
Delta T
Brine Properties
Use Default Correlation
Correlation
Water Viscosity
Use Default Correlation
Correlation
Allow Transient Pipes/
Enable Transient Calculations
Wells

Then click Ok to exit this screen.

This completes the system set-up and re-initialises the program.

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 directions are required, please refer to
previous examples in the manual which provide step by step instructions of how to include the
individual elements that make up the system.

GAP User Guide March, 2022


Examples Guide 1337

3.20.3.2 Define Global Temperature Profile


The global temperature profile will be entered to capture the surrounding geothermal gradient of
the flowline and riser.
The global temperature gradient can be entered by going to Flow Assurance | Global
Temperature Gradient…, as illustrated below.

In the Global Temperature Gradient interface, enter the profile as below:

1990-2022 Petroleum Experts Limited


1338 GAP

3.20.3.3 Define the Well


The well model has already been created in PROSPER. Enter the well summary screen and
browse for the PROSPER file in the example 15 initial files folder.

GAP User Guide March, 2022


Examples Guide 1339

The IPR data can be imported by going to Generate | Generate Well IPRs with PROSPER…
and then select to generate for All wells.

In the IPR generation window, select ‘Generate’ to transfer the well IPR data from PROSPER to
the well model in GAP.

1990-2022 Petroleum Experts Limited


1340 GAP

The well VLP data has already been pre-generated and exported in as a *.TPD file. This can be
manually imported to the well model by going to the well Input | VLP tab and selecting the
‘Import’ button. Browse for the GAP Transient Well1.tpd file in the initial files folder.

As we do not know the source of the slugging behaviour of the system, the well model in GAP will
be setup to perform transient calculations. In the well summary screen, select the ‘Transient
Well’ option.

GAP User Guide March, 2022


Examples Guide 1341

By activating this option, this will automatically import the equipment data of the PROSPER file
into an equivalent transient well description in GAP. This option means that it is not necessary to
replicate a PROSPER well model in GAP using a transient pipeline element e.g. GAP Transient:
Well Production Ramp-Up (Getting Started) example.
A transient well model will expose four new input tabs which relate to transient well calculations
(similar to a pipeline element).
In the description section, the downhole equipment and deviation survey data of the PROSPER
file has been converted to an equivalent GAP description.

1990-2022 Petroleum Experts Limited


1342 GAP

In the well Input | Description screen, set the correlation to be Petroleum Experts 2.
In the well Input | Environment screen, GAP will import the overall heat transfer coefficient
value and set the PROSPER geothermal gradient as a local temperature gradient – as shown
below.

GAP User Guide March, 2022


Examples Guide 1343

In the well Input | Simulation screen, the initialisation behaviour of the transient well at time zero
of the transient simulation will be defined.
In this particular scenario, we will assume that well is able to produce at steady-state initially.
Running the transient simulation for a short period of time will confirm if the system is at steady-
state or if the system will exhibit a transient behaviour.

1990-2022 Petroleum Experts Limited


1344 GAP

3.20.3.4 Define the Flowline


Enter the ‘FLOWLINE’ pipeline summary screen and active the ‘Transient’ option. This will
make the pipeline element in GAP perform transient calculations and capture mass and
momentum accumulation.

GAP User Guide March, 2022


Examples Guide 1345

The remaining setup of the transient pipeline element is summarised in the tables below.

FLOWLINE Input | Environment Screen

1990-2022 Petroleum Experts Limited


1346 GAP

FLOWLINE Input | Description Screen

GAP User Guide March, 2022


Examples Guide 1347

FLOWLINE Input | Simulation Screen

1990-2022 Petroleum Experts Limited


1348 GAP

3.20.3.5 Define the Riser


The riser will also be setup to perform transient calculations by activating the ‘Transient’ option
in the pipeline summary screen.

The remaining setup of the transient pipeline element is summarised in the tables below.

FLOWLINE Input | Environment Screen

GAP User Guide March, 2022


Examples Guide 1349

FLOWLINE Input | Description Screen

1990-2022 Petroleum Experts Limited


1350 GAP

FLOWLINE Input | Simulation Screen

GAP User Guide March, 2022


Examples Guide 1351

3.20.3.6 Define the Riser Choke


The topside riser choke pressure drop will be captured by the choke model in GAP. In order to
define the choke properties, double click on the inline choke element and proceed to the Input |
Control tab, where we will define the 'dP control' and the 'choke diameter'.

The 'dP Control' should be set to ‘Fixed choke diameter’ with an initial 'choke diameter' of 4
inch and the choke model left as default, as shown below:

3.20.3.7 Define the GasLift


As we initially wish to capture the current behaviour of the system, the source element will be
initially disabled in the source summary screen, as shown below:

The source fluid temperature will be set to 80 degF and the maximum gaslift injection rate is 2.5
MMscf/day. This information can be defined fixed rate source Input | Fixed Rate screen – as
shown below.

1990-2022 Petroleum Experts Limited


1352 GAP

With the GAP model setup, the network should be similar to the screenshot shown below.

3.20.4 Run GAP Transient Simulation


A transient simulation will now be run to study the behaviour of the network and identify the
source of the slugging. To run a GAP Transient simulation, navigate to Transient | Run
Simulation, as shown below:

The transient simulation should be setup as follows:

GAP User Guide March, 2022


Examples Guide 1353

Start Date 01/01/2018 00:00:00


End Date 01/01/2018 03:00:00
Step Size (dt) 1 Minute
Sample Results None

Once the data above has been entered, select Next, ensure the separator pressure is 500 psig
and click Next again.

The solver settings of the transient simulation can be changed to help with convergence. Select
Settings and in the new window switch the base configuration to 'Transient - Used for transient
calculations' and click Apply. Click OK to close the window.

1990-2022 Petroleum Experts Limited


1354 GAP

Run the transient simulation with No Optimisation by clicking Calculate.

GAP User Guide March, 2022


Examples Guide 1355

Once the calculation has concluded, select Main to return to the main interface, where we are in
a position to save and then analyse the results.

3.20.5 Saving the Transient Simulation Results


Once the transient simulation has been run, a copy of the transient simulation results can be
saved by going to Transient | Save Simulation Results As…

In the resultant interface, select ‘Add’ to save a copy of the transient run with the run description
“Initial”. This will allow for these results to be recalled at any time and compared to alternative
scenarios.

1990-2022 Petroleum Experts Limited


1356 GAP

3.20.6 Analyse GAP Transient Results


Firstly the node simulation results will be viewed to identify the source of the severe slugging in
the system.

Multiple nodes can be viewed at the same time by going to Transient | Plot Nodes Simulation
Results… - as shown below.

In the next window, select WH, RISER BASE and RISER TOP and plot the liquid rate.

At time zero, it can be seen that the liquid rate of all the nodes is the same value. This is due to
the steady-state initialisation behaviour of the system. The steady-state initialisation means that
any mass or momentum accumulation behaviour is not captured yet. From this starting point, it
can be seen that the system begins to oscillate in liquid rate for around 30-40 minutes before the
system has found its natural unsteady behaviour.

GAP User Guide March, 2022


Examples Guide 1357

Transient behaviour in the system is when the rate in does not equal the rate out at a node. In this
scenario, it can be seen that the rate at the RISER BASE does not does equal the rate at the
RISER TOP – this suggests an accumulation effect in occurring in the riser and the source of the
severe slugging behaviour.
3.20.7 Detailed Transient Results View
Further detailed analysis can be performed on the riser by right-clicking the pipe and selecting
‘Show Transient Results…’

In the new window, select the saved transient simulation ‘Initial’.

The detailed transient simulation results window is similar to the flow assurance results window.

1990-2022 Petroleum Experts Limited


1358 GAP

From here, the user can look at detailed results inside the pipe equipment during the transient
simulation i.e. pressure, temperature, velocities etc.

If desired, slug catcher analysis can be performed on the transient simulation results. Right-click
on row two of the results grid and select ‘Slug Catcher Calculator’.

The slug catcher window will import the transient flow characteristic flow volume analysis. Slug
catcher dimensions can be specified to identify if liquid carry over or vapour carry under may
occur.

GAP User Guide March, 2022


Examples Guide 1359

3.20.8 Riser Holdup Profile Analysis


To begin to understand the behaviour of the riser, plot the holdup variable vs. time at a measured
depth of 100 ft – as shown below.

1990-2022 Petroleum Experts Limited


1360 GAP

This holdup variable gives an indication of the quantity of liquid and gas produced at the surface.
It can be seen that once the system as found its natural unsteady-state, liquid production occurs
in around 12-15 minute periods.

In order for the holdup variable to increase at surface, more liquid must be produced through
time in the riser. Change the holdup variable plot type to variable vs. depth and go to 55 minutes
in the transient simulation.
Analysing the holdup profile in the riser over a 12-15minute period from 55 minutes, the following
behaviour can be observed:

The 2D plots below can be created by activating the ‘Plot Multiple’ option and stepping through
the timesteps between 55 to 70 minutes – as shown below.

Diagram 2D Plot

GAP User Guide March, 2022


Examples Guide 1361

1990-2022 Petroleum Experts Limited


1362 GAP

GAP User Guide March, 2022


Examples Guide 1363

1990-2022 Petroleum Experts Limited


1364 GAP

Gas Vent

During the period of slug growth and liquid production, it can be seen that liquid slowly
accumulates and builds up the holdup in the riser.

During fast liquid production, it can be seen that the holdup at the bottom of the riser drops due
to accumulated gas pushing its way up the riser from the upstream FLOWLINE.

During gas vent, the gas pushes its way up the riser and slips past the liquid which effectively
reduces the holdup profile back to its original state.

In addition to reviewing the holdup profile in the riser, the behaviour in the well can also be
inferred from the reported flow regime.

Liquid Production Gas Vent

GAP User Guide March, 2022


Examples Guide 1365

3.20.9 Mitigate Severe Slugging - GasLift


The first method of mitigating the slug production is to inject gaslift at the base of the riser. There
is an operational limit of only 5 MMscf/day available. A transient simulation schedule will be
setup to inject this quantity of gas via the source element at 60 mins.

Enter the source summary screen and set the source element to be masked.

1990-2022 Petroleum Experts Limited


1366 GAP

In the schedule input screen, switch to the transient simulation schedule and set the source to
become unmasked at 60 minutes.

Run the transient simulation again and save a copy of the transient simulation results by going to
Transient | Save Simulation Results As…

GAP User Guide March, 2022


Examples Guide 1367

In the new window, select ‘Add’ to save a copy of the transient run with the run description
“GasLift”.

Plot the liquid rate at the RISER TOP.

Gaslift injection started at 60 minutes into the transient simulation. At this point in time, we can
see that the magnitude of the surge is reduced with continuous oscillating liquid production.

Again the detailed transient results can be reviewed to study the holdup profile behaviour with
time and slug catcher analysis to study the surge volume through time.
3.20.10 Mitigate Severe Slugging - Riser Choke
In the next analysis, the engineers will investigate if the system can be stabilised by choking back
production. This approach will increase the pressure in the system which reduces the liberation

1990-2022 Petroleum Experts Limited


1368 GAP

of gas in the system and increases the holdup profile in the riser.

To begin, enter the gaslift source element summary screen and disable the equipment.

Enter the RISER CHOKE input schedule screen and setup a transient schedule to linearly
change the surface choke diameter from 4” to 1”.

Run the transient simulation again and save a copy of the transient simulation results by going to
Transient | Save Simulation Results As…

GAP User Guide March, 2022


Examples Guide 1369

In the new window, select ‘Add’ to save a copy of the transient run with the run description
“Choke”.

Multiple nodes can be viewed at the same time by going to Transient | Plot Nodes Simulation
Results…

In the next window, select RB Base and RISER TOP and plot the liquid rate.

1990-2022 Petroleum Experts Limited


1370 GAP

After the start of the surface choke change at 60 minutes, it can be seen that it takes around 60
minutes for the system to stabilise. At this point, the riser is operating at steady-state given that
the inlet rate (at riser base) is equal to the outlet rate (at riser top).

Looking at the detailed transient results, we can see a stable steady-state holdup profile in the
well. The only source of slugging in the riser is now due to hydrodynamic slugs near the top of the
riser due to the liberation of gas.

GAP User Guide March, 2022


Examples Guide 1371

Although this approach is able to provide to stabilise the system, the engineers have had to
sacrifice production. It current transient model could be taken further to investigate if a
combination of choke and gaslift could be used to stabilise the system and also optimise the
production rate.

This concludes Example 15 and the file can now be saved by going to File | Save As.

After completion of Tutorial 15, the user should be able to perform the following analysis in GAP:

Setup a basic GAP Transient model of a well using a transient pipeline element;
Set up a global temperature gradient;
Run a GAP Transient simulation;
Analyse GAP Transient results

1990-2022 Petroleum Experts Limited


1372 GAP

3.21 Example 16 - GAP Transient: Start Up From Static

3.21.1 Objectives
Introduce GAP Transient riser and well studies;
Model a well starting up from static conditions;
Investigate different start up strategies;

Definition of the Problem


A subsea well is connected to a production separator via a 1000ft horizontal pipeline, a 2000ft
downwards inclined pipeline and a 800ft vertical riser. The well is currently shut-in and a liquid
level has developed within the wellbore. The pressure at the Sep Joint (upstream of the choke
has been measured to be around 2000psia

During this investigation, the team have three main engineering objectives:

Determine the expected steady state production rate.


Identify whether the well can start up naturally.
Investigate different start up strategies.

Learning Topics
The objectives of this example are to learn how to:

Setup a GAP Transient well model


Setup a GAP Transient model of the flowline from subsea wellhead to riser top
Setup a global temperature gradient thermal modelling
Show how to run a GAP Transient simulation

Please note that the GAP Transient simulation calculations will require a separate GAP
Transient license. All other learning topics can be achieved with standalone GAP license.

Executive Summary
The steps followed will be:

1. Create a GAP network to represent the well, subsea flowlines and riser
i. Draw the GAP network elements
ii. Define the pipeline data
2. Calculate the expected steady state production
3. Initialise the model from static conditions
4. Perform the transient simulation
5. Analyse GAP Transient results

GAP User Guide March, 2022


Examples Guide 1373

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 16 – GAP Transient: Start Up From Static

The samples files folder can also be accessed from the windows start menu,
as shown below. This file contains worked examples for all the IPM tools.

3.21.2 Data Available


Temperature Gradient:

True Surrounding
Vertical Temperature
Depth (ft.) (oF)
0 60
800 33
9000 210

Well Model Data:

The well IPR data will be generated from the PROSPER file StartUpFromStatic.Out and the well
VLP data will be manually imported from the TPD file StartUpFromStatic.tpd

Flowline Data WH1 to Manifold

Environment Data
Calculate Heat Transfer Coefficient Unchecked
Overall Heat Transfer Coefficient 8 BTU/h/ft2/F
Oil Heat Capacity 0.53 BTU/lb/F
Gas Heat Capacity 0.51 BTU/lb/F

1990-2022 Petroleum Experts Limited


1374 GAP

Water Heat Capacity 1 BTU/lb/F

Pipe Description
Transient Pipe Step Length 100 ft.
Specify Step Length by Segment Unchecked
Flow Type Tubing Flow
Correlation Hydro-2P
Gravity Coefficient 1
Friction Coefficient 1
Rate Multiplier 1
Maximum Step Length 10000 ft.
Transient Result Data Sampling None

Segment Tubing Inside Tubing Inside


Length (ft.) TVD (ft.)
Type Diameter (in.) Roughness (in.)
600
Line pipe 1000 600 6 0.0006

Flowline Data Manifold to RiserBase

Environment Data
Calculate Heat Transfer Coefficient Unchecked
Overall Heat Transfer Coefficient 8 BTU/h/ft2/F
Oil Heat Capacity 0.53 BTU/lb/F
Gas Heat Capacity 0.51 BTU/lb/F
Water Heat Capacity 1 BTU/lb/F

Pipe Description
Transient Pipe Step Length 100 ft.
Specify Step Length by Segment Unchecked
Flow Type Tubing Flow
Correlation Hydro-2P
Gravity Coefficient 1
Friction Coefficient 1

GAP User Guide March, 2022


Examples Guide 1375

Rate Multiplier 1
Maximum Step Length 10000 ft.
Transient Result Data Sampling None

Segment Tubing Inside Tubing Inside


Length (ft.) TVD (ft.)
Type Diameter (in.) Roughness (in.)
800
Line pipe 2000 600 6 0.0006

Riser Data

Environment Data
Calculate Heat Transfer Coefficient Unchecked
Overall Heat Transfer Coefficient 8 BTU/h/ft2/F
Oil Heat Capacity 0.53 BTU/lb/F
Gas Heat Capacity 0.51 BTU/lb/F
Water Heat Capacity 1 BTU/lb/F

Pipe Description
Transient Pipe Step Length 100 ft.
Specify Step Length by Segment Unchecked
Flow Type Tubing Flow
Correlation Hydro-2P
Gravity Coefficient 1
Friction Coefficient 1
Rate Multiplier 1
Maximum Step Length 10000 ft.
Transient Result Data Sampling None

Segment Length (ft.) TVD (ft.) Tubing Inside Tubing Inside


Type Diameter (in.) Roughness (in.)
0
Line pipe 800 800 4 0.0006

1990-2022 Petroleum Experts Limited


1376 GAP

3.21.3 Build the GAP Model


This section can be used as a general step-by-step procedure to build a GAP model which
includes the following GAP functionality:

Global temperature gradient;


Model a transient well;
Setup a transient pipeline element;
View the transient simulation results.

The following sketch will be used as a reference of the final GAP model setup:

3.21.3.1 Draw the GAP Network


Getting Started
Begin by starting GAP through the Windows start menu. From the GAP entry screen, select File |
New to reinitialise GAP with a new project.

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 -


Gradient

GAP User Guide March, 2022


Examples Guide 1377

Water Vapour No Calculations


Temperature Model Rough Approximation
Heat Transfer Coefficient Enter Heat Transfer Coefficient
Calculate Well Choke On
Delta T
Brine Properties Use Default Correlation
Correlation
Water Viscosity Use Default Correlation
Correlation
Allow Transient Pipes/ Enable Transient Calculations
Wells

Then click Ok to exit this screen.

This completes the system set-up and re-initialises the program.

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 directions are required, please refer to
previous examples in the manual which provide step by step instructions of how to include the
individual elements that make up the system.

3.21.3.2 Define Global Temperature Profile


The global temperature profile will be entered to capture the surrounding geothermal gradient of
the flowline and riser.
The global temperature gradient can be entered by going to Flow Assurance | Global
Temperature Gradient…, as illustrated below.

1990-2022 Petroleum Experts Limited


1378 GAP

In the Global Temperature Gradient interface, enter the profile as below:

3.21.3.3 Define the Well


The well model has already been created in PROSPER. Enter the well summary screen and
browse for the PROSPER file in the Example 16 Initial files folder.

Typically, C:\Program Files (x86)\Petroleum Experts\IPM 12\Samples\gap\Example 16 - Start


Up From Static\Initial Files\

GAP User Guide March, 2022


Examples Guide 1379

The IPR data can be imported by going to Generate | Generate Well IPRs with PROSPER…
and then select to generate for All wells.

In the IPR generation window, select ‘Generate’ to transfer the well IPR data from PROSPER to
the well model in GAP.

1990-2022 Petroleum Experts Limited


1380 GAP

The well VLP data has already been pre-generated and exported in as a *.TPD file. This can be
manually imported to the well model by going to the well Input | VLP tab and selecting the
‘Import’ button. Browse for the GAP Transient Well1.tpd file in the initial files folder.

Please note, the VLPs will only be used for the steady state calculations.

3.21.3.4 Define the Pipelines


Enter the Pipe Data for each of the pipelines as shown below by double clicking on the
pipelines:

Pipeline from WH1 to Manifold

GAP User Guide March, 2022


Examples Guide 1381

Pipeline from Manifold to RiserBase

Riser

3.21.4 Calculate Steady State Performance


With the well and pipeline data entered, calculate the steady state performance of the network
for the case where the separator pressure is 500 psig, via Solve Network | Run Network Solver.

1990-2022 Petroleum Experts Limited


1382 GAP

Return to the main GAP canvas and use the cursor to inspect the results. The steady state liquid
rate at the separator is around 13870 stb/day.

GAP User Guide March, 2022


Examples Guide 1383

3.21.5 Configure Transient Simulation


Although the expected steady state production rates are now known, there is no guarantee that
the well, which is currently shut-in will be able to start and eventually reach stable production. The
transient start up from static conditions can be simulated using GAP Transient. The next steps
will highlight how the current steady state system can be prepared for performing the transient
simulation. As part of this the following aspects will be considered:

Transient IPR to capture the initial transience of the inflow until pseudo-steady state is
achieved
Initialisation of the static conditions
Start Up Schedule

3.21.5.1 Define transient IPR


As the well has been shut-in for some time, the pressure has had time to build up and
equilibrate, upon start-up there will be an initial transient period, where the apparent deliverabilty
is higher as pseudo-steady state has not yet been reached and as such no boundary effects are
felt. The impact on this initial transience can be captured using the transient IPR description in
GAP.

Enable the Transient IPR option on the Well Summary Screen

1990-2022 Petroleum Experts Limited


1384 GAP

Navigate to the IPR section and manually enter the Inflow Performance data as shown below.
Please note, the input data is based on the reservoir properties specified for the Darcy IPR
model in the underlying PROSPER model.

GAP User Guide March, 2022


Examples Guide 1385

To confirm the steady state and transient IPRs are consistent at pseudo steady state, re-
calculate the network performance for the case where the current time is 10/01/2020 (i.e.
sufficient time to pseudo steady state has passed).

1990-2022 Petroleum Experts Limited


1386 GAP

Use the cursor to analyse the results. The liquid production at the separator can be seen to be
13930 stb/day, which is in close agreement with the 13870stb/day found previously when using
the steady state IPR.

The above being said, it is worthwhile noting that this represents the network performance at the
point in time where pseudo steady state has been achieved, and there is now confidence that at
pseudo steady state, the transient and steady state PI entry IPR provide consistent results.

For the study to be performed, as the time scales are much shorter (only 1 hour compared to 10
days), pseudo-steady state within the reservoir will not yet have been established, meaning the

GAP User Guide March, 2022


Examples Guide 1387

apparent deliverability and in turn the steady state rate at the end of the transient simulation (i.e.
after 1 hour of production) will be higher much higher than the production once pseudo-steady
state has been achieved after 10 days.

The steady state performance of the network after one hour, can be calculated as follows:

Navigate to Solve Network | Run Network Solver...


Change the units of the Current Time field to "date/time"
Enter a current time of "01/01/2020 01:00:00", which corresponds to the end of the transient
simulation
Press next and calculate the network

From the image below, the production rate after 1 hour is expected to be around 17500 stb/day.

1990-2022 Petroleum Experts Limited


1388 GAP

3.21.5.2 Convert to Transient


To enable the transient calculations for the well and pipelines, the Transient option needs to be
enabled for the respective elements. For the well this is done via the Summary screen or by right
clicking on the well element.

This then automatically interrogates the underlying PROSPER file, importing the downhole
equipment description, local geothermal gradient etc.

GAP User Guide March, 2022


Examples Guide 1389

For the pipeline this is done via the Summary screen or by right clicking on the pipeline. Please
note, this will need to be repeated for each pipeline.

1990-2022 Petroleum Experts Limited


1390 GAP

3.21.5.3 Define initialisation


Before the transient simulation can be run, the initialisation method must be defined. For the
example in question, the well is initially shut-in and a liquid level has developed within the
wellbore. Whilst the shut-in pressure has been measured at the top of the riser (about 2000psig)
the position of the liquid level is unknown.

With the above in mind, the next step is to determine the liquid level that balances the static
reservoir pressure and the measured shut-in pressure at surface. As an initial assumption, the
riser and subsea pipelines are assumed to be filled with gas only.

Navigate to the Riser's Input | Simulation screen:

Set the Initialisation Method to "Static" from the drop down menu.
Set the Calculated Boundary to "Upstream" as the downstream pressure is known
Enter the downstream pressure of 2000psig
Select the fluids upstream and downstream of the liquid level - both "Gas01"
Enter a liquid level, as both fluids are the same, this input is arbitrary, e.g. 700ft
Press Calculate to determine the upstream pressure. This can then be used as the
Downstream Pressure for the next element upstream

GAP User Guide March, 2022


Examples Guide 1391

Navigate to Pipeline 1's Input | Simulation screen:

Set the Initialisation Method to "Static" from the drop down menu.
Set the Calculated Boundary to "Upstream" as the downstream pressure is known
Enter the downstream pressure of 2070psig (as calculated above). Please note, the value has
been "rounded" on purpose to ensure there is a small dP between the pipelines to provide a
better starting point for the direction of flow.
Select the fluids upstream and downstream of the liquid level - both "Gas01"
Enter a liquid level, as both fluids are the same, this input is arbitrary, e.g. 700ft
Press Calculate to determine the upstream pressure

1990-2022 Petroleum Experts Limited


1392 GAP

Navigate to Pipeline 2's Input | Simulation screen:

Set the Initialisation Method to "Static" from the drop down menu.
Set the Calculated Boundary to "Upstream" as the downstream pressure is known
Enter the downstream pressure of 2053psig (as calculated above)
Select the fluids upstream and downstream of the liquid level - both "Gas01"
Enter a liquid level, as both fluids are the same, this input is arbitrary, e.g. 600ft
Press Calculate to determine the upstream pressure

Navigate to Well1's Input | Simulation screen:

Set the Initialisation Method to "Static" from the drop down menu.
Set the Calculated Boundary to "Upstream" as the downstream pressure is known
Enter the downstream pressure of 2053psig (as calculated above)
Set the Upstream Fluid as "Water01" and the Downstream Fluid to "Gas01"

Whilst the liquid level within the wellbore is unknown, both the Downstream and Upstream
pressure (i.e. the Reservoir Pressure) are now known, meaning the liquid level can be
determined through an iterative procedure of changing the liquid level to balance the two
pressures.

As an initial guess say the liquid level is 2500ft TVD and then press Calculate to calculate the
expected upstream pressure

GAP User Guide March, 2022


Examples Guide 1393

From the image above, it can be seen that the calculated Upstream pressure (at the bottom of
the well) is only 5000psig, which is significantly lower than the known reservoir pressure of
5200psig. In this respect, the liquid level now needs to be adjusted to obtain an Upstream
Pressure that is close to the known reservoir pressure.

Enter a liquid level of say 2000ft


Press Calculate to determine the upstream pressure

With the above in place, the system is now configured to perform a transient simulation of the
well start up.

1990-2022 Petroleum Experts Limited


1394 GAP

3.21.6 Run GAP Transient Simulation


A transient simulation will now be run to study the behaviour of the network and identify whether
the well can successfully start up and eventually produce stably. To run a GAP Transient
simulation, navigate to Transient | Run Simulation, as shown below:

The transient simulation should be setup as follows:

Start Date 01/01/2020 00:00:00


End Date 01/01/2020 01:00:00
Step Size (dt) 30 Seconds
Sample Results None

Once the data above has been entered, select Next, ensure the separator pressure is 500 psig
and click Next again.

GAP User Guide March, 2022


Examples Guide 1395

Run the transient simulation with "No Optimisation" by clicking Calculate.

Once the calculation has concluded, select Main to return to the main interface, where we are in
a position to save and then analyse the results.

3.21.7 Saving the Transient Simulation Results


Once the transient simulation has been run, a copy of the transient simulation results can be
saved by going to Transient | Save Simulation Results As…

1990-2022 Petroleum Experts Limited


1396 GAP

In the resultant interface, select ‘Add’ to save a copy of the transient run with the run description
“Initial”. This will allow for these results to be recalled at any time and compared to alternative
scenarios.

3.21.8 Analyse GAP Transient Results


Firstly the separator simulation results will be viewed to identify whether the well is able to start
up and whether stable production is achieved.

GAP User Guide March, 2022


Examples Guide 1397

At early times, a large gas surge is observed (black line), which can be attributed to the
depressurisation of the compressed gas within the pipelines from originally around 2000psig.
Eventually, as the well unloads, a water surge is experienced (red line), corresponding to the
original column of water within the wellbore. As the water is being lifted from the wellbore, oil
begins to be produced corresponding to the reservoir fluids (green line). Note, the liquid rate at
steady state, is consistent with the previously calculated steady state production rate of 17500
stb/day.

Further analysis can be performed by clicking on the Riser pipeline and selecting "Show
Transient Results", followed by the "Initial" results that were saved earlier and then pressing
Continue.

1990-2022 Petroleum Experts Limited


1398 GAP

This dialog allows various variables to be plotted along the wellbore through time (i.e. either MD
or time slices or 3D plot). Another useful feature here is the slug-calculator that can be used to
assess whether the production separator can cope with the liquid surges that are being
produced.

Access the Slug Catcher Calculator and enter the separator geometry (Diameter = 65in and L/D
Ratio = 2), then press Calculate.

GAP User Guide March, 2022


Examples Guide 1399

From the calculation results it can be seen that at the time when the initial water surge reaches
the separator (peak rate of around 30000stb/day), there is potential for liquid carry over in to the
gas line.

1990-2022 Petroleum Experts Limited


1400 GAP

3.21.9 Mitigating Surges


Given the very high peak gas and liquid rates in comparison to the steady state design, to
prevent adverse effects on the production system, it would be more desirable to depressurise
the pipelines more slowly to prevent extreme gas and liquid surges.

Rather than directly exposing the pressurised pipelines to the significantly low separator
pressure of 500psig, in reality a valve/choke would be slowly opened, gradually reducing the
back-pressure on the system. With this in mind, the next step is to investigate different strategies
"opening" the surface valve/choke.

Return to the main screen, navigate to the Sep elements Input | Schedule section and ensure
the View/Edit Transient Simulation Schedule option is enabled.

In the case above, the separator pressure will be gradually reduced from an original value of
1950psig to the final value of 500psig over the course of 20min. Please note, in this case, the
separator pressure is assumed to represent the pressure at the choke inlet.

With the above in place, the simulation can be re-run, saving the results upon completion as
"15min", via Transient | Save Simulation Results As...

Viewing the separator simulation results, the rate profiles from the different scenarios can be
compared.

GAP User Guide March, 2022


Examples Guide 1401

From the plots above it can be seen that gradually reducing the back pressure on the system
allows the initial gas surge to be significantly reduced, however, although the liquid surge has
been delayed there is no significant change in magnitude.

The delay in the liquid surge can be attributed to the slower depressurisation of the riser and
subsea pipelines, resulting in the well beginning to flow at a later point in time as the BHP
reduces more slowly.

With the above in mind, whilst the initial strategy appears to have been a partial success, the
liquid surge has only been delayed but not prevented. As the next step, different profiles for
reducing the back pressure can be explored. For example, the Separator pressure could initially
be reduced from 1950psig to 1000psig over the first 15min, then the Back Pressure is held
constant at 1000psig for a further 10min, before reducing the back pressure to 500psig over the
next 15min.

To implement this, return to the main screen, navigate to the Sep elements Input | Schedule
section and adjust the Transient Schedule as shown below.

1990-2022 Petroleum Experts Limited


1402 GAP

With the above in place, the simulation can be re-run, saving the results upon completion as
"40min", via Transient | Save Simulation Results As...

Viewing the separator simulation results, the rate profiles from the different scenarios can be
compared.

From the plots above it can be seen that by reducing the back pressure even more gradually, the

GAP User Guide March, 2022


Examples Guide 1403

initial gas surge has been further reduced and throughout the simulation (apart from between
900 to 1700s) the gas rate is stable at or near the steady state production rate. Regarding the
liquid surge, rather than just delaying this until a later time like the previous schedule, the
magnitude of the surge has significantly been reduced and now fluctuations of about 4000stb/
day are observed before the rate stabilises at the steady state rate of around 17500stb/day.

When recalculating the Slug Catcher Calculator, it can be seen that this time there is no risk of
liquid carry over in the separator.

This concludes Example 16 and the file can now be saved by going to File | Save As.

After completion of Example 16, the user should be able to perform the following analysis in
GAP:

1990-2022 Petroleum Experts Limited


1404 GAP

Setup a basic GAP Transient model of a well and surface pipelines using a transient pipeline
element;
Set up a global temperature gradient;
Initialise a model from static conditions
Run a GAP Transient simulation;
Analyse GAP Transient results
Develop a strategy for starting up wells from static conditions using the scheduling functionality

GAP User Guide March, 2022

You might also like