You are on page 1of 446

Petroleum Experts

PVTP

Version 6.5

October, 2003

USER GUIDE
The information in this document is subject to change as major improvements and/or
amendments to the program are generated. When necessary, Petroleum Experts will issue
the proper documentation.

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.

All names of companies, wells, persons or products contained in this documentation are part of
a fictitious scenario or scenarios and are used solely to document the use of a Petroleum
Experts product.

Address: Registered Office:


Petroleum Experts Limited Petroleum Experts Limited
Spectrum House Spectrum House
2 Powderhall Road 2 Powderhall Road
Edinburgh, Scotland Edinburgh, Scotland
EH7 4GB EH7 4GB
Tel: (44 131) 474 7030
Fax: (44 131) 474 7031
Email: edinburgh@petex.com
Internet: www.petroleumexperts.com
PVTP

1 Introduction..................................................................................................................................1
1.1 PVT provides ...........................................................................................................................1

2 Installation and Windows Basics ..............................................................................................1


2.1 Software and Hardware Requirements ...................................................................................1
2.1.1 Upgrading from a Previous Version ..............................................................................3

2.2 Installing PVTP ........................................................................................................................3


2.2.1 Running Setup...............................................................................................................4
2.2.2 The PROSPER.INI file ..................................................................................................4

2.3 Starting PVTP..........................................................................................................................5


2.3.1 Connecting The Software Protection Bitlock.................................................................5
2.3.2 Creating the PVTP Icon.................................................................................................5

2.4 REMOTE Software Utility ........................................................................................................6


2.4.1 Entering the User Authorisation Code...........................................................................6
2.4.2 Updating the Software Protection Bitlock......................................................................8

2.5 Program Check List.................................................................................................................8

3 File Management .........................................................................................................................1


3.1 PVT File Types ........................................................................................................................1

3.2 PVT Data Files ........................................................................................................................2


3.2.1 PVT Project File (*.PVI )................................................................................................2
3.2.2 Extract Data (*.PVI) .......................................................................................................2
3.2.3 PVT Import ....................................................................................................................2
3.2.4 PVT Export Files............................................................................................................4
3.2.5 PROSPER EoS Composition (*.PRP)..........................................................................4
3.2.6 PROSPER Hydrate Formation (*.PHY).........................................................................5
3.2.7 General Data Export (*.PVE)........................................................................................5
3.2.8 Black Oil Tables (*.PTB)................................................................................................8
3.2.9 MBAL MultiI-PVT Export (*.PGD)................................................................................13
3.2.10 MBAL PVT with Depth - Black Oil Match Tables ........................................................16
3.2.11 MBAL Variable Bubble Point(Oil) Export (*.PVB)........................................................20
3.2.12 Saturated .....................................................................................................................20
3.2.13 Undersaturated............................................................................................................20

3.3 MBAL Variable Bpt. Calculation Dialog.................................................................................25


3.3.1 Eclipse Type Export (*.INC) ........................................................................................29
3.3.2 Eclipse Export Setup Dialog.......................................................................................30
3.3.3 Eclipse Export Tables..................................................................................................34
3.3.4 Eclipse Compositional Export (*.PVO) .......................................................................37
3.3.5 PVT Temporary Files ..................................................................................................38
3.3.5.1 Temporary Data File (*.PSV)...............................................................................38

3.4 File Operations ......................................................................................................................38


3.4.1 Creating a New File.....................................................................................................38
3.4.2 Opening an Existing File .............................................................................................38
3.4.3 Saving a File................................................................................................................39
3.4.4 Copying a File..............................................................................................................39
3.4.5 Closing Files ................................................................................................................39
3.4.6 Restore Temp File .......................................................................................................39

3.5 Software Key Maintenance ...................................................................................................40


3.5.1 Viewing the Software Key ...........................................................................................40

PETROLEUM EXPERTS LTD


PVTP

3.6 Printing ..................................................................................................................................40


3.6.1 Printer Set-up ..............................................................................................................40
3.6.2 Printing a Report..........................................................................................................41

3.7 Units System .........................................................................................................................42


3.7.1 Unit Options.................................................................................................................42
3.7.2 Variables......................................................................................................................42
3.7.3 Validation.....................................................................................................................43
3.7.4 Unit Systems ...............................................................................................................43
3.7.5 Changing the Units ......................................................................................................43
3.7.6 Validation Limits ..........................................................................................................43

3.8 Command Buttons.................................................................................................................44

4 Models and Model Options.........................................................................................................1


4.1 The Black Oil Model ................................................................................................................1

4.2 The Equation of State Model...................................................................................................1


4.2.1 The Acentric Factor .......................................................................................................2
4.2.2 The Binary Interaction Coefficient .................................................................................6
4.2.3 Volume Shift ..................................................................................................................8
4.2.3.1 Volume Shift Setup........................................................................................................9

4.3 Wax Modelling .......................................................................................................................12


4.3.1 Wax Model Details.......................................................................................................15
4.3.2 Wax Model References ...............................................................................................18

4.4 Hydrates ................................................................................................................................19


4.4.1 Background to Hydrates..............................................................................................19
4.4.2 Hydrate Modelling........................................................................................................21
4.4.3 Hydrate Inhibition.........................................................................................................23
4.4.4 Hydrate Model References..........................................................................................24

4.5 Compositional Gradient.........................................................................................................25


4.5.1 Background to Compositional Gradient ......................................................................25
4.5.2 Compositional Gradient References ...........................................................................28

4.6 Viscosity and Thermal Conductivity Models..........................................................................29


4.6.1 Lohrenz,Bray,ClarkViscosity Model.............................................................................30
4.6.2 Pedersen et al Viscosity Model ...................................................................................31
4.6.3 Zhou et al Viscosity Model ..........................................................................................32
4.6.4 Little and Kennedy Viscosity Model.............................................................................34
4.6.5 Thermal Conductivity Model........................................................................................35
4.6.6 Viscosity and Thermal Conductivity References.........................................................36

4.7 Water Modelling ....................................................................................................................38


4.7.1 Water Modelling References .......................................................................................39

PETROLEUM EXPERTS LTD


PVTP

5 Main/Stream Options ..................................................................................................................1


5.1 PVT Main Menu.......................................................................................................................1
5.1.1 File.................................................................................................................................2
5.1.2 Options ..........................................................................................................................2
5.1.3 Data ...............................................................................................................................2
5.1.4 Calculation.....................................................................................................................2
5.1.5 Calc. Solids....................................................................................................................2
5.1.6 Streams .........................................................................................................................2
5.1.7 Reporting .......................................................................................................................2
5.1.8 Utilities ...........................................................................................................................2
5.1.9 Preferences ...................................................................................................................3
5.1.10 Window..........................................................................................................................3

5.2 Toolbar ....................................................................................................................................3

5.3 Summary Page........................................................................................................................6

5.4 Option Selection ......................................................................................................................8


5.4.1 Option Selection ............................................................................................................8
5.4.2 PVT Method...................................................................................................................8
5.4.3 Fluid Type......................................................................................................................9
5.4.4 Separator.......................................................................................................................9
5.4.5 Equation of State ...........................................................................................................9
5.4.6 User Information ............................................................................................................9
5.4.7 User Comments...........................................................................................................10

5.5 Streams Menu .......................................................................................................................10


5.5.1 Edit Stream Details......................................................................................................11
5.5.2 Add Stream..................................................................................................................11
5.5.3 Delete Stream..............................................................................................................14
5.5.4 Create a Stream to a target GOR................................................................................15
5.5.5 Create a Stream to a target Saturation Pressure........................................................16
5.5.6 Blend Streams .............................................................................................................18
5.5.7 Allocate:Blend Streams to a Target GOR ...................................................................19
5.5.8 Add Water : Create a Stream with a Fixed Amount of Water .....................................21
5.5.9 Add Water : Create a Stream Saturated with Water ...................................................22

PETROLEUM EXPERTS LTD


PVTP

6 Black Oil Input .............................................................................................................................1


6.1 BLACK OIL PVT - General......................................................................................................1

6.2 Toolbar ....................................................................................................................................2


6.2.1 BLACK OIL PVT - Oil ....................................................................................................3
6.2.2 Match Data ....................................................................................................................3
6.2.3 Regression ....................................................................................................................4
6.2.4 Match.............................................................................................................................4
6.2.5 Match-all ........................................................................................................................4
6.2.6 Parameters ....................................................................................................................5
6.2.7 Viewing the Match Parameters .....................................................................................5
6.2.8 Calculations ...................................................................................................................5
6.2.9 Calculating PVT Data ....................................................................................................6
6.2.10 Plotting the Calculated Data..........................................................................................7
6.2.11 BLACK OIL PVT - Dry and Wet Gas .............................................................................8
6.2.11.1 Input Data ..............................................................................................................8
6.2.11.2 Match Data ............................................................................................................8
6.2.12 BLACK OIL PVT - Retrograde Condensate ..................................................................9
6.2.12.1 Input Data ..............................................................................................................9
6.2.12.2 Match Data ............................................................................................................9

7 Input Data EoS.............................................................................................................................1


7.1 General Project Data Structure ...............................................................................................1
7.1.1 STREAMS .....................................................................................................................1
7.1.2 PSEUDO STORAGE.....................................................................................................2

7.2 Selecting Components ............................................................................................................3


7.2.1 User Database Entries ..................................................................................................4
7.2.2 Recombination...............................................................................................................5
7.2.2.1 MODE....................................................................................................................5

7.3 Edit Composition .....................................................................................................................9

7.4 Pseudo Properties.................................................................................................................14


7.4.1 Auto Matching of Densities..........................................................................................15
7.4.2 Automatic Mode...........................................................................................................16
7.4.3 Manual Mode...............................................................................................................17
7.4.4 Hint on Method ............................................................................................................17
7.4.5 Auto-Matching of Densities and Viscosities ................................................................19
7.4.6 AutoMatching Viscosities ............................................................................................20
7.4.7 Splitting/Profilling Last Pseudo....................................................................................20
7.4.8 Original Numbers Store...............................................................................................22
7.4.9 Advanced Splitting Dialog ...........................................................................................22
7.4.10 Split Profiles.................................................................................................................23
7.4.11 COPYING A SPLIT......................................................................................................26
7.4.12 Split Profile Dialog .......................................................................................................26
7.4.13 COPYING A PROFILE ................................................................................................28

7.5 Binary Interaction Coefficients...............................................................................................29

7.6 Grouping and Properties Information ....................................................................................30


7.6.1 Control Buttons............................................................................................................32
7.6.2 OmegaA and OmegaB ................................................................................................34
7.6.3 Plotting Component Properties ...................................................................................36

7.7 Grouping................................................................................................................................37

7.8 Reference Data .....................................................................................................................39

PETROLEUM EXPERTS LTD


PVTP

7.9 Decontamination ...................................................................................................................40


7.9.1 Edit Mole Percents ......................................................................................................40
7.9.2 Decontamination Control Dialog..................................................................................41
7.9.2.1 Decontamination Mode Selection Dialog ............................................................44
7.9.2.2 Decontamination Quick Look Dialog ...................................................................44
7.9.2.3 Decontamination Pseudos Dialog .......................................................................46

7.10 Match Data ............................................................................................................................47


7.10.1 Matching on Mixture Critical Temperature ..................................................................50

7.11 Regression ............................................................................................................................52


7.11.1 Regression Parameter Selection Dialog .....................................................................55
7.11.2 Volume Shift ................................................................................................................57
7.11.3 Control Buttons............................................................................................................57
7.11.4 Mouse Shortcuts..........................................................................................................58
7.11.5 Separator.....................................................................................................................58
7.11.6 What Properties to Use in Regression ........................................................................59
7.11.7 Matching Viscosity.......................................................................................................59
7.11.8 Regression With Solids ...............................................................................................63
7.11.9 Model Selection ...........................................................................................................65
7.11.10 Notes on Regression...................................................................................................65
7.11.11 Regression with OmegaA and OmegaB .....................................................................66

7.12 Plot Test Points .....................................................................................................................67

8 Calculation EoS ...........................................................................................................................1


8.1 Critical Point Calculation .........................................................................................................2

8.2 Phase Envelope ......................................................................................................................3

8.3 Ranged Saturation Pressure ...................................................................................................7

8.4 Constant Composition Expansion (CCE) ................................................................................9


8.4.1 The Calculation Display...............................................................................................13
8.4.2 The Analysis Display ...................................................................................................15
8.4.3 The Copy to Clipboard Dialog .....................................................................................17

8.5 Constant Volume Depletion(CVD) ........................................................................................18

8.6 Depletion Study(DEPL) .........................................................................................................21

8.7 Differential Expansion(DIFF) .................................................................................................24

8.8 Composite Differential Expansion(COMPOS).......................................................................27

8.9 Separator Process.................................................................................................................29

8.10 Compositional Gradient.........................................................................................................34


8.10.1 Calculation Results Display.........................................................................................38

8.11 Swelling Test .........................................................................................................................39

8.12 Slim-tube Simulation .............................................................................................................41


8.12.1 Slim-tube Input dialog..................................................................................................42
8.12.2 Slim-tube cell data dialog ............................................................................................46
8.12.3 Slim-tube cell data dialog ............................................................................................47
8.12.4 Slim-tube time steps dialog .........................................................................................48
8.12.5 Slim-tube calculations dialog.......................................................................................49

PETROLEUM EXPERTS LTD


PVTP

8.12.6 Slim-tube analysis dialog.............................................................................................51


8.12.7 Slim-tube cell detail dialog...........................................................................................52

8.13 Quick Calculation Control Button ..........................................................................................53


8.13.1 Small Separator Calculation Dialog.............................................................................55

9 Calculation of Solids...................................................................................................................1
9.1 Wax Amount Calculation .........................................................................................................1
9.1.1 The Analysis Display .....................................................................................................4

9.2 Wax Appearance Temperature ...............................................................................................5

9.3 Hydrate Formation Pressure ...................................................................................................8


9.3.1 Calculations Dialog......................................................................................................12

9.4 Hydrate Minimum Inhibitor Concentration.............................................................................12

10 Reporting......................................................................................................................................1
10.1 Setting Up the Reporting System ............................................................................................1

10.2 Reports ....................................................................................................................................1

10.3 Template Editor Commands....................................................................................................4

11 Plotting 1
11.1 The Plot Display ......................................................................................................................1
11.1.1 Manipulating Streams....................................................................................................1
11.1.2 Manipulating Curves......................................................................................................2
11.1.3 The Plot Menu and Toolbar...........................................................................................5

11.2 Plot Menu Options...................................................................................................................7


11.2.1 File.................................................................................................................................7
11.2.2 Display...........................................................................................................................8
11.2.3 Output............................................................................................................................9

11.3 The Toolbar Options..............................................................................................................10

12 Utilities 1
12.1 API/Density Calculator ............................................................................................................1

12.2 Mass Balance Calculator.........................................................................................................2

12.3 Enthalpy Balance Calculator ...................................................................................................4


12.3.1 Single Point Enthalpy Balance ......................................................................................4
12.3.2 Multiple Point Enthalpy Balance....................................................................................5

12.4 Hoffmann Quality Plot .............................................................................................................7

13 User Databases ...........................................................................................................................1


13.1 Creating a User Database.......................................................................................................2

13.2 Selecting a User Database Directory ......................................................................................3

13.3 Editing a User Database .........................................................................................................4

PETROLEUM EXPERTS LTD


PVTP

13.4 Importing into User Database..................................................................................................6

14 Preferences ..................................................................................................................................1
14.1 Adjusting the Equation of State Calculation Tolerences .........................................................2

Appendix A - Worked Examples .......................................................................................................1


A1 Example 1 - EOS calibration of oil sample using PVTP..........................................................1
A1.1 Step-by-step approach to building an EOS model in PVTP..........................................3
A1.2 Step-by-step approach to Calibrating an EOS model in PVTP...................................14
A1.3 Using PVTP to generate Tables for other applications ...............................................23

A2 Example 2 - EOS calibration of a Condensate Sample using PVTP ....................................30


A2.1 Step-by-step approach to building an EOS model in PVTP........................................33
A2.2 Calibrating an the EOS model in PVTP ......................................................................37
A2.3 Checking results of the calibrated model against lab data..........................................40
A2.4 Simulating PVT Experiments in PVTP ........................................................................42

A3 Example 3 – Estimating Decontaminated sample properties of an contaminated Oil Sample


using PVTP......................................................................................................................................47
A3.1 Step-by-step approach to decontamination in PVTP ..................................................50

Appendix B Step by Step Guide .......................................................................................................1


B1 List of Steps.............................................................................................................................1
B1.1 Step 1: Create a New File .............................................................................................2
B1.2 Step 2: Select Equation of State Options......................................................................3
B1.3 Step 3: Select Components...........................................................................................4
B1.4 Step 4: Enter Composition ............................................................................................6

B2 Sample PVT Report Composition ...........................................................................................8


B2.1 Step 5: Initialise the Pseudo Component Properties.....................................................9
B2.2 Step 6: Match the Surface Volumetric Properties (Density, GOR etc.) using the
Automatch feature .......................................................................................................................11
B2.3 Step 7: Use Pseudo-Splitting or BI Coefficients to get near Reservoir Saturation
Pressure Value............................................................................................................................13
B2.3.1 Strategy for Achieving Saturation Pressure ........................................................15
B2.3.2 Using BI Coefficients ...........................................................................................18
B2.3.3 Using Pseudo Splitting ........................................................................................20
B2.4 Step 8: Select Match Parameters................................................................................22
B2.4.1 How is Match Data entered? ...............................................................................23
B2.5 Step 9: Use Regression to Match Fluid.......................................................................27
B2.6 Step 10: Check and Refine the Fluid Characterisation ...............................................29
B2.7 Step 11: Calculate, Report and Export........................................................................30

Appendix C Decontamination Procedure ........................................................................................1

PETROLEUM EXPERTS LTD


PVTP

Appendix D PVTP OPEN SERVER Manual...........................................................................................1


D1 Introduction..............................................................................................................................1
D1.1 About This Guide...........................................................................................................1
D1.2 What is in this guide ......................................................................................................1
D1.3 How To Use This Guide ................................................................................................2
D1.4 Symbols and Conventions.............................................................................................2

D2 Overview..................................................................................................................................3
D2.1 Basic Functions .............................................................................................................3
D2.2 GetValue........................................................................................................................3
D2.3 SetValue ........................................................................................................................3
D2.4 DoCommand .................................................................................................................3
D2.5 Calling the Functions.....................................................................................................4
D2.6 Automation ....................................................................................................................4
D2.7 Batch File.......................................................................................................................4

D3 Potential Uses .........................................................................................................................5


D3.1 Batch Runs ....................................................................................................................5
D3.2 Custom Reporting..........................................................................................................5
D3.3 Data Import/Export ........................................................................................................6
D3.4 Enhanced Prediction Runs in GAP ...............................................................................6
D3.5 Running PETEX programs with other engineering software applications.....................6

D4 Support ....................................................................................................................................7

D5 Using the OPENSERVER ...........................................................................................................8


D5.1 Variable Text Strings .....................................................................................................8
D5.2 Automation ....................................................................................................................9
D5.2.1 Example Macro....................................................................................................10
D5.2.2 Framework...........................................................................................................11
D5.2.3 DoCommand .......................................................................................................12
D5.2.4 SetValue ..............................................................................................................12
D5.2.5 DoCommandAsync..............................................................................................13
D5.2.6 GetValue..............................................................................................................13
D5.3 Batch File.....................................................................................................................15
D5.3.1 Running a Batch File ...........................................................................................15
D5.3.2 Formatting Commands........................................................................................16
D5.3.3 DoCommand .......................................................................................................16
D5.3.4 SetValue ..............................................................................................................16
D5.3.5 GetValue and GetValPrint ...................................................................................17

D6 PVTP and the OPENSERVER ..................................................................................................18


D6.1 OverView .....................................................................................................................18
D6.2 File and Streams .........................................................................................................19
D6.3 BLACKOIL ...................................................................................................................20
D6.4 OPTIONS ....................................................................................................................21
D6.5 STREAMBASE[stream no. or stream name] ..............................................................22
D6.6 STREAMRUN[stream no. or stream name] ................................................................25
D6.7 CALCUL[stream no. or stream name] .........................................................................27
D6.8 Carrying out Calculations and Obtaining Results........................................................31
D6.8.1 Analysis ...............................................................................................................33
D6.9 Flash Calculation .........................................................................................................34
D6.10 Small Separator Calculation........................................................................................34
D6.11 Saturation Pressure at Reference Calculation ............................................................36
D6.12 Recombination Calculations........................................................................................36
D6.13 Allocate: Blending to a target GOR .............................................................................37

PETROLEUM EXPERTS LTD


1 Introduction
Welcome to PVTP, Petroleum Experts Limited's advanced Pressure Volume and
Temperature analysis software. PVT can assist the production or reservoir engineer
predict the effect of process conditions on the composition of hydrocarbon
mixtures with accuracy and speed. The compositional behaviour of complex
mixtures including gas mixtures, gas condensates, retrograde condensates, volatile
oils and black oils can be interpreted and predicted with confidence.

The PVT package can be used as a stand-alone analytical tool, or can be used to
generate tables of fluid properties,reduced compositions or matched parameters
(Tc,P,ω Volume Shift Parameters and Binary Interaction Coefficients) for
2 -3 PVTP User Guide

◊ Input of Binary Interraction Coefficients using a variety of correlations.


◊ Automatic or manual component grouping

• Calculation and graphical display of Phase Envelopes for a user-selectable


range of vapour fractions
• Calculation of Saturation Pressure for complex mixtures at a single reference
presure or over a range of entered pressures
• Prediction of compositional changes based on the following

◊ Contant Composition Expansion


◊ Constant Volume Depletion
◊ Depletion Study
◊ Differential Expansion
◊ Composite Differential Expansion

• Full Lab Data Matching including the following options

◊ Match with all component Tcs, Pcs,Afs etc.


◊ Match using a global Omega A and Omega B
◊ Match using individual component Omega A and Omega B values
◊ Limiting on match property movement
◊ Matching on mixture critical temperature

• Prediction of the formation of Solids

◊ Wax Amount
◊ Wax Appearance Temperature
◊ Hydrate Formation Pressure
◊ Hydrate Minimum Inhibitor Concentration

• A series of Utilities which

◊ Convert between API and Density


◊ Perfom a Material Balance to Validate PVT Report Data
◊ Perform a single and multiple point enthalpy balance calculation
◊ Perform a Hoffman-type Quality Plot

• Prediction of Separator liquid and gas compositions over a wide range of


process conditions and feedstock compositions
• Prediction of composition changes with depth (composition gradient). Export
of gradient results to multi-pvt MBAL
• Eclipse Format Export (Black Oil and Compositional)

PETROLEUM EXPERTS
CHAPTER 1 - INTRODUCTION 3 -3

• Export and Import of Petroleum Experts standard *.prp format


• Swelling Tests with a second stream
• Slim-tube simulation
• Creation of a Stream to a Target GOR
• Creation of a Stream to a Target Saturation Pressure
• Alllocation of two streams to a target GOR

Measurement Units
A flexible system of units is provided. Data may be input using one set of units and
output using a second set of units.

Reporting
The PVT package provides a full range of user-configurable reports for Input data
and calculation results. Printing can be done in a range of fonts to any WINDOWS
supported printer

PVTP User Guide


2 Installation and Windows
Basics
This chapter explains how to install PVTP on your computer. The guide assumes
you have a working knowledge of Windows terms and procedures. If you are
unfamiliar with the Windows operating system, we recommend you read the
relevant sections in the Microsoft Windows User's Guide to learn more about
Windows operations.

This chapter gives instructions on installing the program to a Windows 98, 2000 or
Windows NT operating system.

2.1 Software and Hardware Requirements


The program supports all Windows-certified device drivers that are shipped with
Windows. The list of devices, software and hardware supported by Windows is
included with the documentation of your copy of Windows.

PVTP can be run as single User licence or on a Network. In either case, a special
security key is needed. The security key is called Bitlock for stand-alone licences
and Hardlock for network licences

The security key is provided by Petroleum Experts.

The minimum requirement recommended for PVTP is Pentium 450 MHz machine
with 128 Mbytes.

In order to install the software from the CD, the machine should have access to a
CD drive.

For a stand-alone licence, a security key (Bitlock) provided by Petroleum Experts


must be attached to the parallel printer port of the PC before PVTP can be run.

For network installation, the security key (Hardlock) can be attached to any PC
communicating with the network.
You should refer to the separate installation procedure for network Hardlock sent
with the purchase of a Hardlock licence.

If PVTP has been installed for the first time on a machine, the Bitlock driver must be
installed on this machine in order to establish the link between the software and the
security key (Bitlock driver).

In order to install the Bitlock driver, you will have to start from the main Windows
screen. Here you click on |Start |Programs |Petroleum Experts IPM |Utilities and
then start the “Set-up Bitlock Driver”.
2-8 PVTP User Guide

This will prompt the following screen.

From the screen above, you will have to run the |Functions |Install Sentinel Driver |
OK.

You might need to modify the path of the sentinel files.


You should ensure that you have the permission to install a driver.
Your IT manager can help you getting the required permission.

Petroleum Experts
Chapter 2 - Installation and Windows Basics 3-8

2.1.1 Upgrading from a Previous Version


For convenience in running linked models, Petroleum Experts software products
now installs by default into a common sub-directory \Program Files \Petroleum
Experts\IPM X.Y.

If you wish to keep an original version of the program, back it up into another
directory before installing the upgrade.

All program upgrades are backward compatible. This ensures that data files
created with earlier versions of the program can still be read by later
program versions. However, if you save a data file with the new version,
that file can no longer be opened by earlier versions! As with all new
software installations, always back up your PVTP files.

2.2 Installing PVTP


Before installing the program on your computer, you should first determine:

• The drive where the program is to be installed


• The amount of space available on the selected drive
• When installing on a network, verify you have the necessary access rights to
create directories and files on the designated volume.

What Set-up does


The installation procedure:

• Creates a program directory on your hard disk.


• Creates a sample files sub directory on your hard disk.
• Unpacks the PVTP program and related files to the selected drive and
directory.
• Creates a program initialisation file PROSPER.INI in your Windows directory.
• Creates a new Windows program group and icon for both PVTP and
REMOTE.

If you are updating PVTP, the set-up can be used to modify, repair or remove
components of the IPM suite. In this case, follow the online instructions

To avoid potential system resources conflicts, please shut down other


applications before running SETUP. Some anti-Virus programs can
interfere with the installation process and may need to be shut down.

PVTP User Guide


4-8 PVTP User Guide

2.2.1 Running Setup


To install the PVTP program:
1. Insert the program installation CD in the correct drive.
2. From the main screen of Windows, click on |Start |Run and follow the
online instructions.

The option “Repair” is recommended.

2.2.2 The PROSPER.INI file


The PROSPER initialisation file contains the settings you use to customise the PVTP
application environment. Settings such as the program data directory, customised
units system, last file accessed and the colour settings of your screen graphics are
all stored in this file. You do not need to manually modify the PROSPER.INI file.
The program will automatically record any changes to the settings.

PVTP automatically creates the PROSPER.INI file in the Windows default directory
using the program's default settings. The location of this file is defined by this entry
in your WIN.INI file:

[PETROLEUM EXPERTS]
IniPath=PROSPER.INI

We do not recommend changing the location of the PROSPER.INI file. If however,


you want to do so for specific reasons (to place it on a specific network drive), take
the following steps:

1. First copy the existing PROSPER.INI file to the required directory. For
example:

COPY C:\WINDOWS\PROSPER.INI
U:\NETWORK\APPS\PVTP\PROSPER.INI

2. Next amend the 'IniPath' entry in WIN.INI to correspond to the new


directory and path where the PROSPER.INI is now located. e.g.:
IniPath=U:\NETWORK\APPS\PVTP\PROSPER.INI

During the installation PVTP unpacks a number of files onto your computer in the
specified installation directory. The unpacked files should not be modified, removed
or moved to another directory.

Petroleum Experts
Chapter 2 - Installation and Windows Basics 5-8

2.3 Starting PVTP

Before starting the program, make sure the software protection Bitlock (dongle) is
connected to your PC and that the Bitlock Driver has been installed.

2.3.1 Connecting The Software Protection Bitlock


The software protection Bitlock must be attached to the PARALLEL printer port. Do Not
connect the Bitlock to a serial port, as this can damage the Bitlock or your PC. If you are
using protection Bitlocks for other software, we do not recommend stacking the Bitlocks.
We suggest using only the correct Bitlock with the appropriate software. Stacking Bitlocks
may lead to incompatibilities between Bitlocks, and may cause read/write or access errors
with some Bitlocks.

2.3.2 Creating the PVTP Icon

The PVTP icon should appear automatically in the correct folder under the
Programs menu after installation.
If this does not happen, invoke the Start menu and select Settings | Taskbar.
Select the Start Menu Programs tab and click on Add to add the PVTP program to
the menu. Follow the instructions on the screen.
To start the program subsequently, select the PVTP program from the programs
menu of the Start menu.

It is also possible to create a shortcut to PVTP on the main Windows desktop. To


do this, click the right hand mouse button anywhere within the desktop and select
New | Shortcut from the resulting popup menu. Follow the instructions on the
screen to create the shortcut to PVTP.EXE.
PVTP can then be executed by double-clicking on the shortcut icon.

PVTP User Guide


6-8 PVTP User Guide

2.4 REMOTE Software Utility

All Petroleum Experts' software requires a software protection device to allow it run.
The utility program REMOTE.EXE provided with our software allows you to access
the software protection device to view information such as the enabled program
options, program expiry date(s), and Bitlock number.

You may have been sent an inactive software device. For security, authorisation
codes are always sent separately to the Bitlock. On receiving the software
package, we ask that you contact us to confirm reception. We will then verify the
user access code programmed on your Bitlock, and issue a set of codes to activate
the Bitlock. In these situations, the necessary codes will be sent to you by
facsimile, letter or email.

To enter the codes, you will need to run the REMOTE application installed with
PVTP (see next section for more details).
You can also create a shortcut to the Remote application from the Windows
desktop.
For this, click on |New |Short cut anywhere on the Windows screen and follow the
online instruction. The program file is called REMOTE.EXE.

2.4.1 Entering the User Authorisation Code


You enter user authorisation codes only if:

• The software protection Bitlock you have received is inactive,


• Access period for the program has expired, or
• You have acquired new program options

To enter authorisation codes take the following steps:

Double click the REMOTE icon (or select the REMOTE program from the
Programs menu of Windows 98). A screen similar to the following will appear:

Petroleum Experts
Chapter 2 - Installation and Windows Basics 7-8

Figure 2.1:
REMOTE Software
Bitlock Utility

If your software protection Bitlock is already active, a list of enabled programs will
appear in the Remote screen as above. If PVTP has already been enabled, no
further action is needed. If this is the case, exit the Remote Utility program now.
No user authorisation code is required.

If the code has expired or has not been enabled, the Bitlock should be activated
with the set of codes provided by Petroleum Experts. To do so, you click on the
|Update button on the bottom of the previous screen and the following screen will
appear:
Figure 2.2:
Authorisation Codes Entry
screen

Enter the codes from Left to Right beginning with the top row (you may use <Tab>
to move between the items). Press |Continue to activate the codes. You will then
be returned to the 'Remote Software Bitlock Utility' screen. If you have received
authorisation codes for more than one program, click 'Update Software Bitlock'
again, and enter the codes for the next program.

PVTP User Guide


8-8 PVTP User Guide

2.4.2 Updating the Software Protection Bitlock


Access to the software ceases automatically when the license expiry date elapses.
You are, however, reminded several days in advance. This gives you sufficient
time to contact Petroleum Experts about new codes. Software Bitlocks require
updating when:

• The software license period has ended.


• The annual maintenance fee is due.

Software protection Bitlocks also needs updating when you acquire other
Petroleum Experts software packages. The procedure to update the Bitlock is the
same as for entering the authorisation codes. When the appropriate screen
appears, enter the codes provided - from left to right beginning with the top row.
Press OK to activate the codes, or Cancel to quit the update. To view the expiry
date for any of the listed programs, simply click (highlight) the software name.

Perpetual licence holders will be sent on yearly basis an utility program


written by Petroleum Experts, that automatically updates the Bitlock. The
update is hard-coded inside the utility program. step-by-step instructions are
sent with this utility program.

2.5 Program Check List

To ensure trouble free processing and access to the PVTP program, please check:

• You have sufficient disk space.

• The software protection Bitlock is connected to your Parallel printer port. Do


Not connect the Bitlock to the serial port, as this can damage the Bitlock or
your PC.

• The software protection Bitlock is firmly in place ensuring a good connection.


If the Bitlock is loose the program may not be able to access the dongle to
activate the program.

• The printer cable is firmly attached to the software Bitlock. Your printer should
be turned ON and be put on-line.

• The PC system date is set correctly to the current date (i.e. today's date).

• You back up your files on a regular basis with disk utility programs. This could
help to avoid the corruption of files, or help detect potential problems with your
hard disk before it is too late.

Petroleum Experts
3 File Management
This section describes the menus, options and procedures used in PVT to create new files
and open or save existing files. The Units system and how to define printer settings and is
outlined. The menus described in this section are the PVT File menu and Units menu.

The File menu provides the ability to open , close , save etc. The PVT package allows
multiple files to be opened at once. The Window Menu allows the user to swap between
opened files.

This menu offers the user the standard options available from an MDI (Multi Document
Interface)

The PVT package can load multiple PVT Project Files each of which occupies its own
window.
The windows can be selected ,cascaded,arranged and tiled via this menu.

Before you can work with a file, it must be opened. This can be done using the File menu
Open option or the icon.

To protect your work, you should save your data on a regular basis. Saving a file is done
using the File menu Save or Save As options. This simple procedure could potentially
prevent hours of work and analysis being lost.

To start a new PVT Project file use the File menu New option.

3.1 PVT File Types


PVT uses a flexible file structure that enables data to be easily exchanged between files
and other application programs. In PVT, information is grouped into the following
categories:

• PVT Project File


• Import
• Export
• Temporary
• Report

and saved into the following types of data file:


3-2 PVPT User Guide

3.2 PVT Data Files

3.2.1 PVT Project File (*.PVI )


This is the main type of PVT package file . The information file contains all the composition
input, matching and calculation data for multiple streams. When opened the main data
points are shown within the main PVT window.

3.2.2 Extract Data (*.PVI)


This file contains the results a particular set of calculations plus the composition which
produced it. The file is produced using the Extract option within the Analysis window or
from the View properties display. When opened the file behaves in the same way as the
original PVI file from which the data was extracted

3.2.3 PVT Import


This function is accessed by using the Import option from the File menu. The selection
dialog is shown in figure 3.0.

Figure 3.0:
Import File Type Dialog

PVI File Import.


This imports a stream from another PVTP *.PVI file. This option is explained in Streams -
Adding a Stream (Chapter 5)

ASCII File Import.


Two ACII file options are available by selecting from the combo box and clicking on the
Import from ASCII file:
The types are
1. Importing a *.PRP file.
This is the file type that is produced from the Proper compositional export and the various
compositional and compositional areas in the other PETEX programs. This feature allows
the user to take this file back inito PVTP and make a working stream with it. (see 3.1.4
Export PROSPER EoS for more details)

Petroleum Experts
Chapter 3 - File Management 3-3

2 Importing a *.EQL Data File


A working example of an import file is contained within the PVT\SAMPLES directory with
the file name example.eql.
With time it is anticipated that there will be several import types to choose from . At present
importing is limited to a text file with the following format :

line 1
No Data Read
line 2
No Data Read
line 3
Number Of Components n (including Pseudos) <tab> Number Of Pseudo Components
line 4
No Data Read
line 4,6,.......2n+3
Component name eg. C1, CO2, C11+ (note only one name per line). See note below for
names with *
line 5,7......2n+4
Component properties in the following order separated by tabs i.e.
mole % component <tab> Specific Gravity <tab> Boiling Point (deg C) <tab> Molecular
Weight <tab> Critical Temperature (deg C) <tab> Critical Pressure (atm) <tab > Acentric
Factor<tab> Critical Volume
Note: These values ,other than mole % , are not required at present for pure components
as they are overwritten by Petroleum Experts Database values. However, if you wish the values
to remain , add the character * to the end of the name . Example C1* within
EXAMPLE.EQL in the samples directory. All values are preferred for Pseudos. If no Boiling
Point or SG is present (shown by 0.00 value), the missing numbers will be calculated.
line 2n+5
No Data Read
line 2n+6
No Data Read
line 2n+7 .. end-1
Component Binary Interaction Coefficients in form:
component x number <tab> component y number <tab> BI Coefficient value
line end
the end of data is marked by three 1000s separated by tabs

Once the text file is imported via the file load dialog , the PVT file must be fully initialised
by
• Clicking on the Select Components option within the Data Menu then Clicking on OK
• When the Composition Input Screen loads press Properties to bring up the Pseudo
Screen i.e if pseudos are required.
• When the Pseudo Properties display loads , press OK to calculate any missing pseudo
values.
• Press OK on the Composition Input Screen when it reappears to return to the main
display
• Save the PVT file with the required name

WARNING : if pseudo properties are not set up as described


errors will occur eg. with density calculations

PVTP User Guide


3-4 PVPT User Guide

3.2.4 PVT Export Files

3.2.5 PROSPER EoS Composition (*.PRP)


PRP files contain the data required by the PVT section of Petroleum Experts PROSPER
program.

The file is produced using the Export option within View properties display or by using the
Export option from the File menu.
Select Type 1 – PROSPER EoS Composition from the Export Types Dialog Screen
(Figure 3.1)

Figure 3.1:
Export File Type Dialog

Only a limited subset of the data normally associated with a PVT file is required by
PROSPER VIZ.

∗ Equation Type (SRK or Peng Robinson)


∗ Property Names and Units
∗ Composition (mole %) for each component
∗ Critical Temperature for each component
∗ Critical Pressure for each component
∗ Critical Volume for each component
∗ Acentric Factor for each component
∗ Molecular Weight for each component
∗ Specific Gravity for each component
∗ Volume Shift S Factor
∗ Parachor for each component
∗ OmegaA value for each component
∗ OmegaB value for each component
∗ Binary Interaction Coefficients for all component
combinations
∗ Separator Temperatures and Pressures are included if any have
been used to correct fluid GOR and FVF.

Petroleum Experts
Chapter 3 - File Management 3-5

Note: All the values exported are in field units.

3.2.6 PROSPER Hydrate Formation (*.PHY)


PHY files contain a table of temperatures and hydrate formation pressures. After
calculation the export is available from the Calculation Results dialog or from the Export
Type dialog.

3.2.7 General Data Export (*.PVE)


PVE files are files produced by the PVT General Export Function.
The ASCII text file is produced using the Export option within View properties display or
using the Export Option from the File Menu
Select Type 2 - Petex General from the Export Types Dialog Screen (figure 3.1)
The Selection screens which follow give the user the choice of exporting any combination
of :
∗ PVT Options
∗ Primary Input Composition and BI Coefficients.
∗ Grouped/Matched Composition and BI Coefficients.
∗ Reference Data
∗ Calculations

The Calculation columns to be exported can be individually selected using the Column
Setup dialog. The data exported can be delimited by tabs or commas or alternatively saved
in a fixed-column-size format. Deselecting the saving of column headings and Keywords
will produce a file containing only numeric data. If headings are required, a comment
marker of your choice can be added to give the importing program a marker to search for.

The General Export Display is shown in figure 3.2.

Figure 3.2
Export File
Dialog

PVTP User Guide


3-6 PVPT User Guide

The dialog gives the user great flexibility in what should be exported and in what format.
The export is to an ASCII file with a default extension of .PVE
For each section of Input Data or results a check-box allows the user to switch on or off its
export .

The available sections are:

Input Data
Included are all the entries made on the PVT Options screen i.e. Method, Analyst, Well etc.

Input Composition
This is component concentrations and properties of the mixture prior to any grouping or
regression exported in tabular form. The currently selected Stream will be exported at this
point.

BI Coefficients.
The initial values for Binary Interaction Coefficients are exported in a symmetrical table.

Grouped/Matched Composition
This is component concentrations and properties of the mixture after Grouping or
Regression exported in tabular form.

Grouped/Matched BI Coefficients.
The Grouped/Matched values for Binary Interaction Coefficients are exported in a
symmetrical table.

Reference Data
This option will export the Reference Temperature, Pressure and depth.

Calculations
When the dialog is loaded, the listbox within this section displays all the calculations which
may be exported.
A checkbox allows all calculation exporting to be switched on or off.
Highlighted Calculation names will be exported. Clicking on the calculation name within the
listbox will select or de-select the item.
The variables within each calculation can be individually selected using the Layout option.

Delimiting
The data exported can be delimited by tabs or commas or alternatively saved in a fixed-
column-size format. Enter the column width in the edit box if the fixed-column-size option
is required.

Headings and Comments


Deselecting the saving of column headings and Keywords will produce a file containing
only numeric data. If headings are required a comment marker of your choice can be
added to give the importing program a marker to search for. Erasing the comment marker
editbox contents will give headings without an added character.

When all the selections have been made click on the Export control button to bring up the
file save dialog. A file extension of .PVE is taken as default, but any legitimate file name
can be used.

Petroleum Experts
Chapter 3 - File Management 3-7

Layout
The Layout screen (shown in figure 3.3) is the same as used in all the calculations (chapter
8 ).Each selected calculation will be shown as a separate dilaogue within which individual
values can be selected.

Figure 3.3
Column
Setup
Dialog

To select or de-select a value click on the checkbox beside its name.

To remove all selections for a particular calculation click on the Hide All button.

To export all columns click on the All button above the listbox.

When all column selections have been made click on OK .

Clicking on Cancel will shut down the display , ignoring any selections which have been
made.

PVTP User Guide


3-8 PVPT User Guide

3.2.8 Black Oil Tables (*.PTB)


PTB files are files which contain the data in a form which can be imported into the
PVT/BlackOil/Tables section of Petroleum Experts PROSPER program. The format is fairly
general and could be used for other packages.
An ASCII text file is produced by this procedure. The process is carried out using the
Export option within View properties display or using the Export Option from the File Menu

Select Type 3 -Black Oil Table from the Export Types Dialog Screen (figure 3.1)

The Selection screens which follow give the user the choice of exporting any combination
of the following Black Oil related variables:

∗ Pressure
∗ Gas to Oil Ratio(GOR)
∗ Oil FVF
∗ Oil Viscosity
∗ Oil Density
∗ Oil Z Factor
∗ Gas FVF
∗ Gas Viscosity
∗ Gas Z Factor
∗ Gas Density
∗ Condensate to Gas Ratio (CGR)
∗ Vapour CGR
∗ Water viscosity
∗ Water Z Factor

A typical dialog is shown in figure 1.2a.

Note :
The column values can be calculated for each pressure entry. If the Saturation Pressure is
not included in the list within the table it is calculated and inserted when Export is selected.
The varables to be exported are selected using the list box on the right of the display. At
least one variable should be chosen. At the time of export the program checks if a selected
table has any valid data for the chosen columns. If none exists the table is ignored.

Selecting for MBAL/PROSPER

This feature has been added to assist in the transfer of the correct columns to MBAL's or
PROSPER's table import facility.

To use this option


Select the target program using the combo box provided
then select the type of fluid (defined in MBAL's or Proper's OPTIONS) using the radio
buttons
finally click on the Select button. This automatically sets the required variables for
export.

Petroleum Experts
Chapter 3 - File Management 3-9

Figure 3.2a
Black Oil Table
Export

The Calculations are set out in a series of 10 tables. Each table has a temperature and up
to 100 pressures.

All the table variables except water viscosity and water Z factor can be calculated
automatically from the minimum inputs of Temperature and Pressure.

The calculation ,which is carried out by pressing on Calc. Table or Calculate All , consists
of a Saturation Pressure estimation followed by a Constant Composition Expansion (CCE).
The values will be the same as those reported for the CCE option within the PVT package
Calculation menu. The saturation pressure is placed in the edit box at the top of the table.
The other values are placed within the table. All values can also be entered manually.
Water viscosity and water Z factor must be entered manually. Click in cell, enter the
required number and click away.

The tab section at the bottom of the display shows which tables have been fillTm(r 49 1093.6 35
3-10 PVPT User Guide

Separator Data
In common with the CCE calculation (Section 8.4) , the Table Export displays contains a
section for Separator Data. This allows the user to define a 5-stage separator train through
which the CCE liquid will be flashed to correct the Oil FVF and GOR. The processes which
are used to return an oil to standard conditions can significantly change the final oil
characteristics and the amount of gas liberated on the way.

All stages do not need to be entered and a last flash to standard conditions is always
included.

The Used checkbox within the separator data area switches the correction on and off. The
Setup button allows the stage characteristics to be changed by calling the dialog shown in
figure 3.2b.

Figure 3.2b
Black Oil Table
Export- Separator
Correction

The values within this separator data area are loaded and stored separately from those
within the Separator calculation. The SEP COPY button will copy the first five stages from
the Separator Calculation ( Section 8.8 ) into the Separator Data area.The CLEAR button
removes all values from within the Separator Data area. OK will reurn to the Export Table
dialog with any changes stored. Cancel will reurn to the Export Table dialog with any
changes ignored.

Export
When the data required has been entered and/or calculated, the variables selected can be
exported by clicking the Export button. This brings up a small dialog which allows the user
to select the table or tables to export (figure 3.2c).

Figure 3.2c
Black-Oil Table
Export-Table
Selection

Petroleum Experts
Chapter 3 - File Management 3-11

This dialog gives the user the ability to select one ,all, or a range of tables to export. If
Range of Tables is chosen the range required should be entered in the editboxes
provided.
Note: the program will ignore empty tables or any which are found not to contain data of
the required type.
When the tables have been chosen press Export to bring up the file selection dialog as
shown in figure 3.2d. The default file extension is .PTB

Figure 3.2d
Black Oil Table
Export- File Selection

For each section of Input Data or results a check-box allows the user to switch on or off its
export .

A typical export file is shown below:

*
* Petroleum Experts - PVT Black Oil Export File
*
*Version 2
*
* (BLANK LINES AND LINES WITH AN ASTERISK (*) IN COLUMN 1
* ARE IGNORED)
*

* The export of data is done always in Field units.


* The target program will adjust to the internally selected units.

* !!!!!!!!!!!!!!!!!! PVT FILE DETAILS !!!!!!!!!!!!!!


* PVT FILE NAME : C:\PVTp_Files\Samples\EXAMPLE2.PVI
* Exported :Tue Jul 01 14:19:39 2003
* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

* NUMBER OF TABLES (MAX 10)


2

* DATA COLUMN IDENTIFIERS


* - CAN BE IN ANY ORDER
* - COLUMNS CAN BE MISSING
* - ANY INDIVIDUAL ITEM > 3.4e35 = missing item
*
*
* PRES - Pressure
* GOR - Gas-Oil Ratio
* OFVF - oil Formation Volume Factor
* OVIS - oil Viscosity
* ODEN - oil Density
* OCOM - oil Compressibility
* GFVF - gas Formation Volume Factor
* GVIS - gas Viscosity

PVTP User Guide


3-12 PVPT User Guide
* WVIS - water Viscosity
* WCOM - water Compressibility
* ZFAC - Z Factor
* GDEN - gas density
* CGR - produced cgr
* VCGR - vapour cgr
*
**************** VARIABLES EXPORTED ****************
PRES OFVF OVIS GFVF GVIS ZFAC GDEN CGR VCGR
****************************************************

******************* UNITS ****************


* The export of data is done always in Field units.
* The target program will adjust to the internally selected units.

****************************************************

************** Export Table 1 ****************

1 21 70 4490.57
500 1.13787 0.699174 0.0252837 0.0108915 0.868079 2.17787 148.782 3.400000e+035
789.474 1.22244 0.55446 0.014923 0.0116471 0.800518 3.68811 151.793 3.400000e+035
1078.95 1.31142 0.456367 0.0101252 0.0128806 0.73866 5.47799 152.467 3.400000e+035
1368.42 1.39859 0.394272 0.00743207 0.014841 0.685703 7.58863 150.099 3.400000e+035
1657.89 1.47358 0.364101 0.00579315 0.0177385 0.646356 9.99918 143.45 3.76617
1947.37 1.52807 0.359921 0.00478481 0.0214534 0.626247 12.5262 132.861 14.3192
2236.84 1.56846 0.365676 0.00417554 0.0254297 0.627132 14.8588 121.408 25.4102
2526.32 1.60913 0.364538 0.00379799 0.0292646 0.643766 16.8588 111.318 35.5421
2815.79 1.65796 0.35173 0.00354774 0.0329799 0.669854 18.5944 102.341 45.023
3105.26 1.71807 0.329493 0.00337164 0.0367708 0.701709 20.1707 93.4821 54.6198
3394.74 1.79231 0.301015 0.0032435 0.0408836 0.737671 21.6729 83.7343 65.0602
3684.21 1.88546 0.268651 0.00315005 0.0456414 0.777245 23.1717 71.9518 77.1187
3973.68 2.0069 0.233701 0.00308507 0.0515667 0.820783 24.7439 56.3175 91.9082
4263.16 2.17827 0.196255 0.00304809 0.0597585 0.869804 26.5117 32.736 111.641
4490.57 3.400000e+035 3.400000e+035 0.00304525 0.0698282 0.915189 28.2346 0 134.605
4552.63 3.400000e+035 3.400000e+035 0.0030363 0.070459 0.925069 28.3179 0 134.605
4842.11 3.400000e+035 3.400000e+035 0.00299696 0.0734068 0.970954 28.6896 0 134.605
5131.58 3.400000e+035 3.400000e+035 0.00296114 0.076366 1.01653 29.0367 0 134.605
5421.05 3.400000e+035 3.400000e+035 0.00292832 0.0793391 1.0618 29.3621 0 134.605
5710.53 3.400000e+035 3.400000e+035 0.00289809 0.0823277 1.10681 29.6683 0 134.605
6000 3.400000e+035 3.400000e+035 0.00287013 0.085333 1.15155 29.9573 0 134.605

************** Export Table 2 ****************

2 21 120 4762.12
500 1.12657 0.719748 0.0285219 0.0115443 0.894796 2.02053 131.338 0.102351
789.474 1.19068 0.577205 0.0172352 0.0121678 0.844809 3.32759 134.971 3.400000e+035
1078.95 1.25618 0.48944 0.0119973 0.0130866 0.799752 4.80777 135.006 1.03536
1368.42 1.32076 0.432725 0.00902924 0.0144248 0.761211 6.47108 132.485 5.17203
1657.89 1.38053 0.399021 0.00717403 0.0162841 0.731389 8.29879 127.648 11.2945
1947.37 1.43254 0.382002 0.00596006 0.018666 0.712786 10.2191 121.032 18.7737
2236.84 1.47799 0.372948 0.00515024 0.0214174 0.706809 12.1155 113.698 26.7604
2526.32 1.5219 0.362853 0.0045996 0.024329 0.712398 13.8959 106.523 34.6464
2815.79 1.56927 0.346985 0.00421313 0.0272862 0.726877 15.5395 99.6331 42.417
3105.26 1.62351 0.325005 0.00393186 0.0302933 0.747726 17.0746 92.644 50.4174
3394.74 1.68728 0.298432 0.00372095 0.0334323 0.773271 18.544 84.9954 59.0945
3684.21 1.76378 0.268955 0.00355996 0.0368422 0.802627 19.9931 76.0135 68.9484
3973.68 1.85801 0.237833 0.00343691 0.0407393 0.835526 21.4705 64.7643 80.6223
4263.16 1.97909 0.205749 0.00334538 0.0454958 0.872302 23.0392 49.6312 95.1359
4552.63 2.14687 0.17263 0.00328395 0.0518906 0.914226 24.8084 26.9905 114.544
4762.12 3.400000e+035 3.400000e+035 0.00326211 0.0586923 0.949802 26.3576 0 134.605
4842.11 3.400000e+035 3.400000e+035 0.00324696 0.0593548 0.961219 26.4806 0 134.605
5131.58 3.400000e+035 3.400000e+035 0.00319568 0.0617554 1.00242 26.9055 0 134.605
5421.05 3.400000e+035 3.400000e+035 0.00314931 0.0641632 1.04344 27.3017 0 134.605
5710.53 3.400000e+035 3.400000e+035 0.00310709 0.0665818 1.08428 27.6727 0 134.605
6000 3.400000e+035 3.400000e+035 0.00306844 0.0690137 1.12493 28.0213 0 134.605

------------------- oooooooooo -------------------

Petroleum Experts
Chapter 3 - File Management 3-13

The ASCII file contains many comments maked with * to help the user.
The IMPORT funtion ,however, requies the following information
◊ the number of tables to be read
◊ the variables exported PRES GOR etc.
◊ for each table :table number,number of entries,table temperature and saturation
pressure
◊ for each entry the variables selected separated by a space

Important Note on Units


The values transferred between the programs are done in field units Conversion to the user
unit is done on IMPORT.

Calc. Table and Calculate All


When Calculate All is selected, the saturation pressure and CCE calculation will be
carried out on all tables which contain a valid table temperature and on any table line with a
valid pressure. Calc. Table is done on the viewed table only

Clear Table and Clear All


When Clear All is selected, and the clear is confirmed all table data is removed.
Clear Table operates on the viewed table only.

Copy CCE
When Copy CCE is selected, and the copy is confirmed, all table data is removed. The
table temperatures and pressures are replaced by those from within the CCE calculation
user- defined input screen (section 8.4).

Clear
This option closes down the dialog and saves the values entered but does not evoke the
export to file.

3.2.9 MBAL MultiI-PVT Export (*.PGD)


PTG files are files which contain the data in a form which can be imported into the
PVT/Fluid Properties/Import section of Petroleum Experts MBAL program. The MBAL program
should have the tank model Variable PVT selected.
The format is fairly general and could be used for other packages.
An ASCII text file is produced by this procedure. The process is carried out using the
Export option within View properties display or using the Export Option from the File Menu.

The first stage in the export process is to calculate the Compositional gradient via a
variation of the Compositional Gradient Calculation Input Dialog (see figure 3.2e).

The only difference is a change of label on the button from Calc to Export.
Input the depths or range of depths required and press on Export.. This brings up the
Export dialog.

PVTP User Guide


3-14 PVPT User Guide

Figure 3.2e
MBAL
MultiPVT
Export

Click on Calc to fill in the table as shown in figure 3.2f.. The reference data used can be
changed using the edit boxes above the main table.
The program will calculate the compositional gradient for the selected depths.
When this has been completed,the program uses the compositions at each depth to make
up a black oil match table.for each depth.
The pressures used to define the Black Oil flashes are automatically selected with respect
to the saturation pressure.
5 pressures , including the saturation pressure are used. The data produced can be viewed
via the MBAL Match Data dialog.. This display is called by clicking on one of the Match
Data buttons in column 1.
The automatically-set pressures can be modified manually in this dialog and the Black Oil
properties re-calculated. The check box in column 2 indictes whether the pressures have
been modified.
When the data has been set click on Export to create the ASCII file.This action brings up
the file selection dialog as shown in figure 3.2d. The default file extension is .PGD

Petroleum Experts
Chapter 3 - File Management 3-15

Figure 3.2f
MBAL Export
File Selection

Analysis allows the user to view the compositions calculated for each depth. See Analysis
Dialog within the Calculations Chapter for more details.
The calculation results can be viewed graphically using the Plot option. See the Plot
Chapter for the options available within plots .
Click on Main to exit the dialog and return to the summary display.

Figure 3.2f
MultiPVt Export
Calculation

Important Note on Units


The values transferred between the programs are done in field units Conversion to the user
unit is done on IMPORT.

PVTP User Guide


3-16 PVPT User Guide

3.2.10 MBAL PVT with Depth - Black Oil Match Tables


This dialog is called by clicking on any of the MatchData buttons within the MBAL export
table (See figure 3.2f). A typical example is shown in figure 3.2g

Figure 3.2g
MultiPVt Black
Oil Match Table

The table is the result of 5 flashes on a composition at a particular depth. The aim is to
provide the data necessary for matching the Black Oil Model. The program automatically
selects the pressures as

1 0ne third of saturation pressure


2 Two thirds of saturation pressure
3 Saturation pressure
4 Seven sixths of saturation pressure
5 Four thirds of saturation pressure

The aim is to provide enough data to give the shape of the particuar Black Oil correlation
above and below the Saturation Pressure.
If the selected points are found to be unsuitable the values above and below can be
adjusted by:

a) Putting the table into Manual mode using the radio buttons provided
b) Entering new values for pressure in the white boxes within the table
c) Click on the Calc. Button

Exit will close the dialog and retain the values

Cancel will close the dialog with any changes ignored.

Plot allows the user to view the shape of th Black Oil curves .

Petroleum Experts
Chapter 3 - File Management 3-17

NOTE
Any recalculation of the underlying MBAL PVT with depth table will invalidate and remove
any manually entered pressures.

A typical export file is shown below:

*
* Petroleum Experts - MBAL PVT with Depth Export File
*
*
* (BLANK LINES AND LINES WITH AN ASTERISK (*) IN COLUMN 1
* ARE IGNORED)
* - ANY INDIVIDUAL ITEM VALUE > 3.4e35 = missing item
*
* UNITS for each data item are assumed to be whatever is the current
* setting at the time of export
*
*Export File Signature
PetexPGD
*Export File Version
1
*
* !!!!!!!!!!!!!!!!!! PVT FILE DETAILS !!!!!!!!!!!!!!
* PVT FILE NAME : C:\HAMID\AX.PVI
* Exported :Sun Feb 08 17:02:49 1998
* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

* DATA COLUMN IDENTIFIERS


*
*
* DPTH - Depth
* PRES - Pressure
* TEMP - Temperature
* PSAT - Bubble/Dew Point Pressure
* GOR - Gas-Oil Ratio
* OAPI - Oil Gravity
* GGRV - Gas Gravity
* WSAL - Water Salinity
* MH2S - Mole H2S
* MCO2 - Mole CO2
* MN2 - Mole 2
* OFVF - oil Formation Volume Factor
* GFVF - gas Formation Volume Factor
* OVIS - oil Viscosity
* GVIS - gas Viscosity
* ZLIQ - oil Compressibility
* ZVAP - gas Compressibility
* GFVF - gas Formation Volume Factor
* CGR - produced cgr
*
**************** DEPTH TABLE VARIABLES EXPORTED ****************
DPTH ,PRES ,TEMP ,PSAT ,GOR ,OAPI ,GGRV ,WSAL ,MH2S ,MC02 ,MN2 ,
****************************************************************

**************** MATCHDATA TABLE VARIABLES EXPORTED ****************


PRES ,GOR ,OFVF ,OVIS ,GVIS ,ZLIQ ,ZVAP ,GFVF ,CGR ,
********************************************************************

********************** UNITS *****************************

PVTP User Guide


3-18 PVPT User Guide
* Units Used in Depth Table Variables:-
*feet ,psig ,degrees F ,psig ,scf/STB ,API , , , , , , ,
* Units Used in MatchData Variables:-
*psig ,RB/STB ,centipoise ,centipoise , , ,ft3/scf ,bbls/MMscf ,
********************************************************************

********************** DATA *****************************


* NUMBER OF DEPTHS
7

* Reference Depth in feet


9369
* Reference Pressure in psig
3280
* Reservoir Temperature in degrees F
240
* Temperature Gradient in deg F/100 ft
1.8
*Data no 1 at Depth 8869 feet
8869 ,3220.42 ,231.003 ,2980.33 ,17528.4 ,59.6764 ,0.756737 ,0 ,1.234568e+038 ,1.234568e+038
,0.00906007 ,
* Number of MatchData Lines
5
993.433 ,396.508 ,1.34781 ,0.138438 ,0.0141965 ,0.334204 ,0.898412 ,0.0174201 ,53.706 ,
1986.9 ,1109.68 ,1.79818 ,0.0946761 ,0.0175569 ,0.552108 ,0.842573 ,0.00822854 ,42.6687 ,
2980.33 ,1.234568e+038 ,1.234568e+038 ,1.234568e+038 ,0.0254712 ,1.234568e+038 ,0.814226
,0.00531417 ,1.234568e+038 ,
3477.05 ,1.234568e+038 ,1.234568e+038 ,1.234568e+038 ,0.0286318 ,1.234568e+038 ,0.842439
,0.00471613 ,1.234568e+038 ,
3973.76 ,1.234568e+038 ,1.234568e+038 ,1.234568e+038 ,0.0316125 ,1.234568e+038 ,0.876937
,0.00429788 ,1.234568e+038 ,

*Data no 2 at Depth 9035.67 feet


9035.67 ,3237.14 ,234.002 ,3048.63 ,1.234568e+038 ,59.7848 ,0.763556 ,0 ,1.234568e+038
,1.234568e+038 ,0.00887868 ,
* Number of MatchData Lines
5
1016.2 ,409.348 ,1.36064 ,0.135219 ,0.0142724 ,0.33949 ,0.896489 ,0.0170727 ,62.0198 ,
2032.43 ,1155.64 ,1.83571 ,0.0916819 ,0.017834 ,0.560222 ,0.840694 ,0.00806241 ,50.1091 ,
3048.63 ,1.234568e+038 ,1.234568e+038 ,1.234568e+038 ,0.0266022 ,1.234568e+038 ,0.811896
,0.0052033 ,1.234568e+038 ,
3556.74 ,1.234568e+038 ,1.234568e+038 ,1.234568e+038 ,0.0299055 ,1.234568e+038 ,0.843699
,0.00463785 ,1.234568e+038 ,
4064.83 ,1.234568e+038 ,1.234568e+038 ,1.234568e+038 ,0.0329984 ,1.234568e+038 ,0.881508
,0.00424217 ,1.234568e+038 ,

*Data no 3 at Depth 9202.33 feet


9202.33 ,3254.66 ,237.001 ,3130.92 ,13072.7 ,59.9214 ,0.772361 ,0 ,1.234568e+038
,1.234568e+038 ,0.00863199 ,
* Number of MatchData Lines
5
1043.63 ,426.478 ,1.37682 ,0.131639 ,0.0143599 ,0.345723 ,0.893948 ,0.0166547 ,74.6633 ,
2087.29 ,1216.41 ,1.88403 ,0.0883227 ,0.0181829 ,0.569793 ,0.838169 ,0.00786225 ,61.9258 ,
3130.92 ,1.234568e+038 ,1.234568e+038 ,1.234568e+038 ,0.0282337 ,1.234568e+038 ,0.808286
,0.00506646 ,1.234568e+038 ,
3652.75 ,1.234568e+038 ,1.234568e+038 ,1.234568e+038 ,0.0317214 ,1.234568e+038 ,0.845046
,0.00454321 ,1.234568e+038 ,
4174.56 ,1.234568e+038 ,1.234568e+038 ,1.234568e+038 ,0.0349646 ,1.234568e+038 ,0.887356
,0.00417645 ,1.234568e+038 ,

*Data no 4 at Depth 9369 feet


9369 ,3280 ,240 ,3279.88 ,4316.35 ,60.7132 ,0.834684 ,0 ,1.234568e+038 ,1.234568e+038 ,0.0065
,

Petroleum Experts
Chapter 3 - File Management 3-19

* Number of MatchData Lines


5
1093.28 ,483.188 ,1.42496 ,0.124293 ,0.0144985 ,0.354491 ,0.884976 ,0.0158165 ,273.857 ,
2186.6 ,1358.06 ,1.99025 ,0.0827284 ,0.0188862 ,0.585908 ,0.831526 ,0.00748011 ,316.012 ,
3279.88 ,4316.35 ,4.11191 ,0.0464585 ,1.234568e+038 ,0.76052 ,1.234568e+038 ,1.234568e+038
,1.234568e+038 ,
3826.53 ,4316.35 ,3.87211 ,0.0513914 ,1.234568e+038 ,0.834998 ,1.234568e+038
,1.234568e+038 ,1.234568e+038 ,
4373.17 ,4316.35 ,3.69423 ,0.0561634 ,1.234568e+038 ,0.910005 ,1.234568e+038
,1.234568e+038 ,1.234568e+038 ,

*Data no 5 at Depth 9535.67 feet


9535.67 ,3306.98 ,242.999 ,3168.36 ,3380.86 ,60.8218 ,0.847811 ,0 ,1.234568e+038
,1.234568e+038 ,0.00597958 ,
* Number of MatchData Lines
5
1056.11 ,455.891 ,1.41045 ,0.125053 ,0.0144333 ,0.345564 ,0.888033 ,0.0164925 ,360.764 ,
2112.25 ,1249.86 ,1.9233 ,0.085132 ,0.0184277 ,0.574194 ,0.83661 ,0.00782229 ,453.442 ,
3168.36 ,3380.86 ,3.40831 ,0.0518623 ,1.234568e+038 ,0.743622 ,1.234568e+038
,1.234568e+038 ,1.234568e+038 ,
3696.42 ,3380.86 ,3.23817 ,0.0571572 ,1.234568e+038 ,0.823709 ,1.234568e+038
,1.234568e+038 ,1.234568e+038 ,
4224.47 ,3380.86 ,3.10936 ,0.0623314 ,1.234568e+038 ,0.903482 ,1.234568e+038
,1.234568e+038 ,1.234568e+038 ,

*Data no 6 at Depth 9702.33 feet


9702.33 ,3336.35 ,245.998 ,3100.22 ,3017.7 ,60.8607 ,0.853655 ,0 ,1.234568e+038
,1.234568e+038 ,0.00574032 ,
* Number of MatchData Lines
5
1033.4 ,437.28 ,1.40159 ,0.125082 ,0.0144059 ,0.340151 ,0.890203 ,0.0169632 ,408.444 ,
2066.82 ,1185.27 ,1.88612 ,0.0862731 ,0.0181776 ,0.567039 ,0.84003 ,0.00805995 ,532.838 ,
3100.22 ,3017.7 ,3.1531 ,0.0543352 ,1.234568e+038 ,0.734882 ,1.234568e+038 ,1.234568e+038
,1.234568e+038 ,
3616.92 ,3017.7 ,3.00609 ,0.0597755 ,1.234568e+038 ,0.816837 ,1.234568e+038 ,1.234568e+038
,1.234568e+038 ,
4133.61 ,3017.7 ,2.89377 ,0.0651067 ,1.234568e+038 ,0.898189 ,1.234568e+038 ,1.234568e+038
,1.234568e+038 ,

*Data no 7 at Depth 9869 feet


9869 ,3366.84 ,248.997 ,3045.5 ,2779.84 ,60.884 ,0.857745 ,0 ,1.234568e+038 ,1.234568e+038
,0.00556968 ,
* Number of MatchData Lines
5
1015.16 ,421.808 ,1.39481 ,0.124852 ,0.0143902 ,0.335786 ,0.892026 ,0.0173724 ,445.867 ,
2030.35 ,1134.7 ,1.85835 ,0.0870026 ,0.0179929 ,0.561257 ,0.84289 ,0.00826661 ,596.749 ,
3045.5 ,2779.84 ,2.99245 ,0.0560421 ,1.234568e+038 ,0.728205 ,1.234568e+038 ,1.234568e+038
,1.234568e+038 ,
3553.09 ,2779.84 ,2.85924 ,0.0615715 ,1.234568e+038 ,0.811196 ,1.234568e+038
,1.234568e+038 ,1.234568e+038 ,
4060.66 ,2779.84 ,2.75683 ,0.0669972 ,1.234568e+038 ,0.893412 ,1.234568e+038
,1.234568e+038 ,1.234568e+038 ,

********************** END *****************************

PVTP User Guide


3-20 PVPT User Guide

3.2.11 MBAL Variable Bubble Point(Oil) Export (*.PVB)


PVB files are files which contain the data in a form which can be imported into the
PVT/Fluid Properties/Import section of Petroleum Experts MBAL program.
PVB files are files which contain the data in a form which can be imported into the
PVT/Fluid Properties/Import section of Petroleum Experts MBAL program. The MBAL program
should have the tank model Variable PVT selected.
The format is fairly general and could be used for other packages.
An ASCII text file is produced by this procedure. The process is carried out using the
Export option within View properties display or using the Export Option from the File Menu.

This display is initiated by selecting the Type 5 -MBAL Variable Bubble Pt. (Oil) option
from the Export Types Dialog Screen.
The objective is to provide a full black oil map for reinjecting gas into a dead oil to provide a
range of fluids with differing Bubble Points.
The dialog is split into 2 fluid types

3.2.12 Saturated
These tables represent the oils properties at various saturation pressures. Data entry can
be done for any of five temperatures.
If the table pressure is below the oils uninjected bubble point a straightforward CCE
calculation is done to the table temperature and pressure. The oils black oil properties are
then calculated and reported.
If the pressure is above the uninjected bubble point the following procedure is undertaken
by the program:
The oil is flahed to standard conditions to calculate a dead oil and associated gas
composition
The dead oil composition is mixed with a range of proportions of gas to get a curve of
addition amount versus bubble point.
The required amount of injected gas to achieve the input pressure is estimated.
The estimated gas fraction is mixed with the dead oil and this combination is taken through
a CCE to get the fluid's blackoil properties. The fraction of gas used is reported within the
Analysis Dialog.

3.2.13 Undersaturated
These tables represent the oils properties at pressures above the saturation pressure. For
any of five temperatures.,there are five bubble points. Theses bubble points represent
different mixtures of dead oil and gas. The procedure followed to achive these saturation
pressure matching compositions is very similar to that outlined for the SATURATED
table.Once the composition is determined this fluid is flashed at the table temperature and
the range of input pressures to caculate the oils density ,viscosity and FVF.

The data entry for the dialog is available in two forms i.e Automatic and User Selected.
A typical Automatic display is shown in figure 3.2h.

The table temperature is entered via the edit box provided. A set of radio buttons in the top
right of the display allows the user to move between the five saturated tables.Table
temperatures must be different.
The labelled TABS allow selection between displaying the Saturated and Under saturated
data.
In automatic mode the user can enter an individual pressure range for each temperature. If
the entries are to be repeated the Copy Pressures,Paste and Paste All buttons can be

Petroleum Experts
Chapter 3 - File Management 3-21

used to make the data entry easier. The Copy Pressures stores the pressure range
entered. The Paste button will overwrite the current table entries with the stored values.
The Paste All feature will overwrite all pressure ranges whether saturated or
undersaturated with the stored values. If any of the pressure entries contradicts the other
defined variables i.e. an undersaturated PSAT the user will be informed and the values
adjusted.

Figure 3.2h
MBAL Variable
PB Input Dialog

Clicking on the User Selected radio button changes the display one similar to that in figure
3.2i.

PVTP User Guide


3-22 PVPT User Guide

The user can now enter up to 50 individual pressures for each temperature.
Every SATURATED table must have at least one associated UNDERSATURATED entry.
Clicking on the Under saturated TAB brings up a display like that in figure 3.2j in User
Selected mode:

Figure 3.2i
MBAL Variable
PB Input Dialog

The associated Saturation Table Temperature is displayed. For this temperature up to five
Bubble Points can be defined. For each Bubble Point the program will create a fluid of
dead oil and injected gas. This composition will then be flashed to all the pressures
defined. The required Saturation Pressure is entered using the editbox provided. The user
can move between the five under saturated tables by way of the 5 radio buttons in the top
right corner. The pressure entries must be equal to or above the PSAT defined for the
table. As with the saturated tables all the pressure entries are independent of each other. A
similar automatic mode entry is provided.

Petroleum Experts
Chapter 3 - File Management 3-23

Figure 3.2j
MBAL Variable
PB Input Dialog

Separator Data
The display contains a section for Separator Data. This allows the user to define a
separator train through which the CCE liquid will be flashed to correct the Oil FVF and
GOR. The processes which are used to return an oil to standard conditions can
significantly change the final oil characteristics and the amount of gas liberated on the way.
All stages do not need to be entered and a last flash to standard conditions is always
included.

The checkbox within the separator data area switches the correction on and off.
The values within this separator data area are loaded and stored separately from those
within the Separator calculation. The SEP COPY button will copy the first five stages from
the Separator Calculation into the Separator Data area.The CLEAR button removes all
values from within the Separator Data area.
Once a range of entries have been made for the Saturated and Undersaturated table have
been made proceed to the Calculation and Export Dialog.

PVTP User Guide


3-24 PVPT User Guide

To bring up the Calculation and Export Dialog click on the Calc control button.

Exit stores the entries made and returns to Summary Screen

Cancel will clear all entries and return the user to the Summary Screen

Clear removes a table or all table entries.

Volume Shift
A volume shift control panel is proved to allow the user to setup and to switch on and off
this feature prior to calculation . See Volume Shift and Volume Shift Setup help for more
details.

Petroleum Experts
Chapter 3 - File Management 3-25

3.3 MBAL Variable Bpt. Calculation Dialog


This display is initiated by selecting the Calc option from the Export MBAL Variable
Bubble Point display.
A typical starting display would be:

Figure 3.2k
MBAL Variable
PB Calculation
Dialog

Clicking on the TABS allows the user to move between the Saturated and Undersaturated
results tables.

Click on Calc to fill in the calculated properties for all tables.

PVTP User Guide


3-26 PVPT User Guide

The display becomes:

Figure 3.2l
MBAL Variable
PB Calculation
Dialog

When the data has been set click on Export to create the ASCII file.

Petroleum Experts
Chapter 3 - File Management 3-27

Analysis allows the user to view the compositions calculated for each combination of P
and T. See Analysis Dialog help for more details.
Where applicable the display will show the percentage of dead oil put into the composition
eg. for saturated points above the original oil bubble point the display might look like this:

Figure 3.2m
MBAL Variable
PB Analysis
Dialog

PVTP User Guide


3-28 PVPT User Guide

The calculation results can be viewed graphically using the Plot option. See Plot Help .
When the variable is common to both saturated and undersaturated tables the plot shows
both cuves eg. oil FVF:

Figure 3.2n
MBAL Variable
PB Plot

Click on Main to exit the dialog and return to the summary display.

Petroleum Experts
Chapter 3 - File Management 3-29

3.3.1 Eclipse Type Export (*.INC)


INC files are files which contain the data in a form which can be imported into an Eclipse
Blackoil Simulator.
The process is initiated by selecting the 6 – Eclipse(Black Oil) Format option from the
Export Types Dialog Screen.
The display allows the user to calculate phase properties and export them in a variety of
standard Eclipse formats.

The export is to an ASCII file with a default extension of .INC .


Since not all Eclipse or even PVT data is available within this file, it has beeen assumed
that the file will be edited by the user and "included" in the Eclipse input file.

The export is on the basis of a single stream (see Streams Help) at a single temperature.
The temperature is assumed initially to be the Reservoir Temperature , but it can be
changed within the Eclipse Setup dialog.Multiple temperature files can be produced by
merging several individual export files.
The stream is selected via the listbox at the top of the dialog.
The calculations are carried out over a range of pressures for each of the three phases
VIZ. Oil,Gas and Water. Each has an independent range setting.
Eclipse allows for a variety of PVT data types ,indicated by selection of Keywords. The
Eclipse documentationl should be used as a reference on how these types are depicted
and used.

Figure 3.2o
Eclipse
Export Utility

PVTP User Guide


3-30 PVPT User Guide

This dialog has a combobox for each phase .The options include:

OIL
No Oil
Oil with Dissolved Gas PVCO + PMAX or PVTO
Undersaturated Oil with Constant Dissolved Gas PVDO (+ RSCONST)
Constant Oil with Dry Gas RVCONST

GAS
No Gas
Wet Gas with Vapourised Oil PVTG
Dry Gas PVDG
Dry Gas with Constant Vapourised Oil PVDG (+ RVCONST)
Constant Gas with Undersaturated Oil RSCONST

OIL
No Water
Water included PVTW

The keywords selected are shown at the bottom of the dialog. With the Oil with Dissolved
Gas option the checboxes can be used to select between the PVCO + PMAX and PVTO
options

NOTE on UNITS
Note that Eclipse has less unit options than PVTP. It is up to the user to output in units
which match the rest of the Eclipse input file. The units dialog can be used to make any
changes required

To proceed to the next stage of the exporting process click on the Export button

Clear sets all options off

Exit saves the current selections and closes down the dialog

Cancel closes down the dialog without saving any selection changes.

3.3.2 Eclipse Export Setup Dialog


This display is initiated by selecting Export from the Eclipse Export Utility dialog. The
display allows the user to setup the temperature and pressures which will be used to
calculate and susequently export data to file.

The calculation will be caried out at a single temperature. This is initially set at the
Reservoir Temperature but it can be changed using the Edit box shown above.

Petroleum Experts
Chapter 3 - File Management 3-31

Note
The calculation done on each phase is a Constant Composition Expansion (CCE). This a
flash process where all the products are retained i.e. the total amount of each component
at the initial conditions is the same at all the measured values, only the phase splits (K
values ) have been changed.If however a dead oil or dry gas option is chosen eg. PVDO or
PVGO , the composition will be flashed to standard conditions and the excess gas or oil
removed prior to performing the requied P,T flashes.

Separator Data
In a similar way to the CCE input this display contains a section for Separator Data. This
allows the user to define a separator train through which the CCE liquid will be flashed to
correct the Oil FVF and GOR. The processes which are used to return an oil to standard
conditions can significantly change the final oil characteristics and the amount of gas
liberated on the way.

All stages do not need to be entered and a last flash to standard conditions is always
included.
The checkbox within the separator data area switches the correction on and off.
The values within this separator data area are loaded and stored separately from those
within the Separator calculation. The SEP COPY button will copy the first five stages from
the Separator Calculation into the Separator Data area.The CLEAR button removes all
values from within the Separator Data area.

This display contains radio buttons which allow the user to swap between User Selected
and Automatic modes.
In Automatic the pressure entries look like this. The phase entries are independent of
each other. If a phase has not been requested within the Export Utility the edit boxes for
that phase are hidden.

PVTP User Guide


3-32 PVPT User Guide

Figure 3.2p
Eclipse
Export Setup

In the User Selected version the ranged input is replaced by a grid for each phase where
any mixture of pressures can be entered. Select each phase by clicking on the tab at the
bottom of the grid.

Petroleum Experts
Chapter 3 - File Management 3-33

Figure 3.2q
Eclipse
Export Setup

Additional Inputs

Where additional information is required i.e PMAX ,RSCONST and RVCONST. the
appropriate edit box will appear in this area

All boxes should have an entry before proceeding to the Eclipse Export Tables dialog

To bring up the Eclipse Export Tables dialog click on the Export control button.

Exit will store all entries and return the user to the Summary Screen

PVTP User Guide


3-34 PVPT User Guide

Cancel will clear all entries and return the user to the Summary Screen

Clear removes any entered values

Volume Shift
A volume shift control panel is proved to allow the user to setup and to switch on and off
this feature prior to calculation . See Volume Shift and Volume Shift Setup (Section 4.2.3)
for more details.

3.3.3 Eclipse Export Tables


This dialog allows the user to initiate calculations and view the results

Figure 3.2r
Eclipse
Export
Tables

Petroleum Experts
Chapter 3 - File Management 3-35

The Calculation Screen is loaded when the Export button is pressed on the Eclipse Export
Setup Dialog.
The display is in the form of a three tables , one for each phase, with input values on the
left and the required calculation variables calculations listed in columns on the right.
Each column has a variable name and unit as a heading.
Scroll bars are provided to show more variables and results.
If the values have been already calculated the display will show the last set of values
calculated.
To the right of each table is a calculated stock tank density for each phase. This is
calculated even if the phase is absent from the setup options. When all three densities are
present , they are added to the export file under the DENSITY keyword as shown below:

DENSITY
52.6231 62.4562 0.0642391 /
-- units (lb/ft3)

The display has several control buttons along the top which have the following functions:

Export

This option brings up the file selection dialog as shown below. Selecting a file name with
the extension .INC and pressing OK will automatically produce the required ASCII file.

PVTP User Guide


3-36 PVPT User Guide

Calculate

This option recalculates the table using the latest inputs provided

Plot

This generates a full sized plot of the calculated results.

Layout

This options allows the user to select which columns are displayed in the results table. See
Calculation Layout Display .

Cancel

This option closes down the display and passes the control back to the input screen

Main

This option closes down both the calculation and the input displays and passes the control
back to the main PVT screen.

Petroleum Experts
Chapter 3 - File Management 3-37

3.3.4 Eclipse Compositional Export (*.PVO)


The objective is to provide an ASCII file which is compatible with an Eclipse 300 PVT input.
The file is exported as a PVO type including matched composition and properties.
As an option the file can also contain water properties for a range of pressures.
This display is initiated by selecting the 7 -Eclipse (Compositional) Format option from
the Export Types Dialog Screen.

A typical dialog would be as follows:

Figure 3.3
Eclipse
Export
Dialog

Two types of unit system are provided i.e. Field and Metric. When loaded the dialog will
select the system which best matches the reservoir temperature unit. Later , however, this
selection can be changed using the radio buttons provided.
If water PVT is required , enter the range and number of pressures required, change the
water salinity to the desired value and click on the Include Water Properties checkbox.
A combo box allows the desired stream to be selected.
Clicking on the Export button brings up the file selection dialog. Select a name for the PVO
file and click on save.

Figure 3.3
Eclipse
Export
File
Dialog

PVTP User Guide


3-38 PVPT User Guide

3.3.5 PVT Temporary Files

3.3.5.1 Temporary Data File (*.PSV)


This file is created at various point within the program, particularly after regression
operations, to hold intermediate results. The file is not automatically deleted when a normal
PVI file is closed. If a normal PVI file becomes unreadable , it is possible to rename the
PSV file as PVI and use it instead.

3.4 File Operations


3.4.1 Creating a New File
While working with PVT, new input or output data files can be created at any time. To
create new file, from the File menu choose the New command.
This command does not actually create a new and separate file, but reinitialises the
program input/output data. The next step would be to choose the compositional model etc.
by selecting Options from the Options menu..

3.4.2 Opening an Existing File

Existing data files can be opened quickly and easily at any time during the current working
session. To open a file, from the File menu choose the Open option. Alternatively, press
the left-hand mouse button while the pointer is over the file-open icon within the PVT
toolbar.

The list box within the file-open dialog gives the following options:

• All PVT files (*.PV*)


• Data files (*.PVI)

The program displays a dialog box in which the files matching your selection criteria are
listed in alphabetic order. The default data directory files are automatically displayed first.
To open a file, point and click the filename to recall and press ↵ or click on OK The
alternative method of opening a file is to double-click on the file name. If the file you want
is not listed, it is possible that:

1) it is in a different sub directory


2) it is on a different drive
3) it is of a different file type.

Petroleum Experts
Chapter 3 - File Management 3-39

3.4.3 Saving a File

When files are opened in PVT, the program copies the selected file into the computer's
memory. Any changes to the file are made to the copy in memory. In the event of a power
failure or computer crash, these changes would be completely lost. To prevent this, we
recommend you save your data on a regular basis and especially before quitting the
program.

The Save command stores all the changes made in the current active file. By default, the
Save command saves a file under its original name and to the drive and directory last
selected. If the file is new, you will be prompted to enter a name and select a target
directory:
When exiting the program the user will be prompted to close any files which have been
altered during the session and not saved.

3.4.4 Copying a File


The Save As command allows you to make more than one copy or version of an existing
file. With this command, you can save a file under the same name but to a different drive,
or under a different name on the same drive. Before saving a copy to another disk, we
recommend the file is first saved on your hard disk!

The program displays a dialog box listing all the current files that match your selection
criteria. Your default data directory is automatically displayed first. To copy a file, enter a
new name in the Filename field - up to eight characters are allowed. Select a different
directory or drive if desired, then press ↵ or click on OK.

3.4.5 Closing Files


The CLOSE command removes the currently-displayed file and all its data from memory. If
the file has been changed the user is prompted to save the file contents before closure.
The Close All command removes every file that has been loaded.
The Delete Calculation Results Command leaves the file composition data in place but
removes the results of any calculations that have taken place.

3.4.6 Restore Temp File


A temporary file with the extension *.PSV is created at various point within the program,
particularly after regression operations, to hold intermediate results. The file is
automatically deleted when a normal PVI file is closed. If , however, there is a computer or
software failure during further processing , this command can be used to recover lost data.

PVTP User Guide


3-40 PVPT User Guide

3.5 Software Key Maintenance


3.5.1 Viewing the Software Key
The Dongle command activates the REMOTE software utility program that allows you to
read the software protection key. This facility lets you see what programs are currently
enabled, their expiry date, user authorisation codes and key number. This utility is also
used to update the software key. Software keys must be updated when new programs or
modules are required or the key expiry date changed. Section 2.3 describes how to use the
REMOTE utility.

3.6 Printing
3.6.1 Printer Set-up
Once you have selected a printer using the Windows Control Panel and selected the
appropriate set-up options, printing reports is straightforward. When you are ready to print,
always verify your printer is plugged in, on-line and connected to your machine. The
Printer Set-up command of the File menu, allows you to change the printer set-up options.
The setup can also be changed from the Report Print Dialog Screen.

As all printers have varying printing capabilities, the dialog box that appears will correspond
with the printer selected. Most printers allow you to select paper size and source, page
orientation and number of copies. The set-up screen example that follows is for a Canon
LBP III laser printer.

Figure 3.5:
Printer Set-up Options

Petroleum Experts
Chapter 3 - File Management 3-41

3.6.2 Printing a Report


Prior to printing a report, it is always a good idea to save your data file(s). In the unlikely
event that a printer error or some other unforeseen problem occurs, this simple procedure
could prevent your work being lost.

To print a report, select the Reporting/Report menu option. Select the sections you wish to
report on the dialog box. The program will lead you through a series of input screens to set
up the required report sections. From the main dialog box, select a destination for your
report. Details of how to set up a report are given in Section

Figure
3.6:
Reports

PVTP User Guide


3-42 PVPT User Guide

3.7 Units System


This section describes the system of units. The built in flexibility of the units system
enables you to select any variable and define the unit of measurement to be used. This
feature makes it possible to modify the units system so that it corresponds to data reports
supplied by a service company or customise the units system to suit your own personal
preferences.

PVTP always works internally in Field units.. To facilitate data entry and output display in
any units system, PVTP accepts data in the specified Input units and converts it to Field
units for calculation. The results (in Field units) are converted back to the specified Output
unit set if necessary. By making selections from the different categories, you can work in
the units you prefer and save the results in the units required by company policy.

The changes made to the units system are file specific, each holding its own unit set. The
program allows you to create your own units system. To access the units system, point to
the Units menu and click the mouse, or click on the icon shown above.

To access the units system, point to the Units menu and click the mouse. Alternatively ,
point to the units icon on the PVT toolbar and click the mouse.

The following screen will appear:

Figure 3.7:
Units Definition

3.7.1 Unit Options


The Units Menu is divided into two main sections:

3.7.2 Variables
Select any item from the list of variables displayed. To select an item, move the scroll box
up or down, until the required variable appears on the screen.

Petroleum Experts
Chapter 3 - File Management 3-43

3.7.3 Validation
Used to set up the error checking limits for each selected input variable.

3.7.4 Unit Systems


The following default Units Systems are provided:

• Oilfield Units
• Norwegian S.I.
• Canadian S.I.
• German S.I.
• French S.I.
• Latin S.I.

Customised unit systems can be created and saved under new names. Different units can
be selected for both input and output.

3.7.5 Changing the Units


The Input and Output units for each variable on the list can be changed.
To change or customise the default Units System:
• Scroll through the measurement variables list until the unit item to modify is visible on
the screen.
• Select the unit category (Input and/or Output) to modify.
• Select the unit field corresponding to the measurement item and click on the arrow to
its right to display the list of unit options.
• Select the preferred measurement unit.

3.7.6 Validation Limits


To reduce the possibility of entering incorrect data, PVTP checks that input data falls within
predetermined validation limits. For most purposes, the default validation limits are
adequate. For particular applications, the user can change the validation limits if required
by entering new values directly from the units definition screen.

Find the required variable by scrolling through the list, then enter required changes in the
low and high validation limit boxes. Enter your custom validation limits in the units currently
in use. To permanently attach the new validation limits to a custom units system, click
Save before leaving the validation screen by clicking OK.

To save changes, click Save. You will be prompted to enter a name for the new Units
System. This new system can now be recalled and applied to any file. The ability to have
separate input and output unit systems allows the user to work with familiar units and to
create reports in any required unit system. PVT calculates internally in Oilfield Units.

If some particular units have been modified during the course of a PVT session, the
changes will be written into the .PVI file when the input data are saved. Irrespective of the
current units system settings, recalling a previously saved .PVI file will cause PVT to revert
to the units saved in the recalled .PVI file. To permanently impose a new set of units on
the recalled file, open a custom units file (or use one of the internal unit sets) and then
save the .PVI file. The new units settings will be used whenever the .PVI file is loaded.

PVTP User Guide


3-44 PVPT User Guide

3.8 Command Buttons


The following command buttons are used in PVT.

Calculate Performs the various calculations on the input parameters for the correlations
selected.

Cancel Returns you to the previous screen. Any changes or modifications will be
ignored by the system.

Continue Continues to the next input screen. Any changes to the fields will be saved
and retained in memory for later calculations. A warning message will be
displayed when fields requiring input data are left blank.

Help Provides on screen help for PVT. For general information, press the 'ALT'
and 'H' keys together in the Main menu, or the Index button under any help
screen. Specific help screens are also available for each window.

Main Returns you to the Main Application Menu. Any changes or modifications will
be saved and retained in memory by the program.

OK Returns you to the previous menu. Any changes or modifications will be


retained in memory by the program.

Plot Plots any calculated results and displays them on screen. Hard copies of the
screen display can be printed by selecting the Print menu option on the Plot
screen.

Reset Resets the Match parameters in order to reinstate the original text book
correlations.

Save Saves a current PVT file. If this is a new data file, you will be prompted for a
file name.

Extract Takes a copy of the input data and calculation/analysis results and stores the
values in a user-selected file

Export Among the export options , the program creates a file with PVT compositional
data which can be imported into Petroleum Exports PROSPER program or
other package.

Petroleum Experts
4 Models and Model
Options
This chapter describes briefly the background equations and inputs to the two models
available within the PVT package VIZ.

the Black Oil Model


the Equation Of State Model

In addition the following topics are also covered:

Acentric factors
Binary Interaction Parameters
Volume Shift
Hydrate Modelling
Wax Modelling
Viscosity and Thermal Conductivity Modelling
Water Eos Modelling

4.1 The Black Oil Model


Traditional Black Oil Modelling techniques have been applied within PVT to

• Oil
• Dry and Wet Gas
• Retrograde Condensate

Matching against Laboratory Data is also available.

Black Oil Modelling is a technique which works back from values of density and GOR
measured at known surface conditions to predict the properties at other points and the
results of process changes. The technique is fast and accurate when applicable.

4.2 The Equation of State Model


Equations of State were developed to give a mathematical relationship between pressure,
volume and temperature. They were originally put forward as a method of interpreting the
non-ideal nature of many pure substances. With time, this role has been extended
successfully to predicting the properties of simple and complex mixtures.

The equations used in PVT are derived from Van der Waals Equation and in common with
it represent the total pressure as a summation of an attractive and a repulsive element:

P total = P repulsive - P attractive

The classic Van der Waals equation describes this relationship as

RT a
P= − 2
v−b v
2 - 39 PVTP User Guide

where b represents the hard-sphere volume of the molecules and


a the intermolecular attraction.

The two cubic Equations of State which are available within


the PVT package are

1) the Peng-Robinson (PR)EoS:

RT a (T )
P= −
v − b v (v + b) + b(v − b)
and,

2) the Soave-Redlich-Kwong(SRK)EoS:

RT a (T )
P= −
v − b v (v + b)

In addition there is a feature within the program which allows the user to customise the
general equation to suit a specific need

All cubic Equations of State can be rewritten as a function of the compressibility factor Z
e.g. the Peng Robinsen equation becomes

Z 3 − (1 − B) Z 2 + ( A − 3B 2 − 2 B) Z − ( AB − B 2 − B 3 ) = 0
and for SRK

Z 3 + Z 2 + ( A − B − B 2 ) Z − AB = 0

where

a (T ) P
A=
( RT ) 2

bP
B=
RT

and

Pv
Z=
RT

In addition there is a feature within the program which allows the user to customise the
general equation to suit specific needs (see Section 4.3.3)

4.2.1 The Acentric Factor


The acentric factor was put forward as a means of representing the non-sphericity and
polarity of many compounds. The original Equation of State PV=nRT was based on a
model of hard spheres which behaved in a classical and predictable fashion. The vast
majority of compounds are, unfortunately, far from ideal and far from spherical. The

Petroleum Experts
Chapter 4 - Models and Model Options 3 - 39

acentric factor provides a number which can be used in the equation of state to match
predicted PVT behavior with reality.

To quote the authors in Molecular Thermodynamics of Fluid-Phase Equilibria by J


Prausnitz and R. D. Lichtenthaler.

"Acentric Factors are arbitrary and chosen for convenience"


Based on deviation of some fluids from that predicted by what the corresponding states
theory suggests for simple fluids, Pitzer proposed an experimental method for determining
the acentric factor.
It had been obseved for simple fluids that for simple fluids that the following relationship
held i.e.
As the Temperature (T) approached 7/10 of the critical temperature (Tc) the measured
saturation pressure(Ps) approached 1/10 of the critical pressure(Pc).

Ps 1 T 7
= ( = )
Pc 10 when Tc 10

Pitzer's proposal was to use the logarithmic deviation from this relationship as a measure
of acentric factor ω

Ps
ω ≡ − log10 ( ) T / Tc =0.7 − 1.0
Pc
The acentric factor enters the equation of state as a component which describes the
change in the intermolecular attraction component with temperature a(T) .
The Peng Robinson Equation is
RT a (T )
P= −
v − b v (v + b) + b(v − b)
with

a(T ) = a(Tc )α (TR , ω )


where the a(T) function at the critical point is given by the empirical relationship

R 2TC2
a (Tc ) = 0.45724( )
PC
and α (TR , ω ) is a function of the reduced temperature T/Tc and the acentric factor as
follows

α = (1 + β (1 − TR0.5 ) 2
β is an empirical quadratic or cubic of the acentric factor

At values of ω less than 0.49 the equation is quadratic:


β = 0.37464 + 1.54226ω − 0.2699ω 2

The estimation changes to a cubic at other values of ω :


β = 0.379642 + 1.485030ω − 0.164423ω 2 + 0.016666ω 3

In addition the repulsive factor b within PR is given by:

PVTP User Guide


4 - 39 PVTP User Guide

RTC
b = 0.0778( )
PC
Soave Redlich Kwong varies from PR in the constants within the empirical functions i.e.
R 2TC2
a(Tc ) = 0.427( )
PC
β = 0.480 + 1.54ω − 0.176ω 2
and
RTC
b = 0.08664( )
PC

Table 4.1 shows some typical acentric factors. Note that the value increases with the size
of the molecule and its polarity.

Table 4.1 Common Acentric Factors

Compound Acentric Factor


Nitrogen N2 0.039
Carbon Dioxide CO2 0.239
Methane C1 0.011
Ethane C2 0.099
Butane nC4 0.199
Hexane C6 0.299
Octane C8 0.398
Decane C10 0.489

Acentric factors are available from the database supplied with the PVT package. The
values in table 4.1 are taken from the Petroleum Experts database.

The acentric factors for all components can be viewed and adjusted within the Base
Composition Information Page of the PVT package.
This display is selected by clicking on the View button within the Composition Input Page.

The latter display can be called by selecting Edit Composition option from the Data menu
or clicking on the icon.

It is particularly important to select the right acentric factor for pseudo components. This
value can be calculated automatically or input manually within the Composition Input
display. This display is selected by clicking on the Properties button within the Composition
Input Page.

Petroleum Experts
Chapter 4 - Models and Model Options 5 - 39

PVTP User Guide


6 - 39 PVTP User Guide

4.2.2 The Binary Interaction Coefficient


The cubic equations of state were originally developed for pure substances. With time their
use was extended to mixtures. This extension required some method of introducing a
measure of the polar and other interactions between pairs of dissimilar molecules. The
binary interaction coefficient was put forward.
This variable enters the calculation as a component in the intermolecular attraction a.

For mixtures :
N N
a = ∑∑ xi x j aij
i =1 j =1

xi and x j are mole fractions of components i and j, respectively and :


where

a = a i a j (1 − k ij )

k ij
is the binary interaction coefficient.
a aj
The attraction functions i and represent the a(T) functions for each individual
component. (see acentric factor help)

Binary Interaction Coefficients represent a flexible way of moulding the ideal Equation of
State to match the non-ideal reality of many mixtures.
The PVT package offers the user a variety of correlations for Binary Interaction Coefficients
as well as the opportunity to enter values manually.
This flexibility, however, brings with it the problem of where to start when characterising a
mixture. Hint on Binary Interaction Coefficients puts forward a possible approach.
k
The manipulations of ij are carried out within the BI Coefficient Dialogue:
This display is selected by clicking on the B I Coeffs... button within the Composition Input
Page.
The latter display can be called by selecting the Edit Composition option from the Data
menu or clicking on the icon.

The Select option within the Binary Interaction Coefficients Display will bring up a dialog
k ij
box which allows the user to select between the correlations available for .

Choice of BI Coefficient
Authors disagree on the values of binary interaction coefficients for hydrocarbon mixtures.
Some suggest that kij should be set at zero for hydrocarbon↔hydrocarbon interactions,
and given a value for hydrocarbon↔non-hydrocarbon and non-hydrocarbon↔non-
hydrocarbon pairs .
At Petroleum Experts we suggest that this approach is suitable for systems solved using
the Soave-Redlich-Kwong(SRK) Equation Of State.

Wih the Peng-Robinson(PR) Equation Of State the following general approach was found
succesful in most cases

For Volatile Oils or Condensates , try


◊ A. N. Other Correlation for Boiling Point

Petroleum Experts
Chapter 4 - Models and Model Options 7 - 39

◊ Bergman(PNA) and Cavett/Edmister for Acentric Factor


◊ No Binary Interaction Coefficients or a small value eg 0.05 between the C1
and heaviest component.

For Heavy Oils , try


◊ Petroleum Experts Correlation for Boiling Point
◊ TWU/Edmister for Acentric Factor
◊ Binary Interaction Coefficients for all components

The PVT package offers the user a variety of correlations for binary interaction coefficients
as well as the opportunity to enter values manually.
The manipulations of kij are carried out within the display illustrated below:

PVTP User Guide


8 - 39 PVTP User Guide

This display is selected by clicking on the B I Coeffs... button within the Composition Input
Page.
The latter display can be called by selecting the Edit Composition option from the Data
menu or clicking on the icon.

The Select option within the Binary Interaction Coefficients Display will bring up a dialog
box which allows the user to select between the correlations available for kij.

4.2.3 Volume Shift


Volume Shift arises from an inherent weakness in the 2 parameter(a and b) Equations of
State in estimating liquid densities.
The Peng Robinson variant is

P=RT/(V-b)-a(T)/[V(V+b) +b(V-b)]

In the 3 parameter version V is replaced by a corrected version Vs where

Vs = V +cV

c is the third parameter and is the sum of the individual xi.ci


Since this correction is done after the flash equilibrium calculations, the component K
values,saturation pressure and phase envelope are not affected.
What is changed is the compressibility Z and anything derived from it i.e.
Density,GOR,FVF,Relative Volume etc.
The use of Volume Shift seems to be very attractive,since it corrects a known problem.

However , there are very significant problems in using this method eg.:
1) The Equation of State is non predictive . Matching must be used to model real fluid
behaviour.

Volume Shift can be used to make up for bad data or inadequacies in the matching
methods. This can be very dangerous particularly as there is no real control or limit to the
value of c . In our experience nearly all fluids can be matched without volume shift using
the methods outlined in EOS : Step by Step Guide . For this reason this method is not
recommended until all other approaches have been exhausted.

2) The Volume Shift approach is a fairly crude correction factor which solves the difficulty of
matching density.It does ,however, introduce other problems by breaking up the continuity
of the original equation. It is not a temperature dependent function. Matching a c at one
elevated temperature may cause difficulties with matching and the material balance at
another. lower temperature
Volume Shift is available when any equation of state model is selected within the
OPTIONS display.
Thereafter all relevant calculation displays and the Preferences/Calculation Tolerances
contain a volume shift control panel.
The control panel consists of a check box to switch on and off the correction and a button
to set up the Volume Shift parameters (see Volume Shift Setup below)
There are two ways of setting up volume shift within the program.
The first is based on calculating ci (called Vol Shift C within the program) as a function of
Zrackett Pc and Tc..

The second is based on a method from Jhaveri and Joungren (SPE 13118,1988)

Petroleum Experts
Chapter 4 - Models and Model Options 9 - 39

In this method Ci = bi . Si
where the Vol Shift S factor Si is taken from a database or calculated from the molecular
weight of the component by Si = (1-(d / MWti**e))
The selected volume shift parameter Ci or Si can be regressed upon if required (see
Regression Parameter Selection)

4.2.3.1 Volume Shift Setup


This dialog is loaded by the Setup button within the volume shift control panel (see
example below)

All relevant calculation displays and the Preferences/Calculation Tolerances contain a


volume shift control panel.
A typical display is
The main body of this dialog is a grid which displays the parameters used to calculate
volume shift Vol Shift C and Vol Shift S and those used to calculate c and s values. All
data within the grid can be edited manually and stored.
The grid has a tab control to swap between streams.
As described in the Volume Shift Help. 2 methods of obtaining a shift are available within
the package. Radio buttons on the top right of the display allow the user to swap between
the methods.
Each method has a clear and calculate button to create new values.
The Jhaveri and Joungren has an additional two edit boxes for the D and e variables which
are used to calculate the component S values.

This button allows the user to get a feel for the degree to which the volume shift is varying
the fluid properties. When presssed the program will flash the fluid to standard condition
with and without the shift on. The results are presented as shown below

This dialog is loaded by the Setup button within the volume shift control panel (see
example below)

All relevant calculation displays and the Preferences/Calculation Tolerances contain a


volume shift control panel.

PVTP User Guide


10 - 39 PVTP User Guide

The main body of this dialog is a grid which displays the parameters used to calculate
volume shift Vol Shift C and Vol Shift S and those used to calculate c and s values. All
data within the grid can be edited manually and stored.

The grid has a tab control to swap between streams.


As described in the Volume Shift Help. 2 methods of obtaining a shift are available within
the package. Radio buttons on the top right of the display allow the user to swap between
the methods.

Each method has a clear and calculate button to create new values.
The Jhaveri and Joungren has an additional two edit boxes for the D and e variables which
are used to calculate the component S values.

Petroleum Experts
Chapter 4 - Models and Model Options 11 - 39

This button allows the user to get a feel for the degree to which the volume shift is varying
the fluid properties. When presssed the program will flash the fluid to standard condition
with and without the shift on. The results are presented as shown below

The Volume Shift checkbox allows the user to switch on and off the global volume shift
correction flag

Exit and Save closes down the dialog with all changes retained

Cancel closes down the dialog with all changes ignored

The Volume Shift checkbox allows the user to switch on and off the global volume shift
correction flag

PVTP User Guide


12 - 39 PVTP User Guide

4.3 Wax Modelling


Won (ref 1 Section 4.4.2) originally proposed a model for wax formation based on an ideal
solution.The derivation of the basic equation is as follows:
The problem is analysed in terms of a subcooled liquid and a thermodynamic cycle (see
diagrams below). This analysis is outlined more fully in Prausnitz (ref.2 Section 4.4.2).
The fugacity of the solid is equal to that of the solute in liquid and for the system at position
2 is given by:

f solid = γ 2 x2 f 20
................eqn. 1

where
x2 is the mole % solute in the solvent or solubility,
γ 2 is the liquid-phase activity
coefficient and
f 20 is the standard state fugacity.

if it is assumed that the solvent and solute are very similar making
γ 2 =1 and equation 1
becomes
P1( pure _ solid )
x2 =
P2 ( subcooled _ liquid )

with P being the vapour pressure and


x2 now referred to as the ideal solubility

Pressure/Temperature Diagram for Pure Material


Pressure

LIQUID Critical
Point
SOLID

Triple
Point
P 2

VAPOUR
P 1

T Temperature
The problem can be more generally solved using the thermodynamic cycle shown in figure
2 below.

Petroleum Experts
14 - 39 PVTP User Guide

ASSUMPTION 3 The volume change at the melting point is assumed to be negligible and
these terms are ignored,giving:
T
∆ H = ∆h f + ∫ ∆C p dT
a −>d
Tt
The entropy cycle can be written as:

∆ S =∆ S +∆ S +∆ S
a −>d a − >b b −>c c −>d

which in a similar way to enthalpy becomes


T
∆C p Pt
d∆v
∆ S = ∆S f + ∫ dT − ∫ dP
a−>d
Tt
T P
dT

ASSUMPTION 4 again the volume change is assumed to be negligible giving


T
∆C p
∆ S = ∆S f + ∫ dT
a −>d
Tt
T
The entropy change at fusion is defined as:
∆H f
∆S f =
Tt
Substituting the results of the cycle in eqn 2 and rearranging gives the eqation which acts
as the fundemental for many wax models:

f 2L ∆H f Tt ∆c p Tt ∆c p Tt
ln( S ) = ( − 1) − ( − 1) + ln( )
f2 RTt T R T R T

ASSUMPTION 5 for most materials the melting point line is nearly parallel with the
Pressure axis allowing the triple point temperature to be replaced with the melting point.

f 2L ∆H f Tmelt ∆c p Tmelt ∆c p Tmelt


ln( S ) = ( − 1) − ( − 1) + ln( )
f2 RTt T R T R T .................eqn 3

ASSUMPTION 6 Implicit in the use of this equation is that the thermodynamics of a pure
substance in an ideal solution can be extended to a mixture where the solvent is non-ideal
and the solid is neither ideal nor a pure single species
Some points to note about this equation is that it is dominated by the Melting Point value.In
essence this value determines when the solid may start to form. The other important term
is the Heat of Melting which plays a role both in the formation temperature and the amount
of solid formed. In its simplified form,this equation as used by Won overestimates both the
Wax Appearance Temperature and the amount of wax formed.The various models
question the assumptions built into this model extending the equation in various ways to
remove these errors.
How this equation is used and adapted within the various models is given in Model Details
section

Petroleum Experts
Chapter 4 - Models and Model Options 15 - 39

4.3.1 Wax Model Details


WON ORIGINAL

This model is outlined in reference 1 (Section 4.3.2).


Won derived the equation 3 (Wax Modelling Section 4.3) and expressed it as follows:
si γ iL ∆H f T ∆c T T ∆v
P
K SL
= = ( S ) exp[ (1 − ) + p (1 − melt + ln( melt ) + ∫ dP]
i
xi γi RTt Tmelt R T T 0
RT
.......4
x s
where i and i are the mole fractions of i in the liquid and solid respectively.
Won simplified this equation by assuming the second and third terms were equal to zero
γ iL
( )
and the ratio of activity coefficients γ i was equal to 1.
S

This leaves a fairly simply equation which unfortunately exaggerates both the Wax
Appearance Temperature and the amount of wax formed.
si ∆H f T
K iSL = = exp[ (1 − )]
xi RTt Tmelt

Within the model the required values for Melting Points and Heats of Melting are taken fron
the following correlations
20172
Tmelt = 374.5 + 0.02617.M i −
Mi
and
∆H f = 0.1426.M iTi m
where
M i is the molecular Weight of component i

WON WITH SOL PARAMS

This model is outlined in reference 4(Section 4.3.2) .


In an effort to overcome the weaknesses in his original model above Won suggested that
γ iL
( )
the assumption that γ iS was equal to 1 was in valid as it lead to and overestimation of
the solubilities of C5 to C10 in the solid solution.
Instead the author proposed an estimation of the activity coefficients based on modified
regular solution theory.
This gives a method of estimating the activity ratio based on solubility parameters.
:
γ iL vi − −
= exp[ {(δ − δ ) 2
− (δ − δ i ) 2S }]
γi S i L
RT
where
vi is the molar volume given by :
M
vi = Li
d 25

PVTP User Guide


16 - 39 PVTP User Guide

Mi d 25L
is the molecular Weight of component i and is the liquid density of the component
at 25 degrees C estimated by:
d 25L = 0.8155 + 0.6272e − 04 M i − 13.06 / M i
The paper gives estimates of the solid and liquid solubility parameters δ up to C40

δ is the average solubility parameter for the respective phase
Within this model the author uses the correlations outlined in his original model for
estimationg melting points and heats of melting.

CHUNG ORIGINAL

This model is outlined in reference 5 (Section 4.3.2) .


This model is very similar to Won with Sol Params above.The difference lies in the
assumption that the all the species in the solid are very similar and that the activity
coefficient of the solid can therefore be set to 1.
Equation 4 in Won Original above is modified by the introduction of solubility parameters to
be:

si ∆H f T v − v v
K iSL = = exp[ (1 − ) + i (δ − δ i ) 2L + ln( i ) + 1 − ( i )]
xi RT Tmelt RT Vm Vm
V = ∑x v
with m i i

Within this model the author uses the correlations outlined in won original for estimationg
melting points and heats of melting
In addition the following correlations are suggested for molar volume and liquid solubility
parameter.
13.06
vi = M i /(0.8155 + 0.6272e − 04 M i − )
Mi
and
δ iL = 6.993 + 0.781β − 0.049 β 2 − 10 .235 / β
where
β = ln( M i ) and M i is the molecular Weight of component i

CHUNG MODIFIED

This model is outlined in reference 5 (Section 4.3.2) .


This model is very similar to Won with Sol Params above.The difference lies in the
correlations listed below:

∆H f = 0.9Ti m ( M i0.55 )
v i = 3 .8( M i0.786 )
and
δ iL = 6.743 + 0.938 β − 0.0395 β 2 − 13 .039 / β

PEDERSEN WAX

This model is outlined in reference 3 (Section 4.3.2) .


The model is derived from the simplified version of equation 3 (Wax Modelling Section 4.3)
used by Won i.e.

Petroleum Experts
Chapter 4 - Models and Model Options 17 - 39

f 2L − ∆H f T
ln( S ) = (1 − melt )
f2 RTt T
Substituting fugacity coefficients for fugacities,this equation becomes:

− ∆H f T
fi = xiφi p exp[ (1 + )]
RTt Tmelt
where
fi is the fugacity of component i in the solid phase
φ L
i is the liquid fugacity coefficient of component i
xi is the solid phase mole fraction of component i
and
p is the pressure

The basis for the model is the presumption that not all the high molecular weight material
can form waxes.
The fraction which is allowed to do so within the model comes from an empirical
relationship :
p − pip C
z =zi
S total
i [1 − ( A + B − Mi).( ) ]
pip
S
where
z i is the fraction of
z itotal
allowed to become wax,
Mi is the C7+ molecular weight
ρi is the SG of component i

and
ρ ip is the SG of an equivalent paraffin given by:

ρ ip = 0.3915 + 0.0675 ln( M i )

A B and C are constants with the following values

A = 0.8824 , B= 0.0005354 and C=0.1144

The component melting points and heats of melting are calculated using correlations
proposed by Won(ref 1)

20172
Ti m = 374.5 + 0.02617.M i −
Mi
and
∆H im = 0.1426.M iTi m

PVTP User Guide


18 - 39 PVTP User Guide

4.3.2 Wax Model References


1) Continuous Thermodynamics for Solid-Liquid Equilibria: Wax Formation from Heavy
Hydrocarbon Mixtures by K.W. Won March 26 1985. ,Paper 27A presented at AIChE
Spring National Meeting. Houston,TX.

2) J.M. Prausnitz , R.N. Lichtenthaler,E. Gomesde Azevedo :- Molecular Thermodynamics


of Fluid-Phase Equilibria 2nd Ed. ,Prentice-Hall ,New Jersey (ISBN: 0-13-599564-7)

3) Prediction of Cloud Point Temperatures and Amount of Wax Formation by K.S.


Pedersen SPE Production & Facilities Feb. 1995 ,46-49

4) Thermodynamics for Solid Solution-Liquid-Vapor Equilibria: Wax Phase Formation from


Heavy Hydrocarbon Mixtures. by K.W. Won , Fluid Phase Equilibria,30 (1986) 265-279

5) Thermodynamic Modelling for Organic Solid Precipitation by T H Chung,SPE 24851

Petroleum Experts
Chapter 4 - Models and Model Options 19 - 39

4.4 Hydrates

4.4.1 Background to Hydrates


This manual is not intended to be a comprehensive guide to the subject of hydrates.

A detailed explanation of hydrates is available in references 1-4 of the Hydrate Reference


List.

Gas Hydrates are solid meta-stable compounds which form at higher temperatures than
that expected for pure water ice.

Gas hydrates can be referred to as componds because they have a fixed composition.

However, a hydrate is a particular type of compund which derives its formation not from
covalent bonds but from weak van der Waals attraction forces.
Within a hydrate, water molecules form a cage with spaces(cavities). If a gas molecule is of
the right size it can occupy a cavity and weakly bond to the surrounding water molecules.
This bonding makes the overall energy of the hydrate lower than that for the molecules in
non-hydrate form and acts as the thermodynamic driving force for hydrate formation.

The compounds formed by this type of loose entrapment are termed Clathrates.
Water has been identified as forming three types of hydrates VIZ. I ,II and H (ref.1,2)

For the purposes of this program we will cinsider only the more common I and II forms.

The differences between the two structures derive from the number of molecules which
make up a single unit.
Both types of hydrate contain a variety of small and large cavities.

The number and size distribution of the cavities within a hydrate determines the types and
amount of gas molecules which can be held.
Not all cavities need to be filled to form a stable hydrate.

PVTP User Guide


20 - 39 PVTP User Guide

Typical of the data supplied for the two hydrate types:

Property Hydrate I Hydrate II


Number of water molecules per unit cell 46 136
No. of small cavities 2 16
No of large cavities 6 8
Small diameter Angstrom 7.95 7.82
Small diameter Angstrom 8.6 9.46
Potential guest molecules-small cavity C1 C1
CO2 C2
N2 CO2
H2S N2
H2S
Potential guest molecules-large cavity C1 C1
CO2 C2
N2 C3
H2S C4
iC4
CO2
N2
H2S

With a small number of potential guests and two possible structures, the calculation of
hydrate formation can be dealt with by the application of statistical mechanics (van der
Waals and Platteeuw ref. 5)
Estimating hydrate formation is explained in more detail in Hydrate Modelling.

Inhibitors
Since hydrate formation is can be an expensive process problem ,much work has been
carried out to engineer its reduction or prevention.
The most common methods involve any or all of the following:

a) Keeping the temperature higher than the hydrate formation temperature.

b) Adding bulk inhibitors such as methanol or sodium chloride which will shift the hydration
curve downwards to lower temperatures and

c) Adding "kinetic" inhibitors which act to slow down the formation of hydrate crystals
The modelling of inhibitors is dealt with in Hydrate Inhibition.

The user is encouraged to read references 1 or 2 (Section 4.4.2) to get a more in-depth
view of this subject.

Petroleum Experts
Chapter 4 - Models and Model Options 21 - 39

4.4.2 Hydrate Modelling


The thermodynamic modelling of gas hydrates is normally considered to consist of 2 steps.

pure water (state 1) -> empty hydrate lattice(state 2) -> filled hydrate lattice(state H)

State 2 is really hypothetical , only being used to make the calculation practical.
Written in terms of chemical potentials the transition becomes.

µH − µ1 = (µH − µ2 ) + (µ2 − µ1)


The
µ −µ
H 1 term represents the gain from adsorption of the gas molecules.
It is this difference that is a measure of the weak van der Waals forces which are giving the
energy advantage to forming the structure.
The estimation of this term is treated as a statistical gas adsorption problem and the
varying aproaches to its solution make up the majority of the differences between the
model options (see Hydrate Formation Pressure and Minimum Inhibitor Concentration).

The difference between the chemical potential of pure water and the filled hydrate is given
by

µ H − µ1 = − RT ∑ nci ln(1 − ∑ y ji )
i j

where
nci is the number of cavities of type i
y
and ji is the probability that cavity of type i is occupied by gas molecule of type j (see
table in Background to Hydrates).

y ji
The important term is calculated from Langmuir adsorption theory and is given by:
C ji f j
y ji =
(1 + ∑Cki f k )
k

where j and
f f k are the fugacities forgas molecule j and k calculted by the Equation of
State Model.
C ji
is a temperature-dependent Langmuir adsorption constant whose value is calculated
differently for the options given within the hydrate dialogs.

C
The ji term is commonly determined using the Lennard-Jones-Devonshire spherical cell
model.(ref 1 Section 4.4.2).
This model requires an estimation of the potential function describing the interaction of
guest molecules and the water molecules at any distance r within the cage.

PVTP User Guide


22 - 39 PVTP User Guide

The lower the potential , the higher is the probability of finding a guest gas molecule at this
position. Of the alternative methods for calculating potential the most commonly used is
the Kihara (see ref 1 and 6 for more details).
C ji
In the Sloan option (ref 1) within the program the adsorption constant is derived as
follows:

4π R ω (r )
C ji =
kT ∫
0
exp( −
kT
)r 2 dr
where R is the cavity radius and r is the distance from the cavity centre.
The experimentally fitted Kihara cell potential
ω (r ) is calculated from :

 σ 12 10 a 11 σ 4 4 a 5 
ω (r ) = 2 zε  11 (δ + δ ) − 5 (δ + δ )
R r R Rr R  ........eqn 1
and
1  r a −N r a −N 
δN =  (1 − − ) − (1 + − ) 
N  R R R R 
where N = 4,5,10 or 11 as in eqn 1
z = the coordination number of the cavity
R = the free cavity radius
r = distance from the cavity centre
the parameters , ,and ε a σ are experimentally derived parameters which are unique to
every guest molecule.

This model outlined in the Petroleum Engineer's Handbook (ref 4 Section 4.4.2) uses a
simplified fit for the adsorption constant VIZ.
A B
C ji = exp( )
T T
where A and B vary for the gas molecule , the hydrate and the type of cavity.(see
Background to Hydrates)

C ji
This model from reference 3 (4 Section 4.4.2) uses a function for of the type shown for
the model above , but with different values for A and B.

The total chemical potential equation takes the form:

Petroleum Experts
Chapter 4 - Models and Model Options 23 - 39

µ H − µ1 ∆µ w (T0, P0 ) T ∆hw P ∆v
= −∫ 2
dT + ∫ w
dP + ln a
RT RT T0 RT P0 RT

∆µ w (T0 , P0 )
where is the chemical potential at the chosen reference state with temperature
T0 and pressure P0
∆hw ∆vw
is the specific enthalpy difference and is the specific volume difference going
T0
from to T

∆µ w (T0 , P0 ) ∆hw
The models used vary a little in the experimentally determined values for , ,
and
∆v
w . Model details are available within the references quoted.

a is the activity of water within the system. The value of pure water is taken as 1. When an
inhibitor is used the value of a is adjusted to include the inhibition effect.
See Hydrate Inhibition for more details.

4.4.3 Hydrate Inhibition


There are 2 types of hydrate inhibitor i.e. kinetic and thermodynamic.
Kinetic inhibitors are designed to slow down the rate of hydrate formation by blocking or
stopping crystal growth.
These agents,fatty acids,amines and fatty alcohols do not stop hydrate formation, they ony
shift it to a different time and place.
Kinetic inhibition is outwith the scope of the PVT program at present.
Thermodynamic inhibitors disrupt the order within water produced by its hydrogen bonding.
This disruption reduces the activity of the water, making it less likely to form hydrates.
There are two main types of thermodynamic inhibitor VIZ. alcohols (methanol,glycol) and
electrolytes (NaCl,ZnCl etc.).
The chemical potential water molecules in the presence of alcohols decreases because
hydrogen bonds form between the water molecules and water.

H2O + CH3OH H O ….H O CH3

With electrolytes the water molecules form a coat of many layer around the ions in solution.
This destroys the normal liquid crystal structure of water making it more difficult for the
ordered hydrate structure to form.
Both mechanisms result in a lowering of the water activity term a in the hydrate modelling
equation.

µ H − µ1 ∆µ w (T0, P0 ) T ∆hw P ∆v
= −∫ 2
dT + ∫
w
dP + ln a
RT RT T0 RT P0 RT

Activity correlations are found in references 1,2 and 7 (Section 4.4.2) for the inhibitors
supported

PVTP User Guide


24 - 39 PVTP User Guide

4.4.4 Hydrate Model References


1) Clathrate Hydrates of Natural Gases by D.S.Sloan :-Marcel Dekker Inc., New York
(ISBN: 0827 99372)

2) Hydrates of Hydrocarbons by Yuri F. Makogon :- PennWell Publishing Company,


Tulsa,Oklahoma

3) Properties of Oils and Natural Gases by K.S.Pedersen,A.Fredenslund and


P.Thomassen :- Gulf Publishing Company.Houston

4) Petroleum Engineers Handbook :- Society of Petroleum Engineers ,Richardson,Texas.

5) Platteeuw. J.C. and van der Waals. J.H. : Thermodynamic Properties of Gas Hydrates
II. Phase Equilibrium in the System, Rec. Trav. Chem.(1959),78,126-133

6) J.M. Prausnitz , R.N. Lichtenthaler,E. Gomesde Azevedo :- Molecular Thermodynamics


of Fluid-Phase Equilibria 2nd Ed. ,Prentice-Hall ,New Jersey (ISBN: 0-13-599564-7)

Petroleum Experts
Chapter 4 - Models and Model Options 25 - 39

4.5 Compositional Gradient

4.5.1 Background to Compositional Gradient


The compositional gradient function calculates the effect of gravity on the distribution of
components within the reservoir. Under the influence of gravity light components will tend
to move towards the top of the structure with the heaviest having a greater abundance
towards the bottom.

Fig 1

fi(T,P,ni) f1i(T1,P1,ni)

With no gravity effect the fugacity of a component is a function of the temperature,


pressure and composition.

Fig 2

f1i(T1,P1,ni,dz)

} dz

fi(T,P,ni)

With the gravity effect introduced the fugacity also becomes a function of the change in
height dz.
The change in the component fugacities over the height change is given by the following
equation (full derivation in ref 1.):

f 1i
= exp[ −( Mwi / RT ) gdz
fi ..................... Eqn 1
fi f 1i
The fugacity of a component at reference changes to . The size of the change

depends on the temperature T, dz, and importantly the component molecular weight Mwi .
When the component molecular weights are very different e.g. methane (18) and
asphaltene (2000-20000), the gradient is at its most extreme with the composition and
consequently the saturation pressure varying relatively quickly with depth.

PVTP User Guide


26 - 39 PVTP User Guide

Fig 3
P1,T1,n1
dz
Pref,Tref,nref
The procedure the program follows to solve the gradient is as follows:

1 The vertical heights selected are resolved as a set of stages (see fig. 3).
2 The starting point is the matched PVT sample, which has a composition (nref), a
reference pressure (Pref) and a reference temperature (Tref) associated with it.
3 From P,T and n the equation of state can calculate zfactor and density of the fluid and
f
the component fugacities i at this point.
4 From the fluid density and the change in height the program can estimate P1. The
implication being that the composition is constant over dz.
5 T1 is calculated from the user-entered temperature gradient.
f 1i
6 From P1 estimate, T1 and nref, the component fugacities can be calculated as in
figure 1 i.e. no composition change due to gravity.
f1
7 Equation 1 is the used to adjust the i
value and take account of the size segregation.
8 The adjusted fugacity ratio is directly related to the composition, so a new estimate of
composition at 1(n1) can be calculated.
9 The pressure adjustment required at 1 is directly related to the change in composition so
a new P1 can be estimated.
10 With the new P1 and n1 , steps 6-9 are repeated until the values converge i.e. the
fugacity change calculated for P,T and n changing equals that predicted by equation 1.
11 The reference conditions now become P1, T1 and n2 and the second stage is
calculated.
12 When all upward stages have been calculated, the program returns to Tref and Pref and
does the downward stages in exactly the same way

The result of this calculation is a series of pressures temperatures and compositions and
depths for each of the selected depths. If you are starting from an oil and travel up the
structure, the fluid will get lighter and lighter, containing more and more methane. At the
some stage the composition calculated will be a gas. This is the GOC. With the Ps, Ts and
compositions the equation of state can be used to calculate the properties of the fluid at
each depth including saturation pressure density GOR etc.

The results are normally projected graphically with the change in reservoir pressure and
saturation pressure shown versus depth.

Petroleum Experts
Chapter 4 - Models and Model Options 27 - 39

Fig. 4
28 - 39 PVTP User Guide

Fig. 5

From this diagram it can be seen that the fluids are very different. They do however share
a common point that is equal to the temperature and pressure at the GOC.

4.5.2 Compositional Gradient References


1) Thermodynamics of Hydrocarbon Reservoirs by A. Firoozabadi :-McGraw-Hill
(ISBN: 0-07-022071-9)

2) Prediction of compositional grading in a reservoir fluid column - Montel F. and


Gouel P.L. SPE 14410

3) Compositional variations within a hydrocarbon column due to gravity - Schulte A.


55th Techn. Conf. Soc. of Petr. Eng. AIMF,Texas,Sept. 21-24,1980 SPE 9235

4) Role of Asphaltenes in Compositional Grading of a reservoir's Fluid Column -


Hirschberg A. SPE 13171

Petroleum Experts
Chapter 4 - Models and Model Options 29 - 39

4.6 Viscosity and Thermal Conductivity Models


Various viscosity models have been introduced into the PVTp program.
Only one model is active in a file at any one time. The active model is selected via the
combo box which appears on all the calculation input and regression selection displays.

The models available are listed below. To obtain details of any model click on the name.

Lohrenz, Bray Clark (section 4.6.1) - based on Jossi et al with reduced density
written in terms of Vcs
Pedersen et al (section 4.6.2) - corresponding states model with methane as the
reference substance
Zhou et al (section 4.6.3) - corresponding states model with nC14 as the reference
substance
Little and Kennedy (section 4.6.4) - correlation based on oil density molecular
weight,specific gravity and weight fraction of C7+

With unmatched fluids the Pedersen model tends to give the best results. Lohrenz Bray
Clark is the most commonly used model but it gives high errors for liquids if the viscosity is
not matched. When matched the LBC model gives the best match. In most cases LBC is
the only practical options as export formats to other packages are written in terms of LBC
inputs..

The Little and Kennedy correlation is very good at predicting the viscosity of oils above
bubble point. Below saturation pressure results are mixed with some fluid values being
totally unsatisfactory.

The thermal conductivity model that is included within PVTp is very similar in derivation to
the viscosity model from Pedersen et al (section 4.6.5)
The references for all the models are given in section 4.6.6

PVTP User Guide


30 - 39 PVTP User Guide

4.6.1 Lohrenz,Bray,ClarkViscosity Model


Various viscosity models have been introduced into the PVTp program.
This model(ref 5) is probably the most commonly used for hydrocarbon mixtures. Is is an
adaptation of a model proposed by Jossi et al (ref 11).

At the core of this model is a fourth-degree polynomial in reduced density.

[(η − η*)ξ + 10 −4 ]1 / 4 = a1 + a 2 ρ r + a3 ρ r + a 4 ρ r + a5 ρ r
2 3 4

where a1 = 0.10230
a2 = 0.023364
a3 = 0.05833
a4 = -0.040758
a5 = 0.0093324

x 2 is the low-pressure gas mixture viscosity and is determined by the method proposed by
Herning and Zippener (ref 12)

N N
η* = ∑ z iη i* MWi1 / 2 / ∑ z i MWi1 / 2
i =1 i =1

the individual component viscosities are given by the following expressions

1
η i * = 34 x10 −5 Tri0.94
ξi for
Tri < 1.5

1
η i * = 17.78 x10 −5 ( 4.58Tri − 1.67) 5 / 8
ξi for
Tri > 1.5
ξ i is the component viscosity-reducing parameter.
For a mixture this variable is determined as follows:

1/ 6 −1 / 2 −2 / 3
N  N  N 
ξ = ∑ z i Tci  ∑ z i MWi  ∑ z i Pci 
 i =1   i =1   i =1 

ρ r in equation 1 is the mixture density divided by the critical density of the mixture.

ρ
ρr =
ρc

The variation introduced by Lohrenz et al was in the calculation of the critical density.
This variable was rewritten in terms of the critical volumes of the mixture components.

−1
 
1  N 
ρc = =  ∑ ( z iVci ) + z c 7 +VcC 7 + 
Vc  i =1 
 i ≠C 7 + 

The origins of the LBC model lies in gases rather than liquids. Its dependence on the
density term causes inaccuracies with viscous fluids.

Petroleum Experts
Chapter 4 - Models and Model Options 31 - 39

NOTES on REGRESSION

Without matching the LBC model can get the viscosity of oils very wrong. The introduction
of Viscosity Automatching into the PVTp program was designed to help address this
weakness.

In regression the program uses the component critical volumes to match lab data.Since the
Vc values are not used anywhere else within the EoS models, this matching can be done in
isolation.

See Viscosity Matching(Section 7.10.3) for more details on the procedure used.

4.6.2 Pedersen et al Viscosity Model


In this model viscosity is calculated using a corresponding states model. This method is
very similar to the corresponding states thermal conductivity model .
The basic model is described in reference 1.
The corresponding states theory suggests the reduced conductivity η r is a function of
reduced pressure and temperature

η r = f ( Pr , Tr )

and the reduced viscosity is given by

η
ηr = −1 / 6
(Tc ) ( Pc ) 2 / 3 ( MW )1 / 2

The basic premise of the corresponding states theory is that the function f is the same for
all the similar substances within the group.
Pedersen et al (refs 1,3,4) have proposed the following relationship for the viscosity of
mixtures.

η mix ( P, T ) = (Tc, mix / Tco ) −1 / 6 ( Pc, mix / Pco ) 2 / 3 ( MWmix / MWo ) 1 / 2 (α mix α 0 )( η o ( Po , To ))
...........1)

Tc ,mixα mix Pc ,mixα mix


To = T /( ) Po = P /( )
where
Tcoα o and
Pcoα o

The subscript o indicates the reference substance methane.

The critical temperature of the mixture is given by:

[( )1 / 3 ( )1 / 3 ]3 [ ]1 / 2
, ( )
∑∑ [( ) 1/ 3
( ) 1/ 3 3
]
32 - 39 PVTP User Guide

Tci 1 / 3 Tcj 1 / 3 3
8∑∑ z i z j [( ) + ( ) ] [Tci Tcj ]1 / 2
i j Pci Pcj
Pc ,mix = ( )
Tci 1 / 3 Tcj 1 / 3 3 2
(∑∑ z i z j [( ) + ( ) ] )
i j Pci Pcj
The molecular weight is calculated using the expression

2.303 2.303
MWmix = 1.304 x10 − 4 ( MWw − MWn ) + MW n

In function 1) the important elements still to be found are


a) The viscosity of the reference substance VIZ methane
b) The correction factor
αx for the mixture and the reference substance

The model for the the viscosity of the reference substance is based on the work of Hanley
et al (reference 9).
This has been extended by Pedersen and Fredenslund (ref 1,3) to become:

η ( ρ , T ) = η o (T ) + η1 (T ) ρ + F1 ∆η ' ( ρ , T ) + F2 ∆η" ( ρ , T )

Each element is a polynomial in temperature and methane density. See reference 1 and 4
for details.
The methane density comes in the form of a modified BWR EoS.Details of this polynomial
are given in reference 10.
Pedersen et al have suggested that the correction factors should take the following form:

α mix = 1 + 7.378 x10 −3 ρ ri1.847 MWmix


0.5173
and
α o = 1 + 0.031ρ ri
1.847

NOTES on REGRESSION
In general,without matching the Pedersen model gets closer to the range of petroleum
mixture viscosities. There are still inaccuracies , however, particularly with viscous oils.
In an effort to reduce this error a matching facility has been added to this model.
Unfortunately, the main variables within the model are the component Tcs and Pcs.
Since these values are set by PSAT matching etc. it is not practical to use them again for
viscosity matching.
As an alternative, a shift and multiplier option has been added to match viscosity with this
model i.e..
Visc = Visc*Multiplier + Shift
See Viscosity Matching(Section 7.10.3) for more details on the procedure used.

4.6.3 Zhou et al Viscosity Model


This viscosity model is similar to the model proposed by Pedersen et al. it is also a
corresponding states model.
The function is less complex than that applied by Pedersen. The other significant
difference is that nC14 rather than methane is used as the reference substance.
The corresponding states theory suggests the reduced conductivity η r is a function of
reduced pressure and temperature
η r = f ( Pr , Tr )
and the reduced viscosity is given by

Petroleum Experts
Chapter 4 - Models and Model Options 33 - 39

η
ηr = −1 / 6
(Tc ) ( Pc ) 2 / 3 ( MW )1 / 2
The basic premise of the corresponding states theory is that the function f is the same for
all the similar substances within the group.

Zhou et al (ref 6) have proposed the following relationship for the viscosity of mixtures.

η mix ( P, T ) = (Tc , mix / Tco ) 1.3845374 ( Pc, mix / Pco ) −0.756972 ( MWmix / MWo ) −0.532041η o ( Po , To )
...........1)

Tc ,mix Pc ,mix
To = T /( ) Po = P /( )
where
Tco and
Pco

The subscript o indicates the reference substance nC14.

The viscosity of the reference substances given by the expression:


 dP 4 + eP 3 + fP 2 + gP + h 
η o (T , P) = exp aP 2 + bP + 
 T − (iP 2 + jP + k ) 
where P is the pressure in bars and T is the temperature in degrees C.

The constants used in the formula have the following values:

a = -4.868729x10-6
b = 6.162691x10-3
c = -3.461585
d = 1.545022x10-9
e = -3.443880x10-6
f = 4.187426x10-3
g = -2.527380
h = 874.0397
i = -2.985316x10-4
j = 0.3435125
k = -182.6151

NOTES on REGRESSION
In general,the Zhou model does not get as good an initial value as that of Pedersen et al.
There are significant inaccuracies , particularly with viscous oils.
In an effort to reduce this error a matching facility has been added to this model.
Unfortunately as with Pedersen, the main variables within the model are the component
Tcs and Pcs.
Since these values are set by PSAT matching etc. it is not practical to use them again for
viscosity matching.
As an alternative, a shift and multiplier option has been added to match viscosity with this
model i.e..
Visc = Visc*Multiplier + Shift
See Viscosity Matching(Section 7.10.3) for more details on the procedure used.

PVTP User Guide


34 - 39 PVTP User Guide

4.6.4 Little and Kennedy Viscosity Model


This viscosity model has been derived empirically from measurements of pure component
and petroleum mixture viscosities(ref 7).
The equation is a cubic in viscosity:

4 4
1 1 M 
B = B 0 + B 1   + B 2   + B 3 (γ )3 c 7 + + B 4 (γ )4 c 7 + + B 5   c7+
T
  T   γ 
4
ρ 
+ B 6  m  + B 7 ( M ) + B 8 ( M ρ m ) + B 9 ( M ρ m ) 4 + B 10 ( ρ m ) 3 + B 11 ( ρ m ) 4
 T 

where µ is the viscosity, T is the temperature in degrees Rankin and P is the pressure in
psia.

The values of
a m and bm are given by the following functions:
a m = exp(log e A)
bm = exp(log e B )
A and B in turn are given by polynomial expansions:

1 M  ρ 
A = A0 + A1   + A2 ( M ) c 7 + + A3   + A4  m 
T  γ  c7+  T 
2
ρ 
+ A5  m  + A6 ( M ) + A7 ( M ) 3 + A8 ( M ρ m ) + A9 ( M ρ m ) 3 + A10 ( ρ m ) 2
 T 
and
4 4
1 1 M 
B = B0 + B1   + B2   + B3 (γ ) c 7 + + B4 (γ ) c 7 + + B5 
3 4
 c7+
T  T  γ 
4
ρ 
+ B6  m  + B7 ( M ) + B8 ( M ρ m ) + B9 ( M ρ m ) 4 + B10 ( ρ m ) 3 + B11 ( ρ m ) 4
 T 
with
M c 7 + the molecular weight of the C7+ fraction
γ c 7 + the specific gravity of the C7+ fraction
M the average molecular weight of the mixture
ρ m the density of the mixture at reservoir conditions

The value of the A and B constants are given in the table below:

A Value B Value
0 21.918581 -2.6941621
1 -16815.621 3757.4919
2 0.023315983 -0.31409829x10(12)
3 -0.019218951 -33.744827
4 29938.501 31.333913
5 -2802762.9 0.24400196X10(-10)
6 -0.096858449 0.700237064X10(12)
7 0.54324554X10(-5) -0.037022195
8 0.13129082 0.070811794

Petroleum Experts
Chapter 4 - Models and Model Options 35 - 39

9 -0.10526154X10(-5) -0.83033554X10(-9)
10 -31.680427 21.710610
11 -31.083554

4.6.5 Thermal Conductivity Model


Thermal conductivity is calculated using a corresponding states model. This method is very
similar to the corresponding states viscosity models .
The basic model is described in reference 1.
The corresponding states theory suggests the reduced conductivity λ r is a function of
reduced pressure and temperature
λ r = f ( Pr , Tr )
and the reduced conductivity is given by
λ
λr = −1 / 6
(Tc ) ( Pc ) − 2 / 3 ( MW )1 / 2
The basic premis of the corresponding states theory is that the function f is the same for
all the similar sustances within the group.
Pedersen et al (refs 1,3,4) have proposed the following relationship for the thermal
conductivity of mixtures.

λ mix ( P, T ) = (Tc , mix / Tco ) −1 / 6 ( Pc , mix / Pco ) 2 / 3 ( MWmix / MWo ) −1 / 2


x(α ix α 0 )( λ o ( Po , To ) − λ int,o ( Po )) + λ int,mix (T )
………………………1)

Tc ,mixα mix Pc ,mixα mix


To = T /( ) Po = P /( )
where
Tcoα o and
Pcoα o

The subscipt o indicates the reference substance methane.

The critial temperature of the mixture is given by:


Tci Tcj
∑∑ z z [( P
i j
i j )1 / 3 + (
Pcj
)1 / 3 ]3 [Tci Tcj ]1 / 2
ci
Tc ,mix = ( )
T Tcj
∑∑
i j
z i z j [( ci )1 / 3 + ( )1 / 3 ]3
Pci Pcj
with the critical pressure being given by:

Tci 1 / 3 Tcj 1 / 3 3
8∑∑ z i z j [( ) + ( ) ] [Tci Tcj ]1 / 2
i j Pci Pcj
Pc ,mix = ( )
Tci 1 / 3 Tcj 1 / 3 3 2
(∑∑ z i z j [( ) + ( ) ] )
i j Pci Pcj
The molecular weight is calculated using an expression put forward by Mo and Gubbins
(ref. 8)

1 T Tcj
MWmix = [∑∑ ( z i z j (1 / MWi +1 / MW j )1 / 2 (Tci / Tcj )1 / 4 ) /[( ci )1 / 3 + ( )1 / 3 ] 2 ] − 2 Tc ,mix Pc ,mix
−1 / 3 4/3

8 i j Pci Pcj
In function 1) the important elements still to be found are

PVTP User Guide


36 - 39 PVTP User Guide

a) The thermal conductivity of the reference substance VIZ methane


α
b) The correction factor x for the mixture and the reference substance
Most workers suggest that the thermal conductivity can be separated into two contributions
i.e. the internal and the translational:
λ = λtr + λint
The internal part is given by the following functions:
λ int = 1.18653η1 (Cp id − 2.5 R ) f ( ρ r ) / MW
f ( ρ r ) = 1 + 0.053432 ρ r − 0.030182 ρ r − 0.029725 ρ r
2 3

where η1 is the gas viscosity is the gas voscosity at temperature T and 1 atm. Cp
id
is the
Ideal Gas Heat Capacity at temperature T. R is the gas constant.
ρ r is the reduced density.
The model for the the thermal conductivity of the reference substance is based on the work
of Hanley et al (reference 9).
This has been extended by Pedersen and Fredenslund (ref 1,4) to become:
λ ( ρ , T ) = λ o (T ) + λ1 (T ) ρ + F1 ∆λ, ( ρ , T ) + F2 ∆λ,, ( ρ , T ) + ∆λ c ( ρ , T )
Each element is a polynomial in temperature and methane density. See reference 1 and 4
for details.
The methane density comes in the form of a modified BWR EoS.Details of this polynomial
are given in reference 10.
α
Tham and Gubbins reported x values for the smaller molecules found in hydrocarbon
mixtures(ref 11).
Pedersen and Fredenslund (ref 4) extended this past C7 using the function:
α i = 1 + 0.0006004 ρ ri2.043 MWi1.086
with the value for mixtures given by:
α mix = ∑∑ z i z j (α iα j ) 0.5
i j
..................2)
This expression was modified by Pedersen and Fredenslund (ref 4) to be:
α mix = 1 + ( ρ r / 2.6605) 2.4049 (α − 1)
α
where α is equal to the mix value in equation 2)

4.6.6 Viscosity and Thermal Conductivity References

1) Properties of Oils and Natural Gases by K.S.Pedersen,A.Fredenslund and


P.Thomassen :- Gulf Publishing Company.Houston

2) Pedersen K.S. et al ,"Viscosity of Crude Oil", Chem. Eng.Sci.,39,1984,pp 1011-


1016

3) Pedersen, K.S. and Fredenslund,Aa.,"An Improved Corresponding States Model


for the Prediction of Oil and Gas Viscosities and Thermal Conductivities",Chem.
Eng.Sci.,42,1987,pp 182-186

4) Christensen, P.L. and Fredenslund,Aa.,"A Corresponding States Model for the


Thermal Conductivity of Gases and Liquids",Chem. Eng.Sci.,35,1980,pp 871-875

Petroleum Experts
Chapter 4 - Models and Model Options 37 - 39

5) Lohrenz,J.,Bray,B.G., and Clark, C. R.," Calculating Viscosities of Reservoir Fluids


from Their Compositions",J.Pet.Technol.,Oct.1964,pp 1171-1176

6) Ducoulombier,D.,Zhou H.,Boned,C.,Peyrelasse,J.,Saint-Guirons,H., and Xans P.,J.


Phys.Chem. 1986,90,pp 1692-1700

7) Little,Kennedy,Soc.Pet.Eng. J.,June 1968 ,pp 157

8) Mo,K.C. and Gubbins,K.E., "Conformal Solution Theory for Viscosity and Thermal
Conductivity of Mixtures",Mol.Phys.,31,1976,pp 825-847

9) Hanley H.J.M.,McCarty,R.D. and Haynes,N.M.,"Equation for the Viscosity and


Thermal Conductivity of Methane",Cryogenics,15,1975,pp 413-417

10) McCarty,R.D.,"A Modified Benedict-Webb-Rubin Equation of State for Methane


Using Recent Experimental Data",Cryogenics,14,1974,pp 276-280

11) Jossi,J.A.,Stiel,L.I.,and Thodos,G.,"The Viscosity of Pure Substances in the Dense


Gaseous and Liquid Phases",AIChE J.,8,1962,pp 59-63

12) Herning,F.and Zippener, L.,"Calculation of the Viscosity ofTecnical Gas Mixtures


from the Viscosity of Individual Gases"Gasu. Wasserfach,79,1936,pp 69-73

PVTP User Guide


38 - 39 PVTP User Guide

4.7 Water Modelling


The presence of water in most reservoirs and surface networks creates the requirement to
model the multiphase mixtures produced. The conventional equations of state such as
Peng Robinson(PR) or Soave Redlich Kwong(SRK) are not adequate for reproducing the
special interaction of the aqueous phase.

Workers in this area (refs 1 and 2), have concentrated their efforts in modifying the
attractive fuction a(T) of water and providing binary interaction coefficients between water
and the other species within the mixture.

Soreide and Whitson Model


This model is outlined within reference 1. The main element is the introduction of a
temperature dependent binary interaction coefficient(BIC), the magnitude of which depend
both on the species involved and the type of phase i.e aqueous or non-aqueous.

Aqueous Phase
In general the value of the BIC int this phase is given by:

k ij = A0 (1 + α 0 c sw ) + A1Tri (1 + α 1c sw ) + A2Tri2 (1 + α 2 c sw )

where j represents water, csw is the salinity of the water and Tri is the reduced temperature
of component i.
The constants in the equation have the following values:

Ao = 1.1120 − 1.7369ω i−0.1


A1 = 1.1001 + 0.8360ω i
A2 = −1.15742 + 1.0988ω i
α 0 = 4.7863 x10 −13 ω i
α 1 = 1.438 x10 − 2
α 2 = 2.1547 x10 −3

In addition the authors proposed specific correlations for N2,CO2 and H2S

N2
k ij = −1.70235(1 + 0.25587c sw
0.7505
) + 0.44338(1 + 0.08126c sw
0.75
)Tri

CO2
k ij = −0.31092(1 + 0.15587c sw
0.7505
) + 0.23580(1 + 0.17837c sw
0.979
)Tri − 21.2566 exp(−6.7222Tri − c sw )

H2S
k ij = −0.20441 + 0.23426Tri

Non-aqueous Phase
In the non-aqueous phase only H2S is given a temperature dependent BIC:

k ij = −0.19031 + 0.05965Tri

Petroleum Experts
Chapter 4 - Models and Model Options 39 - 39

Some of the lighter components are given the values shown below , the rest are given a
value of 0.5
C1 = 0.485
C2 = 0.492
C3 = 0.5525
nC4 = 0.5091
N2 = 0.4778
CO2 = 0.1896

In addition , the normal a(T) function is replaced for water with the equation :

α 1 / 2 = 1 + 0.453(1 − Tr (1 − 0.0103c 1sw.1 )) + 0.034(Tr−3 − 1)


The fact that the BICs are temperature and phase dependent means that they cannot be
manually set by the user.
See Streams Menu (Section 5.5) on how streams containing water may be prepared.

4.7.1 Water Modelling References


1 )Peng-Robinson predictions for hydrocarbons,CO2,N2 and H2S with pure water and
NaCl brine ,I. Soreide and C.H. Whitson, Fluid Phase Equilibria,77:217-290

2) EoS Predictionsof Compressibility and Phase Behaviour in Systems Containing Water,


Hyrocarbons and CO2, A.Firoozabadi,R.Nutakki,T.W. Wong and K.Aziz.SPE 15674.

3) Multicomponent CO2/Water/Hydrocarbon Phase Behaviour Modelling:A Comprehensive


Study,D.Y. Kuan,P.K. Kilpatrick,M.Sahimi,L.E. Scriven and H.T.Davis, SPE 11961

4) Predicting Phase Behaviour of Water/Reservoir-Crude Systems Using the Association


Concept,A.A. Shinta and A.Firoozabadi , SPE 27872

PVTP User Guide


5 Main/Stream Options
This section describes the PVT main menu and the data required to be input before an
analysis can be performed. Data should be entered by working through the PVT menus
from left to right and top to bottom. The following menus are described in this section:
• Main menu
• Options menu
• Streams menu

5.1 PVT Main Menu


All PVT functions are listed as menu options. Simply select the menu required and choose
an item from the list displayed. This will activate an option or display the relevant screen.

Every option you select has a result you can see. You will automatically be taken through
the necessary steps to enter data and perform calculations. The intention is to move from
left to right across the main applications menu.

To start PVT, select the appropriate icon and press ↵ or double-click the program icon. A
screen similar to the following will appear:

Figure 5.1:
Main Menu

The menu options across the top of the screen are the PVT main menu options. Each is
described below.
2 - 24 PVTP User Guide

5.1.1 File
The File menu is a management menu with commands that enable you to open, save or
create new data files. You can use this menu to move between open files and set-up
printer options.

5.1.2 Options
The Options menu is the starting point of PVT and the key to the program. Use this menu
to define your application and principal features of the PVT model to be used. The options
you select are unique to the current file and apply until changed by the user, or another file
is recalled. These options also determine the subsequent screens, menus and commands
which are displayed. This menu is also used to define the input and output units of
measurement. A flexible system of units is provided allowing you to customise the internal
units system.

5.1.3 Data
Use the Data menu to define mixture compositions and properties including pseudo-
components. PVT correlations can be modified to match laboratory measured data using a
non-linear regression technique. In addition , grouping of components ,setting of reference
conditions, and customising the equation of state are also available.

5.1.4 Calculation
The Calculation menu provides you with the relevant calculation options. Calculations
include critical temperature and pressure ,phase envelopes, constant volume depletion,
depletion study, constant composition expansion ,differential expansion ,separator
compositions, and compositional gradient and swelling tests

5.1.5 Calc. Solids


The Calc. Solds menu provides you with access to calculations involving hydrates and
waxes.

5.1.6 Streams
Within a PVTp file the data is packaged up as streams. Each stream being equivalent to a
PVT report. This menu allows you to setup new streams , delete a stream etc.

5.1.7 Reporting
The Report menu is used to generate the reports of the input data, analysis data and
results. Results can be viewed on the screen, sent to the Windows clipboard or saved in a
file.

5.1.8 Utilities
A series of useful calculators are included within the Utilities menu. These include API
conversion, material balance and enthalpy balance.

Petroleum Experts
Chapter 5 - Main Options 3 - 24

5.1.9 Preferences
This menu allows the user to change the look of the front screen and change some
calculation options.

5.1.10 Window
This menu offers the user the standard options available from an MDI (Multi Document
Interface)

The PVT package can load multiple PVT Project Files each of which occupies its own
window.
The windows can be selected ,cascaded,arranged and tiled via this menu.

5.2 Toolbar
Two toolbars are attached to the bottom of the main menu. Each icon represents one of
the most used menu options. As the mouse pointer passes over the icon a short
description of the option is displayed in the Statusline which is situated at the bottom of the
main PVT window. When an option is unavailable the icon is greyed-out.
To select an option , place the pointer over the icon button and press the left-hand mouse
button.
The main icons perform the following functions:

Open an existing PVT file

Save a PVT file

Select main PVT options

PVTP User Guide


4 - 24 PVTP User Guide

Change the PVT units for this file

Select the Components for this PVT file

Change the composition of the mixture

Calculate the Critical Pressure and Temperature

Calculate the Phase Envelope

Calculate a Range of Saturation Pressures

Calculate the results of a Constant Composition Expansion

Calculate the results of a Constant Volume Depletion

Calculate the results of a Depletion Study (wellstream analysis)

Calculate the results of a Differential Liberation

Petroleum Experts
Chapter 5 - Main Options 5 - 24

Calculate the results of a Separation Process

Calculate a Compositional Gradient

Calculate Swelling Test

Calculate Slim-tube

View mixture properties

Group mixture

Enter Lab/Match data

Regression

Exit from the PVT package

PVTP User Guide


6 - 24 PVTP User Guide

5.3 Summary Page


When a new file is created on an existing file is opened the front sheet shown in Figure 5.1
is replaced with a summary sheet showing the main points of information available for the
PVT project.

Figure 5.2:
Summary
Sheet

Multiple project files can be loaded. Switching between files is done via Window Menu or
by using the Next File button on the File Status bar. Each project file can be made up of
multiple streams, each containing a unique collection of data. The active stream is selected
via the list box wthin the summary toolbar.
The summary screen is made up of several elements which can be toggled on or off via the
Preferences menu:

Petroleum Experts
Chapter 5 - Main Options 7 - 24

If the Summary Screen is maximised a help tree appears on the right hand side of the
display. Clicking on any line will bring up the appropriate help item.

Figure 5.2a:
Expanded
Summary
Sheet

Within the display is information on whether the main calculations have been done for this
file. Double clicking any of the calculation names takes the user direcly to the calculation
input display.

PVTP User Guide


8 - 24 PVTP User Guide

5.4 Option Selection


The Options menu is used to define the characteristics of the PVT project. The options
selected establish the input data required and the calculation options available. The
selections made apply to the current session. The data entry screens, input fields and
variables are limited to those relevant to your particular application. Input options may be
changed at any stage of the processing. New choices may require other information to be
supplied. Therefore the user is advised to ensure that all relevant input is still valid for the
new option selection.

To access the Options menu, point to the menu name and click the mouse or press ALT O.
The following data entry screen will appear:

Figure 5.3:
System Options

The entry screen is divided in three sections - System options , User information, and
User Comments.

Under the System options section, define your PVT model characteristics such as Method,
fluid type, Separation Stages, Equation of State, etc. These selections determine
information you will be required to enter later. The User Information and User Comments
section of the screen allows the user to enter data , comments and dates which help
identify the project and which are printed out in the report Input Data section .

5.4.1 Option Selection


To select an option, click on the arrow to the right of the required field. The list of available
choices will be displayed.

5.4.2 PVT Method


There are three methods currently defined:
• Black Oil

• Equation of State

See Chapter 4 for more details .

Petroleum Experts
Chapter 5 - Main Options 9 - 24

5.4.3 Fluid Type


The fluid type options vary with the PVT Method

• Black Oil
Options available:
◊ Oil
◊ Dry and Wet Gas
◊ Retrograde Condensate

• Equation of State
No options available

5.4.4 Separator
The separator options vary with the PVT Method

• Black Oil
Options available:
◊ Single Stage
◊ Two Stage

• Equation of State
Options available:
◊ Multi-Stage

5.4.5 Equation of State


The Equation of Sate Options are described in more detail in Chapter 4 The options
available are: The choice is between a series of equations provided via the main
calculation library

Peng-Robinson
Soave-Redlich-Kwong

5.4.6 User Information


This section is designed to help the user keep track of which project is associated with the
PVT file data. None of the entries are mandatory and none of the information entered in
the boxes is checked. Entries available are:

◊ Company
◊ Field
◊ Location
◊ Platform
◊ Analyst

The User Information is printed as part of any PVT report.

PVTP User Guide


10 - 24 PVTP User Guide

5.4.7 User Comments


The user comments window allows the user to enter any comments which may be required
to track the history of the data or calculations within the PVT file.
To enter the comments area click the left hand mouse button when the cursor is over the
desired point.
A new line is entered in the comments block by typing Ctrl+Enter at the desired point.
Pressing the Date Stamp Button places the current date and time at the end of the
comments block. The Comments are printed as part of any PVT report.

The Data Input procedures for the Black Oil is described in Chapter 6. The Equation of
Sate Data Input options are covered in Chapter 7.

5.5 Streams Menu


The PVT project file acts as a container for multiple sets of PVT data. These may be from
different attempts to solve the same the same sample match eg.using different
recombination GORs. They may originate from different samples at different depths or
regions within a field. They may be from totally unconnected systems . Each Stream can
be interpreted as equivalent to a PVTP version 1 file.
This structure is explained more in section 7.0.

Multi-Stream Regression allows the user to set up multiple streams and match all lab data
using a common set of component properties. The streams may represent samples from
different wells or surface and reservoir. See Chapter 7 for more details.
The Streams Menu allows the user to manipulate these important data structures and
includes:

EDIT STREAM DETAILS -change stream name and comment.

ADD STREAM - copies existing streams or imports streams from other files

DELETE STREAM - removes unwanted streams.

CREATE A STREAM TO A TARGET GOR - mixes the stock tank gas and oil to create
a stream with a predetermined GOR

CREATE A STREAM TO A TARGET PSAT - mixes the stock tank gas and oil to
create a stream with a predetermined saturation pressure

BLEND STREAMS - mixes streams and their properties

ALLOCATE :BLEND STREAMS TO A TARGET GOR – mixes two streams using the
blending algorithm until the mixture meets the entered GOR. The program then reports
the volume and weight percents required to create the mixture.

ADD WATER TO A STREAM


Create a stream with a fixed amount of water
Create a stream saturated with water

See also DATA / EDIT MOLE PERCENTS

Petroleum Experts
Chapter 5 - Main Options 11 - 24

5.5.1 Edit Stream Details


This option allows the user to change the stream name and the comment associated with
the stream.

Load the display from the Streams|Edit details option within the STREAM MENU
Select a stream using the combo box ,change the comment or name and press EXIT when
complete.

See also:
PVT PROJECT STRUCTURE. -where streams fit in to the overall data structure
SELECT COMPONENTS - this display has an option to add an empty stream
EDIT MOLE PERCENTS - streams can be copied and their compositions edited using this
option.
ADD STREAM - copies existing streams or imports streams from other files
DELETE STREAM - removes unwanted streams.

5.5.2 Add Stream


This option allows the user to create a new stream from scratch,as a copy of an existing
stream or by importing.
The display is loaded from the Streams|Add stream menu option(see STREAM MENU)

PVTP User Guide


12 - 24 PVTP User Guide

to create an empty stream with no components selected click on the New Empty Stream
button . This will bring up the component selection dialog.
To COPY
Press Copy Existing Stream.This selection brings up this dialog

{bmc c:\projects\dev\pvtp\winhelp\BMP_WMF\STREAMS - ADD STREAM2.BMP}


To copy:

1. rename stream if required.


2. Highlight stream to copy.
3. Click on copy stream button.

To IMPORT
Press Import PVI File.This selection brings up this dialog

Petroleum Experts
Chapter 5 - Main Options 13 - 24

To Import:

1. Edit the new Stream name and comment..

2. Pressing IMPORT displays a PVT file selection dialog.Find the required file and press
OK.

3.The streams within this file will appear in the import listbox. Select the required stream
and press Read Stream.

Import ASCII file


This initiates the same import as the the File | Import option does.

Stream name and comment can also be adjusted after import using the EDIT DETAILS
menu option
Edit the new Stream name and comment. Select a stream from the list and press COPY.

See also:
PVT PROJECT STRUCTURE. -where streams fit in to the overall data structure
SELECT COMPONENTS - this display has an option to add an empty stream
EDIT MOLE PERCENTS - streams can be copied and their compositions edited using this
option.
DELETE STREAM - removes unwanted streams.

PVTP User Guide


14 - 24 PVTP User Guide

5.5.3 Delete Stream


Use this option to copy an existing stream or to import a stream from another PVT project
file .The display is loaded from the Streams|Delete .Stream menu option(see STREAM
MENU)

Select the required stream and press Delete Stream. You will be prompted to confirm this
operation. If only one stream is available the delete option is not allowed.

See also:
PVT PROJECT STRUCTURE. -where streams fit in to the overall data structure
SELECT COMPONENTS - this display has an option to add an empty stream
EDIT MOLE PERCENTS - streams can be copied and their compositions edited using this
option.
ADD STREAM - copies existing streams or imports streams from other files

Petroleum Experts
Chapter 5 - Main Options 15 - 24

5.5.4 Create a Stream to a target GOR

Use this option to create a stream with a particular GOR by combining the separator gas
and stock tank oil from a matched stream .
The display is loaded from the Streams|Create a Stream.... menu option
(see STREAM MENU) or from the icon above.

IMPORTANT NOTE
When this stream is created it is done with surface gas and oil. The process therefore
mimics a recombination change. If the objective is to reflect a loss or gain of gas at
reservoir conditions then the approach is not entirely appropriate. The gas evolved near
saturation or that present in the gas cap may be quite different to that produced from the
separators. Using the swelling test or other methodologies may produce better results.

The procedure for creating the stream is as follows:


Select the stream which is to be used as the source of the gas and oil. This will be
flashed to surface directly or through a separator train to provide the dead oil and
gas compositions.
If the target GOR is to be with respect to a separator train setup the required stages
in the edit boxes provided and click on the Use Separator Train.... check box. If no
selections are made in the Separator Data area the fluid will be flashed straight to
stock tank conditions i.e.. standard temperature and pressure.
Enter the target GOR and click on the Create Stream button.
As the program iterates the iteration number and best solution to date will be
displayed

PVTP User Guide


16 - 24 PVTP User Guide
When a solution is found ( within the convergence test limit) the stream will be
created and labelled with the GOR value.
On successful completion the dialog will shut down and return to the main display

The number of iterations carried out and the accuracy of the final value can be changed
using the edit boxes provided.

Exit will close down the dialog and retain any entries which have been made.

Cancel will close down the dialog and ignore any entries which have been made.

5.5.5 Create a Stream to a target Saturation Pressure

Use this option to create a stream with a particular PSAT by combining the separator gas
and stock tank oil from a matched stream .
The display is loaded from the Streams|Create a Stream.... menu option(see STREAM
MENU) or from the icon above.

The procedure for creating the stream is as follows:


Select the stream which is to be used as the source of the gas and oil. This will be flashed
to surface directly or through a separator train to provide the dead oil and gas
compositions.

Enter the Temperature at which the calculation is to be done


Select the phase to be produced. With mose fluids a gass and oil can be produced
with the same PSAT .See Plot Profile below.
Enter the target PSAT and click on the Create Stream button.

Petroleum Experts
Chapter 5 - Main Options 17 - 24

As the program iterates the iteration number and best solution to date will be
displayed
If the saturation pressure target is above the maximum possible for the mixture a
warning will appear.See Plot Profile below
When a solution is found ( within the convergence test limit) the stream will be
created and labelled with the PSAT value.
On successful completion the dialog will shut down and return to the main display

The number of iterations carried out and the accuracy of the final value can be changed
using the edit boxes provided.
Exit will close down the dialog and retain any entries which have been made.
Cancel will close down the dialog and ignore any entries which have been made.

Unlike black oil models , EoS modelling is limited by the physical and mathematical realites
of mixing two fluidsi.e the separator liquid and gas. In a typical system the saturation
pressure of the mixture will rise from either extreme to a maximum somewhere in middle.
This feature highlights this limitation by plotting the range of possible saturation pressures
that can be derived from mixing the gas and oil. The typical plot below is taken from a
condensate sample.

The poinst with the additional sqares around are gas. The star on the plot marks the
original mixture's saturation pressure. It can be seen from thisplot that near critical fluids
,in general, will not produce a mixture saturation pressure very much above that of the
original mixture. See additional help on Plotting (Chapter 11).

PVTP User Guide


18 - 24 PVTP User Guide

5.5.6 Blend Streams


Use this option to copy an existing stream or to import a stream from another PVT project
file .The display is loaded from the Streams|Blend Streams menu option(see STREAM
MENU)

This option allows the user to mix in a controlled fashion x% of stream A with y% of stream
B. All the component properties of each stream are combined using a mixing rule to form
the new stream’s values.
The stream produced can be assigned to a new stream,or used to overwrite an existing
stream, or sent to an archive. This is done via the radio buttons within the dialogue.
Select the two streams,select the percentages of each stream and click on Blend.
Press on OK to exit the dialogue and retain the changes.
Press on Cancel to exit the dialogue and ignore the changes.

Petroleum Experts
Chapter 5 - Main Options 19 - 24

5.5.7 Allocate:Blend Streams to a Target GOR


Use this option to copy an existing stream or to import a stream from another PVT

This option allows the user to calculate the amount of two streams that would be required
to produce a mixture of the desired GOR. After calculation the stream can be created.
The display is loaded from the Streams|Allocate:Blend streams.... menu option(see
STREAM MENU) .

IMPORTANT NOTE
The calculation will assume that all the components are perfectly mixed and come to
thermodynamic equilibrium. In the real case of two fluids meeting at a manifold the contact
time and phase splits present may not allow this to occur

The procedure for creating the stream is as follows:


Select the streams which are to be blended.
If the target GOR is to be with respect to a separator train setup the required stages in the
edit boxes provided and click on the Use Separator Train.... check box. If no selections
are made in the Separator Data area the fluid will be flashed straight to stock tank
conditions i.e.. standard temperature and pressure.
Enter the target GOR and click on the Calculate button.
As the program iterates the iteration number and best solution to date will be displayed
When a solution is found ( within the convergence test limit) the mole percents and weight
percents of each stream requied will be displayed
Click on Create Stream if required.
On successful completion the dialog will shut down and return to the main display

The number of iterations carried out and the accuracy of the final value can be changed
using the edit boxes provided.
Exit will close down the dialog and retain any entries which have been made.

The Plot Profile button will display graphically the full range of possible fluids.

PVTP User Guide


20 - 24 PVTP User Guide

Petroleum Experts
Chapter 5 - Main Options 21 - 24

5.5.8 Add Water : Create a Stream with a Fixed Amount


of Water

Use this option to create a stream with a particular mole percentage of water. This
operation is normally done to a matched stream .
The display is loaded from the Streams|Add Water to a Stream.... menu option
or from the icon above.
PVT lab experiments are normally done on samples from which all the water has been
removed. The PVT report must therefore be matched with no water present. This feature
allows a known water to be added and the effect of the water on the phase equilibria to be
calculated.

A typical display would be:

Enter the mole percent of water required in the edit box provided and click on Create
Stream.

PVTP User Guide


22 - 24 PVTP User Guide

5.5.9 Add Water : Create a Stream Saturated with Water

Use this option to create a stream which contains the maximum percentage of water
before a water phase forms. This operation is normally done to a matched stream .
The display is loaded from the Streams|Add Water to a Stream.... menu option
or from the icon above. The calculation can also be reached from the Quick Calc dialog
The calculation is available in two forms:
Single Point - Create a Stream. This option calculates the value at single temperature
and pressure and allows the user to create a new stream containing the calculated amount
of water.
Range of Values. This calculates the water concentration over a range of temperature and
pressures.
A typical Single Point display would be:

Enter the pressure, temperature and water salinity and click on Calculate.
When a value has been calculated the program allows the user to create a stream:

Enter a stream name and comment if required and click on To Stream.


Selecting Range of Values changes the display to:
Petroleum Experts
Chapter 5 - Main Options 23 - 24

Enter the range of pressures and temperatures required and click on Calculate.
This brings up the caculation results table.

PVTP User Guide


24 - 24 PVTP User Guide

Click on Calc again.

Petroleum Experts
6 Black Oil Input
This section describes the PVT the Data Input options for the Black Oil .

6.1 BLACK OIL PVT - General


The first stage in Black Oil PVT is to select the Model and the major variations i.e. Fluid
Type and Separator setup using the OPTIONS display.
Figure 6.0 shows a typical Options screen for Black Oil.

Figure 6.0:
PVT Input Screen

The methods available are:

BLACK OIL
EQUATION OF STATE

The BLACK OIL method is covered in this chapter, Equation of State is dealt with in
subsequent chapters.

The Black Oil Method originated as a series of empirical oil correlations . With time, the
methodology was extended to cover gases and condensates. The input and correlation
options change with fluid type. Use the Fluid Type listbox to match the fluid under study.

Depending on the Method , options of one, two, or multiple stage separator inputs may be
available.
When a Black Oil is used , the PVT summary screen and its icon toolbar adjust to provide
the correct information and menu options. Figure 6.0a shows a typical Summary
Screen.The example chosen is a Retrograde Condensate fluid using the Black Oil Method.
2 - 10 PVTP User Guide

Figure 6.0a:
PVT Input Screen

6.2 Toolbar
A toolbar of icons is attached to the bottom of the main menu. Each icon represents one of
the most used menu options. As the mouse pointer passes over the icon a short
description of the option is displayed in the Statusline which is situated at the bottom of the
main PVT window. When an option is unavailable the icon is greyed-out.

To select an option , place the pointer over the icon button and press the left-hand mouse
button.

The icons perform the following functions:

Open an existing PVT file

Close an Open PVT file

Select main PVT options

Change the PVT units for this file

Petroleum Experts
Chapter 6 Black Oil Input 3 - 10

6.2.1 BLACK OIL PVT - Oil


Select the Data | Input Data option from the main menu to display the following PVT Input
data screen:

Figure 6.1:
PVT Input Screen

Enter the required data in the fields provided. You can move from one box to another by
pressing the TAB key. Next, select the correlation methods you want to apply and click
OK.

6.2.2 Match Data


Enter PVT laboratory measured data to match to as shown on the example screen below.
The correlations can be adjusted using non-linear regression techniques (using the
Regression button) to best fit the measured data.

Figure 6.2:
PVT Match Data Screen

For each match data table, enter the temperature and bubble point, then enter pressure
versus gas oil ratio, oil FVF and oil viscosity. Where data is incomplete or not available,
leave the field blank.

PVTP User Guide


4 - 10 PVTP User Guide

6.2.3 Regression
This option is used to perform the non-linear regression which adjusts the correlations to
best fit laboratory measured PVT data. The non-linear regression matching technique can
be used on up to five PVT match tables, each with a different temperature. The following
PVT properties can be used as match variables:
Pb Bubble point pressure.
GOR Gas oil ratio versus pressure.
FVF Oil formation volume factor versus pressure.
Oil viscosity Oil viscosity versus pressure.
It is not necessary to match on all properties. In cases where the PVT data is incomplete
or of poor quality, good results can often be obtained by matching on the best
characterised parameters only. However, because bubble point can be difficult to
accurately predict from correlations, it is recommended that where possible, it is used as a
match parameter. The minimum data required to perform a regression match is the bubble
point and GOR.

The form of the correlations for FVF are different above and below the bubble
point. If the FVF at bubble point is not available, the regression may not achieve
good results. When matching the oil FVF always enter bubble point data.

Figure 6.3:
PVT Regression Screen

6.2.4 Match
From the Regression screen, individual correlations can be matched to selected measured
PVT data by:

• Selecting the correlations


• Selecting the fluid properties to match to
• Clicking on Match

6.2.5 Match-all
All correlations can be matched to all the fluid property data in one key stroke by selecting
the Match All command button.

Petroleum Experts
Chapter 6 Black Oil Input 5 - 10

6.2.6 Parameters
Having performed the matching process the match parameters are displayed by clicking on
Parameters. The non-linear regression technique applies a multiplier - Parameter 1, and a
shift - Parameter 2 to the correlations. The standard deviation is also displayed which
represents the overall quality of fit. The lower the standard deviation, the better the fit.

6.2.7 Viewing the Match Parameters


The Parameters button displays the PVT correlations parameters screen. This shows the
match parameters and the standard deviation for each matched correlation. Use these
statistics to select the best correlation for your application. A plot should be made (refer
calculation and plot sections) and a visual check of the fit quality performed before making
your final selection. The match parameters can all be reset (i.e. returned to the un-
matched state) by selecting the reset option. The following is an example of a correlation
parameters screen:

Figure 6.4:
PVT Match Parameters

6.2.8 Calculations
In order to make a plot or listing of fluid property data, PVT must first calculate the values
over a specified range of temperatures and pressures. Using the calculated data points,
plots of fluid properties versus temperature or pressure can be generated. The following is
an example of the Calculate | Calculations screen. If the correlations have been matched,
then the fluid properties will be calculated using the modified correlations.

PVTP User Guide


6 - 10 PVTP User Guide

Figure 6.5:
PVT Calculation Set-up

6.2.9 Calculating PVT Data


To generate tables and plots of PVT data:

• Select Correlations (use the best matched ones)


• Enter the temperature range and number of steps
• Enter the pressure range and number of steps
• Select whether the matched or unmatched correlations should be used
(click on Use Match Data for Calculations checkbox)
• Click OK
• Click Calculate to compute PVT data for the entire range of pressures and
temperatures required by your application. The following calculation screen will be
displayed:

Figure 6.6:
PVT Calculation Results

Petroleum Experts
Chapter 6 Black Oil Input 7 - 10

6.2.10 Plotting the Calculated Data


The calculated data can be displayed on a plot. The variables which are plotted are
defined under the Variables option on the plot. After performing a PVT calculation click on
Plot from the PVT calculation screen.

• Select Pressure for the X-axis.


• Select Oil FVF for the Y-axis.

Figure 6.7:
PVT Results Plot

Carefully examine the PVT plots for consistency with your match data. If necessary, select
a different correlation and repeat the PVT calculations until you are satisfied with the
results.

PVTP User Guide


8 - 10 PVTP User Guide

6.2.11 BLACK OIL PVT - Dry and Wet Gas


The program assumes that all the liquid drop out occurs at the separator. For pressure
drop calculations, an equivalent gas rate is used allowing for the Condensate and water
production by ensuring a mass balance is observed.

6.2.11.1 Input Data


When Dry and Wet Gas is selected as the PVT option, the following Input data
screen is displayed:

Figure 6.8:
Dry and Wet Gas PVT

6.2.11.2 Match Data


Please refer to Match data in Section 6.1.1. The following fluid properties can be matched:
• GOR
• Z factor (gas compressibility factor)
• Gas FVF
• Gas viscosity
All other operations are carried out as for Oil PVT. Refer to Section 6.1.1.

Petroleum Experts
Chapter 6 Black Oil Input 9 - 10

6.2.12 BLACK OIL PVT - Retrograde Condensate


The PVT Retrograde Condensate (Black oil) model has been developed in house by
Petroleum Experts. This model predicts liquid drop out. The reservoir gas gravity is
determined using the principle of mass balance for an equivalent density of the oil.

6.2.12.1 Input Data


When Retrograde Condensate (Black oil) Method is selected the following input data
screen is displayed:

Figure 6.9:
Black Oil Condensate PVT

Enter the required data. Note if tank GOR and tank gas gravity are unknown, they can be
left at 0. For such cases, the total produced GOR should be entered under separator
GOR. Condensate gravity is at standard conditions.

If the separator pressure is above dewpoint, then there can be no liquids


production. PVT handles conflicting input data by dropping the separator
pressure to atmospheric, and increasing the separator gas gravity as required to
account for the liquid production indicated by the Separator GOR. The mass
balance is respected at all times.

6.2.12.2 Match Data


Please refer to the Match data in section 6.1.1. The following fluid properties can be
matched to:
• Dew point
• Produced CGR (condensate to gas ratio)
• Z (gas compressibility factor)
• Gas viscosity
• Gas FVF

The temperature and dew point must be entered for each set of match data.

PVTP User Guide


10 - 10 PVTP User Guide

CAUTION: When matching oil density, there should be no input pressure higher
than Dew Point, since the oil density does not exist beyond that point.

All other operations are carried out as for Oil PVT. Refer to Section 6.1.1.

Petroleum Experts
7 Input Data EoS
This section describes the data input required for the Equation Of State PVT model.

7.1 General Project Data Structure


The PVT project file acts as a container for multiple sets of PVT data. These may be from
different attempts to solve the same the same sample match eg.using different
recombination GORs. They may originate from different samples at different depths or
regions within a field. They may be from totally unconnected systems . each Stream can be
interpreted as equivalent to a PVTP version 1 file.

7.1.1 STREAMS
A stream is the main structure for holding data within a PVT file. A project must have at
least one stream. Each stream is independent with the following data contained within it:

a) Composition
This is the identification of the components, the mole percents of each and the component
properties. the composition may be grouped and/or matched.
Figure 7.0 shows the structure of the PVT EoS data within a stream.
The most important element of this set of data is the Working Composition. This contains
the components,composition and properties which can be viewed and manipulated via the
View Properties display(Section 7.5). This composition is the one which is stored with the
PVT file and used as the basis for Regression and the other PVT EoS calculations.

The View Properties Display allows the user to manually change any component property
within the Working Composition.
The first step in producing a composition is to select components from one of the package
databases. This is combined with values generated for Pseudo Components to produce
the Initial Composition. At this stage the Working Composition and the Initial Composition
are the same.

Regression on this composition is shown by a Regressed Ungrouped label at various


points within the PVT package. Alternatively, the composition can be Grouped and then
Regressed shown by the Regressed Grouped label. Some files may have been regressed
in both forms . At each stage, the new properties generated become part of the Working
Composition.

b)Calculation Data
Calculation inputs and results are held independently for each stream. Multiple streams
can be selected for each major calculation. See CCE Calculation and Phase Envelope for
examples of this facility.

c) Reference Data
Each Stream contains its own reference data ie Standard Temperature, Standard
Pressure, Reservoir Temperature,Reference Pressure and Reference Depth. These
variables are set up in the Data/Reference Data dialog and within the View Properties
display

d) Match Data
Match or Lab Data is held separately for each stream , allowing the streams to be
individually regressed upon. See Match Data for more information on the types of entry
required
2 - 68 PVTP User Guide

e) Regression Data
Regression selections i.e. processes to be matched to and properties used in matching are
held for each stream. See Regression Parameters for more details

See also
SELECT COMPONENTS - this display has an option to add an empty stream
EDIT MOLE PERCENTS - streams can be copied and their compositions edited using this
option.
ADD STREAM - copies existing streams or imports streams from other files
DELETE STREAM - removes unwanted streams.
EDIT STREAM DETAILS -change stream name and comment.

7.1.2 PSEUDO STORAGE


An additional smaller storage area is provided for Pseudo Properties for each stream via
the Pseudo Properties Display. This allows the initial values or a later selected set to be
held as the active values are worked upon.

Petroleum Experts Ltd


Chapter 7- Input Data EoS 3 - 68

7.2 Selecting Components


The first stage in any Equation Of State PVT project is to select the Model Type and
Equation as described in Chapter 5.

The next step is to select components from one of the two databases supplied with the
package VIZ. Petroleum Experts or Elf.

The display which is used for component selection is shown in figure 7.1. This screen can
be called by clicking on the Select Components option within the Data menu or on the icon
shown above.

Figure 7.1:
Component
Selection

The program automatically fills the Components list box with the component names in a
short label and longer ,more descriptive, form.
Components can be selected or de-selected by clicking on the component name. The
number of components chosen is given on the display.
Up to 40 components can be selected.
If pseudo components are required, the number needed should be entered in the edit box
provided.
The No Components button clears the pure component selections.
The No Pseudos button clears any pseudo definitions that have been entered.

If a reservoir or feed composition is available ,Press the Edit Composition button when all
selections have been made. This action brings up the Edit Composition display.

PVTP User Guide


4 - 68 PVTP User Guide

Alternatively, the Recombination option allows a composition to be calculated from stock


tank and separator data. Clicking on this button brings up the Recombination display. this
option can also be useful as a quality check on the compositional lab data.
Press Exit to leave the screen with no changes recorded.
The Add Stream option creates a completely empty stream with no components selected.
See Streams/Add Stream and Data/Edit Mole Percents for methods of creating streams
containing copied data.

7.2.1 User Database Entries

Figure 7.1a:
User
Database

A more extensive user database can be setup using the database create , import and edit
dialogs. This may contain the same components as the petroleum experts database with
different properties, or components which are not covered by the Petex database. The user
database points are held within an ASCII file with a UDB extension. The directory where
these files are stored is saved within the Prosper.ini file. This directory can be set using the
Set User database Directory button which calls the User Database Directory Dialog. If any
*.UDB files exist their names will be displayed in the combo box provided. If the file has
been created with user data, but the specific UDB file is not on the users machine the
components will be listed within the user area for identification but cannot be extended or
reset to the original *.UDB values.

See Chapter 13 for more details.

Petroleum Experts Ltd


Chapter 7- Input Data EoS 5 - 68

7.2.2 Recombination
This display is called by clicking on the Recombination button within the Select Data base
dialogue (Section 7.0).
Recombination can either be used as :

1) a method of calculating the reservoir composition from separator and stock tank
compositions and volumetric properties or,
2) a quality check on feedstock analysis i.e. by comparing the recombined
composition with the lab reported composition.

7.2.2.1 MODE

The recombination calculation comes in two modes. The default version is Simplified. The
mode can be changed using the radio buttons at the top right of the display. The simplified
mode reflects the basic recombination done in most PVT reports.The table inputs and
controls are the same as those described in more detail below for the extended mode
version.

One oil and one gas composition is entered . These are normally from a separator test.
Additional inputs include an oil density and either a gas density or gas gravity. The GOR
entered must be referenced to Stock Tank conditions.The average molecular weight can
be entered directly or ,alternatively, it can be calculated automatically from the composition
entered for the oil and the molecular weight of each component. For non-pseudos the
molecular weight is taken from the Petroleum Experts database. Pseudo molecular weights
must be entered ,either on this dialogue or via the Pseudo Properties Display.

A typical Simplified display is shown in figure 7.1b.

PVTP User Guide


6 - 68 PVTP User Guide

Figure 7.1b:
Recombination
Simplified

An extended recombination is shown in figure 7.1c.


The reservoir fluid composition is obtained by combining the analysis of the stock tank
oil,stock tank gas and the gas from up to 5 separator stages.

The table at the top of the display allows the user to enter the required compositions. The
first column contains the result of any recombination which has been previously carried out.
For comparison purposes, the second column gives the current reservoir composition (if
one has been entered).

Next follow the entry colums for stock tank oil, stock tank gas and separator gas. To enter
a number ,click on the appropriate cell , type in the number,click away or hit tab.
After each entry, the program will automatically calculate and display the composition total
and the average moleculer weight of the column. On calculating the result of
recombination, the program checks that each column total ,if used, equals 100.
Only separator stages for which data exists should be filled in.
The program ignores any separator stages with a zero total composition.

The recombination calculation is basically a mass balance. To achieve this balance


additional data is requied. The Stock tank oil density is needed along with the oil ’s average
molecular weight to relate oil composition in moles to volume.
An entry box is provided for oil density. The average molecular weight can be entered
directly or ,alternatively, it can be calculated automatically from the composition entered for
the oil and the molecular weight of each component. For non-pseudos the molecular
weight is taken from the Petroleum Experts database. Pseudo molecular weights must be
entered ,either on this dialogue or via the Pseudo Properties Display.

Petroleum Experts Ltd


Chapter 7- Input Data EoS 7 - 68

Data is also required to link the amount of gas produced with respect to the stock tank oil.
This is entered in the form of GOR data for the stock tank and the utilised separator stages.

NOTE: All GOR data must be entered with respect to Stock Tank Barrels (STB)

Figure 7.1c:
Recombination
Extended

The only other additional information required is the temperature of the stock tank and
separator stages. This information is used to relate moles of gas to volumes.

When all entries have been made, press the Recombine button to initiate the calculation.
The results will appear in the first column of the table.

If you wish the recombined fluid to become the reservoir composition , copy the data
across by clicking on the Copy Rec to Comp button.

Leave this dialogue using the Exit and Save button if you wish any results and/or changes
to be recorded.

PVTP User Guide


8 - 68 PVTP User Guide

Cancel will close down the dialogue with the loss of any changes which may have been
made.

Units will bring up the standard units dialog , allowing the user to modify units without
going out to the main display.

The Quick Calc button allows the user to the small calculation menu(below).When this is
called the recombined fluid composition is used to produce a temporary stream which is
the used to calcuate phase envelopes, saturation pressure etc.

The program at this point will create a temporay stream using the recombined composition.
Calculations , including a phase envelope, can be carried out with this composition and
compared directly with the other stream results.

Leave this dialogue using the Exit and Save button if you wish any results and/or changes
to be recorded.

Cancel will close down the dialogue with the loss of any changes which may have been
made.

Petroleum Experts Ltd


Chapter 7- Input Data EoS 9 - 68

7.3 Edit Composition


This option is only made available when components have been selected as described in
section 7.1.

This dialogue acts upon the working composion of the selected Stream. The stream being
acted upon can be changed via the TABS at the botton of the composition grid.
See PVT Project Data Structure(Section 7.0) for a more detailed description of streams.

The display which is used for composition input is shown in figure 7.2. This screen can be
called by clicking on the Edit Composition option within the Data menu or on the icon
shown above. It is also automatically brought up when OK is pressed on the Select
Components display (section 7.1). The display shows the Working Composition as
described in Section 7.0.

Figure 7.2:
Composition
Input

PVTP User Guide


10 - 68 PVTP User Guide

The display is made up of several sections:

Pure Component Composition


For every pure component selected an entry box will be displayed with the short version of
the component label above. The amount of each component in mole percent should be
registered by clicking within the box and entering a number . Tabs can also be used to
move between the boxes. The sum of mole percents entered is shown at the bottom left of
the display.
Clicking on the component name will cause a down arrow to appear. Clicking on this arrow
will produce a sub diplay(see below) of the component properties

Pseudo Component Composition


For every pseudo component selected an entry box will be displayed with the number of
the above. As with pure components the amount of each pseudo in mole percent should
be registered by clicking within the box and entering a number . Tabs can also be used to
move between the boxes. The sum of mole percents shown at the bottom left of the display
includes both pseudo and pure components.
The number of pseudo components required is entered using the Select Components
display (section 7.0).

Note The Pseudo Name can be changed to a meaningful one by calling the Pseudo
Properties Display.See Pseudo Props control button.

Reservoir Reference Conditions


An entry box is provided for the three main reservoir reference variables viz.
◊ Reservoir Temperature at Depth
◊ Reservoir Reference Depth
◊ Static Pressure at Depth

These numbers are entered in the units displayed at the right hand side of the box. See
Section 3.4 if another set of units is required. Please note that these variables can also be
changed by using the Reference Data option within the Data menu (see Section 7.7 )

Grouping/Matching
The 2 boxes within this area indicate whether the current file is Grouped or Matched to
Laboratory Data. Either condition may be destroyed by choosing the Accept or View
options within this display. Both choices are designed to operate with ungrouped
compositions. A composition which has been grouped and/or matched after grouping will
revert to the ungrouped composition . If any function is chosen which might result in loss of
data , the warning shown below is issued.

To view the properties of a Grouped or Matched file the View Properties option within the
Data menu should be chosen.The Archive option (see Section 7.13 ) can be used to store
any composition which may be useful later.

Petroleum Experts Ltd


Chapter 7- Input Data EoS 11 - 68

Figure 7.2.1:
Composition
Warning

User Database Components


If any components are derived from data bases other than the Petroleum Experts database
the components will be identified by red labels .

Control Buttons
The control buttons have the following functions:

Exit and Save


This option normally stores the values entered (in memory , not on disk) and loads the
component properties from the selected database. This option will destroy any grouping or
matching which may have been done (see Grouping/Matching and Figure 7.2.1). In
addition if any pseudo components have been entered and their properties not set this
option will automatically bring up the Pseudo Properties display (see section 7. 3).

Exit - No Change
This option shuts down the display and ignores any changes which have been made.

Pseudo Props
This option activates the Pseudo Properties Display (see section 7.3) which allows the user
to enter all the properties for the pseudo components or use a correlation to calculate
them. This option will destroy any grouping or matching which may have been done (see
Grouping/Matching and Figure 7.2.1).

To view the properties of a Grouped or Matched file the View Properties option within the
Data menu should be chosen.

B I Coefficients
This option calls the Binary Interaction Coefficients Display (see section 7.4) which allows
the user to enter all the Binary Interaction Coefficients for any or all component pairs or use
a correlation to calculate them.See section 4.3.2 for more background information on
Binary Interaction Coefficients.

View
This option brings up the full Base Composition Information display (see section 7.5) which
allows the user to view and change all the component properties, binary interaction
coefficients etc of the pure components. This option will destroy any grouping or matching
which may have been done (see Grouping/Matching and Figure 7.2.1).

To view the properties of a Grouped or Matched file the View Properties option within the
Data menu should be chosen.

Quick Calc.
This option provides the user with access to a subset of the calculation menu (see section
8.9) as a means of checking the consistency of the entered composition information. The
small display provides options to calculate:

PVTP User Guide


12 - 68 PVTP User Guide
Chapter 7- Input Data EoS 13 - 68

Exit and Save closes down the dialog keeping all changes.
Cancel closes down the dialog ignoring all changes.

NOTE ON GRIDS
In common with all grids within the program the grids displayed can be copied from and to
using standard widows editing keys (Control C,Control V copy and paste etc.).

PVTP User Guide


14 - 68 PVTP User Guide

7.4 Pseudo Properties


This option is invoked by clicking on the Properties button within the Edit Composition
display. It can also activated by pressing OK on the same display if no pseudo properties
have been set.

The pseudo name defaults to PS-1,PS-2 etc. This may be changed to something more
meaningful by clicking within the name box and editing the name. All subsequent displays
will show the new name.

Figure 7.3 shows a typical screen

Figure 7.3:
Pseudo
Properties
Input

The grid displayed shows the mole percents and properties of the currently active
stream.The stream being acted upon can be changed via the TABS at the bottom of the
grid.
See PVT Project File Structure for a more detailed description of streams.

It is very important that care should be taken in setting pseudo component properties as
the values can have a critical effect on the results of subsequent calculations.
The PVT package keeps track of when matching has occurred with a composition.This
may be when the package was grouped or ungrouped. Grouping and any susequent
matching is destroyed prior to entering this display. However, a composition matched while
ungrouped can be displayed and manipulated with the functions described here. Any
manipulation is assumed to change the match and is preceeded by a warning.
The pseudo name defaults to PS-1,PS-2 etc. This may be changed to something more
meaningful by clicking within the name box and editing the name. All subsequent displays
will show the new name.

Petroleum Experts Ltd


Chapter 7- Input Data EoS 15 - 68

As no correlation will accurately model all pseudo components, it is advisable to try several
options within this display before satisfying yourself that you have a match.
See Hint on Method for some direction.

7.4.1 Auto Matching of Densities

Within the PVT package two liquid densities are calculated by two different methods. The
first is based on an empirical correlation from Standing and Katz.

The second is calculated from the Equation of State liquid compressibilty.


Experience has shown that the Standing and Katz value which is derived mainly from
specific gravities is always fairly close to the measured density.
This display offers a powerful way of quickly setting the EoS parameters to provide a sound
basis for detailed matching/regression.
The option of using zero BI coefficients provides more flexibility when a phase envelope
is encountered with a rapidly rising curve at the lower T and P used for the Auto Match
flash. Normally, this can be left at its default value.
The option of using original pseudo props can be very valuable when a condensate is
being matched. Normally this type of fluid requires splitting (see EOS : Step by Step
Guide ).

When splitting occurs the Standing and Katz value of the mixture changes a little.i.e. the
automatch reference drifts away from its original accurate value. To prevent this the
automatch process can be told to use the original unsplit value from the pseudo store to
calculate the Standing Katz density by putting this option on.Care should be taken however
to make sure the stored value is valid.
Since Volume Shift directly affects density an opportunity is given on this display to control
this feature. See Volume Shift Help for more details see:

Automatic Matching
Calculated Oil Densities

Splitting Last Pseudo


The Pseudo Components represent the largest source of unknowns within a mixture. They
also tend to have a significant influence on the overall mixtures characteristics. It is logical
,therefore, to concentrate on the pseudo properties when matching and regression
operations are being done.
Sometimes the number of pseudos does not provide enough freedom to carry out the
matching required. One option for overcoming this situation is to split the last pseudo into
two or more components.

The program offers a facility to do this in a controlled manner. The split funtion breaks the
pseudo down into two exponential distributions. The 40 components produced are then
regrouped into the original mixture with the required number of pseudos.
To use the function select the number of pseudos to be produced from splitting the last
(using the radio buttons provided) and hit the Split button.
Note that this function will be carried out in automatic mode, values can then corrected in
manual if required.

Since splitting destroys the original entries of Pseudo properties the Original Nos store
should be used to store the best data prior to carrying out this operation

PVTP User Guide


16 - 68 PVTP User Guide

Original Numbers Store


Since Pseudo Component data is the key to the characterisation of petroleum mixtures , it
is important to keep track of the link to the initial lab data. Some operations carried out on
pseudo properties eg. Splitting can destroy the original entries. The program contains a
facility to Store , View and Restore the original or a designated set of entries for pseudo
properties. The program will automatically store the first encountered data when this
dialogue is exited using the Exit and Save button. Pressing View will display the current
contents of the store Store can be used at any time to overwrite the store with the values
within the Pseudo Properties Table. Restore will take the values from the store and use
them to replace those within the Pseudo Properties Table.
The Pseudo Components to Original Values option within the Data Reset Display acts in a
similar way to the Restore option , taking values from the store and replacing those in the
Working PVT composition.

Data Reset Display


This feature is available at various points within the PVT package. The small menu allows
the user to revert back to data base or stored values. See also section 7.0 General.
The options are:

1) All non-pseudo components to database values.


Initially all pure component property values are taken from either the Petroleum Experts or
the Elf database. These numbers can be changed manually or by matching . This option
will restore any changes back to those from the database. This operation also occurs if the
Select Database Components display is used

2) Ungroup Composition
This option would restore the composition to the Ungrouped version. Since Grouping is
removed prior to entering this display , this option is not required here.

3)Pseudo components to original values.


This function is identical to the Restore of original numbers. The pseudo values stored are
used to replace those in the Working Composition(see Data Structure Overview.).

This Pseudo Properties Display has 2 main modes which are selected using the radio
buttons on the bottom right of the screen i.e. Automatic and Manual:

7.4.2 Automatic Mode


In this mode the pseudo properties are calculated using the correlation chosen from the
Options section.

The options display is composed of two combo boxes

The top combo box contains 2 options for calculating the pseudo component boiling point
viz.
Petroleum Experts
A. N. Other Correlation

The bottom combo box contains 9 alternative methods for calculating the acentric
factor(Omega) and the critical temperature, pressure and volume of a pseudo component,
viz.

Petroleum Experts Ltd


Chapter 7- Input Data EoS 17 - 68

TWU/Edmister
Bergman(PNA) and Cavett
Bergman(PNA) and Cavett/Edmister
Cavett/Edmister
Mathew,Roland and Katz/Edmister
Robinson and Peng(PNA)
Lee and Kessler/Edmister
Riazi and Daubert/Edmister

Choose an option from the combo box by clicking on the down arrow and then clicking on
the selection.
The % aromatics within the properties grid allows the user to fix a limit on the % used
within the various calculations.
To fix the value enter the required number in the appropriate edit box. To remove the limit
blank out the value within the edit box.
After choosing the options press Calc Values

When back in the pseudo properties display the options are now as follows:

1)Calculate Boiling Point Tb


Enter a Molecular Weight and Specific Gravity, clear the Tb value and click on Calculate.
The package will calculate Tb, Tc, Pc, Vc and Omega. or

2)Calculate Specific Gravity S.G.


Enter a Molecular Weight and Boiling Point , clear the S.G value and click on Calculate.
The package will calculate S.G., Tc, Pc, Vc and Omega.
Clear Bpts removes all the grid boiling points causing all values and derived properties to
be recalculated.

7.4.3 Manual Mode


In this mode all the pseudo properties can be entered or adjusted by the user. To change a
value, click or double-click inside the appropriate box , type in the number and tab or click
away.

NOTE ON GRIDS
In common with all grids within the program the grids displayed can be copied from and to
using standard widows editing keys (Control C,Control V copy and paste etc.).

7.4.4 Hint on Method


For Volatile Oils or Condensates , try
◊ A. N. Other Correlation for Boiling Point
◊ Bergman(PNA) and Cavett/Edmister for Acentric Factor
◊ No Binary Interaction Coefficients or a small value eg 0.05 between the C1 and
heaviest component.

For Heavy Oils , try


◊ Petroleum Experts Correlation for Boiling Point
◊ TWU/Edmister for Acentric Factor
◊ Start with a small value eg 0.05 between the C1 and heaviest component.

PVTP User Guide


18 - 68 PVTP User Guide

7.4.5 Auto-Matching of Densities and Viscosities

Within the PVT package two liquid densities are calculated by two different methods. The
first is based on an empirical correlation from Standing and Katz . The second is
calculated from the Equation of State liquid compressibilty.
Experience has shown that the Standing and Katz value which is derived mainly from
specific gravities is always fairly close to the measured density at standard conditions.
The Equation of State value suffers from the main problem of the method i.e. the EoS
equation will not generally predict an accurate value from initial entries. Matching to
laboratory data must always be done before any calculated value can be used with
confidence.

A wayward set of EoS parameters normally shows up as a large deviation between the two
density values when the mixture is subject to a Constant Composition Expansion at
standard conditions (60 deg F , 1 atm.)
This method allows the user to tune the parameters of the greatest unknowns within the
mixture i.e. the pseudos to bring the densities in line.
We advise that this option is used right at the start after the mixture composition has been
entered,however, if an existing file is being used enter the procedure below at step 3

The complete method would then be:

1. Select a NEW PVT file and enter Equation of State Options

2. Select Components and Enter the Composition (section 7.1-7.2)

3. Select Pseudo Props option from the Edit Composition Display (section 7.2) to bring up
screen as in figure 7.3

4. Enter values for pseudo(s) Molecular Weight and Specific Gravity .

5. Select Automatic mode and press Options. This will bring up the screen as in figure 7.4

6. Select a method for Boiling Point and TC,PC,Omega calculation. Press OK

7. Press on the Auto Match button .

The PVT package will now automatically go through a process of


a) Adjusting the pseudo(s) boiling point(s)
b) Calculating new Tc Pc etc.
c) Flashing at standard condition to find the difference in densities
d) Based on the difference found re-adjust and repeat or exit process

Petroleum Experts Ltd


Chapter 7- Input Data EoS 19 - 68

The matching will halt when a match has been found to within 1% or 20 iterations have
been completed. If no match is made try adjusting the pseudo properties or selecting new
options in step 6

8. With densities OK now use the binary interaction coefficient(s) to match the saturation
pressure at reference conditions. Normally only one coefficent (heaviest component -
lightest component ) is required (section 7.4). This matching does not greatly affect the
densities.

When this procedure is followed most petroleum mixtures will immediately give close to the
measured values eg.separator GOR ,liquid dropout etc.
Any differences can be readily reduced using the PVT packages regression
functions(section 7.9).

This procedure is normally carried out with zero-ed Binary Interaction Coefficients . Auto
Match automatically stores and zeros the BI Coefficients . Ater matching the coefficients
are restored.The check box on the display allows the user to skip the zeroing step , giving
more flexibilty with difficult mixtures.

7.4.6 AutoMatching Viscosities


Selecting AutoMatch will also automatch the viscosity of an oil. This changes the Vc values
to bring the LBC calculated oil viscosity to a more reasonable level.
By default, this operation will automatically be carried out if the AutoMatch button is
operated.
A checkbox allows the user to switch this feature off.
Lohrenz , Bray and Clark (see Section 4.6.1) is the most commonly used viscosity model
but it tends to give high errors for oils.The Little and Kennedy correlation (see Section
4.6.4) is very good at predicting the viscosity of oils above bubble point. Below saturation
pressure results are mixed with some fluid values being totally unsatisfactory.
This Automatching feature follows the procedure outlined below:
Find the type of fluid. If the fluid is not an oil do not proceed
Find the saturation pressure at the reference temperature
Use the Little and Kennedy model to calculate the viscosity of the oil at a pressure
just above saturation
Adjust the Vc values of the pseudo components until the LBC viscosity matches
that predicted by Little and Kennedy

7.4.7 Splitting/Profilling Last Pseudo

The Pseudo Components represent the largest source of unknowns within a mixture. They
also tend to have a significant influence on the overall mixtures characteristics. It is logical
,therefore, to concentrate on the pseudo properties when matching and regression
operations are being done.

Sometimes the number of pseudos does not provide enough freedom to carry out the
matching required. One option for overcoming this situation is to split the last pseudo into
two or more components.
PVTP User Guide
20 - 68 PVTP User Guide

The program offers a facility to do this in a controlled manner. The split funtion breaks the
pseudo down into a distribution defined by the Split Method(see Advanced Splitting
Dialog). The 40 components produced are then regrouped into the original mixture with the
required number of pseudos.

To use the function hit the Split in 2 button. Alternatively, many more options are available
be clicking on the Advanced button. This includes profiling a pseudo component . See also
Decontamination Procedure (Appendix C) on how this feature helps with decontamination.
Note that this function will be carried out in automatic mode, values can then corrected in
manual if required.

Since splitting destroys the original entries of Pseudo properties the Original Nos store
should be used to store the best data prior to carrying out this operation ( see section
7.3.5 ).

Petroleum Experts Ltd


Chapter 7- Input Data EoS 21 - 68

7.4.8 Original Numbers Store

Since Pseudo Component data is the key to the characterisation of petroleum mixtures , it
is important to keep track of the link to the initial lab data. Some operations carried out on
pseudo properties eg. Splitting can destroy the original entries. The program contains a
facility to Store , View and Restore the original or a designated set of entries for pseudo
properties. The program will automatically store the first encountered data when this
dialogue is exited using the Exit and Save button. Pressing View will display the current
contents of the store as shown in figure 7.4a. Store can be used at any time to overwrite
the store with the values within the Pseudo Properties Table. Restore will take the values
from the store and use them to replace those within the Pseudo Properties Table.
The Pseudo Components to Original Values option within the Data Reset Display acts
in a similar way to the Restore option , taking values from the store and replacing those in
the Working PVT composition (see Section 7.3.4).

7.4.9 Advanced Splitting Dialog


See also Decontamination Procedure (Appendix C)

The Advanced Splitting Dialog is called via the Advanced button on the Pseudo Properties
display.
As the name implies this display allows the user to have more control over how pseudo
splitting is done, both in terms of the distribution of components and where the split limits
are set.

This can be very beneficial in

dealing with difficult fluids


operating with multiple samples at varying depths and
decontaminating samples

Normally, this operation would be carried out on a single pseudo eg. C7+ on C10+ and
typical display would be:

PVTP User Guide


22 - 68 PVTP User Guide

Figure 7.4a:
Advanced
Splitting
Dialog

The table shows how the splitting algorithm has broken down the pseudo component giving
each C number a composition . From the composition the program corrects the database
MWts and SGs to match the pseudo from which the table was created. The split method
determines the shape of the composition distribution. Use the combo box to change the
split method and press recalculate split to activate the change.

7.4.10 Split Profiles


An important option within the split methods is to Follow Profile .This feature allows the
user to determine all or part of the component distribution. this can be extremely helpful in
dealing with contamination or fluids with distinctive distributions eg. biodegraded fluids. To
set up a profile click on the Setup Profile button. This brings up the Split Profile Creation
dialog where the relevant data can be entered. select the Follow Profile method and press
recalculate split. The split algorithm will give the Cn components the values defined and
follow a declining distribution for the rest.

Once an initial distribution is settled upon , the user can then define how the splitting is
done. using initially the Split Number radio buttons.

Select the number of pseudos to be created and hit the Set Even Split button. The display
will change to one like this:

Petroleum Experts Ltd


Chapter 7- Input Data EoS 23 - 68

Figure 7.4b
Advanced
Splitting
Dialog2

The split boundaries are confirmed by the table colours and the details which have
appeared for the new 3 pseudo components.

The split can be changed from this even distribution by clicking on the spin buttons beside
the newly defined pseudos.

Once the split is defined the program automatically calculates a MWT and SG for each
pseudo. From these values and a correlation a BPt. is set. From the BPt and a second
correlation all the important EoS numbers are calculated for the pseudo. As for the Pseudo
Properties display, the correlation can be selected by the user using the combo boxes
provided.

The AutoMatch feature is also proved on this display to allow the user to work on the new
pseudo values prior to accepting the results. Using Automatch does not effect the split it
changes only some of the properties associated with the resultant pseudos.

PVTP User Guide


24 - 68 PVTP User Guide

Similarly , the user is provided with access to the Binary Interaction Coefficients Dialog
from this display.

This button brings up the standard Quick Calc display , allowing the user to calculate the
effects of the completed split.

Plotting allows the user to see the trend in compositions and properties.

This option removes all pseudos which have been created and returns the display to a
single pseudo entry.

Click on this button when you are happy with all the changes that have been made. This
will return the program to the Pseudo Properties display.

This option clears all changes and returns the program to the Pseudo Properties display.

Petroleum Experts Ltd


Chapter 7- Input Data EoS 25 - 68

7.4.11 COPYING A SPLIT

This option is useful for complex systems where samples have been taken at various
depths and a compositional gradient analysis is to be done to prove linkage between the
samples. If another stream within the file has been through a splitting operation and the
detailed information on the split is stored. ,the file name will appear in the list box. Selecting
the stream name and clicking on Copy stream Split will cause the program to match the
current streams split to the one stored for the other stream. This synchronisation of
pseudos helps the streams to be similarly characterised and the compositional gradients of
each stream to align.

7.4.12 Split Profile Dialog


See also Decontamination Procedure (Appendix C)

This Dialog is called via the Setup Split Profile button on the Advanced Splitting Dialog.
A typical display looks like this:

PVTP User Guide


26 - 68 PVTP User Guide

Figure 7.4 c
Split Profiling
Dialog

Enter the Mole% of each component that you want the split routine to follow.
Only key areas should be profiled eg. the components with maximum contamination.
The program will fill in the other components using a standard distribution.

Plotting allows the user to see the trend in the compositions that have been entered.

This option removes all entries

Click on this button when you are happy with all the entries that have been made. This will
return the program to the Advanced Splitting display.

Petroleum Experts Ltd


Chapter 7- Input Data EoS 27 - 68

This option clears all changes and returns the program to the Advanced Splitting display.

7.4.13 COPYING A PROFILE

If another stream within the file has a profile stored its name will appear within the listbox.
To copy a profile select the stream name an click on Copy.

PVTP User Guide


28 - 68 PVTP User Guide

7.5 Binary Interaction Coefficients


This option is invoked by clicking on the B I Coeffs... button within the Edit Composition
display.

The grid displayed shows the pseudo properties of the currently active stream.The stream
being acted upon can be changed via the TABS at the bottom of the grid.
See PVT Project File Structure(section 7.0) for a more detailed description of streams.

The basis for using Binary Interaction Coefficients is described in section 4.3.2 . As with
pseudo properties, it is very important that care should be taken in the choice of
coefficients. Again no correlation will accurately model all mixtures. The BI Coefficient acts
as matching variable which bends the idealised cubic Equation of state to meet the
measured properties of the real world mixture.
It is therefore, advisable to try several options within this display before satisfying yourself
that you have a match for the project conditions(see also Hint on Method 7.3.1).
Figure 7.5 shows a typical screen.

Figure 7.5:
Binary
Interaction
Coefficients

Two combo boxes are available at the top of the display which allows the user to select a
correlation.
There are two choices for pure components i.e.
Peng Robinson
Soave Redlich Kwong

In addition, there are three choices for pseudo components i.e.


Petroleum Experts Method
Molecular Weight Correln
Semi-Theoretical Method

Choose an option from the combo box by clicking on the down arrow and then clicking on
the selection.
Press on Calculate New Values to get the recalculated .BI Coefficients
Any value of BI coefficient can be changed by clicking within the displayed table and
entering a value.

Petroleum Experts Ltd


Chapter 7- Input Data EoS 29 - 68

Press Exit and Save to register the changes made. It is also advisable to save the file if
many edits have been made.

Quick Calc.
This option provides the user with access to a subset of the calculation menu as a means
of checking the consistency of the entered composition information.

The small calculation display provides the following options:


Phase Envelope
Critical Point (Temperature and Pressure)
Saturation Pressure (at the reference temperature)
Flash at Standard Conditions
Flash Through Separator Stages

NOTE ON GRIDS
In common with all grids within the program the grids displayed can be copied from and to
using standard widows editing keys (Control C,Control V copy and paste etc.).

7.6 Grouping and Properties Information


This display can be called directly from the main Data menu by selecting the View
Properties option. In addition, the screen is also invoked by clicking on the View button
within the Edit Composition display or by selecting Group on the Grouping Display.(see
section 7.6). Figure 7.7 shows a typical display for a grouped PVT project.

Figure 7.7:
Grouping and
Properties

PVTP User Guide


30 - 68 PVTP User Guide

The stream being acted upon can be changed via the TABS at the bottom of the
composition grid.

See PVT Project File Structure for a more detailed description of streams.
The display shows the Working Composition of the selected Stream. The composition
can be viewed and manually changed if required. in common with all grids the blocks of
data can be copied to and from the clipboard with standard Control C Control V etc. (see
Grid Help)
The top section of the display shows the components a,their mole percents and the
properties of each component pseudo component or group.
The corner of the properties grid gives a coloured message which indicates the status of
the composition i.e. GROUPED or MATCHED.

When a composition is grouped the components which make up each group can be found
by clicking on the component name. Click then on the down arrow which appears. As
shown below a subgrid appears containing the names of the grouped components.

The properties listed are:


Critical Temperature Tc
Critical Pressure Pc
Acentric Factor (Omega)
Critical Volume Vc
Omega A
Omega B
Molecular Weight
Boiling Point Tb
Specific Gravity
Apparent Density (Rho App)
Parachor
Volume Shift C
Volume Shift S
Z Rackett
Critical Compressibility Zc
Melting Point
Heat of Melting
Change in Volume at Melting
Molar Volume
Solubility Parameter of Liquid
Solubility Parameter of Solid

Petroleum Experts Ltd


Chapter 7- Input Data EoS 31 - 68

The values for pure components normally come from the selected data base. Mixing rules
and correlations are used for groups and pseudos. The values within the tables can be
edited on this display by clicking within a cell and entering a new number.The Edit Mole
Percents dialog should be used to change percentages of components after matching has
been done . If no matching has taken place use the Edit Composition Dialog
Volume Shift S and Volume Shift C are properties used in alternative methods of
calculating Volume Shift.
Z Rackett is used in one method to estimate Volume Shift C
The third section of the display shows the Binary Interaction Coefficients for pairs of pure
components, groups , and pseudos. Again values can be changed within this section.

7.6.1 Control Buttons


The control buttons have the following functions.

Exit and Save


This option registers the changes made and closes down the display.

Cancel
This option shuts down the display and ignores any changes which have been made.

Quick Calc.
This option provides the user with access to a subset of the calculation menu as a means
of checking the consistency of the entered composition information.

The small calculation display provides the following options:


Phase Envelope
PVTP User Guide
32 - 68 PVTP User Guide

Critical Point (Temperature and Pressure)


Saturation Pressure (at the reference temperature)
Chapter 7- Input Data EoS 33 - 68

7.6.2 OmegaA and OmegaB


In the normal mode of operation OmegaA and OmegaB are constants(see Help on
Regression with OmegaA and OmegaB). The values are the same for each component
and are displayed.

The numbers cannot be edited in this mode. However, when a different regression mode is
chosen within the Regression Match Data Dialog, the display changes to reflect that the
values are now in use.

If the Global mode is selected a single value is used for all components and the display
looks like this:

In Individual mode each component can have a different value for OmegaA and OmegaB.
These values can be edited by the user if required.

PVTP User Guide


34 - 68 PVTP User Guide

Petroleum Experts Ltd


Chapter 7- Input Data EoS 35 - 68

7.6.3 Plotting Component Properties

This option brings up the Component Properties Plot.


A typical plot would be:

The program automatically creates a stream containg the original database properties.
This allows the user to assess the changes which have been made during regression.
See Chapter 11 for more information on Plotting

PVTP User Guide


36 - 68 PVTP User Guide

7.7 Grouping
This Grouping Options display can be viewed by selecting the Grouping option within the
Data menu. Figure 7.8 shows a typical display.

Figure 7.8:
Grouping Options

Grouping allows a complex mixture of many components to be represented by a smaller


number of representative groups.
This operation greatly increases the speed of calculation.
Mixing rules are used to give the group properties which represent the combination of the
group members.
The simplification of the system, however, does bring with it the potential risk of not being
able to match fully the complex properties of the real mixture.
The stream to be grouped is selected using the stream combo box.. See PVT Project File
Structure for more information on streams.
The method radio buttons allow the user to choose between two major options:
Automatic ( Elf Aquitaine) Method and
Manual Method

When Automatic Method is selected along with the number of groups , the pure
components are sorted automatically into groups.
The number of groups required is entered in the edit box provided. The smaller the number
of groups the faster the calculation will go.
However, if too small a number is used the Equation of State may not be able to match the
more complex properties of the mixture, e.g. regression on a particular combination of
separator measurements may not find a reliable solution.
A choice of 5 groups seems to work for most systems.
When streams are to be mixed it may be beneficial to keep the second or injected stream
separate during grouping. This can be done be selecting an inject stream and clicking on
the Injected Stream checkbox.

When a regressed stream is being grouped it is possible to say whether the regressed or
basic properties are used in the grouping via the Use Regressed Properties checkbox.
Clicking on the Group control button will initiate the grouping and bring up the View
Properties display.

The Manual Method option in combination with pressing the Group control button brings
up the Manual Grouping Display.

Petroleum Experts Ltd


Chapter 7- Input Data EoS 37 - 68

NOTE the total group number will be the group number specified in this dialogue + the
number of injected stream components.

Manual Method
Selecting this option and clicking the Group control button passes control to the display
shown in figure 7.9. The top of the screen shows the groups defined so far. The bottom half
contains two list boxes one for components and another for groups . Groups are created by
clicking on the desired components , clicking on the desired group within the list box and
clicking on Add Group.

Components grouped are removed from the components list box and placed in the table.
Delete Group will remove components from the selected group and place them in the
components list box. Reset Groups will delete all groups and place all components back in
the component list box.
When Grouping selection are complete click on the OK button. This action will bring up the
Grouping Information display described in section 7.5

Figure 7.9:
Manual
Grouping

PVTP User Guide


38 - 68 PVTP User Guide

7.8 Reference Data


This display can be viewed by selecting the Reference Data option within the Data menu.
This dialog shows the Reference Data for the currently active Stream.Each Stream
contains its own version of this data (see PVT Project File Structure Section 7.0). The
stream can be changed using the combo box provided.

Figure 7.11 shows a typical dialog box. Data for Reservoir Temperature, Reference Depth
and Static Pressure can be entered for each stream.
The Temperature is used to calculate the Saturation Pressure in the small calculations
menu and to act as a starting temperature for the compositional gradient calculation.
The reference depth is also taken as a starting point for the compositional gradient
calculation.
The static pressure at depth is used in the compositional gradient and represents the
pressure in the reservoir at which the sample has been taken.

The second section of this dialogue allows the user to modify the Standard Temperature
and Pressure.
These variables are used throughout the PVT package to determine the volumetric
properties of the oil and gas. Some PVT reports particularily from warmer areas demand
values other than the default numbers of 0 psig and 60 degrees F.
Although the differences in FVF and GOR are not large , use of the wrong reference
conditions can make matching difficult.
When the PVT file is saved the Standard conditions used are also saved with it.
The Save as Default button will store the values and use them in any new PVT file.

These numbers are entered in the units displayed at the right hand side of the box. See
Section 3.4 if another set of units is required.

Please note that these variables can also be changed by using the Edit Composition
display (see Section 7.2 )

Figure 7.10:
Reference Data

Petroleum Experts Ltd


Chapter 7- Input Data EoS 39 - 68

7.9 Decontamination
Where data is limited and the contamination can be isolated as a single pseudo component
, the edit mole percents facility can be used. Normally a procedure like that described in
Appendix C should be followed.

7.9.1 Edit Mole Percents


This option is called via the Data menu. A typical display is shown in figure7:10a.

Figure 7.10a:
Edit Mole Percents
Dialog

Use this option to:


a) Edit the percentages of existing stream components , and
b) copy an existing stream and then edit the percentage compositions if required .
The display is loaded from the Data|Edit Mole Percents menu option(see DATA MENU)
To edit an existing stream :
Select the required target by clicking on the tabs beneath the stream list table and click on
Edit All Streams.
Type in the required percentages up to 100% and press Exit and Save.
To create and edit a new stream :
Edit the stream name and comment of the next stream.
Select the stream from which the copy is to be taken by clicking on the tabs beneath the
stream list table.
Press on the Copy Stream Button to create the new stream. type in the required
percentages up to 100% and press Exit and Save.
A copied stream carries all the data with it from the target stream i.e. component properties
, reference data , match data etc.

PVTP User Guide


40 - 68 PVTP User Guide

NOTE:
1) If the stream being copied is grouped the new stream will become one with only pseudo
components , each group being replaced by a pseudo with the same properties. This is
required as no information is available to the program on how the new percents should be
spread across the components making up the group.

2) When a composition is grouped, the components within each group can be seen by
clicking on the group name and clicking on the dropdown box arrow that appears.
Clear will remove all percentages from a selected stream if editing is available for that
stream ( the background colour is white)
See also:

PVT PROJECT STRUCTURE. -where streams fit in to the overall data structure (Ch.7.0)
SELECT COMPONENTS - this display has an option to add an empty stream(Ch.5.5)
ADD STREAM - copies existing streams or imports streams from other files(Ch.7.2)

7.9.2 Decontamination Control Dialog


This display is called by the main display via the Data|Decontamination menu option.
See theDecontaminate procedure(Appendix C) on how the file should be prepared prior to
using this facility. A typical display is shown in figure7:10b

Figure 7.10b:
Decontam.
Control Dialog

The main table shows the components and the expansion of the pseudo components. The
colours indicate the components which are calculated to make up each pseudo. The
distibution of the the pseudo split components is determined by the path taken in
characterising the pseudo within the Pseudo Properties Dialog and the Advanced Splitting
Dialog which is accessed from it. The correct setup of this split and the matching of the
fluid must be done prior to using the decontamination feature.

Petroleum Experts Ltd


Chapter 7- Input Data EoS 41 - 68

The split method indicated above the table is the key to the shape of the pseudo
component distribution. This can be selected within the advanced splitting dialog.
An important split option in decontamination is to follow a profile.A profile would be
contaminant-rich part of the extended sample component distibution (C12-C20). Using this
method a profile can be created within the Split Profile Creation Dialog.
This display is entered by a stream with a fixed pseudo distribution and a set of pseudo
properties which characterise the fluid.THe program splits out the composition and the
main properties used by the EoS i.e. Tc,Pc,Vc,AF,BPt and the SG. The initial display
would be as follows:

Figure 7.10c:
Decontam.
Control
Dialog

The user must now give the program a new values for the important components i.e. where
the contamination was at its worst.
Type the new values into the New Mole% column. Alternatively, values can be transferred
from the clipboard using the standard Contol + V combination.

To get an idea what result the decontamination process will produce click on the
QuickLook button.

This option does the decontamination to a temporary stream and brings up the QuickLook
Selection Dialog.

PVTP User Guide


42 - 68 PVTP User Guide

To carry out the decontamination proper click on the Decontamination button.

The user will now be given the option (via the Mode Selection Dialog) of copying the results
of the decontamination to the existing stream or to a newly created one.
The decontamination calculation proceeds as follows:

The individual component mole percents are set equal to the New Mole% values ,
where defined.
The remaining component mole percents are adjusted to make up the 100% total
and to follow the trend of the original values.
The new full composition appears as the Cald. %.
The Calcd% are used in conjunction with the initial properties to generate a new set
of properties for each component and a combined version for each of the pseudo
components. The pseudo component start and end values can be seen by clicking
on the View/Change button.

The trend in the individual compositions can be seen by using the Plot button.
The Clear button erases all the New Mole% values.

Petroleum Experts Ltd


Chapter 7- Input Data EoS 43 - 68

7.9.2.1 Decontamination Mode Selection Dialog


See also Decontaminate Procedure(Appendix C)

This display is called via the Decontamination Control Dialog. A typical screen is shown
below:

The options are to do all the operations in the existing stream or to create a new one. If a
new stream is to be created the stream name and comment can be edited at this stage.
Press Exit and Save to carry out the decontamination and return to the control dialog.

7.9.2.2 Decontamination Quick Look Dialog


See also Decontaminate Procedure(Appendix C)
This display is called via the Decontamination Control Dialog. A typical screen would be:

As part of the quick look procedure the program creates a temporary stream and does the
decontamination procedure within this stream.
This dialog allows the user to see the results of this process as a table of component
properties by clicking on View Properties.
Alternatively, the standard quick calc dialog can be called by clicking on the Quick Calc
button.

PVTP User Guide


44 - 68 PVTP User Guide

Petroleum Experts Ltd


Chapter 7- Input Data EoS 45 - 68

7.9.2.3 Decontamination Pseudos Dialog


See also Decontaminate Procedure(Appendix C)
This display is called via the Decontamination Control Dialog.

A typical screen would be:

When the decontamination screen is entered and exited , the program stores the properties
of the pseudo components at this time. These values are then taken as the reference for
any futher decontamination calculations. When decontaminate is pressed within the
control display , the program looks to these values to set compositions and properties.

It is for this reason that the decontamination screen should only be activated after
the fluid is fully matched

The top table shows these reference values. The bottom table gives the current working
pseudo component numbers. These would normally be the result of the decontamination
operation.

If ,however, it was found necessary to do further work on the undecontaminated fluid, and
the user wishes to change the stored reference values,this display allows the user to
overwrite the archived values with the working set by clicking on the Copy button.

PVTP User Guide


46 - 68 PVTP User Guide

7.10 Match Data


This series of displays allows the user to enter PVT laboratory measured data for
matching. on a stream by stream basis. Each Stream holds its own separate set of data
points.(see PVT Project File Structure) The stream being acted upon can be changed
using the combo box provided.
After supplying the data,the system individual or grouped properties can be then be
adjusted using non-linear regression techniques (using the Regression option from the
Data menu) to best fit the measurements.
This combination represents a powerful technique for adjusting the idealised equation of
state to mirror the real world.

The Matching option is invoked by selecting Enter Lab Data within the Data menu.

Figure 7.11:
Match Table:
Multi-stage
Separator

Match data tables are available for the following measurements:

Saturation Pressure(PSAT) and critical temperature


Constant Composition Expansion(CCE)
Constant Volume Depletion(CVD)
Differential Liberation(DIFF)
Separator Data(Sep)
Compositional Gradient(CmpGrd)
Swelling Test(Swell)
Wax Appearance Temperature(WAT)
Wax Amount(%SOLID)

For each match data table, enter the required information.The PVT Step by Step guide
gives recommendations and examples of what data should be used.
A reference temperature is required for CCE, CVD match data.The program will prompt for
any missing information With CVD only on temperature is required, the program will
automatically copy this information to each row. Unlike previous versions the CCe
calculation can now be done at multiple temperatures.

Petroleum Experts Ltd


Chapter 7- Input Data EoS 47 - 68

When the Compositional Gradient table is selected the reservoir reference conditions are
shown in read only form.
Adjustment of these values is available using the Reference Data option within the Data
Menu.

The grid tab buttons shown above allow the user to move between the match input tables.
The tabs also indicate which tables contain data. Tables with data have coloured tabs.
Important Note on Differential
The calculation of GOR and FVF for a differential liberation is done with respect to residual
volume.In order that this volume can be determined all the steps must be added as in the
example below

PVTP User Guide


48 - 68 PVTP User Guide

SOLIDS
Note that the grids which contain Wax Options are at the end of the scroll bar and must be
scrolled along to:

INCLUDE/EXCLUDE
Any data point or groups of points can be excluded from the regression process.Simply
highlight the desired points and press exclude.Excluded points areindicated by a GREY
text background colour. To include points highlight again and press include. This feature
can be very useful with liquid dropouts. Enter all values, exclude all and select values as
required for inclusion.

WEIGHTING
Any data point or groups of points can be given a different weighting between high 10 and
low 1.This will affect how the regression algorithm responds to the error generated by this
point. This weighting is combined with the process weighting (high,medium,low) available
within the regression display to give an overall value.To change a weighting,select a point
or group of points, change the weighting value and press Set Weighting. Weightings of
less than 10 are indicated by the point having a BLUE text colour

GRID ASSIST SUB DIALOG


Place the cursor anywhere in the table and press the right hand mouse button. A small
dialog will appear as shown below:

Petroleum Experts Ltd


Chapter 7- Input Data EoS 49 - 68

The Reset button causes the user to be prompted to select if the displayed table or all
matching tables should be zeroed. Note that the cleared table or tables will not become
part of the project until OK is also selected.
The Plot button brings up a display of the entered data where applicable.
Clicking on OK registers any changes which may have been made and closes down the
display.
Cancel will close the display ,loosing any data which may have been entered.

NOTE 1: Oil Viscosity can be selected as a match variable within the CCE Table.

NOTE 2 the Oil FVF within the multi-stage Separator calculation. is corrected through all
the succeeding stages.This correction can add up to 10 % to the un-corrected value. To
activate the correction add all stage temperatures and pressures to the match table,even if
no other matching is done within the lower stages.

NOTE ON GRIDS
In common with all grids within the program the grids displayed can be copied from and to
using standard widows editing keys.

7.10.1 Matching on Mixture Critical Temperature


Matching on crtical temperature is available on the first line of the PSAT
This option is intended to help with difficult fluids where the phase is problematic to
reproduce with the Equation of State.
A measure of phase is the position of the critical point within the phase envelope. If the
reservoir temperature is left of the mixture critical temperature the fluid is an oil. If right, the
fluid is a gas.
If the critical point does not exist the fluid is assumed to be a gas. This match point allows
the user to push the critical point in the desired direction.
One not uncommon use is where a condensate shows up as an oil at the start of
regression.
Initially the fluid below shows up as an oil.
The reservoir temperature is 200 deg F but the mixture critical temperature is 500 deg F

To help the situation enter a target value of 180 for the Tc within the PSAT Match Data
Table.
An important option to use for this type of application is the checkbox which prompts the
program to assume that the non detection of the critical point is taken as the target being
reached.
This means that if the critical point disappears the temperature will be set as the target of
180 giving an error for this calculation of zero.
The disappearance of the critical point is not uncommon with HTHP condensates.

PVTP User Guide


50 - 68 PVTP User Guide

Select the Critical temperature within the Regression Match Data dialog.

Regression produces the following beneficial result. There is no critical point and the fluid
is now a condensate.

Petroleum Experts Ltd


Chapter 7- Input Data EoS 51 - 68

7.11 Regression
This option is made available when PVT laboratory data has been entered for matching
(see section 7.8)
The option is invoked by selecting Regression within the Data menu and is used to perform
the non-linear regression which adjusts the compositions and properties to best fit the
laboratory measured PVT data.
The non-linear regression matching technique can be used on up to six PVT match tables,
MODEL
Three model options can be selected within the program VIZ
1) Original - This model makes all component Pcs, Tcs and Acentric Factors available for
regression. When selected this model allows the user to also limit the movement of the
selected properties via the checkbox which becomes visible. When invoked this option
restricts the movement of all properties such that the progression with molecular weight
remains reasonable. Component property values can be plotted within the View Properties
Dialog. It should be noted that limiting property movement will inevitably reduce the
flexibility of the EoS method and may decrease the accuracy of the final match with some
fluids.
2) Global OmegaA and OmegaB. This will use one value of each variable for all
components. In addition, the pseudo component and grouped component Tcs Pcs and
AFs will be available for regression. See help on Regression with OmegaA and OmegaB
for more details.

3) Individual OmegaA and OmegaB. This will use an individual value of each variable for
every component. In addition, the pseudo component and grouped component Tcs Pcs
and AFs will be available for regression. See help on Regression with OmegaA and
OmegaB for more details.
The Reset Omega A and Omega B Values button that appears with models 2 and 3 will set
these values back to their default EoS levels.
each with different characteristics.

MODE
The program has two modes for Equation of State regression :
Single Stream
Multi-stream

The mode is changed by way of the radio buttons at the top of the dialog.

SINGLE STREAM MODE


The initial regression display is shown in figure 7.12.

PVTP User Guide


52 - 68 PVTP User Guide

Figure 7.12:
Regression:
Match Selection

As the name implies this mode regresses only one stream i.e. the component properties of
one stream are changed to match its Lab Data. The stream being manipulated is selected
by clicking on the tab containing the stream name. The tab background colour is changed
to BLUE if any selections have been made for the stream.(see STREAMS Chapter 5.5)
This display highlights all the variables available for regression .
Choose a variable by clicking on the checkbox alongside the name. The total selected is
shown on the right of the dialog
The variable can then be set at high ,medium or low contribution to the overall regression
calculation. All selections for the selected stream can be removed by clicking on the Clear
This Stream button.
It is not necessary to select all variables, especially in cases where data may be suspect.
The High, Medium and Low radio buttons allow the user to adjust the weighting given to
each selection. See also Lab Data Entry Dialog for more information on weightings.
When selection is complete click on the Regress control button.
This action will bring up the Regression Parameter Selection Dialogue.
Main closes down the dialogue,saving all changes
Cancel closes down the dialogue,ignoring all changes

MULTI-STREAM MODE

Figure 7.12a:
Regression:
Match Selection

Petroleum Experts Ltd


Chapter 7- Input Data EoS 53 - 68

This mode is designed for projects where multiple samples and corresponding PVT data is
available from the same reservoir.This may be from wells at different depths or
surface/reservoir samples. The fluid components are generally the same but the
compositions and therefore the measured characteristics are different.
The principle is to match all the data with one set of component properties. Each stream
(see STREAMS Chapter 5.5) represents one sample with its own composition and Lab
Data. All the stream component properties will end up the same,but the initial set will be
taken from the master stream. This can be changed using the combo box provided.
Selection is carried out in the same way as descibed above for a single stream. As
selections are made the Stream Summary shows the number chosen for each stream.
A running total of choices is provided. Note that a maximum of 25 selections is available.
The Clear All Streams button will set all stream selections to zero.
Stream Selections can be individually cleared by clicking on the name or names within the
Stream Summary and pressing on the Clear Selected button.
When selection is complete click on the Regress control button.
This action will bring up the Regression Parameter Selection Dialog.

PVTP User Guide


54 - 68 PVTP User Guide

7.11.1 Regression Parameter Selection Dialog


The component selection displayed depends on which regression model was selected
within the Regression Match Data dialog (section 7.10).

ORIGINAL MODEL
If not regressing on viscosity, for each group or component , the user can select whether to
regress on any or all of the following:

Critical Temperature Tc
Critical Pressure Pc
Critical Volume Vc
Acentric Factor AF
Volume Shift C or S

In addition for solids (see Section 7.10.4) the following properties are added:
Melting Point
Heat of Melting

A typical display shown in figure 7.13.

Figure 7.13:
Regression:
Match Selection

This display is called by the Regress Option in the Regression Match Data dialogue.
For each group or component , the user can select whether to regress on any or all of the
Our latest methodology for parameter selection is given in What Properties to use in
Regression (Section 7.10.2)
The matching of viscosity requires a particular procedure which is described in Matching
Viscosity (Section 7.10.3)

Petroleum Experts Ltd


Chapter 7- Input Data EoS 55 - 68

Since the Binary Interaction of the lightest and heaviest components are important , it is
also possible to regress on the Binary Interaction Coefficient of them. Five Binary
Interaction Coefficient options will be provided when available.

GLOBAL OMEGA A AND OMEGA B MODEL


With this model a single value for Omega A abd Omega B are applied to all
components.The values are displayed within the grid. A Checkbox is supplied to select
each parameter. Clicking on Reset at the top of the column will set the respective omega
parameter to the EoS default value. In this mode the Tcs, Pcs and AFs of the pseudo and
grouped components can also be selected. In all models the volume shift parameters and
BICs are selectable See Regression with OmegaA and OmegaB (section 7.10.6).

INDIVIDUAL OMEGA A AND OMEGA B MODEL


With this model a each component has its own value for Omega A and Omega B. A
Checkbox is supplied to select each parameter for every component. Clicking on All at the
top of the column will set on all the respective omega parameters. None will switch them
off. In this mode the Tcs, Pcs and AFs of the pseudo and grouped components can also be
selected. In all models the volume shift parameters and BICs are selectable. See
Regression with OmegaA and OmegaB (section 7.10.6).

PVTP User Guide


56 - 68 PVTP User Guide

7.11.2 Volume Shift


When an equation containing the Volume Shift option is used, the parameter list expands
to contain the appropriate shift parameter ( see Volume Shift Help). A volume shift control
panel is also included.

7.11.3 Control Buttons


The control buttons have the following functions:

OK
This option stores the values entered (in memory , not on disk) . and closes down the
display.

Cancel
This option shuts down the display and ignores any changes which have been made.

Regress
This option starts the regression process. When complete, the Regression Information
screen is automatically displayed. See the note on regression below.

Results
This option displays the Regression Information screen. See the note on regression below.

All ON
This button sets all the available regression options.

Petroleum Experts Ltd


Chapter 7- Input Data EoS 57 - 68

All Tc,Pc,Vc,AF,C or S Shift


This button sets all the variables within the column on. (see also Mouse Shortcuts)

No Tc,Pc,Vc,AF,C or S Shift
This button sets all the variables within the column off.(see also Mouse Shortcuts)

Clear All
This button switches off all the available regression options.

7.11.4 Mouse Shortcuts


The programmed has been designed to give quick access to a row of options.Clicking on
the omponent name in various ways sets data on and off. The options are:

left mouse button - switch on AF Tc and Pc


right mouse button - switch on all properties
shift key and left mouse button - switch off AF Tc and Pc
shift key and right mouse button - switch off all properties

7.11.5 Separator
The Separator data option mirrors the feature available within the individual calculation
sections. The user can define a separator train through which the oil produced within
CCE, GRAD etc. will be flashed to correct the Oil FVF and GOR. The processes which are
used to return an oil to standard conditions can significantly change the final oil
characteristics and the amount of gas liberated on the way.
All stages do not need to be entered and a last flash to standard conditions is always
included.

The checkbox within the separator area switches the correction on and off. Setup brings
up the small dialogue where the separator conditions are defined.

PVTP User Guide


58 - 68 PVTP User Guide

7.11.6 What Properties to Use in Regression


Our recommendations for which variables to use have changed with our experience of a
wider and wider variety of fluids.

We now generally start with all Tcs and Pcs selected (except for N2 and CO2).
If BI coefficients are available select the value between C1 and the heaviest component.
The reason AFs are not chosen initially is that they have a tendency to be pushed to
extreme values which in turn lifts the low temperature
end of the Phase Envelope to near vertical. Using Tcs and Pcs give a gentler and more
controlled path to a solution.
If using Tcs and Pcs does not result in convergence, start adding AFs.
If Volume Shift is required select some Si or ci component properties.

Please note that Volume Shift is not recommended until no other combination is found to
work( see Volume Shift Chapter 4 for more details)
See also Step by Step Guide (Apendix A)
A typical starting display would be that in figure 7.13:

There may be some objections to using the properties for pure components below C6 since
they are measurable.
We have found the above method to work universally. however, we do not prevent the user
from selecting any combination of properties or approaching the solution differently.
It is our contention that the pure properties are being used within an empirical equation
with arbitrary methods of calculating and mixing the
constants which are derived from them (see EoS Help). This suggests that any purist
approach will only limit getting a result not make it better.

The quotation below makes the same point.


Quotation from
Molecular Thermodynamics of Fluid-Phase Equilibria by J Prausnitz and R. D.
Lichtenthaler.
"Many equations of state have been proposed and each year additional ones appear in the
literature,but most of them are either totally or at least partially empirical. All empirical
equations of state are based on more or less arbitrary assumptions which are generally not
valid. Since the constants which appear in an empirical equation of state for a pure gas
have at best only approximate physical significance, it is very difficult ( and frequently
impossible) to justify mixing rules for expressing the constants of mixture in terms of the
constants of the pure components which comprise the mixture.As a result,such
relationships introduce further arbitrary assumptions and it has been found that for
typical empirical equations of state, one set of mixing rules may work well for one or
several mixtures but poorly for others."

7.11.7 Matching Viscosity


In the Equation of State model ,viscosity is calculated by a range of methods.
The default method is Lohrenz, Bray and Clark (LBC).See Viscosity Models for more
details of the models available.
The LBC model is default as it the only model in general use within other programs.
Only one model is active in a file at any one time.
The active model is selected via the combo box which appears on the regression selection
display.

Petroleum Experts Ltd


Chapter 7- Input Data EoS 59 - 68

REGRESSION WITH LBC


This method uses composition , specific gravity and , more importantly, critical volume to
get the value for viscosity(see help on LBC model).
Critical Volume (Vc) is the property which is used in the viscosity regression.
The key to understanding the procedure outlined below is the fact that, although LBC
viscosity is dominated by Vc, in all other calculations the property has little on no effect.
The matching of viscosity can be effectively de-coupled from the
total fluid matching exercise.
The procedure to adopt is as follows:

1. Set up and carry out the fluid matching for all variables except viscosity eg.
PSat,PSat density, separator GOR , Stock Tank density etc. Suggestions for the
variables to use are given in the Step by Step Guide. See also What Properties to
use in Regression.

2. Enter the viscosity values to be matched to using the CCE table within the Match
Data Tables. Please note that there are limitations to what the LBC method can do
(see NOTE below).

3. Within the Match Selection Dialog ,click on the viscosity or viscosities to be


matched. This action will switch off all non-viscosity selections (psat etc. ). A typical
display would be:

Figure 7.14a:
Regression:
Match Viscosity

4. Click on Regress to bring up the Parameter Selection Dialog . No Selections will be


available other than component Vcs. Select all the Vcs using the Vc All button. A
typical display would be:

PVTP User Guide


60 - 68 PVTP User Guide

Figure 7.14 b:
Regression:
Match Viscosity

5. Click on Regress to match viscosity.

6. Return the matching system to the selections prior to step 1 i.e. PSat etc and Tc Pc
AFs selected. Regress again .This step is not really necessary as the matching
should not be disturbed. The operation does ,however ,reestablish the selections
which made the overall match possible.

NOTE on LBC
The LBC is the best compositional correlation for viscosity that we have tested to date. It
does ,unfortunately, have some limitations of which the user should be aware. The values
calculated for oils ,without matching, are generally not very good and can sometimes be
wrong by an order of magnitude. This limitation is counteracted to a great extent by the
Automatching of Viscosity feature. Unfortunately,another problem arises from the
inflexibility of the algorithm. With heavier oils it can be difficult to get a full match from
reservoir pressure to surface. If this occurs and the output is to be in the form of Black Oil
tables(Section 3.1) it may be better to match the viscosity within Prosper or MBal using
Black Oil correlations.

REGRESSION WITH MODELS OTHER THAN LBC


Unlike LBC which uses Vcs, the other viscosity models use Tcs,Pcs and liquid densities to
calculate viscosity. Matching directly on these properties would destroy the match to the
main fluid properties such as saturation pressure and separator GOR. As an alternative,
these models have been given a shift and multiplier mechanism to improve the match.

After matching the viscosity becomes:


Visc = Visc*Multiplier + Shift

The procedure to match becomes:

1. Set up and carry out the fluid matching for all variables except viscosity eg.
PSat,PSat density, separator GOR , Stock Tank density etc. Suggestions for the

Petroleum Experts Ltd


Chapter 7- Input Data EoS 61 - 68

variables to use are given in the Step by Step Guide. See also What Properties to
use in Regression.
2. Enter the viscosity values to be matched to using the CCE table within the Match
Data Tables.
3. Within the Match Selection Dialog ,click on the viscosity or viscosities to be
matched. This action will switch off all non-viscosity selections (psat etc. ). A typical
display would be:

Figure 7.14 c:
Regression:
Match Viscosity

4. Click on Regress to bring up the Parameter Selection Dialog . No component


selections are available. A typical display would be:

Figure 7.14 d:
Regression:
Match Viscosity

5. Click on Regress to match viscosity. The shift and multiplier parameters are
displayed. Gas and Oil values are matched separately. The Reset Params button
can be used to undo any matching that has taken place.
6. Return the matching system to the selections prior to step 1 i.e. PSat etc and Tc Pc
AFs selected. Regress again .This step is not really necessary as the matching
PVTP User Guide
62 - 68 PVTP User Guide

should not be disturbed. The operation does ,however ,reestablish the selections
which made the overall match possible.

7.11.8 Regression With Solids


In the Equation of State model ,viscosity is calculated by the method of Lohrenz, Bray and
Clark (LBC).

This display is called by the Regress Option in the Regression Match Data dialogue. if a
Solid option has been entered in the Match Data Tables.

The possible entries include Wax Appearance Temperature and Amount of Wax.
If either of these option is chosen the display expands to include two further columns as
shown below:

Figure 7.15:
Regression:
Solid Properties

From the expressions within Wax Modelling and Wax Model Details it can be seen that the
important variables as far as solid formation are concerned are Melting Point and Heat of
Melting.

Since a component is only allowed into the solid if its melting point is greater than the test
temperature only the heaviest components have any effect.
Melting Point is the key variable and it should be used first.
Heat of Melting has little effect on Wax Appearance Temperature but it significantly
changes the percentage of wax produced.
The lack of significant properties to change and the inflexibility of the underlying
correlations may mean that the model cannot fully match the variability found in complex
wax forming fluids.

Petroleum Experts Ltd


Chapter 7- Input Data EoS 63 - 68

NOTE: From the models it is obvious that the other component properties used in
regression i.e. Tc,Pc,AF etc. do not significantly influence solid formation.Their effect
comes in the composition and fugacity of the liquid solvent. It is therefore possible to match
solid formation in isolation from the other match points eg PSAT in a similar way to that
proposed for matching viscosities.

The procedure to adopt is as follows:

1. Set up and carry out the fluid matching for all variables except solids eg. PSat,PSat
density, separator GOR , Stock Tank density etc. Suggestions for the variables to
use are given in the Step by Step Guide. See also What Properties to use in
Regression.

2. Enter the Wax values to be matched to using the WAT and %Solids tables within
the Match Data Tables.

3. Within the Match Selection Dialog ,switch off all selections (psat etc. ) except solids.
A typical display would be:

Figure 7.16:
Regression:
Solid Properties

4. Click on Regress to bring up the Parameter Selection Dialog . Use the Clear All
button to remove the Tc,Pc AF etc. Selections. Select the component Melting
Points and if necessary Heats of Melting (as above)

5. Click on Regress to match wax properties.

6. Return the matching system to the selections prior to step 1 i.e. PSat etc and Tc Pc
AFs selected. Regress again .This step is not really necessary as the matching
should not be disturbed. The operation does ,however ,reestablish the selections
which made the overall match possible.

PVTP User Guide


64 - 68 PVTP User Guide

7.11.9 Model Selection

A combo box allows the user to select between the various wax models.Clicking on the
Reset Props button resets the important component properties back to the default values
outlined by the model's author. WARNING using this button will reset any solids regression
that has been done.

See Wax Modelling (Chapter 4) for more details on the model types available.
See Lab Data/Matching (Section 7.9) for more details on what can be matched for solids.

7.11.10 Notes on Regression


Due to the large number of calculations , regression can be a slow process, even when
using a fast computer.

During the regression process the computer will display the elapsed time, the number of
iterations to date , the best and latest error (Chi) found.

A cancel dialogue also allows the user to stop the process and use or discard the results
at that point.
If allowed to complete the regress option automatically brings up the Regression Results
Display(same as Group Properties)

If the calculation completes due to the number of regression cycles and a satisfactory error
has not been achieved , it is possible to regress again with the composition set at the
regressed value.

NOTE 1 the maximum number of regression cycles completed before an automatic stop
can be adjusted using the Preferences|Calculation Tolerences menu option.

NOTE 2 the Oil FVF within the multi-stage Separator calculation. is corrected through all
the succeeding stages.This correction can add up to 10 % to the un-corrected value. To
activate the correction add all stage temperatures and pressures to the match table,even if
no other matching is done within the lower stages.

If no satisfactory regression can be achieved the problem may be within the following:

1) Incorrect or incompatible data entered for lab matching

2) Too few groups used to give the system flexibility to match see Grouping

3) Composition setup particularly of pseudos not adequate for matching

The regression may succeed if a different path is taken to the solution e.g. by

1) Taking each calculation consecutively i.e. regressing on one calculation then using the
regressed values as input to the next. A reasonable order is Psat, followed by CCE then
Separator etc.

Petroleum Experts Ltd


Chapter 7- Input Data EoS 65 - 68

2) Selecting a different BI Coefficient correlation or entering new values manually. Most


calculations are very dependent on the value of coefficient between the lightest and
heaviest components.

3) Taking care to match the Pseudo properties to the best lab measurement available.

4) Selecting a different set of properties to regress e.g. density is sensitive to Pc,Tc values
while viscosity(see CCE matching) is almost totally dependent on Vc.

5) Increasing the number of groups or ungrouping completely as this gives the calculation
more flexibility.

NOTE 3 the matching of viscosity using the Lohrenz-Bray-Clark method requires a


particular procedure which is described in Regression - Matching Viscosity (Section
7.10.3)

7.11.11 Regression with OmegaA and OmegaB


Within the 2 most common Equations of State i.e.. Peng Robinson and Soave Redlich
Kwong OmegaA and OmegaB are empirically derived constants .
How these variables fit into the overall equation is given in the help on Acentric Factors.
In the Peng Robinson(PR) equation the a(T) function at the critical point is given by the
empirical relationship

R 2TC2
a (Tc ) = 0.45724( )
PC
The constant 0.45724 is the OmegaA parameter.
In addition the repulsive factor b within PR is given by:
RTC
b = 0.0778( )
PC
The constant 0.0778 is the OmegaB parameter.
The equivalent values for the Soave Redlich Kwong(SRK) equation are 0.427 for OmegaA
and 0.08664 for OmegaB.
A methodology has developed within the industry to treat OmegaA and B as variables for
use within the matching process.
This is really an alternative to using individual components Tc and Pc properties.
One advantage of this approach is that it leaves measured properties such as the Tc and
Pc of methane untouched while giving additional parameters to match with.
This methodology is particularly important if a corresponding states model for viscosity or
thermal conductivity is to be used.
One problem which may arise with going this route for regression is passing the match on
to other programs.
Some compositional exports do not contain OmegaA and OmegaB terms eg Prosper.
In addition, with some fluids this approach will not give as complete a match as using
individual Tcs and Pcs.
There are 2 versions of the OmegaA and OmegaB match available within the program:
1) Global - the same value for OmegaA and OmegaB are used for all components and
2) Individual - each component can have a different value for OmegaA and OmegaB.

The regression model is chosen within the Regression Match Data Dialog using the listbox
provided:

PVTP User Guide


66 - 68 PVTP User Guide

Selecting mode 2 or 3 will change the options within the Regression Parameter Selection
Dialog and also within the View Properties Dialog.

7.12 Plot Test Points


This feature has been added to help the user compare Lab or other experimental data with
the curves generated by plotting the results of the various PVT EOS calculations.

Access to the input screen, shown in figure 7.17, is gained when either

a) the Enter Plot Test Points option within the Data menu is selected or

b) the Set Test Pts. button is clicked within an EOS calculation plot.

Figure
7.17:
Test Point
Input Table

The table allows the user to configure up to 100 points. Entries are defined by setting up a
calculation and column name for each or a group of points. If the point matches the
variables and range of a calculated plot the Test Points will be drawn in the same way as
match data is done.
The points can be defined in any pattern and ordered using the Sort Table option. The
table is automatically sorted when this dialogue is first displayed.

To define test points follow the following procedure:

Petroleum Experts Ltd


Chapter 7- Input Data EoS 67 - 68

1) The first step in this process is to select a row or range of rows. This is done by clicking
on the raised row number at the start of the row. Adjacent rows can be selected by holding
down the mouse button and dragging the cursor across multiple row numbers.

2) Once selected the rows can be setup,cleared or the data only erased.

3) When the rows have been selected ,choose a calculation and a pair of variables.The
click on the Setup Rows button .
The program will setup the calculation type , X and Y variable names and units within the
grid.

4) Enter the test data in the X Value and Y Value columns

5) Click on Exit and Save when all selections have been made

Display of the test points can be toggled on and off with the Show Test Points on Plot
checkbox.

Clear Rows
This option removes any definitions or data within a selected area.

Clear Row Data


This option removes data within a selected area but leaves the calculation and variable
definitions intact.

Clear All
This option removes all definitions and data from the table.

Exit and Save


This option closes down the dialogue with all the changes saved

Cancel
This option closes down the dialogue with all the changes abandoned.

If any test points are detected which match a Plots variables and range thay are
automatically plotted (see figure 7.18).

PVTP User Guide


68 - 68 PVTP User Guide

Figure
7.18:
Test Points
within Plot

Petroleum Experts Ltd


8 Calculation EoS
This section describes the calculation input required for the Equation Of State PVT model and
the various forms of results.

Calculations can be initiated in three ways


I. by selecting an option from the Calculation section of the main menu
II. by clicking on one of the calculation icons within the main toolbar
III. by clicking on the Calculate control button within the Edit Composition and Properties
displays (see Chapter 7)

Methods I. and II. give a choice of the following :

◊ Calculate Critical Pressure and Temperature (section 8.1)


◊ Calculate Phase Envelope for a range of Vapour Fractions(section 8.2)
◊ Calculate a range of Saturation Pressures(section 8.3)
◊ Calculate the results of a Constant Composition Expansion (section 8.4)
◊ Calculate the results of a Constant Volume Depletion (section 8.5)
◊ Calculate the results of a Depletion Study (section 8.6)
◊ Calculate the results of a Differential Expansion (section 8.7)
◊ Calculate the results of a Separator Process (section 8.8)
◊ Calculate the results of a Compositional Gradient (section 8.9)
◊ Calculate the results of a Swelling Test(section 8.10)
◊ Calculate the results of a Slim Tube Simulation(section 8.11)

Where applicable ,the last set of entries for each calculation are saved with the other data in
the PVT project file.
Method III. provides the user with access to a subset of the calculation menu as a means of
checking the consistency of the entered composition information. The small display provides
options to calculate (section 8.12):

◊ Phase Envelope
◊ Critical Point (Temperature and Pressure)
◊ Saturation Pressure (at the reference temperature)
◊ Flash to Standard conditions
◊ Flash Through Separator Stages
◊ Maximum water in Hydrocarbon Phase

All calculation results are retained for inclusion in the Reports available with the PVT package
(Chapter 9)
2 - 55 PVTP User Guide

8.1 Critical Point Calculation

A critical point calculation can be initiated by selecting the Critical Point option from the
calculation menu or clicking on the icon shown above. Alternatively , the Calculate option on
the Edit Composition Screen etc. can be used (see section 8.12).
The result of the calculation is given in a dialog box . Figure 8.1 shows an example of this type
of output. Contained within the display are values for

• Critical Temperature Tc
• Critical Pressure Pc
• Critical Temperature Tc
• Critical Volume/Gas Constant Vc/R
• Critical Compressibility Zc
• Number of Iterations

In addition indication is given of the kind of system at reference conditions i.e. Dew Point (gas)
or Bubble Point (liquid)

Figure 8.1:
Critical Point

It should be noted that the Critical Point may not always be resolvable for complex mixtures. If
this proves to be the case try adjusting the values of Binary Interaction Coefficient , Acentric
Factor of the heaviest components and the properties of any pseudo components which have
been defined. Remember that the equation of state is not predictive , if a match point is
available, always use this to guide your changes.

Petroleum Experts
Chapter 8 - Calculation EoS 3 -55

8.2 Phase Envelope

A Phase Envelope calculation can be initiated by selecting the Phase Envelope option from
the calculation menu or clicking on the icon shown above. Alternatively , the Calculate option
on the Edit Composition Screen etc. can be used (see section 8.10).
A Phase Envelope calculation can be initiated by selecting the Phase Envelope option from
the calculation menu or clicking on the icon shown above. Alternatively , the Calculate option
on the Edit Composition Screen etc. can be used.

The display below shows an example of the phase envelope input parameters screen. As the
display loads it automatically calculates the phase envelope for vapour fraction 1.0. and the
currently active stream.(see PVT Project File Section 7.1).

The display is made up of several sections:

Stream Selection
The list box allows the user to select any combination of streams to calculate.

Vapour Fraction
There are 2 modes of entry

PVTP User Guide


4 - 55 PVTP User Guide

1) Auto- the entry boxes are loaded with values of 0.5,0.6,0.7,0.8,0.9, and 1.0
2) Manual entry - Eight entry boxes are provided for entering vapour fractions from 0.1 to
1.0

The CLEAR button will remove all entries in Manual Entry mode.

Calculation Limits
Entry boxes are provided to change the following values used to limit the phase envelope
calculation.

Pressure Step - dictates the gap between pressure movements used to detect phase
envelope
Min Pressure - sets the bottom limit of the calculation
Max. Pressure - sets the upper limit of the calculation
Integration Step - dictates the size of movement of the Integration function
Max. Integration Step - dictates the maximum size of movement of the Integration function

Plot Area
This shows the shape of the phase envelope calculated . No adjustments are available for this
plot. However , the graph can be enlarged and then manipulated by using the Expand Plot
button.

Status Area
This shows the critical points calculated during the phase envelope calculation and also
includes a status message area which indicates the progress of any calculations.
Note that the Critical Pressure Pc, Critical Temperature Tc ,Cricondenbar ,Cricondentherm
etc. may not always be resolved for complex systems.

Control Button Area

Included in this area are a series of control button which have the following functions:

Exit
This option stores the values entered (in memory , not on disk) and closes down the display.

Calc.
This option recalculates the phase envelope(s) using the latest inputs.

Expand Plot
This option brings up a full-sized plot of the phase envelope.

Set Test Points


This option calls the Test Points display. This allows the user to enter ten values for Saturation
Pressure versus Temperature. The values will be displayed on the Phase Envelope plot as
Match Point crosses

Results
This option brings up the results dialog as shown below.
The user can view all the stream phase envelope data by scrolling down the tables and
moving between the tables by way of the stream tabs.

Petroleum Experts
Chapter 8 - Calculation EoS 5 -55

The results can be copied to the Clipboard or to another package such as EXCEL by
highlighting the values required and pressing Ctrl + C.
Ctrl + V will insert the values into the target program.

Help
This option brings up the on-line help.

Use of Streams
The option of calculationg multiple curves is a very powerful aid in the analysis of petroleum
mixtures. Since streams can be filled with varying compositions changes in fluid
characteristics can be visualised. For example the program can illustrate how a fluid changes
as a result of a compositional gradient. Stream 1 and 2 can contain the compositions of gas

PVTP User Guide


6 - 55 PVTP User Guide

and oil calculated before and after the gas cap has been detected. The phase envelopes are
very different but they intersect at the gas cap temperature and pressure.
The compositions are transferred into the stream via the calculation analysis display. Since
the stream can also contain compositions from other PVT files (using Import or Add
Chapter 8 - Calculation EoS 7 -55

8.3 Ranged Saturation Pressure

A Range Saturation Pressure calculation can be initiated by selecting the Saturation Pressure
option from the calculation menu or clicking on the icon shown above.
This dialogue is used for Automatic and User Selected Input .

The automatic version looks like this:

Figure 8.4:
Range
Saturation
Pressure
Automatic
Mode

The user selected version replaces the ranged input with a series of entry boxes which can be
used to enter any temperature.

PVTP User Guide


8 - 55 PVTP User Guide

Figure 8.5:
Range
Saturation
Pressure
Manual
Entry

Stream Selection

The list box allows the user to select any combination of streams to calculate.See PVT Project
File Structure for more information on streams.

This display contains radio buttons which allow the user to swap between User Selected and
Automatic modes.

In addition, data entry boxes are provided for entering the limits of the temperature and
pressure ranges to be covered and the number of points to be calculated for each variable.
The points will be spread evenly throughout the temperature and pressure ranges selected.
All boxes should have an entry before proceeding to the Calculation Dialogue.

To bring up the calculation dialogue click on the Calc control button.

Cancel will clear all entries and return the user to the Summary Screen

Clear removes any entered values

Petroleum Experts
Chapter 8 - Calculation EoS 9 -55

Volume Shift
A volume shift control panel is proved to allow the user to setup and to switch on and off this
feature prior to calculation . See Volume Shift and Volume Shift Setup help for more details.

8.4 Constant Composition Expansion (CCE)

A CCE calculation can be initiated by selecting the Constant Composition Expansion option
from the calculation menu or clicking on the icon shown above.
Constant Composition Expansion is a flash process where all the products are retained i.e. the
total amount of each component at the initial conditions is the same at all the measured
values, only the phase splits (K values ) have been changed.

Separator Data
The CCE input displays contain a section for Separator Data. This allows the user to define a
separator train through which the CCE liquid will be flashed to correct the Oil FVF and GOR.
The processes which are used to return an oil to standard conditions can significantly change
the final oil characteristics and the amount of gas liberated on the way. When multiple
samples are being analysed, it may be necessary to have individual separator settings for
each stream. In this case, the individual radio button should be clicked on. The stream
separator settings can be accessed via the tabs at the bottom of the table.All stages do not
need to be entered and a last flash to standard conditions is always included.The checkbox
within the separator data area switches the correction on and off. The values within this
separator data area are loaded and stored separately from those within the Separator
calculation. The Copy Sep button will copy the stages from the Separator Calculation
(section 8.8) into the Separator Data area.The Clear button removes all values from within the
Separator Data area.

The calculation input screen comes in two forms viz. Automatic (figure 8.7) and User Selected
Entry (figure 8.8).

PVTP User Guide


10 - 55 PVTP User Guide

Figure 8.7:
Constant
Composition
Expansion
Automatic Mode

Petroleum Experts
Chapter 8 - Calculation EoS 11 -55

In the User Selected version the ranged input is replaced by a grid where any mixture of
pressures and temperatures can be entered

Figure 8.8:
Constant
Composition
Expansion
Manual Entry

Stream Selection

The list box allows the user to select any combination of streams to calculate. See PVT
Project File Structure for more information on streams.

This display contains radio buttons which allow the user to swap between User Selected and
Automatic modes.
In addition, data entry boxes are provided for entering the limits of the temperature and
pressure ranges to be covered and the number of points to be calculated for each variable.
The points will be spread evenly throughout the temperature and pressure ranges selected.
All boxes should have an entry before proceeding to the Calculation Dialogue.

Viscosity Method
Various viscosity models have been introduced into the PVTp program (see Section 4.6).

PVTP User Guide


12 - 55 PVTP User Guide

Only one model is active in a file at any one time. The active model is selected via the combo
box which appears on all the calculation input and regression selection displays.

To bring up the calculation dialogue click on the Calc control button.

Cancel will clear all entries and return the user to the Summary Screen

Clear removes any entered values

Volume Shift
A volume shift control panel is proved to allow the user to setup and to switch on and off this
feature prior to calculation . See Volume Shift and Volume Shift Setup help for more details.

Analysis
For each calculation carried out, the analysis display presents information on compositions K
values,gas and oil gravities etc. In addition, intermediate compositions can be extracted for
further work as separate files or streams. See Analysis Display (Section 8.4.2)

Calculate Thermal Conductivty


The thermal conductivity calculation is relatively slow and complex. This checkbox gives the
user contrl over whether it is undertaken See Thermal Conductivity Model help for more
details.

Gas Heating Values


The gas gross and net heating values are now calculated as columns within the calculation
table. The value given is derived from the composition of the accumulated gas after sending
the fluid through the indicated separator train.

Petroleum Experts
Chapter 8 - Calculation EoS 13 -55

8.4.1 The Calculation Display


A typical CCE display is given in figure 8.9
This Dialogue allows the user to initiate calculations and view the results
.
Figure 8.9:
Constant
Composition
Calculation
Screen

The Calculation Screen is loaded when the Calculate button is pressed on an Automatic or
User Selected Input Dialogue.
The display is in the form of a table with input values on the left and the required calculation
variables calculations listed in columns on the right.
If multiple streams have been selected (see Constant Composion Expansion), the user can
move betwen the streams by clicking on the tabs at the bottom of the display.(see PVT Project
File Structure for more information on streams.
Each column has a variable name and unit as a heading.
Scroll bars are provided to show more variables and results.
Colours have been used with grids to indicate phase:

Red - gas only


Blue - mixture of oil and gas
Black - oil only

If the values have been already calculated the display will show the last set of values
calculated.
The display has several control buttons along the top which have the following functions:

Calculate

This option recalculates the table using the latest inputs provided

PVTP User Guide


14 - 55 PVTP User Guide

Plot

This generates a full sized plot of the calculated results.

Layout

This options allows the user to select which columns are displayed in the results table. See
Calculation Layout Display .

Analysis

This option produces a secondary screen giving the compositions calculated at each
measurement point. The analysis screen also provides access to the EXTRACT function
which allows the user to export a particular line of the calculation to a PVT file. Alternatively,
the intermediate composition can be copied to a stream within this project file.With Separator
calculations further information Viz. Total GOR ,Gas Gravity and Oil Gravity are also provided
through a More option.

Cancel

This option closes down the display and passes the control back to the input screen

Main

This option closes down both the calculation and the input displays and passes the control
back to the main PVT screen.

Clipboard

This sends all or part of the results data to the clipboard by calling the Copy to Clipboard
Dialog

Hydrate Export

If a hydrate formation Pressure calculation is done the analysis button is replaced by an export
version. This allows direct output to an ASCII file which can be taken into Prosper.

Note on Density
The Calculation table provides 2 alternative values for Oil Density i.e. EOS and KATZ. The
EOS value derives strictly from the Equation of State value for Compressibility z and PV=zRT
while the other stems from the composition being input into a Standing-Katz density
correlation. The values in combination can be used as a guide to the appropriateness of the

Petroleum Experts
Chapter 8 - Calculation EoS 15 -55

values used to generate the EOS model e.g. BI coefficients, acentric factors , pseudo
characterisation etc.
The EOS density is used in all subsequent calculations for FVF ,GOR etc.
More values can be viewed by using the horizontal and vertical scroll bars provided.

8.4.2 The Analysis Display


The screen shows the compositions and calculated K values for each temperature and
pressure combination.
The other information presented depends on the caculation.The example below is for CCE

Figure 8.10:
Constant
Composition
Expansion
Analysis
Display

The temperature value displayed can be changed by clicking on the down or up arrow within
the temperature area ( top left).
The pressure value displayed can be changed by clicking on the down or up arrow within the
pressure area ( top right).

The command buttons perform the following functions:

Exit
Close down the display and return to the calculation screen.

Clipboard
This sends all or part of the analysis data to the clipboard by calling the Copy to Clipboard
Dialog

Extract

PVTP User Guide


16 - 55 PVTP User Guide

This option allows the user to save the composition( total,vapour or liquid)being stored as a
separate PVT file for later retrieval.
Alternatively, a stream can be created within the current PVT Project File.
The analysis display for a separator calculation is more complex.

QUALITY PLOT

Clicking on the Quality Button will automatically generate a quality plot of the type
shown below. Background to this plot is descibed in the utility menu help for the
Hoffmann Quality Plot. If the properties of the components give a consistent flash, the
light components should roughly fall along a straight line.

Figure 8.10b:
Analysis
Quality Plot

Petroleum Experts
Chapter 8 - Calculation EoS 17 -55

8.4.3 The Copy to Clipboard Dialog


There are two forms:.

Calculation Results
This dialog is called by clicking on the Clipboard button within the Calculation Results Dialog.

Among the option available are to include the results column names and/or units. In addition
the order of the results within the table can be reversed. To send the data to the clipboard,
click on OK.

Calculation Analysis
This dialog is called by clicking on the Clipboard button within the Calculation Analysis Dialog.

Among the option available are to include the analysis column names .All the analysis created
within the calculation on the target stream can be sent to the clipboard by clicking on option
2.The last option indicates whether data other than the compositions should be sent.

PVTP User Guide


18 - 55 PVTP User Guide

8.5 Constant Volume Depletion(CVD)

A CVD calculation can be initiated by selecting the Constant Volume Depletion option from the
calculation menu or clicking on the icon shown above.
Constant Volume Depletion is a flash process where the volume of the system at Dew Point is
preserved. At each flash stage volume in excess of this is removed as excess gas.
The excess gas products, i.e. equal to the increase in volume over the initial value, are
removed at each stage to become the wellstream production.
The liquid and gas equal to the initial volume goes on to be flashed at the next set of
conditions.
The CVD calculation concentrates on the gas and liquid left in the reservoir, while the
Depletion Study (Section 8.6) is used to find the produced gas (Wellstream) data. For
example, the GOR displayed for the CVD is that of the oil within the reservoir.
The CVD screen has only a manual mode.

The CVD screen has an Automatic and Manual Method. The normal mode is User Selected as
PVT reports only have a small number of steps. The Automatic mode allows the user to
introduce a larger number of small steps. This better represents the calculation path of a
program like MBAL. A typical manual mode display being shown in figure 8.12.
Entries are provided for the temperature at which the process is to be carried out and the
pressure stages involved in the operation.
A Clear button removes all entries.
The Copy from DEPL button copies across the entries which have been made for the
Depletion Study calculation.

Separator Data
The CVD input displays contain a section for Separator Data. This allows the user to define a
separator train through which the CCE liquid will be flashed to correct the Oil FVF and GOR.
The processes which are used to return an oil to standard conditions can significantly change
the final oil characteristics and the amount of gas liberated on the way. When multiple
samples are being analysed, it may be necessary to have individual separator settings for
each stream. In this case, the individual radio button should be clicked on. The stream
separator settings can be accessed via the tabs at the bottom of the table.All stages do not
need to be entered and a last flash to standard conditions is always included.The checkbox
within the separator data area switches the correction on and off. The values within this
separator data area are loaded and stored separately from those within the Separator
calculation. The Copy Sep button will copy the stages from the Separator Calculation into the
Separator Data area.The Clear button removes all values from within the Separator Data
area.

Petroleum Experts
Chapter 8 - Calculation EoS 19 -55

Stream Selection

The list box allows the user to select any combination of streams to calculate.See PVT Project
File Structure for more information on streams.

Volume Shift
A volume shift control panel is proved to allow the user to setup and to switch on and off this
feature prior to calculation . See Volume Shift and Volume Shift Setup help for more details.

Gas Heating Values


The gas gross and net heating values are now calculated as columns within the calculation
table. The value given is derived from the composition of the accumulated gas after sending
the fluid through the indicated separator train.

Viscosity Method
Various viscosity models have been introduced into the PVTp program (see Section 4.6).
Only one model is active in a file at any one time. The active model is selected via the combo
box which appears on all the calculation input and regression selection displays.

Note on Oil Density


The calculation screen shows two Oil Densities for comparison purposes. The EOS value is
determined directly from the equation of state calculation of liquid compressibility Z. This value
is used to derive all the related properties i.e. Oil Gravity,Oil FVF and GOR. The second value
is taken from the correlation put forward by Standing and Katz. The non-predictive nature of
the Equation of State method and its weakness in calculating liquid properties makes the
value of Oil Density particularily suspect in non-matched systems. The EOS Density is
,however, sensitive to composition and property changes, making it a suitable value for
matching and regression.

The Standing-Katz value is empirically derived and in our experience predicts well the density
of most fluids. The average nature of the number and its lack of sensitivity make it unsuitable
for regression.

Matching the EOS density to good experimental data usually results in the two densities
having very similar values. Conversely, if the values are very disimilar, it usually means that
good matching has not been achieved.

Copying And Pasting


In common with all the grids within the PVTp program the main grid within this display can be
copied onto the clipboard by selecting all the cells and typing Control+C. Pasting from the
clipboard is done by clicking within the target cell and typing Control+V.

PVTP User Guide


20 - 55 PVTP User Guide

Figure 8.11:
CVD Input Screen

Petroleum Experts
Chapter 8 - Calculation EoS 21 -55

8.6 Depletion Study(DEPL)

A DEPL calculation can be initiated by selecting the Depletion Study option from the
calculation menu or clicking on the icon shown above.
The Depletion Study is similar to a Constant Volume Depletion (Section 8.5) . The
process is the same. The difference between them lies in the emphasis of the
calculations undertaken.
A Depletion Study is used where the main product is the gas removed at each stage. The
calculations are designed to provide an insight into the Wellstream properties and composition
as the reservoir depletes
The Depletion Study is a flash process where the volume target is kept constant throughout
the stages. The excess gas products, i.e. equal to the increase in volume over the initial value,
are removed at each stage to become the wellstream production.
The composition, produced mole% and Surface GOR of this wellstream gas are reported.
In addition a Cumulative Production figure is worked out from the Gas In Place value which is
input by the user.
The liquid and gas equal to the initial volume goes on to be flashed at the next set of
conditions.A Resevoir Liquid Dropout is also reported.
The DEPL screen has only a manual mode (figure 8.11a).
Entries are provided for the temperature at which the process is to be carried out and the
pressure stages involved in the operation.
A Clear button removes all entries.
The Copy from DEPL button copies across the entries which have been made for the
Depletion Study calculation.

Separator Data
The DEPL input displays contain a section for Separator Data. This allows the user to define
a separator train through which the CCE liquid will be flashed to correct the Oil FVF and
GOR. The processes which are used to return an oil to standard conditions can significantly
change
22 - 55 PVTP User Guide

Stream Selection

The list box allows the user to select any combination of streams to calculate.See PVT Project
File Structure for more information on streams.

Viscosity Method
Various viscosity models have been introduced into the PVTp program (see Section 4.6).
Only one model is active in a file at any one time. The active model is selected via the combo
box which appears on all the calculation input and regression selection displays.

Volume Shift
A volume shift control panel is proved to allow the user to setup and to switch on and off this
feature prior to calculation . See Volume Shift and Volume Shift Setup help for more details.

Note on Oil Density


The calculation screen shows two Oil Densities for comparison purposes. The EOS value is
determined directly from the equation of state calculation of liquid compressibility Z. This value
is used to derive all the related properties i.e. Oil Gravity,Oil FVF and GOR. The second value
is taken from the correlation put forward by Standing and Katz. The non-predictive nature of
the Equation of State method and its weakness in calculating liquid properties makes the
value of Oil Density particularily suspect in non-matched systems. The EOS Density is
,however, sensitive to composition and property changes, making it a suitable value for
matching and regression.
The Standing-Katz value is empirically derived and in our experience predicts well the density
of most fluids. The average nature of the number and its lack of sensitivity make it unsuitable
for regression.
Matching the EOS density to good experimental data usually results in the two densities
having very similar values. Conversely, if the values are very disimilar, it usually means that
good matching has not been achieved.

Copying And Pasting


In common with all the grids within the PVTp program the main grid within this display can be
copied onto the clipboard by selecting all the cells and typing Control+C. Pasting from the
clipboard is done by clicking within the target cell and typing Control+V.

Petroleum Experts
Chapter 8 - Calculation EoS 23 -55

Figure 8.11a:
DEPL Input
Screen

PVTP User Guide


24 - 55 PVTP User Guide

8.7 Differential Expansion(DIFF)

A DIFF calculation can be initiated by selecting the Differential Expansion option from the
calculation menu or clicking on the icon shown above.
Differential Expansion or Liberation is a flash process where all the gas products are removed
at each stage. The liquid goes on to be flashed at the next set of conditions.
The Differential Liberation screen has only a Manual Method , a typical display being shown in
figure 8.12.
Entries are provided for the temperature at which the process is to be carried out and the
pressure stages involved in the operation. A Clear button removes all entries.

Points to Remember about a DIFF calculation:


◊ The liquid in the initial stage of a differential liberation , by definition, MUST be at Bubble
Point. Any gas detected by the calculation is ignored and does not appear in any calculated
value.
◊ The calculation is very sensitive to the number of steps and the value of each step. Taking
a different route to the end point gives very different results
◊ The calculation of GOR is carried out with respect to the Residual Volume of the oil making
it very sensitive to each step and particularily to the last. A last step to atmospheric is
normal. Unlike the other calculation all stages must be complete before the values at each
stage can be properly calculated.

Petroleum Experts
Chapter 8 - Calculation EoS 25 -55

Figure 8.12:
Differential
Liberation
Input Screen

Viscosity Method
Various viscosity models have been introduced into the PVTp program (see Section 4.6).
Only one model is active in a file at any one time. The active model is selected via the combo
box which appears on all the calculation input and regression selection displays.

Note on Oil Density


The calculation screen shows two Oil Densities for comparison purposes. The EOS value is
determined directly from the equation of state calculation of liquid compressibility Z. This value
is used to derive all the related properties i.e. Oil Gravity,Oil FVF and GOR. The second value
is taken from the correlation put forward by Standing and Katz. The non-predictive nature of
the Equation of State method and its weakness in calculating liquid properties makes the
value of Oil Density particularily suspect in non-matched systems. The EOS Density is
,however, sensitive to composition and property changes, making it a suitable value for
matching and regression.
The Standing-Katz value is empirically derived and in our experience predicts well the density
of most fluids. The average nature of the number and its lack of sensitivity make it unsuitable
for regression.

PVTP User Guide


26 - 55 PVTP User Guide

Matching the EOS density to good experimental data usually results in the two densities
having very similar values. Conversely, if the values are very disimilar, it usually means that
good matching has not been achieved.

Stream Selection

The list box allows the user to select any combination of streams to calculate.See PVT Project
File Structure for more information on streams.

Volume Shift
A volume shift control panel is proved to allow the user to setup and to switch on and off this
feature prior to calculation . See Volume Shift and Volume Shift Setup help for more details.

Copying And Pasting


In common with all the grids within the PVTp program the main grid within this display can be
copied onto the clipboard by selecting all the cells and typing Control+C. Pasting from the
clipboard is done by clicking within the target cell and typing Control+V.

Petroleum Experts
Chapter 8 - Calculation EoS 27 -55

8.8 Composite Differential Expansion(COMPOS)

A COMPOS calculation can be initiated by selecting the Composite Differential Expansion


option from the calculation menu
As suggested by the name this option is very like the standard Differential Expansion or
Liberation . COMPOS is a flash process where all the gas products are removed at each
stage. The liquid goes on to be flashed at the next set of conditions.
Unlike the standard DIFF, the GOR and FVF of the excess vapour estimated for the composite
option is not calculated with respect to the residual volume. Instead the values are arrived at
in a similar way to a CCE or CVD calculation i.e. by doing a series of separator flashes back to
stock tank conditions. If no separator stages are entered a single flash is carried out. This
removes the heavy dependence on the number of steps and the accuracy of estimating the
residual oil which characterises Differential Liberation. It also is closer to what happens in a
reservoir.

The Composite Differential Liberation calcualtion is similar to the standard version , a typical
input dialog is shown in figure 8.12a

PVTP User Guide


28 - 55 PVTP User Guide

Figure 8.12a:
Composite
Differential
Liberation
Input Screen

The difference lies in the standard separator input section at the bottom of the dialog.
The Copy from DIFF button will copy across entries from the standard Differential Liberation
calculation.

Petroleum Experts
Chapter 8 - Calculation EoS 29 -55

8.9 Separator Process

A Separator calculation can be initiated by selecting the Separator option from the calculation
menu or clicking on the icon shown above.
The Separator Process flashes the mixture at a fixed set of conditions. The liquid and gas are
split off to go on to the next stage of the process.
The Separator option has only one input mode.
A Separator Input screen has Data entry boxes which are provided for up to 20 separator
stages. Enter the pressure and temperature of each stage and click on the Calculate control
button.

Two modes are available VIZ. Global or Individual. In Global mode all streams will be
calculated with the same separator conditions.

Figure 8.13:
Separator
Process Input
Screen

PVTP User Guide


30 - 55 PVTP User Guide

In Individual mode all streams will be subjected to their own separator conditions. The tabs at
the bottom of the grid can be used to move between the stream inputs.
The Copy Settings to All Streams will set all stream settings to the current stream value.

Figure 8.13b:
Separator
Process Input
Screen

The separator calculation screen is the same as that described for Constant Composition
Expansion (section 8.4)
The analysis screen is also much the same as that described in section 8.4.2. The difference
is that the More control button now becomes active . Clicking on this brings up a display of the
type shown in figure 8.12. giving GOR ,Oil gravity and Gas Gravity values for the selected.

Stream Selection

The list box allows the user to select any combination of streams to calculate.See PVT Project
File Structure for more information on streams.

Volume Shift
A volume shift control panel is proved to allow the user to setup and to switch on and off this
feature prior to calculation . See Volume Shift and Volume Shift Setup help for more details.

Petroleum Experts
Chapter 8 - Calculation EoS 31 -55

Viscosity Method
Various viscosity models have been introduced into the PVTp program (see Section 4.6).
Only one model is active in a file at any one time. The active model is selected via the combo
box which appears on all the calculation input and regression selection displays.

Note on Oil Density


The calculation screen shows two Oil Densities for comparison purposes. The EOS value is
determined directly from the equation of state calculation of liquid compressibility Z. This value
is used to derive all the related properties i.e. Oil Gravity,Oil FVF and GOR. The second value
is taken from the correlation put forward by Standing and Katz. The non-predictive nature of
the Equation A by10.98 136.7459 597.9213 TEquation A by10.98 136.74t3sp119.7009 732.5003 T
32 - 55 PVTP User Guide

Figure 8.14:
Separator
Process
Analysis
Screen

Figure 8.14a:
Separator
Process
Analysis
Summary
Table

Petroleum Experts
Chapter 8 - Calculation EoS 33 -55

QUALITY PLOT

Clicking on the Quality Button will automatically generate a quality plot of the type shown
below. Background to this plot is descibed in the utility menu help for the Hoffmann Quality
Plot. If the properties of the components give a consistent flash, the light components should
roughly fall along a straight line.

Figure 8.14b:
Separator
Process
Analysis
Quality Plot

PVTP User Guide


34 - 55 PVTP User Guide

8.10 Compositional Gradient

A Compositional Gradient calculation can be initiated by selecting the Compositional Gradient


option from the calculation menu or clicking on the icon shown above.
Compositional Gradient calculates the changes in composition with depth above and below
the reference depth.
The calculation input screen comes in two forms viz. Automatic (figure 8.15) and User
Selected Entry (figure 8.16).

Automatic
A typical input screen is given in figure 8.15
The display contains radio buttons which allow the user to swap between User Selected and
automatic modes. The reservoir reference conditions are also displayed . These variables
cannot be changed from this display . Use the Data | Reference Data option (section 7.7) if a
change is required.
In addition, data boxes are provided for entering the limits of the depth to be covered above
and below the reference depth and the number of points to be calculated for each direction.
The points will be spread evenly throughout the ranges selected. A check box is provided for
swapping between relative and absolute depths.
Temperature Gradient must also be entered in the appropriate box.

To initiate the calculation click on the Calculate control button. The Calculation Screen and its
options are described in section 8.9.1

Saturation Pressure
As part of the gradient calculation, the saturation pressure of the mixture can be calculated at
each depth. Since this calculation takes some time the option is given to leave out the
calculation. Both User Selected and Automatic dialogues contain a check box for this option.
If the Saturation Pressure is calculated a plot with Pressure Gradient against depth becomes
available . A typical plot is shown in figure 8.15a.

Petroleum Experts
Chapter 8 - Calculation EoS 35 -55

Figure 8.15:
Auto Mode
Gravitational
Gradient

NOTE the additional information on the plot i.e. Reference Depth,Reference Pressure etc.
using the Match point colour (see Plotting)

Stream Selection

The small table allows the user to select any combination of streams to calculate.Selected
stream are highlighted in red.
See PVT Project File Structure for more information on streams.
The reservoir reference conditions are also displayed within this table . These variables can
be changed from this display .
Alternatively, the Data | Reference Data option can be used to view or change thes values.
An input screen contains radio buttons which allow the user to swap between User Selected
and Automatic modes.

PVTP User Guide


36 - 55 PVTP User Guide

Separator Data
The COMPGRAD input displays contain a section for Separator Data. This allows the user to
define a separator train through which the CCE liquid will be flashed to correct the Oil FVF
and GOR. The processes which are used to return an oil to standard conditions can
significantly change the final oil characteristics and the amount of gas liberated on the way.
When multiple samples are being analysed, it may be necessary to have individual separator
settings for each stream. In this case, the individual radio button should be clicked on. The
stream separator settings can be accessed via the tabs at the bottom of the table.All stages
do not need to be entered and a last flash to standard conditions is always included.The
checkbox within the separator data area switches the correction on and off. The values within
this separator data area are loaded and stored separately from those within the Separator
calculation. The Copy Sep button will copy the stages from the Separator Calculation into the
Separator Data area.The Clear button removes all values from within the Separator Data
area.

Viscosity Method
Various viscosity models have been introduced into the PVTp program (see Section 4.6).
Only one model is active in a file at any one time. The active model is selected via the combo
box which appears on all the calculation input and regression selection displays.

Volume Shift
A volume shift control panel is proved to allow the user to setup and to switch on and off this
feature prior to calculation . See Volume Shift and Volume Shift Setup help for more details.

Petroleum Experts
Chapter 8 - Calculation EoS 37 -55

User Selected
A typical input screen is given in figure 8.16
The display contains radio buttons which allow the user to swap between User Selected and
automatic modes. In addition, 10 data boxes are provided for entering the depths above and
below reference depth at which the gradient is to be calculated. The points do not need to be
evenly spread.
As in the Automatic mode, an entry is also required for temperature gradient and a check box
is provided for swapping between relative and absolute depths.
To initiate the calculation click on the Calculate control button. The Calculation Screen and its
options are described in section 8.9.1.

Figure 8.16:
Compositional
Gradient
Manual Mode

To initiate the calculation click on the Calculate control button. The Calculation Screen and its
options are described in section 8.8.1

PVTP User Guide


38 - 55 PVTP User Guide

8.10.1 Calculation Results Display


A typical results display is shown in figure 8.17. The results are reported against the gradient
points entered. The controls on this display have the same effect as those described for
Constant Composition Expansion (section 8.4).

Note on Oil Density


The calculation screen shows two Oil Densities for comparison purposes. The EOS value is
determined directly from the equation of state calculation of liquid compressibility Z. This value
is used to derive all the related properties i.e. Oil Gravity,Oil FVF and GOR. The second value
is taken from the correlation put forward by Standing and Katz. The non-predictive nature of
the Equation of State method and its weakness in calculating liquid properties makes the
value of Oil Density particularily suspect in non-matched systems. The EOS Density is
,however, sensitive to composition and property changes, making it a suitable value for
matching and regression.

The Standing-Katz value is empirically derived and in our experience predicts well the density
of most fluids. The average nature of the number and its lack of sensitivity make it unsuitable
for regression.

Matching the EOS density to good experimental data usually results in the two densities
having very similar values. Conversely, if the values are very disimilar, it usually means that
good matching has not been achieved.

Figure 8.17:
Compositional
Gradient
Calculation
Results
Display

Petroleum Experts
Chapter 8 - Calculation EoS 39 -55

8.11 Swelling Test

A Swelling Test calculation can be initiated by selecting the Swelling Test option from the
calculation menu or clicking on the icon shown above.
This option only becomes available if a second stream or more streams have been defined.
The Swelling Test mixes a pre-entered amount of the second stream with the first. The
Saturation Pressure of this new mixture is determined. The mixture is the flashed at the
Saturation Pressure to get the phase properties.
The Swelling Test option has only one input mode. A typical input display is shown in figure
8.18

A Swelling Test Input screen has Data entry boxes which are provided for up to 10
temperatures. In addition 10 second stream compositions can be entered for each
temperature . When mixed these numbers represent the mole percent of the second stream
within the first. If the component exists within the first stream the values are added together
and the properties of the primary stream (eg from regression) are used for both. If no
component exists of the same type a new component is created with the properties shown for
the second stream.

The Swelling Test has two input options for composition VIZ

◊ Mole %
◊ Volume of gas per volume of oil

The input type is set by two radio buttons which are situated beneath the input columns.
When either option is selected, the other is automatically calculated aand appears on the
calculation display.

The unit for vol/vol input can be changed on the units display by scrolling down to the Swelling
Input unit. At present the units are set as volumes of gas at standard conditions being added
to oil at its saturation pressure. The first step in the calculation is therefore to find the
saturation pressure of the oil and the density at that pressure. This density allows the vol/vol
input to be translated to its equivalent mole % value. The calculation then proceeds as normal
using this value.

The Auto Set button sets the compostions to a range between 0 and 90%.
The Clear button removes all composioion entries.

Enter the temperatures and compositions required and click on the Calculate control button.

Analysis
For each calculation carried out, the analysis display presents information on compositions K
values,gas and oil gravities etc. In addition, intermediate compositions can be extracted for
further work as separate files or streams . See Analysis Display for CCE

PVTP User Guide


40 - 55 PVTP User Guide

Figure 8.18:
Swelling Test
Input Screen

Note : The Swelling Test Saturation Pressure is available for matching .

Petroleum Experts
Chapter 8 - Calculation EoS 41 -55

8.12 Slim-tube Simulation

A slim-tube calculation can be initiated by selecting the Slim-tube simulation option from the
calculation menu or clicking on the icon shown above.
This cell to cell model simulates gas injection into an oil reservoir. The program sets
up a series of cells as shown in figure 1below.
The cells do not need to be the same size but usually are. The temperature of all the cells
remain the same at the initial reservoir value.
If the cell orientation is horizontal all the cells start at the designated reservoir pressure.If the
cells are inclined or vertical, the pressures are adjusted for the column of oil above the cell.

Fig 1 Slim-tube Simulator


Injection gas
Wellstream

Excess Gas & Oil Excess Gas & Oil

Cell 1 Cell 2 Cell n

In each time step gas is added to the system. The gas injected into cell 1 is mixed with the
fluid there and the combination is flashed to find the new amount of gas and oil and their
properties.
Material Balance calculations and phase mobility criteria are used to calculate how much of
each phase is moved to cell 2. Again the new mixture is flashed and the excess is moved to
cell 3.
This process is repeated until the production cell is encountered. At this point the excess
volume and composition appear as wellstream products.
Whether multiple contact miscibility is achieved is usually taken from the estimation of the
minimum miscibility pressure (MMP). Definitions of the MMP can vary, but it is usually taken
as the pressure at which the recovery is 90% wnen 1.2 pore volumes of gas have been
injected. At pressures above MMP the gas is assumed to be miscible.

PVTP User Guide


42 - 55 PVTP User Guide

8.12.1 Slim-tube Input dialog


This Dialog is the main one for the slim tube simulation calculation. The reasoing behind the
calculation is described in Background to Slim-tube Simulation.
The screen is brought up by selecting the Slim-tube Simulator option from the main
Calculation menu.
The dialog gives access to the other slim tube setup dialogs i.e.
Cells Setup
Rel Perms Setup
Times and Material Balance Setup.

Set All Values to Default


The slim-tube calculation is complex to set up. As it is trying to simulate a physical test , many
variables (physical sizesates permeabilities) have to be tuned to realistic values.
To help in this process a set of typical default values are provided. Clicking on this button will
fill all the Slim-tube dialogs with numbers which will work for most oil/gas combinations.
WARNING: Using this button will overwrite all previously entered data (except pressures) on
all Slim-tube dialogs.

The dialog has 2 modes Automatic and User Selected . Radio buttons are provided to switch
between modes.
A typical Automatic mode display is shown in figure 8.19:

Figure 8.19:
Slim-tube Input
Dialog

Petroleum Experts
Chapter 8 - Calculation EoS 43 -55

A pressure range is entered as a minimum and maximum pressure plus a number of steps. It
should be noted that the slim tube simulation is a complex calculation and can be slow.

If discrete pressure values are required the mode should be changed to User Selected and
the pressures entered as shown in figure 8.21:

Figure 8.21:
Slim-tube Input
Dialog

Stream Data
The reservoir stream is the oil which will fill the slim-tube cells. The injected stream is the gas
which will be introduced to test its miscibility in the oil.

Temperature
The slim-tube experiment is normally done at reservoir temperature. This value will default to
the entered reservoir temperature (see Reference Data) , but it can be changed to a different
value using the edit box provided.

Test for MMP


The minimum miscibilty pressure (MMP) is normally taken as the pressure at which there is 90
percent oil recovery at 1.2 pore volumes of gas injected. Above this pressure the gas is taken
as being miscible. The test values can be changed from the defaults using the edit boxes
provided. The selected values appear as reference lines on the plot of recovery versus pore
volume injected. A typical plot is shown below:

PVTP User Guide


44 - 55 PVTP User Guide

Figure 8.22:
Slim-tube Output
Plot

Setup Cells

The number and dimensions of the cells within the slim-tube are setup in the Cells Setup
Dialog.

Setup Relative Permeabilities

The relative permeabilities and associated data are entered within the Rel Perms Setup
Dialog.

Setup Times and Material Balance limits

The number and size of the time steps are setup within the Times and Material Balance Setup
Dialog.

Petroleum Experts
Chapter 8 - Calculation EoS 45 -55

Clear

Clear will remove the current pressure inputs.

Calc

When all entries have been made click on Calc to bring up the Slim-tube Calculation Dialog.

Volume Shift
A volume shift control panel is proved to allow the user to setup and to switch on and off this
feature prior to calculation . See Volume Shift and Volume Shift Setup help for more details.

PVTP User Guide


46 - 55 PVTP User Guide

8.12.2 Slim-tube cell data dialog


This Dialog sets up the dimensions and other data related to the cells that make up the slim-
tube. The display is called by the Slim-tube Input Dialog.
A typical screen would be as in figure 8.23:

Figure 8.23:
Slim-tube Cell
Data Dialog

The first step is to define the number of cells. The Production cell is normally the last and the
injection is the first. The depth is only for reference.
The cells are normally horizontal. in this case they are all at the same depth and pressure. If
they are vertical , they are at different pressures depending on the cell height and the oil
density.
The cells can contain the same data. to do this enter the data into cell 1 and click on the Copy
Cell 1 Data to All button.
Alternatively, all data can be individually entered within the table.
The first three columns define the dimensions of each cell . The last two indicate the Porosity
and Permeability of each cell.

Petroleum Experts
Chapter 8 - Calculation EoS 47 -55

8.12.3 Slim-tube cell data dialog


This Dialog sets up the relative permeability and capillary pressure data which governs the
relative movement of fluids in the slim-tube.
In addition , the rock compressibility can be entered within this dialog.
The display is called by the Slim-tube Input Dialog.
A typical screen would be as in figure 8.24:

Figure 8.24:
Slim-
Permeabilities
Dialog

The Relative Permeability data can only be entered in table form at present.
The exponents are entered as fractions with respect to the oil saturation.
A Capillary Pressure curve can also be entered as a function of oil saturation.

PVTP User Guide


48 - 55 PVTP User Guide

8.12.4 Slim-tube time steps dialog


This Dialog sets up the time steps and material balance options within the slim tube simulator.
The display is called by the Slim -tube Input Dialog.

A typical screen would be as in figure 8.25:

Figure 8.25:
Slim-tube time
steps Dialog

Enter the number of time steps required. This action will set the size of the table.
The times can be set as a fixed value or with a different value for each step.
To set the same time for each step click on the fixed time step radio button and enter the
time required in the edit box provided.
If different times are required,click on the variable time step radio button and enter the times
within the table.

Adaptive Time Steps


It should be noted that the program will automatically change the value of a timestep or add
more timesteps if it is failing to meet its convergence criteria.

Petroleum Experts
Chapter 8 - Calculation EoS 49 -55

8.12.5 Slim-tube calculations dialog


This Dialog allows the user to initiate calculations and view the results
.
Figure 8.26:
Slim-tube
Calculation
Dialog

The Calculation Screen is loaded when the Calculate button is pressed on the Slim-tube Input
Dialog.
The display is in the form of a table with a Cell Detail button as the first column. The properties
listed are those of the fluid exiting the last cell at the end of the time step.
The time steps listed may chage from those entered initially as the calculation will create new
values to reflect the intermediate flow changes within the model.

Cell Detail
Clicking on any of these buttons will bring up the Cell Detail Dialog . This displays the phase
,properties and compositions in each cell at the selected timestep.Any composition can be
extracted as a strem for further analysis.(see PVT Project File Structure for more information
on streams)

If multiple pressures have been selected (see Slim-tube Input Dialog) the pressures appear
as separate tables with tags at the bottom. The user can move betwen the pressures by
clicking on the tabs at the bottom of the display.
Each column has a variable name and unit as a heading.
ScroCellc3-9ition can be
50 - 55 PVTP User Guide

If the values have been already calculated the display will show the last set of values
calculated.

The display has several control buttons along the top which have the following functions:

Calculate

This option recalculates the table using the latest inputs provided

Plot

This generates a full sized plot of the calculated results.

Analysis

This option produces a secondary screen giving the compositions calculated at each
measurement point along with details of the material balance found at the end of the time
step. The analysis screen also provides access to the EXTRACT function which allows the
user to export a particular line of the calculation to a PVT file. Alternatively, the intermediate
composition can be copied to a stream within this project file.

Cancel

This option closes down the display and passes the control back to the input screen

Main

This option closes down both the calculation and the input displays and passes the control
back to the main PVT screen.

Clipboard

This option allows the user to send the table results with/or without headings to the clipboard.

Petroleum Experts
Chapter 8 - Calculation EoS 51 -55

8.12.6 Slim-tube analysis dialog


This Dialog is called by clicking on the Analysis button within the slim-tube calculation display.
The compositions shown are those of the fluids being produced from the designated
production cell.

The numbers within the table give an indication of the material balance of each component
after the timestep.

The composition within each cell can be viewed using the Slim-tube Cell Detail Dialog.

Figure 8.27:
Slim-tube
Analysis Dialog

The pressure run being viewed can be changed using the combo box provided.
The time step value displayed can be changed by clicking on the down or up arrow on the
units or tens control.
Units will add or subtract 1 to the time step. Tens will add or subtract 10 to the time step.
The command buttons perform the following functions:

Exit
Close down the display and return to the slim-tube calculation display.

Extract
This option allows the user to save the composition( total,vapour or liquid)being stored as a
separate PVT file for later retrieval.
Alternatively, a stream can be created within the current PVT Project File.

PVTP User Guide


52 - 55 PVTP User Guide

8.12.7 Slim-tube cell detail dialog


This gives more detail on the contents of each cell during a time step. The display is called by
clicking on the CELL DETAILS button within the slim-tube calculation dialog.

Figure 8.28:
Slim-tube Cell
Detail Dialog

For each cell the table gives details of the phase,cell pressure,IFT,oil saturation and oil and
gas viscosities. In addition the composition within the cell is given.
If the calculation goes into adaptive mode, the result number will not be equivalent to the time
step.
The cell compositions can be extracted to another stream for further analysis by:
1. Entering the required cell number in the edit box, or clicking on the arrow buttons until the
required value is reached.
2. Clicking on the Cell Composition to Stream Button.

Petroleum Experts
Chapter 8 - Calculation EoS 53 -55

8.13 Quick Calculation Control Button


A subset of the Equation of Sate Calculations is available by clicking on the Quick Calc.
control button within the Recombination, Edit Composition and View Properties displays (see
Chapter 7)

Figure 8.309:
Calculate
Button
Options

This feature provides the user with access to a subset of the calculation menu as a means of
checking the consistency of the entered composition information.

The small display (figure 8.30) provides options to calculate :

◊ Phase Envelope
◊ Critical Point (Temperature and Pressure)
◊ Saturation Pressure (at the reference temperature)
◊ Flash to Standard Conditions
◊ Flash Through Separator Stages
◊ Calculate Maximum Water in the Hydrocarbon Phase

The Phase Envelope and Critical Point calculations are identical to those described in sections
8.1 and 8.2 .The Saturation Pressure option does not use the same method as the ranged
equivalent (section 8.3) . The calculation is done at reference conditions only giving an output
of the type shown in figure 8.31

PVTP User Guide


Chapter 8 - Calculation EoS 55 -55

8.13.1 Small Separator Calculation Dialog


This display is called from the Quick Calculation Dialog.

Figure
8.33:
Small
Separator
Calculation
Dialog

The objective is to provide a separator calculation which quickly provides the basic data of Oil
density and Gravity, Gas Gravity and GOR.

If separator conditions have already been defined the values will appear. If not enter the
temperatures and pressures in the Edit Boxes provided in the Values section of the display.
When ready click on Calc

Clear removes all entries and results.

PVTP User Guide


9 Calculation of Solids
This section describes the calculations available for solids. The alternatives are:

Waxes

Wax Amount - Enter a range of temperatures and pressures and perform a multiphase flash to
find the amount in the solid phase.
Wax Appearance Temperature – Select a pressure and find the temperature at which wax just
starts to form.

Hydrates

Hydrate Formation Pressure - Enter a range of temperatures and find the minimum pressure at
which hydrates will form.
Minimum Inhibition Concentration – Select a temperature and pressure and find the
concentration of inhibitor at which hydrate just starts to form under these conditions.

Details of Wax and Hydrate modelling and the model alternatives and references are given in
Chapter 4.

9.1 Wax Amount Calculation


This calculation can be initiated by selecting the Wax Amount (Multiphase Flash) from the Calc
Solids menu:

Two modes are available for data input VIZ. Automatic and User Selected. The mode can be
changed using the radio buttons at the top right of the display.
This dialogue is used for Automatic Input for the Wax Amount calculation (figure 9.1).

Data entry boxes are provided for entering the limits of the temperature and pressure ranges to
be covered and the number of points to be calculated for each variable. The points will be spread
evenly throughout the temperature and pressure ranges selected.

Note that the wax formation effect is very much driven by temperature and very little pressure
dependence is shown
2 - 14 PVTP User Guide

Figure
9.1:
Wax
Amount
Automatic

In the User Selected version the ranged input is replaced by a grid where any mixture of
pressures and temperatures can be entered

Figure 9.2:
Wax Amount
User
Selected

Petroleum Experts
Chapter 9 - Calculation of Solids 3 - 14

Stream Selection

The list box allows the user to select any combination of streams and archives to calculate.See
PVT Project File Structure for more information on streams.

Model Selection

A combo box allows the user to select between the various wax models.Clicking on the Reset
Props button resets the important component properties back to the default values outlined by the
model's author. WARNING using this button will reset any solids regression that has been done.
See Wax Modelling ,Chapter 4, for more details on the model types available.
See Lab Data/Matching ,Chapter 7, for more details on what can be matched for solids.

Pressure Range
The lower pressure limit of the calculation has been set at 0 psig (14.7 psia). If a value below this
limit is entered The following message will appear

At least one pressure and temperature should be defined before proceeding to the Calculation
Dialogue.

To bring up the calculation dialogue click on the Calc control button. The calculation dialog which
appears is similar in structure and features to that described for the two-phase flash CCE
calculation (Section 8.4.1)

Cancel will clear all entries and return the user to the Summary Screen

Clear removes any entered values

PVTP User Guide


4 - 14 PVTP User Guide

9.1.1 The Analysis Display


This display is called by clicking on the analysis button within the calculation table display (Section
8.4.1). The screen shows the compositions for each phase at each combination of temperature
and pressure .

Figure 9.3:
Wax Amount
Analysis
Display.

The temperature value displayed can be changed by clicking on the down or up arrow within the
temperature area ( top left).
The pressure value displayed can be changed by clicking on the down or up arrow within the
pressure area ( top right).

The command buttons perform the following functions:

Exit
Close down the display and return to the calculation screen.

Extract
This option allows the user to save the composition( total,vapour or liquid)being stored as a
separate PVT file for later retrieval.
Alternatively, a stream or archive can be created within the current PVT Project File.

Petroleum Experts
Chapter 9 - Calculation of Solids 5 - 14

9.2 Wax Appearance Temperature


This calculation can be initiated by selecting the Wax Appearance Temperature from the Calc
Solids menu:

Two modes are available for data input VIZ. Automatic and User Selected. The mode can be
changed using the radio buttons at the top right of the display.
This dialogue is used for Automatic Input for the Wax Amount calculation.

Figure 9.4:
WAT
Automatic

In addition, data entry boxes are provided for entering the limits of the temperature and pressure
ranges to be covered and the number of points to be calculated for each variable. The points will
be spread evenly throughout the pressure ranges selected.

Note that the wax formation effect is very much driven by temperature and very little pressure
dependence is shown

In the User Selected version the ranged input is replaced by a grid where any mixture of
pressures can be entered

PVTP User Guide


6 - 14 PVTP User Guide

Figure 9.5:
WAT User
Selected

Stream Selection

The list box allows the user to select any combination of streams and archives to calculate.See
PVT Project File Structure for more information on streams.

Model Selection

A listbox allows the user to select any or all of the available wax models.As the calculation
progresses the wax dependent properties of the component(s) are reset to those values
suggested in the model. If however regression is used to set a property eg. the Melting point of the
heaviest component,this will not be reset during the WAT calculation.
See Wax Modelling ,Chapter 4, for more details on the model types available.
See Lab Data/Matching ,Chapter 7, for more details on what can be matched for solids.

Petroleum Experts
Chapter 9 - Calculation of Solids 7 - 14

Pressure Range
The lower pressure limit of the calculation has been set at 0 psig (14.7 psia). If a value below this
limit is entered The following message will appear

At least one pressure should be defined before proceeding to the Calculation Dialogue.

To bring up the calculation dialogue click on the Calc control button.

Cancel will clear all entries and return the user to the Summary Screen

Clear removes any entered values

Calculation Limits

Some of the limits of the calculation can be adjusted in this section of the dialog. The minimum
and maximum temperatures dictate the range in which wax will be looked for. The maximum
number of steps sets how many iterrations the program allows before it gives up looking for a
solution.The minimum test solid percent is the value used to determine if wax is just forming i.e.
the WAT. The program looks for a value of percent solids between zero and the Min Test Solid %
to say that it is at the Wax Appearance Temperature.

PVTP User Guide


8 - 14 PVTP User Guide

9.3 Hydrate Formation Pressure


This calculation can be initiated by selecting the Hydrate Formation Pressure Option from the Calc
Solids menu:

Hyrates are important to the petroleum industry because they form at tempertures above that of
normal ice.

Plugging due to hydrate formation can potentially occur at any location from the resevoir to
surface where the pressure is greater than the minimum value for the fluid temperature. For a
range of Temperatures the program will calculate the minimum pressure at which hydrates will
form.

More details on the formation of these troublesome clathrates is given in Background to Hydrates
,Chapter 4.

This dialogue is used for Automatic Input for the Hydrate Formation Pressure calculation.

Figure 9.6:
Hydrate
Formation
Pressure
Automatic

All boxes should have an entry before proceeding to the Calculation Dialogue.

Stream Selection

Petroleum Experts
Chapter 9 - Calculation of Solids 9 - 14

The list box allows the user to select any combination of streams and archives to calculate.See
PVT Project File Structure for more information on streams.

This display contains radio buttons which allow the user to swap between User Selected and
Automatic modes.
In addition, data entry boxes are provided for entering the limits of the temperature range to be
covered and the number of points to be calculated.
The points will be spread evenly throughout the temperature and pressure ranges selected.

Model Options

This area allows the user to select from different models which vary in the main in the estimation
of the Langmuir Adsorption Constant. See Hydrate Modelling for more details.
In addition a checkbox allows the user to select whether Hydrate II should be calculated. Since
petroleum fluids normally contain significant amounts of C1 and C2 , Hydrate I will normally form
first. See Background to Hydrates, Chapter 4, for information.

Inhibitor Data
Figure 9.7:
Inhibitor
Entry

This area allows the user to calculate the effect of adding various inhibitors to the fluid.
A combo box allows the user to select from a list of common inhibitors.
Up to 5 inhibitor concentrations can be entered using the edit box provided.All values should be in
weight percent.
The Clear Percents button removes all entries while the check box allows the user to switch on
and off the calculation without loosing the entries.
More information on inhibitors is given in Hydrate Inhibition. See also help on the Minimum
Inhibitor Concentration calculation

Restrictions
1) At present, the calculation has been limited to that where the hydrate is in equilibrium with liquid
water i.e. to temperatures above 0.1 degrees C and 32.2 degrees F.
If too low a pressure is entered the following message is displayed

PVTP User Guide


10 - 14 PVTP User Guide

2) No hydrate calculation can be carried out with a Grouped composition. The modelling of
hydrates is dependent on the identification of the type and amount of the individual small gas
molecules which become entrapped in the ice. Only ungrouped compositions allow these species
to be identified. See Background to Hydrates. for more details.
Attempting to enter a hydrate calculation with a grouped composition will produce the following
message:

Control Buttons

To bring up the calculation dialogue click on the Calc control button.

Cancel will clear all entries and return the user to the Summary Screen

Clear removes any entered values

In the User Selected version the ranged input is replaced by a grid where any mixture of
temperatures can be entered:

Petroleum Experts
Chapter 9 - Calculation of Solids 11 - 14

Figure 9.8:
Hydrate
Formation
Pressure
User Selected

PVTP User Guide


12 - 14 PVTP User Guide

9.3.1 Calculations Dialog


The Calculation dialog is very similar to that described for CCE in section 8.4. The difference
occurs when any inhibitor concentrations are requested.
A typical display is shown in figure 9.9

Figure 9.9:
Hydrate
Formation
Pressure
Results

The selected inhibitor concentrations are coloured red and the new pressure values are shown
immediately afterwards. When complete the results are available for export to Prosper by clicking
on the Export button (see Section 3.1.5)

9.4 Hydrate Minimum Inhibitor Concentration


This calculation can be initiated by selecting the Hydrate Min. Inhibitor Concentration from the
Calc Solids menu:

Hyrates are important to the petroleum industry because they form at tempertures above that of
normal ice.
Plugging due to hydrate formation can potentially occur at any location from the resevoir to
surface where the pressure is greater than the minimum value for the fluid temperature.

Inhibitors raise the pressure at which a hydrate forms for a particular temperature.
This calculation estimates the amount of a selected inhibitor required to provide no hydrate
formation at an entered temperature and pressure.

Petroleum Experts
Chapter 9 - Calculation of Solids 13 - 14

More details on the formation of these troublesome clathrates is given in Background to Hydrates
,Chapter 4.

Figure 9.10:
Hydrate
Formation
Pressure
Results

A pressure(P) and temperature(T) must be entered in the edit boxes provided.


The program calculates what inhibitor concentration which gives the start of hydrate formation at
the entered T and P.

Procedure
1) Enter a T and P.
2) Select an inhibitor and a model.
3) Press Calc. and the answer will appear as a weight and mole percentage in the results section
at the bottom of the display.
See also Hydrate Modelling and Hydrate Inhibition (Chapter 4).

Stream Selection

The combo box allows the user to select the active stream and archives to calculate.See PVT
Project File Structure for more information on streams.

In addition, data entry boxes are provided for entering the limits of the temperature range to be
covered and the number of points to be calculated.
The points will be spread evenly throughout the temperature and pressure ranges selected.

Model Options

This combo box allows the user to select from different models which vary in the main in the
estimation of the Langmuir Adsorption Constant.
See Hydrate Modelling for more details.

Restrictions

PVTP User Guide


14 - 14 PVTP User Guide
1) At present, the calculation has been limited to that where the hydrate is in equilibrium with liquid
water i.e. to temperatures above 0.1 degrees C and 32.2 degrees F.
If too low a temperature is entered the following message is displayed

2) No hydrate calculation can be carried out with a Grouped composition. The modelling of
hydrates is dependent on the identification of the type and amount of the individual small gas
molecules which become entrapped in the ice. Only ungrouped compositions allow these species
to be identified. See Background to Hydrates (Chapter 4). for more details.
Attempting to enter a hydrate calculation with a grouped composition will produce the following
message:

Petroleum Experts
10 Reporting
This section describes the reporting options and procedures used in the PVT package.

10.1 Setting Up the Reporting System

Figure 10.1
Report Directories Setup

Under the Report option on the main menu there is a Setup Report Directories option. On
selecting this you are presented with a dialogue which requires three pieces of information.
The first of these is where the default or system report templates are stored. This is the
path to an archive file which contains the system report templates in a compressed form.
This file will normally be in the same directory as the PVTP executable. The next field in the
dialogue requires the path to the default directory where reports printed to file are to be
placed and the final field is the path to a directory where user defined report templates are
to be stored.

10.2 Reports
The reporting interface gives you complete control over how your reports are formatted and
what information is utilised to make up the report. This is facilitated by the use of report
templates which can be edited to suit your own requirements. You can choose to use the
default report templates provided with the system or can choose to create your own slightly
different versions of these reports. The selected templates can then be used to generate
the actual reports which can be sent to a variety of places (printer, file or screen). The
report templates are displayed in a hierarchy and all templates which have been selected
(by double-clicking on it) show an X in the check-box beside the template name. The colour
of this X denotes whether it is the system (black) template or a user defined (red) template
which is being used.

There are two modes for the editing of report templates: System and User. System mode
does not allow you to change any template whereas User mode allows you to create new
user defined templates from scratch or based on an already existing system report
template and also allows you to edit an existing user defined report template. Selecting
User mode also makes the User Reports section of the template hierarchy visible. The
User Reports hierarchy contains all report templates which have been tagged as being a
derivation of a system report template as well as any free standing user defined templates.
2- 12 PVTP User Guide

Figure 10.2
Main Window

The reporting main window consists of four main parts: The command segment at the top
of the dialogue containing the buttons, the report selection hierarchy, the output device
selection group and the template type selection group. The output device group is only
used when printing from selected report templates.

The available commands are:


y OK Print the selected reports to the selected output device and terminate the
dialogue
y Cance Terminate the dialogue
l
y Help Bring up the on-line help window
y Setup Select a Printer
y User Switches between System and User edit mode, this shows or hides the User
Reports section of the report hierarchy and enables or disables the Create and
Edit buttons. If in User mode this button shows the text ‘System’ and vice-versa.
y View View a previously saved native format file on-screen. This brings up a file
selection box for choosing the appropriate report and passes this file name to the
Report Executor
y Print Print the selected reports to the selected output device
y Create Create a new user report
y Edit Edit an existing user report template or create a new template from a system
template
y Group Allows the grouping of report templates references and the storing of the group
information in a file for later recall. This allows batch printing of reports for any
analysis

The available output types are:


y Printer Sent the report to the current printer
y Screen The reports are displayed on-screen in a report executor window
y Native File The reports are saved as .FR files in the output reports directory
y RTF File The reports are saved as RTF files in the output reports directory
y Text File The reports are saved as tab delimited text files for easy spreadsheet import

Petroleum Experts
Chapter 10 - Reporting 3 - 12

The native (.FR) file format can only be read by the reporting system whereas the RTF
format can be read by many Windows word processing applications. When printing to file
you will be presented with the following dialogue:

Figure 10.3
File naming window

The default directory will be set to the default output directory but this can be altered using
the Select Directory button. This can then be applied to all output files by using Change All.
If it is necessary to change the output directory of one of the files, this can be achieved by
using the Browse button associated with each report. The filenames can themselves be
edited in the text box which contains them.

For any given report in the system hierarchy you can choose to view or print a report using
either the system report template provided or a user defined report template based on that
system report template (or at least that position in the hierarchy) or you can choose a
report grouping which can be made up from a combination of user and system reports. You
choose between these options using the report template type selection group at the bottom
right of the main window. If you select the user report template option for any hierarchy
position and there are multiple user defined report templates for that position then a
dialogue appears which allows you to select the particular template that you want.

Figure 10.4
User-Defined Report
Template Selection
Dialogue

PVTP User Guide


4- 12 PVTP User Guide
Double clicking on any of the report templates (or selecting and pressing Ok) will cause it
to become the user defined report template for that hierarchy position for the current
reports session. The default choice is the topmost user defined report template. You can
stop a user defined report template from being associated with that hierarchy position by
selecting it and then pressing Delete. This does not actually delete the report template (it
can still be seen within the User Reports section of the hierarchy).

If you are selecting a report grouping then a similar dialogue appears and you can select
the appropriate group file. After you have selected a file all the reports referenced in the
group will appear ‘checked’ in the hierarchy and you can then press print for all of these
reports to be sent to the selected output device.

10.3 Template Editor Commands


The template editor works on the principle of moveable fields or groups of fields where the
inputs to these fields can be any value from PVTP. You can define headers and footers
which can be shown on each page, have fields which have a value which is the result of a
calculation or even have groups of fields which are displayed only if a condition is met.

Figure 10.5
Template Editor
Window

Data fields from PVTP are added using the F2 key, selecting the data items required and
then pressing Ok when finished. The selected data items will then appear as fields, one by
one, as the left mouse button is clicked. You can roughly position the fields in this way. You
are not limited to one pass at adding data items to the report template. More items can be
added at any time in the same manner.

Once a field has been added to the report template you can edit some of the properties of
the text which will be shown in the field and assign a group number to the field by double
clicking the left mouse button on it and the font properties can be changed by double
clicking the right mouse button on it. Other properties, such as whether the field has a box
around it, etc., can be changed through the menu options, a full description of which are
given below.

Petroleum Experts
Chapter 10 - Reporting 5 - 12

Figure 10.6
Selection of data items

The template editor commands can be selected by using the menu, toolbar or keyboard
shortcuts. You can get help on any menu item by highlighting the menu item and then
pressing the F1 key or by consulting the index of help topics under the help menu.

File Menu
This menu contains commands for saving the current report template file and specifying
the report template parameters..

Save:
Use this selection to save the current report template to the current file name. If a file is not
yet specified, the form editor will prompt you for a file name. If you do not provide a file
extension, the editor automatically appends a .FP extension to the report file. If a file with
the same name already exists on the disk, the form editor will save the previous file with a
backup extension (.RE).

Save As:
This selection is similar to Save File. In addition, it allows you to save the report template to
a new file name.

Report Parameters:
This option allows you to set certain report parameters. Firstly, you can specify the name of
the report. You can set the margin for the printed page. You can instruct the report
executor to print trial records for adjusting forms such as labels and invoices. You can also
specify the default date format for input. The date format that you specify here will be
enforced for parameter input during the report execution session, and any date constant
used in expressions.

Report Filter:
This option allows you to enter a filter criteria for the report. Each data record will be tested
with the expression that you provide here. A record is selected only if this expression
evaluates to a TRUE value. For example, if the expression was sales->amount>100, then
only the records with the sales amount more than 100 will be selected.

PVTP User Guide


6- 12 PVTP User Guide
Printer Setup:
This option allows you to select a printer from a list of installed printers and invoke a printer
specific dialogue box for the selected printer. You select the parameters from a set of
printer specific options. These options include page size, page orientation, resolution, etc.
The printer options that you select here determine the width and height of the report.

Exit:
Use this function to exit from the form editor session. If the current file is modified, you will
have an option to save the modifications.

Edit Menu:
This menu contains commands to edit the report objects. One or more report objects must
be selected before using this option:

Cut:
Use this option to copy the current item or all the items in the current selection to the
clipboard. The copied items are deleted from the form.

Copy:
Use this option to copy the current item or all the items in the current selection to the
clipboard.

Paste:
Use this option to paste the items from the clipboard to the current form.

Position Text:
Use this option to position the text within the item boundaries. The text can be justified on
the left, right, top, or bottom edges, or it can be centred horizontally or vertically. This
option is valid for the label and field type items only.

Item Outlines:
Use this option to specify the item boundaries (left, right, top, bottom) to draw for one or
more selected items. You can also specify the colour and width of the boundary lines.

Item Background:
Use this option to set the background colour or pattern for one or more selected items.

Centre Horizontally:
This option is used to centre horizontally one or more selected items. When more than one
item are selected, the form editor first centres the selection rectangle and then moves the
selected items such that the position of the selected items relative to the selection
rectangle does not change.

Delete Item:
Use this option to delete one or more currently selected items. If the current section is
being deleted, the program asks for your confirmation before the deletion. All items within
the section are also deleted.

Fonts:
Use this function to change the font and colour for the text for one or more selected
objects. This option is valid for the field and label type objects only.
When you select this option, the form editor shows the font and colour selection dialogue
box. The current font and colours are preselected in the dialogue box. Use this dialogue
box to specify your selections.

Petroleum Experts
Chapter 10 - Reporting 7 - 12

Snap to Grid:
This option allows you to turn on or off the invisible grid on the form. When the grid is
turned on and an item is moved, it automatically aligns to the closest grid location. This
option also allows you to set the grid width.

Report Size:
The following options shrink or elongate the report in the horizontal or vertical direction by
the amount equal to the width or the height of the selection rectangle.

Expand Horizontally
Use this option to create horizontal space by moving items horizontally. For example,
consider three items, A, B, and C placed horizontally. If you need to insert a new item
between the items A and B, you can use this function to create the desired space between
these two items and place the new item in the newly created space. To move the items B
and C toward right, create a selection rectangle after the item A and select this option. The
width of the selection rectangle specifies the movement of the items B and C toward right
(noted that the selection rectangle does not need to include all items to be moved). All
items toward the right of the selection rectangle and with the vertical placement between
the vertical space spanned by the selection rectangle are moved.

Expand Vertically
Use this option to create additional vertical space by moving the items downward. For
example, consider three items, A, B, and C placed vertically. If you need to insert a new
item between items A and B, you can use this function to create the desired space
between these two items and place the new item in the newly created space. To move
items B and C downward, create a selection rectangle below the item A and select this
option. The height of the selection rectangle specifies the downward movement of items B
and C (noted that the selection rectangle does not need to include all items to be moved).
All items below the selection rectangle are moved.
This option also expands (vertically) the current section by the height of the selection
rectangle.

Compress Horizontally
Use this option to delete extra horizontal space by moving items horizontally. For example,
consider three items, A, B, and C placed horizontally. You can use this function to bring
items B and C closer to the item A. To move items B and C toward left, create a selection
rectangle after the item A and select this option. The width of the selection rectangle
specifies the movement of items B and C toward left (noted that the selection rectangle
does not need to include all items to be moved). All items toward the right of the selection
rectangle and with the vertical placement between the vertical space spanned by the
selection rectangle are moved.

Compress Vertically
Use this option to delete vertical space by moving the items upward. For example, consider
three items, A, B, and C placed vertically. You can use this function to bring items B and C
closer to the item A. To move items B and C upward, create a selection rectangle below
the item A and select this option. The height of the selection rectangle specifies the upward
movement of items B and C (noted that the selection rectangle does not need to include all
items to be moved). All items below the selection rectangle are moved.
This option also shrinks (vertically) the current section by the height of the selection
rectangle.

Field Menu:
This menu contains options to insert, modify, delete and maintain fields.

PVTP User Guide


8- 12 PVTP User Guide
Insert New Fields:

Data Field:
This option is used to paste a new data field to the report template. This option will display
a list of data files and data fields to choose from. When you select a field, the form editor
displays a positioning rectangle. Use the mouse to position the field rectangle and click any
mouse button. The current field attributes can be changed using the Edit Current Field
Option.

Calculation Field:
This option is used to paste a calculation field to the report template. This option will
prompt you for the name of the field, and the field expression. The field expression can
contain any number of valid operators, functions, system fields, dialogue fields, and data
fields. The field type is determined by the result of the execution of the field.

After you enter the field expression, the form editor displays a positioning rectangle. Use
the mouse to position the field rectangle and click any mouse button. The current field
attributes can be changed using the Edit Current Field Option.

System Field:
This option is used to paste a system field to the report template. This option will display a
list of system fields (date, time, page, etc.) to choose from. When you select a field, the
form editor displays a positioning rectangle. Use the mouse to position the field rectangle
and click any mouse button. The current field attributes can be changed using the Edit
Current Field Option.

Dialogue Field:
This option is used to paste a dialogue field to the report template. A dialogue field must
have been created using the Edit Dialogue Field Table before using this option. The
dialogue fields are used to prompt the user for data during the report execution session.

The option will display a list of dialogue fields to choose from. When you select a field, the
form editor displays a positioning rectangle. Use the mouse to position the field rectangle
and click any mouse button. The current field attributes can be changed using the Edit
Current Field Option.

Edit Current Field:


This option is used to edit the field attributes for the current field. This option is available
only when a 'field' type object is selected.

Edit Field Expression:


This option is used to edit the field expression for the current calculation field. This option is
available only when a 'calculation field' type object is selected (see Insert Calculation
Field). The option shows the existing calculation expression and allows you to make any
modifications.

Edit Dialogue Field Table:

Create:
This option is used to create a new dialogue field. Once a dialogue field is created, it can
be inserted in the report by using the Insert Dialogue Field selection.
A dialogue field is used to prompt the user for data during report execution. For example,
you may like your user to enter the begin and end dates for the report. A dialogue field can
be used in the field expressions and can be inserted in the report template for information
Chapter 10 - Reporting 9 - 12

Modify:
This option is used to modify the user prompt, width and prompt order of a dialogue field.
The prompt order determines the order at which the dialogue fields are presented to the
user for data input.

Delete:
This option is used to delete a dialogue field from the dialogue field table. You can not
delete a dialogue field which is being currently used in the report.

Section Menu:
This menu contains commands to insert, edit and delete report sections.

New:
This option is used to create a new section. A section is identified by the section banner
and the separation line at the bottom of a section. There are three basic types of sections.
A header section displays the data that remain constant or changes only when a sort field
changes. The detail section displays the transaction record fields. A footer section is used
to display totals and summary information. ReportEase allows up to 9 header and footer
sections. A higher numbered header section is allowed only when all the lower numbered
headers are already selected. Similarly, a footer section is allowed only when the
corresponding header section is already selected.

Edit Current:
This option is used to modify the properties of the currently selected section. For the 'detail'
section, you can specify the number of records to print across the page. This option can be
used to print multiple address labels across the page.

Sort Field:
This option is used to specify a sort field for a header section. A sort field is used to sort the
data records.

Break Field:
This option is used to specify a break field for a header section. The break field is used to
determine a sort break. Typically, the break field would be the same as the sort field.
However you can specify the break field differently from the sort field. You can also specify
a calculation expression for a break field.

Filter:
This option is used to enter a filter criteria to print a section. Normally, every section
included in the report template is printed in its appropriate sequence. However, if you wish
to print a section depending upon a condition, you can enter this condition expression
using this option. The expression must evaluate to a logical value (TRUE or FALSE).
During the report execution, the section will be printed only if the expression evaluates to a
TRUE value.

Line:
This menu contains commands to create and edit a line object:

Create a Line:
Use this option to draw a line. When you select this option, the form editor displays a
positioning rectangle. Use the mouse to position the rectangle and click any mouse key.
The line will be drawn within the position rectangle. The line size can be changed using the
sizing tabs.

Edit Current Line:


Use this option to edit the angle, colour, and thickness of a 'line' type object.

PVTP User Guide


10- 12 PVTP User Guide

Label:
This menu contains commands to create and edit a label object:

Create a Label:
Use this option to create a new label. When you select this option, the form editor displays
a positioning rectangle. Use the mouse to position the rectangle and click any mouse key.
The 'label' object will be created within the positioning rectangle. By default, the form editor
inserts the text 'label' in the label item. The label text can be edited in the editing window.

Edit Current Label:


A label text can be edited by simply selecting the desired label item and clicking on the edit
window.
As you insert or delete the text, the length of the label text changes. Normally, the form
editor will automatically adjust the item box boundaries to completely enclose the new text.
However, this automatic size adjustment ceases if you manually resized the item boundary
by pulling on the sizing tab. This feature can be used to enclose the text in an item box
larger than the default size.

Picture:
This menu contains picture import functions:

Import Picture from Clipboard


Use this command to copy a picture bitmap from the clipboard.
When you select this option, the form editor creates a positioning rectangle equal to the
dimensions of the picture. Use the mouse to position the picture rectangle and click any
mouse key. The picture will be placed within the position rectangle. The picture size can be
changed using the sizing tabs.

Import Picture from Disk File


Use this command to read in a picture bitmap from a disk file.
When you select this option, the form editor creates a positioning rectangle equal to the
dimensions of the picture. Use the mouse to position the picture rectangle and click any
mouse key. The picture will be placed within the position rectangle. The picture size can be
changed using the sizing tabs.

Arrange:
This menu contains commands to align, size and space a set of selected objects:

Alignment At:
Horizontal Top Edge:
Use this option to horizontally align the top edge of the selected items to the top edge of
the leftmost item in the selection.

Horizontal Bottom Edge:


Use this option to horizontally align the bottom edge of the selected items to the bottom
edge of the leftmost item in the selection.

Horizontal Centre Line:


Use this option to align the horizontal centre line (imaginary) of the selected items to the
centre line of the leftmost item in the selection.

Vertical Left Edge:


Use this option to vertically align the left edge of the selected items to the left edge of
the topmost item in the selection.

Vertical Right Edge:

Petroleum Experts
Chapter 10 - Reporting 11 - 12

Use this option to vertically align the right edge of the selected items to the right edge of
the topmost item in the selection.

Vertical Centre Line:


Use this option to align the vertical centre line (imaginary) of the selected items to the
centre line of the topmost item in the selection.

Even Spacing:
Horizontally:
Use this option to place the selected items horizontally at an equal distance from each
other. The inter-item distance is equal to the distance between the first two leftmost
items.

Vertically:
Use this option to place the selected items vertically at an equal distance from each
other. The inter-item distance is equal to the distance between the first two topmost
items.

Even Sizing:
Width:
Use this option to change the width of the selected items to the width of the topmost
item.

Height:
Use this option to change the height of the selected items to the width of the leftmost
item.

Undo Previous Arrangement Command


Use this function to undo the previous arrangement command.

Report Executor Commands

The report executor allows you to view reports which have been generated and saved to a
native format file. It is invoked by using the view option from the reporting main window and
selecting a file from the file selection box. The file selection box will point to the default data
directory and will have the filter extension set to the correct file type (.FR).

Figure 10.7
File Selector

PVTP User Guide


12- 12 PVTP User Guide

Figure 10.8
Report
Executor

The options available on this window are:


Jump: Go to a particular page in the document.
Print: Send the document to the defined printer.
Preview: Look at the page layout of the document.
Save: Save the document to a file (native and RTF).
Exit: Quit the current window.

Petroleum Experts
11 Plotting
This section describes the reporting options and procedures used in the PVT plotting
functions.

11.1 The Plot Display


Plotting is available in many forms and is initiated by the plot command button option on
many input and calculation screens. The plot window can also be removed by using the
File|Close menu option, typing Alt +F4, or pressing on the exit button.

The plot window contains may options which can be selected via a menu or toolbar. These
options are details in Plotting – Menu and Toolbar section (11.1.3). A plot can present data
form multiple stream calculations, allowing the user to visualise the effect of different
compositions,matching scenarios etc.The plot below shows the variation in liquid dropout
of samples taken at different depths.

Figure 11.1:
Plot
Example
Liquid
Dropout

11.1.1 Manipulating Streams


Clicking on the small square to the side of the stream name allows the user to manipulate
the plotting of the stream Clicking on this square brings up a small menu as shown below:

Clicking on Hide Stream will change all the curves belonging to this stream to the
background colour, hiding it.

The Show Stream option returns the stream curves to view.Individual curves can also be
hidden using the curve menu described below.
2 - 10 PVTP User Guide

Clicking on Change Colour brings up the colour selection menu.

Figure 11.1.1:
Plot Example
Liquid Dropout

11.1.2 Manipulating Curves


On each plot is a set of small squares which indicate values from which the plot was
derived. Passing over a square with the mouse pointer brings up a small window which
gives the stream name and the point value.

Figure 11.1.2:
Plot Example
Liquid Dropout

Clicking on Hide Stream will change the individual curve to the background colour, hiding it.

The Show Stream option returns the stream curves to view.All streaml curves can also be
hidden using the stream menu described above.

Petroleum Experts
Chapter 11 - Plotting 3 - 10

Clicking on Change Colour brings up the colour selection menu.:

Clicking on Point Settings allows the user to adjust the size and number of the points
shown for each curve in a stream.

Selecting this option brings up the small dialog shown below:

The Plot Point Ratio indicates what fraction of the points will be displayed. The example
above would show only one point in ten.

To show all points enter a value of one.

The Point size radio buttons allows the user to adjust the size of the Point Square.
All point drawing can be switched off and on. See Labels and Options Dialog (Section
11.2.2)

PLOT TITLE
This may be adjusted if required . See Labels and Options Dialog (Section 11.2.2)

MAIN PLOT WINDOW


The main Plot window shows the curves drawn in engineering units.

LEGEND BOXES
Various legend boxes give additional information
Note the legend boxes and the plot labels can be switched off within the Labels.. dialog.

MOUSE POSITION INDICATOR


A mouse position indicator (bottom right of main plot) which shows the current position in
the units of the plot. This function can be used to find the value of an intermediate point on
any drawn curve.

Figure 11.1 and 11.2 show 2 typical plots.

ZOOMING
Any part of the plot can be enlarged by adopting the following procedure

1. Place mouse pointer at top left of the area to be enlarged.


2. Press the left mouse button down.
3. With the mouse button kept down , move the mouse pointer to the bottom right of
the required area. During this operation, a rectangle will be drawn to show the
area selected.
4. Release the mouse button . The enlarged plot will be drawn.

To return the plot to its original size , double-click the mouse anywhere within the main plot
area.

PVTP User Guide


4 - 10 PVTP User Guide

11.1.3 The Plot Menu and Toolbar


The plot window is composed of :

MENU
with SUBMENUS

1) File

Printer Setup standard Windows Printer Setup display


Print
Exit

2) View

This menu allows the user to adjust what is seen within the display. Clicking on the menu
item will toggle off and on the particular option. The options are stored on a file by file
basis.

3) Display

Scales Set the axes scales


Labels Set the Axes Label and Plot Title Text
Variables Select the variables to be plotted
Colours Select the colours of the various Plot Elements and sets pen size
Test Points ..Mearured points to be visualised but not necessarily matched to.
Units Change the Units used within the plot
Redraw the plot at its original size.

Petroleum Experts
Chapter 11 - Plotting 5 - 10

4) Output
Report Bring up the main Report Display

TOOLBAR

A toolbar with buttons for


font
colour
Units
Scales
Labels
Help
Exit

and with many plots combo boxes which give access to plot variables.

Figure 11.2:
Plot Example
Phase
Envelope

PVTP User Guide


6 - 10 PVTP User Guide

11.2 Plot Menu Options

11.2.1 File
The file submenu contains:

Printer Set-up
Clicking on this option invokes the windows standard printer set-up screen as described in
Chapter 3.

Print
This option brings up the dialog shown in figure 11.3.

Figure 11.3:
Print Plot

The margin area allows the user to enter top, bottom, left, and right margins.
The units of margin size can be selected using the Inches and Millimeters radio buttons.

The listbox on the right of the display shows the printers available , with the current choice
of destination highlighted.
To select another printer , click once on its name.

A small panel with radio buttons gives the user the opportunity to select between the three
main colour schemes i.e. Monochrome, Greyscale or Colour.
Line Widths : It may be useful when printing a plot which may subsequently be faxed to
increase the line width This can be done via the Colours option within the main display

The control buttons on the display have the following functions:

Print
Close the display and print report with current settings via the standard print control dialog
shown below
Chapter 11 - Plotting 7 - 10

Cancel
Close the display without printing the report

11.2.2 Display
The Display submenu contains:

Scales
To change the scaling of the plot click on this option, enter the values required in the
Change Scales display (figure 11.4) and press OK. The plot will be redrawn automatically.

Figure 11.4:
Change Scales

Labels
To change the labels and title used within the plot click on this option, enter the labels
required in the Change Labels display (figure 11.5) and press OK. The plot will be redrawn
automatically.

PVTP User Guide


8 - 10 PVTP User Guide

Figure 11.5:
Change Labels

Clicking off the Show curve labels on plot will remove the small curve labels.

Clicking off the Show legend boxes on plot will remove the legend boxes, increasing the
size of the main plot.

Clicking off the Show Reference Data Lines will remove the indication of reference depth,
reference pressure and reservoir temperature.

Clicking off the Show Individual Plot Points will remove the small squares on the curves
which represent actual values (see Main Plot Dialog section 11.1 for more details).

Colours
This option has the same result as that described for clicking on the Colours.button within
the toolbar (see section 11.3)

Units
This brings up the unit selection display in a similar way to the main menu Options|Units
option (see section 3.4).

Redraw
Selecting this option redraws the plot window.

11.2.3 Output
The file submenu contains:

Report
This option brings up the user report window as described in Chapter 9.

Petroleum Experts
Chapter 11 - Plotting 9 - 10

11.3 The Toolbar Options


As a standard the plot window toolbar contains 3 control buttons which have the following
functions

Fonts...
This option allows the user to change the fonts used in the plot. Figure 11.8 shows a
typical fonts choice display.

Figure 11.8:
Plot
Fonts

This screen allows the user to select a font for each of the text plot elements listed. First
select a plot element by clicking on a name in the list, then use change button to choose
the text characteristics that you require. An example of your choice is given in the dialog
panel. Clicking on OK will change the font in the plot being viewed and close down the
selection window . Pressing Apply will change the plot without closing the window.

Colours
Clicking on the Colours. Control Button or on Change Colour within the small point or
stream menu (section 11.1) or on the Colours Option within the Main Plot Dialog Display
Menu brings up this dialog.

Figure 11.8:
Plot
Colours

PVTP User Guide


10 - 10 PVTP User Guide
This option allows the user to change the colours used in the plot and set the default for all
new plots. This screen allows the user to select the colour for each of the text plot
components listed.

First select the colour scheme to be applied to the plot i.e. Colour, Gray Scale or
Monochrome.

Next select a plot component by clicking on a name in the list. The sample panel will show
the current colour.

Press change to bring up the standard color selection dialog shown below. Choose the
colour that you require and press OK. The sample panel will show your choice.
The line width can also be set up on this display . To change a line width press on the
required check box and press OK. Thicker lines are useful when printing out plots
particularily for Fax use.

Clicking on OK will change the colours in the plot being viewed and close down the
selection window. Pressing Apply will change the plot without closing the window.

Clicking on Save Colours will save all the colour selections to disk to be applied as default
to all new plots.

Petroleum Experts
12 Utilities
This menu gives the user access to a series of utilities designed to help with general PVT
work and to validate PVT report data
The menu includes:

API/Density Calculator
Mass Balance Calculator
Enthalpy Balance Calculator
Hoffmann Quality Plot

Figure 12.1:
API Calculator

12.1 API/Density Calculator


This small dialogue is selected via the Utilities menu (see fig 12.1).
To calculate an oil density from an API:
Enter the API in the edit box and press Calc

To calculate an API from an oil density from an API:


Enter the oil density in the edit box and press Calc

The units of density displayed can be changed using the units dialog.
2- 9 PVTP User Guide

12.2 Mass Balance Calculator


This display is called from the main Utilities menu.
The objective is to provide a tool which helps to validate PVT report Black OIl data.
The calculation does not use any Equation of State model, it works only on the mass
values within the dialog. If a report is consistent the mass of fluid removed at the reservoir
should tally with the mass of gas plus oil at the surface. The calculator comes in 2 forms
depending on the reservoir fluid

OIL
Using the basis of 1 stock tank barrel, it is possible from the stock tank oil density GOR
and gas gravity plus the equivalent separator data to calculate a total mass of gas and oil
associated with this volume of production. Similarily from the oil FVF and density, we can
calculate the equivalent mass of this barrel of oil at reservoir conditions. If the two masses
are not very similar then there is an inconsistency in the reported results which must be
further investigated and eliminated.
To carry out this calculation

1) Set the fluid to OIl using the radio button provided

2) Enter the reservoir, sparator and tank data required.

3) Select Validate using the mode radio button.

4) Click on Calculate.

If all the data has been entered correctly , the program will show the masses calculated for
surface and reservoir plus the percentage difference between them.

Figure 12.2:
Mass
Calculator

Petroleum Experts
Chapter 12 - Utilities 3-9

Calculate Missing Value


This mode is useful if a key piece of Black Oil data is missing. Enter all the data as above
and press calculate. The program will assume the mass at surface and reservoir are equal
and fill estimate the missing value. If more than one piece of data is missing an error
message will be generated.
A typical display would be that shown in figure 12.2

GAS
In a similar way to that described for oils, the data from a gas or condesate can be used to
constuct a mass balance between surface and reservoir.
Unfortunately , most condensate reports do not have enough information to do a full
balance. Instead the program uses the data entered and assumes the masses are equal.
With the data provided, it calculates a series of values for gas FVF, density and molecular
weight which can be validated against report or EoS calculated numbers. Two gas FVFs
and gravities are reported . The first or dry value assumes that all the reservoir gas ends
up as gas at surface. The real value follows from the mass balance and takes into account
the gas that turns to condensate.

PVTP User Guide


4- 9 PVTP User Guide

12.3 Enthalpy Balance Calculator


This type of calculation is called from the main Utilities menu.
The aim of the utility is to predict the change in temperature if a fluid is moved from one
pressure to another adiabatically.The temperature change is due to thermodynamic effects
only as no heat is allowed to transfer to or from the system.
The calculation comes in 2 forms a single or ranged multiple type.

12.3.1 Single Point Enthalpy Balance


The inputs to the dialog are:

Initial temperature

Initial Pressure and

Final Pressure

When these values are entered and Calc is pressed, the program flashes the fluid at initial
conditions and finds the total enthalpy of the system.
The program then iterates the temperature and flashes at the new T and P until the total
enthalpy is within 0.01% of the initial value.

During iteration intermediate values are shown in the right hand side of the dialog.
When a successful match is found the process stops and the value is transferred to the
results panel at the bottom of the dialog.
A combo box is provided to select any stream within the PVTp file. (see help on
STREAMS).

A typical display would be

Petroleum Experts
Chapter 12 - Utilities 5-9

12.3.2 Multiple Point Enthalpy Balance


The aim of the utility is to predict the change in temperature if a fluid is moved from one
pressure to another adiabatically.The temperature change is due to thermodynamic effects
only as no heat is allowed to transfer to or from the system.
The inputs to the dialog are:

Initial temperature
Initial Pressure and
and either a range (auto mode) or a series of Final Pressures.(user selected mode).

Auto Mode

1. Enter a Start Temperature and a Start Pressure.


2. Enter a minimum and maximum end pressure and the number of pressure values
required.
3. Press Calc.

PVTP User Guide


6- 9 PVTP User Guide

User Selected Mode

1. Enter a Start Temperature and a Start Pressure.


2. Enter a series of end pressures.
3. Press Calc.

Petroleum Experts
Chapter 12 - Utilities 7-9

12.4 Hoffmann Quality Plot


This display is called from the main Utilities menu.
The principles behind this utility are described in the paper:

Equilibrium Constants for a Gas-Condensate System by A. E. Hoffmann, J. S. Crump and


C.R. Hocott, Trans.,AIME(1953)198,1-10.

The basis of the plot is that if log(KP) is plotted against a characteristic b function the
resultant values should approximate to a straight line.
Any gross deviations from this behaviour suggest that the X, Y combination for that
component is suspect.
A typical data entry and calculation dialog is shown below. This display is called by
selecting the Hoffmann Quality Plot option from the Utilities menu.
Normally the table is blank but if data is present all the table values are automatically filled
in when the dialog is loaded.
The required entries are a set of matching vapour and liquid compositions at a known
temperature and pressure.
As each component percentage is entered a running total and remainder (100 - total) will
be displayed.
Mole fractions can also be entered. In this case, when Calc is hit the user will be prompted
to auto correct the values.
Where no value is available zero may be typed or a blank left. In the latter case the blank
will be written automatically as zero.

When all component values have been entered, enter the temperature and pressure at
which the samples were taken.
Clicking on the Calc button will fill in the table as shown below.

PVTP User Guide


8- 9 PVTP User Guide

Click on Plot to bring up the typical graph. The plot shown below uses a set of values from
the original paper.
It can be seen that the values follow a rough straight line. To help visualising this effect, the
program draws a straight line on the plot.
The user can alter the position of this line by clicking on and dragging the handles at the
either end of the line.

Petroleum Experts
Chapter 12 - Utilities 9-9

PVTP User Guide


13 User Databases
This section describes the setup and use of user databases.
A Database menu has been added to the main PVTp screen. The dialogs within this allow
the user to create and maintain a set of customised component databases. In addition an
import facility has been added to extract components from the petroleum experts or other
user-created databases.

The databases can therefore be made up of entirely new components or existing


components with some properties adjusted. The user database points are held within an
ASCII file with a UDB extension. The directory where these files are stored is saved within
the Prosper.ini file. This directory can be set using the Set User database Directory button
which calls the User Database Directory Dialog.
Once created , the databases can be used via the Select Components Dialog.

Figure 13.1:
Using
database

If any *.UDB files exist their names will be displayed in the combo box provided. If the file
has been created with user data, but the specific UDB file is not on the users machine the
components will be listed within the user area for identification but cannot be extended or
reset to the original *.UDB values. See example in figure 13.2
2-6 PVTP User Guide

Figure 13.2:
Database not
present

13.1 Creating a User Database

Figure 13.3:
Creating
database

This dialog is called from the Database Menu. The dialog allows the user to create an
empty user database file (extension . UDB) and go on to add components via the
database edit and database import dialogs.
A typical display is shown in figure 13.3:

The procedure followed ia as follows:


Enter the database name and either select
Exit and Save to create an empty file or
Edit DataBase to begin populating the file with components (see User Database : Edit
Dialog).
The Set User Database Directory button brings up the User Database:Directory Dialog
which sets up where the file will be stored.

Petroleum Experts
Chapter 13 - User Databases 3-6

13.2 Selecting a User Database Directory

Figure 13.4:
Selecting
database
directory

This dialog is called from the Select Components dialog and from the various user
database screens. The dialog shown below allows the user to brows for a directory where
the user database files (extension . UDB) reside.

Selecting Browse will display a directory selection tree. When the selection has been
made click on OK to store the data within the prosper.ini file.

PVTP User Guide


4-6 PVTP User Guide

13.3 Editing a User Database


Figure 13.5:
Editing
database

his dialog is called from the Database Create Dialog or from the Database Menu. The
feature allows the user to add or remove componets from a user database. The properties
of each component can be adjusted manually or calculated. All the data is read from and
saved to an ASCII *.UDB file. A typical display is shown in figure 13.5

The minimum amount of data required is a short name (16 characters) , a long name (50
characters) and a molecular weight.The Fill in Values option will give reasonable values
for all missing data based on several criteria , starting with molecular weight.All fields can
be edited.

The main control fields are as follows:

Figure 13.6:
Editing
database 2

This allows the user to select the database to be edited.The Set User Database Directory
button brings up the User Database:Directory Dialog which sets up where the file is
stored.This area also contains a field which indicates the version of database by giving
when it was last edited.

Figure 13.7:
Editing
database 3

Petroleum Experts
Chapter 13 - User Databases 5-6

These combo boxes allow the user to select which correlations are used to determine the
propertie sif required of the larger species within the database. The same correlations are
used within the Pseudo Properties Dialog.

All changes are saved to the database file and the dialog is closed.

All changes are ignored and the dialog is closed.

All table entries are cleared.

As indicated above this option allows the user to fill in any properties with reasonable
values based on the component's molecular weight etc.

This option brings up the Database Import Dialog. Within this display the user can select
components from any other user database or from the Petroleum Experts database to
import into the database being constructed. The p[roperties can then be adjusted within the
edit database dialog.

PVTP User Guide


6-6 PVTP User Guide

13.4 Importing into User Database

Figure 13.8:
Editing
database

Within this display the user can select components from any other user database or from
the Petroleum Experts database to import into the database being constructed. The
properties can then be adjusted within the Edit Database Dialog.
A typical display would be as shown in figure 13.8.

The left hand area of the dialog allows the user to select any of the Petroleum Experts
components. To the right the user can call up any predefined user database and select
components for import. When all selections have been made click on Exit and Save to
import the values.
The Set User Database Directory button brings up the User Database:Directory Dialog
which sets up where the file is stored.

Petroleum Experts
14 Preferences
This section describes the options available from the Preferences section of the
main PVT menu The magor option is called: Adjusting the Equation of State
Calculation Tolerences

Figure 14.1:
Calculation
Tolerences
2-3 PVTP User Guide

14.1 Adjusting the Equation of State Calculation


Tolerences
Selecting the Calculation Tolerences option from the Preferences menu produces
the font selection screen shown in Figure 13.1

This Option is called by clicking on Calc. Tolerences within the Preferences Menu.
These variables are normally set to the default values and should not be changed
for the majority of systems.
The values are stored along with each file allowing the user to customise them on a
file by file basis.
A flag is available to switch on and off the advanced phase detection on a file by
file basis. Running with this check on is more secure with problem fluids but there is
a considerable penalty in speed. The Phase Determination numbers below refer to
the advanced method.
The following variables are available for change:

Phase Determination: Maximum Iterations (default value 500)


There is a phase determination function which is used throughout the Equation Of
State Calculations. The function starts at a high pressure and goes down in steps
until a two phase area is detected. This value limits the number of steps allowed
before the function is stopped with a single phase at all pressures assumed.
Increasing the value will slow down the PVT calculations.

Phase Determination: Minimum Pressure Step (default value 0.5)


There is a phase determination function which is used throughout the Equation Of
State Calculations. The function starts at a high pressure and goes down in steps
until a two phase area is detected. This value limits the smallest allowed step
before the function is stopped with a single phase at all pressures assumed.
Decreasing the value will slow down the PVT calculations.Increasing the value may
cause phase changes to be missed.

BUT Library Initialisation:Number Of Iterations (default value 60)


The BUT Library is at the core of all the Equation Of State Calculations. This value
controls the action of many programs within the Library , limiting the number of
times a solution is sought in any particular subroutine.Adjusting this value will have
an indeterminate affect on the systems accuracy and performance.

BUT Library Initialisation:Degree Of Precision (default value 3)


The BUT Library is at the core of all the Equation Of State Calculations. This value
controls the action of many programs within the Library ,limiting the accuracy
sought in any particular subroutine. If a more precise solution is required the value
should be increased. Adjusting this value will have an indeterminate affect on the
systems accuracy and performance.

Regression : Maximum Number of Steps (default value 20)


This value relates to the number of regression cycles which will be done before the
calculation automatically exits. Raising the value will allow more time for a slowly

Petroleum Experts
Chapter 14 -Preferences 3-3

regressing system to find a solution . No upper limit has been set , but any value
lower than 10 will be set to the lower allowed limit of 10.

Regression : Intermediate Gradient Steps (default value 10)


The compositional Gradient is a stepwise process. When a target depth is entered
for regression , the program must insert a series of intermediate depths to get a
meaningful result. More steps normally means a more accurate estimation. The
disadvantage is a much lower cycle time for regression.
10 steps represents a reasonable compromise value.

Regression: Optimise Regression for Speed/ Optimise CVD Regression for


Speed

PVTP User Guide


Appendix A - Worked
Examples
A1 Example 1 - EOS calibration of oil sample using PVTP.
“The aim of this exercise is to demonstrate how the PVT Package can be used to build an
equation of state (EOS) model for an oil sample. Even though the current example deals with
oil, the steps outlined is applied to any other type of hydrocarbon system.”

The objectives of this example are:

• To familiarise the user with building EOS models in PVTP.


• To use PVTP to calibrate the EOS models to measured laboratory experiments.
• To generate PVT tables for various applications.

This example will take the user through the following steps:

Building an EOS Model


• How to set up a PVTP model
• How to enter the composition of the fluid
• How to characterise the heavy ends
• How to define the binary interaction coefficients

Calibrating the EOS Model


• How to match the saturation pressure
• How to match the separator results
• How to match the constant composition expansion results.

Using PVTP to Generate tables


• How to generate black oil tables for MBAL
• How to generate black oil tables for PROSPER.
• How to generate black oil tables for Eclipse
• How to generate the EOS input data for PROSPER.

This example is in the samples directory under “ samples/pvtp/example1.pvi”

Input Data
Reservoir Fluid Composition

Component Mole Percent


N2 0.05
CO2 0.15
C1 37.6
C2 9.7
C3 9.8
C4 6.6
C5 4.3
C6 3.5
C7+ 28.3

Reservoir Data:
2 - 57 Appendix A - Worked Examples

Producing Interval Depth 10000-10050 feet


Reservoir Pressure 4000 psig
Reservoir Temperature 199.4 degF

Saturation Pressure Data

Saturation pressure at 199.4 degF: 2800.0 psig

Separator Data

A multi stage separator experiment performed on the reservoir fluid resulted in the following
results:

Stage Pressure Temp. degF GOR Oil Density


(Psig) (scf/stb) (API)
#1 500 90 500
#2 0 60 300 34.2*

*34.2 API = 853.953 kg/m3

Constant Mass Expansion Experiment results:

The results of the constant mass study at done of the sample at 199.4 degF are:

Oil Viscosity (cP) Oil Density


Pressure in psig
(Kg/m3)

Psat 2800 0.470 693.60


3100 0.495 697.55
3400 0.520 701.20
3700 0.542 704.66
Pres 4000 0.565 707.96

Petroleum Experts
PVTP User Guide 3 - 57

A1.1 Step-by-step approach to building an EOS model in


PVTP
1. Defining the System Options
The first thing that needs to be defined is the options. For the selections of the right options,
you click on |Options |Options and then select the following options.

Figure A.1.1:
Options Input Screen

In this screen, we are indicating that we will use EOS modelling and the EOS we will use is
Peng Robinson. You hit on OK to complete this.

i) You can also model fluid behaviour as a Black Oil in PVTP.


 ii) The other Equation of State that is available is the Soave Redlich
Kwong (SRK). You can also define a customised equation of state.

2. Units Selection in PVTP:


The default Units System in PVTP is Oilfield Units. If you are using another set of units you will
have to reset the units system. To do so click on Options |Units and then set the Input as well
as the Output Units to Oilfield as done below:

i) You can set the whole set to another system like French S.I.
 ii) You can also change the units of a particular variable within a unit
system by clicking on the unit next to it and selecting a new unit
from the list that is displayed.

PVTP User Guide


4 - 57 Appendix A - Worked Examples

Figure A.1.2:
Unit Selection Screen

3. Component Selection
In order to select the components, you hit on Data|Select Components. To select components
in the screen shown below click on the desired components. The selected ones will be
highlighted. Once you finish the pure component selection, enter the number of pseudo-
components in the bottom right hand corner of the screen.

Figure A.1.3:
Component Selection
Screen

i) You can un-select any selected component by clicking on it again.


 ii) We strongly recommend to start with a single pseudo.

Petroleum Experts
PVTP User Guide 5 - 57

4. Entering the fluid composition


On the previous screen once you defined the components, hit on Edit Composition which will
bring up the following screen, where the compositions are entered as shown:

Figure A.1.4:
Component Input
Screen

On this screen, the reservoir conditions i.e., pressure temperature and depth at which the
sample is taken are also entered.

5. Defining the Pseudo-Component


The next step is characterising the C7+ component. Clicking on the Pseudo Props does this.
Button of the above screen. This takes you to the following screen, whereby you enter the
specific gravity and molecular weight of the C7+ component.

PVTP User Guide


6 - 57 Appendix A - Worked Examples

Figure A.1.5:
Pseudo-Component
Entry screen.

The specific gravity entered here is 0.871 and the molecular weight is 275. On basis of these
numbers, we calculate the boiling point and the Tc, Pc etc using the correlations.

Figure A.1.6:
Pseudo-Property Calc.

Petroleum Experts
PVTP User Guide 7 - 57

To do so press Calc Values on the previous screen. The correlations used are Petroleum
Experts for boiling point and TWU / Edminister for critical properties. This thus calculates the
pseudo-properties on basis of the correlations.

i) There is a utility called Quick Calc. In many input screens of PVTP,


 which allows you to study the general model behaviour based on
the parameters entered/ calculated do far.
ii) We have entered the compositions and calculated the Pseudo-
properties from correlations. We can use this utility to see how this
model will perform in terms of oil density predictions at surface
conditions.

To do so on the above screen, hit the Quick Calc button. The following screen appears. On
this screen, select the flash to Standard Conditions as shown.

Figure A.1.7:
Quick Calc Screen.

Hit on Calc. On this screen, it gives the results of a single stage flash as shown below.

Figure A.1.8:
Single-Stage Flash
results.

PVTP User Guide


8 - 57 Appendix A - Worked Examples

As can be seen from the calculation, with the current pseudo-characterisation, the oil density
after flash using the equation of state modelling is 15 API, which is very different from the 32
API type oil we are getting.

To get a pseudo, which does give correct liquid density computation, we use the feature called
Automatch in PVTP. If we click OK on the previous screen, it will take us back to the following
screen, where by, you press Auto Match button at the bottom left hand corner.

i) Experience has shown that the liquid densities predicted by


 Standing and Katz method are always fairly close to the measured
density under atmospheric conditions, as the method is based on
the conservation of mass.

ii) Thus, during Auto Match, we iterate on the Heavy end parameters
until the EOS predicted density at surface is equal to the Standing
and Katz density calculated at surface.

iii) This usually provides a good starting point for calibrating the EOS
models further.

iv) During automatch, the difference between the two density values is
displayed as well. Ensure that this is small as automatch stops after
40 iterations. If the difference is still large, press automatch again to
perform 40 more iterations. Usually 40 iterations are enough.

Figure A.1.9:
Using Auto Match

Petroleum Experts
PVTP User Guide 9 - 57

Once automatch is done, using Quick Calc. again gives the following results for a single stage
separation.

Figure A.1.10:
Single-Stage Flash
results. After
Automatch

The density calculated now is much more reasonable and very near what we have in the
laboratory reports. To come back to the Pseudo-Property input screen click on OK.

Once the pseudo is acceptable, it is recommend to save this information in a archive. To do so


on the Pseudo-input screen click on Store button on the bottom right hand side as shown in
figure A.1.9. To view the stored data click on View on the same screen. You should see the
following information stored.

Figure A.1.11:
Stored Pseudo-
Properties

6. Defining the Binary Interaction Coefficients


Once the pseudo component has been characterised, the next step is to introduce binary
interaction coefficient between the components. To do so, from the Pseudo-property screen
figure A.1. 9 click on Exit and save. This takes you to the component input data screen, which
is figure A.1.4. On this screen click on B I Coeff. Button. This takes you to the following
screen, where you can define the binary interaction coefficients.

PVTP User Guide


10 - 57 Appendix A - Worked Examples

Figure A.1.12:
Stored Pseudo-
Properties

i) You need to enter only the lower part of the full BI matrix. We have
 used only 0.05 between the C1 and pseudo in this case.

ii) You can also use the correlations for calculating theses values, by
hitting Calc. New Values.

iii) There are also two Reset buttons at Top which allow you to set
specific (pure/ all components) values in the matrix to zero.

To see the effect of introduction of Binary interaction coefficient on the saturation pressure, we
can again use the Quick Cal. Utility that appears on this screen as well. If we press on Quick
calc. and then select phase envelope on the screen shown in figure A.1.7, the following phase
envelope appears.

Petroleum Experts
PVTP User Guide 11 - 57

Figure A.1.13:
Phase envelope
with Quick Calc.

To see the impact of the binary interaction coefficient on saturation pressure, click on Set
Test Point on the above screen and enter the saturation pressure data as shown below

Figure A.1.14:
Entering saturation
pressure data point.

i) Ensure that you have selected the data point to be plotted on the
 phase envelope as indicated at the bottom of the above

PVTP User Guide


12 - 57 Appendix A - Worked Examples

Once this is done we can click on OK to take us back to the Phase envelope screen as
shown in figure A.1. 13. On this we can click on Expand he plot to see the whole plot. We can
see, the data point (shown as the blue +) with respect to the phase envelope as well.

Figure A.1.14:
Phase envelope
versus measured
saturation
pressure data
point.

i) The EOS model we have at this stage is not respecting the fluid
 behaviour as seen in the laboratory data. The fluid behaviour at this
step is strictly governed by the PR equation of State and Tc, Pc
etc., data entered.

ii) To make the EOS model to replicate the fluid behaviour as seen in
the laboratory, we need to calibrate/ match the EOS model.

iii) Also Note that PVTP has indicated that the system is a bubble
point system, without the user having to define it using the in
built advanced phase detection algorithm.

Press Exit on the graph to come to Quick Calc screen in figure A.1.13, click Exit on this screen
to go to screen shown in figure A.1.7. Click Cancel on this screen to come to BI Coeff screen
shown in figure A.12.Press Exit and Save on this screen to save the data input. This takes you
to the component input screen shown in figure.A.1.4. Click Exit and save on this screen and
this take you to the main PVT screen.

At this stage you can save the file by going to File | Save as and the following screen appears.
You can browse to the directory you want to save the file in and save it there.

Petroleum Experts
PVTP User Guide 13 - 57

Figure A.1.15:
File Saving Dialogue

This finishes the data entry of for building the EOS model.

PVTP User Guide


14 - 57 Appendix A - Worked Examples

A1.2 Step-by-step approach to Calibrating an EOS model in


PVTP
1. Entering the measured data
The first step is entering the measured laboratory data. To do so, in the main PVTP screen, go
to Data | Enter Lab Data, and this will give the following screen. Enter the known data in the
relevant sections as shown:

Figure A.1.16:
Entry of saturation
Pressure

To enter the CCE click on the CCE tab that appears on the screen shown above in figure
A.1.16 and this takes you to the next screen, where the data is entered.

Petroleum Experts
PVTP User Guide 15 - 57

Figure A.1.17:
Entry of CCE data

Similarly enter the separator experiment data under SEP tab in the lab data screen as shown

Figure A.1.18:
Entry of Separator
data

2. Selecting the Data to calibrate against/ match to


Once the data is entered, we can again save the file as described earlier. To select the data
points that will be used in calibration, we will do the following

Disabling data points

PVTP User Guide


16 - 57 Appendix A - Worked Examples

The first step we take is to disable some data points in CCE density and viscosity
measurements to which the model will be matched to. To do so from the main Menu click on
Data | Enter lab data and select the CCE data tab as shown. On this select the both columns
of oil density and viscosity by holding the down the mouse and dragging across the cells you
want to disable. This selects the cells. Once the cells are selected, click on disable. This
disables the data, i.e. the data will not be used for matching.

Figure A.1.20:
Disabling Lab CCE
data

i) The disabled data is shown in grey shading.


 ii) A good model with predictive capabilities should use the
minimum data to calibrate and should predict other observed
behaviour within reasonable accuracy.

The next step is to include minimum data from this elaborate experiment and match the EOS
to it. We will select the density and viscosity at reservoir pressure and bubble point. Selecting
the data point by clicking on it to make the cell active does this. Once the cell is active, click on
include to include the data. You can also browse the weighting and select a number e.g. 5 and
hit set weighting to set weighting of data in the active cell /cells to 5.

Petroleum Experts
PVTP User Guide 17 - 57

Figure A.1.21:
Enabling Lab CCE
data / Setting
weighting

i) The enabled data is with a white background.


 ii) The low weighting cells appear in blue compared to black for the
high weighting cells

iii) We will give a medium weighting to density and viscosity at


reservoir conditions.

3. Matching the properties except viscosity


Once the properties that need to be matched against are selected, click OK to get out of lab
data entry screen. In the main Menu Click on Data | Regression and the following regression
screen appears. On this screen select all the data except viscosity for regression.

i) Note that you will need to scroll down to select all that against
 which you will regress the model.

ii) Ensure that viscosity is not selected as a regression variable at this


stage of matching.

PVTP User Guide


18 - 57 Appendix A - Worked Examples

Figure A.1.22:
Selecting the data for
regression.

Click on Regress on this screen. This takes you to the next screen, where the parameters that
will be altered to match to lab data are chosen. Chose the Tc, Pc data of all components
except for the non-hydrocarbons and the binary interaction coefficient between heavy fraction
and methane, as indicated below and hit Regress.

Figure A.1.23:
Selection of
Parameters to be
varied in regression.

Once the regression is done, there automatically appears the following screen showing the
tuned properties of all the components.

Petroleum Experts
PVTP User Guide 19 - 57

Figure A.1.24:
Tuned EOS
parameters.

On this screen, click on Exit and Save. It takes you back to the regression screen figure A.1.
23. On this screen click on Exit and save and it takes you back to the regression data
selection screen as shown in figure A.1. 22.

4. Matching viscosity.
Once the rest of data has been matched to, viscosity is matched separately. To do so un-
select the other parameters in the following screen and select viscosity only as shown

Scroll down the list to ensure that no other property except for viscosity is
 selected for regression.

PVTP User Guide


20 - 57 Appendix A - Worked Examples

Figure A.1.25:
Selecting viscosity for
regression.

Once this is done in a similar fashion, go to the next screen by clicking on Regress and only
select the Pseudo-component critical volume for fine-tuning. Make sure that no Tc, Pc,
omega, binary interaction is selected as shown in the screen below

Figure A.1.26:
Selection of Vc of
Pseudo to match
viscosity.

Once the matching is finished, the same screen as figure A.1.24 appears. Click on Exit and
save on this screen. This takes you to the regression screen on figure A.1.23. On this screen
press Exit and Save and it takes us to main regression screen shown in figure A.1.22. On this

Petroleum Experts
PVTP User Guide 21 - 57

screen click on PVT Main and this takes you to the main PVT screen., where you can save the
data and the results.

5. Checking results of the calibrated model against lab data.


Once the model is calibrated, we need to check the model predictions against the lab data.
The first comparison is the CCE experiment. To simulate a CCE experiment in PVTP, from the
main menu go to Calculation | Constant Composition Expansion and the following dialogue
box will appear, where the range of pressure and temperature is entered.

Figure A.1.27:
Setting up CCE
Simulation input.

If we are also comparing oil FVF and GOR etc, we need to enter the
 separator scheme that these values were calculated against in the
CCE data. If we leave it blank all the GOR and FVF values reported
in the simulated experiment assume single stage atmospheric flash.

On this screen Press on Calc. This takes you to the next screen as shown below. On this
screen press Calc. again and the CCE calculations are performed.

PVTP User Guide


22 - 57 Appendix A - Worked Examples

Figure A.1.28:
Simulated CCE
Results.

Once these calculation is finished, hit on plot and a plot will be displayed. On this plot select,
pressure versus the oil density (EOS) to be displayed. The selection is on the top of the plot in
the drop down menu as shown in the figure below:

Figure A.1.29
Simulated CCE versus
lab oil density Results.

Petroleum Experts
PVTP User Guide 23 - 57

On the same plot a comparison of oil viscosities looks as given below.

Figure A.1.30
Simulated CCE versus
lab oil viscosity
Results.

Similarly other experiments like phase envelope, separator tests can be simulated and
checked against the measured data.

This concludes the EOS calibration stage.

A1.3 Using PVTP to generate Tables for other applications


1. Black Oil tables for Petroleum Experts
The Black Oil tables for Petroleum Experts Applications are generated by going to File | Export
from the main menu. This will result in the following dialogue screen to appear.

Figure A.1.31
Black Oil Export
Dialogue Screen.

On this screen hit OK. This takes to the next screen, where the table pressures and
temperature is defined as shown below:
PVTP User Guide
24 - 57 Appendix A - Worked Examples

Figure A.1.32
Black Oil Export
Dialogue Screen.

i) You may also copy the CCE simulation experiment in the table to
 ii)
be exported by clicking on copy CCE button shown on the screen.
You may define tables at ten temperatures.
iii) You need not enter the saturation pressure for the table, PVTP will
calculate it automatically.
iv) On the right hand side Select, the table type, i.e., whether oil, gas or
condensate.

As the table contains GOR and oil FVF information as well, you need to define a separator
train for this case. In case we do not define a separator train and atmospheric single stage
flash is considered. In this example we will define the separator train similar to the one used in
lab data. To do so on the above screen, click on Set Up under separator conditions and the
following dialogue appears,

Figure A.1.33
Defining separator set
up for black oil table

Petroleum Experts
PVTP User Guide 25 - 57

On this screen enter the separator scheme. Click Use Separator to calculate GOR and oil
FVF.
Once this is done click on OK and it takes you back to the Export screen shown on Figure
A.1.32. On this hit Calc. Table button. If you have more than one table selected for export, hit
Calc. all. This populates the table with PVT data as shown below. Once the table is filled, on
the right hand side press MBAL select. This selects the columns to be exported.

Figure A.1.34
Populated
Black Oil table

On this click on Export and it will come up with the following dialogue

Figure A.1.33
Black Oil table
Export

On this screen select current table option as we have only one table. Click on Export and it
takes to the following screen, where we can save a *.ptb file, which can be read by Petroleum
Experts applications.

PVTP User Guide


26 - 57 Appendix A - Worked Examples

Figure A.1.33
Black Oil table Export

At the end of this step you have a black oil table that can be used.

1. Black Oil tables for Eclipse


The Black Oil tables for eclipse are generated following the same route as was followed for
Petroleum Experts Applications. We start from File | Export from the main menu. This will
result in the following dialogue screen as shown in figure A.1.31 to appear. On this screen
select table Type 6 which is Eclipse Black oil Tables and hit OK.

This takes us to the following screen. On this screen, you have to select the type of black oil
tables that are needed.

Figure A.1.34
Eclipse Black Oil table
Export

Petroleum Experts
PVTP User Guide 27 - 57

i) First you define the type of phase tables you want. In this case we
 want a oil with dissolved gas, the gas being dry and no water type
tables.
ii) Based on the phase types selected, applicable keyword Options
become available. We are using PVTO and PVDG for this example.

Once the proper options are selected, click on OK. This takes you the following screen, where
you define the pressure and temperature range for which the tables need to be generated.

You also define the separator scheme that will be used to calculate the GOR and oil FVF
values.

Figure A.1.35
Eclipse Black Oil table
Export, Pressure and
Temp. Range Input

Once the data is input, click on Export and it takes you to the following screen, where the
tables are displayed. Click on Calculate to populate the tables.

PVTP User Guide


28 - 57 Appendix A - Worked Examples

Figure A.1.36
Eclipse Black Oil table

Click on Export on the populated tables and it takes you to the save screen as shown below.

Figure A.1.37
Eclipse Black Oil table
saves

You can save the table as a *.inc file which can be used by Eclipse. Click on PVT Main to
come back to the main screen.

2. EOS input for PROSPER


The EOS input tables for PROSPER are generated following the same route as was followed
for the other two cases. We start from File | Export from the main menu. This will result in the
following dialogue screen as shown in figure A.1.31 to appear. On this screen select table
Type 1 which is PROSPER EOS Composition and hit OK.

This takes us to the following screen. On this screen, you have to select the appropriate option

Petroleum Experts
PVTP User Guide 29 - 57

Figure A.1.38
EOS Export for
PROSPER

Once the option is selected, click on Export and it appears with a saving screen and as in
figure A.1. 37. Select the name for the file and it saves a *.prp file which can be imported
directly into PROSPER.

PVTP User Guide


30 - 57 Appendix A - Worked Examples

A2 Example 2 - EOS calibration of a Condensate Sample


using PVTP
This objectives of this example are:

• To familiarise the user with using the Advanced Pseudo-Splitting Option in PVTP
• To use PVTP to calibrate the EOS models to measured laboratory experiments.
• To perform wax and hydrate studies on the condensate sample

This example will take the user through the following steps:

Building an EOS Model

• How to characterise the heavy ends using the advanced splitting method.

Calibrating the EOS Model


• How to match the saturation pressure
• How to match the separator results
• How to match the constant composition expansion results.

Simulating Experiments
• Study the calibrated EOS for wax appearance temperatures
• Find wax amount
• Perform hydrate formation study
• Work out hydrate inhibitor concentrations.

This example is in the samples directory under “ samples/pvtp/example2.pvi”

Input Data

Reservoir Fluid Composition

Mole Percent Component


0.31 N2
2.33 CO2
68.73 C1
12.37 C2
5.01 C3
2.71 C4
1.4 C5
0.96 C6
6.18 C7+

Petroleum Experts
PVTP User Guide 31 - 57

Reservoir Data:

Producing Interval Depth 10000-10050 feet


Reservoir Pressure 5320 psig
Reservoir Temperature 255.0 degF

Saturation Pressure Data

Saturation pressure at 199.4 degF: 4800.0 psig

Separator Data

A multi stage separator experiment performed on the reservoir fluid resulted in the following
results:

Stage Pressure (Psig) Temp. degF GOR (scf/stb) Oil Density


(API)
#1 500 100
32 - 57 Appendix A - Worked Examples

A Note about Liquid Dropout

i) There are two common ways of reporting the liquid drop out in
 laboratory reports:
• As a % of the cell volume at dew point pressure.
• As a % of cell volume itself.
ii) In the PVT Package, the dropout as % of the cell volume is to be
entered.
iii) If the lab reports the dropout as % of the dew point volume, this has
to be corrected. These reports also have a column called relative
volume in the reported in the CCE experiment.
Vcell
• By definition the relative volume Vr =
Vdew
Vr = relative volume
Vcell = Total volume of the cell at given P,T
Vdew = Volume of the cell at the dew point pressure
iv) Thus to get liquid dropout as % of cell volume, we divide the liquid
dropout number expressed as % of dew point volume by the
relative volume.

Petroleum Experts
PVTP User Guide 33 - 57

A2.1 Step-by-step approach to building an EOS model in


PVTP
1. Defining the Condensate System

i) The first is defining the options, selecting the components, and


 entering the composition as is indicated in the step by step
approach of example 1. The steps are exactly same.

ii) You start with one C7+ component and go through automatch etc
as indicated in example 1. The specific gravity is 0.8 and the
molecular weight is 180.

2. Splitting the heavy end.


Once the pseudo is characterised and automatched, we are at the following screen as shown.

Figure A.2.1
Pseudo-Input Screen

On this screen press the Advanced button on the Split option at the bottom of the screen.

If you have more than one pseudo defined in the above screen, the
 advanced splitting is applied to the last pseudo only.

The advanced splitting dialogue takes us to the following screen on which using the internal
splitting algorithms, a distribution with carbon numbers of C7+ components is constructed as
shown.

PVTP User Guide


34 - 57 Appendix A - Worked Examples

Figure A.2.2
Advanced Splitting
Screen

i) For estimating the distribution of C7+ carbon numbers for a given


 ii)
system, there are various options available.
Petroleum Experts2 is the default option, which constructs an
extended distribution starting from C7 in such a way that the
average molecular weight and specific gravity of C7+ we started
with are honoured and as the carbon number increases, the mole
fraction decreases.
iii) There is also the Petroleum Experts 1 and Original method, both of
which calculate the extended distributions in such a a way that the
distributions tend to be centred around a particular carbon number.
iv) In case the user knows the individual mole fractions of the higher
carbon number, the follow profile method can be selected, which
will cause the split to be along the mole% profile entered by the
user.

The plot of the distribution with Petroleum Experts2 Method is shown below. This can be
done by pressing Plot on the above screen.

Petroleum Experts
PVTP User Guide 35 - 57

Figure A.2.3
Heavy end profile with
Petroleum Experts 2

If we want to choose the Petroleum Experts 1 as the splitting method, we click on Exit on the
above graph, which takes us to screen shown on figure A.2.2. On this select Petroleum
Experts1 and press Recalculate split. Once this is done hit again on plot.

Figure A.2.4
Heavy end profile with
Petroleum Experts 1

As indicated in above plot, this distribution is centred around C13 and thus has a maximum
there.

For this case we will use the default one i.e. Petroleum Experts 2. To switch back to it follow
the same sequence as was followed to construct Petroleum Experts1. Once this is done, we
will split this profile into two sub-groups by hitting on Set Even Split as shown in the following
screen.

PVTP User Guide


36 - 57 Appendix A - Worked Examples

Figure A.2.5
Splitting the Pseudo

Once this is done, the program splits the heavy end into two groups, one from C7-C12 and
another C12+. If the user wants to change the range of carbon numbers in the sub-groups, it
can be done by scrolling up and down on the C13-C35 group.

Once the sub-groups are defined, click on Automatch. Once automatch is done, introduce a
binary interaction coefficient of 0.05 between C1 and C13+ by clicking BI Coeff on the above
screen as shown

Figure A.2.6
BI Coeff. Entry

Click on Exit and save and it takes you back to the screen on figure A.2.5. Click again Exit and
Save through all the screens, till you are again in the main PVTP screen. On the main screen
save the file.

Petroleum Experts
PVTP User Guide 37 - 57

A2.2 Calibrating an the EOS model in PVTP


The first step is entering the measured laboratory data. To do so, follow the steps exactly
similar to example 1. From the main PVTP screen, go to Data | Enter Lab Data, and this will
give the following screen. Enter the known data in the relevant sections as shown:

Figure A.2.7
Lab. Saturation
Pressure Entry

Figure A.2.8
CCE. Data Entry
Screen.

PVTP User Guide


38 - 57 Appendix A - Worked Examples

Figure A.2.9
Separator Data Input

Once the laboratory data is entered, we will disable, set weighting to the various options as
indicated below. To do so we will follow the same steps as indicated in example1.

i) All liquid drop data except 9.86%, which is the highest number, and
 5.51%, which is at 4500 psig, are disabled. The 5.51% has medium
weighting.
ii) The Z factor at dew point is included with high weighting.
iii) The saturation pressure is included.
iv) The first stage GOR and last stage density in separator
experiments have high weighting. The other GOR values have low
weighting.

Once this is done we go to the regression screen following the same steps as in example 1
and select the properties as follows

Petroleum Experts
PVTP User Guide 39 - 57

Figure A.2.10
Regression Data Input

After selecting regression properties click on Regress and this takes us to the screen below.
Chose the Tc, Pc data of all components except for the non-hydrocarbons and the binary
interaction coefficient between heavy fraction and methane, as indicated below and hit
Regress as was done in example 1

Figure A.2.11
Regression Screen

This finishes the calibration of the EOS model to the laboratory data.

PVTP User Guide


40 - 57 Appendix A - Worked Examples

A2.3 Checking results of the calibrated model against lab


data.
Once the model is calibrated, we need to check the model predictions against the lab data.
The first comparison is the CCE experiment. To simulate a CCE experiment in PVTP, from the
main menu go to Calculation | Constant Composition Expansion and the following dialogue
box will appear, where the range of pressure and temperature is entered.

Figure A.2.12:
Setting up CCE
Simulation input.

If we are also computing oil FVF and GOR etc, we need to enter the
 separator scheme that these values were calculated against in the CCE
data. If we leave it blank all the GOR and FVF values reported in the
simulated experiment assume single stage atmospheric flash.

On this screen Press on Calc. This takes you to the next screen as shown below. On this
screen press Calc. again and the CCE calculations are performed.

Petroleum Experts
PVTP User Guide 41 - 57

Figure A.2.13:
Simulated CCE
Results.

Once these calculation is finished, hit on plot and a plot will be displayed. On this plot select,
pressure versus the liquid dropout to be displayed. The selection is on the top of the plot in the
drop down menu as shown in the figure below:

Figure A.2.14
Simulated CCE versus
lab liquid dropout
Results.

This concludes the PVT calibration step.

PVTP User Guide


42 - 57 Appendix A - Worked Examples

A2.4 Simulating PVT Experiments in PVTP


In this section we will use PVTP to simulate the following experiments:

1. Wax appearance modelling

PVTP has the capacity to model, the temperatures at which wax starts to appear in the fluid. It
also has calculation routines, which work out the wax weight and mole percent and the
number of phases that are formed.

To access wax appearance calculations, from the main PVTP screen, go to Calc. Solids
options. Under this option select wax appearance temperature calculation. Once done the
following screen appears

Figure A.2.15
Wax appearance
temperature Input
data.

There are various methods available for calculating wax appearance temperature. We have
selected the Pederson wax method. The pressure range over which the temperature is to
calculated is specified as well. Next we hit calculate and the following screen appears. On this
screen click on Calc. to start the calculations

Petroleum Experts
PVTP User Guide 43 - 57

Figure A.2.15
Wax appearance
temperatures

In this case the calculations show that for all the pressures the wax appearance temperature
is around 70.2344 F

To calculate the amount of wax that deposits, click on PVT main on the previous screen. This
takes us to the main PVTP screen. On the main screen go to Calc. Solids options. Under this
option select Wax Amount calculation. Once done the following screen appears

Figure A.2.16
Wax amount input
dialogue

There are various methods available for calculating wax appearance temperature. We have
selected the Pederson wax method. The pressure range over which the amount is to
PVTP User Guide
44 - 57 Appendix A - Worked Examples

calculated is specified as well and so is the temperature of 70 F. Next we hit calculate and the
following screen appears. On this screen click on Calc. to start the calculations

Figure A.2.17
Wax amount

This table gives the amount of wax that is formed. It also indicates the separation of the
original fluid into various phases.

Petroleum Experts
PVTP User Guide 45 - 57

2. Hydrate and hydrate inhibitor modelling.

PVTP has the capacity to model, the hydrate appearance pressures. It also has calculation
routines, which work out the minimum inhibitor concentrations required to suppress hydrate
formation.

To access hydrate appearance calculations, from the main PVTP screen, go to Calc. Solids
options. Under this option select Hydrate Formation Pressure calculation over a range of
temperatures and a couple of inhibitor concentrations. Once done the following screen
appears

Figure A.2.18
Hydrate appearance
Pressure Input data.

There are various methods available for hydrate formation pressures prediction. We have
selected the Kihara Potential P.E.H. method. The temperature range over which the pressure
is to calculated is specified as well. Next we hit calculate and the following screen appears. On
this screen click on Calc. to start the calculations

PVTP User Guide


46 - 57 Appendix A - Worked Examples

Figure A.2.20
Wax appearance
temperatures

In this case the calculations show the minimum hydrate formation pressures for a range of
temperatures and inhibitor concentrations.

To Plot the results press Plot and the following plot appears.

Figure A.2.21
Hydrate formation plot

Hydrate Region

From the plot we can see that as the temperature and inhibitor concentration increase, the
hydrate formation pressures go up also and you need higher and higher pressure to form
hydrates. Click Exit to come out of the plot and click on PVT main to come to the main PVTP
screen.

Petroleum Experts
PVTP User Guide 47 - 57

A3 Example 3 – Estimating Decontaminated sample


properties of an contaminated Oil Sample using PVTP
This objectives of this example are:

• To familiarise the user with the decontamination procedure that can be used in PVTP

This example will take the user through the following steps:

Building an EOS Model

• How to make the C7+ distribution in PVTP follow the carbon number versus mole% profile
measured in laboratory.

Decontaminating in PVTP
• Step by step approach to estimate the uncontaminated sample properties from a
calibrated EOS model of a contaminated oil sample.

This example is in the samples directory under “ samples/pvtp/example3.pvi”

Input Data

All the input data including the sampling is on a contaminated oil


 sample. The experiments like CCE, bubble point determination, etc
were performed on the contaminated sample.

Contaminated Reservoir Fluid Composition

Component Mole Percent


N2 0.05
CO2 0.15
C1 37.6
C2 9.7
C3 9.8
C4 6.6
C5 4.3
C6 3.5
C7+ 28.3

PVTP User Guide


48 - 57 Appendix A - Worked Examples

Reservoir Data:

Producing Interval Depth 10000-10050 feet


Reservoir Pressure 4000 psig
Reservoir Temperature 199.4 degF

Saturation Pressure Data of the Contaminated sample

Saturation pressure at 199.4 degF: 2800.0 psig

Separator Test Data of the Contaminated sample

A multi stage separator experiment performed on the reservoir fluid resulted in the following
results:

Stage Pressure (Psig) Temp. degF GOR (scf/stb) Oil Density


(API)
#1 500 90 500
#2 0 60 300 34.2*

*34.2 API = 853.953 kg/m3

Constant Mass Expansion Experiment results on the Contaminated sample:

The results of the constant mass study at done of the sample at 199.4 degF are:

Oil Density
Pressure in psig
(Kg/m3)

Psat 2800 693.60


3100 697.55
3400 701.20
3700 704.66
Pres 4000 707.96

Petroleum Experts
PVTP User Guide 49 - 57

Extended Composition analysis of the C7+ fraction contaminated Reservoir Fluid sample

C7 0.5413 C25 0.17 C43 0.0534


C8 0.5076 C26 0.1594 C44 0.05
C9 0.476 C27 0.1494 C45 0.0469
C10 0.4463 C28 0.1401 C46 0.044
C11 0.4185 C29 0.1314 C47 0.0413
C12 0.3924 C30 0.1232 C48 0.0387
C13 0.3679 C31 0.1155 C49 0.0363
C14 13.165 C32 0.1083 C50 0.034
C15 1.0926 C33 0.1016 C51 0.0319
C16 3.0245 C34 0.0952 C52 0.0299
C17 0.9606 C35 0.0893 C53 0.028
C18 2.9007 C36 0.0837 C54 0.0263
C19 0.2501 C37 0.0785 C55 0.0247
C20 0.2345 C38 0.0736 C56 0.0231
C21 0.2199 C39 0.069 C57 0.0217
C22 0.2062 C40 0.0647 C58+ 0.0203
C23 0.1933 C41 0.0607
C24 0.1813 C42 0.0569

PVTP User Guide


50 - 57 Appendix A - Worked Examples

A3.1 Step-by-step approach to decontamination in PVTP


1. Defining the Contaminated System
You can match the contaminated oil sample following the steps exactly in the same fashion as
listed in example1. At the end of this you have a matched EOS model for the contaminated oil.

The starting point for this example is that we have matched an


 equation of state for the contaminated oil based on the laboratory
tests as indicated. The pseudo C7+ has been characterised.

2. Setting up the C7+ profile as per measured data


To do so from the main PVTP screen go to the pseudo input data screen. To do so Click on
Data | Edit Composition | Pseudo Props. and it takes us to the following screen.

Figure A.3.1
Pseudo- Property input
screen

On this screen, click on the Advanced option and it will take you to the next screen whereby
PVTP generates a mole % profile for C7+ using the default method.

Petroleum Experts
PVTP User Guide 51 - 57

Figure A.3.2
Advanced Pseudo-
Property screen

On this screen, we want to enter the profile, we have measured in the laboratory. To do so,
click on Set up Split Profile button and the following dialogue comes up. Fill the measured
mole% data against carbon number in the screen.

Figure A.3.3
Setting up Profile

PVTP User Guide


52 - 57 Appendix A - Worked Examples

Once the profile has been set-up, click on Exit and Save and it takes you back to the
advanced split screen. On this screen press Recalculate Split as shown below.

Figure A.3.4
Recalculating the
Profile

Once this is done click on Exit and Save on all the screens that appears till you come to the
main PVTP screen.

3. Decontaminating the sample

Once the heavy end profile has been defined, from the main menu go to Data |
Decontaminate. This takes you to the decontamination input dialogue as shown below

Figure A.3.5
Decontamination Input
Dialogue

Petroleum Experts
PVTP User Guide 53 - 57

This screen lists all the components along with their mole %, molecular weights etc. The C7+
components are listed in red.

The next step is to remove / re-estimate the excess mole % of heavy end hydrocarbon that
comes from the contaminant.
For this example we will try to estimate the contaminant mole % from the heavy end profile. If
we click on Plot on the previous screen, it gives the following plot.

Figure A.3.6
Carbon number Vs
Mole %

The initial peak that is seen in the profile is because of C1 which is as expected. To see the
profile after C7 we can hold down the mouse button and draw a box around the area and it
results in a following zoomed plot.

Figure A.3.7
Carbon number Vs
Mole %

Now after C7 the profile naturally is expected to be smooth as we had seen in example 1. The
peaks that we see in the profile from C14 to C18 are due the contamination from the oil based

PVTP User Guide


54 - 57 Appendix A - Worked Examples

mud. From this plot assuming a uniformly decreasing smooth curve the mole % of the C14-
C18 can be estimated. The estimated mole percent are

Component Old Mole Percent Estimated Mole


Percent
C14 13.165 0.323
C15 1.0926 0.298
C16 3.0245 0.286
C17 0.9606 0.280
C18 2.9007 0.269

In case you know the exact composition of the contaminating fluid


 and contamination weight %, this can easily be converted into excess
mole % of that component. The excess mole % can be subtracted out
of the system and new mole percent estimated in the second column

Once the new mole percent are estimated, these are entered in the decontamination screen
as shown below

Figure A.3.8
Decontamination
Procedure

Once new compositions are entered, press on Quick Look. This takes us to the next
screen where the program creates a temporary decontaminated stream and we can
quickly look at its properties

Petroleum Experts
PVTP User Guide 55 - 57

Figure A.3.9
Decontamination
Quick Calc.

On this screen press again Quick Calc. It takes us to the next screen as shown

Figure A.3.10
Decontamination
Quick Calc.

At this stage PVTP has created a temporary decontaminated stream called Decon_Temp and
we can perform the listed calculations on it. Begin by selecting Phase envelope and pressing
Calc. This takes us to the following screen. On this screen, on the left hand side all the fluid
streams are listed. Select both the contaminated and decontaminated one and hit Calc.

PVTP User Guide


56 - 57 Appendix A - Worked Examples

Figure A.3.11
Phase Envelopes

This picture shows how the phase envelopes compare. Because of decontamination the
saturation pressure goes up in this case. Click on Exit | cancel | Exit and it takes you to the
screen in figure A.3.8. On this screen click on Decontaminate, which take us to the following
screen.

Figure A.3.12
Decontamination

On this screen you get two options. One in which you can create a new stream in the file with
the decontaminated fluid model or you can overwrite the contaminated one. We choose to add
a new stream.
After this press Decontaminate and the program calculates the decontaminated fluid model
and displays the EOS parameters of the same as shown below

Petroleum Experts
PVTP User Guide 57 - 57

Figure A.3.13
EOS Parameters of
the Decontaminated
sample

Enter Exit and Save on this and subsequent screens to go to the main PVTP screen. At this
stage you will have a decontaminated fluid model.

PVTP User Guide


Appendix B Step by Step
Guide
This section describes the steps which can by followed to characterise a fluid with the PVT
Package. This route will be successful in all but the most difficult cases. The information
here is repeated in the form of help (PVTSTEP.HLP). This help is available from the Help
Menu on the main PVTP display.

B1 List of Steps

Step 1: Create a New ( Section B.1)

Step 2: Select Equation of State Options ( Section B.2)

Step 3: Select Components ( Section B.3)

Step 4: Enter Composition ( Section B.4)


also see Sample PVT Report Composition ( Section B.4.1)

Step 5: Initialise the Pseudo Component Properties ( Section B.5)

Step 6: Match the Surface Volumetric Properties (Density, GOR etc.) using the
Automatch feature ( Section B.6)

Step 7: Use Pseudo-Splitting or BI Coefficients to get near Reservoir Saturation


Pressure Value ( Section B.7)

also see Using BI Coefficients ( Section B.7.1)


Using Pseudo Splitting ( Section B.7.2)

Step 8: Select Match Parameters ( Section B.8)

Step 9: Use Regression to Match Fluid ( Section B.9)

Step 10: Check and Refine the Fluid Characterisation ( Section B.10)

Step 11: Calculate, Report and Export ( Section B.11)


2 - 30 Appendix B - Step by Step Guide

B1.1 Step 1: Create a New File

Create a new file by selecting the New command., from the File menu.
This can be done at any time.

See also:

File/New (Section 3.1)

Petroleum Experts
Appendix B - Step by Step Guide 3 - 30

B1.2 Step 2: Select Equation of State Options

or use icon

Part of a typical display is shown below :

The program will default to the most commonly used combinations i.e.

♦ 1 Method set to Equation of State and


♦ 2 Equation of State set to Peng Robinson

Clicking on OK is enough to move on to the next step

More detail on alternative entries is given in Options (Section 5.4 )

PVTP User Guide


4 - 30 Appendix B - Step by Step Guide

B1.3 Step 3: Select Components

or use icon

A typical display is shown below :

Petroleum Experts
Appendix B - Step by Step Guide 5 - 30

The important selections are :

◊ 1 Choose the required components by clicking on the names within the listbox. The
number of components depends on the application and the information available within
the PVT report. See Sample PVT Report Composition. The Reservoir or Wellstream
analysis will contain a list of components up to C6, C10, C12, Cxx etc. The plus fraction
should have associated with it a Molecular Weight and a Specific Gravity. This
information is required to characterise the Pseudo Component(s) in Step 5 Normally,
selecting up to C6 and having a C7+ pseudo is enough for all oils and most
condensates.

◊ 2 Enter the number of Pseudo Components (normally 1) and

◊ 3 Click on Edit Composition to proceed to next step

NOTE: The difference in properties between normal and iso butane and normal and iso
pentane do not warrant there inclusion as separate components. The program will run
faster if nC5 and iC5 are lumped together under the nC5 label. Similarily, with nC4 and
iC4 should be lumped as nC4.

More detail on alternative entries is given in database Selection (Section 7.1)

PVTP User Guide


6 - 30 Appendix B - Step by Step Guide

B1.4 Step 4: Enter Composition

or use icon

but normally the display is loaded using the button


on the Select Components page (Step 3)

A typical display is shown below

Petroleum Experts
Appendix B - Step by Step Guide 7 - 30

Enter the composition in mole % from the Reservoir or Wellstream analysis for each
component (1) and pseudo component (2).See Sample PVT Report Composition (Section
A.4.1). A running total of the entries is displayed (3).
At this point reference data , especially the temperature at which the sample was taken,
should be entered in area 4. This temperature will be used to conduct the Saturation
Pressure calculations within Step 7
When all entries are complete click on Pseudo Props.. (5) to move on to the next step.

More detail on alternative entries is given in Edit Composition (Section 7.2)

PVTP User Guide


8 - 30 Appendix B - Step by Step Guide

B2 Sample PVT Report Composition

HYDROCARBON ANALYSIS OF SEPARATOR PRODUCTS TO AND CALCULATED

WELLSTREAM

TO HEPTANES PLUS AND CALCULATED WELLSTREAM

SAMPLES
Separator Separator Wellstream
Component Liq. Mole % Gas Mole % GPM Mole %

---------------------------------------------------------------------------------------------------------------
Hydrogen sulphide 0.00 0.00 0.00
Carbon dioxide 0.16 0.90 0.50
Nitrogen 0.01 0.32 0.15
Methane 6.02 77.97 38.87
Ethane 4.94 12.58 3.364 8.4
Propane 6.53 5.51 1.518 6.06
i-Butane 1.45 0.56 0.183 1.04
n-Butane 4.84 1.38 0.435 3.26
i-Pentane 1.97 0.22 0.080 1:17
n-Pentane 3.35 0.29 0.105 1 95
Hexanes 4.81 0.15 0.058 2.68
Heptanes plus 65.92 0.12 0.053 35.89
Totals 100.00 100.00 5.796 100.00
Heptanes plus properties
Molecular weight : 225 103 (assumed) 225
Density at 600F (gloc) 0.8527 0.7370 (assumed) 0.8526
API at 600F Cg/cc) 34.3 34.3

Important Information
1 Individual component compositions 0.00.....2.68% and C7+ pseudo composition 35.89%
2 Pseudo Component (C7+) molecular weight 225 and SG 0.8526

Petroleum Experts
Appendix B - Step by Step Guide 9 - 30

B2.1 Step 5: Initialise the Pseudo Component Properties

At least one pseudo component should have been identified in step 3. After the pseudo
percentage(s) have been entered in step 4 , click on the Pseudo Props. button to display
to bring up the important Pseudo Properties Display

A typical display is shown below:

The purpose of this step is to give the pseudo component(s) an initial set of properties.

The pseudo is the greatest unknown within the composition and is always composed of a
mixture of many compounds with a wide variety of individual properties. It is therefore, not
surprising that the characterisation of these compounds is the key area of EOS PVT
matching.
The starting values for Tc, Pc , AF etc. are taken from correlations. Normally the PVT
report will give SG and Molecular Weight information for the plus component. See Sample
PVT Report Composition Section A.4.1). . Enter the values in the table (1). The
PVTP User Guide
10 - 30 Appendix B - Step by Step Guide
correlation(s) will calculate a Boiling Point and use this with SG and Mwt. to fill in the other
properties (2). The default correlations are Petroleum Experts for BPt. and Twu/Edminster
for Tc, Pc , AF . Clicking on Calculate Values(3) or exiting the pseudo properties dialogue
will initiate the property estimation.

Choice of Correlation
The correlation can by changed by using the combo boxes in area (4)

Our recommendation for this selection is :

⇒ For All Fluids , try


1. Petroleum Experts Correlation for Boiling Point
2. TWU/Edmister for Acentric Factor etc.

NOTE : The properties of the pseudo(s) will only be recalculated if the Boiling Point value
for that pseudo is blanked out.

The mode (5) should normally be set at Automatic. Manual mode assumes the user will
type in all the properties.
When the initial properties are in place, the user should move on to step 6 for further
pseudo characterisation.
More detail on alternative entries is given in Pseudo Properties (Section 7.3)

Petroleum Experts
Appendix B - Step by Step Guide 11 - 30

B2.2 Step 6: Match the Surface Volumetric Properties


(Density, GOR etc.) using the Automatch feature
Automatching is the key to efficient fluid characterisation within the PVT Package

Background
The Equation of State model is not ,at present, predictive. This weakness leads to the need
for extensive fluid matching.
In addition, the model is particularly poor at estimating liquid densities.
The combination of these factors leads to an overall picture of an equation with many
variables ,many component properties and therefore many routes to matching a complex
fluid over a range of pressures and temperatures. If an efficient route is not taken, it can be
very difficult to resolve the overall picture especially with regard to reservoir and separator
densities.
Since all volumetric oil properties FVF GOR etc. are derived from density it is critical that
this area is accurately modelled.

What is Automatching
Within the PVT package two liquid densities are calculated by two different methods. The
first is based on an empirical correlation from Standing and Katz. The second is calculated
from the Equation of State liquid compressibility.
Experience has shown that the Standing and Katz value which is derived mainly from
specific gravities is always fairly close to the measured density at surface conditions.
The Automatch process involves a series of flashes at 60 degrees F and 1 atm with an
adjustment to the pseudo properties after each flash. The aim is to bring the EOS density
in line with that calculated by Standing and Katz. The boiling point (s) of the pseudo(s) are
adjusted after each iteration and the other properties recalculated using the new value.
Figure 1 illustrates the result of Automatch on a typical oil

The effect of Automatching is to move the lower end of the phase envelope into a realistic
area giving close to the correct values for separator oil density GOR FVF etc.. The
matching of this area becomes minimal ,allowing the overall regression to move more

PVTP User Guide


12 - 30 Appendix B - Step by Step Guide
smoothly to a solution. In general, the top end of the phase envelope is little changed for
oils during Automatch . With condensates, the Saturation Pressure may become
depressed enough to require remedial action i.e. splitting (see Step 7)

How to Automatch
Automatching is a very straightforward process. Enter the Pseudo Properties Dialogue as
described in Step 5.

A typical display would be :

Simply click on the Split in 2 button . Split into two each time . Check the effect on the
Saturation Pressure after each split (see Step 7)
A feature is provided within the program to store and restore pseudo component data. The
program will automatically store the first entries in this dialog. The Restore can be used to
undo a split if the Saturation Pressure becomes too large.
If this method proves to be unsuccessful more control over the Split by using the Advanced
function.

See also Decontamination Procedure(Apendix B)


NOTE: Automatch is not suitable for gases as it depends on liquid being formed
When Automatch is complete proceed to Step 7
More detail on alternative entries is given in Pseudo Properties (Section 7.3)

Petroleum Experts
Appendix B - Step by Step Guide 13 - 30

B2.3 Step 7: Use Pseudo-Splitting or BI Coefficients to


get near Reservoir Saturation Pressure Value
The aim of this step is to assist the package to smoothly find the reservoir fluid Saturation
Pressure. The aim is to use various techniques to get in the proximity(within 5%) of the
correct value. The regression mechanism can then be used to match the value exactly.

When Step 6 is complete and the Pseudo Properties Dialogue is exited , the program will
be showing the Edit Composition Dialogue as shown below.

All the operations required for this step are available within this dialogue. Make sure a
reference temperature is entered at point 4
After each operation the saturation pressure can be found by clicking on the Calculate
button at point 1. This brings up the Small Calculation Dialogue :

PVTP User Guide


14 - 30 Appendix B - Step by Step Guide

Select Saturation Pressure and press Calculate to bring up the message box containing
the result:

Petroleum Experts
Appendix B - Step by Step Guide 15 - 30

B2.3.1 Strategy for Achieving Saturation Pressure


See Using Bi Coefficients and Using Splitting for details of each method and its effects

⇒ OILS
Oils are normally straightforward. The Saturation Pressure is commonly quite close to the
desired value. The difference can normally be made up by introducing Binary Interaction
Coefficients. In some cases, splitting may be required. The recommended sequence is :
16 - 30 Appendix B - Step by Step Guide

This is a general guide. Special cases may require a different approach

⇒ CONDENSATES
Condensates can be much more difficult to match than oils. The calculated Saturation
Pressure can be initially very far from the match value. The use of B I Coefficients is not as
effective in this area. Introducing the coefficients change the shape of the phase envelope
as well as inflate it. The shape change may, in some cases, result in a decrease in
Saturation Pressure at the reservoir temperature. Splitting the pseudo component is
recommended for condensates as the effect is larger and spread more evenly across the
phase envelope. Close to the required value one or two BI coefficients (between C1 and
the heaviest components) can be used to move the value a little. The proposed sequence
is :

Petroleum Experts
Appendix B - Step by Step Guide 17 - 30
18 - 30 Appendix B - Step by Step Guide

B2.3.2 Using BI Coefficients


Figure 2 shows the effect of adding Binary Interaction Coefficients to a real condensate
example. This pattern of behaviour is commonly found.

Adding the coefficients moves the phase envelope from values depicted by curve B to
those making up curve A. Although there is an increase in saturation pressure over most
of the temperature range e.g. T1, the envelope tends also to tilt leaving some areas with a
lowered PSat. e.g. T2.

In this example ,there is negligible movement at the reservoir temperature leaving the
match point PSat as far away as before. Adjusting BI Coefficients is not recommended for
condensates other than making up small (<10%) differences between calculated and
match PSat values. Splitting the last pseudo component is the preferred option with
condensates which exhibit the behaviour shown above.

See Using Splitting to Match Saturation Pressure (Section A.7.2)


Oils , in contrast, can benefit from adding BI coefficients. The saturation pressure is
normally closer to the initial calculated value and the phase envelope range is normally like
that of T1 in figure 2. Splitting with oils also tends to give an excessively high value which
cannot be easily brought back by regression.

Where the difference between the calculated and match values are small the difference
can be made up by manually adjusting the BI Coefficient(s) of C1 with the heaviest
component(s).This value has the greatest influence on the saturation pressure calculation

Petroleum Experts
Appendix B - Step by Step Guide 19 - 30

Adjusting Binary Interaction Coefficients


Click on the BI Coeffs.. button within the Edit Composition (Section 7.2) to display the
Binary Interaction Coefficients Dialogue.
A typical example is shown below :

Any coefficient can be changed by clicking on a cell and typing in a new value. Use the
combo boxes to give options on calculating a new set of values. Buttons are provided for
zeroing all components, or those of the pure (non-pseudo) components.

See BI Coefficients Dialog (Section 7.4) for more detail on the options available.

PVTP User Guide


20 - 30 Appendix B - Step by Step Guide

B2.3.3 Using Pseudo Splitting


Figure 3 shows the effect of Pseudo Splitting on a real condensate example.
Appendix B - Step by Step Guide 21 - 30

Splitting the Last Pseudo


Splitting is a very straightforward process. Enter the Pseudo Properties Dialogue as
described in Step 5.

A typical display would be :

Simply click on the Split in 2 button . Split into two each time . Check the effect on the
Saturation Pressure after each split (see Step 7)
A feature is provided within the program to store and restore pseudo component data. The
program will automatically store the first entries in this dialog. The Restore can be used to
undo a split if the Saturation Pressure becomes too large.
If this method proves to be unsuccessful more control over the Split by using the Advanced
function.
See also Decontamination Procedure(see Appendix B).

Automatching should be done after each split (see Step 6) to ensure that surface
properties are maintained.

More detail on alternative entries is given in Pseudo Properties(Section 7.3)

PVTP User Guide


22 - 30 Appendix B - Step by Step Guide

B2.4 Step 8: Select Match Parameters


Why Match?
The Equation of State model is not predictive. Without matching, the equations will work
mathematically. Unfortunately, the results will ,in many cases, diverge greatly from the
known characteristics of the fluid.
Matching ties the model to real points in the PVT behaviour of the fluid, giving the
equations less freedom to drift into unrealistic areas.

What is the minimum data to Match ?


An important principle to understand at this point is that the Equation of State does not
respect the fundamental law of conservation of mass. Figure 4 illustrates why this may be
a problem.
Appendix B - Step by Step Guide 23 - 30

approach causes can be very significant and will come out in many ways e.g. in the
inability to resolve reserves with production.

To avoid such problems we recommend that reservoir and separator matching must
always be done together Densities or density derived data must be included for reservoir
and surface to force a material balance on the system.
NOTE The EOS calculation initially calculates Zliquid and Zvapour. Densities are
calculated directly from the Zs. Matching Z matches density

The recommended minimum information to be used for matching is:

⇒ OILS
1 Bubble Point pressure
2 A measure of density (oil density or Zliquid) at reservoir or saturation pressure conditions
3 Some measure of Separator volumetric properties i.e. GOR or oil FVF
4 A measure of density (oil density or Zliquid) at separator or stock tank conditions

⇒ CONDENSATES
1 Dew Point pressure
2 A measure of density (gas density or Zvapour) at reservoir or saturation pressure
conditions
3 Some measure of Separator volumetric properties i.e. GOR or oil FVF
4 A measure of condensate density (oil density or Zliquid) at separator or stock tank
conditions
5 Liquid Dropout (CCE or CVD) from reservoir pressure to surface conditions

B2.4.1 How is Match Data entered?

or use icon

will bring up the match table dialogue. This consists of a series of tables one for each
measurement/calculation.

Any cell can be filled in with data. Blanks are allowed where data is not available or
unreliable.

Make sure all pressure steps are entered for SEP(Separator) and CVD(Constant Volume
Depletion).

Figure 5 6 7 and 8 illustrates the data used for a real condensate example.

PVTP User Guide


24 - 30 Appendix B - Step by Step Guide
Figure 5 Saturation Pressure

Figure 6 : Zgas at reservoir and saturation pressures

Petroleum Experts
Appendix B - Step by Step Guide 25 - 30

The value at reservoir pressure ensures that any deviation of compressibility above the
dewpoint is properly modelled

Figure 7 : Separator GOR and Stock Tank Oil Density

Note that all separator stages have been included as the final oil density depends on the
path to Stock Tank conditions.. With multiple stage separators it is best to match first on
the main stage. In addition, when GOR numbers are much smaller in the subsequent
stages,it is unlikely that these values are as accurate. We suggest that a lower
weighting.eg. 3 is given to these numbers. see help on Match Data Tables for Weighting
and Inclusion/Exclusion.

PVTP User Guide


26 - 30 Appendix B - Step by Step Guide

Figure 8 : CVD Liquid Dropout

The CVD process also includes all stages including the start point at the saturation
pressure value. Missing out any stage will alter the values for all stages below it.

There are many ways to approach dropout matching and no best way to do it. One thing to
keep in mind is that the values are not as accurately measured as density or saturation
pressure. For that reason the values should all be given a lower weighting e.g. 3. This
prevents important numbers like PSAT moving to help dropout to match. It is also better
not to start with all values included in the match. Give the program 2 or 3 representative
points, match to them and view the result. If required include more points until a reasonable
match is produced. See help on Match Data Tables(Section 7.8) for Weighting and
Inclusion/Exclusion

NOTE: for CCE dropout the values expected are relative to the volume at step not the
volume at reservoir volume . Most PVT reports give dropout relative to reservoir. To
convert the values devide the dropout figure by the relative volume at each pressure step.

When all entries are complete click on OK to move on to the next step.

More detail on alternative entries is given in MatchData Tables(Section 7.8)

Petroleum Experts
Appendix B - Step by Step Guide 27 - 30

B2.5 Step 9: Use Regression to Match Fluid

or use icon

Regression is a two stage process. In the first, the user must select which calculations
should be matched.
Selecting regression brings up the dialogue illustrated below:

Each column within the match table (Step 8) has an equivalent checkbox within this
dialogue.

It is recommended that all calculations with the exception of any CVD or GRAD variables
should be selected at once.
The total selected is displayed at point 4. Every calculation can be given a high , medium
or low weighting which changes its contribution to the overall error.

Unless the match value is suspect or of lower accuracy (e.g. a dropout), the weighting
should be left as high.
When the calculations have been selected, click on Regress... to move on to the next
stage

PVTP User Guide


28 - 30 Appendix B - Step by Step Guide

See Regression Match Data (Section 7. 8) for details on alternative selections.


The next stage is to select the parameters to be used during regression.

A typical Regression Parameter Dialogue is shown below :

Generalising a regression strategy is difficult. Fortunately,however, with the PVTP most oils
and condensates can be matched in a single shot. When using a full composition , it is
recommended that allTc Pcs should be selected for C1 and all components below. In
addition, any binary interaction coefficients should also be selected. See What Properties
to Use in Regression and Matching Viscosities for more information.

Vc is only used when viscosity is being matched (see Matching Viscosities)


Click on Regress to initiate the matching calculations. The process stops when a
maximum number of steps has been passed or the error term CHI falls to below 1e-09.The
process can be restated if not enough steps have been taken.
If the regression fails to converge satisfactorily, more component properties can be added.

See Regression for more information on options and strategies.


When the first round regression has been completed more difficult variables such as
dropout can be added and the process repeated.

Petroleum Experts
Appendix B - Step by Step Guide 29 - 30

B2.6 Step 10: Check and Refine the Fluid Characterisation


It is important to check and refine the model of the system.
Use the calculation menu options to check the values produced for the match parameters.
In addition , other non-matched parameters should be calculated and compared with the
PVT report values to test the validity of the model.

Remember that all the reported values will not be as of the same accuracy. For example,
small dropout values are difficult to measure.
Check the scatter of percentage dropout points using the Testpoints (Section 7.11) facility,
prior to deciding the weighting of the calculation (Step 9) and which point(s) should be
used for matching.

If an oil or condensate does not readily match using the method outlined here , our
experience has been that in many cases detailed investigation of the reported data has
shown an inconsistency. The error normally lies in the area of sampling and handling .

Compositional Gradient
Matching a compositional gradient to fix a pressure or other variable with depth can be
done See MatchData Tables (Section 7.9) for more information. This calculation is very
important if a significant gradient is anticipated or if there is a gas - oil contact within the
reservoir If modelling is to be done successfully, it is recommended that at least two
sampled points should be available within the oil leg.

The reason for this suggestion is that the gradient is a function of fluid density The
variability in oil density with depth may not be well enough characterised with only one
match point

Splitting can Help Compositional Gradient Matching


If matching a gradient becomes problematic, it is recommended that the Pseudo Splitting
function should be tried. The Compositional Gradient calculation is done on the basis of a
component's Molecular Weight. For the pseudos ,the individual species which will make up
the component are changing with depth. This should be represented as a change in
pseudo make-up and therefore Molecular Weight with depth. At present, however, within
PVTP, the pseudo is represented as having a fixed composition with depth. Splitting allows
the program to manipulate the new pseudos via their relative compositions to achieve the
Molecular Weight change.

PVTP User Guide


30 - 30 Appendix B - Step by Step Guide

B2.7 Step 11: Calculate, Report and Export


Characterising a fluid is not normally an end in itself. The aim is to make use of the model
produced in a way that helps us to understand and predict the effect of the fluid's PVT on
all aspects of its processing.

The main uses include


Calculating values not covered by well tests or laboratory measurements. Use the
calculation menu options (Section 8) to carry out any of the many calculation options
available with the PVT package.

Utilising Phase Envelope (Section 8.2) function to visualise the behaviour of the fluid over
a wide range of temperatures and pressures

Export (Section 3.12) the characterised composition to Prosper for compositional nodal
analysis (see Export /Prosper)

Calculation of Black Oil properties which can by exported to Prosper ,MBAL etc. in the form
of Black Oil Tables. This is particularly important for characterising condensates.(see
Export/Black Oil Tables and General Export in Section 3.12)

Use Gravitational Gradient (Section 8.9) to understand the changes of phase and
composition with depth within a reservoir. This can in many cases explain what sometimes
seems the unnatural behaviour of complex reservoirs. Connection between wells can be
confirmed. Peculiar changes in GOR etc. with production can be explained. If the PVT of a
reservoir is understood , everything else becomes clearer.

Use the Extract (Section 8.3.1) function to sample the composition of the oil or gas which
results from a process change (separator calculation) , reservoir depletion (CVD, DIFF or
DEPL) or change of depth (GRAD)

Reporting (Section 9) can be used to send compositions , regression information and


calculation results in an organised fashion to printers, clipboard, or spreadsheets.

Petroleum Experts
Appendix C
Decontamination
Procedure
NOTE
This procedure represents one way of decontaminating a sample. It may not be
applicable to all situations and the results cannot be guaranteed. The flexibility of
the program also allows other paths to a solution to be followed.

The object of this exercise is to identify the effects of a contaminant within a fluid and to
remove this contamination in a controlled manner.
What should be available is

the characteristics of the contaminated fluid i.e. a PVT report


an extended analysis of the contaminated fluid and
an estimate of what the fluid composition would be without the contaminant

What we are going to do is a match to the known characteristics with a split history that
reflects the addition of the contaminant.

This is done by using the Split Profile feature.

Matching gives the properties of the pseudo components and the split history identifies how
they were put together.

In the decontamination display the program breaks the matched fluid back down into the
many split parts along with compositions and properties associated with each part.

The user can then set the compositions to that of the uncontaminated fluid. When this is
done the program adjusts the compositions and properties to reflect the change and
recombines the split parts to workable pseudo components.

This new working composition can be used to generate data for an uncontaminated model.
2-7 Appendix C - Decontamination Procedure

STEP 1 Follow the Step by Step Guide until you reach step 5. A single C7+ pseudo
component should be sufficient for most fluids.

STEP 2. Enter the pseudo component MWt and SG. within the Pseudo Properties page
and click on the Advanced button within the Split/Profile area at the bottom of the
display.

STEP 3. Within the Advanced Splitting Dialog select the Follow Profile method using
the combo box provided above the table. click on the Setup Split Profile button.

Petroleum Experts
Appendix C - Decontamination Procedure 3-7

STEP 4. Within the Split Profile Dialog enter the detailed composition of the
contaminated fluid. Only the areas of strong contamination are required. The program
will fill in the rest with a standard distribution. Click on Exit and Save.

STEP 5. Back within the Advanced Splitting dialog click on Recalculate Split to
implement the profile.

PVTP User Guide


4-7 Appendix C - Decontamination Procedure

STEP 6. It is possible to undertake the tasks described as step 6 (Auto matching) and
step 7 (getting near reservoir PSAT)within the Step by Step Guide within this display.
Complete these operations now. this is preferable to exiting and coming back into the
Advanced Splitting dialog . The reason is that Advanced in the Pseudo Properties
Dialog applies to the last pseudo component. If splitting has been done, you must use
Restore the Original Numbers to get back to your starting point. When you are happy
with your entries click on Exit and Save.

STEP 7. The Stream now contains a set of partly matched pseudo components with a
full history of how they were put together. Continue to fully match this fluid as described
in the Step by Step Guide .

Petroleum Experts
Appendix C - Decontamination Procedure 5-7

STEP 8 When fully matched, select Decontaminate from the Data menu. This brings
up the Decontamination Control Dialog. The compositions presented are based on the
split history of stream. This will contain the profile created in Step 4. Click on Plot to
view the component distribution. the properties of the expanded pseudos are derived
form the matched pseudos. they therefore contain a measure of the effect of each
expanded component on the overall characteristics of the fluid.

STEP 9 Enter the estimated values for the composition of the undecontaminated fluid
in the New Mole% column. this can be derived from the amount and composition of the
contaminant and the original composition of the contaminated sample. Only the area of
obvious contamination needs to be entered. Click on Plot to view the results. Click on
the Quick Look button to view the effects of your entries. this option creates a
temporary stream containing the decontaminated fluid.

PVTP User Guide


6-7 Appendix C - Decontamination Procedure

STEP 10. To complete the decontamination process click on Decontaminate. The


Output Selection Dialog which appears allows you to pick between using the existing
stream or creating a new one. It would normally be better to create a new version as it
allows your starting point to be kept for comparison and future reference.

STEP 11. On returning to the Decontamination Control Dialog the display will contain
information on the results of the decontamination.
The decontamination calculation proceeds as follows:
The individual component mole percents are set equal to the New Mole%
values , where defined.
The remaining component mole percents are adjusted to make up the 100%
total and to follow the trend of the original values.
The new full composition appears as the Cald. %.
The Calcd% are used in conjunction with the initial properties to generate a new
set of properties for each component and a combined version for each of the
pseudo components. The pseudo component start and end values can be seen
by clicking on the View/Change button.

The trend in the individual compositions can be seen by using the Plot button.

Petroleum Experts
Appendix C - Decontamination Procedure 7-7

STEP 12 The decontamination procedure is now complete. Click on Exit and Save and
then File|Save to store the results.

STEP 13 An effort should be made to confirm the accuracy of the fluid model against
any other known properties of the reservoir fluid e.g. field separator data when it
becomes available or the reservoir fluid density from RFT measurements.

PVTP User Guide


Appendix D PVTP OPEN
SERVER Manual
This Appendix describes the OPENSERVER features within PVTP 6. It is envisaged
that this information will appear within the general IPM OPENSERVER manual in
subsequent major releases.

D1 Introduction
This user guide is designed to explain how to use OPENSERVER to access PVTP from
external programs.
This document gives an overview of the uses of the OPENSERVER. It then gives full
details of how to use the feature in PVTP.

D1.1 About This Guide


The guide assumes you are familiar with basic Windows operations and terminology.
It also assumes you are familiar with PVTP. It would also be helpful if you are familiar
with using VBA macros in Excel.

The screen displays used in this guide are taken from the examples provided with the
software. 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 provided.

D1.2 What is in this guide


Chapter 2, "Overview," summarises the OPENSERVER feature. It explains the
potential uses of the OPENSERVER and how it can be used with external
programs. It should provide enough information to assess if the feature can be
used to solve a particular problem without understanding the details of its
operation.

Chapter 3, "Support," defines the responsibilities of Petroleum Experts with


respect to supporting the OPENSERVER.

Chapter 4, "Using the OPENSERVER," describes the technical details of linking


external programs to Petroleum Experts products using the OPENSERVER.

Chapter 5 PVTP and the OPENSERVER," describes the features specific to the
use of PVTP with the OPENSERVER
2 -37 Appendix D -–PVTP OPENSERVER Manual

D1.3 How To Use This Guide


Read chapter 2 to gain an overview of the OPENSERVER feature. This should be
sufficient to decide if the OPENSERVER can be used to solve a particular computing or
technical problem.

If you decide that the OPENSERVER may be of use, it is necessary to read chapter 4 to
understand how to implement an OPENSERVER solution.

D1.4 Symbols and Conventions


Throughout the user guide, special fonts and/or icons are used to demonstrate
specific steps, instructions and procedures in the program.

PETEX program The term PETEX program is used when the comment is applicable
to MBAL or GAP.
ALL CAPS Represent DOS directories, file names, and commands.
Italics Used to highlight certain points of information.
Keycap Bold fonts are used to indicate a specific action to be taken.
For example: "Click Done to exit the window."
Menu Command To avoid repeating the phrase "Click the File menu and choose the
Open command," we use the File - Open convention instead.
➲ Emphasises specific information to be entered or aware of.
Step-by step instructions are marked by this keyboard icon.

This symbol is a reminder to click the RIGHT mouse button. Clicking


the right mouse button, performs specific functions in MBAL,
depending on the active dialogue box or plot. If you do not have a
right mouse button, holding down the SHIFT key while you click the
mouse button performs the required function.

Petroleum Experts Ltd


Appendix D - PVTP OPENSERVER Manuall 3 - 37

D2 Overview
The OPEN SERVER feature is designed to provide an Open Architecture for
Petroleum Experts products. This allows PETEX programs to be directly accessed
and driven by other programs.

Specifically, the OPENSERVER will allow other programs (such as Excel, programs
written in Visual Basic) to access public functions in PETEX programs. These can
then be accessed by an external program in an automated procedure.

D2.1 Basic Functions


There are a number of public functions that have been made available. However the
three most important functions are as follows.

D2.2 GetValue
This function allows an external program to query a data value in a PETEX program.
It should be possible to obtain the value of any data item that can normally be viewed
using the user interface of the PETEX programs.

Each data item is defined by a unique text string.

D2.3 SetValue
This function allows an external program to change a data value in a PETEX
program. It should be possible to change the value of any data item that can normally
be viewed using the user interface of the PETEX programs.
It should be possible to build a data set from scratch using the SetValue function.

However, it is recommended that the user interface is still used to build parts of a
data set which do not require any automation. This will allow the normal quality
checking to take place which is a very important aspect of the model building
process.

Each data item is defined by a unique text string.

D2.4 DoCommand
This function allows calculations to be performed in a PETEX program. Each
calculation type is defined by a unique text string.

Only a subset of calculations available via the normal user interface of the PETEX
products are available using the OPENSERVER. In particular, the DoCommand
function supports those calculations which are applicable to automated use e.g. a
GAP prediction. However it generally does not support those calculations that require
the user interface for correct use e.g. MBAL graphical matching.

PVTP User Guide


4 -37 Appendix D -–PVTP OPENSERVER Manual

D2.5 Calling the Functions


There are two methods of calling the public functions. The following sections
describe the two methods. Note that these sections only summarise how to call the
functions - the exact syntax is described in the Using OPENSERVER section (Section
4).

D2.6 Automation
The OPENSERVER feature can be accessed using Automation. This is a Microsoft
Windows standard for communicating between programs.

The OPENSERVER is an Automation server. This means that the public functions can
be called from any program that can act as an Automation client.
There are many programs that can act as an Automation client and can therefore be
used to call the public functions in the PETEX programs. These include:

Any VBA macro. These macros are available in Excel, Access and many other
Microsoft products.

Visual Basic programs can be written to act as an Automation client and


therefore call the public functions.

C++ programs can also be written to act as an Automation client and therefore
call the public functions.

Many other products can act as Automation clients. Check their individual
documentation.

D2.7 Batch File


To avoid dependence on Automation, it is also possible to call the public
functions in the PETEX programs using a simple batch file.

The functions required are typed into a text file. A program is supplied by
Petroleum Experts (PXBATCH) which will interpret the text file and call the
functions in the PETEX programs. It also writes the output of the GetValue
function to another text file which can be viewed afterwards.

Petroleum Experts Ltd


Appendix D - PVTP OPENSERVER Manuall 5 - 37

D3 Potential Uses
This section outlines some of the possible uses of the OPENSERVER. It is not an
exhaustive list but should give some idea of its possibilities.

D3.1 Batch Runs


Consider a situation where you have set up a prediction calculation in MBAL.
However it would be of interest to check the final recovery for a range of values for
the original oil in place.

You could create a spreadsheet in Excel which lists all the OOIPs that you want to
try. Then write a VBA macro within Excel which:-

Gets the first OOIP value from the spreadsheet and sets it in the MBAL tank
Runs a production prediction
Queries the final recovery from the production results and writes into the
spreadsheet.
Repeat for the next OOIP and so on…

If there is a large number of OOIP values to try or the calculation is particularly slow,
this macro could be run overnight.

D3.2 Custom Reporting


Although PETEX products provide a variety of report formats, it is possible that you
require a specific layout for your reports. A VBA macro within Excel can be written to
query the required values from a PETEX product and then written in the required
format to the spreadsheet.

PVTP User Guide


6 -37 Appendix D -–PVTP OPENSERVER Manual

D3.3 Data Import/Export


The OPENSERVER can be used for transferring data to or from a database and
PETEX programs. The client program can use any technique to access the values in
the database (e.g. ODBC, DAO, SQL) and then transfer them with OPENSERVER. For
example, if you have production data stored in an Access database, you can write a
VBA macro in Access to query the data from the database and then use the
OPENSERVER to set the data in the MBAL data set (an example of this is available in
the installed MBAL examples – OPENSERV.MDB).

D3.4 Enhanced Prediction Runs in GAP


Using the OPENSERVER for GAP, the prediction can be run one step at a time. This
means that values can be changed during the prediction. For example, you could
write a VBA macro to change the PI when an acid job has been performed on a well.

D3.5 Running PETEX programs with other


engineering software applications
The OPENSERVER can be used to run the PETEX programs in conjunction with other
software applications and exchange data between them. For example, a visual basic
program or batch file could be used to successively:

Run a process simulator to calculate a feed separator pressure

Set the separator pressure in GAP

Optimize the production system in GAP

Pass the GAP rates onto the process simulator

Run the process simulator and so on…

Petroleum Experts Ltd


Appendix D - PVTP OPENSERVER Manuall 7 - 37

D4 Support
The main strength of the OPENSERVER is that users are now free to develop their
own applications which utilise the public functions within PETEX products. However
this does mean that a user of the OPENSERVER will require more computing
knowledge than a user of the standard PETEX programs. This is particularly the case
where a user writes a client application in VBA or Visual Basic. The user is expected
to have (or be trained in) the requisite computing skills to write these client
applications. Petroleum Experts will not be able to undertake to train users in these
computing skills.

The boundary of the PETEX products and the users applications needs to be defined
with respect to support provided by Petroleum Experts of the OPENSERVER feature.

Firstly, as with normal support, a maintainance agreement between the user and
Petroleum Experts must be in place.

Unfortunately, Petroleum Experts will not be able to undertake development of VBA


macros, batch files or other OPENSERVER clients for a particular user. The strength of
the feature is to allow the user to implement these client applications without any
further input by Petroleum Experts.

Similarly Petroleum Experts will be unable to assist in fixing bugs in users VBA
macros, batch files or any other OPENSERVER client.

Petroleum Experts will undertake to support any user who can demonstrate (through
a simple fragment of a batch file or VBA macro etc) that a public function call to a
PETEX product fails to work correctly.

PVTP User Guide


8 -37 Appendix D -–PVTP OPENSERVER Manual

D5 Using the OPENSERVER


This section describes in detail how to access the public function in PETEX
programs.

The first section describes how we identify each data item in the PETEX programs
using a variable text string.

The second section describes how to call the public functions using Automation. We
first describe the framework needed to use the OPENSERVER, then each function is
described in detail.
The third section describes how to call the public functions using a batch file system.
We describe the framework and then describe each function in detail.
This section does not deal with specific issues relating to particular products e.g.
GAP or PVTP.

To use the public function for a particular PETEX program you will need the program
installed on your hard disk and valid security authentication e.g. security key or
hardlock.

When the public functions are being called (either using Automation or a batch file),
the appropriate PETEX product must be running. However, it does not need to be
visible on the screen (i.e. it can be minimized).

D5.1 Variable Text Strings


Variable text strings describe each data item in the PETEX programs. It is a string of
characters which is broken into a number of subnames separated by full stops. As
one moves from left to right along the string the definition of the variable becomes
more detailed.

The variable text string of any data item in PVTP always begins with the subname
“PVT”. Similarly, any data item from GAP , PROSPER or MBAL will begin with the
subname “GAP” , “PROSPER” or “MBAL” respectively.
The rest of the string depends on the section of the program. There may be several
subnames if the data item is part of a complex hierarchy. For example, for the start
time in the material balance prediction we may have
“MBAL.MB.PRED.STARTTIME". For this text string:

MBAL – From the MBAL program


MB – In the material balance tool
PRED – In the prediction section
STARTTIME – Start time

For collections/lists the rules become more complex. Take the example of the list of
tanks in MBAL. The particular tank pressure can be specified in three ways:-
"MBAL.MB.TANK.PRESSURE" - In this case we do not specify any particular tank. It
will use the currently selected tank in the collection. This should only be used if there
is known to be only one tank in the collection.
"MBAL.MB.TANK[0].PRESSURE" - This will use the 0th tank in the list - this is
a zero based index. This is most likely to be used if we are iterating through
the list of tanks.

Petroleum Experts Ltd


Appendix D - PVTP OPENSERVER Manuall 9 - 37

"MBAL.MB.TANK[{S-Tank}].PRESSURE" - This specifies the tank by the name. Note


that we enclose the name by curly brackets to avoid any confusion with names made
up with digits only.
We can use GetValue to retrieve the number of objects in a collection. In this case
we would send the variable text string "MBAL.MB.TANK.COUNT".
All variable text strings are case insensitive i.e. it does not matter if you use lower or
upper case characters.

For specific details of the variable text strings for each PETEX program, refer to the
program specific sections below.

D5.2 Automation
This section describes how to access the public functions using Automation. This is
a Microsoft Windows standard (formally known as OLE Automation). This method
requires software which can act as an Automation client to call the public functions.
Probably the most commonly used example of such an Automation client that is
used in the engineering industry is the VBA macro language within Excel. We will
therefore demonstrate how the public functions are called by such macros – the
same rules should extend to other Automation clients.

Rather than describing the functions in isolation, an example of an Excel VBA macro
is presented that uses all the available public functions. Each function within this
example can then be described.

PVTP User Guide


10 -37 Appendix D -–PVTP OPENSERVER Manual

D5.2.1 Example Macro


This example performs a simple set of operations in the MBAL program. These
include:

Open the OIL.MBI file


Change the original oil in place to a new value
Run a prediction
Get the first oil rate and display it in the spreadsheet.

This macro is available in the installed MBAL examples, OPENSERV.XLS.


The macro is split into a number of subroutines and functions. The main subroutine is
called DoAll(). There are five other subroutines and functions which allow calls to be
made to the PETEX public functions.
Option Explicit
Dim Server As Object
Dim AppName As String

Sub DoAll()
Set Server = CreateObject("PX32.OPENSERVER.1")
AppName = "MBAL"
DoCmd "MBAL.OPENFILE=C:\PETEX\SAMPLES\OIL.MBI"
DoSet "MBAL.MB.TANK.OOIP", "250.0"
DoSlowCmd "MBAL.MB.RUNPREDICTION"
Range("C11") = DoGet("MBAL.MB.TRES[2][0][0].OILRATE")
Set Server = Nothing
MsgBox "Macro completed"
End Sub

Sub DoCmd(Cmd)
Dim lErr As Long
lErr = Server.DoCommand(Cmd)
If lErr > 0 Then
MsgBox Server.GetErrorDescription(lErr)
Set Server = Nothing
End
End If
End Sub

Sub DoSet(Sv, Val)


Dim lErr As Long
lErr = Server.SetValue(Sv, Val)
lErr = Server.GetLastError(AppName)
If lErr > 0 Then
MsgBox Server.GetErrorDescription(lErr)
Set Server = Nothing
End
End If
End Sub

Function DoGet(Gv As String) As String


Dim lErr As Long
DoGet = Server.GetValue(Gv)
lErr = Server.GetLastError(AppName)
If lErr > 0 Then
MsgBox Server. GetErrorDescription(AppName)
Set Server = Nothing
End
End If
End Function

Sub DoSlowCmd(Cmd)
Dim StartTime As Single
Dim EndTime As Single
Dim CurrentTime As Single
Dim lErr As Long
Dim bLoop As Boolean

lErr = Server.DoCommandAsync(Cmd)
If lErr > 0 Then

Petroleum Experts Ltd


Appendix D - PVTP OPENSERVER Manuall 11 - 37

MsgBox Server.GetErrorDescription(lErr)
Set Server = Nothing
End
End If
While Server.IsBusy(AppName) > 0
StartTime = Timer
EndTime = StartTime + 2
Do
CurrentTime = Timer
DoEvents
bLoop = True
Rem Check first for the case where we have gone over midnight
Rem and the number of seconds will go back to zero
If CurrentTime < StartTime Then
bLoop = False
Rem Now check for the 2 second pause finishing
ElseIf CurrentTime > EndTime Then
bLoop = False
End If
Loop While bLoop
Wend
lErr = Server.GetLastError(AppName)
If lErr > 0 Then
MsgBox Server.GetErrorDescription(lErr)
Set Server = Nothing
End
End If
End Sub

Function DoGAPFunc(Gv As String) As String


AppName = “GAP”
DoSlowCmd Gv
DoGAPFunc = DoGet("GAP.LASTCMDRET")
End Function

D5.2.2 Framework
There are only a few lines that need to be in an Excel macro to use the OPENSERVER
Firstly before using any of the public functions, you must declare an object through
which you will communicate with the PETEX programs:

Dim Server As Object

Next, you must connect the object to the OPENSERVER using the line:

Set Server = CreateObject("PX32.OPENSERVER.1")

Once the server is connected, you can use the Server object to call any number of
functions from any or all of the PETEX programs, e.g.:

Server.DoCommand(Command1)
Server.DoCommand(Command2)
Server.GetValue(Var1)

Once you have finished calling the public functions in your macro, you may close the
server object using the line:

Set Server = Nothing

These can be seen in the DoAll() subroutine above.

PVTP User Guide


12 -37 Appendix D -–PVTP OPENSERVER Manual

D5.2.3 DoCommand
This function is used to perform calculations (and other functions such as file opening
and saving) in the PETEX programs. Only a subset of the calculations available
using the user interface are available. The calculations that are not supported are
often those that require some graphical interaction e.g. graphical history matching in
MBAL.

In the above example, the DoCommand function is handled by the macro subroutine
DoCmd(). It is used in the DoAll() subroutine to open the OIL.MBI file. The command
to be performed is determined by the input text string. In our example this is
“MBAL.OPENFILE=C:\PETEX\SAMPLES\OIL.MBI” which tells MBAL to open the
specified file name. Check the following product specific sections describing each
PETEX program for a list of possible commands.
The return value of DoCommand indicates any error status for the function call. If the
return value is zero then the command completed with no error. If the return value is
a positive number, an error occurred in the command and the number indicates the
nature of the error.

The DoCmd() macro subroutine checks the return value of DoCommand() and if a
problem is detected, it calls another PETEX public function called
GetErrorDescription(). This function returns a description of the error which can then
be displayed to the user of the macro.

Unless you have good reason to do otherwise, it is recommended that you re-
use the DoCmd() macro subroutine in the example macro for all your own
applications as it already has error handling built in.

D5.2.4 SetValue
This function is used to set the value of a data item. It should be possible to change
most of the values that can normally be accessed via the user interface. Each
variable is identified by the unique text string.

In the above example, the SetValue function is handled by the macro subroutine
DoSet(). It is used in the DoAll() subroutine to change the value of the initial oil in
place to 250.0. The variable to be changed is determined by the first input text string.
The new value for the variable is passed in the second input text string.
This function expects the value to be in the units currently displayed in the user
interface. It is the responsibility of the user writing the macro to ensure that the
second text string contains a valid number if the data item is numerical.

Unlike the DoCommand public function, the SetValue function does not return an
error number. As can be seen in the example macro subroutine DoSet(), you must
call another public function, GetLastError(), to check if any error occurred. This will
return zero if the last public function call was successful or an error number if not.

Unless you have good reason to do otherwise, it is recommended that you re-
use the DoSet() macro subroutine shown in the example macro for all your own
applications as it already has error handling built in.

Petroleum Experts Ltd


Appendix D - PVTP OPENSERVER Manuall 13 - 37

D5.2.5 DoCommandAsync
This function is a variation of the DoCommand function. It is nearly always used in
conjunction with the IsBusy() function.
When a VBA macro is run, it executes and completes each line before moving onto
the next line. So when you call the DoCommand function for a long prediction, it may
take several minutes (or even hours) before the VBA can move onto the next line in
the macro.

Unfortunately, VBA was designed for use with simple functions that take only a few
seconds. If a function is called that takes more than one minute to complete, a
timeout error in Excel may occur depending on operating system, Excel version,
setup etc..

The DoCommandAsync function allows you to call functions that take a long time to
complete without any risk of timeouts in your VBA. When you call
DoCommandAsync, the OPENSERVER starts the calculation in the PETEX program
but lets the VBA carry immediatley on to the next line in the macro. This avoids the
timeout error in Excel.

Unfortunately it introduces another problem. What if the next line in the macro was a
call to the GetValue function to get the results of the calculation? The macro is likely
to try to get the calculated value before the calculation is finished! So the VBA still
needs some way of knowing when the calculation has finished.
Therefore it is usually necessary to append some VBA code after a call to
DoCommandAsync which loops until the calculation is finished. The inserted code
uses another function called IsBusy() to check if the calculation is finished.

This VBA code to do this is in the macro subroutine DoSlowCmd() in the example
macro. The code loops round until the IsBusy function returns a value greater than
zero. The only input argument is the name of the PETEX program in which the
calculation was called. Within the loop the code will wait 2 seconds before looping
again. It also calls the VBA function, DoEvents, which will allow other windows
program to work whilst the VBA is waiting for the calculation to finish.

Unless you have good reason to do otherwise, it is strongly recommended that


you re-use the DoSlowCmd() macro subroutine shown in the example macro
for all your own applications as it already has error handling built in as well as
the code to wait for the function to finish.

D5.2.6 GetValue
This function is used to get the value of a data item. It should be possible to query
most of the values that can normally be accessed via the user interface. Each
variable is identified by a unique text string.

In the above example, the GetValue function is handled by the macro function
DoGet(). It is used in the DoAll() subroutine to get the value of the first oil rate in the
prediction tank results. The variable to be retrieved is determined by the input text
string. The return value of the function call is another text string containing the value
of the data item. If the value is numerical data, the return text string will contain the
formatted number – this avoids having different functions for different data types. The
value will be returned in the units currently displayed in the user interface.

PVTP User Guide


14 -37 Appendix D -–PVTP OPENSERVER Manual

As with the SetValue function, you must use the GetLastError function to check for
errors in the SetValue function. Note that in the macro subroutine DoGet(), we use a
different function to get the actual error message – GetLastErrorMessage(). This
function returns the error message corresponding to the last public function call for
the application specified by the input argument. If the last public function call was
successful, it will return a blank error message.

Unless you have good reason to do otherwise, it is recommended that you re-
use the DoGet() macro function shown in the example macro for all your own
applications as it already has error handling built in.

Petroleum Experts Ltd


Appendix D - PVTP OPENSERVER Manuall 15 - 37

D5.3 Batch File


This section describes how to access the public functions using a batch file. Each
command is typed into an ASCII file. A program is supplied by Petroleum Experts
which reads this ASCII file, calls the public functions in the PETEX programs and
writes the output to another ASCII file.

D5.3.1 Running a Batch File


The first step to calling the public functions from the batch file is to create the batch
file itself. This is a simple ASCII file which can be created using NOTEPAD.EXE. The
only point to note is that when you save the batch file it should have the file extension
PXB e.g. TEST.PXB.
Each public function to be called should be listed on a separate line. Comment lines
can be entered by starting the line with a # character e.g.
# This is my first batch file
# 11th January 1999

The details of how to list the public functions is shown in the following sections.
Once the batch file has been created and the functions listed in the file, we can run
the batch file. First run the latest version of the PETEX program you are going to use
e.g. MBAL and GAP. Next copy the file PXBATCH.EXE into the same directory as
your PXB batch file. This file can be found in your latest installation of the PETEX CD
– probably C:\PETEX. Finally run the PXBATCH program with the PXB file name as
an argument. For example, if the batch file is called TEST.PXB, run:

PXBATCH –b TEST
PXBATCH will call each public function in turn. Two files will be created by
PXBATCH.

The first is called PXBATCH.LOG. This file will contain any error messages from the
batch run so it is important to examine the file after every batch run to check for
errors.

The second file will have the same file stem as the batch file but will have the
extension PXR. In the above case, the second output file will be called TEST.PXR.
This file will contain any output from the public functions.
An example batch will be presented which shows calls to all the public functions in
the PETEX products. Then each function used in the example batch file will be
described in turn.

The example batch file is as follows (this file is available in the installed MBAL
examples, MBALTEST.PXB).:-
# Example batch file
PRINT Example batch file output
PRINT
docommand MBAL.OpenFile("C:\PETEX\SAMPLES\OIL.MBI")
setvalue MBAL.MB.TANK.OOIP 250.0
docommand MBAL.MB.RUNPREDICTION
getvalprint MBAL.MB.TANK.OOIP
PRINT "First oil rate ="
PRINTTAB
PRINTTAB
getvalue MBAL.MB.TRES[2][0][0].OILRATE
PRINT " bbls/day"
PRINT

PVTP User Guide


16 -37 Appendix D -–PVTP OPENSERVER Manual

PRINT End of example batch file output

The output PXR file from the above batch file is as follows:
250 ! MBAL.MB.TANK.OOIP
First oil rate = 16516.8 bbls/day
End of example batch file output

D5.3.2 Formatting Commands


There are two commands, PRINT and PRINTTAB that can be used to format and
write text to the output PXR file.

The PRINT statement can be used in two ways.


If you append some text to the PRINT statement, the text will be printed out to the
PXR file. You may enclose the text in quotations if desired.
If you use the PRINT command without any text, it will move the output onto the next
line in the PXR file.

For example, consider the last three lines of the example batch file. The first of these
PRINT statements prints the text “ bbls/day”. The second PRINT statement moves
the next output onto the next line. The third PRINT statement displays the text “End
of example batch file output” on the next line of the PXR file. Note that if the second
PRINT statement was not included, the output PXR file would look like:
…..bbls/dayEnd of example batch file output

The second formatting command is PRINTTAB. This command simply writes a tab
character to the PXR file.

D5.3.3 DoCommand
This function is used to perform calculations (and other functions such as file opening
and saving) in the PETEX programs. Only a subset of the commands available using
the user interface are available. The commands that are not supported are those that
require some graphical interaction e.g. graphical history matching in MBAL.

In the example, DoCommand is used twice. The first time it is used to open a data
file. The second time it is used for running a prediction. The text string after the
DoCommand statement describes the command to be performed.
The text string always starts with the name of the program in which the calculation is
to be done. The rest of the text string describes the command – check the following
sections describing each PETEX program for a list of possible calculations.

There is no output to the PXR file for this command. If there is any error, a message
will be written to PXBATCH.LOG.
Note that the abbreviation dc can be used in the batch file instead of DoCommand.

D5.3.4 SetValue
This function is used to set the value of a data item. It should be possible to change
most of the values that can normally be accessed via the user interface.
In the example we use SetValue once to change the original oil in place to 250.0.
The first text string after SetValue defines the variable to be changed. The second

Petroleum Experts Ltd


Appendix D - PVTP OPENSERVER Manuall 17 - 37

text string defines the new value of the variable. This function expects the value to be
in the units currently displayed in the user interface.

There is no output to the PXR file for this command. If there is any error, a message
will be written to PXBATCH.LOG.

Note that the abbreviation sv can be used in the batch file instead of SetValue.

D5.3.5 GetValue and GetValPrint


These two functions are both used to get the value of a data item and print it to the
PXR output file. The only difference between the two functions is the format of the
output to the PXR file.

GetValPrint is used once in the example batch file to get the value of the original oil
in place – this is to verify that the preceding SetValue worked correctly. The text
string after GetValPrint defines the variable that you wish to write to the output PXR
file. If the function works correctly, the variable is written to the PXR file followed by
the variable text string, separated by an exclamation mark. It also moves the output
onto the next line so any further Print functions will start on the next line. This format
can be seen in the example PXR file above.

GetValue is also used once in the example batch file to output the first oil rate in the
prediction tank results. The function is called as for GetValPrint. The only difference
is that this function simply writes the value of the variable to the output PXR file
without any formatting. This means that you will need to use other Print commands to
format the output – as shown in the example batch file.
Note that the abbreviation gvp can be used in the batch file instead of GetValPrint.
The abbreviation gv can be used instead of GetValue.

PVTP User Guide


18 -37 Appendix D -–PVTP OPENSERVER Manual

D6 PVTP and the OPENSERVER

D6.1 OverView
OPEN SERVER is designed to provide an Open Architecture for Petroleum Experts
products. This allows the programs to be accessed and driven by other programs
such as Excel.For a fuller description of the OPENSERVER, the user should consult
the manual on this subject which is distributed with the suite of programs.

In common with all the programs, the labels used within the OPENSERVER can be
visualised by pressing Ctrl while doing a mouse right click when over a specific dialog
item.

A comprehensive series of Excel spreadsheets are distributed with PVTP. All major
labels, methods and calculations are illustrated within these files.

The main areas that can be accessed via the PVTP OPENSERVER are:

BLACKOIL
OPTIONS
STREAMBASE[stream no. or stream name]
STREAMRUN[stream no. or stream name]
CALCUL[stream no. or stream name]

Note
At present, no access is given to matching within the blackoil or equation of state
models.

Petroleum Experts Ltd


Appendix D - PVTP OPENSERVER Manuall 19 - 37

D6.2 File and Streams


PVTP has a Multiple Document Interface(MDI) . This means the program can load
more than one *.pvi file. The files are manipulated using the following commands:

OPENFILE Opens a pvi file


SAVEFILE Saves the active file with the given file name
CLOSEFILE Closes the active file without saving it
SHUTDOWN Closes all files without saving them
SETACTIVEFILE Sets named file as the active document
UPDATEDISPLAY Instucts program to update the main screen with the
latest active file data

The file commands are demonstrated in the OPENPVT.XLS sample Excel file.
Each file can contain multiple streams. Each stream contains Base, Runtime and
Calculation data. Individual streams can be accessed by way of a zero-based index
or the stream name.

A typical string to get a piece of stream data would be:

PVT.STREAMBASE[{WellStream}].COMPOSITION[1]

This accesses the composition of the second component within the stream called
WellStream. Details of stream contents are described in Sections 8.4 and 8.5.

The stream commands are demonstrated in the OPENPVT.XLS sample Excel file.

Streams can be manipulated using the following:

CREATE_EMPTY_STREAM Adds an empty stream to the active file


SET_ACTIVE_STREAM Sets the active stream within the active
file
COPY_STREAM Copies an identified stream within the
active file
COPYSTREAMBASE_TO_STREAMRUN Copies BASE data to RUNTIME for the
identified stream
COPYSTREAMRUN_TO_STREAMBASE Copies RUNTIME data to BASE for the
identified stream

PVTP User Guide


20 -37 Appendix D -–PVTP OPENSERVER Manual

D6.3 BLACKOIL
This section deals with access to the input data and calculations within the Blackoil
model of the PVTP program. Use of the model and data is demonstrated within the
OPEN_BLACKOIL_CALC.XLS sample Excel file.
The setting of the file to a blackoil model is done within the options section with the
DoSet command.

"PVT.OPTIONS.METHOD” with value BLACKOIL"


The type of model is set by
“PVT.OPTIONS.FLUIDTYPE” to “OIL”,”GAS” or “CONDENSATE”
There is only one set of blackoil data per file so no stream indication is required. To
obtain a piece of blackoil data the command string would be:
"PVT.BLACKOIL.SEPPRESS".

CORRPB Correlation for PB,Rs,Bo


CORRUO Correlation for Oil Viscosity
CORRUG Correlation for Gas Viscosity
SOLGOR Solution GOR
OILGRAV Oil Gravity
GASGRAV Gas Gravity
SEPPRESS Separator Pressure
SEPTEMP Separator Temperature
SEPGOR Separator GOR
SEPGASGRAV Separator Gas Gravity
TANKGOR Tank GOR
TANKGASGRAV Tank Gas Gravity
CGR Condensate to Gas Ratio
H2S H2S Concentration
CO2 CO2 Concentration
N2 N2 Concentration
DEWPOINT Condensate Dewpoint
RESTEMP Reservoir Temperature
RESPRESS Reservoir Pressure
WATER_SALINITY Water Salinity
PVT_MATCHED Flag to indicate that PVT is matched

Petroleum Experts Ltd


Appendix D - PVTP OPENSERVER Manuall 21 - 37

D6.4 OPTIONS
This section deals with access to common options within the active PVTP file. The
options deal with many aspects of how and where models are used, which
calculations are carried out etc.

The Options sheet within the the OPENPVT.XLS sample Excel file, gives an
indication of how these data points can be accessed.
A typical DoSet command would be
" PVT.OPTIONS.VISCMETHOD” with value “LOHRENZ” sets the model for EoS
calculations to Lohrenz Bray Clark.

The options available include:

METHOD Defines the model being used i.e. BLACKOIL or EOS


FLUIDTYPE Defines the blackoil model to be used i.e OIL,GAS or
CONDENSATE
SEPARATORTYPE Defines the number of separators within a blackoil
model i.e. SINGLE ot TWO
EOSTYPE Defines the equation to be used for the EoS model
i.e. PENGROB or SRK
COMPANY Gives access to the Company string within the
Options Dialog
FIELD Gives access to the Field string within the Options
Dialog
LOCATION Gives access to the Location string within the Options
Dialog
PLATFROM Gives access to the Platform string within the Options
Dialog
ANALYST Gives access to the Analyst string within the Options
Dialog
COMMENT Gives access to the Comment string within the
Options Dialog
CALC_TYPE Sets the active calculation. See Calculations Section
8.7 for more details
CALC_TYPE Sets the flash type for mixtures with water or solids to
MULTIPHASE or TWOPHASE
VISCMETHOD Sets the viscosity model for EoS calculations
USE_VOLSHIFT Switches volume shift on and off during EoS
calculations
CALC_PSAT_IN_CMPGRAD Flag to calculate Saturation Pressure during
compositional gradient calculation
CALC_PSAT_IN_CCE Flag to calculate Saturation Pressure during CCE
calculation
CALC_THERMALCOND_IN_ Flag to calculate Thermal Conductivity during CCE
CCE calculation
USE_ADV_PHASE_DETEC Preferences|Calc Tolerences: Use advanced phase
TION detection flag
SHOW_CALCS Preferences|Calc Tolerences: Show calculated
values during calculation flag
OPTIMISE_REGRESSION Preferences|Calc Tolerences: Optimise calculations
during regression flag
OPTIMISE_CVD_REGRESS Preferences|Calc Tolerences: Optimise CVD
ION calculation during regression flag
REGRESS_MAXSTEPS Preferences|Calc Tolerences: Maximum number of
iterations during regression
PHASE_CALC_MAXITER Preferences|Calc Tolerences: Maximum number of
iterations during phase check
PHASE_CALC_MINPRESS Preferences|Calc Tolerences: minimum pressure
during phase check
PHASE_CALC_VAPTEST Preferences|Calc Tolerences: vapour fraction used as

PVTP User Guide


22 -37 Appendix D -–PVTP OPENSERVER Manual

test in phase check


OVERRIDE_PHASE_CALC Preferences|Calc Tolerences: override phase check
and force phase
FIXED_PHASE Preferences|Calc Tolerences: forced phase after
phase check override
FORTLIB_ITERATIONS Preferences|Calc Tolerences: Fortran library
maximum iterations
FORTLIB_PRECISION Preferences|Calc Tolerences: Fortran library
calculation precision
SHOWPLOT_POINTS Preferences|Calc Tolerences: Show points on plots
CALC_GOR_CORRECTED_ Flag to correct FVF and GOR within CCE, CVD etc.
WITH_SEPS through a separator train
REGR_GOR_CORRECTED Flag to correct FVF and GOR through a separator
_WITH_SEPS train during regression
TARGET_GOR_CORRECTE Flag to flash through a separator train to get gas and
D_WITH_SEPS oil used in Target GOR calc.
USE_INDIVIDUAL_SEP_CO Flag to use individual stream values for separator
RRECTION correction.
VOLSHIFT_D Volume Shift D parameter
VOLSHIFT_E Volume Shift E parameter
ECLIPSE_OILTYPE Eclipse Blackoil Export:Option for oil
ECLIPSE_GASTYPE Eclipse Blackoil Export:Option for gas
ECLIPSE_WATERTYPE Eclipse Blackoil Export:Option for water
WAXTEMP_NUMSTEPS Wax Appearance Temperature Calc.:Max number of
steps
WAXTEMP_MINTEMP Wax Appearance Temperature Calc.:minimum
temperature
WAXTEMP_MAXTEMP Wax Appearance Temperature Calc.:maximum
temperature
WAXTEMP_TESTSOLIDS Wax Appearance Temperature Calc.:solids value
used as test
WAX_MODEL Selects model used in wax calculations
HYDRATE_METHOD Selects method used in hydrate calculations
HYDRATE_INHIBITOR Selects inhibitor used in hydrate calculations
HYDRATE_USE_INHIBITOR Flag to say whether inhibitor is used in hydrate
calculations
HYDRATE_USE_INHIBITOR Flag to say whether hydrate II is calculated in
hydrate calculations
SLIMTUBE_TEST_RECOVE Slimtube calculation test value for recovery
RY
SLIMTUBE_TEST_POREVO Slimtube calculation test value for pore volume
L
PHASE_ENV_THETA_VALU Phase Envelope Calculation: vapour fractions that
ES are to be calcualted
CREATE_MAX_ITERATION Create Streams to target GOR and PSAT:maximum
S number of iterations
CREATE_GOR_END_TEST Create Streams to target GOR:test of target value
being found
CREATE_PSAT_END_TEST Create Streams to target PSAT:test of target value
being found
CREATE_PSAT_PHASE Create Streams to target PSAT:phase to be produced

D6.5 STREAMBASE[stream no. or stream name]


This structure is the main depository for defining a stream. It contains component
definitions, properties, reference data etc. Unlike the STREAMRUN version below,
this data is saved with the file. The command
COPYSTREAMRUN_TO_STREAMBASE will put runtime data into the base
structure for saving. See the distributed Excel File OPENPVT.XLS for the main set of
variables and calls which manipulate streams etc.

A typical string to get a piece of stream data would be:

Petroleum Experts Ltd


Appendix D - PVTP OPENSERVER Manuall 23 - 37

PVT.STREAMBASE[{WellStream}].CRITTEMP[8]
This accesses the critical temperature of the ninth component within the stream
called WellStream.

The stream variables available include:

STREAMNAME Accesses the stream name of the indicated


stream
STREAMCOMMENT Accesses the stream comment of the
indicated stream
NUMCOMPONENTS Accesses the stream number of
components
NUMPSEUDOS Accesses the stream number of pseudo
components
RESTEMP Accesses the stream reservoir temperature
REFPRESS Accesses the stream refererence pressure
REFDEPTH Accesses the stream refererence depth
STANDPRESS Accesses the stream standard pressure
STANDTEMP Accesses the stream standard temperature
WATERSALINITY Accesses the stream water salinity value
COMPONENT[x] Accesses name of component x (zero
based index)
COMPONENT_LONG[x] Accesses description of component x (zero
based index)
COMPONENT_TYPE[x] Accesses type of component x (zero based
index) 0 – no type 1- HC 2 – NON-HC 3 –
CUSTOM 4- PSEUDO
COMPONENT_INDEX[x] Accesses where component x (zero based
index) is within database
COMPOSITION[x] Accesses composition of component x
(zero based index)
CRITTEMP[x] Accesses critical temperature of component
x (zero based index)
CRITPRESS[x] Accesses critical pressure of component x
(zero based index)
CRITPVOL[x] Accesses critical volume of component x
(zero based index)
ACCENFACT[x] Accesses accentric factor of component x
(zero based index)
OMEGAA[x] Accesses OmegaA value of component x
(zero based index)
OMEGAB[x] Accesses OmegaB value of component x
(zero based index)
MOLEWT[x] Accesses molecular weight value of
component x (zero based index)
PARACHOR[x] Accesses parachor value of component x
(zero based index)
BOILPT[x] Accesses boiling point of component x
(zero based index)
SPECGRAV[x] Accesses specific gravity of component x
(zero based index)
RHOAPP[x] Accesses apparent density of component x
(zero based index)
VOLSHIFTC[x] Accesses volume shift C parameter of
component x (zero based index)
VOLSHIFTS[x] Accesses volume shift S parameter of
component x (zero based index)
ZRACK[x] Accesses Z Rackett parameter of
component x (zero based index)
ZCRIT[x] Accesses critical Z factor of component x
(zero based index)
MELTPT[x] Accesses melting point of component x
(zero based index)
HEATFUSION[x] Accesses heat of fusion of component x

PVTP User Guide


24 -37 Appendix D -–PVTP OPENSERVER Manual

(zero based index)


SOLPAR[x] Accesses solubility parameter of
component x (zero based index)
SOLPARSOLID[x] Accesses solid solubility parameter of
component x (zero based index)
AROMATIC_PERCENT[x] Accesses aromatic content of pseudo
component x (zero based index)
BINARY_INT_COMPS [x][y] Accesses binary interaction coefficient
between component x and y (zero based
indices)
BINARY_INT_COMPS [x][y] Accesses binary interaction coefficient
between component x and y (zero based
indices)
RECOM_RESULT_COMP [x] Recombination: resulting composition of
component x (zero based index)
RECOM_STOCKOIL_COMP [x] Recombination: stock tank oil composition
of component x (zero based index)
RECOM_STOCKGAS_COMP [x] Recombination: stock tank gas composition
of component x (zero based index)
RECOM_GAS_SEP_COMP [sep][x] Recombination: sep gas composition of
component x in separator sep(zero based
indices)
RECOM_SEP_GOR [sep] Recombination: GOR in separator sep(zero
based index)
RECOM_SEP_TEMP[sep] Recombination: Temperature of separator
sep(zero based index)
RECOM_STOCKOIL_DENSITY Recombination: Stock tank oil density
RECOM_GAS_DENSITY Recombination: gas density
RECOM_GAS_GRAVITY Recombination: gas gravity
RECOM_STOCKTANK_GOR Recombination: Stock tank GOR
RECOM_STOCKTANK_TEMP Recombination: Stock tank temperature
PSEUD_ARCH_COMPONENT[x] Pseudo Component Archive: name of
pseudo x (zero based index)
PSEUD_ARCH_COMPOSITION[x] Pseudo Component Archive: composition of
pseudo x (zero based index)
PSEUD_ARCH_MWT[x] Pseudo Component Archive: mole weight of
pseudo x (zero based index)
PSEUD_ARCH_TCRIT[x] Pseudo Component Archive: critical
temperature of pseudo x (zero based index)
PSEUD_ARCH_PCRIT[x] Pseudo Component Archive: critical
pressure of pseudo x (zero based index)
PSEUD_ARCH_VCRIT[x] Pseudo Component Archive: critical volume
of pseudo x (zero based index)
PSEUD_ARCH_AFACT[x] Pseudo Component Archive: acentric factor
of pseudo x (zero based index)
PSEUD_ARCH_TBOIL[x] Pseudo Component Archive: boiling temp.
of pseudo x (zero based index)
MIXCRITTEMP Stream calculated critical temperature
MIXCRITPRESS Stream calculated critical pressure
CRICONDENBAR Stream calculated cricondenbar
CRICONDENTHERM Stream calculated cricondentherm
BPT_CORRELATION Pseudo Correlation for BPt
AFTCPC_CORRELATION Pseudo Correlation for AF Tc and Pc
BIC_PURE_CORRELATION Correlation for pure component BICs
BIC_PSEUDO_CORRELATION Correlation for pseudo component BICs
QUALITY_PLOT_VAP_COMP[x] Quality Plot:9 0184.(_CORRE)Tj9 0 0 9 221003 Tm(E)Tj9 0 0 0 9 4
Appendix D - PVTP OPENSERVER Manuall 25 - 37

D6.6 STREAMRUN[stream no. or stream name]


This structure is the temporary description of a stream which is used in calculations.
It is similar to STREAMBASE and contains component definitions, properties,
reference data etc. Unlike the STREAMBASE version above, this data is not saved
with the file. The command COPYSTREAMBASE_TO_STREAMRUN will put base
data into the runtime structure prior to calculations. See the distributed Excel File
OPENPVT.XLS for more details and examples. Of particular interest is the example
of the Flash calculation within this file , as it demonstates how the runtime input data
and the runtime calculation results can be utilised.

A typical string to get a piece of runtime data would be:


PVT.STREAMRUN[{WellStream}].CRITPRESS[0]

This accesses the critical pressure of the first component within the stream called
WellStream.

The stream runtime variables available include:

NUMCOMPONENTS Accesses the runtime number of components


NUMPSEUDOS Accesses the runtime number of pseudo
components
RESTEMP Accesses the runtime reservoir temperature
REFPRESS Accesses the runtime refererence pressure
REFDEPTH Accesses the runtime refererence depth
TEMPERATURE Accesses the calculation temperature
PRESSURE Accesses the calculation pressure
STANDTEMP Accesses the runtime standard temperature
WATERSALINITY Accesses the runtime water salinity value
COMPONENT[x] Accesses name of component x (zero based
index)
COMPONENT_LONG[x] Accesses description of component x (zero
based index)
COMPONENT_TYPE[x] Accesses type of component x (zero based
index) 0 – no type 1- HC 2 – NON-HC 3 –
CUSTOM 4- PSEUDO
COMPONENT_INDEX[x] Accesses where component x (zero based
index) is within database
COMPOSITION[x] Accesses composition of component x (zero
based index)
CRITTEMP[x] Accesses critical temperature of component x
(zero based index)
CRITPRESS[x] Accesses critical pressure of component x (zero
based index)
CRITPVOL[x] Accesses critical volume of component x (zero
based index)
ACCENFACT[x] Accesses accentric factor of component x (zero
based index)
OMEGAA[x] Accesses OmegaA value of component x (zero
based index)
OMEGAB[x] Accesses OmegaB value of component x (zero
based index)
MOLEWT[x] Accesses molecular weight value of component
x (zero based index)
PARACHOR[x] Accesses parachor value of component x (zero
based index)
BOILPT[x] Accesses boiling point of component x (zero
based index)
SPECGRAV[x] Accesses specific gravity of component x (zero
based index)
RHOAPP[x] Accesses apparent density of component x
(zero based index)

PVTP User Guide


26 -37 Appendix D -–PVTP OPENSERVER Manual

VOLSHIFTC[x] Accesses volume shift C parameter of


component x (zero based index)
VOLSHIFTS[x] Accesses volume shift S parameter of
component x (zero based index)
ZRACK[x] Accesses Z Rackett parameter of component x
(zero based index)
ZCRIT[x] Accesses critical Z factor of component x (zero
based index)
MELTPT[x] Accesses melting point of component x (zero
based index)
HEATFUSION[x] Accesses heat of fusion of component x (zero
based index)
SOLPAR[x] Accesses solubility parameter of component x
(zero based index)
SOLPARSOLID[x] Accesses solid solubility parameter of
component x (zero based index)
RESULT_KVALUES [x] Last Calc Results: K Value of component x
(zero based index)
LIQUID_COMPOSITION Last Calc Results: liquid composition of
[phase][x] component x in liquid phase ph (zero based
indices)
VAPOUR_COMPOSITION [0][x] Last Calc Results: vapour composition of
component x in vapour phase 0 (zero based
indices)
SOLID_COMPOSITION [0][x] Last Calc Results: lsolid composition of
component x in vapour phase 0 (zero based
indices)
DENSITY [ph] Last Calc Results: density of phase ph 0 –
vapour , 1 - liquid
ZFACTOR [ph] Last Calc Results: z factor of phase ph 0 –
vapour , 1 - liquid
VISCOSITY [ph] Last Calc Results: viscosity of phase ph 0 –
vapour , 1 - liquid
SPECIFIC_ENTHALPY [ph] Last Calc Results: enthalpy of phase ph 0 –
vapour , 1 - liquid
SPECIFIC_ENTROPY [ph] Last Calc Results: entropy of phase ph 0 –
vapour , 1 - liquid
CP [ph] Last Calc Results: specific heat Cp of phase ph
0 – vapour , 1 - liquid
CV [ph] Last Calc Results: specific heat Cv of phase ph
0 – vapour , 1 - liquid
SPEEDOFSOUND [ph] Last Calc Results: speed of sound of phase ph
0 – vapour , 1 - liquid
JTHOMSONCOEFF [ph] Last Calc Results: Joule-Thomson coeff.of
phase ph 0 – vapour , 1 - liquid
THERMALCOND [ph] Last Calc Results: Thermal Cond..of phase ph 0
– vapour , 1 - liquid
IFT Last Calc Results: Interfacial tension of mixture
VAP_FRACTION Last Calc Results: Vapour fraction calculated
SOLID_FRACTION Last Calc Results: Solid fraction calculated
WATER_FRACTION Last Calc Results: Water fraction calculated
NON_WATER_FRACTION Last Calc Results: Hydrocarbon fraction
calculated
NUM_PHASES Last Calc Results: Multiphase flash number of
phases detected
NUM_LIQUID_PHASES Last Calc Results: Multiphase flash number of
phases detected
PROFILEOILFRACTION [n] Profile Calc: dead oil fraction n
PROFILESATPRESS[n] Profile Calc: Saturation Pressure for dead oil
fraction n
PROFILEPHASE [n] Profile Calc: phase detected for dead oil fraction
n
PROFILE_BLEND_FRACTION [n] Profile Calc: fraction of stream 1 added to blend
PROFILE_BLEND_GOR [n] Profile Calc: GOR calculated for blend fraction
n

Petroleum Experts Ltd


Appendix D - PVTP OPENSERVER Manuall 27 - 37

D6.7 CALCUL[stream no. or stream name]


This structure controls the calculations. It contains the vaules of calculation ranges,
intermediate values results and analysis.
The distributed spreadsheets illustrate the following calculations:

OPENPVT.XLS the FLASH calculation. This is a core calculation which has been
specifically packaged up for the OPENSERVER.

OPEN_CRITPOINT_PHASE_ENV_CALC.XLS Mixture Critical Point and Phase


Envelope

OPEN_CCE_PSAT_CALC.XLS Single point and ranged saturation pressure plus


constant composition expansion.

OPEN_CVD_DEPL_CALC.XLS Constant volume depletion and depletion study.

OPEN_DIFF_COMPOS_CALC.XLS differential Liberation and Composite Differential

OPEN_SEP_CALC.XLS small and full separator calculations

OPEN_COMPGRAD_SWELL_CALC.XLS Compositional gradient and Swelling Test.

OPEN_SLIMTUBE_CALC.XLS Slim Tube Calculation

OPEN_HYDRATE_CALC.XLS Hydrate formation pressure

OPEN_WAX_CALC.XLS Wax amount and wax appearance temperature

OPEN_CALCS_WITH_WATER.XLS Multiphase CCE and separator calculation with


water present

OPEN_BLACKOIL_CALC.XLS CCE calculation as used in the blackoil export table.

OPEN_UTILITIES.XLS Utility calculations i.e. isenthalpic flash,water saturation,


create stream to target GOR,create stream to a target PSAT.
The procedure used to initiate calculations and retrieve results is outlined in section
8.8

A typical string to get a piece of runtime data would be:

PVT.CALCUL[{WellStream}]. CALC_USER_CCE_TEMPS [4]


This accesses the fifth user-defined temperature input value for the CCE calculation
within the stream called WellStream.
The stream runtime variables available include:

CALC_MODE Flag to set calculation mode to automatic or


user-defined (for calcs without individual flag see
rest of table)
CALC_CCE_MODE Flag to set calculation mode to automatic or
user-defined for CCE
CALC_GRAD_MODE Flag to set calculation mode to automatic or
user-defined for compositional gradient
CALC_WAXTEMP_MODE Flag to set calculation mode to automatic or
user-defined for wax appearance temperature

PVTP User Guide


28 -37 Appendix D -–PVTP OPENSERVER Manual

CALC_WAXTEMP_MODE Flag to set calculation mode to automatic or


user-defined for wax appearance temperature
CALC_ECLIPSE_MODE Flag to set calculation mode to automatic or
user-defined for eclipse export
UTILS_ENTHALPY_BALANCE_MODE Flag to set calculation mode to automatic or
user-defined for utilities enthalpy balance
calculation
EXP_SAT_UNSAT_MODE Flag to set calculation mode to automatic or
user-defined for variable bubble point export
SLIMTUBE_MODE Flag to set calculation mode to automatic or
user-defined for slim tube calculation
UTILS_WATERSATN_MODE Flag to set calculation mode to automatic or
user-defined for utilities water saturation
calculation
CALC_HYDRATE_MODE Flag to set calculation mode to automatic or
user-defined for hydrate calculation
CALC_FIRST_STREAM First stream index – SWELL etc.calculation
CALC_SECOND_STREAM Second stream index – SWELL etc.calculation
CALC_NUM_RESULTS Number of lines of results calculated
CALC_NUM_CURVES Number of curves calculated for phase
envelope
CALC_MIN_TEMP Calculation minimum temperature
CALC_MAX_TEMP Calculation maximum temperature
CALC_MIN_PRESS Calculation minimum pressure
CALC_MAX_PRESS Calculation maximum pressure
CALC_USER_TEMPERATURES[n] Calculation user-defined temperatures
CALC_USER_PRESSURES[n] Calculation user-defined pressures
CALC_NUM_DEPTHABOVEVALUES Gradient :number of depths above reference
CALC_MAX_DEPTHABOVE Gradient :maximum of depths above reference
CALC_NUM_DEPTHBELOWVALUES Gradient :number of depths below reference
CALC_MAX_DEPTHBELOW Gradient :maximum of depths below reference
CALC_CMPGRAD_DEPTHABOVE Gradient :user-defined depths above reference
CALC_CMPGRAD_DEPTHBELOW Gradient :user-defined depths below reference
CALC_TEMP_GRADIENT Gradient :temperature gradient value
CALC_USE_RELATIVE_DEPTHS Gradient :temperature gradient value
CALC_SEP_PRESSURES[n] Separator Calculation : stage pressures
CALC_SEP_TEMPERATURES Separator Calculation : stage temperatures
CALC_PSAT_MIN_TEMP PSAT Calculation auto minimum temperature
CALC_PSAT_MAX_TEMP PSAT Calculation auto maximum temperature
CALC_PSAT_NO_VALUES PSAT Calculation auto no of values
CALC_USER_CCE_TEMPS[n] CCE Calculation : user-defined temperatures
CALC_USER_CCE_PRESSURES[n] CCE Calculation : user-defined pressures
CALC_CCE_NO_TEMP_VALUES CCE Calculation : auto number of temperatures
CALC_CCE_NO_PRESS_VALUES CCE Calculation : auto number of pressures
CALC_CCE_MAX_TEMP CCE Calculation : auto maximum temperature

CALC_CCE_MIN_TEMP CCE Calculation : auto minmum temperature

CALC_CCE_MAX_PRESS CCE Calculation : auto maximum pressure

CALC_CCE_MIN_PRESS CCE Calculation : auto minmum pressure

CALC_DIFF_PRESSURES[n] DIFF Calculation : stage pressures


CALC_DIFF_TEMP[0] DIFF Calculation : temperature
CALC_COMPOS_PRESSURES[n] Composite Differential Calculation : stage
pressures
CALC_COMPOS_TEMP[0] Composite Differential Calculation :
temperature
CALC_CVD_PRESSURES [n] CVD Calculation : stage pressures
CALC_CVD_TEMP[0] CVD Calculation : temperature
CALC_DEPL_PRESSURES[n] Depletion Study Calculation : stage pressures
CALC_DEPL_TEMP[0] Depletion Study Calculation : temperature
CALC_SWELL_TEMPS[n] Swelling Test : temperatures
CALC_SWELL_COMPS[n] Swelling Test : compositions
CALC_SWELL_VOLS[n] Swelling Test : vol/vol inputs

Petroleum Experts Ltd


Appendix D - PVTP OPENSERVER Manuall 29 - 37

CALC_GORCORR_SEP_PRESSURES [n] GOR/FVF Correction : Separator stage


pressures
CALC_GORCORR_SEP_TEMPERATURES [n] GOR/FVF Correction : Separator stage
temperatures
REGR_GORCORR_SEP_PRESSURES [n] Regression GOR/FVF Correction : Separator
stage pressures
REGR_GORCORR_SEP_TEMPERATURES [n] Regression GOR/FVF Correction : Separator
stage temperatures
CALC_PHASEENV_TEST_PRESSURES [n] Phase Envelope Test Points: pressures
CALC_PHASEENV_TEST_TEMPERATURES [n] Phase Envelope Test Points: temperatures
CALC_SHOW_PHASEENV_TESTPTS Phase Envelope Test Points: show points flag
CALC_TEST_POINT_VALUE1[n] Plot Test Points: value 1
CALC_TEST_POINT_VALUE2[n] Plot Test Points: value 2
CALC_TEST_POINT_INDEX1[n] Plot Test Points: index 1
CALC_TEST_POINT_INDEX2[n] Plot Test Points: index 2
CALC_TEST_POINT_PROCESS[n] Plot Test Points: process eg CCE
CALC_BKOIL_EXPORT_COLUMN [n] Blackoil Export Calculation: column select flag
CALC_BKOIL_EXPORT_TEMPS [n] Blackoil Export Calculation: table temperature
CALC_BKOIL_EXPORT_PRESSURES [n][l] Blackoil Export Calculation: table pressures
CALC_BKOIL_EXPORT_TABLE Blackoil Export Calculation: active table
number
CALC_PHASE_ENV_CURVE_POINTS Phase Envelope Calculation: number of points
per curve
CALC_PHASENV_FRACTION[n] Phase Envelope Calculation: vapour fractions
to calculate
CALC_WAXTEMP_MAX_PRESS Wax Appearance Temp: auto maximum
pressure
CALC_WAXTEMP_MIN_PRESS Wax Appearance Temp: auto minimum
pressure
CALC_WAXTEMP_NO_PRESS_VALUES Wax Appearance Temp: auto number of
pressure values
CALC_WAXTEMP_PRESSURES[n] Wax Appearance Temp: user-defined
pressures
CALC_HYDRATE_MAX_TEMP Hydrate Calculation: auto maximum
temperature
CALC_HYDRATE_MIN_TEMP Hydrate Calculation: auto minimum
temperature
CALC_HYDRATE_NO_TEMP_VALUES Hydrate Calculation: auto number of
temperature
CALC_HYDRATE_TEMPERATURES[n] Hydrate Calculation: user-defined temperatures
CALC_HYDRATE_INHIBIT_CONC [n] Hydrate Calculation: inhibitor concentrations
UTILS_ENTHALPY_BALANCE_START_PRESS Utility Enthalpy Balance: start pressure
UTILS_ENTHALPY_BALANCE_END_PRESS Utility Enthalpy Balance: end pressure
UTILS_ENTHALPY_BALANCE_END_TEMP Utility Enthalpy Balance: end temperature
UTILS_ENTHALPY_BALANCE_MAX_PRESS Utility Enthalpy Balance: auto maximum
pressure
UTILS_ENTHALPY_BALANCE_MIN_PRESS Utility Enthalpy Balance: auto minimum
pressure
UTILS_ENTHALPY_BALANCE_NO_VALUES Utility Enthalpy Balance: auto number of
pressures
UTILS_ENTHALPY_BALANCE_USER_PRESSUR Utility Enthalpy Balance: auto number of
ES pressures
CALC_SMALL_SEP_OILDENSITY[n] Small Separator Calc: oil density result array
CALC_SMALL_SEP_OILAPI[n] Small Separator Calc: oil API result array
CALC_SMALL_SEP_GOR[n] Small Separator Calc: GOR result array
CALC_SMALL_SEP_GASGRAVITY[n] Small Separator Calc: gas gravity result array
SLIMTUBE_NUMCELLS Slimtube calculation: Number of cells
SLIMTUBE_CELL_DELTAX[n] Slimtube calculation: Delta X value for cell n
SLIMTUBE_CELL_DELTAY[n] Slimtube calculation: Delta Y value for cell n
SLIMTUBE_CELL_DELTAZ[n] Slimtube calculation: Delta Z value for cell n
SLIMTUBE_CELL_DEPTH[n] Slimtube calculation: Depth value for cell n
SLIMTUBE_CELL_PRESSURE[n] Slimtube calculation: Pressure value for cell n
SLIMTUBE_CELL_PERM[n] Slimtube calculation: Permeability value for cell
n
SLIMTUBE_CELL_POROSITY[n] Slimtube calculation: Porosity value for cell n

PVTP User Guide


30 -37 Appendix D -–PVTP OPENSERVER Manual

SLIMTUBE_PRESSGRADIENT Slimtube calculation: Pressure gradient


SLIMTUBE_RESOILSATN Slimtube calculation: Residual Oil saturation
SLIMTUBE_GASSATN Slimtube calculation: Gas saturation
SLIMTUBE_ROCKCOMP Slimtube calculation: Rock Compressibility
SLIMTUBE_TEMPERATURE Slimtube calculation: Temperature
SLIMTUBE_PERM_NUMINTABLE Slimtube calculation: Number of perms in table
SLIMTUBE_PERM_NUMINTABLE Slimtube calculation: Number of perms in table
SLIMTUBE_CELL_TABLE_SOIL[n] Slimtube calculation: Table SOIL value n
SLIMTUBE_CELL_TABLE_KRO[n] Slimtube calculation: Table KRO value n
SLIMTUBE_CELL_TABLE_KRG[n] Slimtube calculation: Table KRG value n
SLIMTUBE_CELL_TABLE_PCGO[n] Slimtube calculation: Table PCGO value n
SLIMTUBE_PRODRATE Slimtube calculation: Production rate
SLIMTUBE_STARTPRESSURE Slimtube calculation: Start Pressure
SLIMTUBE_INJRATE Slimtube calculation: Injection rate
SLIMTUBE_INJRATEPPI Slimtube calculation: Injection rate PPI
SLIMTUBE_INJPPI Slimtube calculation: Injection PPI
SLIMTUBE_TIMESTEP[n] Slimtube calculation: Time step number n
SLIMTUBE_NUM_TIMESTEPS Slimtube calculation: Number of time steps
SLIMTUBE_CELLDATA_VALUES Slimtube calculation: Number of cell data
values
SLIMTUBE_PRODCELL Slimtube calculation: Producing Cell
SLIMTUBE_INJCELL Slimtube calculation: Producing Cell
SLIMTUBE_PRESSURES[n] Slimtube calculation: user-defined tube
pressures
SLIMTUBE_TIMESTEPS[n] Slimtube calculation: Calculated timesteps
SLIMTUBE_MAXPRESSURE Slimtube calculation: auto maximum pressure
SLIMTUBE_MINPRESSURE Slimtube calculation: auto minimum pressure
SLIMTUBE_PRESSURE_VALUES Slimtube calculation: auto number of pressures
SLIMTUBE_PRESSURE_VALUES Slimtube calculation: auto number of pressures
UTILS_TARGETGOR Stream Target GOR calculation: GOR Target
UTILS_TARGETPSAT Stream Target PSAT calculation: Saturation
Pressure Target
UTILS_TARGETPSAT_TEMP Stream Target PSAT calculation: temperature
UTILS_WATERSATN_MAXTEMP Utilities water saturation calculation: auto
maximum temperature
UTILS_WATERSATN_MINTEMP Utilities water saturation calculation: auto
minimum temperature
UTILS_WATERSATN_MAXPRESS Utilities water saturation calculation: auto
maximum pressure
UTILS_WATERSATN_PRESSVALUES Utilities water saturation calculation: number of
pressures
UTILS_WATERSATN_PRESSVALUES Utilities water saturation calculation: number of
temperatures

Petroleum Experts Ltd


Appendix D - PVTP OPENSERVER Manuall 31 - 37

D6.8 Carrying out Calculations and Obtaining Results


Examples of all modes and calculations are included in the sample Excel
spreadsheets distributed with PVTP. The calculation to be done is set using the
OPTIONS.CALC_TYPE variable. The following alternative calls can be made:

BLACKOIL_OIL - Black Oil Model for Oil


BLACKOIL_GAS - Black Oil Model for Gas
BLACKOIL_COND - Black Oil Model for Condensate
CRITPOINT - Critical Point Calculation
PHASEENV - Phase Envelope Calculation
PSAT – Saturation Pressure Calculation
CCE – Constant Composition Expansion
CVD – Constant Volume Depletion
DIFF – Differential Liberation
SEP – Separator Calculation
COMPGRAD – Compositional Gradient Calculation
SWELL – Swelling Test Calculation
DEPL – Depletion Study Calculation
BLACKOIL_EXPORT – Black Oil Export Table Calculation
CCE_WITH_WATER - Multiphase Constant Composition Expansion
SEP_WITH_WATER - Multiphase Separator
COMPOS – Composite Differential Liberation
MULTIPHASE – Multiphase (Wax) Flash
WAXTEMP – Wax appearance Temperature
HYDRATE – Hydrate Formation Pressure
ISENTHALPIC_FLASH – Enthalpy Balance Calculation
SLIMTUBE – SlimTube Simulation
WATER_SATURATION – Water Saturation Calculation

Additional calculations:

FLASH – Section 8.9


Small Separator Calculation – Section 8.10
Saturation Pressure at Reference Conditions – Section 8.11
Recombination Calculations – Section 8.12
Allocation: Blending to a target GOR – Section 8.13

Important Calls:

RESET_STREAM_IN_CALC_FLAGS – resets stream calculation flags prior to


calculation
DoCmd "PVT.KEYWORD[Wellstream]" – do calculation identified by keyword on
stream index or name
CALC_COLUMN_TOTAL – find number of colums calculated
CALC_NUM_RESULTS – find lines of results calculated
CALC_COLUMN_NAME[n] – get name of column n (zero based index)
CALC_COLUMN_UNIT[n] – get unit string of column n (zero based index)
CALC_COLUMN_VALUE[l][n] – get value calculated for line l and column n (zero
based indices)

The code fragment below is taken from OPEN_CCE_PSAT_CALC.XLS and shows


the basics of setting up and initiating a calculation.

PVTP User Guide


32 -37 Appendix D -–PVTP OPENSERVER Manual

' Identify the mode to be used in the calculation USER or AUTO


SendCellData "PVT.CALCUL[" + CStr(iStream) + "].CALC_CCE_MODE"
If (Worksheets(Sheet).Cells(10, 2) = "AUTO") Then
iLine = 13
'AUTO Mode
'send calculation ranges
SendCellData "PVT.CALCUL[" + CStr(iStream) + "].CALC_CCE_MIN_TEMP"
SendCellData "PVT.CALCUL[" + CStr(iStream) + "].CALC_CCE_MAX_TEMP"
SendCellData "PVT.CALCUL[" + CStr(iStream) + "].CALC_CCETEMPVALUES"
SendCellData "PVT.CALCUL[" + CStr(iStream) + "].CALC_CCE_MIN_PRESS"
SendCellData "PVT.CALCUL[" + CStr(iStream) + "].CALC_CCE_MAX_PRESS"
SendCellData "PVT.CALCUL[" + CStr(iStream) + "].CALC_CCEPRESSVALUES"
Else
iLine = 23
' USER Mode
' send individual temperatures and pressures
For iCalc = 0 To 9
DoSetStr iLine, 1, "PVT.CALCUL[" + CStr(iStream) + "].CALC_USER_CCE_TEMPS[" +
CStr(iCalc) + "]", False
For iCol = 0 To 4
DoSetStr iLine, 2 + iCol, "PVT.CALCUL[" + CStr(iStream) +
"].CALC_USER_CCE_PRESSURES[" + CStr(iCalc + (10 * iCol)) + "]", False
Next
iLine = iLine + 1
Next
End If
' Clear the stream calculation flags
DoCmd "PVT.RESET_STREAM_IN_CALC_FLAGS"
' Tell the program to do a CCE Calculation on stream identified by index
iStream
DoCmd "PVT.CCE[" + CStr(iStream) + "]"

The first section reflects the CCE input dialog, sending the mode the calculation is to
operate with and the temperatures| pressures to be used. All that is required then is
to clear any existing calculation flags and to initiate the command using the keyword
from the list above. Note that the calculation has been set up to do one stream at a
time. To do multiple streams call the command again with a different stream
index|name.
Once the calculation is complete, any of the columns calculated can be accessed as
shown in the code fragment below:
'Find the number of results produced during the calculation
iNumRes = DoGetCheck("PVT.CALCUL[" + CStr(iStream) + "].CALC_NUM_RESULTS")
'Find the number of columns calculated for CCE
iNumCols = DoGetCheck("PVT.CALC_COLUMN_TOTAL")
For iCol = 0 To iNumCols - 1
'Get column names
Worksheets(Sheet).Cells(iLine, iCol + 1) = DoGet("PVT.CALC_COLUMN_NAME[" +
CStr(iCol) + "]")
'Get column units
Worksheets(Sheet).Cells(iLine + 1, iCol + 1) =
DoGet("PVT.CALC_COLUMN_UNIT[" + CStr(iCol) + "]")
For iRes = 0 To iNumRes - 1
'get all column values
Worksheets(Sheet).Cells(iLine + iRes + 2, iCol + 1) = DoGet("PVT.CALCUL[" +
CStr(iStream) + "].CALC_COLUMN_VALUE[" + CStr(iRes) + "][" + CStr(iCol) +
"]")
Next
Next

The calculation results form a table which is normally displayed in PVTP results
dialog.The first step is to find the number of lines calculated using
CALC_NUM_RESULTS. The number of columns available for this calculation can
then be retrieved using CALC_COLUMN_TOTAL. Individual column names and units
are found by calls to CALC_COLUMN_NAME and CALC_COLUMN_UNIT with a
zero-based index for the column number. Repeated calls to
CALC_COLUMN_VALUE is then used to fill in the table.

Petroleum Experts Ltd


Appendix D - PVTP OPENSERVER Manuall 33 - 37

D6.8.1 Analysis
Analysis is available with most calculations. This data can be retrieved using code
like the segment below:

' Get analysis number iRes


Worksheets(Sheet).Cells(4, 2) = iRes
' display the analysis block temperature and pressure
iErr = DisplayCellData("Temperature", DoGetCheck("PVT.CALCUL[" + CStr(iStream) +
"].CALC_ANALYSIS[" + CStr(iRes) + "].STAGE_TEMP"))
iErr = DisplayCellData("Pressure", DoGetCheck("PVT.CALCUL[" + CStr(iStream) + "].CALC_ANALYSIS[" +
CStr(iRes) + "].STAGE_PRESS"))
Worksheets(Sheet).Range("A10:E200").ClearContents
'find number of components
iNumComp = DoGetCheck("PVT.STREAMRUN[" + CStr(iStream) + "].NUMCOMPONENTS")
iLine = 10
For icomp = 0 To iNumComp - 1
' get component name liquid composition vapour composition and K values
Worksheets(Sheet).Cells(iLine + icomp, 1) = DoGet("PVT.STREAMRUN[" + CStr(iStream) +
"].COMPONENT[" + CStr(icomp) + "]")
Worksheets(Sheet).Cells(iLine + icomp, 2) = DoGetCheck("PVT.CALCUL[" + CStr(iStream) +
"].CALC_ANALYSIS[" + CStr(iRes) + "].LIQUID_COMPOSITION[" + CStr(icomp) + "]")
Worksheets(Sheet).Cells(iLine + icomp, 3) = DoGetCheck("PVT.CALCUL[" + CStr(iStream) +
"].CALC_ANALYSIS[" + CStr(iRes) + "].VAPOUR_COMPOSITION[" + CStr(icomp) + "]")
Worksheets(Sheet).Cells(iLine + icomp, 4) = DoGetCheck("PVT.CALCUL[" + CStr(iStream) +
"].CALC_ANALYSIS[" + CStr(iRes) + "].KVALUES[" + CStr(icomp) + "]")
Next
iLine = iLine + iNumComp
' Get Extra data
iErr = DisplayCellData("Percent Vapour", DoGetCheck("PVT.CALCUL[" + CStr(iStream) +
"].CALC_ANALYSIS[" + CStr(iRes) + "].VAP_PERCENT"))
iErr = DisplayCellData("Percent Liquid", DoGetCheck("PVT.CALCUL[" + CStr(iStream) +
"].CALC_ANALYSIS[" + CStr(iRes) + "].LIQ_PERCENT"))
iErr = DisplayCellData("Oil Gravity", DoGetCheck("PVT.CALCUL[" + CStr(iStream) + "].CALC_ANALYSIS["
+ CStr(iRes) + "].OIL_GRAVITY"))

The individual analysis blocks are accessed via the label CALC_ANALYSIS[n] where
n is a zero-based index. Data is devided into
identification eg. STAGE_TEMP or STAGE_DEPTH
component data such as vapour composition K values etc. or
extra data such as Oil_GRAVITY , TOTAL_GOR etc.

The data available is listed below:

STAGE_TEMP Analysis Temperature


STAGE_PRESS Analysis Pressure
STAGE_DEPTH Analysis Depth
TOTAL_COMPOSITION[n] Total Composition for
component[n]
VAPOUR_COMPOSITION[n] Vapour Composition for
component[n]
WATER_COMPOSITION[n] Waterl Composition for
component[n]
LIQUID_COMPOSITION[n] Liquid Composition for
component[n]
LIQUID_COMPOSITION2[n] Liquid 2 Composition for
component[n] - Multiphase
LIQUID_COMPOSITION3[n] Liquid 3 Composition for
component[n] - Multiphase
LIQUID_COMPOSITION4[n] Liquid 4 Composition for
component[n] - Multiphase
LIQUID_COMPOSITION5[n] Liquid 5 Composition for
component[n] - Multiphase

PVTP User Guide


34 -37 Appendix D -–PVTP OPENSERVER Manual

SOLID_COMPOSITION[n] Solid Composition for


component[n]
ACCVAP_COMPOSITION[n] Accum. Vapour
Composition for
component[n]
KVALUES[n] K Values for component[n]
VAP_PERCENT Mole Percent Vapour
LIQ_PERCENT Mole Percent Liquid
ACCUM_PERCENT Mole Percent Accum.
Vapour
OIL_GRAVITY Oil Gravity
TOTAL_GOR Total GOR
STAGE_GOR Stage GOR
GAS_GRAVITY Gas Gravity
STAGE_GROSS_HV Stage Gross Heating Vaue
STAGE_NET_HV Stage Net Heating Vaue
ACCUM_GROSS_HV Accum. Gross Heating
Vaue
ACCUM_NET_HV Accum Net Heating Vaue

D6.9 Flash Calculation


The two-phase flash calculation is a key part of any EoS calculation package. The
majority of calculations e.g. constant volume depletion or separator are constructed
from a series of flash calculations. To increase the flexibility of using the
OPENSERVER capabilities with PVTP , the flash calculation has been made accessible
to the user.
The core of the flash commands is given in the code segment below, which is taken
from the Excel spreadsheet OPENPVT.XLS.
' Tell program which temperature and pressure to flash at
SendCellData "PVT.STREAMRUN[" + CStr(iStream) + "].RUNTEMP"
SendCellData "PVT.STREAMRUN[" + CStr(iStream) + "].RUNPRESS"
'Do flash calculation
DoCmd "PVT.FLASH[" + CStr(iStream) + "]"
iLine = iLine + 2
'display compositions and results
DisplayRuntimeComponentData

All the work of flash is done within the STREAMRUN structure and as such is done
with a temporary, intermediate type of data. The sequence followed is as follows.

Set up the compositions and properties within the STREAMRUN structure


Send the required flash temperature and pressure to RUNTEMP and
RUNPRESS respectively
Perform flash using the FLASH command
Read the vapour and liquid compositions and K values calculated from
STREAMRUN
Read the other calculated data eg. Vapour fraction,z factors phase densities
etc. from STREAMRUN .
A Visual Basic file (FlashDemo.*) which gives illustrates doing a flash is also
distributed with PVTP.

D6.10 Small Separator Calculation

Petroleum Experts Ltd


Appendix D - PVTP OPENSERVER Manuall 35 - 37

The small separator calculation is called from the small calculation dialog within
PVTP. The inputs to it are the same as the larger separator calculation, but the
calculation has been slimmed down to run faster and give a smaller number of
36 -37 Appendix D -–PVTP OPENSERVER Manual

D6.11 Saturation Pressure at Reference Calculation


The Saturation Pressure at Reference calculation is called from the small calculation
dialog within PVTP. The use of this calculation is illustrated in
OPEN_CCE_PSAT_CALC.XLS from which the code fragment below is taken:
SendCellData "PVT.STREAMRUN[" + CStr(iStream) + "].RUNTEMP"
DoCmd "PVT.SINGLE_PSAT[" + CStr(iStream) + "]"
iLine = 7
iErr = DisplayCellData("PSAT", DoGetCheck("PVT.STREAMRUN[" +
CStr(iStream) + "].RUNPRESS"))

The use of this calculation is very styraightforward. Place the temperature required in
RUNTEMP. Then call the calculation using the SINGLE_PSAT command. The
resulting saturation pressure will be placed in the RUNPRESS variable.

D6.12 Recombination Calculations


The PVTP program contains 2 recombination calculations whch are accessed via the
Data|Select Components dialog. The 2 modes available are:

Simple: where compositions of 1 separator vapour are combined with stock tank oil
ans gas to give the recombined composition and

Extended: where up to 5 separator compositions can be used.


Both modes can be run via the OPENSERVER using the following commands.

RECOMBINE_SIMPLE[n] Perform the simple recombination


on stream n
RECOMBINE_COMPLEX[n] Perform the complex recombination
on stream n
COPY_RECOMBINE_COMPOSITION Overwrite the current
STREAMBASE composition with
the one calculated by recombination

It should be noted that the recombination data is held within the STREAMBASE
structure. If you wish to calculate with this composition it must be transferred to the
STREAMRUN area. An example of how the recombine data is read and set is
distributed in the OPEN_RECOMBINATION.XLS sample file. The code segment
below is taken from this file:
DoSet "PVT.STREAMBASE[" + CStr(iStream) + "].RECOM_STOCKTANK_GOR",
CStr(ThisGOR)
DoCmd "PVT.SET_ACTIVE_STREAM[" + CStr(iStream) + "]"
DoCmd "PVT.RECOMBINE_SIMPLE[" + CStr(iStream) + "]"
DoCmd "PVT.COPY_RECOMBINE_COMPOSITION[" + CStr(iStream) + "]"
DoCmd "PVT.COPYSTREAMBASE_TO_STREAMRUN"
Temp = Worksheets(Sheet).Cells(10, 7)
DoSet "PVT.STREAMRUN[" + CStr(iStream) + "].RUNTEMP", CStr(Temp)
DoCmd "PVT.SINGLE_PSAT[" + CStr(iStream) + "]"
Press = DoGet("PVT.STREAMRUN[" + CStr(iStream) + "].RUNPRESS")

In this segment a recombination is done on the basis of a changing recombination


GOR. The recombined composition is then copied to STREAMBASE and then to
STREAMRUN. Once in runtime it is used to find the saturation pressure of the
recombined fluid using the calculation described in section 8.9.
The sequence followed is

Petroleum Experts Ltd


Appendix D - PVTP OPENSERVER Manuall 37 - 37

Set a new recombination GOR via the RECOM_STOCKTANK_GOR variable


Make the selected stream the current one using the SET_ACTIVE_STREAM
command
Calculate the recombination using the RECOMBINE_SIMPLE command
Overwrite the stream composition with the result of the recombination using
COPY_RECOMBINE_COMPOSITION
Copy composition to STREAMRUN to allow calculation to be done
Set the temperature at which PSAT is to be calculated
Do saturation pressure calculation
Read result which is in RUNPRESS

D6.13 Allocate: Blending to a target GOR


The allocation calculation is called from the stream menu in PVTP. The use of this
calculation is illustrated in OPEN_ALLOCATE_BLEND.XLS from which the code
fragment below is taken:
Worksheets("Allocate").Cells(3, 4) = DoGet("PVT.STREAMBASE[" + CStr(iStream) +
"].STREAMNAME[0]")
Worksheets("Allocate").Cells(4, 4) = DoGet("PVT.STREAMBASE[" + CStr(iStream2) +
"].STREAMNAME[0]")
iLine = 10
SendCellData "PVT.CALCUL[" + CStr(iStream) + "].UTILS_TARGETGOR"
DoSet "PVT.CALCUL[" + CStr(iStream) + "].CALC_SECOND_STREAM", iStream2
iLine = 12
SendCellData "PVT.OPTIONS.CREATE_MAX_ITERATIONS"
SendCellData "PVT.OPTIONS.CREATE_GOR_END_TEST"
DoCmd "PVT.CALCULATE_BLEND_GOR[" + CStr(iStream) + "]"
DoCmd "PVT.UPDATEDISPLAY"
iLine = 31
iErr = DisplayCellData("Mole Percent Blend Stream 1", DoGet("PVT.STREAMRUN[" +
CStr(iStream) + "].MOLE_PERCENT1_BLEND_GOR"))
iErr = DisplayCellData("Mole Percent Blend Stream 2", DoGet("PVT.STREAMRUN[" +
CStr(iStream) + "].MOLE_PERCENT2_BLEND_GOR"))
iErr = DisplayCellData("Weight Percent Blend Stream 1", DoGet("PVT.STREAMRUN[" +
CStr(iStream) + "].WEIGHT_PERCENT1_BLEND_GOR"))
iErr = DisplayCellData("Weight Percent Blend Stream 2", DoGet("PVT.STREAMRUN[" +
CStr(iStream) + "].WEIGHT_PERCENT2_BLEND_GOR"))

The sequence followed is

Set up the streams to be used


Send the target GOR to be matched
Setup the calculation limits if required
Send the CALCULATE_BLEND_GOR command.
Retrieve the results from the MOLE_PERCENT1_BLEND_GOR etc. variables

PVTP User Guide

You might also like