Professional Documents
Culture Documents
User Manual
IPM
GAP
Version 9
August 2012
GAP
IPM - Multiphase Production Optimisation OVERVIEW
by Petroleum Experts Limited
GAP is a multiphase oil and gas optimiser tool that models the surface gathering network of
field production systems. When linked with the well models of PROSPER and reservoir
models of MBAL a full field production optimisation and forecast can be achieved. GAP can
model production systems containing oil, gas and condensate, in addition to gas or water
injection systems.
GAP's powerful non-linear optimisation engine allocates gas for gas lifted wells or sets
wellhead chokes for naturally flowing wells to maximise revenue or oil/gas production while
honouring constraints at any level in the system.
APPLICATIONS
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.
IPM Suite, GAP, PROSPER, MBAL, PVTP, REVEAL, RESOLVE, IFM and OpenServer are trademarks of
Petroleum Experts Ltd.
Microsoft (Windows), Windows (2000) and Windows (XP) are registered trademarks of the Microsoft
Corporation
The software described in this manual is furnished under a licence agreement. The software may be used or
copied only in accordance with the terms of the agreement. It is against the law to copy the software on any
medium except as specifically allowed in the license agreement. No part of this documentation may be
reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying,
recording, or information storage and retrieval systems for any purpose other than the purchaser's personal
use, unless express written consent has been given by Petroleum Experts Limited.
Address:
email: edinburgh@petex.com
Internet: www.petex.com
Table of Contents
0
Method ......................................................................................................................................................... 78
Edit Injection .........................................................................................................................................................
Fluids 85
Edit Tax Regimes
......................................................................................................................................................... 87
Edit Emulsion .........................................................................................................................................................
Models 88
Edit Default.........................................................................................................................................................
Settings 91
Edit System .........................................................................................................................................................
Summary 94
View System .........................................................................................................................................................
Statistics 95
Disable Options......................................................................................................................................................... 96
The View Menu .......................................................................................................................................................... 97
Draw Options ......................................................................................................................................................... 98
Highlight Options
......................................................................................................................................................... 98
Highlight TVD Differences ......................................................................................................................................... 98
Highlight Solver .........................................................................................................................................
Pressure/Mass Imbalances 102
Highlight Violated .........................................................................................................................................
and Limiting Constraints 103
Window Aspect.........................................................................................................................................................
and Draw ing Options 104
Select Info Displayed ......................................................................................................................................... 104
Select Default Icon .........................................................................................................................................
Label Position 105
Colours ......................................................................................................................................... 105
Icon Sizes ......................................................................................................................................... 107
Fonts ......................................................................................................................................... 107
Grid ......................................................................................................................................... 107
Netw ork Draw.........................................................................................................................................................
ing Position 109
Normalize Equipment .........................................................................................................................................
Icons Position and Snap to Grid 109
The Edit Menu .......................................................................................................................................................... 110
Undo Options ......................................................................................................................................................... 110
Select Options
......................................................................................................................................................... 112
Selected Equipment
.........................................................................................................................................................
Options 115
Selected Items ......................................................................................................................................... 115
Selected Wells and .........................................................................................................................................
Inflow s 118
Selected Pipes ......................................................................................................................................... 120
Selected Tanks ......................................................................................................................................... 121
Selected Groups......................................................................................................................................... 122
Find Equipment
.........................................................................................................................................................
on System Window 123
Edit Options ......................................................................................................................................................... 125
Edit Equipment Controls ......................................................................................................................................... 125
Edit Project Paths ......................................................................................................................................... 127
Transfer and .........................................................................................................................................................
Import Options 129
Transfer Well Data .........................................................................................................................................
from MBAL Models 129
Initialise IPRs from .........................................................................................................................................
Tank Simulations 131
Import Compositions ......................................................................................................................................... 133
Lump/Delump Compositions ......................................................................................................................................... 135
Transfer Options.........................................................................................................................................
for Gas Lift Injection 135
Execute OpenServer
.........................................................................................................................................................
Statement 136
Importing .........................................................................................................................................................
GAP models in an existing project 138
The Constraints ..........................................................................................................................................................
Menu 143
System Constraints
......................................................................................................................................................... 143
Binding (Yes/No)
......................................................................................................................................................... 146
Edit Constraints
.........................................................................................................................................................
Table 147
Edit Abandonment
.........................................................................................................................................................
Constraints Table 149
4 Describing
...................................................................................................................................
the PVT 150
Black Oil .......................................................................................................................................................... 151
Com positional
..........................................................................................................................................................
Options 154
EoS Model.........................................................................................................................................................
Setup 154
More Lumping ......................................................................................................................................... 163
II
III G AP
IV
V G AP
Emulsion correction
......................................................................................................................................................... 332
Wax or Hydrate
.........................................................................................................................................................
Risk 335
Tanks .......................................................................................................................................................... 338
Tank Summary.........................................................................................................................................................
Screen 339
Tank Input.........................................................................................................................................................
Data (Material Balance Tank) 341
Constraints ......................................................................................................................................... 342
Wells ......................................................................................................................................... 342
Injection ......................................................................................................................................... 343
Tank Schedule ......................................................................................................................................... 344
Tank Results ......................................................................................................................................... 345
Flares and Vents.......................................................................................................................................................... 346
Summary .........................................................................................................................................................
and Input 346
Results ......................................................................................................................................................... 346
Tank Input Data ..........................................................................................................................................................
(Decline Curve Tank) 348
Tank Production
.........................................................................................................................................................
Data 349
Compressibility
......................................................................................................................................................... 351
Pum ps .......................................................................................................................................................... 353
Pump Summary.........................................................................................................................................................
Data 354
Performance .........................................................................................................................................................
Curve Options 355
Pump Control ......................................................................................................................................... 358
Jet Pump .........................................................................................................................................................
Options 360
Jet Pump Control......................................................................................................................................... 362
Framo Pump .........................................................................................................................................................
Options 364
Framo Pump Control ......................................................................................................................................... 366
Constraints ......................................................................................................................................................... 367
Pump Calculate
.........................................................................................................................................................
Button 368
Pump Schedule
.........................................................................................................................................................
(ONLY for prediction) 370
Com pressors .......................................................................................................................................................... 371
Compressor .........................................................................................................................................................
Summary Data 371
Input Data.........................................................................................................................................................
for Compressor (Full Model) 373
Input Data.........................................................................................................................................................
for Fixed dP Compressor 381
Input Data.........................................................................................................................................................
for Fixed Pow er Compressor 382
Input Data.........................................................................................................................................................
for Reciprocating Compressor 384
Input Data.........................................................................................................................................................
for MultiPhase Compressor/Pump 385
Compressor .........................................................................................................................................................
Control (Full Model Only) 387
Compressor .........................................................................................................................................................
Schedule (ONLY for Prediction) 388
Compressor .........................................................................................................................................................
Calculate Button 389
Operating.........................................................................................................................................................
point in Plot 389
Surge and.........................................................................................................................................................
Choke 391
Sources / Sink .......................................................................................................................................................... 392
Source ......................................................................................................................................................... 392
Source Data Entry ......................................................................................................................................... 394
Source Summary ...................................................................................................................................
Data 394
Source Data Input ................................................................................................................................... 396
Source Schedule ...................................................................................................................................
(ONLY for Prediction) 397
Sink ......................................................................................................................................................... 397
Sink Data Entry ......................................................................................................................................... 397
Sink Summary Data ......................................................................................................................................... 398
Sink Input Data ......................................................................................................................................... 398
Sink Schedule (ONLY ...................................................................................................................................
for Prediction) 399
Inline Elem ents.......................................................................................................................................................... 400
Inline Gate.........................................................................................................................................................
Valve 401
Inline gate Valve.........................................................................................................................................
Data Summary Screen 402
Input Data / Schedule .........................................................................................................................................
( ONLY for prediction) 402
Contents VI
Inline Check.........................................................................................................................................................
Valve 403
Inline Check Valve .........................................................................................................................................
Data Summary Screen 403
Input Data / Schedule .........................................................................................................................................
( ONLY for prediction) 404
Inline Separation
......................................................................................................................................................... 405
Inline Separation.........................................................................................................................................
Data Summary Screen 405
Inline Separation.........................................................................................................................................
Data Input Screen 407
Input Data / Schedule .........................................................................................................................................
(ONLY for prediction) 407
Inline Choke......................................................................................................................................................... 408
Inline Choke Data .........................................................................................................................................
Summary Screen 408
Inline Choke dP Control......................................................................................................................................... 410
Input Data / Schedule .........................................................................................................................................
(ONLY for prediction) 413
Inline Injection
......................................................................................................................................................... 413
Inline Injection Data .........................................................................................................................................
Summary Screen 413
Inline Injection Data .........................................................................................................................................
Input Screen 414
Defining the Injection ...................................................................................................................................
Fluid PVT 415
Defining the Injection ...................................................................................................................................
Rate 415
Schedule (ONLY.........................................................................................................................................
for prediction) 416
Inline General
......................................................................................................................................................... 417
Notes on Inline General.........................................................................................................................................
Elements 417
Inline General Input .........................................................................................................................................
Data (Script) Screen 418
Inline General Script .........................................................................................................................................
Variables 418
Schedule (ONLY.........................................................................................................................................
for prediction) 420
Inline Element Variables
......................................................................................................................................... 420
Control Variables ......................................................................................................................................... 422
Temporary Variables ......................................................................................................................................... 423
Results Variables ......................................................................................................................................... 423
Tax Regime Variables ......................................................................................................................................... 423
FLOW and COMP .........................................................................................................................................
Structure Variables 424
PVT Calculator .........................................................................................................................................
- Black Oil 427
PVT Calculator .........................................................................................................................................
- Compositional 429
Logging Messages ......................................................................................................................................... 431
Mathematical Functions ......................................................................................................................................... 431
Control Structures ......................................................................................................................................... 432
Example Script ......................................................................................................................................... 434
Inflow Icon .......................................................................................................................................................... 436
Inflow Summary
.........................................................................................................................................................
Screen 436
Input ......................................................................................................................................................... 437
Grouping .......................................................................................................................................................... 438
Grouping .........................................................................................................................................................
Data Entry 439
Constraints ......................................................................................................................................... 439
Schedule ......................................................................................................................................... 440
Grouping ......................................................................................................................................... 440
Flow sheets .......................................................................................................................................................... 442
Notes on Constraints
.......................................................................................................................................................... 447
6 VLP/IPR
...................................................................................................................................
Generation 447
A w ell m odel..........................................................................................................................................................
in GAP 447
IPR ......................................................................................................................................................... 448
VLP ......................................................................................................................................................... 450
Importance .........................................................................................................................................................
of VLP Data Ranges 450
Batch Generation
..........................................................................................................................................................
of IPRs 452
Single layer
.........................................................................................................................................................
w ells 452
Multilayer .........................................................................................................................................................
w ells 457
Batch Generation
..........................................................................................................................................................
of Well and Pipe VLPs 466
Batch Generation
.........................................................................................................................................................
of VLPs 466
VI
VII G AP
Values to.........................................................................................................................................................
use for VLP Generation 470
Generating.........................................................................................................................................................
Well VLP on a w ell-by-w ell basis 475
Batch Generation
.........................................................................................................................................................
of VLPs w ith Mass flow rates 478
Batch Generation
.........................................................................................................................................................
of Pipe VLPs 480
Batch Generation
..........................................................................................................................................................
of Well Perform ance Curves 484
7 Model
...................................................................................................................................
Validation 489
Well Model Validation
.......................................................................................................................................................... 489
Checking Wells
..........................................................................................................................................................
Calibration 489
Running Model
.........................................................................................................................................................
Validation / Quality Check 489
Checking .........................................................................................................................................................
the Quality of Individual Wells Graphically 494
8 Network
...................................................................................................................................
Solver and Optimiser 495
The Solver .......................................................................................................................................................... 495
The Optim iser.......................................................................................................................................................... 495
Constraints and
..........................................................................................................................................................
Equipm ent Control Screen 495
Constraints
......................................................................................................................................................... 495
Equipment.........................................................................................................................................................
Control Screen 496
Optimisation
.........................................................................................................................................................
Objective Function 497
Solving the Netw
..........................................................................................................................................................
ork 501
Solver Modes .......................................................................................................................................................... 503
No Optimisation
......................................................................................................................................................... 503
Optimise w.........................................................................................................................................................
ith all constraints 504
Optimise w.........................................................................................................................................................
ith potential constraints only 505
The Solver / Optim
..........................................................................................................................................................
iser Settings 506
Calculation Results
.......................................................................................................................................................... 513
9 Prediction
................................................................................................................................... 516
Prediction - Basics
.......................................................................................................................................................... 517
Forecast .........................................................................................................................................................
Workflow 522
Linking MBAL
.........................................................................................................................................................
files to GAP 522
Running Predictions
......................................................................................................................................................... 523
Notes on .........................................................................................................................................................
Constraints 530
Linking Production
.........................................................................................................................................................
/ Injection Forecasting 530
Prediction Options
.......................................................................................................................................................... 534
Run Prediction
......................................................................................................................................................... 534
View Prediction
.........................................................................................................................................................
Log 534
Save Prediction
.........................................................................................................................................................
Results as 535
Reload Prediction
.........................................................................................................................................................
Snapshot 538
Prediction.........................................................................................................................................................
Script Options 540
Edit System.........................................................................................................................................................
Constraints Schedule 541
Notes on Constraints ......................................................................................................................................... 542
Edit Separator
.........................................................................................................................................................
and Joint Schedules 543
Edit Equipment
.........................................................................................................................................................
Schedule 546
Edit Tank .........................................................................................................................................................
Schedule 549
Edit Gas lift
.........................................................................................................................................................
Schedule 550
Edit Schedule
.........................................................................................................................................................
Event Groups 552
Edit DCQ Schedule
......................................................................................................................................................... 552
Apply Schedule
.........................................................................................................................................................
to 558
Purge Results
......................................................................................................................................................... 559
Plot and View
.........................................................................................................................................................
the Prediction Results 559
Plot Nodes Prediction .........................................................................................................................................
Results 560
Plot Tanks Prediction .........................................................................................................................................
Results 564
Plot Emissions Prediction
.........................................................................................................................................
Results 564
View DCQ Prediction .........................................................................................................................................
Results 564
10 Results
...................................................................................................................................
and Reports 565
Contents VIII
VIII
IX G AP
Prediction.........................................................................................................................................................
2 - Methanol Excluded from the System 660
4 Example
...................................................................................................................................
2 - Oil Production Network 665
Objectives .......................................................................................................................................................... 665
Data available.......................................................................................................................................................... 667
Build the GAP ..........................................................................................................................................................
m odel 668
Draw the.........................................................................................................................................................
GAP Netw ork 668
Define the.........................................................................................................................................................
Reservoirs 676
Define the.........................................................................................................................................................
Wells 677
Generate.........................................................................................................................................................
Well IPRs 679
Generate.........................................................................................................................................................
Well VLPs 681
Model Validation
.........................................................................................................................................................
to QC the w ells 685
Define the.........................................................................................................................................................
Pipelines 687
Pipeline Matching
......................................................................................................................................................... 694
Question 1 - ..........................................................................................................................................................
Solution 697
Initialise IPRs
.........................................................................................................................................................
from Tank Simulations 697
Solve netw .........................................................................................................................................................
ork for w ells fully open 699
Question 2 - ..........................................................................................................................................................
Solution 702
Entering the .........................................................................................................................................................
Constraint 702
Setting Well .........................................................................................................................................................
Controls 703
Solve Netw .........................................................................................................................................................
ork w ith Optimisation 704
Question 3 - ..........................................................................................................................................................
Solution 708
Run Prediction
.........................................................................................................................................................
w ith Optimisation 708
Saving the .........................................................................................................................................................
Prediction results 712
Question 4 - ..........................................................................................................................................................
Solution 713
Interpreting .........................................................................................................................................................
a GAP Model 713
Analyzing.........................................................................................................................................................
Snapshots 719
Question 5 - ..........................................................................................................................................................
Solution 724
Introducing .........................................................................................................................................................
Pressure Support 724
Comparing .........................................................................................................................................................
Scenarios 725
Creating an Archive
..........................................................................................................................................................
File 728
5 Example
...................................................................................................................................
3 - Pipeline detailed results 731
Objectives .......................................................................................................................................................... 731
Data available.......................................................................................................................................................... 732
Run Solve Netw..........................................................................................................................................................
ork 732
Pipeline detailed
..........................................................................................................................................................
results 734
Convert the pipeline
..........................................................................................................................................................
to PROSPER online 738
6 Example
...................................................................................................................................
4-Associated Water Injection System 746
Objectives .......................................................................................................................................................... 746
Data Available
.......................................................................................................................................................... 747
Prediction to..........................................................................................................................................................
Determ ine Water Injection Requirem ent 747
Calculating the
..........................................................................................................................................................
Num ber of Water Injectors 751
Associate Production
..........................................................................................................................................................
to Water Injection Netw ork 757
Run Prediction
..........................................................................................................................................................
With Coupled Models 760
7 Example
...................................................................................................................................
5 - Smart Well Modelling in GAP 765
Objectives .......................................................................................................................................................... 765
Data Available.......................................................................................................................................................... 766
Build the GAP ..........................................................................................................................................................
Netw ork 767
Draw the.........................................................................................................................................................
GAP Netw ork 769
Define the.........................................................................................................................................................
IPR Elements 775
Define the.........................................................................................................................................................
'Completion' Pipes 778
Define the.........................................................................................................................................................
Outflow 780
Write the .........................................................................................................................................................
Prediction Script 782
Run the Prediction
..........................................................................................................................................................
Without Optim isation 786
Contents X
X
XI G AP
Define the.........................................................................................................................................................
Reservoir 903
Setting up.........................................................................................................................................................
MBAL as compositional 904
Entering compositional .........................................................................................................................................
PVT Data 906
Define the.........................................................................................................................................................
Wells 913
Import EOS Composition .........................................................................................................................................
in GAP 915
Generate Well IPRs ......................................................................................................................................... 917
Import VLPs ......................................................................................................................................... 919
Define the.........................................................................................................................................................
LNG Plant 920
Define the.........................................................................................................................................................
Pipelines 922
Setting the.........................................................................................................................................................
Well Controls 923
Set the Scheduling
......................................................................................................................................................... 924
Solve Netw ork.......................................................................................................................................................... 925
View ing the
.........................................................................................................................................................
Detailed Compositional Results 928
Running the ..........................................................................................................................................................
Prediction 930
View ing the
.........................................................................................................................................................
Detailed Compositional Results 934
12 Example
...................................................................................................................................
9b - LNG (Black Oil Compositional Lumping-Delumping) 948
Objectives .......................................................................................................................................................... 948
Data Available .......................................................................................................................................................... 949
Set up GAP as ..........................................................................................................................................................
Black Oil com positional Lum ping/Delum ping 949
Running the ..........................................................................................................................................................
Prediction 952
Prediction.........................................................................................................................................................
and view ing the results 954
Black Oil - Lum..........................................................................................................................................................
ping/Delum ping 959
13 Example
...................................................................................................................................
10 - Tight Gas 960
Objectives .......................................................................................................................................................... 960
Data Available.......................................................................................................................................................... 961
Build the Sector
..........................................................................................................................................................
m odel 963
Draw the.........................................................................................................................................................
GAP Netw ork 963
Define the.........................................................................................................................................................
Wells 965
Generate transient .........................................................................................................................................
IPR Data 966
Import VLPs ......................................................................................................................................... 971
Define the.........................................................................................................................................................
Pipelines 972
Solve Netw ork..........................................................................................................................................................
(Sector Model) 973
Build the Full..........................................................................................................................................................
Model 974
Create Partial
.........................................................................................................................................................
GAP file 975
Import Partial
.........................................................................................................................................................
GAP file 975
Solve Netw ork..........................................................................................................................................................
(Full Model) 978
Including the
.........................................................................................................................................................
Compressor 978
Bypassing .........................................................................................................................................................
the Compressor 980
14 Example
...................................................................................................................................
11 - Coal Bed Methane 984
Objectives .......................................................................................................................................................... 984
Data Available .......................................................................................................................................................... 985
Build the GAP ..........................................................................................................................................................
Model 986
Draw the.........................................................................................................................................................
GAP Netw ork 986
Define the.........................................................................................................................................................
Reservoir 988
Define CBM .........................................................................................................................................................
Wells 989
Define the.........................................................................................................................................................
Routing Links 991
Define the.........................................................................................................................................................
Pipelines 995
Generate.........................................................................................................................................................
Well IPRs 995
Generate.........................................................................................................................................................
Well VLPs 997
Set the Scheduling
.........................................................................................................................................................
for the Wells 1000
Set the Well
.........................................................................................................................................................
Controls 1001
Run Prediction
......................................................................................................................................................... 1002
Interpret the Results......................................................................................................................................... 1003
Contents XII
XII
Chapter
1
Technical Overview 2
1 Technical Overview
PETROLEUM EXPERTS GAP (General Allocation Package) is a multiphase flow simulator that
is able to model and optimise production and injection networks. The concept of the network is
here intended in the fullest sense, therefore it includes both the surface and downhole
equipment.
GAP is part of the IPM Suite and allows the engineer to build complete system models
including; the reservoirs, wells and surface network.
GAP can be linked directly to PROSPER and MBAL to model entire reservoir and productions
systems. Reservoir numerical simulators (REVEAL, Eclipse, Imex, GEM, etc.), process
simulators (Hysys, Unisim) and spreadsheets can also be linked through the Petroleum
Experts controller RESOLVE.
GAP can handle a combination of different fluids including; oils, dry and wet gases, retrograde
condensates, steam and water flowing through complex production or injection systems. The
fluid phase behaviour can be modelled using the Black Oil formulation or Equation of State
Compositional Modelling. The rigorous compositional modelling capabilities of GAP enable
the engineer to perform studies where the determination of the fluid composition is crucial (for
example, in the case of environmental restrictions or in order to satisfy the requirements at
process level) or when it is necessary to determine the conditions at which there is precipitation
of solids for Flow Assurance studies (wax and hydrate deposition).
Calculations can be performed to determine the state of the system at a specific point in time (
Solve Network) or to understand the evolution of the model with time (Prediction), taking into
consideration the connected reservoir simulator (MBAL or any numerical simulator) to model the
reservoir depletion.
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.
MAIN APPLICATIONS
Field Optimisation 8
Field Planning 9
Reservoir Modelling 14
Artificial Lift 16
Automation 18
Examples Index 30
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.
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
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)
9 Gas lift optimization Example on modelling gas lift networks is provided in the
including coupling to manual.
gas lift gas injection
system
15 Voidage replacement These are automatically done based on user specified values
calculations
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
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.
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.
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
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
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.
All of the compositional PVT methods can be used with the full or the lumped compositions.
The black oil viscosity models can now be combined with the EOS method so that density
calculations can be handled by the EOS and the viscosity can be calculated using the
correlations improving the flexibility of pipeline pressure drop calculations NEW!!!
An improved EOS for CO2 modelling which reproduces the results of Span-Wagner EOS and
has the additional capability of handling other impurities in the composition, is now available
NEW!!!
Back to Overview 2
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).
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.
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.'
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.
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.
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
Features:
PROSPER on line for advanced temperature modelling (Enthalpy Balance, Improved
Approximation).
Improved Approximation available with GAP 'Internal Correlations' pressure drop model.
Programmable elements allowing modelling of complex user-defined equipment.
Back to Overview 2
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
Main features:
Well inflow and outflow elements to decompose the wellbore
Pipeline elements can have tubing or annular flow patterns with a multitude of different flow
connections
PROSPER on line allowing the use of rigorous temperature models
Back to Overview 2
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:
Back to Overview 2
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.
C = Constant
This set of equations is solved numerically to provide the natural response of the network.
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:
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.
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.
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.
This has a clear maximum in the X region we are looking into, indicated by the red arrow on the
plot above.
In a linear system, two methods can be applied to determine the maximum of this function:
Bracketing
Derivatives
The first method is based upon trying different guesses of X and calculating Y. After trying
a number of X guesses, the maximum is Bracketed and reached. The following
diagram shows the approach:
The 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
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):
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):
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.
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:
As these responses are inbuilt in the calculations, the actual behaviour for the wells can be
constructed and the optimum solution found as shown in the last figure.
NLP will always result in higher rates with less gas injection compared to Linear
Programming.
GAP, along with other Petroleum Experts software, can comfortably be used under Windows
98, Windows ME, Windows NT, Windows 2000, Vista, Windows XP and Windows 7 operating
systems.
The screen displays in this guide are created using both Windows XP and the Windows 7
interface.
The screen displays used in this guide are taken from the examples provided with the software
as well as models from clients (with permission). On occasion, the data files may vary from the
examples shown as updates to the program are issued. Where major amendments or changes
to the program require further explanation, the corresponding documentation will be issued.
Version 9
GAP is now available as a 64-bit application. The main new developments implemented in GAP
version 9 are:
PVT Modelling
Multiphase Flash
Well Modelling
Pump/Compressor Modelling
Program Interface
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
Well Modeling
Well Control
Program Interface
Version 8
The main new developments implemented in GAP version 8 are:
Lumping/Delumping methodology
Compositional Lumping/Delumping
Black Oil Lumping/Delumping
Import .PRP composition file for multiple wells, main PVT and Gaslift PVT
Modeling
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.
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
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.
Program Interface
Version 7.0
The main new developments implemented in GAP version 7 are:
Modeling
Pipeline modeling:
Annular flow calculation
Improved Approximation temperature model for Steam
Specify Black Oil Correlation for each Pipe Element
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
Edit/Undo button
Flowsheets (sub-models)
user can now specify flow correlation to be used when generating Lift Curves for
Pipes.
user can now view all elements linked to a GROUP from the same screen.
Version 6.0
GAP Fully Compositional
Modeling
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.
Version 5.0
Program internal structure
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.
Program interface
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.
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.
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
Optimisation on revenue
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.
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.
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...)
2
45 GAP
2 User Guide
2.2 Introduction
Petroleum Experts General Allocation Package (GAP) is an extremely powerful and useful tool
offered to the Petroleum Engineering community. GAP offers complete surface production/
injection network modelling, capable of handling a variety of different wells in the same network
with the ability to optimise hugely complicated systems very efficiently.
The optimiser controls production rates using wellhead chokes, ESP operating frequencies,
pump/compressor speeds or allocating lift gas to maximise the hydrocarbon production while
honouring constraints at the gathering system, well and reservoir levels.
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.
Link to MBAL
Link to PROSPER
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.
Beginning-to-end
If the user is new to Windows applications, we recommend reading this document from
beginning to end to become familiar with the program features, menus, and options. This is the
slow approach, but will cover all there is that is necessary to work with the program.
Selected tasks
Use this approach only if the user is already familiar with the basic functionality of the program.
Worked examples
If the user has limited time and wants to sample the program features quickly, follow the
instructions provided in the examples. The examples can be found in the Examples Guide 598 .
The examples demonstrate the fundamentals of building a network, running sensitivities and
performing predictions with full integrated models. Considerable effort has been made to
ensure that the examples are practical and relevant so that key engineering concepts and
problems are resolved throughout the different exercises.
Term Application
Abandonment For prediction runs only. Minimum rates, maximum GOR etc. can
Value be set to turn wells off.
Actual Evaluation of well models for specified top node (wellhead)
pressure, GOR and water cut. Used to quality control well models
by comparing model and actual measured test rates.
Compositional The tracking of fluid components/compositions from the well bore
Tracking 172 to the top (separator) node.
Constraint Constraints are used to direct the GAP optimiser to honour
process limitations, limit well production rates. Constraints always
refer to the GAP optimiser. Well abandonment rates are set
elsewhere.
Element A well, joint, pipe, separator, tank etc. used to construct either the
production or injection systems.
Generate The process of calculating and importing well parameters like
IPR
VLP
GOR Gas / Oil Ratio. In GAP this is the 'Producing GOR' including
solution and free gas, but excluding gaslift injection.
Icon Graphical symbol used to represent a system element.
IPR Inflow performance relation. Function relating pressure drop
across reservoir and production rate. IPRs can be generated
directly from PROSPER.
Node Point where one or more production elements connect to another
system element.
Performance Curve Curve representing the well response. Expressed as pressure
(PC) downstream of the well (or manifold pressure) vs rate produced.
The PCs can be generated from VLP/IPR by sensitising on well
manifold pressure for a given reservoir pressure and water/gas
content (respectively, water cut and GOR).
Pipe Pipes connect joints together to form a gathering system. Pipes in
GAP have a length, elevation, inside diameter and roughness.
Prediction Calculation of (optimised or not optimised) future production and
injection rates using pressure decline curves or reservoir models (
MBAL for instance).
Production Use of systems analysis models in GAP to calculate field and well
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
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.
This is the standard Windows file browser, which may be familiar from other
Windows applications.
The dialogue box lists the files that match the selection criteria on the left-hand
side.
The files in the default working directory are automatically shown first.
Double-click on the file name required and this will be opened by GAP.
The 'Open as read only' option enables to open a file as a read-only file, which can be consulted
but not modified.
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.
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
Deletion of itemsSelect the "Delete" icon from the toolbar or from the right hand mouse
menu. Groups of items may be deleted as above.
Right Hand Mouse Utility menus will appear when the right hand mouse button is clicked
Button Actions anywhere in the system view. The normal menu is displayed above, and
appears when the button is clicked over an empty space. If it is clicked
over an equipment node, a shorter menu will appear with a number of
equipment specific functions such as Delete, Mask, or Select.
Panning To move the view around the system, simply click on the main window
and hold the left mouse button down. Shift the cursor and the network will
be moved following the direction of the cursor.
Popup Status As the mouse is moved over equipment nodes, a small window will
Information appear. This contains basic status information for the node in question
and allows the status of a piece of equipment to be checked without
entering the data entry screen. This is an optional feature. To switch this
function off go to the' Preferences' screen and un-tick the Enable Flyover
Status Information.
Changing Icon These functions are also available from the right hand mouse menu as
Sizes / System well as from the main menu under 'Options.' See below for more
Fonts information.
Title Bar This indicates whether a production or injection system is being viewed.
Opening a New It is possible to open a new GAP window specifically focused on one
GAP Window area of the network. To do so, zoom in on the region of interest and press
the Shift key after the zoom region as been specified. Selecting Window |
New Window from the main toolbar will open the new window with this
magnified section of the network.
Windows specific Minimise: Click this button to minimise the window in the GAP
Actions workspace.
Maximise: Click this button to maximise the window to fill the GAP
workspace.
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
Equipment Set-up
When an equipment button is selected, click once on the system window to create a new node
of the required type at the chosen point. A label dialogue will appear to allow equipment to be
labelled immediately.
Add a separator. This is the final solution node and is located at the "top" of
the system, i.e. furthest from the wells. The separator does not have to be an
actual one. In GAP, separator is a convenient way of describing a point of
known pressure in the network. For injection systems, this button will add an
Injection Manifold.
Add a joint. This represents a network node. A joint is a solution point in the
system.
Add a link. Note that this can become a pipeline, a well-tank connection, or a
pump connection depending on the context of the connection being made.
Add a well. The default well type is an oil producer with no lift (unless in an
injection system). The well type can be changed from the main data entry
screen. When drawing well icons, it is suggested that they are arranged
around the connection point. This simplifies the drawing of the pipeline
connections.
Add a tank. This represents a reservoir source. Tanks are only required when
running predictions.
Add a flare or vent. This element withdraws from the system a fixed rate of
fluid.
Add a pump. A pump is associated with a joint or separator. If associated with
a joint, it is in line with the joint, between the joint and the pipeline connecting
the joint to the next level.
Add a compressor. A compressor is associated with a joint. If associated with
a joint, it is in line with the joint, between the joint and the pipeline connecting
the joint to the next level.
Add a source/sink. A source/since is created and should be described for;
fixed rate, fixed pressure or fixed mass.
Add an inline element. This can be an Inline Gate Valve, an Inline Check Valve,
an Inline Separation, an Inline Choke or an Inline programmable.
Add inflow (represents the IPR), when this option is selected it will contain
similar data as the well except that there is no VLP information. This icon is
used for downhole networks.
Add group, using this option the same constraint can be applied to certain
groups of wells.
Add flowsheet, creates sub-flowsheets that can be attached to the main GAP
flowsheet
Zoom in/out. When "zoom in" is selected, a zoom can be achieved either by
clicking the mouse on the system window which will zoom in a fixed amount
and set the centre of the view to the position clicked. Or, by sweeping an area
with the mouse which GAP will then view. The aspect ratio will be retained
when an area zoom is performed.
Mask/unmask. When either of these are selected, clicking on an equipment
item in the system window will mask or unmask the item as directed. For short-
term removals of equipment, this is to be preferred to deletion, which removes
the equipment permanently. When masking, all child nodes will also be
masked. When unmasking, parent nodes will be unmasked so as to clear a
passage to the top-most node. From GAP version 4.0 onwards, any masked
item will be brought online by 'Schedule' during prediction. To exclude any item
from prediction (irrespective of what is set in the 'Schedule'), use 'Disable/
Enable'.
This Icon will disable completely any item in the production / injection system
during the production forecast or solver network calculations even if the item is
set to run with a certain schedule.
This Icon will enable any element in the production / injection system.
Delete. After this is selected, it is possible to delete a node by clicking on the
item in the system window or delete a whole section of network by dragging a
box around it. The icon automatically becomes unselected following a deletion
to prevent accidental deletion of further nodes.
Move a node. After this is selected, a node may be moved by clicking on the
item in the system window and then, with the mouse button depressed,
dragging the item to the new position.
Select a node. After this is pressed, a node may be selected by clicking on the
item in the system window. A cyan circle around the item indicates the item is
highlighted. One can select any item on the window system for further actions
for example set wells to controllable, move items, delete items etc.
Unselect all items.
Tracking This has two functions. If the focus is currently on a system window, this
Rectangle rectangle surrounds the area of the system that view is displaying.
Alternatively, the rectangle may be used to create new views of the system if the
navigator window is currently in focus. When the mouse is moved over the
rectangle, the cursor changes to allow to stretch or resize the rectangle. In this
way the window may be moved over an area of the system of interest. Double-
clicking the left hand mouse button in the area will create a new system view
displaying the area that has been selected. This is resized to preserve a
sensible aspect ratio
Hiding/ The navigator may be removed from the workspace by clicking on the cross
Showing the button at the top right hand corner of the window. Alternatively, the Window
Navigator menu item of the main menu contains a function to do this. Once removed, the
navigator will not appear in subsequent GAP sessions until reopened. This can
be done by clicking on Window | Toggle Navigator Display as below
Right Hand Clicking the right hand mouse button within the navigator window will produce a
Mouse Button utility menu. This contains the following functions
Menu
Navigator on By default, the navigator is always on top of all system views. This can be
Top changed by selecting this item from the menu
Hide Window A different way of hiding the navigator
New Window A different way of producing a new view (see above)
Icon Sizes Invokes the 'Icon Sizes' dialogue (see below)
File Options In this section, the user defines certain parameters which control the normal
Windows functionality of the program as well as preferences
When the data is entered while building the system, double-click the appropriate icon to access
the main data entry screen.
Separator Adds a production separator element. This is a point in the system whose
pressure is known and fixed.
This is the final solution node and is located at the "top" of the system i.e.
furthest from the wells. GAP will optimise the entire system connected to all
separators.
Joint Adds a manifold joint or connecting point in the system. A joint is a solution
point in the system.
Add Link/Pipe Creates a pipeline between two joints or links between separators and joints,
wells and joints, tanks and joints and separators and pumps/compressors.
Short flowlines are best modeled as part of the well rather than as a pipeline.
The type of link produced is decided from the context of the link.
To link two items, activate the link icon. Click on the first item in the system
view, and drag the mouse to the second item with the left mouse button
pressed. When the button is released a link will be produced if the context is
valid
Well Adds a well in the system network. When drawing well icons, it is suggested
they be arranged around the connection point. This simplifies the drawing of
pipeline connections
Tank Adds a tank in the system network. These may be modeled separately using
the MBAL software which can be supplied by Petroleum Experts.
Flares and Adds a sink at constant rate, mass or pressure and the amount of fluid
Vents collected by them is accounted for in the emissions results
Pump Adds a pump in the system network
Compressor Adds a compressor in the system network
Source/Sink Adds a source or a sink that injects/withdraws fluid at fixed mass, rate or
pressure.
Inline Adds a choke, inline separator, valve or virtually any piece of equipment that
elements can be described by a script
Inflow Adds an inflow element (IPR), which can be used to model complex well
geometries by decomposing the well into inflows and outflow
Group Adds a group element, which is used to report or impose constraints to groups
of elements in the GAP network (for example, clusters of wells can be grouped
together)
Flowsheet Allows to place whole sub-sections of the main model into different flowsheets.
Particularly useful in the case of big models, where the flowsheets allow to
simplify the model view
Drawing elements
The first thing to consider before drawing a system is its layout. For instance, the number of
elements to include can determine how to design the structure. A brief outline or sketch of the
network may help in deciding how to plan the model.
Since the key solution point in the network is the separator, one way to proceed is starting at the
top with the separator(s) and working down through the manifold joints (incoming connection
pipes) to the wells.
1. To draw an element on the screen, the appropriate object on the tool bar must be
selected. Positioning the pointer on the screen and clicking the Left mouse button will
place the element on the desired position. When drawing a system from scratch, it is
suggested to start at the top and centre of the screen and work down and outwards.
2. When the element is placed on the screen, a dialogue box will automatically appear
where the label of the element can be entered. Labeling is optional (unless the model is
being used in IFM where it is essential), however typing in a short name or abbreviation to
identify the element icon is suggested. Click the | OK button or press Enter to return the
screen display.
3. Select the next element to draw by clicking the relevant button on the tool bar. Position
the pointer on the screen where you want to place the element and click. A dialogue box
will appear prompting to label the element again. Follow these steps for each required
element
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 for the element will
appear. From this screen, other elements in the system for data entry can be selected.
Duplicating items
GAP includes a utility that enables elements to be copied. This facility is useful for adding many
elements with similar properties (e.g. wells), as it can save time entering data when editing the
item(s). When copying an icon, the program makes an exact duplicate of the item, which
includes the PROSPER file name, data and icon label. There are two approaches for duplicating
icons:
1. Hold the cursor over the element to be copied, right click the mouse and select "Copy" from
the menu. Place the cursor at the location where the new element is to be created and then right
click again and select "Paste"
2. First draw or add a new element icon. To copy, hold down the "Ctrl" key, while clicking and
dragging the original icon into the new unnamed icon.
Data from one element type cannot be copied into an element of another type. For example, the
data of a Separator icon cannot be copied into a Joints icon.
For more information on the user interface and its use, see The GAP user Interface.
Enable Flyover If this is checked then it will be possible to see a status box appear as the
Status Information mouse pointer goes over the equipment icons
Auto-repeat delay When panning, one may hold the left-hand mouse button down to auto-
when panning repeat the action. The value given in this field represents the time (in ms)
before the auto-repeat action starts from when clicking the mouse button
Zoom/UnZoom A single click in a system window while the zoom or un-zoom icons are
factor active results in a fixed scaling to be applied to the view, while the centre
of the view is changed to the position in which the mouse was clicked. The
value entered in this field is the fixed scaling factor, and as such should be
greater than zero
Open server When GAP is run using the open server functionality, there is the option of
Monitoring displaying the results of all the open server commands in the OpenServer
Window Monitor Window. The option allows this window to be shown / hidden
Background The bitmap that is displayed on the background of the main window may
be changed. Select the required bitmap by pressing the browse button to
the right of the field. The bitmap will be loaded when GAP is restarted
Recent file list This is the number of files that are retained at the bottom of the File menu
length
Reload last project Check this to load the last file that was worked on when GAP is started
at start-up
Display Alter If checked, GAP will check all file paths once a file is opened and will allow
Project Paths the user to correct these if needed
prompt at load
time
License Handling With the PROSPER on line options added to GAP for Version 5.0 or
VERY later, licenses of PROSPER and/or MBAL may be used by GAP depending
IMPORTANT on the options chosen when building a model. It is recommended to keep
these options to the default. Please consult with the person in the
organisation responsible for license handling before changing any
of these options
Default Input (and This option allows the user to set the default unit systems for GAP model.
Output) Unit This unit system will be used whenever a new GAP model is built
System
Always Use Ticking this box will force the unit system to be the same as the default
Default Unit one. If a GAP model contains different units to the default, when opening
System the file, GAP will change the units to default
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.
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
PROSPER executable location needs to be defined to be able to launch PROSPER via the
Well Summary Screen
Application startup timeout time can be entered, after which the program will flag that the
MBAL and PROSPER licenses cannot be found.
2.3.1.11 Printing from GAP
Printer Set Up This will prompt the standard Windows Printer Set-Up screen. Use this to
select the preferred printing device
Printing the To print out a current network drawing, select 'Print' from under the File menu.
Network It is possible to print to a hardcopy device, to the clipboard, or to a windows
Drawing metafile (.WMF). There are options to print in colour, monochrome, or
greyscale.
The user will be asked to select a file name for the archive from a file browser (the default
extension for GAP archives is .GAR).
Once the file name has been entered and saved, the user will be presented with a Project
Creation screen with the following options:
There is an example 728 provided in the manuals that demonstrates the application of this
feature.
Main features
The screen contains the following features:
Project This is a hierarchical listing of all the files in the project, also seen in the Edit
Project menu option. Select the files to be archived from the list (by default, all
valid file paths are highlighted). To select all files, click on the "All" button. It is
possible to double-click on an item in the project list or the baggage list (below)
to obtain the basic properties of the file in question.
Baggage It is possible to add other files that are not directly associated with the project
to the archive (for example, Excel spreadsheets or Word documents).
To add a file to the archive baggage, type in the file path in the Baggage File
field below the Baggage listing (or browse to it using the file browser provided),
and press the 'Add' button. The file will then appear in the list box. Duplicate file
names are added to the archive only once.
Project This field can be used to enter comments describing the project. This will
Comment appear whenever one wants to extract the files from the archive, and can help
recall the contents of a particular archive. Select the Write button to create
the .GAR file.
Add Assoc This adds associated files to the baggage list. For example, if one clicks on a .
vlp file in the project list and then click on Add Assoc, GAP will look in the
same directory as the .vlp file and, if they are present, also add the .tpd and/or .
mbv files to the baggage list. Multiple selections in the project list are possible.
The following gives the associated file types for project file types:
Action Buttons
Once the file has been selected GAP will enter the archive extraction screen as follows:
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
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
2.3.3.1 Method
This section is where the overall system parameters are set up, including the type of system
(production or injection), the prediction mode, and various options on the optimisation process.
SYSTEM TYPE:
This section defines the type of network that can be modeled in GAP.
Production Production systems can contain oil (e.g. naturally flowing or artificially lifted
wells), gas or condensate wells which produce fluids to the separator.
Water This allows the engineer to model the water injection distribution network which
Injection can be coupled to the main production network model and then optimised
simultaneously. The water injection manifold takes the place of the production
separator at the top level of the system.
Gas This allows the engineer to model the gas distribution network which can be
Injection coupled to the main production network model and then optimised
simultaneously. The gas injection manifold takes the place of the production
separator at the top level of the system.
Gas Lift This allows the engineer to model the gas lift injection distribution network which
Injection can be coupled to the main production network model and optimised
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).
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.
PREDICTION
This option needs to be on ON so that GAP can allow the user to carry out a prediction.
PVT MODEL
This option allows the user to define which PVT model in the system.
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
Black Oil Lumping/Delumping may use the full or the lumped compositions like
the "Fully Compositional" option.
Details about the PVT model options can be found further in the manual ( click here 150 to
view).
The EOS as models are not predictive, unless matched to measured lab data. Care
has to be taken in order to make sure that the EOS has been matched and is
applicable for the range of Pressures and Temperatures to be investigated.
Prediction Method
This option defines whether temperature calculations in pipelines are performed or not
Pressure Only Temperature changes along the flow lines are not calculated but instead
entered by the user
Pressure and GAP calculates both the pressure and temperature losses along the flow
Temperature lines, using either a simple temperature model or the more advanced
Enthalpy Balance option available through PROSPER on Line.
This option can be used to predict the presence of Wax or Hydrates at any point in the system.
The Wax or Hydrate Warning is only available when the compositional details of the fluid are
available i.e. when the Compositional Model is set to "Tracking" or "Fully Compositional". If this
option is on and GAP encounters a wax or hydrate risk in the model then it will raise a flag in the
"Status" column of the pipeline results.
WATER VAPOUR
This option allows the user to enable/disable the calculation of condensed water vapour in
pipelines.
TEMPERATURE MODEL:
In previous versions of GAP, rigorous temperature modeling with the "Enthalpy Balance" or
"Improved Approximation" models could only be achieved by modeling the pipelines with the
PROSPER on line option.
Advanced temperature modelling can now be enabled and used along with the default pipeline
modeling option GAP Internal Correlations.
Rough This is a heat balance model that calculates the heat loss from the well to the
Approximation surroundings based on an overall heat transfer coefficient, the temperature
difference between the fluids and the surroundings and the average heat
capacity of the well fluids.
The Rough Approximation temperature model requires calibration using
measured temperature data. It is not accurate in a predictive mode.
Improved This is a rigorous thermodynamic model that is based on a full enthalpy
Approximation balance model considering all the components of energy (enthalpy, potential
energy, kinetic energy and heat transfer between fluid and surroundings).
The term of the enthalpy balance concerning the heat exchange with the
surroundings is simplified by a heat loss term characterised by an overall heat
exchange coefficient. For this reason data related to the completion hardware
is not necessary.
As in the enthalpy balance model the Joule-Thomson Effect is also accounted
for. These characteristics make this model particularly useful when an
accurate calculation of temperature is sought after and only limited data about
the completion is available.
The Improved Approximation temperature model also requires calibration
using measured temperature data.
A choke can be placed on the well directly, rather than to explicitly define a choke in the system.
By having this option set to YES, GAP will calculate the temperature drop in the fluid as it flows
through that choke using an isenthalpic flash. If set to NO, temperature drop is not accounted for.
BACKGROUND BITMAP
The user has the option of adding a picture in the background of the GAP model. This could be a
map of the area or an aerial photograph so that the position of the icons on the screen coincides
with their real geographical locations. Simply select the path pointing to a *.bmp file and this will
appear in the main screen as soon as "OK" is selected.
If along with the production network system there are associated gas injection and/or water
injection and/or gas lift injection networks it is possible to link them to the main production model
though this option and solve the combined systems simultaneously.
The associated injection model(s) for the field can be specified here. Select the check box to
indicate that an associated injection model exists and then specify the model file using the
button.
If no associated injection model exists, GAP will still calculate the injection volumes necessary
for the desired injection policy, but will simply assume that these volumes can be injected (not
taking into account how they will be injected).
The list of injection fluids can be edited from the Options | Injection Fluids screen shown below:
When a new file is created, the list will contain two default fluids
Gas source Gas01.
When gas lifted wells are created, they will (by default) be assumed to be using gas
from the first source (Gas01) in the list.
The user can change the gas associated with gas lifted wells to another gas source in
the list (explained in Gas Lift Control topic 233 ).
When a GAP Generate | VLP is performed, the values of the lift gas properties used by
PROSPER to generate the lift curves for each well will be taken from the properties of the
gas source associated with the well in GAP.
The gas lift source data in GAP takes precedence over the current value gas lift gas
properties in the PROSPER file.
The original PROSPER files are changed by GAP, when generating VLP data and the
gas lift properties section of PROSPER is updated.
Each well in the system can then be assigned either the same or different tax regimes, thus
letting the program know the value of oil coming out of one well as opposed to oil coming from
another. The optimiser will then calculate the maximum amount of revenue that can be achieved
by the system.
The 'Gas Sales Revenue per BTU' switch at the bottom of the screen enables the user to choose
the units in which the gas sales price is described.
In the laboratory, stable emulsions can be prepared from many crude oil / water systems. Field
experience shows that the effect of emulsions is usually less than predicted by laboratory tests.
Emulsion PVT should be used with caution and only when it is certain that emulsions are
present and it is necessary to evaluate their effect on calculated pressures.
Emulsion viscosity will replace the mixture viscosity for selected elements of the production
system. Experimental or empirical emulsion viscosity data can be entered and curve-fitted
using a non-linear regression. The fitted curve is used to optionally replace the oil/water mixture
viscosity in pressure drop and pump calculations. When selected, emulsion viscosity for the
user-entered value of water cut will be substituted for the fluid mixture viscosity.
The parameters Left and Right Water Cut for Maximum Viscosity define the maximum plateau
region. To calculate emulsion viscosity:
- Enter the water cut and emulsion viscosity data points in the Emulsion Data table.
- Click the Match button.
When the regression has stopped, click Plot to display the matched mixture viscosity.
The regression algorithm will find the Parameter 2 and 3 that minimises the internal error
function. Parameters 4 and 5 can then be adjusted manually to fit the remaining the lab point if
necessary.
Injection Fluids
Emulsion Model
Tax Regimes
PVT correlations for pipeline calculations
Volume Correction Factors
Pipe Lines
These can be also changed in each element in the model, allowing the user to use
different selections (for example, PVT correlations) in different areas of the system to
reflect the actual situation in the field.
Injection This is the default choice for the water injection and gas injection. The Edit
Fluids Injection Fluid 85 List allows the user to modify the list of fluids used in the
model.
Emulsion This is the default choice for the emulsion model. The Edit Emulsions 88 option
Model allows the user to modify the list of emulsion models used in the model.
Tax Regimes This is the default choice for the Tax Regimes. The Edit Tax Regimes 87
option allows the user to modify the list of tax regimes that can be used in the
various wells in the system.
Default PVT This is the default choice for the Oil Pb, Rs, Bo correlation, the oil viscosity and
Correlation the gas viscosity correlations.
Volume When GAP is reporting production rates it calculates Bo and Bg using its own
Correction PVT calculator and a virtual process occurring at the separator. When
Factors interfacing GAP with a process simulator one may wish to apply a correction to
the Bo and Bg calculated by GAP to match that calculated by the simulator,
which may be using an equation of state rather than a black oil model.
In the fields provided in this screen, one can enter the correction factors to Bo
and Bg. Note that these are corrections to the volume ratios, and not the volume
ratios themselves. GAP will perform the calculations based on the new values
of Bo and Bg.
Pipe Line This field represents the defaults used when creating a new pipe
Default pipe This is the default roughness that will appear as soon as a
roughness pipeline element is created. As mentioned above, if
required, each pipeline segment can have its own
roughness value to represent the actual field configuration
Gas/Liquid This cut-off parameter specifies the GOR at which the fluid
pipe GOR definition will switch from a liquid to a gas. This triggers the
Cutoff condensate to be treated as an equivalent gas in the
pipelines as opposed to a liquid. It is recommended to
keep this value at default. One can also select the
correlation for viscosity based on the one that matches the
fluid in the system
Water vapour This parameter specifies the value of the GOR above which
GOR Cutoff the water vapour calculations are performed.
Below the cutoff water is considered to be in liquid phase,
whilst above the cutoff presence of vaporised water is
accounted for.
This option is enabled when the water vapour calculations
are enabled in the main program Options 83
The Title and Comments can be moved all over the network window by simply
dragging them while holding down the "Shift" key.
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".
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.
Draw Options 98
Highlight Options 98
Window Aspect and Drawing Options
Network Drawing Position 109
2.3.4.1 Draw Options
A series of different options are available to modify the view of the GAP network model. Theses
options allow the user to toggle on/off the visualisation of solid and dotted line connections, tank-
tank connections, IPR icons, labels, grids etc. and are fairly self explanatory.
For instance, considering the system below, one can see a TVD inconsistency highlighted on
the node "Riserbase":
Upon inspection of the pipeline description the TVD of the most downstream point of the
pipeline situated upstream of the node "Riserbase" is 0m. Where as the TVD of the most
upstream point of the pipeline situated downstream of the node "Riserbase" is 100m.
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.
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.
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.
Icon Label This is the information that appears in the main screen along with each element.
The default setting is each icon's "label only". Select "Liquid Rate" for instance to
display the liquid rate results of the last network solver, along with each icon.
Icon This is the information that is displayed in the small "fly-over" window that is
Tooltip activated when passing the mouse through each element
Click on the desired label position and then | OK to change the label position.
2.3.4.3.3 Colours
From the View | Colours menu item the user may change the colours of the system drawing and
the GAP windows.
To change the customised colour use the Red/Green/Blue scrollbars on the right hand side of
the dialogue. Each colour can be varied from a value of 0 (off) to 255 (full on). The "Sample"
field of the dialogue provides the colour that is obtained by mixing the primary colours in the ratio
given.
There is also a choice of colour schemes, gained by toggling the radio boxes at the top of the
dialogue.
Colour allows full selection of any of the (255 x 255 x 255) colours
Grey scale forces the Red/Green/Blue values to be equal, so that only 255 shades of grey
are available
Monochrome forces the Red/Green/Blue values to be either on or off, giving a choice of two
colours (black or white)
Select the plot component from the list on the left-hand side of the form that is to be changed.
Select an appropriate colour using the colour-mixing palette on the right. Once the colour has
been chosen, save the current set of colours for future GAP sessions by clicking Save as user
default.
The dialogue consists of a slider with a data entry field, which contains the current icon size (this
defaults to 60 out of an arbitrary 0 100 range for a new file). Change the icon size by adjusting
the slider or entering a new size in the entry field. Check the "Automatic Update" box to update
the system window as the slider is moved.
2.3.4.3.5 Fonts
The fonts used in the network drawing can be modified. Select View | Fonts from the main
menu, or right-click on the main canvas and search for the same option. This will bring up a font
selection dialogue. Select the font size and style required and then | OK. The new font will be
applied to all system drawings.
Individual fonts for the Items' labels, the Network Title and the Comments can all be entered.
2.3.4.3.6 Grid
A background grid can be implemented in the GAP model by selecting View | Draw Grid from
the main menu. The settings of this grid can be modified using the "Grid" option which is also
accessed from the View menu.
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.
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
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
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:
Unselect This option unselects all the selected items. The option is active only when there
All Items are selected items in the system
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.
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.
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.
The inline element has been removed and a connection between the well and
the pipeline joint is created.
Show Gradient This option allows the user to plot the pressure gradient along all the selected
pipelines.
Copy/Cut/ Options to duplicate, cut and delete selected items.
Delete
Extract to GAP This option allows to create a copy of the network or part of it, which can then
Partial File (. imported in another GAP project (see below 138 for further details).
gpp)
Snap to Grid This option snaps the selected elements to grid (see above 109 ).
Change Icon This option changes the elements' icon label position.
Label Position
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 188 for further details.
Set IPR Rate model This option specifies if the IPR is defined in terms of volumetric flow
rates of mass flow rates.
Set IPR Use Original When running calculations in compositional mode the original
Composition composition entered in the model may be changed based on the input
from the reservoir model (for example when the produced GOR
changes as the reservoir pressure decreases below the bubble point).
The new composition is called the "Working" composition. This
option will reset the IPR composition to be the original composition.
When Composition This option is enabled when one of the compositional models is being
Changes used with the Lumping/Delumping enabled.
The options available are: 'Do Nothing' (if the composition changes,
then use the composition coming from the upstream reservoir
simulator), 'Lump' (lump the composition from the simulator) and
'Delump' (delump the composition from the simulator).
Refit PC curves This option regenerates the selected wells' performance curves.
Reset dP chokes This option resets the values of the fixed dP choke applied to the
selected wells.
Turn off if unstable The well outflow features are described in the VLP input section 219 .
Allow left hand VLP/ The options here have the objective to switch on/off these features
IPR intersection
Enable Safe VLP/IPR
intersection mode
Convert to inflow This option converts the selected wells to inflows eliminating de facto
the well outflow from the model.
Split into This option converts the selected wells into its components inflow and
inflow and outflow outflow. The application of this feature is in the modeling of complex
well geometries (see example on Smart wells 765 )
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.
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.
and choosing the 'Show members' as selected option, the elements that are part of the group
become selected.
In the above screenshot, the separator element called Separator will be located on the network
by selecting "Locate" as shown. The requested item will then be highlighted on the main window
and on the navigator window if selected.
Note that whenever a selection is made in the "equipment type" list, the list of equipment in the
lower list changes to reflect the new selection.
Action Buttons
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.
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
View This is only active when a single selection is made in the file list. When invoked
Details the 'File Properties' screen appears, allowing the the file properties to be viewed
or the file path to be modified. The same action is obtained by double-clicking
the left hand mouse button on a file list entry.
OK Clears the dialogue, saving any changes.
Cancel Clears the dialogue, ignoring any changes.
Apply This saves any changes without clearing the dialogue. This is useful if an injection
file name has changed as this will load the new file and display its contents in the
list.
Help Invokes this screen
Select Multiple selections from the file list can be made in the usual ways with the
mouse. Alternatively, all items of a particular type can be selected using this
button. Choose from the drop-down list which category is to be selected. The
following choices are possible:
All well files
All tank files
All item model files (tanks and wells)
Injection system files (associated gas/water injection systems)
Prediction history file
When Select is pressed the files of the given type will be highlighted.
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.
As with the previous option, more details are provided in the History Matching chapter 576 which
deals specifically with history matching.
This screen allows the engineer to initialise a well IPR from a tank model (decline curve or
material balance). When one invokes the Edit | Initialise IPRs from Tanks menu item a list of
wells appears. Select the wells that are to be initialised and press | OK.
The list of tanks that are connected to the selected wells appear in a list in the Tank Name
column.
In order to evaluate the tank pressure and PVT, the tank models must have a history in the case
of material balance models and in the case of decline curve models there must be production
data. These are the options available:
MBAL Start For MBAL models only - the start date of the tank history
Date
MBAL End For MBAL models only - the end date of the tank history
Date
Start For Decline Curve models - the cumulative production at which the pressure
Cumulative and PVT data are to be evaluated
Production
Pressure Displays the pressure following a 'Calculate'
Start Date For all MBAL tanks, this is the date at which the pressure and PVT should be
evaluated
Action Buttons
Calculate Evaluates the tank pressure and PVT at the specified date/cumulative
production, and displays this in the Pressure column
Continue Calculates the PVT and pressure data at the required conditions, and places
this in the IPR data of those wells that were selected initially
Cancel Clears the screen, ignoring any changes
Select which wells in the system are going to be associated with a particular EOS (or fluid
composition).
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 915 .
Transfer Well Gas Lift gas rates When a 'Solve Network' calculation (for example, an
to Injection System Sinks optimisation) is performed in the production system, the gas
lift rates used by each well can be passed to the gas lift
injection system, which can then be used to calculate the
pressure required to flow the gas
Transfer Injection System Sink When a 'Solve Network' calculation (for example, an
pressures to Gaslifted Wells optimisation) is performed in the gas lift injection system, the
casing pressure pressure calculated for each well (casing head pressure) can
be passed to the production system, which can then be used
to calculate the production that can be obtained applying
those casing pressures
Transfer Production System
Separator pressures to Gaslift This option transfers the production separator pressures to
System Injection Manifolds the gas lift injection manifolds
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.
This section explains how to save GAP Partial (.gpp) files for sub-systems and recall them later
to assemble a complete system model.
The model will then be selected (cyan circles will indicate the selected items).
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 saves a .gpp file that contains all the data for the selected system elements.
This will allow import the (.gpp) file into the system which can be connected as appropriate.
In this manner, the entire system can be built up from sub-systems that have been independently
prepared and matched. This is illustrated in detail in Example 10 975 .
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 constraints are used to direct the Optimiser algorithm and should not be confused with well
limits used in prediction runs to shut in high GOR wells (for example).
To set the total system or global constraints such as maximum water, gas or liquid select
Constraints | System Constraints from the main menu. The following screen appears:
These parameters are used to define the maximum and minimum production levels for the
system, where appropriate. When left blank, the program will assume no constraint for a
particular variable.
The Unscheduled Production Deferment constraint takes into account the effects on the
production due to any non-scheduled events. The influence of these events will be taken into
It is important to notice that this constraint, if used, will overwrite any downtime applied
at well level.
Field Tabs
Value Enter in this screen the value of the constraint to be set in any element of
the model
Binding Selects which constraints are binding or not. The optimiser will always try
(Yes/No) to honour all of the constraints set in the model. When constraints are set
to binding Yes the optimiser will iterate until the constraints are honoured
(provided it is feasible) whilst in the case of NO binding, if the constraints
cannot be achieved (because physically infeasible) it will be neglected
and there will be no additional iterations.
Potential Enables the user to include constraints in the potential calculation. Those
(Yes/No) constraints set to NO will not be considered in the Potential calculation
Action Buttons
OK Use this button to leave the system constraints entry screen and save all
changes that have been made.
Cancel Use this button to leave the system constraints entry screen and ignore
any changes that have been made.
Report Use this button to produce a report of the data. Reports can be written to
a file, the Windows clipboard, the screen, or a hardcopy device. See the
Reports menu item for more information.
Help Use this button to access this screen.
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.
Field Tabs
Value Enter in this screen the magnitude 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 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:
Items in the main network that have abandonment constraints have two blue arrows above
the icon pointing towards the element.
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.
This option can also be used with the Lumping/Delumping technique which
empowers the user with the possibility to run calculations using an extended
composition, or using an equivalent composition with fewer components
(lumped).
'Black Oil Lumping/Delumping' may use the full or the lumped compositions
like the "Fully Compositional" option.
In the case where Tracking, Fully Compositional or Black Oil Compositional Lumping/Delumping
is selected then an Equation of State will be required in order to either track the compositions in
the system or get the PVT directly from the EOS.
This section describes in more detail the various options available in GAP for both black oil and
compositional modelling.
2.4.1 Black Oil
If the PVT model model is set to Black Oil the PVT properties used in the pressure drop
calculations will be determined with a Black Oil model.
The term Black Oil refers to a PVT model that considers the fluid to be (when below
saturation conditions) split between a Liquid and a Gas (2 Phases) in equilibrium. The
implicit assumption being that the liquid and the gas are characterised by a fixed
composition, irrespective of the pressure and temperature conditions.
Correlations are used to calculate the Bo, Bubble Point, Gas Oil Ratio and viscosity
from measurements at surface (API gravity, gas gravity etc). This definition can be
extended to gases and condensates where correlations can be used to obtain the
CGR, dew point and other properties. Hence the existence of Black Oil PVT models
for condensates.
In the MBAL and PROSPER manuals, the black oil models have been described in more detail.
This description includes:
The origin of the black oil properties used by GAP to perform the network calculations depends
on the way the model is run.
When running the model in "Solve Network" mode, the black oil properties used by GAP are the
ones in the well IPR input section that are imported from PROSPER with an IPR generation 452 .
When running the model in "Prediction" mode, the PVT black oil properties of the fluid produced
from each well will be obtained at every time step from the reservoir model (MBAL or an external
simulator). The PVT information transferred from PROSPER and present in the IPR screen of the
well models in GAP will be overwritten, along with the reservoir pressure.
GAP will then feed this PVT information into its internal PVT model (defined in the Default
Settings 91 ), which will calculate all the properties necessary for determining the pressure drops
throughout the system.
When two or more fluids are present in the system, GAP will blend the fluids at every
manifold where they meet in order to determine the properties of the new fluid that
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.
Details about each PVT model option are reported in the next few sections (click on the above
links to access them).
Once any of the compositional options have been selected from the System options menu the
EOS Model Setup will be displayed.
This gives access to the configuration section, where the EOS options are selected.
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.
If no Lumping is enabled, the only Full composition volume shift option is available.
Lumping
This option enables the lumping/delumping method and allows the user to specify which
composition should be used throughout the system (i.e. the lumped or the full composition) along
with the lumping rule that associates the two compositions.
More Lumping This section defines the Lumping Rule used in the whole GAP
model. See paragraph below 166 for further details
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.
Flash Mode There are two different approaches to handle the water. The
"Two Phase" and the "Psuedo Multi Phase" methods. The "Two
Phase" method treats the water as a completely separate phase
from the hydrocarbon fluid and is the traditional modelling
approach. The "Pseudo Multi Phase" method can handle water
as part of the fluid composition and there are three methods
available:
1. Munck et al
2. Hydrafact Modified Cubic
Viscosity NEW!!!
This section defines the viscosity model used for the oil and the gas. In previous versions, when
using the EOS model only the Lohrenz, Bray Clark method (with regression on the critical
volumes) was available. The user now has the option to use the Pederson et al method and the
Lohrenz, Bray Clark method with regression on the coefficients which is the technique used by
other thermodynamics packages.
In addition to this, the user has the added functionality of being able to use the black oil viscosity
correlations which have been shown in many cases to be more reliable over a wider range of
temperature and pressure.
Blending
This section defines the rules followed by the program when two or more fluids compositions are
mixed.
Match The program will mix only the properties of components that have the
Components by: same name. When using this option the user has to make sure that the
Component mixing compositions have been defined with the same number of
Name Only components and same names
Match The program will mix only the properties of components that have the
Components by: same name or similar properties (Tc, Pc, etc.)
Component
Name or
Properties
Use Number of If Yes is selected, the program will try and blend components that
Components as correspond to the same component number. If components in two
key blending compositions have different names, these will be blended.
If No is selected, if components in two blending compositions have
different names, the components will not be blended, but they will be
carried on as separate components. The sketch below shows the
concept when "No" is selected:
This option allows the user to use compositions with a different number of
components. If that is so, each new set of pseudo components will be
carried along.
Phase Check
This section decides which method to use for the phase detection. This option should not be
modified.
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.
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.
displayed as the min and max GOR in the Target GOR dialogue
window.
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'.
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.
General
This section defines the options for Lumping/Delumping.
"Allow Lumping" and "Mode" are the same options that are reported in the main EOS Setup
section (see above 158 ). The remaining options are described below.
This option forces the program to use the full composition every
time enthalpies need to be calculated, and should always be
selected.
DeLumping
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
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.
Hydrate Model
This option is the same as the hydrate option reported in the main EOS Setup section (see
above 159 ).
Inhibitors
This option allows the user to specify the concentration of different inhibitors in the water
Salts
This option allows the user to specify the concentration of different salts in the water
2.4.2.2 Setting up a Compositional model
The process of building a GAP model when any of the compositional options is enabled
(Tracking, Fully Compositional or Black Oil Compositional Lumping/Delumping) is always the
same.
The following steps illustrate how a model is set-up with any of the compositional options:
1. Enable the desired PVT Model from the Options | Method entry screen.
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
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.
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.
When the composition has been entered, press | OK. The colour of the 'Composition'
button on the well composition entry screen is an indication of whether the composition
entered is valid. This procedure must be carried out for every well in the system.
3. For gas lifted wells, one must ensure that the gas lift source has an associated
composition. This is entered in the 'Well Gas lift Input' screen.
4. (Prediction only). If there is gas voidage replacement / injection, then the composition of
this needs to be specified. If there is no associated gas injection system, then the
composition of the injected gas can be entered from the 'Prediction Forecast Set-up'
screen or from the 'Tank Injection Entry' screen.
5. If there is an associated gas injection system then the composition of the injection
source has to be specified at every injection manifold in the injection system.
During the prediction run the wells will receive the fluid compositions from the tanks, provided
these have been set up in the MBAL model. If one reloads a snapshot 713 following a prediction
run then compositions received from the tanks can be viewed from the wells.
2.4.2.3 Tracking
If "Tracking" is selected as the PVT model option, GAP uses the black-oil model in its network
calculations (to determine pressure drops and rates) and an EOS composition is carried along
and used to determine (or track) fluid compositions from the well bore through the surface
network system in a post calculation.
The compositional tracking feature takes advantage of the speed of the Black Oil
calculations and can still determine the resulting composition of the fluid at every node
in the system. Provided that the pressure drops are not affected significantly by the
fact that the EOS is not used directly for the PVT properties, then this method can yield
very good results without compromising on speed.
Compositions are tracked during the Solve Network or during one prediction time step as
follows:
GAP calculates fluid rates and specific gravities referred to surface conditions
throughout the system using the black oil correlations.
From these mass flow rates, and hence mole rates, can be evaluated.
Compositions at manifolds can then be found by a simple combination of molar
quantities of the input stream compositions.
By working from the bottom (well) level up, the composition of the fluid at the separator
can be determined.
If the fluid GOR changes with time (for example during a prediction) then the program
will recombine the initial composition entered in the well IPR section (using the Target
GOR function) in order to match the new fluid GOR coming from the reservoir. The
recombination technique is called Target GOR.
Gas injection at wells or in injection systems is handled in the same way. Knockout of gas at
joints is achieved by flashing the fluid to the manifold operating pressure and temperature, and
then removing the specified number of moles.
At the beginning of any calculation GAP will inform the user if the tracking calculation was
successful. The tracking will fail if there are any missing compositions or in the unlikely event of
a calculation failing.
When running the model in the tracking mode, it is possible to set the EOS Model Setup
options ( see above 154 ) to use the Lumping/Delumping methodology. This allows the
user to track either the full or the lumped composition.
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.
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 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.
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.
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.
Similarly, the user can perform a Target H2O calculation to determine the water cut based on a
given composition and vice versa.
The "Phase Env..." button allows the user to visualise the phase envelope of the fluid and
calculate the hydrate/wax formation. The functionality of this option is well documented in
Example 9a 934 .
The water composition option has been explained previously (see above 166 ).
Note that if there are two compositions associated with the fluid (a lumped and a delumped
composition) there is the option to switch between the two can perform the above calculations.
In this chapter the main equipment data entry screen is described. This is the screen
from which all equipment data can be entered and the results of the calculations for
the equipment are stored.
This is followed with a detailed description of the input data that is required for a full
description of a well model in GAP.
Finally, the results screens that apply to all the item types are described.
2.5.1 Introduction
This chapter describes the different elements making up a GAP model.
The input screen for all the equipment has the same general format, though the data entry
headings/ formats vary from one to the other. The following diagram shows the data entry
screen for a well.
The equipment in the screen can be listed in four different ways, which can be changed simply
right clicking on the list:
Separator down sort
Tank up sort
Alphabetical sort by equipment label
Sort by equipment type
In the example above, the option Equipment Type Sort is used. The default is Separator down
Sort i.e. hierarchically going from the separators down to the wells and tanks.
Summary Master section from which one can access all the different inputs
(i.e. controls, constraints etc.)
Input Accesses all the sections where data can be entered for the
particular element (for example: IPR, VLP, etc. for a well)
Results Section where the calculations results are reported.
Section buttons Each section can be accessed through the corresponding
buttons at the bottom of the screen.
2.5.2.2.1 Summary
The 'Summary' contains information about each element of the network (for example, a well, a
joint, etc.).
Label Name that appears in the GAP main screen (network drawing)
Name Extended name
Mask Option to mask the element
Comments Comments on each element can be entered
Data Summary Section containing the links to all the input screens. The number and type
of sections vary depending on the element.
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.
There are two tabs available for results buttons, one for each calculation type available in GAP:
Network Solver Tab reporting the results of the latest 'Solve Network' calculation.
Results
Prediction Results Tab reporting the results of the latest 'Prediction' calculation.
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
PROSPER / MBAL be modified or updated. For a tank, this opens the associated MBAL file.
OK Removes the dialogue screen, saving all of the changes that have been
made in any of the screens.
Cancel Removes the dialogue, ignoring all changes. If any changes have been
made, a confirmation message will appear
Help Displays a help screen which assists the user with an additional
explanation about the currently displayed screen.
Revert This replaces the data of the current screen or tabbed screen with the
data that was current when the screen was entered
Validate Checks the data on the current screen or tabbed screen for validity. This
takes into account the prediction mode or whether or not the system is an
injection system. If the data is not valid, the validation dialogue will appear
with diagnostic messages.
Calculate Available for well, compressor and pump elements when the 'Summary'
and 'Input' section buttons are selected.
For wells:
If selected from the 'Summary' screen, this allows the user to
perform a VLP/IPR calculation.
If selected from the 'Input' screen, the user can estimate the liquid
rate or FBHP from the IPR or the VLP.
For compressors and pumps:
The 'Calculate' button is accessible from the 'Input' screen and
allows the user to perform a calculation of the compressor/pump
dP, head, power, etc. given the rate, PVT and inlet conditions.
Plot Will produce a plot screen appropriate to the screen or tabbed screen
being displayed (for example, an IPR plot will be displayed from the IPR
input screen). This is greyed out when there is no suitable plot
Report Enters the GAP Reporting System. The report produced will depend on
the currently displayed screen or tabbed screen (for example, an IPR
report for the IPR input screen)
Next (selected) These buttons can be used to navigate through the equipment list. Next
Previous (selected) will move to the next piece of equipment in the equipment list. Previous will
move to the previous piece of equipment in the list. If items are selected,
these buttons will navigate between selected items
Mark These buttons allow items to be marked for reference purposes during an
Mark All editing session (for example, to indicate to the user that a well
Unmark All performance curve has been regenerated). Marked items appear with
their status (tick or cross) displayed in reverse.
2.5.3 Wells
The modelling of the wells is the first part of building an accurate GAP field model. The rest of
this chapter is devoted to a description of the data required for a complete well model in GAP.
The data required for a well model in GAP depends on the mode in which GAP
is running and the type of well that is being modelled.
Like any other equipment, well data entry screens can be accessed by
Double-clicking the left-hand mouse button on a well icon on the main GAP drawing, or by
Clicking on the appropriate well icon in the equipment list of the main data entry screen.
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
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
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
Comments Enter any string of comments to provide more detailed information about the
well (for example, date shut-in, fractured, etc.)
Well Type Specifies the type of well. The well type should be the first thing to be
specified as the data required in the input screens depends on the well type.
These options are available:
Gas Injector
Gas Producer
Liquid Injector
Oil Producer (Diluent Injection)
Oil Producer (Diluent and Gas Injection) NEW!!!
Oil Producer (ESP Lifted)
Oil Producer (SRP Lifted) NEW!!!
Oil Producer (Gas Lifted)
Oil Producer (HSP Lifted)
Oil Producer (Jet Pump Lifted)
Oil Producer (No Lift)
Oil Producer (PCP Lifted)
Retrograde Condensate Producer
Water injector
Water producer
CBM Water producer (ESP Lifted) NEW!!!
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:
The outflow only models for well modelling have been introduced
from GAP v5.0 onwards. They increase greatly the capabilities of
GAP in terms of modeling smart well completions and multilayer
systems (an example of multilayer model 765 can be found in the
Examples Guide section)
Rate Model Rates can be defined in terms of volumes (at standard conditions) or mass.
(only when
compositiona Defining the rates in terms of mass has got the benefit of making
l model is the rates (hence the VLPs) process independent. This is because
enabled) volumetric rates at standard conditions depend on the process
used to analyse the fluid, whilst mass is invariant, therefore does
not depend on the process used. This option is particularly useful
when coupling models with different reference paths to standard
as using the mass mean that the IPRs and VLPs do not need to be
regenerated if the process changes.
When This option will lump/delump the composition entering the system through the
Composition wells.
changes
(only when
compositiona
l model with
lumping/
delumping is
enabled)
Data In addition to the selections discussed above, the well summary screen
Summary contains an input data summary area.
Area
This gives details on the status of various aspects of the well-input data. It
consists of various fields that correspond to different areas of the well-input
data. These screens have the following colour code:
The icons that appear in this area are dependent on well model and
Prediction Type (None / Material Balance / Decline Curve) selection.
Pump Control (Artificially lifted wells only) (Set/ Not Set / Not
Appl.)
Performance Curve Data (Only for PC well model) (Valid/
Invalid)
Gas Lift Control (Gas Lifted wells only)(Source name is
displayed)
Downtime (Set / None)
Coning (Set / None)
Scheduling (Set / None)
By clicking on any of these fields, one can access the input data for the field.
2.5.3.2 Calculate
For every well the user has access to a "Calculate" button.
Within the summary screen, the "Calculate" button will determine the liquid rate and
corresponding bottom hole pressure based on the IPR and VLP curves for a given set of
conditions.
The user can plot the VLP/IPR intersection by clicking on the 'Plot' button.
The 'Initialise from solver results' can be used to recall the flowing conditions
calculated during a Solve Network 495 calculation. This is useful when
troubleshooting the well performance as these are the same conditions that
occurred in the main calculation.
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.
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.
Connections
IPR Input Used to enter/visualise IPR data, either for the well, or per-layer in a
multi-layer well.
VLP Input Used to enter/visualise the file that contains the lift curve data for the well.
Constraints Used to enter/visualise the well constraints and abandonment
constraints.
Controls Used to enter/visualise control data for the well. This allows wells to be
choked back to meet some throughput constraint, or for artificially lifted
wells allows artificial lift control parameters such as pump frequency in
ESP wells to be accounted for in optimisation.
Pump Controls Used to set the artificial lift quantity to a fixed value (for example, a fixed
operating frequency) or to becCalculated by the optimiser. This section
can be accessed from the 'Controls' section
PC Data Use this to manually enter/visualise performance curve data, or to
generate the data from VLP/IPR intersections.
Gas Lift Control Used to set the artificial lift quantity to a fixed value (for example,a fixed
gas lift injection rate) or to be calculated by the optimiser. This section
can be accessed from the 'Controls' section
Production Data Enter/visualise the production data for the well, for decline curve
predictions.
Downtime Enter/visualise the percentage of time a well is offline.
Coning If the well has gas coning the input data may be specified in this screen
for each layer.
Schedule Enter/visualise the schedule for changing constraints, masking/ un-
masking wells during a prediction.
Apart from the screen inputs as described in the following sections, there are
various action buttons such as OK, CANCEL etc. that appear in these screens.
Their function is the same in every screen.
Use the buttons <<<Add and Remove>>> to create connections or disconnect a well from a
tank.
2.5.3.3.1.1 Multi-Layer Case
In this case, it is simply required to make connections using the two list boxes. The
breakthrough constraints and perforation depths are entered in the Well IPR screen.
Connected tanks are assigned to single layers of the model automatically. The tank name,
which has been assigned to a specific layer, is displayed in the Well IPR Input screen.
This screen inputs the well inflow performance data on a per-layer basis.
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.
IPRs can also be generated with different PROSPER files for each layer by
associating different PROSPER models to the "PROSPER file for IPR section".
The IPR data input is divided into four tabbed screens as shown in the example below.
These are:
Ipr Layer Individual layer input data like PI, reservoir pressure, temperature etc
More... Data for defining relative permeability and layer breakthrough (water / gas)
parameters
Prod Data Section defining the well GOR and WC (or WGR in the case of gas) versus
reservoir pressure or cumulative production. Only available if the decline
curve option is selected in the tank model.
Grid View Screen where a summary of all layers is tabulated and the individual IPR
data can be plotted against each other
Abandonment To define the conditions at which the layer is abandoned (production is shut
down)
The data input for all the four sections of the well IPR input us described below:
2.5.3.3.2.1 Ipr Layer input data
In this screen, the data required to generate the IPRs for each layer is entered. The data input
screen is divided into four sections:
Select
Inflow Performance Input
Fluid Properties Input
PROSPER File for IPR
Select
This section has the following sub-menus:
Layer Use this to select the layer for which data is to be entered. When the list is
List Box produced, each layer appears in the drop down list with "Invalid" or "OK",
representing the status of the IPR layer data.
Layer Type (Available only for multi layer IPR Producers except WATER producer
and injection Wells)
This can be Oil, Gas, Condensate or CBM NEW!!!. When a well is created,
the layer type is set to reflect the well type however the layer type can be
changed using the drop down list.
Mask It is possible to Mask or Disable the selected layer from the IPR using this
option.
Switching to the More Input Screen will display data related to the
layer that has been selected in the layer input screen.
Inflow Performance
The data items shown in this dialogue depend on the well type, the layer type and the prediction
(None / Material Balance / Decline Curve) mode. In a multi layer model, data may be entered in
this dialogue or in the IPR Input Grid View, which displays all layers simultaneously.
Tank In a multi layer model, this gives the label of the tank which is connected to
Connection the selected layer.
The Table Look Up utility has been included in the IPR types for allowing
an easy link between GAP and Reservoir Simulators. It stores the IPR
information generated by the reservoir simulator as a table with oil, gas and
water rates as a function of flowing bottom hole pressure (FBHP). IT
SHOULD ONLY BE USED FOR THOSE APPLICATIONS.
IPR dP The IPR dP is used when the datum for the reservoir pressure in the well
model is significantly different to the datum used in the reservoir model. The
IPR dP can be used to correct the reservoir pressure coming from the
reservoir model to the well model datum.
Permeability (Production systems only & NOT for Table Look Up)
Correction This is used to correct the absolute permeability of the layer as the pressure
with Pressure declines in a prediction. Enter the quantity N in the equation:
N
kp k0 1.0 p0 p Cf
The crossflow injectivity index represents the rate of injection in the reservoir
should the bottom hole pressure be greater than the reservoir pressure. In
other words, the crossflow injectivity index represents the IPR curve for
negative flow rates therefore the smaller the value the easier it is to inject into
the layer.
If the value of the crossflow injectivity index is not specified, the rate of
injection in the reservoir will be governed by the Productivity Index (indicating
that the production capacity of the reservoir is the same as the injection
capacity).
If there has been any studies made on the injectivity index for a given
reservoir, then this may be used to define the Crossflow injectivity index. The
use of Crossflow Injectivity Index may lead to large cross-flow rates and
potential instabilities in any prediction run as these rates are held constant
over a time-step.
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.
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 PROSPERs IPR screen.
Click Match and GAP will regress on the well productivity (or
injectivity) index and AOF (or whichever coefficients are required from
the IPR model) so that the IPR curve passes through the match points.
Click OK, and the P.I. and the rest of the data will be passed back to
the well IPR screen.
Use Tank (NOT for Prediction modes None & Decline Curve)
Impurities If the Use tank impurities box is checked, GAP will use the values from
MBAL tank model and the impurity input data will be made unavailable
PROSPER For multi-layer well, it is possible to import the specific PROSPER file
File for IPR corresponding to each specific layer. When the option "Generate | Generate
Well IPRs from PROSPER..." is used, GAP calls all the PROSPER files to
generate the different layers' IPRs in a batch.
The 'Composition' button allows the user to enter/visualise the composition for the well.
This is available when one of the compositional options are selected. Selecting the
'Composition' Button allows to visualise the fluid composition.
Use Original By ticking this box the original composition entered in the well IPR section
Composition will be used for the calculations, overriding any composition coming from
MBAL or the Working composition present in the well IPR section
The action buttons have been explained in detail previously 185 and have here exactly the same
role.
The following action buttons are particular to the Input section, and their roles are described
below:
Plot Plots the IPR plot for the current layer (or the well in a single layer model).
The Match data (if present) is also displayed. In the Grid View all of the IPR
of all layers and the total IPR of the well as well
Calculate Displays the IPR Calculation screen. This allows rates to be calculated from
flowing bottom hole pressures or vice versa based on the resultant IPR.
From MBAL See description below
From MBAL
It is possible to transfer data from existing material balance models to well models inside GAP.
Either the VLP, IPR and relative permeability data can be transferred across. This action button
takes the user to the screen that allows these parameters to be transferred.
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:
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.
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.
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
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.
From Tank Model (Available only for Material Balance Prediction). GAP
will take relative permeability and data from the tank associated with the layer
considered (MBAL Model).
From Rel Perm 1 or 2. GAP will use the relative permeability entered under
the Edit button. These rel perms can be entered by hand or transferred from
MBAL by means of the button From MBAL (located at the bottom right of the
screen). In both cases the relative permeability curves are defined as Corey
functions (ref. MBAL user Guide).
From Table 1 or 2(see below 209 ) the user can directly enter the WC and the
GOR as a function of time, pressure or cumulative production
Shift Rel The option "Shift Rel Perm to Breakthrough" is used to smooth the set of relative
Perm to permeabilities of water or gas, after the breakthrough occurs (see "Breakthrough
Breakthrou and Perforation Depths" section hereafter). If this option is turned off, and the gas
gh breakthrough occurs at Sg,breakthrough>Sgr, the relative permeability of the gas goes
straight from zero to Krg_0 (cf. following sketch) creating a step change in
mobility. Consequently, this step change in mobility can result in a sharp increase
in WC or GOR which may not be representative of reality.
To prevent this from happening the user has the option to "Shift the Rel Perm to
Breakthrough" which effectively translates the rel perm curve to the breakthrough
saturation.
PI If this option is set to Yes, the PI will be corrected based on the changing WC
Correction which is directly related to the change in mobility. A test-water cut and a test
for Mobility pressure must be entered.
The test water cut, reservoir pressure and temperature are used to determine the
water saturations (Sw ) and oil and water viscosities. The oil saturation (So) is
calculated as described in the Vogel correction depending on the options as
indicated later.
With the use of relative permeability curves, the test mobility can be calculated
from:
K rw K ro
M test
w o
At a particular reservoir pressure and water cut, the current mobility (M) can be
calculated using a similar formula. Based on the two calculated mobility values,
the corrected productivity index will be:
M
PI PI test
M test
And this value of corrected PI will be used to generate the new IPR
Vogel (Available Only for Oil wells with Mobility correction for PI on)
Correction If this option is set to Yes, the relative permeability values that are used for PI
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.
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).
Accessing the 'Edit' button will allow the user to enter the required fractional flow table:
In the primary column section select the basis for the fractional flow curves (time, pressure or
Cumulative Production).
If the 'Decline Curves' option is active then the "Prod. Data" tab becomes available and the data
is entered as shown below.
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.
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.
The reservoir model is created within the well IPR section, and therefore the
'Tight Gas' well cannot be linked to any reservoir models in GAP.
The 'Tight Gas' model is selected from the Summary section of the well screen, as shown below.
The reservoir characteristics are entered separately for each well. Note that the drainage area
radius entry should be a result of a Type Curve Analysis, that can be carried out in MBAL. An
example of a type curve characterisation is given in the MBAL manual.
The Darcy (S) and Non-Darcy Skins (D) are the skins relating to the transient inflow equation:
n
1442T
m Pi m Pwf Qj Qj 1 PD t dn t dj 1 SQn DQn2
kh j 1
The "Current Time" input data is only used when the network is solved at a particular date. In
that case, the time since the production started is calculated based on the difference between
the "Current Time" entered and the "Start of Production" entered. For prediction runs, the time
since production started is calculated based on the current prediction time.
The time can be considered as "Normal Time", "Pseudo Time (Pwf)" or "Normal Time (Pbar)".
0.000264 kt
td 2
ct i rw
where the subscript i refers to the evaluation of these parameters at the initial pressure. The
time t can be considered as either the
where the subscript Pwf refers to the evaluation of these parameters at the bottom hole
pressure.
where the subscript P"bar" refers to the evaluation of these parameters at the average
reservoir pressure.
More information about this model and its theory can be found in the MBAL User Guide.
In this section, the production history is entered. It will be used to update the IPR for the first
timestep of the prediction.
Action Buttons
Plot Plots the total well IPR, in addition to the individual layer IPRs for all valid
layers.
Calculate Invokes the IPR Calculation screen. This performs rate and bottom hole
pressure calculations based on the total well IPR (not the individual layer
IPRs).
Report Invokes the standard GAP report generator. This produces a report for the
total well IPR in addition to the individual layer IPRs (valid layers only)
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.
Fractured dP
i.e. Frac dP
Normal PI Fractured PI
Initial Reservoir i.e. P.I. i.e. Frac PI
Pressure
Water Rate
The normal P.I. entered or calculated (if the IPR is generated from PROSPER) is used up to a
bottom hole pressure equal to the initial reservoir pressure + the entered Frac dP value. From
this point on, the Frac PI is used.
2.5.3.3.3 VLP Input
This screen allows the user to specify the data file that contains the VLP tables of the well. If the
table does not exist, it can be generated using the using GAP. Details on the VLP generation
are given in the VLP/IPR generation 447 section.
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:
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.
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
VLP/IPR complex lift curves (primarily for gas coning wells). As the GOR for these
intersection lift curves is a function of the liquid rate (and given by the coning model),
this intersection method provides a much safer way of getting an
intersection than the default method. It is, however, much slower than the
default method and should only be used when absolutely necessary
Inspect This option allows the user to view the tables of VLP curves and also to
plot them curves which can be used to quality check the sets of VLPs.
Generate This option accesses the VLP generation dialogue (see below 466 )
VLP Information In this section information concerning the VLP curves used are
displayed:
Type of well (indication of the VLP format)
Calculated Variables (sensitivity variables included in the VLPs
Surface and Vertical Correlations used to generate the VLPs
(including the matching parameters)
.
2.5.3.3.3.1 Inspection of VLP Data
The VLP data that is associated with the VLP file can be inspected manually by selecting the
"Inspect" button from the VLP Input screen.
This is a lookup table of the VLP results. The left and right hand columns give the VLP curves for
the variable parameters highlighted (in reverse video) in the central columns.
The data presented can be edited. It may be exported into a performance data file by pressing
the 'Export' button which produces a file browser that can be used to navigate the appropriate
file destination.
The variables that are a part of the VLP file depend on the type of well. For
example this is a naturally flowing oil well VLP table.
The 'Variables' menu can be used to select which sensitivity variables to plot.
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
Production / optimisation 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 146 )
Potential Includes or excludes the constraint in the potential calculations
(Yes / No)
GAP has the capacity to optimise the production from gas lifted wells by altering the
amount of gas lift gas injected into the well. If the gas lifted control has been
selected (refer to the Gas lift control 233 section) the constraints screen will display
new constraints relevant to gas lifted wells.
The following constraints are available for gas lifted wells control:
Maximum gas GAP will not inject more gas lift gas than the entered amount
injection rate
Minimum gas GAP leaves the well shut in unless it deserves at least this volume of
injection rate gas to optimise production
NO-CLOSE Forces GAP to allocate this volume of gas irrespective of whether the
minimum gas well should be allocated gas to optimise production or not. Used to
injection rate model particular field operating practices e.g. to ensure flow stability
GAP has the capacity to optimise the production from diluent injection wells by
altering the amount of diluent injected in the well. If the diluent control has been
selected the constraints screen will display new constraints relevant to diluent
injected wells.
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)
As for natural oil producers these constraints are available through the Constraints | General
screen.
An additional feature in GAP is the ability to incorporate the performance limits of the pumps
which would be provided by the manufacturer (i.e. the upthrust/downthrust limits of an ESP
pump). These can be entered in the form of a table.
The following tables can be entered, according to the type of artificial lift system selected:
To enter these constraints tables, click the "Pump" subsection tab from the 'Constraints' menu,
as illustrated below for an ESP Well.
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.
Maximum GOR
Maximum WC
Maximum WGR
Minimum Liquid Rate
Minimum Oil Rate
2.5.3.3.4.3 Symbols
When setting 'Constraints', the program will plot in the network picture two arrows pointing
towards the element.
If the objective is to shut down a well if it cannot produce a minimum rate, then this can
be achieved by setting up an 'Abandonment Constraint' of minimum rate in the'
Abandonment' section. As soon as the well production decreases below the set
minimum abandonment constraint, the well will be automatically closed by GAP.
2.5.3.3.5 Controls
The Controls section allows the user to specify choke settings and artificial lift controls (in the
case of an artificially lifted well).
2.5.3.3.5.1 Symbols
When activating a control (dP Control or Artificial Lift quantity control) the program will display
the following symbols in the network.
dP Control A thin solid red circle is set around the well icon.
2.5.3.3.5.2 dP Control
The "Control" section is where the well head choke controls are applied and in the case of
artificially lifted wells where the artificial lift controls are applied.
dP Control options
None There is no choke at the wellhead. Equivalent of having the well fully open
Fixed Value Allows the user to enter a fixed dP at the wellhead to model the effect of a
choke. The fixed pressure option applies the quantity specified in the field
as the wellhead choke dP.
Calculated GAP optimiser is used to calculate the pressure loss in the wellhead
choke to maximise production from the whole network while at the same
time honouring constraints.
The choke defined in this section is at the end of VLP curves. If the curves include
pressure losses up to the wellhead, the choke is at the wellhead level. If the curves
include pressure losses in the downhole equipment and a flow-line up to a
manifold, the choke is then considered to be at the end of flow line.
In the 'Calculated' option , the results screen has a choke calculator, which allows the user
to estimate the choke setting that corresponds to the dP calculated using the Perkin' s
choke model (SPE 20633).
A range for the minimum and maximum gas lift gas injection rate can also
be specified
Fixed Gas The value of gas lift gas injection rate that GAP will use in calculations for
Lift Gas fixed gas lift gas rate.
Injection Rate
Fluid Properties The fluid properties of the injected gas lift gas are specified here. If a
compositional PVT modeling option is enabled then the composition of
the injected gas can be entered.
ESP Control
Diluent Control
Diluent Control
SRP Control
HSP Control
PCP Control
The only difference is that the Casing Liquid Level must also be defined which is used to
calculate the casing pressure. Note that the application of the CBM wells is demonstrated in
the examples 984 .
The 'Control' screen allows the user to change/define the gas lift source properties that are
associated with the well.
The source names are set up in the 'Injection Fluids' dialogue which can be accessed from the
'Options' menu. This menu can also be invoked by pressing the 'Edit List' button from the
"Control" screen.
Select the required gas lift source from the list of available injection fluids. The properties of the
source will be displayed for convenience in the 'Fluid Properties' area beside this option.
The composition of the source can be displayed by selecting the "Composition" button at the
base of the screen (when compositional tracking is enabled). This can only be edited through
the 'Injection Fluids' screen. The colour of the button indicates the validity of the source
composition.
2.5.3.3.6 PC Data
When the well mode is set to 'PC Interpolation' the 'PC Data' tab becomes available. This tab
contains all the information on the PC (ref. Summary screen for definition of PC 188 ), which can
be entered by hand or calculated on the basis of the well VLP/IPR.
The quality of the performance curves used can be verified by accessing the menu Results | Plot
Performance Curves, as shown in the following section 570 . This feature helps to validate if the
VLPs and IPR have been correctly generated.
2.5.3.3.6.1 PC Generation
This screen is used to generate a set of well performance curves using the VLP and IPR data
entered in the Well IPR Input 197 and Well VLP Input screens. It is called from the Well PC Data
screen from the 'PC Generation' button.
Input Fields
The reservoir pressure, PVT quantities etc. are the same as those
entered in the well 'IPR Input' screen.
Command Buttons
2.5.3.3.7 Downtime
This screen is where the well downtime is entered for a prediction run.
The cumulative production from the reservoir is calculated from the instantaneous rate multiplied
by the well efficiency factor (100% - down time).
See the MBAL manual for more information on the theory behind the gas coning models.
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:
Perforation Depths These are the same variables that can be accessed from the "IPR |
More..." tab. Enter the top and bottom perforation depths for the well
relative to surface.
Gas-Oil Contact The gas-oil contact depth tracked in the MBAL model during a
prediction run overwrites this field. It may be used following a snapshot
reload, or whenever a performance curve is regenerated outside of a
prediction to adjust the gas-oil contact depth from the tank model.
Matching Data/Test These are used to evaluate the coning coefficients F2, F3, and the
Data exponent. Enter up to three match points (liquid rate against producing
GOR) and test values for gas-oil contact, water cut, and layer pressure.
When the "Match" button is selected, the values for the coefficients will
be entered automatically into the dialogue fields
Results The coning coefficients F2, F3, and the exponent may be entered by
hand (without performing a match). They must be present for the data to
be validated prior to performing a prediction run.
Note When the "Validate" button is selected, validation information for the
current layer will be displayed. The dialogue tab will be coloured
according to the validity of the entire data set. Any invalid or missing
fields in any layers will be picked up. Only those layers that have coning
enabled will be included in the validation.
Since IPM version 6, 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 water cut is displayed below.
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 436 .
Only limited information is required in the outflow section related exclusively to the well outflow
performance(or VLPs). In the main GAP screen, the outflow only well is identified with the
following icon:
A VLP file can be imported if it already exists or can be generated using the "Generate" feature
from the GAP main screen (Please refer to VLP generation 466 section for details on the VLP
Generation).
The functions of this screen have already been explained in the previous section of this chapter.
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.
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
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.
Selecting "Open" will automatically transfer the equipment data from the PROSPER file into the
equivalent screens in GAP.
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:
In this screen the 'Options' selected in the PROSPER file can be viewed.
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.
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.
The next section is related to erosional velocities and solids transport. Selecting the Solids
button will prompt the following screen:
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:
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.
This "Edit" button will prompt the 'Equipment screen' and all of the related sections described
above which can be populated with data.
2.5.3.4.2.3 Completing the Outflow Only Well - Inflow Performance Setup
In order to complete an 'Outflow only' well, one or more corresponding inflows need to be
specified. One example of a two layered system is shown below:
An example of how to set up a model with inflow and outflow elements can be found in the
Examples Guide 765 .
2.5.3.5 Well Results Screen
This screen contains all the results from network solves and prediction runs for the selected well.
To switch between different well results, use the list on the right hand side of the summary
screen.
Network Solver The results screen is divided into two sections. The first is the network
Results Screen solver results associated with the previously solved network calculation.
Prediction The second is the 'Prediction' results which is only valid if a prediction
Results Screen run has been carried out:
Selection of this option will prompt the 'Gradient calculation' screen from PROSPER and display
the gradient traverse calculations.
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.
Crossflow is calculated based on the IPRs of each layer. A crossflowing layer will be
displayed with negative rates in the layer results.
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.
In GAP, separators are nodes where the pressure is fixed regardless of the rate going through
them. It does not necessarily have to represent an actual separator in the field. It can represent
any fixed pressure point in the system.
In a single GAP model there can be multiple separators defined, each with their own fixed
pressure value and their own independent constraints.
For systems with more than one separator, make sure that each separator has a
different name to enable easy identification in reports.
The pressure of the separator(s) is not specified in the separator element itself. It is
set under the 'Solve Network' or 'Prediction Forecast' screens. It is imperative that a
pressure is entered as it represents the boundary condition and cannot be solved
without it.
The following help section is valid for both production separators and injection manifolds. The
input screens do differ between the types of manifolds however the differences are explained in
the duration of the document.
Double clicking on the separator icon will provide access to the separator summary screen.
There are three sections, which are listed below:
Summary Screen This allows the selection of different separator types, and also gives
the status of various aspects of the separator input data.
Input Screen Includes tabbed screens for the following input fields:
Constraints
Separation ( Only for production separators)
Injection source ( Only for gas, water and steam injection
manifolds)
Schedule (Only if prediction selected in main option)
Results Screen Contains the following fields:
Network Solver Results
Prediction Results
The separated fluids can be picked up and sent through separate networks
to other separators. This operation can be done using sources connected
to the separator icon, as shown below. The source can be defined as
separator oil, gas or water to pick up the corresponding phases. This
means that up to three sources (one for oil, gas and water) can be
connected to a single separator.
Input Fields
Please refer to the section above 188 for description of these options.
Separation Type With this option the user defines whether the separator is
Production Separator
Water Injection Manifold
Gas Injection manifold
Steam Injection Manifold
Oil Injection Manifold
LNG Process Plant NEW!!!
Data Summary This field contains the summary of the data that is needed in the input
Area screens. This also indicates if the current data is valid or not. In the case
of an injection manifold there is an input field to define the source of the
injected fluid.
2.5.4.2.1 Constraints
Constraint parameters are optional. They may be used to enter specific production, injection or
physical constraints at the separator. Selecting the constraints tab of the input data section will
display the following screen:
Constraints should not be entered until the entire GAP model has been validated against
measured production data (provided this is available).
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).
This is same for any other piece of equipment with constraints in the system.
Separate constraints are available for the 'Total Gas' through the separator (i.e. sum of
produced and gas lift gas) or produced gas only. System constraints which refer to the total
combined production of all the separators in the system, are entered under Constraints | System
Constraints in the main menu. Please refer to the Constraints 143 tables section for details.
Populate from This option will transfer all of the component names (i.e. C1, C2 etc.) from
solver results the solver results. The user can then enter the LNG fractions for each
component.
Populate from PRP This option will transfer all of the component names (i.e. C1, C2 etc.) from
file a .PRP file. The user can then enter the LNG fractions for each
component.
2.5.4.2.4 Schedule (ONLY for prediction)
Scheduling is used during the prediction to change the constraints or to include or exclude
equipment in the system at a specific date during the forecast. The application of schedules is
the same for every element in the system. Please refer to the section above 246 for a description
of the feature.
2.5.4.3 Injection Fluid Details (INJECTION Man.Only)
This is required for gas, water and steam injection systems. The properties of the oil/gas/water/
steam (quality) that are to be injected are specified in the list of injected fluids. If one of the
compositional PVT options is active then the user will also have the option to enter the
composition.
The steam Injection manifold is selected from the 'Separation Type' drop down menu.
A steam source needs to be created in the 'Injection Fluid' tab, using the "Edit List" button.
In this dialogue there is the option to create a fluid stream of steam. The quality of the steam
needs to be entered to define the thermodynamic state of the fluid.
The steam calculator can be used to calculate the steam properties at different conditions of
temperature, pressure and enthalpy. The steam calculator can been accessed either from the
Injection Fluids' window or from the Input | Fluid screen.
Steam Calculator
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.
Calculate Entering the pressure and enthalpy into the steam calculator will calculate the
Single steam properties at these conditions.
2.5.5 Joints
The joint is a point in the network where two or more pieces of equipment are connected. Each
joint is a calculation point within the GAP the network and the solver will try to achieve pressure
and mass balance at every node and joint in the system.
This following section describes the possible input options for joints.
Like any other equipment entry the joint data entry screen has three sections (as explained in the
Equipment data 180 section).
The summary screen for all of the equipment nodes are similar and as such its contents do not
need to explained here. Please refer to the Separator Summary 266 screen section for further
details.
Lumping Rule (Present only when Compositional PVT is enabled) It defines which lumping
rule is adopted for the fluid flowing through the joint
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.
Joint constraint parameters are optional. They may be used to enter the specific production
constraints of a joint and the pipeline it feeds into. Joint constraints are entered on the following
dialogue box:
Enter the maximum levels of production that GAP can use while optimising production. These
are usually determined by the physical or mechanical constraints of the manifold or associated
pipes.
When left blank, the program assumes there are no constraints for this item.
2.5.5.4 Schedule
Scheduling is used during the prediction to change the constraints or to include or exclude
equipment in the system at a specific date during the forecast. The application of schedules is
the same for every element in the system. Please refer to the section above 246 for a description
of the feature.
2.5.6 Pipelines
Pipeline connections are represented by blue pipe segments drawn across the centre of the line
connecting two joints.
Connections between joints and elements have no input screens. For example, a connection
between a joint and an injection manifold (refer to Case 2 in figure below). For GAP calculations
there are no pressure drops across these types of links.
The figure below attempts to reinforce the above statements. Case 1 illustrates a link between
two joints which creates a pipeline element. Provided there is a pipeline description then GAP
will calculate a pressure drop across this type of link. Case 2 shows the link between a joint and
an injection manifold. In this case there is no associated pressure drop in the calculations.
The pipeline data entry/results screen has three sections (as explained in the Equipment
Summary section 180 ).
Summary This screen provides a summary of the method used to calculate pressure
Screen drops, the input data and the flow correlation in for the pipeline. See the
following section for further details
Input Screen Depending on the calculation method used, the required input data will
change. Please refer to the sections below on the data required for each
method
Results Contains the following fields:
Input data
Please refer to the section above 188 for description of these options.
Comments Enter any string of comments that gives more information about the
pipeline e.g. date brought on stream, etc.
Pipe Type Pressure drops in the pipe can be calculated using three options (see
below). One can use; the internal correlations of GAP, PROSPER on line or
lift curves. Options on the summary screen will change depending on the
method used. The following sections will describe each of these in detail
Pipe Type
Pressure drops in the pipe can be calculated using three options.
GAP Internal Multiphase flow correlations are used for the pressure drop calculation.
Correlations This is the recommended modelling approach.
Lift Curves Sets of VLP curves can be imported (for example from PROSPER or from
GAP Internal Correlations themselves)
PROSPER on line PROSPER is called from GAP and is used for the pressure drop
calculations.
Options on the summary screen will change depending on the method used. The following
sections will describe each of these in detail.
2.5.6.2 GAP Internal Correlations
The GAP Internal Correlations calculation method is the recommended approach for
modelling pipelines in GAP.
This method calculates the pressure drops on the fly using the internal PVT and pressure drop
correlations of GAP.
Correlation Select from the drop-down list the correlation to use in the calculation of
the pressure drops. In the presence of match data, then the correlation
selection will depend on the correlation that gives the closest match.
Correlation These fields display the gravity and friction coefficients that are used in
Coefficients the calculation of pressure drops. These coefficients are calculated when
the user performs a 'Match' calculation. For the ideal case of a
correlation that matches the measured data exactly then both
parameters should be 1 (the coefficients are multipliers).
Oil Viscosity The oil viscosity correlation can be selected for each pipeline
Correlation independently of the default oil viscosity correlation specified in the
'System Settings' (Edit | System Settings). The following correlations are
available:
Beal et al
Beggs et al
Bergman-Sutton
Egbogah et al (Heavy Oil)
Petrosky et al
Oil Pb, Rs, Bo The Bubble Point, Solution Gas Ratio, and Oil FVF correlations can be
correlation selected for each pipeline independently of the correlations entered by
default under the 'System Settings' (Edit | System Settings). The
following correlations are available:
Al-Marhoun
Glaso
Lasater
Petrosky et al
Standing
Vasquez-Beggs
Gas Viscosity The gas viscosity correlation can be selected for each pipeline
Correlation independently of the default gas viscosity correlation specified in the
'System Settings' (Edit | System Settings) The following correlations are
available:
Carr et al
Lee et al
Emulsion It is possible to account for the effects of emulsion on fluid viscosity by
ticking the 'Emulsion' box. Once selected, a list can be accessed and
edited, that takes into account any emulsion viscosity data.
Lumping (active only when compositional model is enabled) This option allows the
Calculation user to specify which composition to use for the main calculation. if
Mode <System Default> is selected, the program will use the Lumped or the
De-Lumped composition as specified in the menu Options | Method
Data Summary This shows the status of the various aspects of item data which are
Area described in the following sections.
The following dialogue displays the Environment screen which is related to the fluid temperature
calculations.
Surface Temperature Enter the temperature of the environment surrounding the pipe
(ambient temperature).
Overall Heat Transfer This value accounts for steady state heat transfer by conduction, free
Coefficient convection, forced convection and radiation through the pipeline, the
insulation (if present) and to the surroundings. The overall heat
transfer coefficient is referenced to the pipe inside diameter
Heat Capacities Average heat capacities for Oil, Gas and Water.
In this entry screen, begin at the top and work downwards to enter the data, as shown in the
following example.
There is also the option to define the pipe topography based on the
elevation change as apposed to the the TVD depth. This is achieved
through the option "Segment elevation change".
In the this case the elevation depth is always referenced from the
downstream node within the pipeline segment. This means it is not
possible to check if the dimensions of neighbouring pipeline segments are
consistent and therefore this option is not recommend.
Diameter Enter the inside diameter of the pipe.
Roughness Enter pipe surface roughness. The default value of 0.0006 inches is a
value that has shown to work well over a wide range of different pipes and
tubings. The value is based on experience and may not be applicable for
every case however if necessary it can be modified by the user.
Fittings In the case where fittings are selected as part of the pipe equipment the
program will prompt a secondary screen.
Where:
HL = Velocity Head
K = Resistance coefficient
v = velocity
g = constant
If a fitting cannot be found in the database then the user can specify a
custom K value.
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.
Rate MultiplierMultiplies the pipeline fluid velocity by this value. The option can be used to
model pipelines flowing in parallel. For example, two identical parallel pipes
can be modelled as a single pipe (of the same diameter) with a rate multiplier
of 0.5.
Max Length This is the iteration length used in the calculation of pressure drops over a pipe
Step length. This should not need to be altered unless the pipe under consideration
is particularly long or has complex geometry.
Flow Type Either tubing flow or annular flow can be modelled. If the annular flow option is
selected, it is required to enter the outer tubing information (roughness and ID)
as well as the casing inside diameter (roughness and ID).
Correlations / Select an appropriate pipeline correlation from those available. The correlation
Coefficients that is selected will be used in subsequent build operations, and if the
correlation has been matched to existing data the calculated coefficients will
also be incorporated (see below). The user may edit the coefficients by hand if
required.
Match Click on this button to perform a pipeline matching to the available multiphase
correlations. The button will be coloured green if there is no match data present
(blue otherwise).
Swap Node This button can be used to swap the inlet (upstream) and outlet (downstream)
joints of a pipe element. Note that the labels of the upstream and downstream
nodes are displayed. This display is very useful when handling complex
networks.
The white arrows in the pipeline icon denote the upstream and downstream
direction of the pipeline. The node at which the arrows are pointing towards is
the downstream node and the node they are pointing away from is the
upstream.
In the example below, 'Sep Joint' is the downstream joint and this corresponds
to the TVD in the first row. The upstream joint 'Manifold_B' refers to the bottom
row (5) of the description.
COPY, Select the row number of the desired pipe element(s) and click on particular
PASTE, CUT, button to perform the appropriate task
INSERT,
DELETE
ALL This option can be used to select all the rows in the pipe element
INVERT This option can be used to select all the points excluding the currently selected
row.
When GAP detects steam in the system (either coming from a source or an injection
manifold), the U-value needs to be specified at the "Segment Type" level for all the
pipelines in the system as the "Improved approximation" temperature model is used by
default.
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.
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.
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.
To change the definition of the nodes click on the Swap Nodes button.
By matching the pipeline pressure losses to real data, an accurate integrated model can be built
all the way from the reservoir, to the wells and through the gathering system up to the production
separator.
The engineer should treat the pipeline matching with care, especially when dealing
with multiphase mixtures flowing in long undulating pipelines where the field
measurements are taken at relatively large distances from each other. This because
the pressure measurements may not correspond to the measured rates due to the
combined effect of compressibility and the time taken for the fluid to flow between the
meters. In such cases, pipelines can easily be matched to erroneous data.
Pipeline pressure drop matching is not compulsory for carrying out production rate or gas lift
allocation calculations. If field data is available then it is possible to match the pipeline pressure
data with the pipeline models in GAP but the user must use this option with care.
A non-linear regression technique is used to adjust the selected pipe correlation parameters to
match the measured pressures. To begin the matching process, click on the Match button in the
pipe description screen. The following screen will be presented.
To enter the pipeline match data, carry out the following steps:
Ensure that the rate type selected is the same as the test data. Choose either liquid rates
or oil rates.
Enter the test points in the grid columns (up to 10 points may be entered). Match rows
can be removed or included in the regression by selecting the row and then clicking
enable or disable as required.
After the data is entered, click on 'Match' to proceed with the calculation.
To perform the surface pipe pressure drop matching, carry out the following steps:
Click 'Match' from the pipe match data entry screen which will prompt the following
dialogue.
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.
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
Repeat the matching procedure for each pipe until all pipes have been matched to real data.
Provided that this step has been carefully carried out, the overall model should not require further
adjustment in order to match the measured production and pressure data.
2.5.6.2.1.4 Constraints
In this section the user can apply constraints to the pipeline such as maximum mixture velocity, C
factor and line pressure. Please note that constraints on rates can be applied at either of the
nodes that define the pipeline element.
Pressure and temperature gradients can be displayed using the "Variables" option from the plot
menu bar.
To view the detailed results of the pressure drop calculations, access the pipeline summary
screen by double clicking on a pipeline element and then select "Calculate".
After that, select "Initialise from Solver results" to import the results from the 'Network Solver'
calculation.
Finally, select "Calculate" to view the detailed gradient results through PROSPER online.
When the lift curve option is selected, the user needs to choose a model for generating the lift
curves.
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.5.6.3.1 External
This option allows the user to enter a lift curve file that has been externally generated (in
PROSPER for example). The file can then be imported by selecting "Lift Curves" from the data
summary.
The user can then browse for the relevant file from the following screen.
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.
Upon selection of the lift curves tab (highlighted in red in the figure above) the user is prompted
with the following screen.
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.
Progress can be monitored in the progress bar at the bottom of the form.
Pipe VLPs can also been generated in a batch mode, assuming that several pipes have been
previously set to "Lift Curves". Please refer to the section "Batch Generation of Pipe VLPs 466 "
for more information.
2.5.6.3.3 PROSPER on line
The purpose of this option is to allow the user to generate the lift curves using PROSPER online.
Selecting the PROSPER on line method will prompt the following screen:
The main advantage of this method is that the user can generate lift curves using
the advanced temperature models available through 'PROSPER on Line'
The 'Edit Pipe' button allows the user to create the pipeline model using the 'PROSPER on Line'
features.
Please refer to the next section, called "PROSPER on line Pressure Drops 314 " for
detailed information on how to model a pipe with PROSPER on Line.
In terms of the generation of lift curves, the method is exactly the same as described in the
previous section called "GAP Internal Correlations 285 ".
The "Browse" button can then be used to associate the corresponding PROSPER file.
In terms of the generation of lift curves, the method is exactly the same as described in the
previous section called "GAP Internal Correlations 285 ".
2.5.6.4 PROSPER On Line
This option is found in the well summary screen.
Using this option will enable the user to calculate the pressure drops in a pipeline on the fly,
using the advanced temperature options which were up to now only available in PROSPER.
Traditionally, the temperature calculations in GAP were done using the rough approximation
method. Now the user can do these using the enthalpy balance or improved approximation
method.
The advantages of using 'PROSPER on Line' over the lift curve option are:
No interpolation between lift curves is required as the exact conditions are passed to
PROSPER during each calculation.
Instead of assuming a fixed PVT, as is the case in the lift curve generation, the
calculations are done based on the commingled PVT coming from the reservoirs which
varies according to the conditions. This is particularly important in multilayer reservoirs
where the contribution of each reservoir can change over time.
The advantage of using the advanced temperature models over the rough approximation
method are:
When the pipelines are being designed, and no match data is available, the rough
approximation method is not sufficient as the heat transfer coefficient cannot be back
calculated. The enthalpy balance method allows accurate calculation of the temperature
for such cases.
The drawback of using the enthalpy balance method is speed, as the method is computationally
intensive.
In the 'Examples Guide' a ste by step description of PROSPER 731 online pipeline 731 can be used
for reference.
The activation of the three temperature models (Rough Approximation, Enthalpy Balance and
Improved Approximation) can be done through the 'Options'.
The 'Equipment' section is then customised according to the temperature model selected. It is
therefore important for the user to make sure the appropriate model has been selected.
NOTE:
The black oil PVT correlations can be matched to measured lab data using the 'PVT Matching'
feature. More information about the PVT matching option is provided in the PROSPER manual.
The 'Solids' feature is where key variables 255 are set for several complementary calculations
in PROSPER (maximum grain size diameter, erosional velocity,liquid loading and pigging).
Multiphase Flow correlations can be matched to test data using the 'Correlation Matching'
feature. More information about the multiphase flow correlation matching option can be found
in the PROSPER manual.
The two matching parameters (gravity and friction) that are calculated during the matching
procedure can be accessed by clicking on the 'Correlation Parameters' button.
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.
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
PROSPER manual.
2.5.6.4.1.2 Enthalpy Balance
The enthalpy balance method will calculate the heat transfer coefficient as a function of heat
losses due to free convection, forced convection, conduction and radiation. This method is the
most accurate temperature calculation method available as it takes into account sea water
velocities, insulation, sea temperatures, burial depth etc. For details on the equations, please
refer to the PROSPER Manual.
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:
To calculate heat losses, additional data such as outside diameter, material type and insulation
(if used) are required to be input. The surface equipment model can utilise the following
equipment types:
Line pipe
Coated pipeline
Flexible tubes
user selected
Choke
Fittings
To allow for pipe bends and general fittings, the program contains a
database of K-values that capture the pressure drop for the
appropriate type of fitting
Choke Method The choke calculation handles both sub-critical and critical flow and the
program will calculate the temperature change across the choke due to the
Joule-Thomson effect.
Coordinate The surface equipment geometry can be entered either in terms of the
System TVD of the upstream end of the pipe segment or as X, Y (referenced from
the manifold or the Xmas Tree) co-ordinate pairs.
Rock Properties Enter the relevant rock properties which will be used in the heat transfer
calculations
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.
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:
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).
Databases
This optional feature is used to access the thermal properties databases for editing or adding
new materials.
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.
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.
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.
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.
2.5.6.6 Bottlenecks
GAP can be used to detect if pipelines are "bottle necking" the system.
After a "Solve Network" is run, the bottle necked pipelines are turned to the colour puce.
After a "Prediction" is run, a bottle neck flag is displayed in the pipelines prediction results,
under the "Status" results column.
Note that the option "Highlight Bottle Necked Pipes" in the 'View' menu must be selected for the
this to be active.
In order to determine if pipeline is bottle necked, GAP will use the following logic in a post
calculation (i.e. after the network has been solved):
1. From the results of the 'Solve Network' calculation, GAP extracts the liquid rate and the
upstream/downstream pressures for each pipeline.
2. GAP will then increase the calculated rate by 10%, fix the upstream pressure to the result
determined in the solve network and then calculate the downstream pressure in a post
calculation.
3. If the downstream pressure that is calculated becomes negative then this will trigger the flag.
2.5.6.7 Emulsion correction
GAP includes a model that corrects the viscosity of the fluid due to the effect of emulsions.
The emulsion correction will override the standard viscosity calculation based on the viscosity of
the water and the oil in the pipe. It is based on the Woelflin correlation which can be matched to
measured data.
Selecting the Emulsion checkbox will lead to the activation of the "Edit List" button. This
feature allows the user to create multiple emulsion corrections that can be applied to different
flowlines in the system. Selecting the "Edit List" button, will prompt a form which allows the
different models to be defined.
In the laboratory, stable emulsions can be prepared from many crude oil/water systems. Field
experience shows that the effect of emulsions is usually less than predicted by laboratory tests.
Emulsion PVT should be used with caution and only when it is certain that emulsions are
present and it is necessary to evaluate their effect on calculated pressures.
Emulsion viscosity will replace the mixture viscosity for selected elements of the production
system. Experimental or empirical data can be entered and curve-fitted using a non-linear
regression. The fitted curve is used to determine oil viscosity multipliers as a function of the
water cut which are used to modify the mixture viscosity in pressure drop and pump calculations.
When selected, the oil viscosity for the user-entered value of water cut will be factored
according to the fitted curve which will then be used in the calculation of the mixture viscosity.
The parameters Left and Right Water Cut for Maximum Viscosity define the maximum plateau
region. To calculate emulsion viscosity:
- Enter the water cut and emulsion viscosity data points in the "Emulsion Data" table.
- Click the "Match" button.
When the regression has stopped, click "Plot" to display the matched mixture viscosity.
The above regression will only match the first part of the curve (highlighted in red) using
parameters 2 and 3 to fit the data. For the viscosity correction applying to water cuts above the
right plateau limit (highlighted in blue), an exponential decline is implemented that needs to be
matched manually using parameters 4 and 5.
Having done the match the viscosity model can then be applied to one, some or all the pipelines
in the system.
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.
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.
Like the "Bottle necking" calculation, the "Hydrate/Wax formation" is also a post-calculation
carried out at the end of the solve. GAP effectively calculates the hydrate/wax formation curve
from the composition and determines if the conditions in the pipeline (pressure and
temperature) are such that hydrates or wax are likely to form. This feature and its application is
illustrated in Examples 893 .
2.5.7 Tanks
In GAP, Tanks (Reservoirs) are used to predict the pressure response and the fluid saturations
during predictions (only).
A Tank in GAP refers to a reservoir. It should not be confused with Stock Tank
conditions.
A decline curve
MBAL Material Balance model file.
Please remember to set the prediction to "On" from the Options | Method 78 screen.
Material GAP can use MBAL Material Balance models to determine reservoir
Balance pressures and fractional flows (well GOR s and water cuts).
Decline Decline Curves that express reservoir pressure as a function of cumulative
Curves production. The reservoir pressure decline therefore includes the effects of
aquifer pressure support or fluid influx from adjacent reservoir units
External An external simulator (like REVEAL, Eclipse, IMEX, MoReS, CHEARS, etc.)
Simulator can be linked to the wells in GAP. Linking GAP to a simulator is done
through RESOLVE.
Once a tank has been defined, production wells must be assigned to the tank. This can be done
either:
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).
The tank data summary screen has three sections (as explained in the Equipment Summary
section 180 ).
Summary This screen gives the status of various aspects of the input data and
Screen displays the MBAL file that represents the reservoir (for MBAL prediction). It
also allows the user to select which method to use for "Prediction".
Input Includes tabbed screens for the following input fields:
Screen Well Connections (Valid/Invalid)
Constraints (injection system only) (Present/None/Invalid)
Production Data (decline curve prediction only) (Present/None/
Invalid)
Injection Fluid (Injection source)
Schedule (None/Some)
Results Contains the following fields:
Screen Network Solver Results
Prediction Results
Main features
Model The user can select the prediction method. There are three choices
available:
1. Material Balance
2. Decline Curve
3. External Simulator (ref. previous paragraph 338 )
Type The fluid type will be automatically selected based on the PVT
description in the MBAL file when using the Material Balance approach.
The user can select the fluid type when using Decline Curve. Choices
are:
Oil
Gas
Retrograde Condensate
PVT Model This field displays the PVT modelling option used by the reservoir
model. The options are Black Oil, Fully Compositional and Tracking.
MBAL File (Material Balance Prediction only)
For a material balance tank, this gives the name of the MBAL file that
contains the model for the tank. To select a new file, select the "Browse"
button and choose a file from the selection dialogue presented.
Number of Tanks (Material Balance Prediction only)
For a multi-tank, this displays the number of sub-tanks in the system
Tank ID (Material Balance Prediction only)
This displays the tank ID from the MBAL file
Start of (Material Balance Prediction only)
Production GAP will look up the start of production from the MBAL tank and display
it here.
End of History (Material Balance Prediction only)
GAP will display the end of history date in cases where the MBAL model
contains historical data.
Original Oil Displays the original oil or gas in place.
and Gas in Place
Run MBAL Opens the associated MBAL file. if there is no file specified then GAP
will open a fresh MBAL file which can be automatically be associated to
the tank in GAP.
Multiple tanks
If a multi-tank MBAL file is loaded into this screen, the conventional icon that
represents the single tanks will be replaced by a number of icons, each corresponding
to the tanks in the MBAL file.
Transmissibility links between tanks are represented by the lines joining the tanks
together.
2.5.7.2.1 Constraints
This tab allows the user to specify tank constraints.
2.5.7.2.2 Wells
For a tank to be considered in the prediction calculations it must be connected to one or more
wells. This can be achieved from this tab.
In this screen, select wells from the Not Connected list and click the "Add" button to connect
them to the tank. Alternatively, disconnect wells by removing them from the Connected list.
Alternatively, the same connections can be established using the following methods:
Through the Tanks tab in the Well Summary screen
Dragging a link between a well and a tank on the system window
2.5.7.2.3 Injection
This section is only used in cases where there is no associated injection system and allows the
user to define the properties of the injection fluids, which are then used for pressure drop
calculations.
Gas Injection Select the injection source from the current list.
Fluid
Edit List Invokes the fluid injection source dialogue (as accessed from the Options
menu 85 item). Use this to update or add to the current source list
Composition If one of the compositional methods is selected, there will also be an
option to an enter the composition.
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.
Note that the two elements are interchangeable, as their difference is only visual.
2.5.8.1 Summary and Input
These sections are the same as in Sinks 397 .
2.5.8.2 Results
The Results tab is exactly the same as any other element.
In the menu Prediction the results of the Flares and Vents are reported under Emissions. To
access the Emissions select the menu Prediction | View Prediction Results System Emissions,
or to plot go to Plot Emissions Prediction Results.
Type This entry defines the main phase produced by the tank (Oil, Gas, Retrograde
Condensate)
Temperature Defines the temperature of the reservoir
Original Oil/ Specifies the oil/gas in place.
Gas in place
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.
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.
Calculate Interpolates the table to find the tank pressure corresponding to the
value of Current Oil Production
Plot Plots the tank pressure against cumulative production, as entered in the
table.
2.5.9.2 Compressibility
This option allows the engineer to enter the rock compressibility as a function of pressure.
Where Vi and Pi are the pore volume and pressure at initial conditions.
This formulation means that the results are not dependant on the time
steps selected.
On Tangent The Cf at pressure P and V is defined using the formula:
2.5.10 Pumps
Pumps can be handled in GAP with performance data provided by the pump manufacturer, or
based on a model.
Performance Curves This is a table that relates head and power consumed to operating rate.
The lookup table can also have speed and gas/liquid fraction as
sensitivity variables. If desired, affinity laws can be used to scale the
calculations for actual vs. design speed. The pump pressure
calculations are based on an averaged rate through the pump i.e. the
volume changes that occur from inlet to outlet as a consequence of the
pressure change are taken into account. This averaged rate is then
used as the input to the performance table to obtain a head, which is
converted into a pressure using the average density of the fluid. Note
that the calculations are repeated sequentially for the number of stages
specified.
Jet Pump Jet pump model that can be used to predict jet pump performance. The
Jet pump can be selected from a list that mirrors the database of
pumps of PROSPER
Framo Pump FRAMO Multiphase pump model that can be used to account for the
pump performance. The pump can be selected from a list that mirrors
the database of pumps of PROSPER
When defining a pump, it should always be placed between two joints, one at its suction
and the other at its discharge end. This is done, by dragging connections between
pumps and joints with the Link icon selected.
NOTE: the pump connections (represented by the white arrows) should be consistent
with the actual flow direction:
Summary This screen gives the status of various aspects of the input data for the
Screen pump. See the following section for details
Input Includes tabbed screens for the following input fields:
Screen Data (Valid/Invalid)
Control (OK)
Schedule (Prediction Only)
Results Contains the following fields:
Screen Network Solver Results
Prediction Results
Data Summary This shows the status of the various aspects of item data. These will be
Area described in the following sections
Number of Pumps This option allows the user to specify the number of pumps in parallel
in Parallel which GAP will take into consideration in the network calculation. It
prevents the user from having to create a separate pump element in the
main network.
The alternative is to use a mathematical model that predicts the relationship between rate and
head (i.e. the Jet pump or Framo pump options). These mathematical models are developed
based on physical principles and assumptions about the type of pump which are then validated
against experimental data. They therefore should only be applied to the type of pumps that they
were designed for.
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".
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
Delete PC Deletes the performance data entered for the pump. Once the
performance data is deleted, the pump input sections are treated as
new.
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 maximum/minimum operating speed limits are then set in the "Control" tab.
Calculated GAP will modify the pump speed (between the speed limits) to optimise
production and obey all constraints.
The user can either select a pump of choice, or edit the database to add more jet pumps if the
pump is not available.
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:
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
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
The user can either select a pump of choice, or edit the database to add more pumps if the
pump is not available:
Calculated GAP will modify the pump power (between the speed limits) to optimise
production and obey all constraints.
2.5.10.5 Constraints
This tab allows the user to specify pump constraints. The options will change according to the
type of pump selected:
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.
The "Initialise from solver results" button can be used to load the data from the
results of the last 'Solve Network' calculation. This allows the user to check the
pump performance under the same conditions as the main 'Solve Network'
calculation.
Input Fields
Table Enter test rates and inlet conditions. The rate can be specified as a liquid rate,
oil rate or gas rate, the type being chosen from the Rate Type combo box.
Action Buttons
Calculate Calculates the output head, pressure etc. for each test rate entered
Disable To disable a line, select the check box and press this button. Pressing the
button repeatedly toggles the enabled/disabled state
OK Removes the dialogue, saving the data entered
Cancel Removes the dialogue
Help Displays this screen
2.5.11 Compressors
Compressors can be handled in GAP with performance data provided by the pump
manufacturer, or based on a model.
When defining a compressor, it should always be placed between two joints, one at its
suction and the other at its discharge end. This is done, by dragging connections
between pumps and joints with the 'Link' icon selected.
Main options
Type Select the type of Compressor here. The options available are:
Performance Curves (Full model)
Fixed dP Compressor
Fixed Power Compressor
Reciprocating
MultiPhase Compressor/Pump NEW!!!
Data Summary This shows the status of the various aspects of item data. These will be
Area described in the following sections
Number of pumps This option allows the user to specify the number of compressors in
in parallel parallel which GAP will take into consideration in the network
calculation. It prevents the user from having to create a separate
compressor element in the main network.
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:
NEW!!!
The user has the option to enter different performance curves for each
stage. This can be used to simulate multiple compressors running on
the same shaft.
The "Use Affinity Laws" option must be selected in order for the
compressor to be controllable. The compressor model uses affinity
laws to scale the calculations from design speed to actual speed. The
compressor speed values are entered by selecting the "Control" tab
in the pump element input dialogue
Use Overall The user can enter the power consumed by the compressor in the
Efficiency performance curves (as a function of the inlet rate) and the program
will automatically calculate the efficiency.
Alternatively, the user has the option to "Use Overall Efficiency" and
enter the efficiency of the compressor in the performance curves. In
this case the program will automatically calculate the power required
by the compressor.
Actual Speed Current operating compressor speed.
Design Speed Design speed of the compressor, to which the performance data is
referenced.
Use Polytropic Head GAP gives the user the option to define the head curves using either
isentropic or polytropic head.
When this option is checked, GAP will assume the head in the
performance curve data refers to the polytropic head, otherwise the
head is treated as the isentropic head.
Polytropic Efficiency The internal calculations in GAP require the Polytropic Head.
When the performance curves refer to the isentropic head, GAP will
use the Polytropic Efficiency to convert the isentropic head into a
polytropic head.
Operating rate The gas rate flowing through the compressor, expressed at inlet
conditions.
Head Measure of the energy (expressed as a unit length) given to the fluid.
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).
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:
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.
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.
Number of Stages This is the number of stages in the compressor. Each stage is
identical.
Pre, post and inter stage separation and inter-cooling for compressors
can be set up via the 'Stage Data' screen.
Polytropic The polytropic efficiency is used for converting the isentropic
Efficiency coefficient k (which is the ratio of the heat capacities) to the polytropic
coefficients (n).
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
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.
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).
To enter the efficiency as a function of the rate, select the 'Efficiency' tab as shown in the figure
below:
The number of stages is required, and for each stage the inputs are:
Number of cylinders
Stroke length
Rod diameter
Clearance (as a percentage)
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 373 for a detailed description of the available options.
The main difference in the multiphase compressor model is that an additional variable (liquid
fraction) has to be defined for the performance curves. This variable is entered in the
"Sensitivity Variable Selection" form as shown in the figure above.
Calculated GAP will modify the compressor speed (between the speed limits) to optimise
production and obey all constraints.
The rate type list box can be used to select the desired input rate type. Pressing "Calculate" will
perform the compressor calculation for each line of data entered.
The "Initialise from solver results" button can be used to load the data from the
results of the last 'Solve Network' calculation. This allows the user to check the
pump performance under the same conditions as the main 'Solve Network'
calculation.
NOTE: If the compressor is set to 'Controllable', then the solution speed from a
solve network must also be updated in the main compressor input screen prior to
using the performance calculator.
This screen can be extremely useful in matching the performance of the model to that of a real
compressor. A typical set of performance curves for a centrifugal compressor consists of: Inlet
Rate Vs Head, Inlet Rate Vs Power and Inlet Rate Vs Dicharge Pressure. So, having entered
the data, the user may enter various test points to check if for a given rate, inlet pressure and
speed, that the correct outlet pressure is displayed. If the pressure is not correct, then the
polytropic efficiency of the machine can be changed to match the real performance.
When using the compressor performance calculator to review the optimised compressor
results for multistage reciprocating compressors, the optimised compressor speed MUST
be entered in the compressor input screen prior to using the performance calculator utility.
2.5.11.10 Operating point in Plot
The operating point can be displayed by accessing the PC Input section, after running a 'Solve
Network' calculation, and plotting the compressor performance curve. GAP will display the
operating point along with the compressor curve as shown below.
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).
When entering a source/sink element in the network, the following dialogue is displayed, giving
the user the option to include either a 'Source' or a 'Sink':
Sources/ Sinks are connected to the main surface network via a joint
2.5.12.1 Source
A "Source" is an artificial element that can either inject a fixed rate (defined by the user) into the
system or apply a fixed pressure (by injecting fluid). To achieve a fixed rate GAP will apply the
necessary pressure at this element that balances the system. Conversely, to fix the pressure
GAP will inject the necessary rate that balances the system.
As the element is artificial it is not recommended to use sources to model wells. The
true rate and pressure response of a well is driven by the physical interaction of oil,
water and gas flowing through a completion under the forces of gravity and friction. All
of these effects are captured in the well elements (through the VLP/IPR intersection)
which is the approach that should be used in network modelling.
The source element can be used in two different ways, depending on the objectives.
Fixed When the source is only linked to a joint, it injects fluid into the system on the
rate / mass/ basis of fixed mass, fixed rate or fixed pressure.
pressure
sources In this way inline injection or even contribution of fluid from a nearby field, for
example, can be captured.
Separator Sources that are connected to separators can handle a separated stream (
oil/gas/ gas, oil, water or a mixture thereof).
/water When a source is linked directly to a separator (fixed pressure or inline
line separator) the source can be used to isolate one of the phases (oil, gas or
water) and send it to a different part of the network downstream.
In order to transfer one of the fluid phases to a different part of the network, the
source will apply the necessary pressure that balances the system. Therefore
the difference between the pressure at the separator (inlet) and the pressure
calculated at the source (outlet) corresponds to the pump/compressor duty
required to transmit the fluids.
This is particularly useful in the design phase to determine the duty of pumps
and compressors which is necessary for sizing the equipment.
To define which phase the source will transfer, access the source summary
screen and select the 'Type' as shown below:
Summary This screen gives the status of various aspects of the input data for the
Screen source. The type of source is also selected in this section
Input Includes tabbed screens for the following input fields:
Screen Fluid (Valid/Invalid)
Fixed Rate(Valid/Invalid)
Schedule (Prediction Only)
Results Contains the following fields:
Screen Network Solver Results
Prediction Results
Main Options
Type Here the type of source is selected. The options depend on whether or
not the source is connected to a separator.
Standalone If the source is an independent source, the options are:
sources Fixed Rate
Fixed Mass Rate NEW!!!
Fixed Pressure
Sources For sources connected to separators, the options are:
connected Separated gas
to Separated water
separators Separated Oil
Depends on Indicates the separator directly connected to the source
Pressure If "Yes" the source will have the same pressure as the connected
constrained separator, otherwise (recommended in most cases) the source will apply
the required pressure to transfer the fluid to a downstream network.
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.
The user can define the type of fluid (water, steam, oil and gas) and modify the properties by
selecting "Edit List". The PVT properties of the source are displayed in the area at the bottom
of the screen.
Edit List This button allows to edit the gas/water/steam injection source list
Fluid This can be used to view the details of the properties of the injection fluid.
Properties In case one of the compositional options is enabled, the 'Injection Fluids'
section will have a composition button as well. Clicking this will display
the composition associated with the injected fluid that will be used in the
calculations
Depending the type of source (fixed rate, fixed mass or fixed pressure) the user specifies the
fluid temperature and either the rates or the pressure.
Summary This screen gives the status of various aspects of the input data for the
Screen sink
Input Includes tabbed screens for the following input fields:
Screen Fixed Rate(Valid/Invalid)
Schedule (Prediction Only)
Results Contains the following fields:
Type Here we select the type of the sink. Only one option is available:
Fixed Rate
Fixed Mass Rate NEW!!!
Fixed Pressure
Data Summary This shows the status of the various aspects of input datasets
Area
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
Scheduling is used during the prediction to change the constraints or to include or exclude
equipment in the system at a specific date during the forecast. The application of schedules is
the same for every element in the system. Please refer to the section above 246 for a description
of the feature.
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 three sections for data input in the Inline Gate valve have the following entries:
Summary This screen gives the status of various aspects of the input data for the
Screen Inline Gate Valve. The type of Inline Gate Valve is also selected in this
section
Input (Only for Prediction Case)
Screen This section contains an entry screen for the Schedule
Results Contains the following fields:
Screen Network Solver Results
Prediction Results
Main options
The three sections for data input in the Inline check valve have the following entries:
Summary This screen gives the status of various aspects of the input data for the
Screen Inline check Valve. The type of Inline check is also selected in this
section
Input (Only for Prediction Cases)
Screen This section contains an entry screen for the 'Schedule'
Results Contains the following fields:
Screen Network Solver Results
Prediction Results
If there is a phase separation within the network, where the pressure values are
not fixed, but floating, the inline separation element can be used.
The user can also fix the pressure of the inline separation element if required.
The three sections of the inline separation element have the following entries:
Summary This screen gives the status of various aspects of the input data for the
Screen inline separation. The type of inline separation is also selected in this
section.
Input Includes tabbed screens for the following input fields:
Screen Separation (OK/Invalid)
Schedule (Prediction Only)
Results Contains the following fields:
Screen Network Solver Results
Prediction Results
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
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.
The choke model implemented in GAP is based on the Perkins choke model.
The three sections of the inline choke element have the following entries:
Summary This screen gives the status of various aspects of the input data for the
Screen inline choke
Input Includes tabbed screens for the following input fields:
Screen dP Control (OK)
Schedule (Prediction Only)
Results Contains the following fields:
Screen Network Solver Results
Prediction Results
Data Summary This shows the status of the various aspects of item data
Area
The are four options for handling the pressure drop across the choke.
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.
This prompts the following screen, automatically transferring the conditions from the results of
the Solve Network/Prediction. Pressing 'Calculate' performs the choke calculation.
The plot button displays the performance curve of the choke along with the operating point.
The discharge coefficient relates the actual flow to the ideal frictionless flow.
The three sections of the inline injection element have the following entries:
Summary This screen gives the status of various aspects of the input data for the
Screen inline choke
Input Includes tabbed screens for the following input fields:
Screen Fluid (OK / Invalid)
Injection Rate (OK / Invalid)
Schedule (Prediction Only)
Results Contains the following fields:
Screen Network Solver Results
Prediction Results
Data Summary This shows the status of the various aspects of item data
Area
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
Summary This screen gives the status of various aspects of the input data for the
Screen Inline General element
Input Includes tabbed screens for the following input fields:
Screen Script (OK)
Variables (None/Some)
Schedule (Prediction Only)
Results Contains the following fields:
Screen Network Solver Results
Prediction Results
The syntax used is similar to the C programming language, and the variables considered can be
accessed using strings similar to the one used in OPENSERVER.
It is important to note than when using an inline element, only the current model (i.e. Production
or Injection) can be accessed. The inline script cannot access the injection model when the inline
element is located in the production model.
Each line must be terminated by a semi colon. Local variables 418 (such as DeltaPressure) do
not need to be declared.
One can access various variables defined in GAP that correspond to the inlet and outlet
conditions of the inline programmable object, as well as other variables used by the solver. In
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.
NOTE: All calculated fluid density values are returned in SI Units i.e., g/cc.
Local Temporary These variables are defined by the user within the script to for instance
Variables proceed to calculations internal to the script.
The values associated to these variables are lost at the end of the
script.
Temporary These variables are defined using the TEMPVAR[010] or ITEMPVAR
Variables [010] keywords. See section below 423
The values associated to these variables are initialised to 0 at the
beginning of the solver calculation.
The values associated to these variables can be kept throughout the
solver calculation process (i.e. they will be kept throughout the solver
calculation iterations) but will be lost at the end of the solver calculation
Permanent These variables are defined within the inline general script and their
Variables value can then be accessed and modified within the 'Variable' screen of
the inline general element. These variables will be kept throughout the
entire calculation
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.
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.
QGAS gas rate (MMscf/day) - black oil model only, otherwise use QMOLE
QGFREE injected gas rate (MMscf/day) - black oil model only, otherwise use
QMOLE
QMOLE mole rate (mol/lbm/sec) - compositional model only
QOIL oil rate (STB/day) - black oil model only, otherwise use QMOLE
QPWF power fluid rate (STB/day)
QPWFU power fluid rate used (STB/day)
QWAT water rate (STB/day)
REVENUE revenue/cost of fluids flowing through (<0 for cost)
SGG gas specific gravity (sp. grav)
SGGFREE gaslift gas specific gravity (sp. grav)
SOG oil specific gravity (sp. grav)
TEMP temperature (degrees F)
WENT water enthalpy (BTU/lb)
This variable is only calculated when steam is present. If steam is not
present, the value associated to this variable will be nil
WSAL water salinity (ppm)
For example to access the inlet stream pressure, the IN[PRES] variable name should be used.
Shortcuts have been created for the frequently used inlet and outlet stream. Add the IN or OUT
suffix to the above indexes to directly access the corresponding stream variable. For example
PRESIN is a shortcut for IN[PRES].
When calling the calculation script, GAP initialises the fluid properties of the all streams and the
PVT calculator variables (see below) to the inlet stream fluid properties. The rates of the
separation streams are set to zero and the outlet stream rates are set to the inlet stream rates.
So by default, OUT[] is equal to IN[].
When in fully compositional mode, the five streams have an associated composition. These
compositions can be accessed through the five COMP type structures named:
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.
Example: MOD.JOINT[{Abc}].FLOW.PRES
to access the pressure
at the node'ABC'
compositions can be accessed through the five COMP type structures named:
The COMPx variables refer to the total hydrocarbon fluid composition, including gaslift or
injected gas.
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
Input variables
PVTPRES Pressure
PVTTEMP Temperature
PVTSOLGOR GOR black oil mode only
PVTSOG Specific oil gravity black oil mode only
PVTSGG Specific gas gravity black oil mode only
PVTWSAL Water salinity black oil mode only
PVTH2S H2S impurity black oil mode only
PVTCO2 CO2 impurity black oil mode only
PVTN2 N2 impurity black oil mode only
PVTCOMP composition compositional mode only
Calculated variables
PVTRS Calculated RS
PVTPB Bubble Point
PVTRHOOIL Oil density
PVTGRVOIL Oil gravity
PVTOILFVF Oil FVF
PVTFMUOIL Oil viscosity
PVTCT Total compressibility
PVTRHOGAS Gas density
PVTGASFVF Gas FVF
PVTFMUGAS Gas viscosity
PVTFACTOZ Z factor
PVTPCRITP Critical pressure
PVTPCRITT Critical temperature
PVTRHOWSC Water density at SC
PVTRSOWAT Solubility of gas in water
PVTWATFVF Water FVF
PVTCOMWAT Water compressibility
PVTRHOWAT Water density
PVTFMUWAT Water viscosity
PVTCONWAT Conductivity of water
PVTCPROIL Specific heat capacity of oil
Example
An example of PVTPRES = PRESOUT;
using the PVT PVTTEMP = TEMPOUT;
calculator. CALCPVTGAS();
The gas Z factor is Z1 = PVTFACTOZ;
calculated at the inline PVTPRES = PRESOUT + 20.0;
element outlet T and P and CALCPVTGAS();
pressure 20 psi higher Z2 = PVTFACTOZ;
dZ = (Z2 - Z1)/20.0;
2.5.13.6.12 PVT Calculator - Compositional
A PVT calculator is available within the script, which allows calculation of PVT properties for
compositional models.
In addition to the COMP structure 425 variables and the PVT black oil 427 calculator there is also:
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:
Examples
How to flash the inlet PVTPRES = PRESIN - 10;
composition at P and T and PVTTEMP = TEMPIN;
send the vapour on the gas PVTCOMP = COMPIN;
line and the liquid CALCPVT();
hydrocarbon on the oil line COMPSEPOIL = PVTCOMPOIL;
COMPSEPGAS = PVTCOMPGAS;
SEPGAS[QMOLE] = IN[QMOLE] * PVTVAPFRA;
SEPOIL[QMOLE] = IN[QMOLE] * (1 - PVTVAPFRA);
OUT[QMOLE] = 0;
How to change the CO2
mole percent of
composition COMPOUT to PVTCHANGECOMP(COMPOUT, CO2, 1.2, 1,
1.2% after normalization i.e. QMOLEOUT);
the CO2 percent is set 1.2%
It is important to note that in compositional mode, inline elements cannot use hydrocarbon
rates anymore. QOIL, QGAS, and QGFREE are not available in compositional mode
2.5.13.6.13 Logging Messages
It is possible to log messages during the inline element script progress, through the following
function:
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.
}
Month = Month - 1;
}
This element allows the user to decompose the wellbore into sections to model complicated
down hole geometry such as downhole control valves in multilayer systems.
The inflow data entry is split into three sections as described below.
Summary This screen gives the status of the input inflow data and allows the type
Screen of well (producer or injector) and the location of an appropriate
PROSPER file to be defined
Input This screen allows the input data to be entered. The options in this
Screen section are the same as the IPR description discussed in IPR
section 197
Results Contains the following fields:
Screen Network Solver Results
Prediction Results
Browse The browse button is used to select the location of a PROSPER file that
contains the IPR description. The file defined here can be used to import
the IPR information into GAP as outlined in the section about IPR
Generation 452
2.5.14.2 Input
Refer to IPR section 197 for further details.
2.5.15 Grouping
The grouping option allows collections of equipment to be controlled from one icon.
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
2.5.15.1.1 Constraints
When constraints are entered into the constraints input screen, the values entered represent an
overall constraint that the sum the values for the nodes in the group cannot exceed.
For example, if the maximum gas production rate for "Group1" is set to 5MMscf/day, then the
overall quantity of gas produced from wells W1, W2 and W3 will be constrained to ensure
that this quantity is not exceeded.
A total compressor maximum power constraint for single network systems can
be imposed on any downstream node (or separator) from the last compressor
described in the given system.
2.5.15.1.2 Schedule
Scheduling is used during the prediction to change the constraints or to include or exclude
equipment in the system at a specific date during the forecast. The application of schedules is
the same for every element in the system. Please refer to the section above 246 for a description
of the feature.
2.5.15.1.3 Grouping
The screen that is displayed when the grouping tab is clicked is shown below:
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.
2.5.16 Flowsheets
Flowsheets can be created to facilitate the visualisation of very large GAP models that may
contain thousands of wells. The 'Flowsheet' can be used to embed parts of the main network into
a smaller sub screen. One application of the feature is described in detail in the Examples 960 .
Considering the GAP model below, a worksheet can be created to group all the wells flowing
from the manifold "WH1".
The objective for this small example will be to copy these elements (Res1, Well1, Well1_ESP,
and Well1_GL) into a separate flowsheet.
Step 1: Copy the Copy the items from using the "Select" pointer from the main tool bar
items
.
Once the 'Select' pointer has been clicked on, elements can be
marked for copying using a left-mouse click.
Once the desired model elements have been selected, simply right-
click in the main GAP screen and select "Extract to GAP Partial FIle
(*.gpp") from the pop-up menu.
This will save a .gpp file to a relevant directory.
To insert the previously copied sub network into the flowsheet, enter
the flowsheet and right-click and select "Insert GAP partial file" from
the menu.
Step 2: Create the Create a flowsheet element in the main production system, using the
Flowsheet "Flowsheet" icon from the main menu bar.
Step 3: Paste the In the new flowsheet, right clicking and select the option "Insert GAP
elements in the Partial File".
flowsheet Point it to the .gpp file that was created in step 1.
This will paste all the five elements inside the flowsheet.
Clicking on Window|Tile Vertically will display both the main network
and the flowsheet side by side.
Step 4: Create the The next step will be to create the flowsheet port.
'Flowsheet Port'
The flowsheet port is the hydraulic link between the flowsheet elements
and the main network. In the above example this link will be the joint
"WH1".
To create the flowsheet port, double click on the WH1 element inside
the flowsheet and in the summary section there is an option called
"Flowsheet Port". Select the 'Radio' button.
Alternatively, it is also possible to just right click on the WH1 and select
the option from the menu.
This will publish the WH1 element inside the main network as shown in
the figure below.
Step 5: Create the The worksheet port created on the main worksheet can now be linked to
link between the the rest of the network.
Flowsheet Port and
the other elements Since the objective is to link up the WH1 to the manifold, a link will be
in the main network. created between the flowsheet port and the joint called "Manifold". This
will of course be an empty link (no pipeline) between the two nodes.
Step 6: Copy the Since the pipeline definition is already present in the link between WH1
contents of the (old) and manifold, this needs to be copied across to the newly created
pipeline across to link between the WH1 (new) and the Manifold.
the newly created The easiest way to do this is to press down the CTRL button on the
pipe. keyboard, left click on the existing pipe and drag and drop onto the
newly created link.
The screen after the drag and drop will look like this.
Step 7: Delete the The duplicated items in the main production system can be deleted
duplicated Network
elements.
The initial model and this model above are exactly equivalent however
the main production system is visually simpler as it has fewer
associated elements.
It might be possible that an item remains duplicated (such as a common joint), and therefore the
icon will turn "invalid", as GAP detects two elements with the same label in the system.
If the objective is to shut down a well if it cannot produce a minimum rate, then this can
be achieved by setting up an 'Abandonment Constraint' of minimum rate in the'
Abandonment' section. As soon as the well production decreases below the set
minimum abandonment constraint, the well will be automatically closed by GAP.
NOTE: Toable to generate IPRs or VLPs in batch mode, GAP needs to know the path of the
PROSPER file associated to each specific GAP well model. Therefore a PROSPER file needs to
be associated to each well in GAP.
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:
The intersection between the VLP and the IPR corresponds to the flowing rate and bottom hole
pressure under the defined conditions. Therefore it is the combination of these two relationships
that constitute the full well model (it is not possible to predict the well performance without the
relationship between them).
This type of well model requires VLPs and IPRs to be generated for a range of different
conditions which the well will encounter throughout the field life.
2.6.1.1 IPR
Inflow performance relationships are transferred from PROSPER.
GAP has the PI and Vogel relationship (for Oil wells) built into it that captures the IPR response
of the well. This option determines an equivalent PI that can match the curve from PROSPER and
this will be used to perform the well calculations. GAP does this by extracting three test points
from PROSPER which can be viewed in the IPR Match section of the Well Summary screen.
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
NEW!!!
The "Per phase" IPR model calculates the individual phases directly from the following
equations:
Unlike the other models where we calculate the IPR based on the major phase (either liquid or
gas) and then determine the other phases from the pseudo relative permeability curves.
The data entered in the IPR section can be verified by accessing the well IPR Input 197 section.
2.6.1.2 VLP
Lift Curves are generated by the PROSPER well file. The procedure will be outlined in the
following sections 466 .
Conversely, if there are not enough variables defined there can be large interpolation errors that
are created. For example, if the VLPs have been generated for only two manifold pressures (i.
e. 100psig and 7000psig) that are significantly different in magnitude, then large interpolation
errors will be implicit in the calculations that are carried out for the intermediate manifold
pressures. It is therefore not only important that the ranges used in the VLP variables capture
the full range of expected conditions but there should also be enough variables defined so that
the numerical resolution minimises any interpolation error.
In order to assist the user we provide recommended ranges 470 that should ALWAYS be
applied as they attempt to eliminate extrapolation errors and minimise interpolation
errors.
Another potentially problematic issue for the solver is poor quality VLPs. Quality in this sense
refers to the derivatives of the VLP curves which should always be smooth and continuous
according to the physics in the wellbore. Discontinuous VLPs are not representative of reality
and are associated with poor derivatives. If the VLPs appear poor then it could either be the
multiphase flow correlation which has been selected or it may be the PROSPER file that needs to
be reviewed to understand what may be causing the effect.
The quality of the derivatives affect the solver because they drive the direction it takes in
order to converge to a solution. Derivatives that are not realistic and consistent with the
physics can drive GAP away from the natural response of the system and create
convergence problems. For this reason it is always recommended to inspect the VLP
curves in the GAP well model, which can be done by clicking on "Inspect" in the well
VLP section (ref. VLP Inspection 223 section).
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.
3. Click on the "Browse" button to open a file selection dialogue box. From this dialogue
box select the appropriate PROSPER file for the well.
Repeat this process for each of the wells that require IPR generation. Note that this is an
operation that is performed just once, when the model is built.
Now that the appropriate PROSPER files have been specified for each well click Generate
Generate Well IPRs with PROSPER from the main menu.
There will be a prompt which allows the user to specify whether all of the wells should have their
IPRs generated or only a selected number of wells.
Once this has been clarified the following window will appear.
The button "Generate" is eventually used to transfer, in a batch mode, the IPRs from the
PROSPER files to the GAP well models.
The result is that the IPR is imported into the well IPR section.
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.
The "Enter Layers Indices" screen is used to select the information that will be assigned to each
layer in GAP from PROSPER. In the case of PROSPER files built with the multi-layer IPR model it
should be noted that the total IPR is transferred to GAP. It is also possible to transfer the
individual layer IPRs and this is explained in the following section.
Click | OK to start PROSPER. Each wells input (.OUT) file will be opened in sequence and the
IPR data will be automatically read into GAP.
GAP uses the IPR model defined in the well IPR section regardless of the type of IPR model
used in PROSPER. This means that oil IPRs are always modelled with a PI and Vogel correction,
while gas or condensate IPRs are always modelled with either Forcheimer, Forcheimer (with
pseudo pressure) or C and n. GAP takes the reservoir pressure and PVT information from
PROSPER along with three IPR data points. These points become the 'Match' points in the GAP
model, which are used in a regression to determine the IPR coefficients.
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.
Case a
In this case it is assumed that each IPR layer in GAP corresponds to one PROSPER file (***.out)
containing a single layer IPR model (Jones, Forcheimer, etc.). The objective is to import each
IPR into GAP. The following figure illustrates the objective.
This can be achieved by first associating each layer to the corresponding PROSPER model and
then generating the IPRs in batch mode allowing all of the transfer to be done in one click. The
process is as follows:
Associate each layer in GAP to the appropriate PROSPER model. This can be achieved
by accessing the IPR Layer section and selecting "Browse" to locate the file. This is
shown below:
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.
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).
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".
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.
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.
The following description assumes that the PROSPER models have been built for each well and
are already associated to the well models in GAP.
To generate the VLPs click Generate Generate Well VLPs with PROSPER.
This can be used in the same way as for the "Batch Transfer of IPRs".
To generate VLP tables for GAP, check the "For GAP model" box. PROSPER will be used to
calculate and save a *.VLP file (GAP Binary VLP lift curves) which automatically be transferred
into GAP.
If the For Simulator option is selected then it is necessary to select a lift curve format
compatible with the simulator. There are a variety of formats available which are displayed in
the figure below.
The 'PVT Method' drop down box enables the user to select which PVT dataset is to be used to
generate the VLPs. The user can either follow the PVT in the PROSPER model, use a black oil
PVT model or a full compositional PVT model if available.
The For GAP model option must be used when modeling pipeline Pressure
and Temperature in GAP. No other VLP format allows for transferring the
temperature values from the well models to the surface network.
The next step is to define the range of sensitivity variables used for generating the VLPs. To do
this select "Data" which will prompt the following screen
The populate buttons can be used to automatically generate a range of variables based on a
spacing.
Enter rates (up to 20) and a range of values for the manifold pressure, GOR and water cut. Note
that the sensitivity variables will change depending on the type of well and the fluid being
produced.
The values used for generating the VLP curves are dependent upon the conditions of the field.
The objective is to generate the VLP curves with a range of values that encompass all of the
expected conditions that will be experienced during the field life. The reason for using a high
range of values is so that GAP will always interpolate between the VLPs to find a solution.
Extrapolation, as previously described 450 , can give incorrect results or cause problems for the
solver.
A recommended range of sensitivity variables for different wells can be found here 470 .
Once the sensitivity variables have been entered for each well select the "OK" button to return to
the selection screen. GAP is now set up to calculate the well VLP curves in a batch.
Before generating the VLP curves, make sure that the correlation used in the PROSPER
corresponds to the correlation that is matched to the well test data (if any). When the "Generate"
button is pressed GAP will automatically direct PROSPER to calculate a VLP for every single
combination of the sensitivity variables entered in the "Data" section. The completed VLP
tables will be automatically saved as a .vlp file and transferred to the VLP section of the
corresponding well element in GAP.
The progress of the calculations can be monitored with the progress bar (shown below).
Once the generation is successfully completed, a screen will be prompted to notify the user.
Once finished the user must inspect the quality of the VLP curves to ensure that they are valid
for the network calculations. This is done by selecting "Inspect" in the well VLP section and
plotting the VLP curves for different variables and checking the quality of the derivatives.
expected conditions that will be experienced during the field life. The reason for using a high
range of values is so that GAP will always interpolate between the VLPs to find a solution.
Extrapolation, as previously described 450 , can give incorrect results or cause problems for the
solver.
The following values can be used as suggested intervals to enter the data for the VLP curves.
Although these values will not correspond to the ideal ranges for every type of system they are
still a good starting point and the engineer is recommended to use them for guidance.
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.
The number of VLPs that can be generated is limited to 32,000 and the engineer must
take care in ensuring that this is not exceeded when generating VLPs for gas lifted wells
that include the casing pressure.
Top Node From low Reservoir 10 Linear Spacing The Top Node Pressure
Pressure value (for Pressure corresponds to the Well
example, Head Pressure.
100 psig)
WGR 0 Refer 10 Linear Spacing The Maximum Value for
Comments WGR is dependent upon
on Right the quality of the gas
being injected. Generally
a value of 50 stb/MMscf is
reasonable.
CGR 0 Refer 10 Geometric The Maximum Value of
Comments Spacing CGR is dependent upon
on Right the quality of the gas
being injected which can
change if different lines
are being blended before
the gas arrives at the
wellhead.
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.
If the user only wants to generate the VLP file for " Well_A" then select this well only when the
following option is given when accessing the Generate | Generate VLPs with PROSPER.
Once "Well_A" has been selected it will be the only well that appears in the VLP generation
screen and the procedure is exactly the same as in the section described previously.
Alternatively, the VLP file can be generated in PROSPER and then exported to be used in GAP.
The procedure is as follows for generating the VLP file in PROSPER:
1. Load PROSPER from Windows or from the well data entry screen and open (or create)
the appropriate PROSPER well file.
2. The VLP curves can be generated by selecting Calculation | VLP Tubing Curves from
the menu bar.
3. Enter the top node pressure and water cut values into the input table and a range of liquid
rates that encompass the full range of operating conditions into the table at the bottom
screen. Now press the 'Continue' button at the top of the screen. This will display the
sensitivities screen shown below.
4. For a naturally flowing well the first node pressure, GOR and water cut must be varied.
For a gas lifted well the GLR injected must also be varied. An error message will be
displayed and the created file will not be useable in GAP if variables other than the above
are varied.
6. The 'Export Lift Curve' button allows the user to export the curves in a variety of different
formats. For use in GAP select 'Petroleum Experts - GAP/MBAL'.
7. To import the file into GAP open the appropriate well VLP screen, click on the Import
button and then locate the file that has just been exported from PROSPER using the
Browser. GAP will automatically convert it to a .vlp file, and the name will be displayed in
the VLP file field of the dialogue.
In this definition the flow rates are defined as volumetric rates at standard conditions (STD). It is
important that this is understood as there are implications in this definition. This is because the
volumes measured at standard conditions are dependent on the way in which the fluid is
processed in order to reach standard conditions. Although the mass of fluid flowing will be the
same, the volumetric rates of the of the oil and gas at standard conditions can have different
rates (if the number of separator stages is different for example).
Defining the rates in terms of mass has the benefit of making the rates (hence the
VLPs) process independent. This is because volumetric rates at standard depend on
the process used to analyse the fluid, whilst mass is invariant, therefore does not
depend on the process used. This option is particularly useful when coupling models
that have different process paths to standard conditions defined. Using mass means
that the VLP and IPR would not have to be regenerated every time the process
changes.
When one of the compositional PVT models (see above 154 ) is selected, it is possible to
generate the lift curves with mass flow rates. To achieve that:
The PROSPER well model should be set to 'Equation of State'.
In GAP, in the well summary screen (accessible by double-clicking on the well) the rate
model should be set to "Use mass".
Generate the VLPs directly in PROSPER as showed in the section above 475 . In PROSPER
the 'Rate Type' selected in the VLP calculation section should be selected as
'Hydrocarbon Mass Flow Rate' :
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.
The procedure for generating pipe VLPs is similar to well VLPs. Select Generate | Generate
Pipe VLPs from the GAP menu bar.
If no wells have been selected, then the following screen will appear.
Clicking on "All" will select all the pipes in the system that have the "Use lift curves" option
selected.
Clicking on "Data" will display the "Generate Data" screen shown below.
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
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.
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.
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:
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...):
As mentioned before, the WC, GPR and Reservoir Pressures are unique. They are by default
coming from the well IPR sections. However, the user has the option to "Transfer" the variables
from the "Wells Model Validation" screen.
The 20 different Manifold pressures can either be entered by hand or automatically generated
(recommended) by GAP using the "Automatic WHP" option. The "Generate" button will
calculate the Performance Curves.
For Gas Lift wells, the Performance Curves are generated for two variables:
1. Manifold Pressure (as the other wells)
2. GLR injected
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.
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
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.
consistent with the well models in GAP. Once the engineer is confident that the model is a
reasonable representation of reality then it can be used for short or long term optimisation and
forecasts.
To carry out a "Model Validation" calculation, enter the following screen by selecting Model
Validation | Well Models Validation from the main menu.
On entering the dialogue, select the well type to work with and whether the oil or liquid rates
should be used when entering rates. (this will depend on the measured data available).
The values of Reservoir Pressure, Water Cut and GOR present in the wells IPR screen can be
transferred to this screen (for gas producers the CGR and WGR will be transferred). This is
done by using the "Transfer" button located at the bottom of the screen.
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.
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 to
determine the rates predicted by the model at the test conditions.
Rates are marked with a contrasting colour if the lift curves were extrapolated to find a
solution.
In the case of a multi-layer IPR model, GAP will use the layer pressures used
in the well IPR entry screen and will disable the reservoir pressure column.
Once the calculation has been done, the user can compare the measured rates against the
calculated rates of the well models. If there are significant differences then the models can be
updated accordingly.
The intersection of the VLP and IPR can be visualised by selectings "Plot".
Once the reason for any discrepancy between measured and calculated well performance is
identified, any required adjustment can be done (e.g. PI adjustment, VLP re-generation with a
more appropriate range of variables).
As a final step, the values of reservoir pressure, water cut and GOR can be transferred back to
the wells IPR screen by using the 'Transfer' button as illustrated previously, using the option To
VLP/IPR screen. This step is required if GAP is to update the existing values in the wells with
the current measured values.
While troubleshooting always check that the IPR, PVT, reservoir pressure etc. are
identical to that of test. Also check that the set of VLP curves used in GAP have
been generated with a reasonable range of variables (i.e. there are no
extrapolation errors.
All wells with valid IPR and VLP data (or Performance Curve data).
All pipelines and other surface equipment defined and calibrated.
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:
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).
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 top part of the screen enables the user to filter the equipment list by equipment type, sub
type, control type, optimised only or Non optimised only elements (the figure above is filtered on
"Optimised only'). Once a specific layout has been defined, the "Save Layout" button enables
the user to save the current configuration to memory so that it can be recalled at a later date.
The bottom part of the screen displays the list of system elements as follow:
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).
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.
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.
No optimisation
Optimise with all constraints
Optimise potentail constraints only
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.
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.
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).
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.
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.
NEW!!!
The user has the option to implement script during the 'Solve Network'. If some overlying logic is
to be applied during the solve then this can be captured using the "Run Prediction Script" option.
2.8.5.1 No Optimisation
This option invokes the solver only and GAP will calculate the pressures and rates throughout the
network to give the natural response of the system. Note that the natural response in this sense
refers to when the wells are fully open. The solution is according to the following criteria:
For artificially lifted wells, the solver reads and applies the corresponding artificial lift
parameters for each well from the Equipment Control screen under the section "Actual".
For any Equipment with dP Control (Wells and online Chokes) specified as "Calculated"
in their respective control screen, GAP will apply the dP specified in the Equipment
Control screen under the section "Actual".
For any Equipment with dP Control (Wells and online Chokes) specified as a "Fixed
value", GAP will apply the value entered in the "Control" screen.
2.8.5.2 Optimise with all constraints
This option invokes both the solver and the optimiser. In this case the natural response of the
network may not correspond to the systems optimum and GAP will apply its powerful algorithm
to maximise a given objective function whilst honouring any specified constraints.
All specified binding constraints are honoured (provided they are feasible).
For artificially lifted systems, the optimiser allocates the artificial lift parameters (e.g. the
gas lift gas amongst gas lifted wells) in such a fashion that overall production is optimised.
For any equipment with dP Control (wells and inline chokes) specified as "Calculated" in
their respective "Control" screens, GAP will determine the necessary pressure drop to
apply in order to obtain the optimum solution.
For any equipment with dP Control (Wells and inline Chokes) specified as a "fixed value",
GAP will use this fixed value during the entire optimisation. This allows the user to remove
control from certain elements in the system and still carry out an optimisation calculation.
If this mode is selected, an option to also calculate the potential becomes available. If this option
is checked, GAP will determine the potential of the system and report it in the results. The
potential of the system is calculated by solving the network with the well head chokes fully open
therefore it is possible for bottle necking to occur in the pipelines and in such cases it is
possible for the potential to be less than the optimum rates.
Note
The constraints that have the "Potential" option turned to "Yes" will still be considered and
honored during the potential calculation.
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.
Selecting the Settings button will prompt the following screen with the default settings.
GAP offers various configurations which can be modified to handle any system of any
level of complexity. However, over 90% of systems can be accurately and efficiently
modelled using the "Default" configuration which has been tested extensively with
numerous different models with a high level of diversity. On this basis we discourage
the manipulation of solver/optimiser settings unless the user is an experienced user and
comfortable with formulating optimisation problems.
Default
Fastest but may be less accurate in small systems
Large System (to speed up)
Quick and Rough
Tight tolerance (slower)
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.
Solver - Max iterations This is the maximum number of iterations the solver is allowed to
perform in order to converge. If convergence has not been
achieved within this number of iterations, then the solver will
simply stop. However, in most systems the solver will require
much less iterations than 50 (the default number) so if
convergence has not been achieved, this may indicate a problem
in the model setup which prevents the solver from finding a
solution
Solver - Jacobian This parameter exaggerates the slopes (derivatives) hence a
Term Multiplier faster solution can be achieved if this value is increased.
However, there is the possibility that by increasing this value, the
solver may overshoot and cause problems with the convergence
Solver - pressure The GAP network Solver works with derivatives which are
perturbance created with a certain change in pressure. This delta in pressure
defines the magnitude of perturbation (in psi)
Solver - Total Rate This is the total rate used to calculate the derivatives (as with the
Perturbance pressure perturbance described above). A value of 1 (Mstb/day
or MMscf/day depending on the system being oil or gas) is the
default one and should be fine for most cases. If the model
contains chokes and long pipelines with small ID for instance, it is
recommended to reduce the total rate disturbance to 0.1 or 0.01
as appropriate
Solver - pressure Used to normalize the derivatives of dp/dDp and dq/dDq. It
balance normalizer defines the relative weighting of the pressure balance error
relative to the rate error. The smaller the value the more accurate
the balance will be, but then the more difficult it is to converge
Solver - well initial It is the fraction of the initial rates (generated from wells using
rate fraction separator pressures as back pressure) that is used to get the first
guess for the solver. The default is 1.0. In some long pipeline
systems or small pipeline systems, or systems with chokes,
where the initial rates are difficult to pass, setting a smaller
number may increase speed of convergence. In such a case, one
might reduce the initial rate fraction, to 0.1 for instance
Solver - tolerance F This is the root mean square of the errors in the material balance
and pressure differences at any node. The higher this number,
the higher the error in mass/pressure at each node, but the faster
the solution. The default is 0.1
Solver - tolerance min Do not change
1: The optimizer will start every new step without using the
optimization results of the previous step.
2: The optimizer will reset the variables whenever there are
changes is the system, such as wells coming on.
The default setting is 1 and should be fine for most cases.
However, in cases where major changes in system configuration
occur from one time step to another, it might be more appropriate
to reset the solver variables to account for changes in the model
response
Prediction - control This option will limit the movement of optimiser variables
movement of optimiser between timesteps. The default value is 1.
variables This setting is only valid in forecasting mode.
Let us say maximum separator constraint of 10 000 bbls is set on
a system with two wells but each single well is capable of
producing 8000 bbls for instance. Clearly, there is an infinite
number of solutions to achieve 10000 bbls as a total. Hence as
long as there is an infinite number of solutions, from one step to
the another we may go from one solution to the other .
Mathematically speaking, all these solutions are equally valid if
there is no discrimination in the objective function. However, the
profile can oscillate heavily . What has been added in IPM 6.2 is
a penalization of the movement of variables from last time step .
This is controlled by the Prediction - control movement of
optimizer variables at the bottom of the setting screen for
forecast . The default is 1 (means penalize movement from last
time) . Changing this setting to 0 means that the history has no
effect on the present optimization and the rate/time profile may
show oscillations
.
2.8.7 Calculation Results
Once the mode is selected, click on "Calculate" to run the 'Solver'.
To view the results of the solution, click "Main" to return to the main menu. Click 'Results' from
the main menu and choose from one of the available options to display or plot the results of the
calculations.
A convenient way to inspect production results is to plot a histogram of production for each well.
To do this click Results Summary All Wells Plot to display histograms similar to the plots
shown below.
Refer to the chapter on Reporting 565 for more details. Clicking on an icon and
selecting the 'Results' data section allows the user to view the calculated results
for individual elements.
2.9 Prediction
The GAP prediction option allows the user to run forecasts, with optimisation, over user-defined
time steps taking into account the depletion in the reservoir(s). Tank pressure decline curves or
MBAL material balance models provide the mathematical model of how the reservoir pressure
will decline as a function of the produced fluids.
Each well connected to a tank shares the same reservoir pressure, however the parameter "IPR
dP Shift" can also be used to shift the reservoir pressure from the tank datum to each wells
intake node depth if necessary.
Reservoir targets can be set for each tank and abandonment limits for each well. GAP will
calculate how much water or gas injection is required to maintain the tank pressure and well,
tank, separator, and joint constraints can be scheduled to change with time.
In 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.
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.
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.
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.
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.
With the IPR defined, GAP will solve the network using the the method described in Step 3
(above) to determine the rates and pressures throughout the system.
The average rates are then calculated based on the downtime and these rates are applied
across the timestep to determine the cumulative reservoir production. This cumulative
production is then used to determine the new reservoir pressure (by interpolating between the
values defined in the table at the Tank level) and the whole process is repeated until the end of
the prediction.
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.
5. Batch calculate well VLP and IPR using PROSPER from within GAP.
6. Check GAP model using the 'Model Validation' and 'Solve Network'.
The following sections describe the data entry for the setting up of a Material Balance forecast in
GAP.
In order to use an MBAL model for predictions select the Material Balance option from the drop
down menu. This will display a 'Browse' button which allows an MBAL file to be associated to
the tank. Once a file has been associated the tank element becomes active.
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.
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
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.
Use this screen to enter constraints that are active for the entire prediction run.
Constraints can also be scheduled and modified through the 'Equipment
Schedule'.
Reservoir constraints can also be entered on this screen if desired. The constraint parameters
are outlined in the table below:
Target Pressure GAP will determine the gas or water injection required to
achieve the pressure target by the end of the prediction period
Gas Injection GAP will make up the required reservoir injection using the
Fraction specified fraction gas. If set to zero (or left blank), 100% water
injection is assumed
Voidage Repl. Pressure will be maintained by voidage replacement with
(Water) water
Voidage Repl. Pressure will be maintained by voidage replacement with gas
(Gas)
Water Recycling Produced water is re-injected
Gas Recycling Produced gas is re-injected
Gas Recycling The produced gas minus the entered amount is re-injected
(Prd amnt) into the tank. This constraint can be scheduled to model re-
injection of gas that exceeds the agreed sales contract.
Fixed Rate (Water) Injection of a specified rate of water
Fixed Rate (Gas) Injection of a specified rate of gas
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" 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.
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.
NEW!!!
Plot Tanks The user can plot the tank results dynamically as the prediction
is being carried out.
Plot Nodes The user can plot the node results dynamically as the
prediction is being carried out.
If the objective is to shut down a well if it cannot produce a minimum rate, then this can
be achieved by setting up an 'Abandonment Constraint' of minimum rate in the'
Abandonment' section. As soon as the well production decreases below the set
minimum abandonment constraint, the well will be automatically closed by GAP.
2.9.1.5 Linking Production / Injection Forecasting
The reservoir targets allow GAP to model production rates under specified conditions of
injection and pressure maintenance. GAP will calculate both the production and the injection
rates required to satisfy the reservoir constraints assuming that sufficient equipment
(compressors, pumps, injection wells and flowlines to distribute the fluid) is available to inject the
required volumes of gas and water.
There are two ways to carry out a production prediction with both production and injection:
Having the production wells and injection wells described in the same model
Having two different models, one model for production, and one model for injection, and
link these models together.
To have the production wells and injection wells described in the same model, we simply add
the production wells and injection wells in the same network drawing and link them accordingly.
A simple system with one production well and one injection well linked to the same reservoir is
shown below as an example:
When the two models are linked in the same GAP file, they are solved together. In this
configuration GAP cannot constrain the injection system to honour reservoir management
targets.
The alternative is to have the injection system modelled as a separate GAP file.
This injection system can then be associated to the production system using the 'Options' menu.
To view both the system on the same screen select Window | Tile Vertically.
When two models are set in separate GAP files and linked as shown above, the production
system is solved first assuming that the reservoir targets can be met. GAP will then run the
linked injection models to determine the required injection pressures.
If the potential of the injection system is higher than the volume to be injected, then the injection
system will not be constrained so that the reservoir target is not exceeded. However, if the
injection system is unable to inject the target volumes, GAP will re-run the production forecast
step using the maximum available injection rate. In this way, realistic optimised production
forecasts can be computed that take into account both production potential and injection
capacity.
The decision on which method to choose will depend on whether or not pressure support
options are set (for example 90% voidage replacement is specified).
The Water Injection System 746 (in the Worked Example section) demonstrates to the user how a
water injection system is created, and how it can be linked to the production system to meet
reservoir targets.
The "Add" button should be used to create a new stream, which can then be renamed.
When the the variables are plotted (either for the tanks or nodes) then the results streams will
automatically appear on the top left hand corner of the plot window. In order to plot the results of
two predictions simply select the element (System Totals) from one of the prediction streams
and then double click on the variable which in this case is the Cumulative Oil Production.
Repeat this for the other stream.
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.
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.
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.
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.
Please refer to the section "Prediction Script Options 587 " for more information on this topic.
Import/Export The script can be stored in an ASCII file (extension .gapscr) and
Prediction Script imported and exported in/from GAP
Disable This option discards the prediction script from the Prediction
Prediction Script
From this screen, it is possible to modify system constraints and to change the prediction step
size. In the date column, specify the date that the event will occur. In the event type column
choose to either change a constraint, the prediction step size or any OpenServer variable.
In the constraint type column select the constraint that is to be changed and in the 'New' value
column enter the value.
2.9.2.6.1 Notes on Constraints
When setting up the model, it is recommended to start with the minimum necessary
number of constraints. This is because from a mathematical perspective, increasing
the number of constraints drastically complicates the optimisation problem.
Keeping constraints to a minimum allows the user to validate and ensure that the
model is performing as it is supposed to. After the validation, the number of
constraints can be increased if necessary. However the user should always try to keep
the number of constraints to a minimum by only including constraints that reflect true
restrictions or contractual obligations in the field. This is to prevent unnecessary
complexity and moreover to prevent unfeasible problems from being created.
If the objective is to shut down a well if it cannot produce a minimum rate, then this can
be achieved by setting up an 'Abandonment Constraint' of minimum rate in the'
Abandonment' section. As soon as the well production decreases below the set
minimum abandonment constraint, the well will be automatically closed by GAP.
2.9.2.7 Edit Separator and Joint Schedules
This option allows the user to schedule specific events at the joint and separator level. For
example, the separator pressure can be scheduled to change or a constraint can be applied at
one of the joints.
separator schedule is used to change separator or joint backpressure at any point during the
prediction run, or to change a particular constraint on the separator or joint operation. The
separator schedule operates in the same manner as the well Schedule described above.
Separator pressure changes can be used to model, for example, installation of gas
compression equipment.
To enter constraints, first select the separator or joint required from the list of system items in the
lower part of the dialogue. Then, in the upper list, enter the following data:
The date that the event will be executed. If this date does not fall on the scheduled time
step in the prediction run, GAP will perform an additional step to account for the
change.
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.
Date Date at which the event occurs. If this scheduled date lies between timesteps
then this date will be added to the number of prediction steps. This ensures
that the effect of an event is modelled when it happens, rather than delaying it
until the next regular timestep. Another effect of this will be to increase the time
taken to run the forecast, since any events that lie between timesteps add
another step to the overall calculation.
Event Choose the event from the ones that appear on the drop down list. The list of
Type available events depends on the type of equipment.
Wells
Change constraint
Start Well
Stop Well (X-flow is still allowed between layers if the well is multilayer)
Stop Well-No Xflow
Change Downtime
Change OPENSERVER variable
Execute OpenServer Command
Change VLP file NEW!!!
Pipelines / Joint
Change constraint
Mask
Unmask
Change OPENSERVER variable
Execute OpenServer Command
Inline Choke
Change diameter
Mask
Unmask
Bypass
Unbypass
Change OPENSERVER variable
Execute OpenServer Command
Inline Injection
Change Injection Rate
Mask
Unmask
Bypass
Unbypass
Change OPENSERVER variable
Execute OpenServer Command
Sink / Source
Change Fixed Rate
Mask
Unmask
Change OPENSERVER variable
Execute OpenServer Command
Constraint If Change constraint was chosen above, this field contains a drop down list
Type of constraints. Select the desired constraint to change.
New value This field specifies the new value of pressure or constraint that is to be
scheduled.
Action Buttons
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.
Note that the dialogue supports the standard GAP cut and paste facility, to aid the movement of
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.
Date Date that event occurs. If this scheduled date lies between timesteps then this
date will be added to the number of prediction steps. This ensures that the
effect of an event is modelled when it happens, rather than delaying it until the
next regular timestep. Another effect of this will be to increase the time taken to
run the forecast, since any events that lie between timesteps add another step
to the overall calculation.
Event Choose the event from the ones that appear on the drop down list. The list of
Type available events depends on the type of equipment.
Wells
Change constraint
Start Well
Stop Well (X-flow is still allowed between layers if the well is multilayer)
Stop Well-No Xflow
Change Downtime
Change OPENSERVER variable
Execute OpenServer Command
Change VLP file NEW!!!
Pipelines / Joint
Change constraint
Mask
Unmask
Change OPENSERVER variable
Execute OpenServer Command
Unmask
Bypass
Unbypass
Change OPENSERVER variable
Execute OpenServer Command
Inline Choke
Change diameter
Mask
Unmask
Bypass
Unbypass
Change OPENSERVER variable
Execute OpenServer Command
Inline Injection
Change Injection Rate
Mask
Unmask
Bypass
Unbypass
Change OPENSERVER variable
Execute OpenServer Command
Sink / Source
Change Fixed Rate
Mask
Unmask
Change OPENSERVER variable
Execute OpenServer Command
Constraint If Change constraint was chosen above, this field contains a drop down list
Type of constraints. Select the desired constraint to change.
New value This field specifies the new value of pressure or constraint that is to be
scheduled.
l
Action Buttons
These parameters can all be scheduled in the same way as has been described previously.
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.
These events allow the scheduling of any desired injection policy for the tank. If
no associated injection model exists, the desired injection will be calculated
and it will be assumed that the injection system provide the necessary fluid. If
an associated model exists, the desired injection will be used as a target in the
injection system which can then controlled through the application of
appropriate constraints. This is demonstrated in Example 4 746 .
Constraint If Change constraint was chosen above, this field contains a drop down list
Type of constraints. Select the desired constraint to change from this
New value This field specifies the new value of pressure or constraint that is to be
scheduled.
Action Buttons
This dialogue also supports the standard GAP copy and paste mechanism.
2.9.2.10 Edit Gas lift Schedule
This screen is used to change the amount of available gas lift gas at a particular point in the
prediction run. When selected, the following dialogue is provided.
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.
Now, any schedule that has been entered at the element level (wells, pipelines, joints etc.) can
belong to one of the 'Event Groups' defined above. Simply use the drop down menu in the
'Schedule' section and define which Group the schedule belongs to.
When the 'Event Group' is "enabled" from the "Edit Schedule Event Group" window, all of the
schedules associated to this Event Group will be active. However if the group is "disabled" then
all of the schedules associated to this 'Event Group' will be disabled.
2.9.2.12 Edit DCQ Schedule
To meet seasonal and contractual demands, for example when producing a gas field, it is
possible to schedule contract volumes and seasonal swing factors when performing a
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.
For example, the set up below describes a DCQ schedule with a period of 1 year with seasonal
swing factors that GAP will predict throughout the forecast.
As GAP is going to predict the DCQ values for every period there is no need to specify any
rates however the user has the option to fix the DCQ over a certain period. To do this, the user
simply sets the option "Predict" to 'No' and enters the rate. See Prediction Execution and
The swing factors are used to account for seasonal demands on the gas contract (i.e. a higher
demand during the winter months). The instantaneous gas production is the product of the DCQ
and the seasonal swing factor. For example if the calculated DCQ rate was 233 MMscf/D and
the swing factor was 1.5 then the instantaneous gas rate produced would be 350MMscf/d. In its
treatment of DCQs and swing factors, GAP sets a maximum gas constraint at the selected
system level that is equal to the DCQ value multiplied by the swing factor (if present).
To run a prediction using the DCQ (daily contracted quantity) schedule option it must be
checked in the 'Prediction' screen as shown below.
To view the results select Prediction | View DCQ Prediction Results. This displays the
calculated gas contract for each DCQ period that the system can provide.
Plotting the instantaneous rates for the entire production system shows the rate profile which
corresponds to the above DCQ schedule (assuming no swing factors).
If swing factors were included (based on the values used figure above) the following profile
would be observed.
The contract type (gas rate, gross heating value, water rate or oil rate) can be selected by
the user.
2.9.2.13 Apply Schedule to
This option is used to visualise the status of the system at a certain date during the prediction
period.
Once a date is entered, the GAP network is displayed as it will be at this specific date, taking
into account the "masked/unmasked" items and the constraints.
Click "Plot" to access a graph which provides the user with the option to plot variables for the
selected equipment.
When the the variables are plotted the results streams will automatically appear on the top left
hand corner of the plot window. In order to plot the results of two predictions simply select the
element (System Totals) from one of the prediction streams and then double click on the
variable which in this case is the Cumulative Oil Production. Repeat this for the other stream.
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.
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.
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:
For the 'Detailed' and 'Summary' reports the user can also select which elements to report the
results for. The available elements are:
All Items
All Wells
All Joints
All Pipes
All Separators
Selected Items.
Selecting one of these options gives the user access to all of variables associated with all or a
single piece of equipment.
Use the arrows at the bottom of the screen to scroll to the right and display details such as choke
pressure losses, oil and gas gravity, etc. The following command buttons are used to display
data from the selected system elements and move about the results database.
The difference between the 'Results Summary' and the 'Detailed Results' is that a single variable
is reported for every (or single if the option is selected) element in the system.
Results are displayed for each selected element in the system (up to 10 gas injection rates or
separator pressures). Use the scroll at the right hand side of the screen to pan through results.
Select the variable to display by clicking the direction arrows in the "Report item" field.
The lower half of the screen displays the selected variable for each component. The summation
of the variables or the totals is displayed in the top half of the window.
Clicking "Plot"from the 'Summary Results' screen will display a histogram of the selected
variable against the equipment items. This feature is useful for quickly identifying strong
producers or problematic wells.
This will lead to a screen which displays the total system results from the network solve. By
default the program will display the solver results. The user can access the forecast results by
clicking the Prediction button. A typical display of the prediction results is shown below.
The results are displayed as in the previous sections. The figure below displays the results of
last 'Solve Network'.
Zoom To zoom in on a particular region of a plot, simply click and drag a box
around the area of interest using the cursor. When the bottom is released
the scales and view will be adjusted to fit the screen.
This option restores the plot to its original view (after any "zooming").
This option provides the user with the different plot settings. When
selected the following window will appear.
From this option the user can perform a variety of tasks including:
Modifying the titles
Modifying the margin
Changing the ranges on the Axes
Modifying the legends
Changing the fonts/colours
Selecting the print options
All of the options are fairly self explanatory and easily implemented.
This option allows the user to remove all the plotted variables (series) or
selected variables.
This option allows the user to remove multiple selected variables from a
list. When this option is selected the following window appears which
allows the user choose which variables should be removed from the plot.
This option allows the user to save plots which can then be later recalled.
This option allows the user to reload saved plots.
2.10.2 Reports
Use the 'Report' option from the main menu to prepare reports from a current analysis, or from a
previously saved .GAP file.
When the 'Report' button is selected, a series of screens leads through the process of selecting
the data required for the report. To include a section in a report, click on the check box to the left
of the item and, depending on the selection, further input screens will be presented. This
process ensures that only relevant sections are reported.
For example, if the prediction results need to be extracted to Excel, then the "Prediction results"
option needs to be checked as shown below.
Selecting the Run Report button will allow the program to write the results to the clipboard,
which can then be pasted into Excel.
2.11.1 Introduction
This chapter describes the recommended procedure to be followed in ensuring that an IPM
model has been fully "history matched" and is therefore a reliable platform upon which
management decisions can be made.
An IPM model consists of several elements which are interacting hence the response of one
element depends on one or more of the others. For example, the response of a well model
depends on both the reservoir and surface network performance. If a reservoir has been history
matched but no quality check has been done on the surface network, then the response of the
whole model will not represent reality and the results will be unreliable.
By its very nature, an IPM model can be made up of hundreds of nodes, making it complex and
difficult to manage if no procedures or methodologies are in place to allow effective
troubleshooting and matching. The aim of this chapter is to describe such a procedure and
guide the user in the process of history matching.
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.
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,
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.
This procedure is the recommended way to perform history matching in a full IPM model:
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
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 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.
As soon as this is done, each well can be matched independently of the reservoir model in
PROSPER.
Tests can be matched in PROSPER based on the methodology described in the PROSPER
manual.
Note that there are step by step examples that describe history matching reservoirs and
matching well models in the MBAL and PROSPER manuals respectively.
Once each model is built and the network is completed, then the pseudo rel perms should be
transferred from the MBAL file to the corresponding wells in GAP. This can be done from the
well IPR screen using From 204 MBAL 204 ".
The surface pipelines can also be matched if the test data has been validated and shown to
representative.
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.
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.
All of the wells in the model can be selected and then a date can be entered in the following
screen.
Selecting "Calculate" and "Continue" will update the well models, thus initialising them to the
date in question.
The Model Validation 489 feature can then be used to check well production against tests. If no
tests are available on a well by well basis for the date selected then the whole system can be
solved instead and results checked against the production data.
As the reservoir and well models have been validated, any problems can be isolated to the
elements of the system that have not been matched. The attention of the engineer can then be
focused on those particular elements making the trouble shooting far more efficient and direct.
2.12.1 Introduction
The 'Prediction Script' is a feature which enormously enhances the capabilities of the software.
The scope and flexibility of this option allows the engineer to introduce control mechanisms, act
on scenarios or conditions changing during the predicition, modify parameters on the fly etc.
The range of applications is extremely diverse and this is demonstrated in Example 1b 632 ,
Example 5 765 and Example 8 841 .
The 'Prediction Script' can be accessed from the menu Prediction | Edit Prediction Script or
from the button in the main toolbar.
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.
2.12.2 Functions
The scripting facility revolves around the following commands:
These commands can be set in the same way as the OpenServer commands in four
subroutines that are provided in the script.
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[3].LIQRATE
2.12.3 Example
Let us consider an example.
In the above screen, the script is executed at the end of each timestep in the prediction of GAP,
as shown be the red marker.
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.
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.
The user can access the unit options from the main menu by selecting Unit | Edit Units. The user
can modify the unit system of the input and output variables globally by selecting from of the
available options at the top of the column.
This will change the default units for all variables in GAP. The following options are available:
Oilfield
Norwegian S.I.
Canadian S.I.
German S.I.
French S.I.
Latin S.I.
To change the units of individual variables and create a mixed set of units follow the steps
below:
First, locate the variable(s) that are going to have their units modified using the scroll bar. Select
the preferred measurement unit for that variable. Note that the user has the option to have a
different unit for the input and output of that variable.
The validation limits define the acceptable magnitudes that the program will use for the
calculations. Any variable that falls outside the defined limits will create a validation error and
the program will not allow the variable to be populated.
To view the conversion between the currently selected unit and the base (default) unit for the
variable in question, click on the "Details" button on the far right hand side of the window.
Once all of the changes have been made press the "Save" button and give the custom unit
configuration a name.
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.
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.
3
Examples Guide 598
3 Examples Guide
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.
From the GAP main screen, click on File | Archive | Extract, the following screen will appear:
Select the *.gar file to be extracted and click on | Open (details of the archive files that are
relevant to each example are given in the exercises.) The Extract archive screen will be
displayed. Fill in the Extract Directory box at the bottom of the screen to specify where the files
will be extracted to. Note the location that has been entered so that the files can be retrieved
later.
When the Job Progress bar has turned fully blue click on | OK. The files have now been
extracted.
Related topics:
Archive Creation 72
Archive Extraction 75
3.2.1 Objectives
Definition of the Problem
A new gas field has been discovered on land in a harsh environment that is subject to large
temperature swings. The gas reservoir will be depleted by 4 wells that are tied back to two
manifolds where the produced fluids will travel approximately 40 km via a main pipeline to the
gas station.
The gas station can process a maximum 250 MMscf/day of gas and requires the gas to be
delivered at 1000psig. The objective is to determine for how long the field can keep producing
at the target rate over a ten year period commencing 01/01/2008.
Learning Topics
The objectives of this example are to learn how to:
Set-up a basic GAP model for a gas field.
Set-up constraints in the system.
Set-up well controls
Run a prediction using GAP, PROSPER and MBAL.
Executive Summary
The steps followed will be:
1. Build the GAP network
- Draw the GAP network
- Define a reservoir in GAP
- Define wells in GAP
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 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
Table 3 Wells data
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.
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
For further details, access the Units section 592 of the user Guide.
The Reservoir
To draw a reservoir select the tank icon and click anywhere on the screen. This will create
an icon which will should be labeled Gas Reservoir.
The 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:
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
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.
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.
Create links between the following components in the direction of the flow:
The basic model layout has now been specified. Additional components can easily be added or
deleted when the model is refined later. The GAP screen display should look something like the
screen shot below:
The 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.
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
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: Oil Producer (No Lift)
Model: VLP/IPR intersection
PROSPER file: Well1.OUT
Access the IPR section from the summary screen and set the IPR Type to C & n for all well IPR
models:
Complete all of the wells according to the data provided in Table 3 604 .
From the main GAP menu select Generate | Generate Well IPRs from PROSPER.
By double-clicking on any of the wells and selecting the IPR tab, one can verify the IPR input data
as shown in the following screen shot:
The scale of any plot can be changed by clicking on | Scales on the menu bar. This allows the
min and max X and Y axis values to be redefined, and the number of grid blocks (divisions) that
the axis can be divided into.
Before leaving the IPR section, access the More tab screen and select the set of Rel
Perms for fractional flow prediction to be From Tank Model. This is important to
determine the WGR produced by the well, based on the history matching performed in
MBAL.
Repeat this for all the wells. The IPR section of each well will then become green,
indicating that all of the fields necessary to define the IPR section have been updated.
Please refer to the VLP generation 466 for guidelines on the ranges to use.
In this case, as the well models have already been saved, we will use the ranges already present
in the models:
NOTE: the CGR value is unique, as the fluid has been defined as a dry gas, which assumes the
fluid to have a fixed amount of condensate vaporised in the gas.
After that, select | Ok | Generate. At the end of the calculation the program will have generated
a .vlp file for each well that contains all of the VLP curves and this file is transferred to the VLP
section of the well summary screen.
In order to check the generated lift curve access the well summary screen by double clicking on
the well and then enter the VLP section. This will lead to the VLP description screen:
In this screen we can verify that the .vlp file has been created which contains the generated VLP
curves. Select | Inspect and then Plot to verify the quality of the curves.
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.
According to the network sketch 605 , the wells "Well1" and "Well2" are tied back to "Manifold_A"
via devoted lines. The two lines are therefore represented by a link between each wellhead and
the manifold.
In order to describe the procedure for defining pipelines access the pipe summary screen by
double-clicking on the link that joins WH1 and Manifold_A. The summary screen is shown below.
Make the following changes:
Friction Coefficient: 1
Environment
Select the 'Environment' tab to access the screen which allows the pipeline environment to be
defined and then enter the following values.
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).
The upstream and downstream TVDs are the same therefore the pipeline is horizontal.
To change the length unit from ft to km point the cursor in the cell
containing the unit ft This will activate a pull-down menu list from
which km can be selected. The same principle applies for the TVD.
Once the data has been entered it is useful to click on | Validate in order to check whether the
description entered is valid or not. This is not compulsory but can be useful for verifying your
input. Click | OK to return to the main GAP screen.
Copy/Paste flowlines
If two pipe descriptions are the same, the information can be copied from a
described pipe to an undescribed pipe as follows:
1. Hold down the left mouse button on the described pipe and press the
Control key.
2. Move the cursor until it is over the un-described pipe and release the
control key. The information will now be transferred.
Repeat this procedure for all of the pipelines using the default roughness of 0.0006
Two red arrows will appear in the main screen on the Separator icon as shown below.
The wells can be made "controllable" (which means that the wellhead choke can be changed by
the optimiser) by:
Accessing the Controls 230 section in the well summary screen and setting the "dP Control" to
"Calculated" or "Fixed Value."
Right clicking on the well icon in the main GAP screen and selecting "Controllable" (this is
currently only for dP Control - for other controls, like gas lift injection rate or pump frequency,
the "Controls" section will also need to be accessed)
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.
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.
The 'Calculate Potential' option allows the user to calculate the field
Potential. If no Potential Constraints have been set up (ref. related
chapter 147 ) the program will calculate the maximum the field can
produce. It does this by solving the system with all of the well chokes
fully open. Solving the system with the wells fully open can result in
bottleknecking or high producers backing out low producing wells
which may actually lead to a reduction in the overall production.
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.
In the plot select "Gas Rate" from the "Variables" menu. Also, use the plot options (highlighted
by the red square) to modify the scales or the positioning of the legend.
From the plot it is possible to confirm that the plateau will be maintained for approximately one
year and a half.
This can also be verified by inspecting the tabulated results of the prediction. To do this go back
to the main GAP screen and double-click on the Separator icon to access the summary screen.
From the summary screen select "Results" and then the prediction tab and then read off "Gas
Rate" until it drops below 250MMscf/d and take note of the date.
The flow rates reported by the program at any point in the network correspond to
the volumetric rate expressed at Standard Conditions (by default this is 60 degF
and 0 psig however these conditions can be modified in the main program
Options) and not the in-situ rates.
For example, if the reported oil rate at the well head node is 500 STB/day that
means the oil has been flashed to STD. The actual or in situ rate at the wellhead
can be calculated from the oil formation volume factor and the rate at Standard
Conditions.
3.3.1 Objectives
Definition of the Problem
A new gas field is located in an environment with very extreme seasonal variations in
temperature and there is a concern this may lead to issues of hydrate formation in the flowlines.
The PVT engineers have provided hydrate curves for the gas that consider different inhibitor
concentrations. The objective is to estimate how much inhibitor will be required during the
different seasons and how this will affect the total gas production. The hydrate inhibitor in this
case will be methanol.
Learning Topics
The objective of this exercise is to build on the previous example and include additional physics
by
Setting up a simple script that will capture the seasonal variations in temperature.
Model the amount of methanol injection required to prevent hydrate formation via
Inline Programmable or General elements
Saving the prediction results
Comparing the results of different runs
Executive Summary
The steps followed will be:
1. Write a script that is executed during the prediction to regulate the surrounding
temperature
The initial files for this example and the final model can be found in the GAP
archive file format in the following directory.
~\samples\GAP\Example 1b - Gas Field (advanced)
Extract 600 the archive file from the Initial Files folder.
3.3.2 Data Available
The average minimum temperature for each month has been provided for the region.
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.
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.
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.
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.
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.
Once the variables have been defined the next step is to write the script which will entered in the
'Script File' section.
Ensure that the script file is completed blank like the figure shown above.
The first step in the script is to extract the temperature and pressure the node labeled
Manifold_A. This can be achieved using the flow variables shown below.
P=MOD.JOINT[{Manifold_A}].FLOW.PRES;
T=MOD.JOINT[{Manifold_A}].FLOW.TEMP;
The next step is to include the expressions for the hydrate curves provided by the PVT
engineers. These expressions are included with the hydrate curves 633 .
P_methanol=0.1607*T*T+7.6429*T+158.57;
P_no_inhibitor=0.1094*T*T+0.6696*T+44.643;
With these variables we can now write the logic that calculates the required volume of Methanol
to be injected. The first case we need to consider is when the pressure at the manifold exceeds
P_methanol (Region 2 or Region 3). To do this use the following "IF" statement:
if (P>P_no_inhibitor)
{
Calculate the weight percentage of methanol by interpolating between the hydrate curves
WT=WT_MAX*(P-P_no_inhibitor)/(P_methanol-P_no_inhibitor);
Extract the hydrocarbon mass rate from the following flow variable
MASS_gas=MOD.JOINT[{Manifold_A}].FLOW.HCMASSRATE;
Calculate the volumetric rate of methanol (expressed at SC) from the mass rate and the
density
MASS_methanol=WT*MASS_gas;
Q_methanol=MASS_methanol/RHO_METHANOL;
Calculate the volumetric rate of Methanol required and add it to the water stream
QWATOUT=QWATIN+Q_methanol;
Display the calculated variables so they can be viewed in the calculation results
OTHERRES[0]=Q_methanol;
OTHERRES[1]=WT;
An additional "IF" statement needs to be entered within the above "IF" statement to handle the
conditions in Region 3 where the pressure exceeds P_methanol (the 20% wt. methanol hydrate
curve)
if (P>P_methanol)
{
Calculate the weight percentage of methanol by extrapolating from the 20% wt. Methanol
Hydrate curve
WT=WT_MAX+WT_max*(P-P_methanol)/(P_methanol-P_no_inhibitor);
MASS_gas=MOD.JOINT[{Manifold_A}].FLOW.HCMASSRATE;
MASS_methanol=WT*MASS_gas;
Q_methanol=MASS_methanol/RHO_methanol;
QWATOUT=QWATIN+Q_methanol;
OTHERRES[0]=Q_methanol;
OTHERRES[1]=WT;
}
If the conditions fall into Region 1 then there is no need to add methanol.
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
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 + Right Click.
This approach is very cumbersome as the temperature needs to be modified every two months (
See Table 1 633 ) over a 10 year period which would require approximately 50 schedules for each
pipe segment.
To enter script select Prediction | Edit Prediction Script from the main GAP menu or alternatively
select the icon from the main tool bar.
We will use this to set the temperature every month according to Table 1 633 .
The prediction will be run using 2 month time steps and the temperature needs to change every
two months therefore to to modify the surrounding temperature we can use the following simple
script which will be executed at the beginning of each prediction time step (using
PredStepProlog).
For more information about Prediction Script 587 refer to the main manual.
The script can be imported as a file which in provided in the archive located in the Initial Files
folder. To import the script select Prediction | Import Prediction Script... and then locate the file
Gas Field (Advanced).gapscr.
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.
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.
To run the prediction select Prediction | Run Prediction from the main GAP menu and then enter
the following information:
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.
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:
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.
We can confirm that the temperature is 52 degF in May which is in agreement with Table 1 633 .
The next step is to interpret the results of the prediction. As the calculated Methanol in the Inline
General elements is based upon the pressure and temperature of Manifold A and B we should
analyse these variables first to understand how much methanol we would expect based on the
hydrate curves. To do this select Prediction | Plot Nodes Prediction Results from the main GAP
menu and then select 'Joint' from the 'Equipment Type' along with Manifold A and B as shown
below.
Select both the pressure and the temperature for each manifold.
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.
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.'
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.
//QWATOUT=QWATIN+Q_methanol
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.
Plot the temperature and pressure at 'Manifold A' by selecting Prediction | Plot Node Prediction
Results from the main toolbar.
It is clear that the pressures and the temperatures are significantly different between the runs
and consequently we would expect different methanol volumes to be calculated.
In conclusion, the results of the predictions show that the inline elements enable us to
dynamically calculate the required methanol volumes and inject it into the system taking into
account the temperature and pressure variations that will occur as a result of this injected fluid. If
the methanol calculation was to be done externally, in a spreadsheet for example based on the
results of a model that does not include the methanol injection dynamically, then the predictions
would be erroneous as the pressure and temperature throughout the system would not take into
account the methanol flowing through the pipelines.
In order to improve the accuracy of the model, the temperature in the pipelines could be
modelled using the more advanced improved approximation method which uses the full energy
equation. However, as the model is using the black oil PVT method the thermal properties are
not as accurate as when using compositional modelling. For detailed flow assurance studies it
is recommended to use fully compositional modelling which is the method used in Example 9b
948 . This example also demonstrates many of the advanced flow assurance capabilities that are
embedded in GAP.
3.4.1 Objectives
Definition of the Problem
An offshore field which is located in the Logie Mill block consists of two reservoirs called
Reservoirs A and Reservoir B. Reservoir A has been in production since 01/01/2003 and
Reservoir B was brought online five years later in 01/01/2008. There are currently three wells
producing from each reservoir which all meet at a common manifold (either Manifold A or B)
which are approximately 600ft below sea level. Manifold A and B are connected by a 7.5km
flowline and the commingled fluids are then transported through a larger 12km pipeline across
undulating terrain where the fluid is processed. The separator pressure is maintained at
200psig and the current liquid capacity is restricted to 20,000STB/D.
The objective of the analysis to gain a better understanding of the field using an integrated
model of the whole system. In particular, it is required to know:
Question 1. How much we would get from the field on 01/12/2010 if the wells were fully
open? Go to answer 697
Question 2. How much we should choke back each of the wells in order to satisfy the
maximum liquid constraint at the process level and at the same time produce the maximum
Learning Topics
The objectives for this example are to learn how to:
Set-up a basic GAP model for an oil field
Use the' Model Validation' to quality check the model
Perform a pipeline matching
Update the model to a given date based on the MBAL History Matching using the
'Initialise IPRs from Tank Simulations' feature
Set-up constraints in the system
Running 'Solve Network'
Running 'Prediction' using GAP, PROSPER and MBAL
Saving the prediction results
Using the 'Target Pressure' feature
Comparing the results of different runs
Executive Summary
The steps followed will be:
1. Build the GAP network
- Draw the GAP network
- Define a reservoir in GAP
- Define wells in GAP
- Generate Well IPRs in GAP using PROSPER
- Generate Well VLPs in GAP using PROSPER
- Define the pipeline and eventual surface equipment
- Perform a pipeline matching and carry out a model validation
2. Use the 'Initialise IPRs from Tank Simulations' feature to update the model to the
22/12/2010
3. Run 'Solve Network' without optimisation to calculate the production with wells fully
open
4. Set the constraint of maximum liquid rate of 20000 STB/day at the separator and run
'Solve Network' with optimisation to assess if and which wells need to be choked
back
5. Run a prediction from 22/12/2010 for 10 years (2 months time step) with optimisation
to verify for how long we can keep the production plateau
6. Analyse the results of the run.
7. Test a new development strategy and compare the results of the prediction with the
original run.
The initial files for this example and the final model can be found in the GAP
archive file format in the following directory.
~\samples\GAP\Example 2 - Oil Field
The file names corresponding to each well are shown in the table below.
Well Name PROSPER File VLP File
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
For further details, access the Units section 592 of the user Guide.
The Reservoir
To draw a reservoir select the tank icon and click anywhere on the screen. This will create
an icon which will should be labeled Reservoir A.
Placing another icon anywhere on the screen will create the second reservoir, that can be
named "Reservoir B".
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:
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
A single joint will be required for each wellhead (i.e. "WH1_A") which will be placed near the
well icons.
Two Joints for each of the pipeline manifolds (i.e. "Manifold_A").
One joint to represent the separator joint (i.e. "Sep Joint") which will be placed near the
separator.
Click on the Joint icon from the main toolbar and add the 9 joints by clicking in the main
GAP display area as shown below.
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.
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:
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.
At this stage the GAP file should be saved. To do this click on File | Save As from the main GAP
menu and using the browsing feature save the file as Oil Field.gap
3.4.3.3 Define the Wells
As with the tank models, we have already built the PROSPER models for all of the wells. The
PROSPER file associated with "Well1A" has been constructed and documented in detail in the
PROSPER manual. Please refer to the PROSPER tutorials for more information on well modeling.
In this example we will define both the VLPs and the IPRs at the well level. To do this we will use
the "VLP/IPR intersection" model for all of the wells. In Example 6 we will demonstrate a
different method to handle the wells when we introduce smart well modeling. For this exercise,
VLPs have been generated and saved so that they can be imported into GAP.
To enter the well data double click on the well icon to access the Well Summary screen. Then in
the summary screen enter the following information:
Label: Well1A
Mask: Include in System (default)
Well Type: Oil Producer (No Lift)
Model: VLP/IPR intersection
PROSPER file: Well1A.OUT
Complete all the wells according to the data provided in Table 3 667 .
From the main GAP menu select Generate | Generate Well IPRs from PROSPER.
By double-clicking on any of the wells and selecting the IPR tab, one can verify the IPR input data
as shown in the following screen shot:
The 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.
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.
Select browse and then load the Well1A.vlp file. The VLP section should then become green
which completes the input for the well description. Repeat this process and load the file for each
corresponding well.
In this example the .vlp files are provided however to generate the VLPs select Generate|
Generate Well VLPs with PROSPER from the main menu. The option will then be given to
either select specific wells or to generate the VLPs for all the wells in the network. To illustrate
this feature select All followed by Data to enter the ranges for the sensitivity variables.
Please refer to the VLP generation 466 for guidelines on the ranges to use.
In this case, as the well models have already been saved, we will use the ranges already present
in the models:
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:
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.
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.
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
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.
According to the network sketch 665 , the wells Well1A, Well2A and Well3A are tied back to
Manifold_A via devoted lines. The three lines are therefore represented by a link between each
wellhead and the manifold.
In order to describe the procedure for defining pipelines access the pipe summary screen by
double-clicking on the link that joins WH1_A and Manifold_A. The summary screen is shown
below. Make the following changes:
Environment
Select the 'Environment' tab to access the screen which the pipeline environment to be defined
and then enter the following values.
Pipe Description
To define the pipeline dimensions select the Description tab.
Enter the following data (note: the data are given from upstream to downstream):
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.
Similarly, double click on the pipe linking Manifold_B to Sep Joint and enter the following pipe
description:
The figure on the right hand side allows the user to define which node
is upstream and which is downstream in the system:
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.
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.
Match the Petroleum Experts 5 correlation by selecting 'Match' and then selecting the correlation
from the list of available multiphase flow correlations in GAP.
The GAP model now reproduces the measured field data and can now be used for forecasting
and modelling different development scenarios.
The GAP model has now been built. Save the file as Oilfield.gap.
Please refer to the Edit menu 131 and History Matching 576 topics in the user Guide for further
details.
To use this feature access the menu Edit / Initialise IPRs from Tank Simulations and then
select all of the wells and then press 'Continue'.
At the bottom of the 'Initialise Well IPRs from tanks' window enter the desired date which in this
case is 01/12/2010, and then press 'Calculate' and 'Continue'.
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:
The status of the model is now updated to the 01/12/2008, which corresponds to the end
of production history of Reservoir B.
From the main GAP menu select the Solve Network / Run Network Solver.
Enter a separator pressure of 200 psig
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
23360 STB/day of liquid and 21400 STB/day of oil.
Two red arrows will appear in the main screen on the separator icon as shown below.
The wells can be made "controllable" (which means that the wellhead choke can be changed by
the optimiser) by:
Accessing the Controls 230 section in the well summary screen and setting the dP Control to
Calculated, or
Right clicking on the well icon in the main GAP screen and selecting "Controllable" (for other
controls, like gas lift injection rate or pump frequency, the "Control"s section also needs to be
accessed)
The figure below shows the controls section in the well input area:
Ensure that all of the wells in the system are made controllable.
From the main menu select Solve Network | Run Network Solver.
Enter a separator pressure of 200psig
The 'Limiting' tab in the log allows the user to verify if an element is
limiting the production of the field. If this is the case then the field has
the potential to produce more.
Going to the main panel, one can check the results as described in the previous section 701 .
When an element is constrained and the constraint is being honoured then the icon is
highlighted in green. If however the constraint is violated then GAP will highlight the icon in pink
as shown below:
Violated constraints can occur for different reasons. The most common reason is that the
constraints that have been entered are not feasible and should therefore be reviewed by the
engineer.
To determine how the wells have been controlled by GAP double-click on the well to access the
summary screen and then select 'Results'.
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.
GAP they should correspond to a physical constraint in the field. The best practice is always to
apply constraints in this manner and keep them to a minimum as a greater number of constraints
requires a more complex optimisation problem to solve.
To run the prediction select Prediction | Run Prediction from the main GAP menu and then enter
the following:
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.
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.
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.
Answer to Question 3: The amount of oil produced by the end of the 10 years is
approximately 28 MMSTB.
GAP will save the results in the memory and we will be able to retrieve them at any time.
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.
Then activate the option 'Prediction-save intermediate step results snapshots at each prediction
step' by entering a value of 1.
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.
Or alternatively, all the well rates can be plotted at once by carrying out the following steps:
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.
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.
We will analyse this event using the snapshots to understand why this happens.
Whenever using the snapshots it is always recommended to analyse the snapshot just before
the event as well as the snapshot of when the event occurs. This enables the engineer to grasp
which conditions have changed as time advances.
To view a snapshot select Prediction | Reload Prediction Snapshot and select the date just
before Well1A dies which in this case is 01/02/2017.
To analyse Well1A in more detail double click on the Well1A icon to view the system summary
screen.
Select Calculate | Initialise from solver results | Calculate | Plot to view the intersection of the
VLP and the IPR at that time step.
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.
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.
To do this we will use the 'Target Pressure' feature which is activated from the prediction
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.
Select Prediction | Plot Nodes Prediction Results from the main GAP menu and plot all of the oil
rates for each well.
The additional pressure support in Reservoir A removes any instabilities at the end of the field
life that were observed previously. The impact of this additional support results in a significant
increase in the cumulative oil production from 28 to 32.5MMSTB.
To view how much water is injected into Reservoir A and to confirm that the pressure is being
maintained select Prediction | Plot Tanks Prediction Results and select Reservoir A from the top
list followed by Avg Water Injection and Reservoir Pressure from the lower list.
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.
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.
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".
3.5.1 Objectives
Definition of the Problem
It is required to investigate the length and frequency of the slugs in the pipeline and the riser that
is tied back to Manifold B for the design of an upgrade of the current separation facility. The
upgrade is being considered in 01/10/2013 and it is necessary to determine these parameters
both on the 01/12/2010 and on the proposed date.
Learning Topics
The objectives for this example are to learn how to:
Executive Summary
Starting from the Oilfield.gap 725 model, the steps followed will be:
1. Run a Solve Network calculation to determine the production on 01/12/2010 (the system was
already initialised 697 )
2. Access the detailed results of the pipeline calculation
3. Convert the pipeline to PROSPER online.
4. Access the detailed results on 01/10/2013
The file for this example can be found in the GAP archive file format in the
following directory.
~\samples\GAP\Example 2 - Oil Field - Completed Files
Extract 600 the archive file from the Completed Files folder.
The highlighted sections of the network solver window inform the user of how the calculation
progressed.
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).
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.
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.
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:
Select 'Initialise from solver results'. This will import the results obtained from the 'Solve Network'
calculation.
Select 'Calculate' to visualise the Gradient Traverse menu and then scroll to the right to read the
required results on slug length and frequency.
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
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.
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:
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.
For example, the equipment screens will have the equipment previously entered in the pipe
description:
To view the pipeline parameters on the 01/10/2013 select 'Results' from the system summary
screen and then select 'Prediction'.
Scroll to the right of the screen and select the 'Gradient' tab on the corresponding date.
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 association of the gas bubble and the liquid slug forms the slug period.
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:
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.
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).
3.6.1 Objectives
Definition of the Problem
The engineers have come up with some development scenarios that were screened using the
integrated model of the full field containing Reservoir A and B (refer to Example 2 665 ). One
proposal was to provide pressure support in Reservoir A using water injection and take
advantage of the available sea water. From the integrated model the engineers were able to
estimate that the reservoir pressure in Reservoir A will fall below the bubble point after
approximately 1 year of production. The proposal is to maintain the pressure in Reservoir A at
3650psig and to to design an injection network that can provide the necessary water to meet
this target.
The objective of the study is to use GAP to determine how much water will be necessary to meet
the pressure target and then design a water injection system that can handle the calculated
water volumes.
Learning Topics
Executive Summary
The steps followed will be to:
1. Run a Prediction in the GAP production network using the 'Target Pressure' option to
estimate the amount of water required
2. Use the injection network model (initially with only one injector) to determine the
minimum number of water injection wells required to achieve the pressure support
target
3. Associate the production to the water injection model
4. Run the Prediction with the two coupled models
The initial files for this example and the completed model can be found in
the GAP archive file format in the following directory.
~\samples\GAP\Example 4 - Water Injection System
Extract 600 the archive files from the Initial Files folder.
3.6.2 Data Available
The data required to start the example are in the folder Example 4 - Water Injection System.
Note that the completed archive of the model is called Oil Field with Water Injection System.
gar
Starting from the production model, select Prediction | Run Prediction from the main GAP
screen. Run a prediction:
When running the prediction, GAP will automatically inject as much water into Reservoir A that is
required to maintain the pressure at 3650 psig.
At the end of the prediction various results can be viewed, in particular the results for Reservoir
A will be the focus as these will form the basis of our design. This can be achieved in various
ways, for example by double clicking on the tank and accessing the 'Result's section or
accessing the menu Prediction | Plot Tanks Prediction Results.
Plot the reservoir pressure and the average water injection together:
The liquid production profile is also useful for understanding the reservoir behaviour.
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
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:
The PROSPER file associated with "Well1A_inj" has been constructed and documented in detail
in the PROSPER manual. Please refer to the PROSPER tutorials for more information on
modelling a water injector.
The available pressure at the injection manifold is 1000 psig which is located at the platform.
Upon inspection of the well system summary screen it is possible to verify, from the inflow
performance section, that the well has been set up to account for a pressure of 3650psig which
is the pressure target that has been set in Reservoir A.
This means that running a 'Solve Network' calculation will allow us to determine how much water
one injection well can inject when the target pressure is already achieved.
In a solve network calculation the tanks are not used. The network is
solved using the reservoir pressure and PVT properties that have
been entered in the IPR section of the well system summary
Run a 'Solve Network' calculation with optimisation for an injection manifold pressure of 1000
psig.
Checking the results, it is possible to see that the system can deliver a water rate of around
8395 STB/d:
As the design water rate is 15000 STB/d it is required to have at least 2 injection wells to
achieve the voidage replacement target.
Modify the model by adding a secondary water injector that is tied back to Manifold_A. To do
this simply copy and paste the existing well, Well1Ainj and label the new well as Well2Ainj. Then
create a link from the well head of the new injector to Manifold_A as shown in the figure below.
Assume that the wellhead is located 0.8km from Manifold_A and tied back with a pipeline that is
6 inches in diameter.
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 8395 STB/d, whilst 2 wells
producing together can achieve 16598 STB/d (approximately 8300 STB/d
each). This is because the increased rate results in a larger pressure drop
along the main shared pipeline which causes the wellhead pressure to
decrease and consequently reduces the volume of injection
When downtime is applied for injection wells, the Instantaneous rates are corrected
accordingly to obtain Average Rates that are reported at the Well and Tank level. The
injection manifold will not take well downtime into account and will still report the average
rates as the sum of the instantaneous rates from the wells.
This is because the solver for an injection system works from the injection manifold to
the tanks unlike the production system which is the other way round where the separator
can properly account for the total average rates from the producing wells.
However, note that the tanks will indeed have the average rates being injected into them
and the cummulative injection volumes will be updated accordingly. In essence, the
injection calculations will be correct. However, the injection manifold results should not
be referred to in terms of the average rates and if required, the well average rates can
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.
The two models are now linked through Reservoir A, as Reservoir A is the same MBAL model
in both models.
Save the model naming the production model as Oil Field with Water Injection.gap.
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.
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:
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.
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.
Similarly,any result concerning the injection can be accessed by making the injection network
model screen active.
Checking the results for the injection system (click anywhere in the injection system screen to
make this screen active), it is possible to view the results for Reservoir A in terms of reservoir
pressure and average water injections:
The target pressure is reached at the end of 2011 and then goes below the target by about 15
psig in around 02/12/2013. The target is then reached later in 01/04/2015 and is maintained for
the duration of the forecast. These results differ from the original Target Pressure method (see
above 749 , where an infinite source of water was used), as now it is dependent on the physics of
the injection network as in reality. The reason for the target pressure not being reached is
because the required water injection exceeds the capacity of the injection system. In order to
increase the capacity of the injection system it is possible to either increase the tubing
diameters of the water injectors or alternatively drill another well. This exercise is left to the user.
3.7.1 Objectives
Definition of the Problem
During drilling, into Reservoir B, it was confirmed that there was a productive gas layer located
at a shallower depth in the formation. The completion engineers have been proposing using this
shallow gas layer as a means of providing additional lift through multi-layered completions
coupled with "smart well" technology.
It has been verified that it is possible to perforate both the gas and oil layers in Reservoir B and
install downhole controllable chokes (inflow control valves) that can regulate the flow of gas into
the wells.
It is common knowledge that flowing more gas in a well along with oil decreases the pressure
losses due gravity, but increases the pressure losses due friction as result of the increased
velocities. This is the principle of natural gas lift.
The question that is being proposed from management is, what is the optimum flow of gas that
would maximize the amount of oil from the system if the gas layers were scheduled to be brought
online once the water cut of the wells in Reservoir B exceeds 20%?
Learning Topics
The IPM Suite has been developed over the years to be able to handle multi-layer situations in
the best possible way. This enables the engineer to model and optimise very complicated
downhole completions, like "intelligent" (or "smart") completions.
The objectives for this example are to learn in more detail how to:
Build a model for a multilayer well completion.
Optimise the oil production by regulating the amount of gas flowing into the well.
Executive Summary
The steps followed will be to:
1. Build the GAP network
- Setup the system in GAP
- Add an inflow model and a well model
- Convert the well to outflow only
- Link all the elements of the system
- Set the controls for the gas layer
2. Write a script that will allow the gas layers to be brought online when the water cut
exceeds 15%
2. Run a forecast without optimization on the gas
3. Run a forecast with optimization on the gas
The files for this example and the final model can be found in the GAP archive file
format in the following directory.
~\samples\GAP\Example 5 - Smart Well\Oil Field Smart Well.gar
Extract 600 the archive file in the Initial Files folder to an appropriate directory
3.7.2 Data Available
The data required to start the example is in the folder Example 5 - Smart Well.
In this folder there will be a GAP archive called Oil Field Smart Wells.gar. The folder will also
contain separate PROSPER files that are listed in Table 1 below.
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.
Layer 1 Layer 2
Fluid Type Gas Oil
IPR Model Petroleum Experts Darcy
Table 2 - Layers parameters
Note that the completed archive of the model is called Oil Field Smart Wells Final.gar
The procedure below goes straight to building the multilayer well models in the GAP model.
The well schematic presented in the previous section 765 can be translated into a simpler form as
shown below:
The equivalent GAP topology is also included to help illustrate what points of the GAP model
correspond to which part of the real system.
To model the well above, one can decompose the problem into several key elements. For
example:
The two reservoir layers of the well can be described using IPR elements (Inflow
elements).
The completion (in this case, tubing) section EC and BC can be described using pipe
elements.
The completion corresponding to the section AB can be described by means of a well
(outflow only) element which will account the pressure drop from the top of the first layer
up to the wellhead.
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.
To switch the wells to outflow only, double-click on the well to activate the the system summary
screen and then modify the well model to 'Outflow Only-VLP'.
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.
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.
It is now possible to fill all the data in the different parts of the model.
To keep things simple we assume the well to be completed vertically, so that the TVD=MD, with
a 6.4 ID casing string. This information can be used to enter the information for the pipe section
between the two layers.
3.7.3.2 Define the IPR Elements
For each layer associate the corresponding PROSPER file as per Table 1 766 , for example:
In the IPR section select the layer fluid type and the IPR model:
Repeat this for the rest of the layers and associate them with their corresponding PROSPER
files.
Follow the same steps as seen in previous examples 617 to generate the layer IPRs.
At the end, looking at the well IPR section, it is possible to verify that the data have been
entered.
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:
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.
The Figure 768 shows that the well needs to capture the pressure drop from the well head down to
the top of the producing gas layer. Therefore, in order to generate the correct VLP curves a
PROSPER file has to be built that models the completion down to the top of the gas layer. This
has already been done in the ~Outflow.out PROSPER files that have been provided in the 'Initial
Files' folder.
Double click on the well outflow icon to access the well summary screen and associate the
Outflow.OUT PROSPER files to each well.
Next, generate the VLP curves as shown in the previous examples 681 .
The values to use for the sensitivity parameters are provided below:
The first step is to mask the gas layers using the mask feature from the main GAP menu.
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.
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.
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.
The GAP model has now been built. Save the file as Oil field_Smart Wells_Final.gap.
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...
The gas inflows should be centered inside a solid red circle to indicate that they are
controllable.
To compare the results of the predictions select Prediction | Plot Nodes Prediction Results and
select 'Well' from the Equipment Type and then 'System totals'.
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
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.
3.8.1 Objectives
Definition of the Problem
Based on the previous development scenarios put forward for Reservoir A and B the engineers
wish to evaluate the impact of installing artificial lift in the system to see if there is any
appreciable gain in the production. The engineers are proposing introducing artificial lift into the
field at some point during the field life (01/02/2013) and at the same time they are considering
upgrading the capacity of the separator facilities to 30,000 STB/D. The first artificial lift method
to be tested is electrical submersible pumps (ESPs) which will be installed in each of the wells in
Reservoir A and B.
The objective is to investigate the impact on oil production as result of the proposed workovers.
Also, the production engineers would like to understand how the field should be managed so
the total power consumption of all of the ESPs does not exceed 125hp.
Learning Topics
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 initial files for this example and the final model can be found in the GAP
archive file format in the following directory.
~\samples\GAP\Example 6 - ESP Field
Extract 600 the archive file in the Initial Files folder to an appropriate directory
Well Name Well type PROSPER well model Lift curve file ESP Operating
Frequency (Hz)
The next step is to place a well adjacent to each naturally producing oil well as we intend to
convert these wells to ESP wells. The reason for creating an additional well in the model is
explained in the scheduling section 803 .
Link each well to its corresponding well head and reservoir as shown in the figure below.
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).
The PROSPER files are included in the archive file. The PROSPER file associated with
"Well1A_ESP" has been constructed and documented in detail in the PROSPER manual.
Please refer to the PROSPER tutorials for more information on well modeling with artificial lifted
wells.
Associate the corresponding PROSPER files with each well as shown in Table 1 794 .
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:
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.
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 ESP wells there is an
additionally variable (the Operating Frequency) that must be included.
When VLPs are generated for artificial wells there are a factor of 10 more
calculations to be performed (10,000 VLPs will be generated instead of 1,000) in
comparison to naturally flowing wells. Therefore the time taken to generate
VLPs will be considerably greater.
Please refer to the VLP generation 466 for guidelines on the ranges to use.
As the second method has been widely demonstrated in previous examples 681 , and the VLP
curves have already been generated, we will adopt the first approach.
To import the VLPs, access the VLP section of the Well System Summary screen and 'Browse'
for the corresponding .vlp file according to Table 1 843 :
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.
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.
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.
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,
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.
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.
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.
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.
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.
Additionally, we can see the impact of the separator constraint. The system can produce above
20,000STB/d as soon as the facilities are upgraded on the 01/02/2013.
Plotting the cumulative oil production shows us that the installation of the ESPs in the wells
increases overall production by approximately 6% in comparison to the case without artificial lift.
727
To achieve this we can use the optimiser in GAP to calculate what frequency each pump should
be operating under throughout the entire prediction.
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.
This will allow GAP to change the pump frequency between the operating limits of the pump (i.e.
between the upthrust/downthrust limits at each frequency) in order to maximise the production
from the system.
Note that the minimum/maximum inlet rate that the pump can operate at (at a particular
frequency) is dependent upon the physical pump and this information should be available from
the pump manufacturer. In the PROSPER file it is possible to visualise the performance curve of
the pump as these are included in the ESP databases that are provided.
The pump plot for the Centrilift GC10000, which is used in the well1A is shown below.
Repeat this procedure for all of the ESP wells in the system.
The resultant network should look the figure 795 shown at the start of the section.
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
system. GAP honours this constraint by regulating the pump frequencies throughout the forecast
so that the the maximum power consumed by the ESP's never exceeds 125hp and the oil
production is always maximised.
In summary, we have shown that we can use GAP to determine what speed to run the ESP's at
so that we maximise our oil production with the power (in this case 125hp) that is available.
3.9.1 Objectives
Definition of the Problem
Based on the previous development scenarios put forward for Reservoir A and B the engineers
wish to evaluate the impact of installing artificial lift in the system to see if there is any
appreciable gain in the production. The engineers are proposing introducing artificial lift into the
field at some point during the field life (01/02/2013) and at the same time they are considering
upgrading the capacity of the separator facilities to 30,000 STB/D. The first artificial lift method
to be tested was ESP's (refer to previous example 793 ) however now the engineers want to
evaluate installing gas lift in all of the wells in the field.
The objective is to investigate the impact on oil production as result of the proposed workovers.
Also, the production engineers would like to understand how the field should be managed so
the total amount of gas lift gas available for the whole system does not exceed 10 MMscf/day.
Learning topics
The objectives of this example are to learn how to:
Build a GAP model for a gas lifted system.
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 initial files for this example and the final model can be found in the GAP
archive file format in the following directory.
~\samples\GAP\Example 7 - GL Field
Extract 600 the archive file in the Initial Files folder to an appropriate directory
Well Name Well type PROSPER well model Lift curve file Gas Lift Gas
(MMscf/D)
The next step is to place a well adjacent to each natural producing oil well as we intend to
convert these wells to gas lifted wells. The reason for creating an additional well in the model is
explained in the scheduling section 826 .
Link each well to its corresponding well head and reservoir as shown in the figure below.
In order to modify the well description, double-click on the well icon to activate the system
summary screen.
Select the type of well and choose the option Oil producer (Gas lifted).
The PROSPER files are included in the folder. The PROSPER file associated with "Well1A_GL"
has been constructed and documented in detail in the PROSPER manual. Please refer to the
PROSPER tutorials for more information on well modeling with artificial lifted wells.
Associate the corresponding PROSPER files with each well as shown in Table 1 817 .
From the main GAP menu select Generate | Generate Well IPRs from PROSPER.
Then select all of the 'GL' wells and then select 'Generate.'
By double-clicking on any of the wells and selecting the IPR tab, the IPR input data can be
verified as shown in the following screen shot:
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'
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 additionally variable (the Injected Gas Liquid Ratio) that must be included.
When VLPs are generated for artificial wells there are a factor of 10 more
calculations to be performed (10,000 VLPs will be generated instead of 1,000) in
comparison to naturally flowing wells. Therefore the time taken to generate
VLPs will be considerably greater.
Please refer to the VLP generation 466 for guidelines on the ranges to use for GLR injected.
As the second method has been widely demonstrated in previous examples 681 , and the VLP
curves have already been generated, we will adopt the first approach.
To import the VLPs, access the VLP section of the Well System Summary screen and 'Browse'
for the corresponding .vlp file according to Table 1 843 :
If instead of the .vlp file the .tpd file (the file format used when VLPs are exported
manually from PROSPER) has been provided, then the Import button can be
used to import the file.
Select Inspect and then Plot to verify the quality of the curves.
To do this, the naturally lifted well will be scheduled to go off on the 01/02/2013 where as the gas
lifted well, which is turned off as the other well is producing, will be scheduled to come on.
The scheduling will also be used to simulate the effect of the separator capacity increasing to
30,000STB/d. To do this we will modify the maximum liquid constraint at the separator from
20,000STB/d to 30,000STB/d.
Double-click on one of the gas lifted wells to activate the System Summary screen and then
select 'Schedule'.
Enter the date for when the well is to be brought online and in the Event Type select 'Start Well'.
Repeat this for all of the other gas lifted wells.
The next step is to modify the scheduling of the naturally flowing wells. Using the same workflow,
modify the schedule section so that the well is stopped on the 01/02/2013.
Lastly, the separator constraint should be modified to 30,000 STB/d in the schedule section of
the separator system summary screen.
Whenever scheduling has been applied to an element in the GAP system a small clock will
appear at the bottom right hand corner of the icon.
The GAP model has now been built. Save the file as Oil field GL.gap.
Select the 'Control' tab and then set the dP Control to 'None' and the Control Model to a 'Fixed
value' of 1MMscf/d which is provided in Table 1 817 . This will ensure that this well will be injected
with a constant rate of 1 MMscf/d and that the well head choke is fully open.
Repeat this procedure for all of the gas lifted wells in the network and enter the rates
corresponding to the values provided in Table 1 817 .
There is a second option for entering the gas injection rate for each well that can also be used.
To do this select Edit | Edit Equipment Controls from the main GAP menu. The advantage of
this menu is that it enables the user to visualise the gas allocation for each well in the same
screen.
Note that the wells' 'Controls' section can be accessed from this screen by clicking on the 'Edit'
buttons.
Important note: The values for the controls under 'Actual' are the ones that
figure under "Fixed Value" in the wells' 'Controls' section. These values
will be used whenever the GAP model is run under No Optimisation
Once the calculation is finished, save the prediction results by selecting | Prediction | Save
Prediction Run Results As...
In this case the naturally lifted oil wells will still be controllable by GAP however when the gas
lifted wells come online they will operate at a fixed gas injection rate with 0psig dP choke on the
wells (i.e. the wells will be fully open).
Once the run has been completed, there are two ways to verify if the scheduling has been set up
correctly.
The first approach is to analyse the snapshots of the prediction on the 01/02/2013 and the
previous snapshot. The snapshot below shows the state of the system on 01/12/2012 (the
snapshot before the 01/02/2013).
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 node
prediction results we can observe the gas lifted wells coming online on the 01/02/2013.
Additionally, we can see the impact of the separator constraint. The system can produce above
20,000STB/d as soon as the facilities are upgraded on the 01/02/2013.
We can verify the gas injection rates for each well which remain constant throughout the
prediction.
Lastly, plotting the cumulative oil production shows us that the installation of the gas lift in the
wells increases overall production by approximately 11% in comparison to the case without
artificial lift. 727
Select the 'Control' tab and then ensure that the dP Control is set to 'None' and the Control
Model is set to 'Calculated'. These options will ensure that the well head choke is always fully
open and the only control variable is the gas injection rate. Set the maximum gas injection rate
to 10MMscf/d, as this corresponds to the maximum gas that is available, and then set the
minimum gas injection rate to 0MMscf/d. This means that if necessary, GAP can allocate all of
the gas lift gas that is available to one well.
Repeat this procedure for all of the other gas lifted wells.
3.9.5.2 Set Maximum Gas Lift Available
To set the maximum gas lift gas that is available then select Prediction | Run Prediction from the
main GAP menu and then run through the forms until the following screen appears.
Enter a value of 10MMscf/d. This will ensure that total gas lift gas that is allocated amongst the
wells will not exceed 10MMscf/d.
In this case the naturally lifted oil wells will be controllable by GAP and when the gas lifted wells
come online the GAP optimiser will control the allocation of gas lift gas to each well.
The following plot shows the gas lift injection rates for the wells over the course of the prediction.
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.
Useful Tip
Note that the calculated gas allocation amongst the wells appears erratic throughout the
prediction. This is because some of the wells respond very similarly to the amount of gas lift gas
injected. For example, if 1MMscf/d is injected into either of the wells from Reservoir B we will
observe a similar increase in oil production even though they are different wells. This means we
have multiple ways of controlling the system to achieve our optimum and therefore there is no
unique answer for the optimiser. In such cases we can modify the optimiser settings so that the
optimiser uses the controls of the previous time step as a starting point.
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.
And if we compare the cumulative oil production with the new optimiser settings we observe no
difference in the totals.
In order to proceed with the construction of the gas lift network the contract states that there must
be 10 MMscf/d which has to be provided by the operator that will be piped back to shore along
the sea bed. The objective of the study is to understand how long this rate can be maintained
for.
For reasons of casing integrity, the maximum pressure at the Casing Head is restricted to 4000
psig.
Learning Topics
The objectives of this example are to learn how to:
Generate lift curves for gas lift oil producer wells with casing head pressure as
sensitivity variable
Build a GAP model for the gas lift injection network
Couple the production system to the gas lift injection network
Write a script to meet a gas contract
Optimise the gas lift allocation to the wells ensuring that this can be supplied by the
gas injection system.
Executive Summary
To achieve the objectives a gas lift injection network model will be built and then coupled to the
production model. GAP allows the user to optimise the production system and then to verify if the
gas lift injection network is able to provide the necessary pressure to inject the gas at the casing
head side.
The initial files for this example and the final model can be found in the GAP
archive file format in the following directories.
~\samples\GAP\Example 8 - GL Field with Gas Network
Extract 600 the archive file in the Initial Files folder to an appropriate directory
Well Name Well type PROSPER well model Lift curve file
In order to model the Gas Lift Network, the PROSPER models must use the 'Valve Depths
Specified' method in the gas lift options.
The performance curves of the compressor are provided in an Excel worksheet called
'Compressor Curves'. The file contains the polytropic head and power curves as a function of
the inlet rate. Note that the units are in SI and will have to be converted when entering the
performance curves into GAP.
Note that the completed archive of the model is called Oil Field with GL Network.gar
In the previous examples, the gas lifted wells were defined by VLP curves that take into account
the GLR injected (see previous example 823 ). The basic assumption being that there is sufficient
pressure available at the casing side for the injection of the gas lift gas.
The casing pressure required to inject the gas can be determined separately by running a
sensitivity analysis with the PROSPER model however this is limited as this can only be done for
a fixed set of conditions and it is not possible for the engineer to determine if the casing
pressure can be provided by the gas lift injection system.
In order to optimise the allocation of gas lift gas shared by the wells, and take into consideration
whether the gas lift injection system can provide the gas at the necessary casing pressure,
requires a full integrated model of the production system dynamically linked to the gas lift
injection system in GAP. This link between the networks is achieved by introducing the casing
pressure.
To set the gas lifted wells to use the casing pressure double-click on one of the wells to activate
the System Summary screen and tick the option 'Use Casing Pressure'.
The PROSPER well models have to be defined with 'Valve Depths Specified'.
Repeat this for all of the gas lifted wells in the system.
Note that the lift curves have already been generated (see Table 1 843 ), therefore the steps
Provided the wells have been set to 'Use Casing Pressure' then GAP will automatically provide
the engineer with the option to enter the casing pressure as a fifth sensitivity variable when the
user accesses the menu Generate | Generate Well VLPs with PROSPER.
The PROSPER well models have to be defined with 'Valve Depths Specified' in
order for the casing pressure to be included.
With conventional VLP curves the pressure vs. rate profiles are always smooth and continuous
as this is consistent with the physics of the wellbore. The recommended ranges we provide in
the manual will almost always ensure this however in the case of gas lifted VLPs which have the
valve depths specified then depending on the conditions, the gas injection point can change
abruptly resulting in a sharp change in the pressure profile.
From a modelling perspective this can result in large interpolation errors or non-physical
solutions if the engineer is not careful with the ranges of the rates used when generating the
VLPs. For example, consider the VLP curve below of a gas lifted well for a given set of
conditions.
At approximately 7800 STB/day the injection point changes and a step change in the pressure
profile is observed. If the VLPs were generated for the same conditions but for a different range
of rates then is event will not be captured with sufficient resolution and there will be large
interpolation errors if the intersection with the IPR falls within this region.
It is therefore important for the engineer to ensure that this does not occur in the model, and
there may be some iterations required in identifying suitable ranges for the rates to ensure that
the VLPs are representative of the well.
The number of VLPs that can be generated is limited to 32,000 and the engineer must
take care in ensuring that this is not exceeded when generating VLPs for gas lifted wells
including the casing pressure.
To inspect the VLPs that have been generated for the gas lift wells, double-click on the wells to
activate the System Summary screen and select 'VLP' and then 'Inspect' from the screen shown
below.
In this example the VLPs have been generated using one GOR value (the solution GOR), as we
know from the evolution of the previous examples that the reservoir pressure does not drop
below the bubble point and therefore the producing GOR will remain constant throughout the
prediction.
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.
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
For further details, access the Units section 592 of the user Guide.
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.
Select the 'Gas Injection Manifold' and an element will appear on the main screen.
The Joints
Eleven joints will be created:
One joint to represent the compressor inlet ("P_s")
One joint to represent the compressor outlet ("P_d")
One joint to represent each of the manifolds ("Manifold_A" and "Manifold_B")
One joint to represent the delivered gas for the contract (Shore)
One joint to represent each of the wellheads (i.e. "WH1_A")
Click on the Joint icon from the main toolbar and add the 11 joints by clicking in the main
GAP display area as shown below. Label the joint elements accordingly, following the sketch
provided for reference. The following screen shot shows the current layout of the system.
The Compressor
To add the compressor element select the compressor icon from the main toolbar and
place it between joints "P_s" and "P_d".
It is imperative that each sink element is labelled with the same name as its
corresponding well. This is important because GAP will use the labels to recognise
the linking points between the production and gas lift injection systems.
Once the Source/Sink button is selected, place an icon on the screen and select 'Sink'.
Repeat this procedure for all of the other wells in the system.
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.
Create links between the following components in the direction of the flow:
1. Connect the Gas Inj. Manifold to joint P_s to the Compressor and then to joint P_d.
2. Connect the joint "P_d" to the manifolds and then to the joints representing all of the well
heads.
3. Connect the wellhead joints to the corresponding sinks.
The basic model layout has now been specified. Additional components can easily be added or
deleted when the model is refined later. The GAP screen display should look something like the
screen shot below:
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.
According to the network sketch 850 , the wells Well1A, Well2A and Well3A are tied back to
Manifold_A via devoted lines. The three lines are therefore represented by a link between each
wellhead and the manifold.
In order to describe the procedure for defining pipelines access the pipe summary screen by
double-clicking on the link that joins WH1_A and Manifold_A. The summary screen is shown
below. Make the following changes:
The 'Petroleum Experts 5' is a mechanistic model that was designed to model pipelines
with complex geometries flowing with multiphase mixtures. It is therefore more
computational intensive as it is capable of handling far more complexity. In this system
we do not require such a rigorous model as the flow is single phase (gas) and the
pipelines are not particularly undulating therefore we can save computational time by
using the simpler 'Beggs and Brill' correlation.
Environment
Select the 'Environment' tab to access the screen which allows you define the pipeline
environment and then enter the following values.
Pipe Description
To define the pipeline dimensions select the description tab.
Enter the following data (note: the data are given from upstream to downstream):
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.
Similarly, double click on the pipe linking Manifold_B to P_d and enter the following pipe
description:
The figure on the right hand side allows the user to define which node
is upstream and which is downstream in the system:
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.
Double-click on the pipe linking joint "P_d" to "Shore" and enter the following data:
To change the units of a variable click on the cell that displays the unit
and a drop down list will become available providing all the different
unit options.
This completes the pipeline description for the gas lift injection network.
Injection manifold
Double-click on the injection manifold to access the System Summary screen and enter an
injection fluid temperature of 60 deg F.
Lastly,define the injected gas properties by selecting the 'Edit List' section. In this case the
default PVT properties will be used.
Note that the units are in SI and will have to be converted when entering the
performance curves into GAP.
The measured data, provided by the manufacturer, was fitted with curves to achieve smooth
derivatives beyond the surge and choke limits of the compressor. This is very important
because the GAP solver uses the derivatives of each element in the system in order to solve the
network so that convergence is achieved at each node. This is the same principal behind
having good quality VLPs which has been discussed in the previous examples.
Even if the derivatives are smooth over the range of the expected operating conditions,
convergence issues can still occur if there are poor quality derivatives at the extreme conditions.
This is due to the fact that as the network is being solved it is possible for the solver to fall into a
region with poor quality derivatives and consequently the ability of the system to converge is
greatly affected as there is no way for the solver to resolve which direction to go in order to find
the correct solution.
An example of poorly defined compressor curves is provided below where the problematic
areas have been highlighted in red.
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.
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.
To specify the Surge/Choke limits as a function of the rotation speed then select the 'Surge/
Choke' tab from the bottom of the form as shown below.
Provided the compressor is controllable then GAP will regulate the rotational speed of the
compressor in order to honour these operating limits.
Lastly, define how the compressor speed is going to be controlled by selecting the 'Control' tab
and setting the Speed Control to 'Calculated' and entering the maximum/minimum speed limits
of 8000 rpm and 20000 rpm respectively.
GAP will now be able to regulate the compressor speed between these limits in order to
maximise the oil production.
The GAP model has now been built. Save the file as GL Network.gap.
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 source element and the injection
manifold corresponds to the separator. This is because the same names have been used for
those elements.
Note that in the gas lift injection network the icons for the injection manifold and
sinks (wellheads) have turned upside down. This indicates that those elements are
linked to their corresponding wells in the production network.
Save the model naming the production model as Oil Production with GL Network.gap.
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.
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).
If the gas production (Qgas) falls below the agreed 10MMscf/d then there is a separate logic
required to simulate the three cases specified in the objectives 841 . This can be done
dynamically through the prediction script which enables us to optimise our system to its full
potential whilst honouring the three different field management strategies.
To enter script select Prediction | Edit Prediction Script from the main GAP menu or alternatively
select the icon from the main tool bar.
The scripting is carried out through OpenServer and will be carried out at the end of each solve
(PredStepSolverEpilog). The script for Case 1 is shown below.
To summarise, the script updates the sink in the gas lift injection network so that it is consistent
with the produced gas calculated from the production system. There is then the additional logic
required to simulate Case 2 and 3 which will be described in the next section.
The script can be imported as a file which in provided in the archive located in the Initial Files
folder. To import the script select Prediction | Import Prediction Script... and then locate the file
called Case 1.gapscr.
In order to obtain an OpenServer statement the user can use CTRL+Right Click over any
variable and the OpenServer string along with the current value will be displayed. For example,
the OpenServer variable for the available gas lift gas is displayed below.
The OpenServer commands are also documented in detail in the OpenServer manual.
Note that although the model will meet the objectives set out at the start, its formulation
is rather complicated due the necessary scripting. It is also inefficient as additional
solves are required in order to consistently capture all of the rates in the different
systems. Moreover, if this model was to be passed onto another engineer then unless
they are familiar with the script they will have difficulty interpreting the model. It is
therefore recommended to handle such problems, which are based on field
management rules, with RESOLVE, as this tool provides a far simpler platform for
implementing logic in the model. For example, this problem could be solved in RESOLVE
with fewer solves and without the need for any scripting making the model more
efficient and easier for other engineers to understand.
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.
3.10.6.1 Case 1
Once the calculation is finished, save the prediction results.
The first case was to run a forecast with gas lift on all of the wells, with the total available gas lift
rate assumed to be10MMscf/d.
The first step is to ensure that the prediction script is working correctly. This can be done by
inspecting the snapshots. The snapshot below shows the state of the system on 01/09/2014.
At this point in time the gas potential of the production system is greater than 10MMscf/d and we
can verify that the volume of produced gas is being delivered to shore.
To determine when the gas contract can no longer be met select Prediction | Plot Node
Prediction Results... and plot the gas production from the separator.
From the plot its clear that around 1/12/2016 the gas production falls below 10MMscf/d and it is
not possible to honour the contract.
3.10.6.2 Case 2
The second case was to run a forecast with gas lift on all of the wells, with the total available gas
lift rate assumed to be10MMscf/d until the total produced gas drops below 10MMscf/d. At which
point all of the allocated gas lift gas will be shared amongst the higher GOR wells (wells from
reservoir A) in order to understand if more gas can be produced and maintain the contract for a
longer period.
In order to set-up this scenario the script needs to be modified. The logic that will be executed
once the gas rate drops below 10MMscf/d is that wells connected to Reservoir B will be
switched to Fixed Control and the Gas Injection Rate will be set to 0MMscf/d.
The script can be imported as a file which in provided in the archive located in the Initial Files
folder. To import the script select Prediction | Import Prediction Script... and then locate the file
called Case 2.gapscr.
Re-run a prediction with the same set up as the previous case which is listed below:
From the 01/12/2010 to the 01/12/2020.
Using 3 months time steps.
With the 'Target Pressure' for Reservoir A set to 3650 psig using 0% gas (which means the
injected fluid is 100% water).
With the gas inj. manifold pressure set to 200 psig.
With the optimisation mode set to 'Optimise with All Constraints'.
To determine the impact on the gas contract select Prediction | Plot Node Prediction Results...
and plot the gas production from the separator for Case 1 and 2.
The results show that on the 01/12/2016, which is when the logic is triggered, the gas production
drops sharply. This is because the wells from Reservoir B require gas lift in order to produce.
3.10.6.3 Case 3
The third case was to run a forecast with gas lift on all of the wells, with the total available gas lift
rate assumed to be10MMscf/d until the total produced gas drops below 10MMscf/d. At which
point all of the allocated gas lift gas will be increased to 15MMscf/d in order to understand if
more gas can be produced and maintain the contract for a longer period.
In order to set-up this scenario the script needs to be modified. The logic that will be executed
once the gas rate drops below 10MMscf/d is the Gas Lift Available will be increased to
15MMscf/d
The script can be imported as a file which in provided in the archive located in the Initial Files
folder. To import the script select Prediction | Import Prediction Script... and then locate the file
called Case 3.gapscr.
Re-run a prediction with the same set up as the previous cases which is listed below:
From the 01/12/2010 to the 01/12/2020.
Using 3 months time steps.
With the 'Target Pressure' for Reservoir A set to 3650 psig using 0% gas (which means the
injected fluid is 100% water).
With the gas inj. manifold pressure set to 200 psig.
With the optimisation mode set to 'Optimise with All Constraints'.
To determine the impact on the gas contract select Prediction | Plot Node Prediction Results...
and plot the gas production from the separator for Case 1 and 3.
Which inidiactes that there is effectively no gain in increasing the gas lift available to the system.
This confirms that, for the cases analysed, the contract can be honoured until 01/12/2016.
In summary we have demonstrated the capability of designing a gas lift injection network that
can supply the necessary gas lift gas to the wells. Additionally, we have incorporated a physical
compressor as well as some advanced logic that captures different management strategies that
are aimed at honouring a contract. Although the logic used meets the objectives it is fairly
detailed, takes time to formulate and can be difficult to understand if the engineer is unfamiliar
with script. On that basis it is always recommended to model such cases in RESOLVE as it is
far simpler and more efficient to implement.
3.11.1 Objectives
Definition of the Problem
A new retrograde gas condensate field has been discovered with four appraisal wells. A simple
surface configuration has been defined for gathering all the fluid to a common manifold. The
produced fluid is to be delivered 5 km away from the main manifold to n LNG plant for
processing.
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.
Executive Summary
The steps to follow will be to:
1. Build the GAP network
- Draw the GAP network
- Define a reservoir in GAP
- Define the MBAL model as compositional and Import the composition in MBAL
from PVTP
- Define wells in GAP
- Generate well IPRs in GAP using PROSPER
- Import well VLPs in GAP
- Import the composition in GAP from PVTP
- Define the pipeline and eventual surface equipment
2. Run Solve Network (no optimisation) to determine the actual production for the
current network status
3. Run the prediction and checking the results
The initial files to build this example along with the completed model can be
found in the directory:
~\samples\GAP\Example 9a - LNG (Fully Compositional)
Click here 948 to set the model to Black Oil compositional lumping/delumping
3.11.2 Data Available
Description of the Wells
In this example, the Forcheimer Pseudo Pressure Method will be used for the model the inflow
performance (IPRs). The file names containing the pre-generated lift curves corresponding to
each well are shown in the table below.
Length
km Inches ft ft Btu/h/ft2/F -
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
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 '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:
Note that the options above are described in detail in the manual 154 .
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.
Ensure that the LNG Process Plant 271 is selected as this will be used to model the process plant
and calculate the respective LNG and condensate rates. When linking the sources it is possible
to define the fluid line using the option highlighted below.
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.
In this section the existing MBAL model reservoir.mbi will be modified in order to have the PVT
defined as 'Fully Compositional.'
To do this we can open the MBAL file through GAP by accessing the tank system summary
screen and selecting 'Run MBAL' in the bottom hand corner of the window.
Once the MBAL file is open access 'Options' from the main tool bar and set the 'Compositional
Model' to 'Fully Compositional.'
Enter the 'EOS Model Setup' options and enter the same PVT information as was entered in
GAP.
Note that when linking a fully compositional MBAL model to GAP, MBAL will automatically use
the EOS settings defined in GAP as it is the master controller.
3.11.3.3.1 Entering compositional PVT Data
The next step is to import the equation of state (EOS) into MBAL. The EOS will be exported
from a pre-existing PVTP model (PVT model.pvi) as a .PRP file and imported in MBAL.
Open up the PVT model.pvi in PVTP located in the initial files folder. The PVTP file includes an
EOS that has already been matched (or characterised) to a PVT lab report. The initial
characterisation is the fundamental first step in constructing an integrated model and there are
step by step instructions for matching fluids in the PVTP manual that the engineer can refer to.
The EOS has been defined with 16 components and has been tuned using the Volume Shift
correction. From the main PVTP panel select 'View Properties' to view the composition and
component properties.
To export the EOS select File | Export from the main PVTP menu and then EOS Composition :
Save the .PRP file as PVT model.prp. The .prp file that is generated contains all of equation of
state properties shown above along with the fluid composition.
The next step is to then import the PVT file in MBAL. From the main toolbar in MBAL select
PVT | Fluid Properties which will activate the following window.
Select the 'Gas' tab and then 'Edit Compostion to import the .prp file as shown below.
The program will automatically load the EOS model that was built in PVTP, including the
separator train that defines the path to stock tank conditions.
Click on OK and ensure that all the other tabs have been validated.
Note: In the case shown above, the gas composition that has been entered
that the contains vaporised oil. When the fluid goes below the dew point, the
program will automatically determine the equilibrium oil composition, hence
there is no requirement to enter any oil PVT data.
In the Input | Tank data section enter an initial Oil leg equal to zero, as the reservoir is initially
above the dew point.
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.
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.
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
Complete all the wells according to the data provided in Table 1 667 .
Note that the well models have been defined using the black oil condensate PVT model in order
to save time. This is because in PROSPER there is the option to model the PVT of the
condensate as either fully compositional (EOS) or using black oil. In order to use the black oil
method it must be first validated against the results of the EOS method. Please refer to the
PROSPER manual for details about the validation steps.
When running the model in prediction mode, the composition entered at the IPR level will be
updated with the one coming from the reservoir model (MBAL or other).
The fluid composition and EOS properties are part of the .PRP file which was exported from
PVTP and saved as PVT model.prp. There are two methods for importing the .PRP file into the
IPR section of each well:
Either by accessing the 'Composition' button in the well IPR Layer section (see figure below)
and importing the file directly as shown below.
Alternatively, access the Edit | Import Compositions from the main GAP toolbar and then select
all the wells and 'Import EOS Options'.
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.
From the main GAP menu select Generate | Generate Well IPRs from PROSPER.
By double-clicking on any of the wells and selecting the 'IPR' tab, one can verify the IPR input
data as shown in the following screen shot:
Before leaving the IPR section, access the More tab screen and select the set of Rel
Perms for fractional flow prediction to be 'From Tank Model'. This is important to
determine the distribution of the different fluid phases (i.e. the WGR and GOR).
To import the VLP curves in GAP the files must be already generated. These are saved as .tpd
files and as part of this example have been included in the 'Initial Files folder.' To load these
files double click on well 'W1' and then select the VLP tab.
Select browse and then load the Well1.tpd file. The VLP section should then become green
which completes the input for the well description. Repeat this process and load the file for each
corresponding well.
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.
In the 'Improved Approximation' method the user has the option to define a heat transfer
coefficient for each segment of pipe. If the the heat transfer coefficient varies along the pipe
length then this can be captured by adding multiple pipe segments within the pipe description.
Accessing the Controls 230 section in the well Summary screen and setting the dP Control to
'Calculated,' or
Right clicking on the well icon in the main GAP screen and selecting "Controllable."
The figure below shows the 'Controls' section in the well input area:
Ensure that all of the wells in the system are made controllable.
Separator Schedule
Water Schedule
From the main GAP menu select 'Solve Network' and enter a pressure of 1000 psig for each
separator. Click on 'Next' and set the calculation mode to 'No Optimisation' before selecting
'Calculate'.
Before inspecting the results, the user has the option to increase the amount of information that
is provided in the main fly-over by accessing the main menu and selecting View | Select Info
Displayed and enabling the viewing of compositions.
Pointing the cursor on the separator, it is possible to see that the wells fully open produce overall
around 2718 tonne/day of LNG and 2885 tonne/day of Condensate.
The results also show the composition in each point of the system.
Double click on the desired element (for example, in this case well 'W1')
Access the 'Results' section, scroll all the way to the right hand side and select 'Composition
View':
This will display the composition results for the fluid flowing through that given element.
Note that the EOS can be exported from by selecting 'Export...PRP'. The .
prp file that is generated can then be used in other tools within the IPM Suite
.
The same results can also be obtained from the main GAP toolbar by selecting Results |
Detailed | All Separators or Injection Manifolds.
To understand if there is a possibility of solids deposition throughout any of the pipelines in the
system then view the composition of each pipeline as shown above (for example the pipeline
that is defined between the joints 'Manifold' and 'Top') and from the 'View Composition' screen
select 'Phase Env...' and then 'Calculate Hydrate...Wax'.
Selecting 'Plot' then enables the user to see the pipeline pressure and temperature profile
relative to the hydrate formation curve.
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.
To run the prediction select Prediction | Run Prediction from the main GAP menu and then enter
the following information:
Select Next | Next and enter a pressures of 1000psig. 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 | Save
Prediction Results As...
Click on plot, and then view the LNG and condensate rates along with the GOR for the fully
compositional prediction as shown below.
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.
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
reservoir composition double click on the reservoir element and go to the prediction results.
Within this window select 'Load MBAL Results' which will provide the full detailed results of the
prediction that are associated with the MBAL model.
This step automatically loads the associated MBAL file and the results are stored in Production
Prediction | Run Prediction which is on the main toolbar. Plotting the propane demonstrates the
relative increase of propane in the reservoir as the liquid is dropping out.
The next step is to confirm whether or not there is any risk of hydrates forming in the pipelines as
the fluid is produced to the LNG plant. To do this inspect the pipeline results by double-clicking
on one of the pipeline elements (for example 'Manifold to Top') to activate the system summary
screen.
The 'Status' column will provide a warning regarding the risk of hydrates and based on the
results of the prediction it is clear that there is a risk of hydrate formation in several of the flow
lines.
In order to compare the pipeline conditions relative to the hydrate formation curves we can
select a date (01/01/2012) and then 'View' as shown below. From the 'View Composition form
select 'Phase Env...' and then 'Calculate Hydrate...Wax' to generate the curves.
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.
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.
The inclusion of 10 % methanol removes the risk of hydrates however there is still the possibility
of wax formation which needs to be addressed. One solution could be to insulate the pipelines
(modify the heat transfer coefficient) which could also be easily captured in the GAP model.
It is possible to re-run the prediction with the inhibitor included to asses the impact on hydrate
formation throughout the field life. To do this select Options | Method from the main GAP menu.
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.
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.
3.12.1 Objectives
Definition of the Problem
In the case of the system described in the previous example 893 it is still required to know the
composition of the produced fluid at any given point in time. However, instead of using the Fully
Compositional PVT method which is computationally intensive, to reduce the run time (but still
making sure to use a realistic PVT model) it is suggested to use the Black Oil compositional
Lumping/Delumping 174 method which is one of the advanced PVT options available in GAP.
To determine the composition (EOS) any location in the network at any given point in time.
To ensure that the black oil model is consistent with the EOS composition at any given point
in time.
To reduce the run time in comparison to running the model using the EOS.
In order to illustrate the validity of the approach, a prediction will be carried out under the same
conditions as the previous example 893 .
Learning Topics
The objectives for this example are to learn in more detail how to:
Set the GAP model to work with Black Oil compositional lumping/de-lumping.
Compare the results obtained using Black Oil compositional Lumping/Delumping and
Fully Compositional.
Executive Summary
The starting point is the model 895 built in the previous example.
The steps to follow will be to:
1. Set the GAP model up to work with the Black Oil compositional Lumping/De-
lumping and to use the full composition.
2. Run 'Solve Network' (no optimisation) to determine the actual production for the
current network status.
3. Run the prediction in GAP and check the results.
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.
Note that in the EOS Model Setup options it is possible to enable the Lumping options (in case
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.
Once the prediction is completed take note of the CPU time (this will vary from machine to
machine) and save the prediction results. Comparing the CPU time with the previous example
shows a reduction in the calculation time of approximately 50%.
To save the prediction results select Prediction | Save Prediction Results As...
Click on plot, and then view the LNG and Condensate Rates along with the GOR for the Fully
Compositional and BO Compositional Lumping/Delumping predictions as shown below.
The plot shows that the LNG/Condensate rates and the GOR calculated by the BO
Compositional Lumping Delumping method are practically identical to the results of the fully
compositional run.
From the same plot it is possible to compare the evolution of methane using both methods.
The results indicate that the BO Compositional Lumping/Delumping method captures the
evolution of methane to within a fraction of the fully compositional method.
And Propane
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.
3.13.1 Objectives
Definition of the Problem
A tight gas field development is made up of two main well clusters which are currently in
operation (See figure below). The two clusters are linked by a flowline so that the gas can be
transported from Sector A to Sector B. There are plans to commence an intensive drilling
schedule which will bring online more well clusters in the near future.
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
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
The files for this example and the final model can be found in the GAP
archive file format in the following directory.
~\samples\GAP\Example 10 - Tight Gas Field\Gas Field.gar
Extract 600 the archive file from the Initial Files folder
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
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.gar file. Extract the
model before starting the exercise.
3.13.3 Build the Sector model
This section can be used as a general step-by-step procedure to build any GAP model. The
following sketch will be used as a reference.
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.
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
Complete all the wells according to the data provided in Table 1 961 .
based on the well history, the PVT and a model (i.e. type curve for a bounded fractured
reservoir) which has been characterised in MBAL. For details about type curves analysis and
how the reservoir characteristics are determined it is recommended to consult the MBAL
tutorials.
Activate the well IPR screen for well1A and load the associated MBAL file using the 'Browse'
option.
Once the file is linked select 'From MBAL' and then transfer the IPR data as shown in the below.
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.
Note that there is now the functionality to include to include any PD vs. TD function to describe the
well and reservoir geometry in a tight gas system.
This function can be generated through the applications in REVEAL and RESOLVE that allows
for complex well geometry (horizontal or deviated wells) with multiple fractures to be handled in
the system. These pseudo PD functions can also be generated in an external application and
then imported into the IPM suite for full integrated modelling.
Lastly, copy and paste the production history from the Excel worksheet into the 'Prod Data tab.'
To import the VLP curves in GAP the files must be already generated. These are saved as .tpd
files and as part of this example have been included in the 'Initial Files folder'. To load these
files double click on Well1A and then select the VLP tab.
Select browse and then load the Well1A.tpd file. The VLP section should then become green
which completes the input for the well description. Repeat this process and load the file for each
corresponding well.
Once the pipelines are defined the model is complete and ready to run.
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'.
Pointing the cursor on the separator element, it is possible to see that the wells fully open
produce approximately 11.3 MMscf/d
Do not include the separator element as part of the partial GAP file.
From the main GAP menu select Edit | Selected Items | Extract to partial GAP File (.gpp) and
save the file as 'Sector A', save and then close the model.
3.13.5.2 Import Partial GAP file
Open the Sector B.gap file.
The .gpp file is going to be imported into a flowsheet 442 . The flowsheet elements are very useful
for managing potentially large models as it allows smaller parts of the network to be embedded
into separate subscreens. To include a flowsheet select the icon from the main toolbar and
then place it directly above the 'greyed-out' compressor icon.
Double-click on the flowsheet and then maximise the new window that is provided. Place the
cursor within the new window, right-click and the choose the option 'Insert GAP Partial file (.
gpp)'. Insert the Sector A.gpp file and then select View | Normalise equipment icon positions
which will re-arrange the layout of the icons so that they can all be viewed within the window.
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.
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.
Note that it has been assumed that the compressor model has already been built. For details of
compressor modelling in GAP please consult the Examples 871 .
From the main GAP menu select 'Solve Network', enter a pressure of 250 psig at the gathering
station and enter the current date (01/01/2008). Click on 'Next' and set the calculation mode to
'No Optimisation' before selecting 'Calculate'.
The gas rate at the gathering station with the compressor is approximately 19.95MMscf/D.
Repeat the 'Solve Network' calculation and compare the gas rates at the gathering station.
From the results it can be confirmed that the gas production is 19.69MMscf/D and that there is a
benefit of roughly 0.3MMscf/d including the proposed compressor on the current date.
Further analysis could be carried out, for example running forecasts, to asses the economic
impact of installing the compressor over a period of time. Additionally, if we analyse the
detailed results of the compressor it is possible to compare the pressure differential across the
compressor (which is related to the physical compressor itself) and the deliverability of the
Sector A wells.
For example, the impact of the compressor is to reduce the pressure at 'P_in' to approximately
100 psig. If the response of the system was something like the relationship below then there
would be little gain in reducing the P_in with a compressor as the increase in the gas production
does not justify it.
If we revert back to the original Sector A model and solve the network for a range of different
fixed pressures at P_in (e.g. from 50 psig - 100 psig) it is possible to establish if the production
is driven by the type of compressor or the potential of the wells. To do this, open Sector A.gap
and select Solve Network | Run Network Solver from the main menu. Enter the following
manifold pressures which will be applied at P_in and the current date (01/01/2008)
In the previous examples only one manifold pressure was entered. However it is
possible to solve the network for a range of different manifold pressures and
conduct a sensitivity study.
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.
3.14.1 Objectives
Definition of the Problem
A coal bed methane (CBM) field with two wells producing from the same coal seam is to be
analysed. Initially, both wells will de-water the reservoir via electrical submersible pumps (ESPs)
producing the gas and water via two separate lines. After 4 years (on 01/01/2013), the pumps
will be pulled and replaced with a tubing and a packer and the commingled fluids will be
produced through the same lines for the remainder of the forecast.
The objective is to understand the overall system response due to the proposed workovers.
Learning Topics
The objectives of this example are to learn how to:
Set-up a GAP model for a CBM field.
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
The files for this example and the final model can be found in the GAP
archive file format in the following directory.
~\samples\GAP\Example 11 - CBM Field
Extract 600 the archive file from the Initial Files folder
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)
From the GAP entry screen, select File | New to reinitialise GAP.
To begin setting up the system options, select Options | Method and make the following
selections:
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.
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
Complete all the wells according to the data provided in Table 3 985 .
The CBM wells have two connection elements, the tubing (blue) outflow and the annular (red)
outflow elements. The objective is to initially produce the water and gas separately via different
lines while the well is under artificial lift (See Figure 984 ). After six years (01/01/2013) the tubing
will be pulled, the ESPs are removed, and the flow will be redirected so that the water and gas is
produced up the tubing and through the same line.
The change in the pressure drops between the sand face and the well head, as a consequence
of removing the pump, will be captured in a new set of VLPs. In order to capture the re-routing of
the fluid paths beyond the wellhead we will take advantage of the links and the scheduling
features within GAP.
The first step is to create the dimensionless links between tubing/annular outflow elements and
the main flow lines. Use the figure the below as guidance:
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.
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.
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.
From the main GAP menu select Generate | Generate Well IPRs from PROSPER.
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.
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
Generate the VLPs by accessing the menu Generate | Generate Well VLPs with PROSPER.
In this case a range of values need to be entered and as the wells are ESP lifted CBM wells
then the pump frequency, GLR and liquid level must also be included.
When VLPs are generated for artificial wells there are a factor of 10 more
calculations to be performed (10,000 VLPs will be generated instead of 1,000) in
comparison to naturally flowing wells. Therefore the time taken to generate
VLPs will be considerably greater.
For the case of CBM wells the liquid level in the casing must also be entered so that we can
determine the casing pressure. For more details of CBM well modelling it is recommended to
consult the PROSPER manual.
As the second method has been widely demonstrated in previous examples 681 , and the VLP
curves have already been generated, we will adopt the first approach.
To import the VLPs, access the VLP section of the Well system summary screen and 'Browse'
for the corresponding .vlp file according to Table 1 985 :
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
is because an increasing GLR (assuming a separator efficiency less than 100%) will
tend to reduce the inlet pressure of the pump for a given head. Therefore it is possible
to define a set of conditions that will calculate very low pump inlet pressures (and hence
bottom hole pressures) which are not physical. To ensure that this has not been done
simply inspect the VLPs and make sure that the bottom hole pressures are not 0psig (or
unrealistically low). An alternative approach is to check the calculated casing pressures.
If the conditions are non-physical then the calculated casing pressures will also be
unrealistically low (continue to the Interpret Results 1003 section to understand how to
visualise this variable).
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.
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.
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.
Select Next | Next and enter a separator pressure of 100 and 100psig for Sep1 and Sep2
respectively.
Select | Next and then set the prediction Mode to 'No Optimisation' and then 'Calculate.'
Select both of the separators from the 'Equipment Type' and plot the gas and water rates for
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.
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.