File 000004
File 000004
File 000004
User Guide
Proprietary notice
Copyright © 2015 Schlumberger. All rights reserved. Reproduction or alteration without prior written permission is prohibited, except as
allowed under applicable law.
Use of this product is governed by the License Agreement. Schlumberger makes no warranties, express, implied, or statutory, with respect
to the product described herein and disclaims without limitations any warranties of merchantability or fitness for a particular purpose.
VFPi is the graphical, interactive successor to the Vertical Flow Performance program, VFP.
Through a series of graphical modules, control and data panels, it allows you to study all aspects
of pressure traverse calculations along wells and pipelines for black oil and compositional
fluids. You can also generate and examine production and injection vertical flow performance
tables for input into the ECLIPSE and VIP simulators.
VFPi is able to perform pressure traverses using data from more than one well within a single
session of the program. This multiple-well data is controlled from the data tree window, with
each well represented as a node connected to the root of a tree-like structure. This feature allows
you easily compare pressures losses between differing wells and also offers greater flexibility
when analyzing and designing wells and pipelines.
VFPi is backwards-compatible with VFP, in that it can read a VFP keyword data file and so set
up all the elements involved in a pressure traverse calculation. You may then graphically
examine the fluid properties of the wellstream as well as the tubing string through which it
flows. You can perform single pressure traverse calculations to study the variation of pressure,
gas velocity, temperature etc. along the length of the tubing. You can also perform a series of
pressure traverse calculations and so form VFP curves. Complete flexibility is afforded in
plotting these curves either as a family in a 2D graph or as a surface in a 3D graph.
As well as creating VFP tables, VFPi can read in and plot cross-sections from existing tables.
This facility enables you to make graphical comparisons between different VFP tables and
between calculated curves and table cross-sections. Again the cross-sections may be plotted in
2D or 3D. The 2D cross-sections can be graphically edited and the changes then applied to the
VFP table itself. You may superimpose well IPRs on 2D curves and cross-sections to provide
an estimate of flow rates at a given set of conditions.
VFPi offers you the choice of seven multi-phase flow correlations to calculate the pressure
traverse:
• Aziz, Govier and Fogarasi
• Orkiszewski
• Hagedorn and Brown
Data storage
This facility allows you to save the current state of all data entered into VFPi to an external file
using data keywords (see "Keywords" on page 175). You may thus continue an interrupted VFPi
session by loading this file back into the program. This file will also store any VFP tables
currently held within the program. Note that only one data "snapshot" can be stored per file.
The keyword file stores the positions of all the panels that you opened during a VFPi session. If
you continue this session from this file, any panels opened which had previously been displayed
are positioned where you last left them.
Because the data is stored using ASCII keywords, the file is portable between all machines able
to run VFPi.
A keyword file named RECOVER.DAT is automatically created when VFPi periodically saves
the current data state of your session. In the event of a program crash, VFPi may be restarted
and your session continued from the last auto save point by loading the RECOVER.DAT file as
a normal keyword file. Note that the RECOVER.DAT file is deleted when a VFPi session is
ended normally.
Data tree
For VFPi to perform a pressure traverse calculation in a particular well or pipeline, the program
requires information about the PVT properties of the flowing fluid, the tubing through which
this fluid flows, and some control data such as the choice of multi-phase flow correlation.
Measured pressure data may also be available which can be used to tune the pressure traverse
calculation. All this data is managed in the hierarchical well data tree window and is grouped
together as belonging to a particular well. VFPi is able to use data from more than one well
within a single session of the program, with each well represented as a node connected to a root
in the data tree window.
Each well node may have up to four child nodes which represent Tubing, Fluid, Calculation
Control and Measured Pressure data (if available). Double-click on a child node to open up the
appropriate graphical module or panel to allow inspection or alteration of its data.
Data for a well may be entered by hand or read in from a keyword file, thus maintaining
compatibility with the batch VFP program and the fluid keyword data generated by the SIS
PVTi program. As well as reading complete keyword data files, a file may also be scanned for
keywords relevant only to a particular node type (tubing, black oil fluid or compositional fluid).
All other keywords in this file will be ignored. If any appropriate keywords are found, this data
then replaces that currently in VFPi. A use of this feature might be the storage of a pump
performance keyword in a separate file which can be read into Tubing nodes as and when the
pump is required. The data in each node may be reported to an external file either separately or
on a well-by-well basis.
Tubing
The tubing string is defined by supplying true vertical depths, roughnesses and diameters at
various lengths along the tubing. Both tubing and annular flow can be modelled, with the
different flow geometries specified in different sections of the same tubing if necessary. The
tubing trajectory, which may be vertical, deviated, horizontal or undulating, can be plotted as a
graph of true vertical depth against horizontal deviation. Any tubing devices currently specified
(gas lift, pump, compressor, bean, and local pressure drop) are shown on this plot.
• Gas lift can be modelled, with a single entry valve. You can specify whether or not the
injected gas is allowed to dissolve in under-saturated oil in the well bore, for pressure
traverse calculations in black oil mode.
• A pump can be located at a given position in the tubing. You must supply a pump
performance table (pump head versus flow rate) for each pump rating value; these tables
may be inspected graphically. The pump cuts off when the volume fraction of gas exceeds
a specified limit.
• A compressor can be located at a given position in a gas pipeline. You must supply a
compressor performance table (compression ratio versus flow rate) for each compressor
power value; these tables may be inspected graphically.
• A bean, or surface choke, can be included in the tubing to regulate the flow rate of the well.
Two choke models are available in VFPi: the Gilbert model and the Sachdeva model. The
Gilbert model assumes critical flow through the choke where upstream pressure is
independent of the downstream pressure. The Sachdeva choke model is able to
accommodate both critical and sub-critical two-phase flow through a restriction. Sub-
critical flow occurs for low flow rates or large choke diameters when the fluid velocity
through the restriction is less than the sonic velocity and thus the upstream pressure is
dependent on the downstream pressure. See "Sachdeva Choke Model" on page 273 for
more information.
• A local pressure drop as a function of flow rate or mixture velocity can be included at any
number of locations down the tubing.
Using data supplied in this section, the fluid temperature may be calculated in one of three ways:
• from a fixed fluid temperature-depth profile table
• from a linear fluid temperature-depth profile with a fixed inlet temperature and an outlet
temperature taken from a temperature versus flow rate table
Compositional fluids
The bulk properties of the fluid can be obtained using a compositional treatment as an
alternative to the black oil model. This compositional option is based on a cubic equation of
state calculation for the phase equilibrium of the wellstream fluid, with Peng-Robinson,
Redlich-Kwong and Soave-Redlich-Kwong equations implemented. Thus given the
temperature, pressure, composition and overall flow of the fluid, the phase densities, viscosities,
volume flow rates and interphase surface tension can be found. These hydrocarbon properties
(together with those for water) are then passed into the existing multiphase flow correlations to
find the pressure drop along the tubing in a pressure traverse calculation.
When VFPi is in compositional mode, the composition of the wellstream fluid is required for
each pressure traverse calculation. You may enter directly a set of wellstream fluid
compositions. Alternatively, you may perform one of three built-in depletion experiment
simulations to estimate the likely reservoir phase compositions as the reservoir depletes to its
abandonment pressure. You may then form a set of wellstream fluid compositions by picking
likely wellstreams from a graphical display of the simulation results. A third alternative is to let
VFPi determine the wellstream composition from the depletion experiment simulation during
the pressure traverse using the current BHP value.
The component properties required for the compositional treatment of the fluid may either
initially be entered manually, or read from keywords that are compatible with ECLIPSE 300 and
the PVTi program. The data may be subsequently saved in a keyword file.
Measured pressures
This node allows you to specify a number of observed tubing pressures at particular tubing
lengths together with the flowing conditions at the time of measurement.
Calculations
Units system
VFPi is able to work in either field or metric units system.
VFP tables
VFPi can internally store both production VFP tables and injection VFP tables, together with
any user notes written about them. These tables can originate from external files, or they may
have been created in this current session, or they may have been loaded from a previous session.
VFP tables may be written to an external file as a data keyword in a format suitable for the
ECLIPSE or VIP simulators.
VFPi is able to extract multiple VFP tables from an external file by scanning for and interpreting
the keywords VFPPROD and VFPINJ. All other data in the file is ignored.
Production VFP tables can be checked for pairs of BHP versus Flow curves with different THP
values which cross (these curves having the same water fraction, gas fraction and ALQ values).
Such crossing curves will cause problems in ECLIPSE when wells operate in that region of the
table.
Production VFP tables may also be stabilized. This transformation replaces the unstable low
flow section of any ‘J’ shaped curves in the table with a horizontal line at the minimum BHP
value from the lowest flow value to the flow value at the minimum BHP. Please note that the
unstable low flow region in VFP tables is physically realistic and this option should be used with
caution as it will give misleading results from the ECLIPSE well model.
Matching pressures
One of the main areas of uncertainty in pressure traverse calculations lies in the multi-phase
flow correlations which supply the hydrostatic, friction loss and acceleration pressure gradients
given the local flowing conditions.
In an attempt to lessen this uncertainty when pressure data from flowing wells is available, the
pressure matching module allows you to perform a series of pressure traverse calculations
which automatically tune or regress "fitting factors" within these multi-phase flow correlations
to achieve a best fit to the set of supplied pressure measurements.
Command language
The command language allows VFPi to perform a series of tasks as dictated by a command
script file entered by the user. During playback of this file, the program is effectively running in
a batch mode; it expects and allows no user interaction.
The anticipated role of this feature is to enable you to create multiple, large VFP tables. With
VFPi running in its normal interactive mode, you would have to wait for the completion of VFP
table calculation before entering the data for the next table, etc. Using the command language,
however, the data for all the tables could be set up in advance and VFPi may be left running the
command script for as long as required.
Help system
The on-line help system is an integral part of the VFPi program. As well as explaining the role
and features of every major section in the program, it also provides a detailed description of the
function of each individual panel.
Throughout the help pages, appropriate links are provided to on-line versions of the technical
appendices at the back of this manual, should you wish to examine a particular aspect of VFPi
in more detail.
Contents and Index pages are provided to allow you to browse the features and functionality
offered by VFPi without the need to open the appropriate panel or graphical module and click
on the HELP button or menu item.
You must choose the values of these variables so that they cover the expected range of
conditions in the reservoir simulation. The ECLIPSE simulators will extrapolate the tables
linearly if the conditions fall outside the span of the table, but this should be avoided as
large extrapolations can produce unrealistic results. The spacing of the value points for each
variable need not be constant. Obviously, the more value points there are, the greater will
be the accuracy of the interpolation, but the size of the table and the time required to
calculate it will increase.
In calculating a vertical flow performance table, VFPi determines the bottom hole pressure for
each combination of the flowing condition variables. In a producer table for example, if there
are 8 flow rate values, 3 tubing head pressure values, 2 water fraction values, 4 gas fraction
values and 2 artificial lift quantity values, the number of bottom hole pressure values will total
8 × 3 × 2 × 4 × 2 = 384 .
When calculating pressure traverses, VFPi can operate in a black oil or a compositional mode.
When in its black oil mode, VFPi uses a black oil model to determine the fluid properties in the
well bore. When in its compositional mode, VFPi uses an equation of state-based calculation to
determine the fluid properties of the wellstream, and the resultant VFP tables are intended for
use in the compositional ECLIPSE 300 simulator. Compositional VFP tables will not be
accepted by the black oil ECLIPSE 100/200 simulator. (Black oil VFP tables, however, can be
used by ECLIPSE 300.)
VFP tables can be generated with a choice of flowing condition variables (flow rate, water
fraction and gas fraction). The choice depends on whether VFPi is in its black oil or
compositional mode. The available options are:
Note that a negative flow rate is interpreted as flow in the opposite direction to that expected
given the current well type. Thus if the well has been designated a producer, a negative flow rate
would represent downhill flow.
Water fraction
Black oil: Surface water / oil ratio
Surface water / liquid ratio
Surface water / gas ratio
Compositional: Surface water / wet gas ratio
Water / total mole ratio
Gas fraction
Black oil: Surface gas-oil ratio
Surface gas-liquid ratio
Surface oil-gas ratio
Compositional: Mean molecular weight of wellstream fluid
Introduction
VFPi can be run on all major UNIX/Motif workstations and PCs running Windows. There is no
requirement for additional hardware, although a graphics accelerator card will improve the
performance of the 3D visualization facilities in VFPi. VFPi is installed in a default
configuration which is suitable for running the program immediately on the workstation console
or PC screen. It is, however, possible for you to customize VFPi more specifically to your
display requirements through the use of certain configuration files (see "Configuring VFPi" on
page 93).
Starting VFPi
VFPi can be started by typing @vfpi at the command prompt, or clicking on VFPi on the
ECLIPSE Launcher. VFPi will display three windows.
• A ribbon window across the top of the screen which contains several primary level menu
options giving you access to all the pressure traverse calculations available in VFPi.
• A Data Tree window on the left hand side of the screen that contains a hierarchical tree
representing all the well data currently held in VFPi. Via this tree you may set up tubing
descriptions, define the fluid properties, select the parameters which control the pressure
traverse calculations and enter any measured pressure data for your system.
• A log window across the bottom of the screen which displays information on the current
status of your session and any errors, warnings or messages that are deemed appropriate.
Introduction
The aim of this section is to guide you through most of the main functionality in the VFPi
program. These tutorials are primarily written to demonstrate the modelling and creation of VFP
tables for inclusion into ECLIPSE reservoir simulation software, rather to show use of all of the
available menu options. Some of the program options and functionality will not be explored by
the tutorials.
The first tutorial demonstrates the most basic functionality of the VFPi program, with
subsequent tutorials concentrating on increasingly complex areas of wellbore modelling
available in VFPi. Precise instructions are provided for each step of the tutorial, whilst input
data, graphical displays and output reports are reproduced within this document where
appropriate.
Note These tutorials are not meant to teach you the intricacies of vertical flow performance
modelling. They are intended to familiarize you with the facilities available within
VFPi.
Each tutorial is divided into a number of distinct sections intended to highlight a specific aspect
of the analysis process. To avoid repetition, later tutorials assume familiarity with some of the
procedures used in earlier tutorials, so it is strongly recommended that you work through them
in the order they are presented.
At all points in the tutorials, the on-line help system is available and provides a detailed
description of the contents and role of all panels and modules in VFPi.
Introduction
This tutorial demonstrates how to create a black oil production VFP table for input as a data
keyword into the ECLIPSE simulator. The minimal amount of data required for this calculation,
namely the tubing geometry, fluid temperature profile, and oil, water and gas gravities will be
entered by hand.
In this tutorial
The stages of the tutorial are as follows.
• "Manual data entry" on page 27.
• "Saving data to disk" on page 31.
• "Calculating VFP curves" on page 31.
• "Calculating VFP tables" on page 33.
Table 3.1
Table 3.2
d Click on OK.
5 Right-click on the Fluids node for WELL_W1
a Select Expand Node from the pop-up menu.
The default fluid type is black oil.
6 Black Oil Fluid: Properties | Standard Conditions...
The default standard conditions are:
Standard Pressure = 14.7 psia
Standard Temperature = 60 F.
They are correct for this tutorial.
a Click on OK.
Table 3.3
or Gravity 45 API
Table 3.4
Table 3.5
or Specific Gravity 1
i Click on OK.
VFPi will calculate the corresponding surface densities.
For this tutorial, allow VFPi to use in-built correlations to calculate the PVT properties of
oil, water and gas.
8 Black Oil Fluid: Properties | Surface Tensions...
For this tutorial, allow VFPi to use in-built correlations to calculate the surface tensions.
a Click on OK.
9 Right click on Calculation Control node for WELL_W1.
a Select Expand Node from the pop-up menu.
This displays the Control Data panel.
Note This panel gives you the flexibility to choose to plot, for example, the calculated
pressure head against gas fraction (GFr) for a family of curves in water fraction (WFr).
c Click on OK.
d Enter the data as shown in Figure 3.2 into the Calculated: BHP versus Flow panel.
Discussion
By plotting these curves before calculating the VFP table, you can ensure that the table itself
has enough values at low flow rates to model the shape accurately. This is important because
the negative gradient part of a curve at low rates is unstable and ECLIPSE will shut in a well
which flows at these rates. At higher flow rates the curve becomes linear and can be represented
by only a few points.
c Click on Create.
This creates a VFP Table which is held internally within VFPi and shown as a
completed row in the main table of the VFP Table Supervisor panel.
d Close the VFP Table Data panel.
e Click on Write to File in the Supervisor panel.
f Enter the filename TESTDATA.VFP
g Click on OK
This writes the VFP table as a VFPPROD data keyword to this file.
Introduction
This tutorial demonstrates how to calculate the pressure losses along both vertical and deviated
tubing, using a different flow correlation in each tubing section. The use of artificial lift devices
will then be introduced, with the effect on the pressure vs. length profile of a down-hole pump
examined graphically. The flexibility of the data tree will then be demonstrated by reading in a
series of data files and using differing sets of tubing data, to examine how tubing diameter
affects a well’s performance. Finally, VFPi will be used to plot THP vs. Flow curves for a series
of reservoir pressure values.
In this tutorial
• "Loading an existing dataset" on page 35.
• "Adding a section of deviated tubing" on page 35.
• "Modelling ALQ devices" on page 38.
• "Displaying pressure vs. length profiles" on page 43.
• "Deleting well data" on page 45.
• "Merging multiple files" on page 45.
• "Analyzing the effect of different tubing diameters" on page 46.
• "Reservoir Pressures in VFP Curve Formation" on page 51
Table 3.6
Table 3.7
d Click on OK.
4 Right-click on the Calculation Control node for WELL_W1.
a Select Expand Node.
Note For non-vertical flow conditions, only the multi-phase flow correlations provided by
Petalas and Aziz, Beggs and Brill or Mukherjee and Brill should be used. For more
information, please look up “Multiphase Flow Correlations” in the on-line help.
e Click on Add.
This displays a new pump table.
f Enter the data as shown in Table 3.8.
Table 3.8
Rating 20
g Click on OK.
h Apply and Close both the Pump Table SV and the ALQ Devices panels.
VFPi can only model one pump in the tubing or pipeline, but its performance at
different rating values can be modelled by adding a number of pump data tables with
different rating values. These performance curves may be inspected graphically by
clicking on Plot in the Pump Table SV panel.
2 Tubing: Element | Tube Data...
a Click on Apply & Plot.
The new pump should now be visible in the Tubing module, displayed as a small
triangle. See Figure 3.6.
b Click on OK.
Note A gas dissolution fraction of 1.0 allows all the injected gas to dissolve in
undersaturated oil above the injection point, subject to the oil’s saturation limit. A
value of 0.0 prevents any dissolution of the gas.
f Click on OK.
g Apply and Close the ALQ Devices panel.
4 Tubing: Element | Tube Data...
a Click on Apply & Plot.
b Click on OK.
5 Tubing: Element | Artificial Lift...
a Select Compressor as the active device.
b Click on Examine Compressor.
c Enter a Tubing Length at Intake value of 1950 ft.
d Click on Add.
Table 3.9
Power value 1
f Click on OK.
g Apply and Close both Comp Table SV and the ALQ Devices panels.
VFPi can only model one compressor in the tubing or pipeline, but its performance at different
powers can be modelled by adding a number of compressor data tables with different power
values. These performance curves may be inspected graphically by clicking on Plot in the Comp
Table SV panel.
6 Tubing: Element | Tube Data...
a Click on Apply & Plot.
The new compressor should now be visible in the Tubing module, displayed as a small
circle. See Figure 3.8.
• Click on OK.
b Click on Calculate.
This should create a smooth pressure vs. length profile in the Detailed Traverse module
c Change the ALQ: PUMP field to 20 and enter Pump Active as the Traverse title.
This is the rating of the pump table entered in the previous section and the pump is now
activated.
d Click on Calculate.
A second profile should be added to the Detailed Traverse module which should look
similar to Figure 3.9.
The effect of the pump at 12000 ft is clearly seen, with all pressures below this point,
including the BHP, reduced in comparison to the traverse at the same flowing
conditions but without the pump.
e Click on Close.
Hint It is also possible to delete nodes by clicking with the right mouse button on the node
and selecting Delete Node from the drop-down menu.
At this stage, the Data Tree window should look similar toFigure 3.10.
Figure 3.10 Data Tree window
Discussion
Figure 3.14 shows how strongly the well’s performance depends on the diameter of the tubing,
especially at high flow rates where friction effects play a large part in the pressure difference
between the top and bottom of the tubing. At lower flow rates, an increasing difference between
the oil and gas velocities (known as the fluid slip) accounts for the BHP increasing as the flow
decreases. This behavior is also dependent on the diameter of the tubing and, as mentioned
before, is important because the well will shut in if it tries to flow in this negative gradient
unstable region.
Using the Data Tree to store different tubing data or even all the wells in a particular field, makes
comparison studies of well performances easy. You may also copy entire wells (via a right
mouse button menu option) and so version any changes made to the well (using the right mouse
button Notes option to record these changes).
c Click on OK.
3 Enter the data in the redrawn Calculated: THP vs. Flow panel as shown in Figure 3.16.
Note Don’t forget to supply a non-zero Productivity Index value for the linear IPR linking
the BHP and reservoir pressure. Other forms of IPR are not currently available in this
facility.
d Click on Plot2D to create a VFP curve similar to that shown in Figure 3.17. This curve
shows the effect of slip at low flow rates and friction at high flow rates as you have
seen earlier in this chapter. However it is upsidedown compared to the more usual BHP
vs. Flow VFP curve. Furthermore, for increasing flow values the BHP (used as the
starting point in the bottom to top pressure traverse for the THP) is decreasing as
demanded by the linear IPR for a constant reservoir pressure. To see this effect, try
changing variables such that VFPi again works with BHP values (and not reservoir
pressures) and then replot the VFP curve with the same parameters.
Introduction
This tutorial demonstrates how to predict well flowing rates by first constructing a series of well
performance or VFP curves and then superimposing Inflow Performance Relationships (IPRs)
upon them.
The tutorial then uses the 3D visualization facilities in VFPi to examine how the gas fraction
can affect the well’s performance.
In this tutorial
• "Entering tubing data" on page 55.
• "Entering fluid data" on page 56.
• "Entering calculation control data" on page 56.
• "Calculating well flow rates" on page 57.
• "Plotting 3D VFP curves" on page 60.
Table 3.10
b Click on OK.
4 Tubing: Element | Temperature
a Select Fixed fluid temperature profile.
b Click on OK.
Table 3.11
d Click on OK.
Hint You may find it quicker to expand a node by double clicking on it rather than selecting
the expand option from the pop up menu.
Hint It is possible to examine and edit the data, which controls the calculation of the length
steps as the pressure traverse calculation proceeds along the tubing string. To do this
click on Create Steps and Limits Panel.
The point where the IPR line intersects with a VFP curve indicates the calculated flow rate
for the well at that THP. Numerical values for this intersection point are shown in the IPR-
VFP Curve Intersections table.
Further IPR lines may be added to this plot by first defining the IPR’s Reservoir
Pressure and Productivity Index and then clicking on Add New IPR. Each IPR will
have an index associated with it as shown in the descriptive line for the IPR in the
legend box of the VFP Curves Module. This index is also shown in the first column of
the IPR-VFP Curve Intersections table. Using this index and the VFP Curve Legend
column in the table, you can obtain the numerical intersection point of a particular IPR
with a particular VFP curve.
To avoid creating a graph that is confused by too many IPR lines, click on Replace
Last IPR in place of Add New IPR. This will not increase the number of IPRs shown,
but just alter the last one plotted.
6 Click on Close on the LINEAR IPR panel.
7 VFP Curves: IPRs | Vogel's Method...
A panel will open that allows you to plot one or more IPR curves based on Vogel’s equation.
This was originally designed for a solution gas drive field for flow below the bubble point.
Above the bubble point pressure VFPi uses a linear IPR.
a Click on Close.
Note Only one type of IPR calculation can be displayed at any one time.
3 Click on Plot3D.
This should display a plot, similar to that shown in Figure 3.22.
Figure 3.22 3D VFP Curve Viewer
Introduction
One of the main areas of uncertainty in pressure traverse calculations lies in the multi-phase
flow correlations which supply the hydrostatic, friction loss and acceleration pressure gradients,
given the local flowing conditions. These are mainly based on semi-empirical fits to water/air
flow along transparent, laboratory scale pipes. The uncertainties arise from applying these
laboratory results to oilfield pipelines and wellbores.
This tutorial demonstrates how VFPi can tune or regress fitting factors within these multi-phase
flow correlations to achieve a best fit to a set of supplied pressure measurements from the
flowing well.
In this tutorial
• "Entering pressure measurements" on page 63
• "Matching pressure measurements" on page 64.
Measurement
1 2 3 4 5 6 7 8 9 10
Number
Weight 1 1 1 1 1 1 1 1 1 1
Flow: OIL 200 400 600 800 1000 1200 1500 2000 4000 6000
Pres: THP 100 100 100 100 100 100 100 100 100 100
Water Fraction (WFr) 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1
Tubing Pressure 205 202 190 137 130 138 152 176 442 710
Tubing Length 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000
Note The number of observations must be greater than or equal to the number of fit factors
to be varied. So, if only four data points have been entered, at least one of the five fit
factors would have to be fixed.
More information concerning the Match Control panel and the fitting factors themselves
can be found in the on-line Help.
a Enter the Variable/Fixed selection data as shown in Figure 3.23.
b Set the Hydrostatic, Slip, Gas Holdup and Mach Number factors to be fixed, with a
value of 1 for each, minimum and maximum values of each to 0 and 10 respectively,
and active status for each. Set the maximum number of iterations to 25, and the
regression target r.m.s. value to 5 psia.
Note You may also manually set the value of the fit factors and check the r.m.s. difference
between the observed and calculated pressures by clicking on Show Match for Current
Fit Factors.
Note Setting too tight a target on the r.m.s. difference between calculated and observed
pressures is not advised, because of the inaccuracies in the flow correlations and the
inherent uncertainty in the numerically calculated pressure. Inaccuracies can be in the
order of several psia.
Introduction
As well as calculating VFP tables, VFPi can also read in existing tables and, from them, display
BHP vs. flow cross-sections, for example. Once read in, VFPi offers a number of facilities to
alter the BHP values held in a VFP table, including resetting failed traverse pressure values,
stabilizing the table, and editing the BHP values in it by graphically altering tabular cross-
sections. All of these facilities are demonstrated in this tutorial.
In this tutorial
• "Reading an existing VFP table" on page 67.
• "Viewing and editing VFP table data" on page 67.
• "Stabilizing VFP table data" on page 71.
• "Saving the VFP table" on page 74.
Note The log window should show a series of messages, warning that some of the BHP
values in this table are set at 1.0e10. This value is used to indicate that the flow was
choked and the pressure traverse was terminated.
Note VFP tables created by the VFP program before the 94A release do not contain
information on the unit’s system of the data held in the table. This may also be the case
for VFP tables created by 3rd party programs. For such tables, VFPi cannot check
whether there is an inconsistency between table and program unit’s systems. If you
wish to read in such VFP tables, it is recommended that the correct unit’s system is set
in VFPi at the start of the session, as the program will assign it’s own system to any
read VFP table in which this is not defined.
Alternate
Graph
Windows
2 Double-click on the first alternate (small) graph window (shown in Figure 3.24.)
This should swap the contents of the main graph window with that of the alternate graph
window, which is currently empty.
3 Return to the VFP Table Supervisor panel.
a Click on Change 1.0e10 pressure values.
b Enter 2000 psia as the value in the field Change pressure values from +1.0e10 to
c Click on OK
d Select Yes from the drop-down menu found in the Editable column.
e Click on Apply. You must apply the data in order to update VFPi.
f Click on Close.
4 Return to the BHP vs. Flow panel.
a Click on Plot 2D.
The VFP Curves module should now look similar to Figure 3.25.
Figure 3.25 VFP curves module showing BHP vs. oil for 5 different values of THP
You can undo any changes to the VFP table data by choosing VFP Curves: Edit | Undo
Graph Edit.
To undo a change made to a different curve, first select that curve in the Legend and then
choose VFP Curves: Edit | Undo Graph Edit.
Caution The stabilization option should be used with caution as it will give misleading
results for the ECLIPSE well model at low flow rates. Note that the WVFPEXP
keyword (see the ECLIPSE 100 reference manual) contains a switch that results
in the simulator shutting in any wells that operate in the stabilized region at the
end of the timestep. This prevents wells continuing to operate when physically
they cannot.
Introduction
In this tutorial a compositional fluid model will be used, in place of the black oil fluid model
used in all the tutorials to date. With VFPi working in its compositional mode, the VFP tables
generated are suitable for use by the compositional ECLIPSE 300 simulator; they are not
compatible with the ECLIPSE 100/200 simulators.
This tutorial will also demonstrate how VFPi can calculate the temperature of the flowing fluid
by solving a heat balance equation between this fluid and an external surrounding environment
with a fixed temperature vs. length profile. Prior to this, all the tutorials have relied on a user-
supplied fixed temperature vs. length profile being imposed on the flowing fluid itself.
In this tutorial
• "Defining a fluid compositionally" on page 75.
• "Creating a compositional VFP Table" on page 77.
• "Thermal mode data" on page 78
• "Examining temperature vs. length profiles" on page 81.
File Filter
c Click on Create
d Click on Close.
e Click on Close.
The fixed external temperature profile is shown in the table at the top of the panel. A
choice is then presented of the three ways of entering the thermal properties data for
the tubing string.
c Select Use casing and annulus thermal description from panel.
d Click Examine Heat Transfer Data.
e Enter the data as shown in Table 3.13.
This table describes the extents and thermal conductivities of the metallic casings and
their immediate annuli which collectively form the tubing.
Casing
Casing ID Casing OD Ann Cond Ann OD
Description Start (ft) Stop (ft) Cond (Btu/
(in.) (in.) (Btu/hr/F/ft) (in.)
hr/F/ft)
0 8000 4 5 10 1
0 7000 7 7.5 10 1
7000 8000 7 7.5 10 1 12
0 7000 12 13 10
8000 10150 4 5 10 1 7
g Click on OK.
At this point VFPi internally calculates an overall heat transfer coefficient vs. length
profile along the tubing. This is used in subsequent pressure traverses when calculating
the temperature.
Table 3.14
Flowing Conditions:
Flow: WGV 12000 Mscf/day
Inlet 180 F
Temperature
Note The inlet temperature of the fluid for a production well is defaulted to the reservoir
temperature at the bottom of the wellbore.
The difference between these two profiles depends on the overall heat transfer coefficient
between the fluid and environment, the fluid rate and the specific heat capacity of the fluid
(default values are used here).
The pressure traverse was performed using the compositional fluid description. VFPi can
also work in this thermal mode using a black oil fluid description.
5 Click on Close.
Introduction
This tutorial demonstrates how to create a VFP table whose purpose is to model the pressure
loss across a bean or choke for a variety of flowing conditions. Such a table may be used in the
ECLIPSE 200 Multi-Segment Well model whereby the effects of a variable choke at, say, the
heel of a lateral may be modelled by assigning the pressure loss calculation for the appropriate
segment to be taken from this VFP table. The choke will be placed in the middle of a short
horizontal piece of smooth tubing. This will ensure that the pressure losses will be dominated
by the choke and not by the hydrostatic and frictional effects of the fluid flow through the
tubing. This tutorial also shows how to set the bean/choke diameter as the ALQ variable in the
VFP table. Please refer to "Sachdeva Choke Model" on page 273 while working through this
tutorial as it gives details on the Sachdeva choke model which is able to handle both critical and
sub-critical flow through the bean.
In this tutorial
The stages of the tutorial are as follows.
• "Entering tubing data and selecting bean model" on page 83
• "Entering fluid data" on page 85
• "Entering calculation control" on page 86
• "Calculating VFP tables" on page 86
• "Viewing VFP tables" on page 87
It is not necessary to enter the roughness, tubing diameter or casing diameter for the
second row as these values have not changed.
b Click on OK.
4 Tubing: Element | Bean...
This displays the Bean parameters panel.
a Choose the Sachdeva model by clicking on the corresponding page of the folder.
b Enter the bean parameters as shown in Figure 3.35.
c Click on OK.
Figure 3.35 Bean parameters panel
Note To select a model, ensure that it is displayed as the front page of the folder when
clicking OK or Apply. Do not forget to click the Bean is Active tick box.
6 Click on OK.
Table 3.17
or Gravity 45 API
Table 3.18
Table 3.19
or Specific Gravity 1
5 Click on OK.
VFPi will calculate the corresponding surface densities.
Note The three pages of the folder have to be selected and filled in order to have a complete
set of parameters for the fluids properties.
For this tutorial, allow VFPi to use in-built correlations to calculate the PVT properties
of oil, water and gas
Note The aim of this tutorial is to model a bean using the Sachdeva choke model. Therefore,
the choice of multi-phase flow correlation is not important. Nevertheless, for non-
vertical flow, only the correlations provided by Beggs and Brill, Mukherjee and Brill
or Petalas and Aziz should be used.
b Click on OK.
Table 3.20
OIL (stb/day) THP (psia) WOR GOR (Mscf/stb) BEAN (64ths in)
100 200 0.5 2 8
300 350 16
500 500 24
700 650 32
900 40
1200 48
1500 56
2000 64
2500
Note The ALQ is set to the Bean diameter. In this case, the ALQ is not a proper Artificial
Lift Quantity, but can be seen as a fifth variable in the flowing condition. Setting the
primary variable to Artificial Lift means here that the Bean Diameter is the primary
variable when plotting the BHP.
f Click on OK.
g Verify that the data is as shown in Figure 3.38
Decreasing the diameter of the bean leads to an increase in the BHP. At small values of
diameter, the flow through the bean is choked and the BHP is independent of the THP.
Please refer to "Sachdeva Choke Model" on page 267 for more details about the prediction
of the Sachdeva choke model.
Introduction
The Configuration File (CONFIG.ECL) is the primary method of passing configuration data to
the ECLIPSE software programs. It may be used to configure several aspects of a system for
use with VFPi for example printers, and also as a means of passing other key data, such as
passwords. The master Configuration File is called CONFIG.ECL and resides in the ecl/
macros directory. However, VFPi actually reads a file called ECL.CFG, so the program
macros must copy the master Configuration File (CONFIG.ECL) into a file called ECL.CFG
in the current directory. An error will be recorded if the configuration file is not present, and the
program run may be terminated. On completion of the program run the program macro will
delete the local copy.
The auxiliary configuration files (ECL.CFA and ECL.CFU) are optional, and if present in the
local directory will be processed in the same way as the main configuration file. These files
allow information that is run or user dependent to be passed to VFPi without having to alter the
master configuration file.
ECL.CFU is a user specific configuration file, and should be stored in the user’s login directory.
If present in the users login directory, ECL.CFU will be copied, by the macro, to the local
working directory. Any entries in ECL.CFU will override those in ECL.CFG.
ECL.CFA is a local auxiliary configuration file which resides in the users working directory.
ECL.CFA will override ECL.CFU and ECL.CFG.
The configuration file is divided into several sections, declared using the word SECTION, most
of which will be specifically set for the type of installation required that is passwords, monitor
types, paths to various files. However, some of the sections allow the user to set the fonts etc.
to their own preference. These sections are: FRAMEWORK, FRAMEDRAW, and DISPLAY.
DISPLAY allows the menu fonts and panel colors to be more easily defined by the user.
Previously it was necessary to do this by making entries in the .Xdefaults file for each user. Now
the DISPLAY section allows different configuration settings for different Xterms on the
network. Individual users can now create their own color scheme and text sizes by putting an
ECL.CFU file in their home directory, which contains a DISPLAY section listing their
preferences and working terminal.
SUBSECT WIDGETFONT
FONT Sets typeface used in panels.
STYLE Sets style used in panels.
SIZE Panel character size.
Hint If you are using a low resolution graphics card, some panels may be too large to fit on
the screen using the default settings. Reducing the WIDGETFONT size will result in
smaller panels.
SUBSECT TEXTFONT
FONT Sets typeface for Log Window.
STYLE Sets style used in Log Window.
SIZE Log Window character size.
SECTION DISPLAY
The following keywords, assigned by their subsections, are currently available in DISPLAY:
SECTION FRAMEDRAW
The following keywords, assigned by their subsections, are currently available in FRAMEDRAW:
where
The truncation error control restricts the length step while the pressure gradient is changing
rapidly, and allows it to expand when the gradient changes more slowly. A target value and an
upper limit for the truncation error can be set in the Steps and Limits panel. A limit can be
applied to the factor by which successive length steps are allowed to increase. In addition, over-
riding upper and lower limits for the length step size, and an upper limit for the pressure step,
can be set.
The length step size is also limited by the proximity of a tubing diameter change, a deviation
angle change, a multi-phase flow correlation change, a pump or compressor, a gas lift injection
valve, and of course the end of the tubing. If the allowable step size is large enough to reach all
the way to one of these points, it will do so. If it can reach over half the way, but not all the way,
then the step size will be chosen to reach half the way there.
The limiting constraint for each length step is indicated in the pressure traverse information
printed on the detailed output file, in the following form:
INIT - length set by the required initial length step size
where
F2 is one of the fitting factors which can be set in the Control Data panel
g is the gravitational acceleration (32.2 ft/sec2)
gc is the conversion factor 32.2 lbm-ft/lbf-sec2
DENm is the density of the flowing mixture (lbm/ft3)
DSTEP is the depth increment over the length step (ft).
The mixture density depends on the local densities of the phases and the gas volume fraction:
DEN m = H g ⋅ DEN g + ( 1 – H g ) ⋅ DEN l [EQ B.4]
where
The gas volume fraction is determined from the multi-phase flow correlations. In the simple
case of homogeneous flow, where the gas and liquid flow with the same velocity (as in the mist
flow regime), the gas volume fraction is given by:
qg
H g = ---------------- [EQ B.5]
ql + qg
where
But in general there is slippage between the gas and liquid phases. The slip velocity depends on
the properties and flow rates of the phases, and the multi-phase flow correlations take these
factors into account when computing the gas volume fraction.
The oil and water phases are treated as a combined liquid phase. With the exception of viscosity,
the properties of the liquid phase are calculated as flow-weighted averages of the corresponding
properties of the oil and water phases.
where
The pressure loss gradient dPf ⁄ dL is determined from the multi-phase flow correlations. The
gradient is set negative if the well is an injector, to allow for the flow being in the opposite
direction to the flow in producers.
where
Instead of calculating this term directly, we follow the method used by Orkiszewski. Assuming
the acceleration head is significant only in the mist flow regime or in single-phase gas flow, the
gas law can be used to express the quantity as:
DEN m ⋅ V m ⋅ ΔV m W m ⋅ q g ⋅ ΔP
------------------------------------------- = – ------------------------------------
- [EQ B.9]
144 ⋅ g c 144 ⋅ g c ⋅ A ⋅ P
2
where
A
2 is the square of the cross-sectional area of the tubing or annulus.
If the denominator is zero or negative the flow is choked. If this happens, the calculation is
abandoned and a warning message is written.
Introduction
The fluid properties vary with the temperature and pressure in the tubing. In each length step,
the temperature is either interpolated from tabular input data or taken as the latest iterate from
a solved enthalpy balance equation (see "Heat Transfer Calculation" on page 141); the pressure
is taken as the latest iterate of the average pressure in the length step.
The fluid properties can be determined from the local conditions in the tubing in either of two
ways. The user can supply the properties in tabular form in the input data, or the properties can
be calculated by the program from built-in correlations. It is possible to mix these two options,
by supplying tables for some properties and leaving the remaining properties to be calculated
from the correlations.
The built-in correlations for the oil PVT properties can be tuned to fit data measured at bubble
point conditions, separator or tubing head conditions, and under-saturated reservoir conditions.
The tuning is performed with the aid of 7 tuning factors FO1, FO2,...., FO7. These are initially
all set to 1.0, but will be selectively re-set to match any data entered in the Oil PVT Correlation
Tuning panel. See the "Correlation Tuning" on page 119 for a description of how these factors
are calculated.
The built-in fluid property correlations are described below.
where:
The API gravity of oil is related to its specific gravity relative to water ( SPGo ) by:
141.5
API = ------------- – 131.5 [EQ C.2]
SPG o
If the oil is saturated (producing GOR > Rssat), the formation volume factor (FVFo rbl/stb) is
calculated from the relation given by Frick:
1.175
FVF o = 0.972 ⋅ FO 2 + 0.000147 ⋅ FO 3 ⋅ F [EQ C.3]
where FO2 and FO3 are property tuning factors, and:
SPG g 0.5
F = R ssat ------------- + 1.25 ⋅ T [EQ C.4]
SPG o
If the oil is under-saturated (producing GOR < Rssat), the bubble-point pressure (PBUB) is first
calculated as:
GOR 0.83
PBUB = 18 ⋅ FO 1 ⋅ -------------
( 0.00091T – 0.0125API )
SPG
⋅ 10 [EQ C.5]
g
where:
Vazquez and Beggs provide a correction for other values of the separator pressure (PSEP psia):
PSEP
SPGS g = SPG g 1 + 5.912 ⋅ 10 SPG o ⋅ TSEP ⋅ log -------------
–5
114.7
[EQ C.8]
where:
VFPi applies this equation with PSEP and TSEP at standard surface conditions.
y = 3.0324 – 0.02023API
– 0.515
A = 10.715 ( R s + 100 )
– 0.338
B = 5.44 ( R s + 150 )
If the oil is under-saturated, the viscosity of oil at the bubble point pressure (VISCob) is
calculated as given above, and then transformed using Standing’s fit to Beal’s curve for under-
saturated oil:
VISC o = VISC ob + X ( P – PBUB ) [EQ C.11]
where:
1.6 0.56
[ 2.4 ( VISC ob ) + 3.8 ( VISC ob ) ]
X = FO 7 ---------------------------------------------------------------------------------------
5
10
Internally, the viscosity is required in units of lbm/ft-sec. The viscosity in cP is transformed into
these units by dividing by 1488.
where:
y is the “reduced density” which is calculated by Newton iteration from the relationship:
2 y + y 2 + y 3 – y 4
– 0.06125 P r t ⋅ exp [ – 1.2 ( 1 – t ) ] + ------------------------------------ [EQ C.14]
3
(1 – y)
2 3 2 2 3 ( 2.18 + 2.82t )
– ( 14.76t – 9.76t + 4.58t )y + ( 90.7t – 242.2t + 42.4t )y = 0
where
The values of the critical pressure and temperature are obtained from Katz’s curves for
miscellaneous or “California” gases, as reported by Standing:
2
P crit = 677 + 15 ⋅ SPG g – 37.5 ( SPG g ) [EQ C.15]
2
T crit = 168 + 325 ⋅ SPG g – 12.5 ( SPG g ) [EQ C.16]
986
x = 3.5 + --------- + 0.01M
TR
y = 2.4 – 0.2x
M is the molecular weight of the gas, which is calculated from the gas gravity:
M = 28.966 SPGg
DT = T - Tsurf in °F and
DP = P - Psurf in psi.
DLO and DLG represent the local densities of oil and gas in g/cm3
which are set equal to the values 567 and 213 respectively that are given by Katz for crude oil.
The interfacial tension is transformed internally into units of lbm/sec2 by dividing by 453.5.
DT = T - Tsurf in °F
The interfacial tension is transformed internally into units of lbm/sec2 by dividing by 453.5.
Q fo = ( Q o – R v ⋅ Q g ) ⁄ ( 1 – R s ⋅ R v )
The local volumetric flow rates of the phases (in ft3/sec) are then obtained:
–5
q o = 6.498x10 Q fo FVF o [EQ C.22]
–5
q w = 6.498x10 Q w FVF w [EQ C.23]
–5
q g = 1.157x10 Q fg FVF g [EQ C.24]
( DEN ws )
DENw = ---------------------- [EQ C.26]
FVF w
( DEN gs + R v ⋅ DEN os )
DENg = ------------------------------------------------------ [EQ C.27]
FVF g
where:
DENos, DENws and DENgs are the phase densities at standard surface
conditions.
45
40
viscosity ratio (visc emulsion/visc clean oil)
35
30
25
20
15
10
0
0 10 20 30 40 50 60 70
Above a percentage of 60-70%, the emulsion inverts and brine becomes the continuous phase.
The viscosity of the emulsion then can be approximated by the brine viscosity. However, near
the inversion point, extremely high viscosities can be attained.
Beggs, H. D., and Estimating the Viscosity of Crude Oil Systems, [Ref. 2]
Robinson, J. R.: J. Pet. Tech., Page 1140 - 1141, Sept. 1975.
Vol. 2, Millet the Printer Inc., Dallas, for the Society of Petroleum Engineers.
Hall, K. R., and How to Solve Equation of State for Z-Factors, [Ref. 6]
Yarborough, L.: The Oil and Gas Journal, Page 86 - 88, Feb. 18’th, 1974.
Katz, D. L., Surface Tension of Crude Oils Containing Dissolved Gases, [Ref. 7]
Monroe, R. R., and Pet. Tech., SPE Reprint Series, No. 15, “Phase Behavior”, Page 1624, Sept. 1943.
Trainer, R. P.:
Standing, M. B.: Volumetric and Phase Behavior of Oil Field Hydrocarbon Systems, [Ref. 10]
9th printing by Millet the Printer Inc., Dallas, for the Society of Petroleum Engineers, .1981
Vazquez, M., and Correlations for Fluid Physical Property Predictions, [Ref. 11]
Beggs, H. D.: J. Pet. Tech., Page 968 - 970, June 1980
Introduction
The built-in correlations for the oil PVT properties can be tuned to fit data measured at bubble
point conditions, under-saturated reservoir conditions and separator or tubing head conditions.
The tuning is performed with the aid of 7 tuning factors FO1, FO2,...., FO7. These are initially
all set to 1.0, but will be selectively re-set to match any data entered in the Oil PVT Correlation
Tuning panel.
The measured data and the equations used to calculate the tuning factors is described below.
where:
PBUB is in psia
RRES is in scf/stb
SPGg is the gas specific gravity (relative to air)
TRES is in °F
API is the oil gravity in °API.
where:
BBUB and BTOPare in rb/stb.
Fbub and Ftop refer to the parameter:
SPG g 0.5
F = R ssat ------------- + 1.25T [EQ D.3]
SPG o
If BBUB is set but not BTOP, FO2 and FO3 are calculated from:
1.175
BBUB = 0.972 ⋅ FO2 + 0.000147 ⋅ FO2 ⋅ F bub
[EQ D.4]
FO3 = FO2
where:
PBUB and PRES
are in psia
RRES is in scf/stb
TRES is in °F
SPGSg is the gas gravity from a separator at 100 psig
(the formula for this is given in [EQ C.8])
API is the oil gravity in °API.
where:
VBUB and VTOP are in cP.
Abub, Bbub, Atop and Btop refer to the parameters:
– 0.515
A = 10.715 ( R ssat + 100 )
– 0.338
B = 5.44 ( R ssat + 150 )
VISCod is the viscosity of dead oil, which is calculated as described in "Black Oil
Correlations" on page 105
If VBUB is set but not VTOP, FO5 and FO6 are calculated from:
B bub
VBUB = FO5 ⋅ A bub ⋅ ( VISC od )
[EQ D.7]
FO6 = 1.0
where
PBUB and PRES are in psia
VBUB is in cP.
Introduction
If VFPi is run in compositional mode, the hydrocarbon fluid properties are found from a phase
equilibrium calculation performed on the wellstream fluid at the local temperature and pressure
of the pipe. This calculation is performed within the PVTLIB annex, as used by our PVTi
package, and provides the composition and molar volumes of the hydrocarbon phases present
together with the vapor mole fraction. For a detailed description of this calculation, the user is
referred to the technical appendices in either ECLIPSE 300 or PVTi program manuals.
In order to use the multiphase flow correlations for the pressure change along the pipe, the
density, volumetric flow rate and viscosity of oil and gas, together with the oil-gas surface
tension, are required. The calculation of these properties using the results of the phase
equilibrium calculation is described below.
WLIQ
DENO = --------------- [EQ E.2]
VLIQ
where:
WVAP is the weight of one mole of vapor
WLIQ is the weight of one mole of liquid
VVAP is the volume of one mole of vapor
VLIQ is the volume of one mole of liquid
where:
The hydrocarbon molar rate itself is determined from the flow rate specified in the FLOW
keyword, according to the definition of the flow variable:
If the flow variable is WGV (wet gas volume rate),
WGV
HMLR = ----------------- [EQ E.7]
VWET
where:
WGV is the wet gas volume rate
VWET is the volume of ideal gas at surface conditions
where:
Introduction
When VFPi is run in compositional mode, the fluid properties are determined by performing a
phase equilibrium calculation on the wellstream fluid at the local pressure and temperature of
the pipe (see "Compositional Fluid Property Calculations" on page 125). This appendix
describes the three methods available to help the user specify a range of wellstream
compositions for the pressure traverse calculations.
CVD experiment
In the simulation of this experiment, the saturation pressure of the initial reservoir fluid is
determined and the molar volume at this pressure noted. The pressure is then dropped from its
saturation value in a number of stages (also specified by the user) to the abandonment pressure.
At each stage, the oil and gas composition is recorded and the volume occupied by the two-
phase fluid is calculated. An amount of gas is then withdrawn such that the fluid again occupies
the original saturation volume. This calculation is repeated at the next pressure stage with the
reduced amount of fluid. In this manner, the composition of the reservoir gas is thus
approximated.
DL experiment
In the simulation of this experiment, the saturation pressure of the initial reservoir fluid is again
determined. The pressure is then dropped from this value in a number of stages to the
abandonment pressure. At each stage the composition of the oil and gas present is noted, and all
the gas is then removed from the system. The remaining oil is then flashed at the next pressure
and the process repeated. The change in properties of the reservoir oil during depletion is thus
approximated.
Wellstream fluids
Gas condensates
For a gas condensate it is assumed that the dropout liquid, formed at reservoir pressures below
the saturation pressure, does not significantly contribute to the wellstream fluid. Thus it is
suggested that the user concentrate wellstream selection from the vapor branch of the depletion
experiment. Note that by default VFPi picks three of the wellstream compositions at the lightest
reservoir vapor, the heaviest reservoir liquid, and the undersaturated fluid of the reservoir.
Volatile oils
In a volatile oil reservoir both the liquid and vapor phases may be mobile, and thus the
wellstream will consist of some combination of these. In order to cover as wide a range of
wellstream compositions as possible, it is suggested that the user picks wellstreams evenly
across both the liquid and vapor arms of the depletion experiment table. Note that by default
VFPi picks three of the wellstream compositions at the lightest reservoir vapor, the heaviest
reservoir liquid, and the undersaturated fluid of the reservoir.
Undersaturated
Liquid
Psat
Two Phase Region
A
PA Liquid Branch
Tie Line
Vapour
Branch
Note The pressure dependent wellstreams option does not produce a wellstream
composition table, because wellstream compositions are effectively a function of two
variables - MMW and BHP.
Introduction
In order to determine the fluid properties during a pressure traverse calculation, both the fluid
temperature and pressure must be known. The fluid temperature along the tubing can either be
fixed by the user via an input table or it can be calculated during the traverse and thus take into
account heat exchange with the surrounding environment and the Joule-Thomson effect.
To calculate the fluid temperature during a pressure traverse along the tubing, an enthalpy
balance equation must be iteratively solved in conjunction with the momentum balance
equation for the fluid pressure. The enthalpy balance equation and its solution are described in
this appendix.
In the calculation of the heat exchange between the tubing fluid and the surrounding
environment, an overall heat transfer coefficient between the two must be supplied. This
coefficient may be entered directly as a function of tubing length. Alternatively the heat transfer
coefficient can be calculated from the conductivities of the casings and annuli which separate
the tubing fluid from the surrounding environment. This is also described in this appendix.
where:
h is the fluid enthalpy in Btu/lbm
L is the length along the tubing in ft
g is the gravitational acceleration (32.2 ft/sec2)
gc is the conversion factor (32.2 lbm-ft/lbf-sec2)
θ is the inclination angle from horizontal
J is the mechanical equivalent of heat (778 ft-lbf/Btu)
v is the fluid velocity in ft/sec
U is the steady state overall heat transfer coefficient in Btu/sec/°F/ft2
d is the tubing internal diameter in ft
T is the fluid temperature in °F
Te is the environment or surrounding temperature in °F
w is the mass flow rate in lbm/sec
The enthalpy gradient can be expressed in terms of the temperature and pressure gradients as
follows:
dh dT dp 144
= cp ⋅ – η ⋅ cp ⋅ ⋅ --------- [EQ G.2]
dL dL dL J
where:
p is the fluid pressure in psi
cp is the specific heat capacity at constant pressure in Btu/lbm/°F
w ⋅ cp
L r = ------------------- [EQ G.4]
U⋅π⋅d
and
ρ ⋅ η ⋅ c p dp ρ⋅g ρ ⋅ v dv
Φ = --------------------- ⋅ ⋅ 144 – ------------ ⋅ sin θ – ------------ ⋅ [EQ G.5]
J dL J ⋅ gc J ⋅ gc d L
If for a small segment of the tubing the surrounding temperature is a linear function of depth:
i
T e = T e + g e ⋅ L ⋅ sin θ [EQ G.6]
Te
i is the environment temperature before the length step L
and all non-temperature terms are assumed constant, [EQ G.3] can be integrated to give:
f f i i
T = T e + ( T – T e )exp ( – L ⁄ L r ) [EQ G.7]
Φ ⋅ Lr
– g e ⋅ L r ⋅ sin θ [ 1 – exp ( – L ⁄ L r ) ] + -------------- [ 1 – exp ( – L ⁄ L r ) ]
ρ ⋅ cp
where temperatures superscripted with an f denote values after the length step.
This equation, together with that for the pressure at the end of a length step (see "Calculating
Pressure Traverse" on page 97) is solved iteratively using averaged mid-step values for ρ , Lr,
cp and Φ . The convergence tolerances for the temperature and pressure in this iterative
calculation may be set in the Steps and Limits panel as generated from the Control Data
panel.
For two-phase flow, the heat capacity and Joule-Thomson coefficient are a mixture of the single
phase gas and liquid values as follows (Alves):
c p = ( w g ⋅ c pg + w L ⋅ c pL ) ⁄ w [EQ G.8]
1 wg T ∂z wL
η = – ------------- ⋅ ------ ⋅ – --- ⋅ + ------ [EQ G.9]
c p ⋅ w ρ g z ∂ T ρ L
where:
The temperature stepping [EQ G.7] must be solved with the direction of fluid flow from a known
inlet temperature through the tubing to an unknown outlet temperature. This presents no
problems for a bottom-to-top production well traverse or a top-to-bottom injection well traverse
when the inlet pressure is given and the outlet pressure is to be calculated. When the required
pressure traverse is in the reverse direction to the fluid flow however and the outlet pressure is
given, then a series of traverses in the direction of the fluid flow must be performed to iterate
on to the known outlet pressure by varying the unknown inlet pressure.
j = 1
-------------------------
k
j
-
where:
k
j is the thermal conductivity of the jth ring in Btu/sec/ft/°F
ro
j is the outer radius of the jth ring in ft
ri
j is the inner radius of the jth ring in ft
Note Note that this calculation assumes the tubing to be either wholly buried in rock or
completely exposed to air or water. If exposed to air or water, convection in the
surrounding medium is ignored. The tubing fluid flow is also assumed to be
sufficiently turbulent that the fluid temperature is uniform in cross-section.
Standing, M. B. “Volumetric and Phase Behavior of Oil Field Hydrocarbon Systems” [Ref. 19]
Introduction
One of the main areas of uncertainty in pressure traverse calculations lies in the multi-phase
flow correlations which supply the hydrostatic, friction loss and acceleration pressure gradients
given the local flowing conditions. These are mainly based on semi-empirical fits to water/air
flow along transparent, laboratory scale pipes. The uncertainties arise from applying these
laboratory results to oil field pipelines and wellbores. In an attempt to lessen this uncertainty,
the pressure matching module allows the user to performs a series of pressure traverse
calculations which automatically tune or regress “fitting factors” within these multi-phase flow
correlations to achieve a best fit to a set of supplied pressure measurements from flowing wells.
No attempt is made to alter other factors within the pressure traverse calculation such as tubing
data or any of the fluid properties during the regression calculation. This is because this data is
assumed to be well known in comparison to the multi-phase flow correlation uncertainties.
The observed data, multi-phase flow correlation fitting factors and the regression technique
itself are described in this Appendix.
where
p is the fluid pressure
L is the length along the tubing
Fg is the fourth factor
where
calc
pi is the calculated pressure for the ith observation
The Root Mean Square for this step is then formed from all the residuals as follows:
N
1
rms = ---- ⋅
N i=1 ri ⋅ ri [EQ H.4]
where
This rms is reported at the end of each step as the algorithm tries to reach the set target value
by varying the fitting factors on the basis of the current residuals, their gradients and curvatures.
The rms target may not be reached because, for example, the maximum number of steps had
been reached, or no further improvement in the rms could be found by additional variations in
the fitting factors.
Regression algorithm
The regression algorithm itself is based on the Levenberg-Marquardt method (Denis and
Schnabel). This is a hybrid method which smoothly varies between a second order Newton type
minimization method and a first order steepest descent method. It combines the efficiency of a
second-order method near a solution with the robustness of a first order method far from a
solution.
This “pseudo” second order method has been constructed to ensure that it will always proceed
towards a genuine minimum. It should be noted however, that it may not in general find the
global minimum.
Introduction
The command language as implemented in VFPi allows the user to perform tasks within the
program as dictated by a command script file. During playback of this file, VFPi is effectively
running in a batch mode; it expects and allows no user interaction.
In its current state, the anticipated role of this feature is to enable the user to create multiple,
large VFP tables. With VFPi running in its normal interactive mode, the user would have to wait
for the completion of VFP table calculation before entering the data for the next table etc. Using
the command language however, the data for all the tables could be set up in advance and VFPi
may be left running the command script over night if necessary.
Note Note the use of “&” as a continuation character in the argument of the ReadKeyword
command. Further examples of command scripts are provided at the end of this
appendix.
Silent running
When VFPi is playing a command script file, it is effectively in batch mode, with the log
window reporting its progress through the file’s set of commands. The user can perform no
further VFPi tasks until the script file commands have been completed.
Commands
The commands that are recognized in a script which can be played back are described below.
With the exception of the ReadKeyword and SelectWell commands, all of the below will
be recorded in the VFPI.CMD file when the appropriate task is performed interactively by the
user.
2 Alter the tubing string geometry and create and write another VFP table
3 Reset the data back to the baseline by re-reading the original keyword file
5 Reset the data back to the baseline by re-reading the original keyword file, that is return to
using correlations for the oil PVT properties.
6 Alter the flow correlations used and create and write a new VFP table
2 Instruct VFPi to fit the measured data (to an rms of 5 psia) and then create a VFP table (now
using calibrated pressure traverses) and write this table to a file. Note that the final rms
value, the number of iterations taken and the fit factor values will be written out to the Log
Window after the regression.
3 Reset the fit factor values and allow only the Friction and Hydrostatic factors to vary
(between 0 and 5).
4 Repeat the regression (with a tighter rms target) and then create another VFP table (using
differently calibrated pressure traverses) and write this table out to a file.
Introduction
VFPi can generate a table of BHP values tabulated against the flowing condition variables
(FLO, THP, WFR, GFR and ALQ) for use by ECLIPSE simulators to perform well tubing head
pressure calculations for a production well. The table format is the same for both black oil and
compositional VFP tables, with only the flowing condition variables referring to different
quantities in each case.
Black oil tables have the following choices of flowing condition variables:
FLO = oil, liquid, or gas production rate
PRS = tubing head or bottom hole fixed pressure
WFR = water-oil ratio, water cut, or gas-water ratio
GFR = gas-oil ratio, gas-liquid ratio, or oil-gas ratio
ALQ = a fifth variable that can be used to incorporate an additional look-up parameter, such as
the level of artificial lift.
The table is headed by the keyword VFPPROD and consists of the following records of data,
each record terminated with a slash (/).
Record 1
Basic data for table
Record 2
NFLO FLO (flow rate) values, in ascending order, terminated with a slash (/).
Record 3
NPRS PRS (pressure) values, in ascending order, terminated with a slash (/).
• UNITS: psia (FIELD) or barsa (METRIC)
Record 4
NWFR WFR values, in ascending order, terminated with a slash (/).
Record 5
NGFR GFR values, in ascending order, terminated with a slash (/).
Note that when running the ECLIPSE Gas Lift Optimization facility, the simulator assumes the
ALQ to be the lift gas injection rate (GRAT).
Record 7 to NPRS*NWFR*NGFR*NALQ + 6.
NPRS*NWFR*NGFR*NALQ successive records each containing the following items, and
each terminated with a slash (/).
1 NP (PRS value number)
2 NW (WFR value number)
3 NG (GFR value number)
4 NA (ALQ value number)
5 Calculated pressure at
• 1st FLO value
• NPth PRS value
• NWth WFR value
• NGth GFR value
• NAth ALQ value
6 Calculated pressure at
• 2nd FLO value
• NPth PRS value
• NWth WFR value
• NGth GFR value
• NAth ALQ value
:
:
:
NFLO+4
NF = 1 to NFLO
NP = 1 to NPRS
NW = 1 to NWFR
NG = 1 to NGFR
NA = 1 to NALQ are covered.
If VFPi is running in compositional mode, the VFPCHECK keyword is appended to the end of
the table, containing the following data items
Items 1, 3 and 4 are in the units as defined by item 5. The information is read by ECLIPSE 300
to check that the table is consistent with the simulator’s data.
Notes
If during a pressure traverse calculation the well bore fluid exceeds the sonic velocity, the
corresponding calculated pressure value in the table is set to a value as defined in the Control
Data panel.
If during a pressure traverse calculation the well bore fluid becomes erosive by exceeding a gas
or liquid flow velocity limit set in the Control Data panel, the calculated pressure value in the
table may be set to a value also defined in this panel.
If during a pressure traverse the phase equilibrium cannot be found at some point in the pipe
(compositional mode only), the corresponding calculated pressure value in the table is set to -
1.0E10.
Introduction
VFPi can generate a table of BHP values tabulated against the flowing condition variables (FLO
and THP) for use by ECLIPSE simulators to perform well tubing head pressure calculations for
an injection well. The table format is the same for both black oil and compositional VFP tables,
with only the flowing condition variable FLO referring to different quantities in each case.
Black oil tables have the following choices of flowing condition variables:
FLO = oil, water, or gas injection rate
PRS = tubing head or bottom hole fixed pressure
Compositional tables have the following choices of flowing condition variables:
FLO = wet gas volume, or total molar injection rate
PRS = tubing head or bottom hole fixed pressure
The table is headed by the keyword VFPINJ and consists of the following records of data, each
record terminated with a slash (/).
Record 1
Basic data for table
1 Table number
2 Bottom hole datum depth for table.
• UNITS: ft (FIELD) or m (METRIC).
3 Definition of first variable FLO
(enclosed in inverted commas).
Record 2
NFLO FLO (flow rate) values, in ascending order, terminated with a slash (/).
Record 3
NPRS PRS (pressure) values, in ascending order, terminated with a slash (/).
• UNITS: psia (FIELD) or barsa (METRIC)
Record 4 to NPRS + 3.
NPRS successive records each containing the following items, and each terminated with a slash
(/).
1 NP (PRS value number)
2 Calculated pressure at 1st FLO value and NPth PRS value
Note
If during a pressure traverse calculation the well bore fluid exceeds the sonic velocity, the
corresponding calculated pressure value in the table is set to a value as defined in the Control
Data panel.
If during a pressure traverse calculation the phase equilibrium cannot be found at some point in
the pipe (compositional mode only), the corresponding calculated pressure value in the table is
set to -1.0E10.
Introduction
VFPi is able to export a VFP table to an external file in the format that the VIP simulator expects
for a wellbore hydraulics table. This data follows a BHPTAB keyword for productions tables and
a BHITAB keyword for injection tables. Both black oil and compositional table may be exported
in this format within the limitations described below. For details of the table formats and the
flowing variables units in the FIELD and METRIC systems, please refer to the VIP manual.
VFPi is also able import existing VIP wellbore hydraulics tables from an external file for black
oil fluid tables - it is not however able to fully import compositional fluid tables because of the
difference in gas fractions used by VIP and VFPi (see below). Once a VIP hydraulics table has
been imported, the user may perform the same operations on this table as an internally
calculated table, or an ECLIPSE compatible imported keyword. So, for example, cross-sections
from an imported VIP wellbore hydraulics table may be viewed in 2D or 3D, the hydraulics
table may be graphically edited or it may be stabilized by removing the upturn in all BHP curves
at low flow values.
In the following sections of this appendix the main differences between ECLIPSE VFP tables
and VIP wellbore hydraulics tables are outlined.
There is also a difference in units used for gas fractions, water fractions, pressures and gas
injection rates between the two table types as outlined in Table L.2
Table L.2 Units used by ECLIPSE and VIP for black oil fluid tables
VFPi will write out the keyword data in the units appropriate for the simulator.
followed on the subsequent line(s) by successive values of the ALQ, terminated with a slash (/).
followed on the subsequent line(s) by successive values of the flow rate, terminated with a slash
(/).
followed on the subsequent line(s) by successive values of the gas fraction, terminated with a
slash (/).
followed on the subsequent line(s) by successive values of the specified pressure, terminated
with a slash(/).
followed on the subsequent line(s) by successive values of the water fraction, terminated with
a slash (/).
A number between 0.0 and 1.0 allows only part of the injected gas to re-saturate the oil.
PR Peng-Robinson
RK Redlich-Kwong
SRK Soave-Redlich-Kwong
Disclaimer
It is our understanding that in consideration of the name of Stanford University being mentioned
in this user guide, Stanford University will transfer free of charge all titles related to the Petalas
and Aziz mechanistic flow correlation code.
SIS confirms also that Stanford University makes no representations and/or warranties, express
or implied, in respect of the Petalas and Aziz mechanistic flow correlation code and SIS
assumes full liability and responsibility for any decisions or actions taken as a result of the use
of the Petalas and Aziz mechanistic flow correlation code by SIS.
Intermittent flow
The intermittent flow used in the Petalas and Aziz Mechanistic Model includes the slug and
elongated bubble flow patterns. It is characterized by alternating slugs of liquid trailed by long
bubbles of gas. The liquid slug may contain dispersed bubbles and the gas bubbles have a liquid
film below them.
Bubble flow
Bubble flow is encountered in steeply inclined pipes and is characterized by a continuous liquid
phase containing a dispersed phase of mostly spherical gas bubbles.
Froth flow
Froth flow represents a transition zone between dispersed bubble flow and annular-mist flow
and between slug flow and annular-mist. The approach used in the Petalas and Aziz Mechanistic
Model is to interpolate between the appropriate boundary regimes in order to determine the
transition values of the in situ liquid volume fraction and pressure drop. This involves a number
of iterative procedures in order to determine the superficial gas velocities at the dispersed
bubble, annular-mist and slug transitions to froth. Once the superficial gas velocity at each
transition is known, the volume fraction and pressure drop values at the transitions are
calculated and a log-log interpolation between these values is made for each quantity.
At each calculated point, other quantities can be derived which help the understanding of
Multiphase Flow. An important quantity is the frictional pressure loss in the pipe. This is plotted
for the same set of conditions used in the Flow Pattern Map above. The colors relating to the
flow pattern are also shown so that any discontinuities that arise from the flow pattern
transitions may better be observed.
Another important quantity in Multiphase Flow analysis is the Phase Volume Fraction. Below
is shown a surface plot of the Volume Fraction Liquid, that is, the in situ fraction of fluid in the
pipe that is liquid. This is sometimes referred to as the “Liquid Hold-up”.
Figure N.5 Volume fraction liquid- Air/water system at atmospheric conditions, 00 inclination
Oliemans, R.V.A., Pots, Modeling of Annular Dispersed Two-Phase Flow in Vertical Pipes, [Ref. 22]
B.F. and Trope, N., Int. J. Multiphase Flow, 12, No 5, Page 711-731 , 1986.
Xiao, J.J., Shoham, O. A Comprehensive Mechanistic Model for Two-Phase Flow in Pipelines, [Ref. 23]
and Brill, J.P., SPE 20631, 65th ATCandE of SPE, New Orleans, September 23rd-26th, 1990.
Beggs, H.D. and A Study of Two Phase Flow in Inclined Pipes, [Ref. 24]
Brill, J.P., Trans. of Pet. Soc. of AIME, 256 , Page 607, 1973.
Mukherjee, H. and Pressure Drop Correlations for Inclined Two-Phase Flow, [Ref. 25]
Brill, J.P., Trans. of AIME, J. of Energy Res. Tech., 107, Page 549-554, 1985.
Dukler, A.E., Frictional Pressure Drop in Two Phase Flow: A Comparison of Existing Correlations for
Wicks, M. and Pressure Loss and Holdup, [Ref. 26]
Cleveland, R.G., A.P.Ch.E.J., 10, Page 38, 1964.
Introduction
Chokes are used for a variety of reasons which include:
• controlling well flow rates,
• protection of surface equipment from slugging,
• providing sufficient back pressure to avoid formation damage from excessive drawdowns
and
• maintaining stable downstream pressures and damping large pressure fluctuations.
A wellhead choke or bean may be considered as a restriction in the pipe. Through such a
restriction there are two types of flow: critical and sub-critical. At critical flow, the velocity of
the fluid through the restriction reaches the sonic velocity of the two phase fluid and is thus at
a maximum for a given set of upstream conditions. For this flow, downstream changes cannot
affect the upstream conditions and so decreasing the downstream pressure will not alter the flow
rate or upstream pressure. On increasing the downstream pressure, there comes a point when the
fluid velocity drops below the sonic velocity and the flow rate begins to depend on the pressure
head across the restriction. The flow is now sub-critical.
The Sachdeva choke model develops a single equation for both critical and sub-critical flow
through the choke, with a second equation defining the boundary between these types of flow
in terms of the ratio of downstream to upstream pressures. It was validated against three sets of
experimental data and proved itself superior to a wide range of existing two-phase flow choke
models (Gilbert, Ros, Achong, Pileharvi, Ashford and Omana.)
The most important variable in these equations is ‘y’; it can take two forms:
1 For sub-critical flow, ‘y’ is set to ‘yActual’ which is the actual ratio of downstream to
upstream pressures ( = P 2 ⁄ P 1 ). It is through this term that the downstream pressure (P2) can
affect the upstream pressure (P1) for a fixed flow through the choke.
‘yActual’ ( = P 2 ⁄ P1 ) can vary between 1.0 at which value there is no flow through the choke,
down towards 0.0 when there is a considerable mass flux through the choke (either P2 is very
small or P1 is very large).
and
1⁄k 2
1⁄k
k n n ⋅ ( 1 – x 1 ) ⋅ ρ g1 ⋅ y Crit n ( 1 – x 1 ) ⋅ ρ g1 ⋅ y Crit
D = ----------- + --- + -------------------------------------------------------------- + --- ⋅ ------------------------------------------------------
- [EQ O.5]
k–1 2 x1 ⋅ ρl 2 x ⋅ρ 1 l
Discharge coefficient
The discharge coefficient Cd is a final modifying factor in the flow equation and is in common
use in flow through restriction models. It is hoped that its use will absorb errors due to the
assumptions made while developing the model. A perfect model would thus have a coefficient
of 1.0. Sachdeva recommends a value of 0.85 if the flow is unrestricted immediately upstream
of the choke. If the choke is in a housing with an elbow immediately upstream, then a value of
0.75 is recommended.
Region 1
At low flow rates the sub-critical behavior of the choke is evident with the upstream pressure
value being dependent on the downstream pressure at a given flow rate.
Region 2
For higher flow rates all curves converge and the choke is now flowing critically.
Region 4
Another region exists at yet higher flow rates. Here the upstream pressure is such that a single
phase liquid flows into the choke and so both the free gas mass fraction and ‘yCrit’ are zero. All
single phase liquid flows are sub-critical according to this model. This is in agreement with
Beggs’s Production Optimization book which states that the flow of liquid through a choke will
almost always be sub-critical because the sonic velocity in liquid is so large. Beggs also
provides an equation for the pressure head across the choke at this condition which agrees with
the simplified form of Sachdeva’s mass flux equation.
Region 3 revisited
A closer inspection of the curves in region 3 reveals that an increase in the downstream pressure
yields a decrease in the upstream pressure at a fixed flow rate. To understand this result in terms
of the model behavior, the residual as a function of the upstream pressure at a flow rate in this
region is considered. The solution upstream pressure is found when the residual crosses the axis,
that is it is zero. The following schematic shows this residual and ‘yActual’ for two values of
downstream pressure (P2) together with ‘yCrit’ plotted against the upstream pressure (P1).
To the left of the marked boundary, the residuals coincide because the flow is critical
and independent of P2. The ‘yActual’ curve for the higher P2 value exceeds the falling ‘yCrit’
curve first and thus the higher P2 residual becomes sub-critical and kinks upwards first and
crosses the axis at a lower P1 in comparison to the lower P2 residual curve. This is the reason
why the model predicts a negative dP2/dP1 in this region. This behavior will cause problems
with the ECLIPSE well model and VFPi gives the user the option of automatically contracting
all P1 values onto that is calculated at the highest P2 for all flow rates in this region.
Note that multiple solutions are possible for this residual shape - the iterative method should
always find the solution with the lowest P1. As the flow rate decreases, the residual curve moves
upwards and the critical/sub-critical kink moves above and away from the axis; the solution will
now be found in the critical region of the curve.
Batch Regression
The command ‘DoRegression’ has been introduced to allow VFPi to perform a regression to
match observed pressures (see "Matching Observed Data" on page 147) when in its batch mode
(see "Command Language" on page 153).
This new feature allows you to set up a command script that, for example, reads in a keyword
file (that includes some measured pressure data), perform a regression on the pressure traverse
fitting factors to achieve a best fit to this measured data and then create one or more VFP tables
using calibrated pressure traverses. This script may be extended to repeat this process for a
number of wells and VFPi instructed to run the script in batch mode overnight.
New Facilities
Petalas and Aziz mechanistic flow model
A seventh multi-phase flow correlation has been added to the suite of those already present in
VFPi. This correlation can be used for calculating two-phase flow pressure loss for both uphill
and downhill flow, and for all pipe geometries. The model has been validated against a database
of both laboratory and field measurements developed by Stanford University.
Panel re-designs
Some panels layouts have been altered in an effort to reduce the amount of space taken by the
panel on the screen. For example, the PVT Data panel in the black oil fluids module now
consists of a folder containing three pages for the oil, gas and water phases in which the user
may set the fluid density and the PVT property calculation method.
New Facilities
Multiple well data
VFPi is now able to perform pressure traverse calculations using data from more than one well
within a single session of the program. This multiple well data is controlled and accessed from
a hierarchical tree window with each well represented as a node branching from a single root.
Each well node may have up to four children which represent Tubing, Fluid, Calculation
Control and Measured Pressure data (if available). Double clicking on a child node opens up the
appropriate graphical module or panel to allow inspection or alteration of its data.
Data for a well may be entered by hand or read in from a keyword file, thus maintaining
compatibility with the batch VFP program and the fluid keyword data generated by the SIS
PVTi program. The data state of all the wells may be saved and recalled using an extended
keyword file mechanism.
As well as reading complete keyword data files, a file may also be scanned for keywords
relevant only a particular node type (tubing, black oil fluid or compositional fluid). All other
keyword in this file will be ignored. If any appropriate keywords are found, this data then
replaces that currently in VFPi.
When performing pressure traverse calculations for a VFP table, VFP curve display etc., the
tubing, fluid, calculation control and measured pressure data are taken from the currently
selected nodes of the well hierarchy tree. Children from different wells may be selected and thus
(for example) the effects of differing fluids flowing through the same tubing can be quickly
investigated. New wells can be created in the hierarchy tree by copying some or all of the data
from an existing well. This allows versioning within VFPi.
Each node has an associated right mouse button popup menu which allows copying, deleting,
renaming etc. Also a summary of the data held in the can be displayed together with an area for
the user to enter notes about the node.
Input data from the Tubing, Fluid, Calculation Control and Measured Pressures nodes may be
reported to an external file either separately or on a well by well basis.
New IPR
VFPi’s suite of inflow performance relationships has been extended to include Fetkovich’s IPR.
This IPR may be used for gas or oil reservoirs.
Resizable panels
The data and control panels in VFPi may now be enlarged by grabbing a panel edge with the
mouse cursor and dragging outwards. This generally increases the spacing between panel
elements and if there are tables present, the number of rows (and, if appropriate, columns)
shown is increased. This feature is useful in creating blank rows at the bottom of the table for
data entry. If screen space is limited, the panel may be reduced in size again (to a minimum of
1 row shown) after the data entry.
Note Note that this mode selection does not affect the message and questions boxes
generated by VFPi during a pressure traverse that require a user response.
A CNAMES . . . . . . . . . . . . . . . 230
COATING. . . . . . . . . . . . . . 201
Acceleration Pressure Loss 100
Command E
ACCHDCHK . . . . . . . . . . . . 251 Log File . . . . . . . . . . 154
ECL.CFA . . . . . . . . . . . . . . 93
ACF . . . . . . . . . . . . . . . . . . 228 Script File . . . . . . . . 154
ECL.CFG . . . . . . . . . . . . . . 93
ALQ . . . . . . . . . . . . . . . . 19 Command Language
Example . . . . . . . . . 158 ECL.CFU . . . . . . . . . . . . . . 93
ALQ . . . . . . . . . . . . . . . . . . 184
Compositional EMLVSC. . . . . . . . . . . . . . . 218
ANNULUS . . . . . . . . . . . . . 197
Fluid Properties . 75, 125 Enthalpy Balance . . . . . . 142
Artificial Lift . . . . . . . . . 102
Quantity . . . . . . . . . . 19 Compositional Mode . . . . . 19 EOS . . . . . . . . . . . . . . . . . . 231
COMPTABL . . . . . . . . . . . . 202 ERODEVEL . . . . . . . . . . . . 252
CONFIG.ECL . . . . . . . . . . . 93
B Configuration . . . . . . . . . . 93
BEAN. . . . . . . . . . . . . . . . . 198
Correlation
Tuning . . . . . . . . . . . 119
F
Bg . . . . . . . . . . . . . . . . . . . 109 Features . . . . . . . . . . . . . . .11
BIC . . . . . . . . . . . . . . . . . . 229 File
Command Log . . . . 154
Black Oil Mode. . . . . . . . . 18 D Command Script . . . 154
Bo . . . . . . . . . . . . . . . . . . . 106
Data Fit Factors . . . . . . . . . . . 149
BOFCNTRL . . . . . . . . . . . . 215 Flow Correlations . . 149
Matching Observed Pressure147
Bw . . . . . . . . . . . . . . . . . . . .111 Status . . . . . . . . . . . 150
DELTAP . . . . . . . . . . . . . . . 203
Variation. . . . . . . . . 150
DENSITY. . . . . . . . . . . . . . 216
FLOW . . . . . . . . . . . . . . . . . 185
Density . . . . . . . . . . . . . . 126
H
Heat Transfer . . . . . . . . . .141 S
Coefficient . . . . . . . .144 O SHEATC. . . . . . . . . . . . . . . 221
Help system . . . . . . . . . . . .16 OBSPRES. . . . . . . . . . . . . . 263 Silent Running. . . . . . . . . 154
HYDRO . . . . . . . . . . . . . . . 232 OHTC . . . . . . . . . . . . . . . . . 208 Solution Gas-Oil Ratio . . . 106
Hydrostatic Head . . . . . . . .99 Oil SONICPRS . . . . . . . . . . . . 259
Formation Volume Factor106
SONICVEL . . . . . . . . . . . . 260
Viscosity . . . . . . . . . 108
Volatile . . . . . . . . . . 136 SSHIFT. . . . . . . . . . . . . . . 241
I OILPFIT. . . . . . . . . . . . . . 219 Starting VFPi. . . . . . . . . . . . 21
Inflow Performance Relationships55 OILPVT . . . . . . . . . . . . . . . 220 STCOND. . . . . . . . . . . . . . . 222
Injection Table Format . . .167 OMEGAA . . . . . . . . . . . . . . . 236 STOG . . . . . . . . . . . . . . . . . 223
Interfacial Tension OMEGAB . . . . . . . . . . . . . . . 237 STWG . . . . . . . . . . . . . . . . . 224
Oil-Gas . . . . . . 113, 129 ORKPARAM . . . . . . . . . . . . 257 Surface Tension
Water-Gas . . . . . . . . 114 Oil-Gas . . . . . . 113, 129
Overview . . . . . . . . . . . . . . 9
IPRs . . . . . . . . . . . . . . . . .55 Water-Gas . . . . . . . . 114
ITLIMS . . . . . . . . . . . . . . 255
ITPTRAV . . . . . . . . . . . . . 256
P T
PANELS . . . . . . . . . . . . . . . 179
Table
K PARACHOR . . . . . . . . . . . . 238 Injection Format . . . . 167
PCRIT . . . . . . . . . . . . . . . . 239 TABNAME . . . . . . . . . . . . . 188
Keywords . . . . . . . . 156, 175