Uploaded by Yamal Askoul

OFM Performance Analysis Fundamentals

advertisement
OFM Performance Analysis
- Fundamentals
What is OFM?
Well and Reservoir Analysis Software
Surveillance and analysis, interactive history
matching, forecasting and reserves calculations
3D and 4D production trending, bubble plotting,
decline and type curve analyses
Early detection and diagnosis of production and
injection problems
Integrates with other applications for extended
workflows and eliminates data duplication
Collaborative workspaces for best practice sharing in
corporate deployments
OFM is the oil and gas field management
tool of choice for over 600 companies, 15,000 users worldwide
2
You may see OFM like this…
REMAINING RESERVES FORECAST
STATUS: PUMP OIL, SUS OIL
10000
Working Forecast
Phase
Case Name
b
Di
qi
ti
te
Final Rate
Cum. Prod.
Cum. Date
Reserves
Reserves Date
EUR
Forecast Ended By
DB Forecast Date
Oil Rate (CD), bbl/d
1000
:
:
:
:
:
:
:
:
:
:
:
:
:
:
:
Parameters
Oil
Case1
0
0.165959 A.e.
282.178 bbl/d
12/31/2006
12/31/2026
7.48636 bbl/d
3877.09 Mbbl
12/31/2006
552.871 Mbbl
12/31/2026
4429.97 Mbbl
Time
Not Saved
100
10
1
198687 88 89 90 91 92 93 94 95 96 97 98 99200001 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
Date
3
But there is more inside OFM !
Date:2006/10
Date:2001/01
PRODUCTION / INJECTION HISTORICAL PERFORMANCE
STATUS: PUMP OIL, SUS OIL
5
10
Oil Rate (CD) ( bbl/d )
4
Water Rate (CD) ( bbl/d )
Water Inj Rate (CD) ( bbl/d )
10
3
03/16-06C0/13-05
10
2
05/16-06
10
1
10
00/09-06
D2/12-05
C2/12-05
D0/12-05
B4/11-05
B0/11-05
0
10
1986
87
88
89
90
91
92
93
94
95
96
97
98
99
2000
01
02
03
04
05
06
B2/12-05
100
0.75
80
0.60
60
0.45
40
0.30
20
0.15
0
D0/05-05
C0/06-05
Gas / Oil Ratio ( Mcf/bbl )
C0/05-05
6
B0/03-05
0.00
1986
87
88
89
90
91
92
93
94
95
96
97
98
99
2000
01
02
03
04
05
A7/04-05
Cum Oil Prod ( Mbbl )
Cum Water Prod ( Mbbl )
06
Date
60
6
B2/06-05
A0/05-05
B4/06-05
C0/03-05
D0/04-05
D3/03-05
B4/03-05
C0/14-32
A2/13-32
D0/14-32
Zone Top SS ( m )
Wells on Oil Production
B0/14-32
02/12-32C0/11-32
Wells on Water Injection
45
30
-107.40
-99.45
-91.50
C2/11-32
00/12-32
15
B2/12-32
31
0
88
89
90
91
92
93
94
95
96
97
98
99
2000
01
02
03
04
05
06
Date
31
00/05-32
Date:2006/12
REMAINING RESERVES FORECAST
STATUS: PUMP OIL, SUS OIL
400
Working Forecast
Phase
Case Name
b
Di
qi
ti
te
Final Rate
Cum. Prod.
Cum. Date
Reserves
Reserves Date
EUR
Forecast Ended By
DB Forecast Date
1000
:
:
:
:
:
:
:
:
:
:
:
:
:
:
:
Parameters
Oil
Case1
0
0.165959 A.e.
282.178 bbl/d
12/31/2006
12/31/2026
7.48636 bbl/d
3877.09 Mbbl
12/31/2006
552.871 Mbbl
12/31/2026
4429.97 Mbbl
Time
Not Saved
5788200
High WOR & Low Oil Prod
Low WOR & High Oil Prod
High WOR & High Oil Prod
Low WOR & Low Oil Prod
10000
300
5787600
200
5787000
Y-Coordinate
87
HI WOR
1986
Oil Rate (CD), bbl/d
Water Cut ( % )
Date
100
100
5786400
0
5785800
10
1
198687 88 89 90 91 92 93 94 95 96 97 98 99200001 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
Date
4
-100
-60
-30
0
30
HI Oil Rate
60
90
5785200
540200
540400
540600
540800
X-Coordinate
541000
541200
Production surveillance and analysis workflows using OFM
◼
◼
Response to Well Treatments
Reserves Volumetric
Calculations
◼
Forecasting
◼
Water Movement Analysis
◼
Vintage Analysis
◼
◼
◼
DATE:8/1/2003
04-19
04-19
13-18
01-01
07-01
02-01
Performance Indicator Analysis
02-26
– e.g. Best Gas Rate, Water
08-21
Control Diagnostics
15-15
10-14
Heterogeneity Index Analysis
06-20
06-2001-2006-21
07-21
02-22 10-23
02-21
04-22
02-23
02-2304-2402-2404-1902-19
13-1502-2204-23
15-17
14-17
16-17
13-16
12-17
10-1512-1410-14 12-1315-13
10-17
10-1312-1810-18
08-16
08-17
08-13
01-18
04-1802-18
10-15
03-1702-17
02-14
04-16
02-1604-1502-1504-1402-14
02-1404-13
01-17
16-07
14-08
15-08
10-11 12-1210-1212-07
10-08
12-1010-1012-11
05-08
04-0902-09
01-08
02-1004-1102-1104-12
02-1204-0702-07
15-05
13-05
16-05
10-0412-0310-0312-0210-0212-0110-0112-06
12-04
10-06
11-0509-05
06-04
07-02
07-06
05-04
07-04
07-03
08-05
04-0307-03
07-03
04-05
02-03
02-03
10-03
04-02
02-01
02-02
02-0504-04
04-01
13-35
16-3211-33
14-32
15-32
16-31
12-3410-34
10-3504-36
10-33
12-3610-3612-31
09-31
12-32
07-32
08-3106-32
01-32
04-3402-3404-3502-3504-3602-3604-31
14-29
15-30
09-30
11-29
10-29
10-2812-2710-2712-2610-2612-2510-25 12-30
09-29 06-28
06-29
07-29
05-29
08-30
02-2504-30
01-30
04-29
04-27 02-27
04-26 02-2604-25
15-2413-19
13-21 09-21
15-19 14-2016-20
12-22
10-2212-23
10-2312-2410-24
09-20
12-21
10-20
06-20
08-19
07-20
02-21
02-24
04-2302-2304-24
15-13
11-17
10-15
12-13
10-14
Water Production - 2 year ( M )
0.00
Drainage Radius and
Interference Radius Analysis
5
50.00
100.00
Production surveillance and analysis workflows using OFM
Exa
m
Gas field specific analyses:
➢
➢
Reservoir
Compartmentalization
Analysis
7500
Specialized forecasting
4500
P-Q Diagnosis of Compartmentalization
6000
Interpolated Datum Pressure (kp
00/02-03-039-12W4/0
00/03-02-039-12W4/0
00/05-18-039-12W4/0
Oil field / waterflood specific
analyses:
00/06-01-039-12W4/0
3000
00/06-05-039-12W4/0
00/06-09-039-12W4/0
00/06-11-039-12W4/0
00/06-12-039-12W4/0
00/06-17-039-12W4/0
1500
➢
➢
➢
00/07-08-039-12W4/0
Pattern designation
Voidage analysis
Water coning /
breakthrough analysis
00/07-16-039-12W4/0
00/07-18-039-12W4/0
00/09-06-039-12W4/0
00/10-05-039-12W4/0
0
0
15
30
45
Gas Rate (CD) per Well ( Mscm/d )
60
00/10-10-039-12W4/0
75
00/11-07-039-12W4/0
00/13-08-039-12W4/0
00/14-10-039-12W4/0
6
OFM Configurations
OFM Project = Database + Workspace (*.ofm)
OFM 2009 & older → Database must be MS-Access (*.mdb)
OFM 2010+ → Database can be Access or Oracle or SQL
Server
Oracle
Workspace
Access
*.ofm
Data
Single User
Defined
Tables
8
Multiple Users
No custom data
Team Database
Access
Data
(Master, Prod…)
Defined Tables
(Forecast,..)
Workspace User 1
Oracle
Workspace User 2
*.ofm
*.ofm
9
Multiple Users
Custom data &
Analyses
Shared Workspace
Access
*.ofm
Data
(Master, Prod…)
Oracle
Defined Tables
(Forecast,..)
Workspace User 1
Access
Workspace User 2
Access
*.ofm
My Data
My Data
My Defined
Tables
My Defined
Tables
10
*.ofm
OFM 2010+
Home
Shared Workspace
Access
Option 12
Oracle
Defined tables in Access
*.ofm
Data
(Master, Prod…)
Oracle
Defined Tables
(Forecast,..)
Workspace
Access
*.ofm
•
•
My Data
My Defined
Tables
•
•
Direct Native Queries
replace ODBC links
Defined Tables can be
moved to Oracle
New “Home” database
Eliminate Access?
Home
Seabed or Avocet Examples simplified
Option 1
Oracle or
SQL Server
(e.g. Avocet)
Defined tables in Access
Home
Access
*.ofm
Option 2
Defined tables in Oracle
or SQL Server database
100% Linked
Data
Defined Tables
(Forecast,..)
Workspace
“OFM Compatible” Tables for Linking
Exam
Is this table OFM compatible? i.e. can OFM use this table?
…
NO. If the production table in Oracle or SQL Server is
structured like this a view will be required to reformat the data.
OFM can link to the view.
Module A - Open an Existing Project
Snapshot Seabed Link
Seabed Project
If source database
contained
thousands of wells:
Project Filter
Filter to 1 field or 1
reservoir or any
other criterion
16
Panes
◼
◼
◼
Small windows containing
specific sets of tools to
perform common tasks
more quickly and
effectively
Layout = predefined set of
panes
Recommended: View Tab
> Layout > Open panes in
two-section panels left and
right
•
•
•
•
Analysis
Properties
Filter / Forecast
Step
17
Basic practice
1. Navigation pane shows #
Completions
2. Format Tab > Zoom Area - drag
rectangle on map
3. Fewer completions in filter
4. Double-click Comprehensive Plot
on Analysis Pane & click completion
in Navigation pane
Basic practice
5. See plot for all wells in current filter
by grouping
6. Clear filter to get all 21 wells back
7. Double-click Cum Ranking Report
in Analysis pane
8. Format Tab > Summary by Item to
see all wells individually on report
9. Setup Tab > Data Grid to view data
OFM Database Structure
◼
◼
◼
OFM Database: MS Access file (or Oracle/SQL Server possible for
OFM 2010+) containing tables. Relational Database.
Table: Data Organized into rows and columns
Input Variable: A field or column name in a table
20
Table
Master Table
◼
Required in every OFM project
◼
Use to set Project Key
◼
◼
Field A
Wellbore2
Corresponds to lowest level at which
data is available (usually either
Completion or Wellbore) → Unique
identifier
– Ex: FieldA_Well1_CompletionX
Wellbore1
Wellbore3
Completion X
Other well information may be included
(well co-ordinates etc.)
Canadian example:
00/01-23-020-20W4/2
00/01-23-020-20W4/0
Completion Y
21
Table
Table Types
◼
OFM uses different types of tables depending on what kind
of data is stored. Most common ones include:
– Static Table = contains information that does not change with time
•
Master Table is a special type of Static Table
– Monthly Table = data in monthly frequency
– Daily Table = data in daily frequency
– Sporadic Table = data in irregular frequency (e.g.Well tests)
22
Daily versus Monthly Data Frequency
◼
◼
◼
◼
Avocet supplies daily data to OFM. There are
monthly tables available in Avocet, but they
need to be populated.
The Seabed database supplies monthly data
to OFM.
Users like to have both if possible. Some
analyses are longer term, e.g. forecasting
works well with the smoother rates calculated
from monthly volumes. Analysis of the impact
of a workover is best with daily data.
Calculations of cum production is essential,
requiring either monthly or daily data since
inception.
Looking at the Data
Setup Tab > Data Grid
Edit all records means
“show me all the wells at
the same time”
GIS
Home Tab > GIS
Where are we?
Format Tab > Zoom Out
repeatedly…. Texas
Format Tab > Zoom to
Fit
GIS - Association
GIS Map only possible when latlong coordinates are available
Setup Tab > Association >
Coordinates
Table Structure (Customizable)
Setup Tab > Schema
Defined Table Structure (Fixed, not customizable)
Setup Tab >
OFM Defined
Module B - Project Creation
Provo Project
PROVO Project
◼
Scenario:
– You have just been
recruited to PROVO
team
– Job description is to
monitor and analyze
the field using OFM
Save Workspace OFTEN
30
OFM Project = Database + Workspace (*.ofm)
Workspace
Access
*.ofm
Data
Single User
Defined
Tables
31
Module B Provo Project Creation
mostly skip
◼
Design Interactively
◼
ASCII Text Files
◼
From PI/Dwights Production Files
◼
From Existing OFM-Compliant Access Database
skip
Build from Avocet is a
shortcut version of this
◼
Linking to External Data
◼
Using Pre-Existing OFM Project as a Template
◼
Table Data Review
32
skip
Project Creation
◼
◼
Method used to create OFM project is unimportant, end
result should be the same
Choice of method will be influenced by nature of information
used to build it
33
Methods
Interactive: Blank Structure – build from scratch
◼
◼
◼
Use Schema Table Editor to
create new project
First create empty workspace,
then interactively build structure
of project by adding tables to
store data
Exercise Handout
– Lesson 1 – pages 2-7
34
Schema Tables – Setting Attributes of an Input Variable
Units Tab
Select the oilfield/
metric pair of units
Seldom used (e.g.
always show casing
o.d. in inches no
matter what the
display system)
Identify whether the
data in the table is
oilfield or metric units
These settings affect the results.
35
Schema Tables – Setting Attributes of an Input Variable
Math Tab
Seldom used, carries
forward values if
some are missing
Grouping: How to
combine multiple wells?
Volumes are Sum,
pressure/ pump speed
etc. are average
Input: How is the data
stored in the table? Cf or
thousands of cf?
Output: How do you want
to see it?
Seldom used, can
filter out bad data
when loading
Multiply: If allocation
factors or working interest
are ever applied, how to
treat this? Sum → yes,
Average → no
These settings affect the results.
36
Multipliers
◼
◼
OFM offers three styles of
multiplier - Field, Metric and
Scientific – set under
Workspace → Options →
Multipliers
Be aware of the definitions:
– Field:
•
•
M = 1,000
MM = 1,000,000
– Metric:
•
•
K = 1,000
M = 1,000,000
37
Schema Tables – Setting Attributes of an Input Variable
Report Tab
Width is NOT number
of characters. 7 is
usually enough, 10 is
the default.
Column header can
be split into 3 rows
“Prettiness” only
38
Schema Tables – Setting Attributes of an Input Variable
Plot Tab
Name that will appear
in the legend of the
plot.
“Prettiness” only
39
Setup Tab > Schema
◼
Used to:
1)
2)
3)
◼
Add new table to project
Add data columns (fields) to table
Define default attributes of fields
Any field may be disabled by
unchecking the box next to its
name
– Prevents field from appearing in
any subsequent operation
– Does not delete from database
40
Table
Other Table Types
◼
COUN
Some other types of tables used by OFM:
– Lookup = reference for interpolation (e.g. PVT data)
– Cross Reference = translation of a code into words
– Intraday Table = data in seconds, minutes and hours frequency (seldom used)
◼
Exam
Defined Tables:
– Deviation = for displaying well deviation on the map only and not available for reports
or plots
– Fault = information about fault attributes (e.g. depth, throw)
– Trace = depth-dependent data that changes for each depth interval (i.e. logs)
– Marker = geologic depth-dependent data that record a value at a given depth (e.g.
formation tops, OWC)
41
Methods
Text File (ASCII/Flat)
◼
◼
Most important files: Definition
file and Master Data file
OFM automatically recognizes
files with specific extensions
– Commonly used file extensions:
*.def,*.xy,*.prd, *dly, *.xrf, *.dev
etc.
◼
OFM expect text files to follow
certain formats and keywords to
read and write to database
correctly
42
Definition files (*.def)
◼
◼
◼
DEF files create the table
structure and assign all of
the attributes to each
column, i.e. Units, Math,
Report & Plot tabs
You will NEVER type up
a DEF file from scratch –
instead export from an
existing project
Can be used to create
just one table or many
Units
Multiplier
43
Data files
◼
Data files load the data into pre-existing tables
◼
*Tablename must match the name of the table you defined
◼
Column names must match the names of the columns in the table
◼
If you are loading metric data, the first line in the file must say *Metric
44
Build From Text Files
◼
◼
When batch loading, files can be
loaded in any order and OFM will
automatically load *.def first and *.xy
second
When loading files one at a time, e.g.
adding data for new completions or
adding a new table and its data:
– #1 - *.def
– #2 - *.xy
– #3 - any data file
◼
Exercise Handout:
– Lesson 2 – pages 8-10
45
Build From Text Files - Advice
Assuming that the client has a source for text data files that are OFMready:
◼
If you are building a one-time project for a study that will not require
updating:
– Use a definition (and parser) file of your own design, e.g. use the Provo
ones
– Edit the text data files to match the definition
◼
If you are building or helping the client build a project that will be
updated monthly:
– Edit your definition (and parser) files (e.g. the Provo ones) to match the
text data files
– Use the text data files as they are – do not edit
46
Methods
Existing Access
◼
◼
skip
If Access database has tables
that are compliant to OFM
database model, OFM can
open it and generate a *.ofm
workspace file
MUST enable each Table
manually, one at a time
1) Select Table Type
2) Select Key Type
◼
3) Choose Key Fields
47
This is a variation on the
interactive method
Methods
Link - Access
◼
◼
Linked Tables method to keep
original databases separated from
OFM project databases
Advantage:
You can also link
to queries!
– Always get the most up-to-date version
of data
– No duplicate storage of data
◼
Disadvantage:
– Need to go to data source each time
when requesting data → possibly
slower
– Project will only work on network
(Snapshot helps)
◼
48
This is a variation on the
interactive method
Methods
4. Link - Excel
◼
exam
Excel is widely used to temporarily store data before loading to
long-term data management applications
- Advantage: Easy to use
- Disadvantage: Free formatted → error-prone for relational database
based application like OFM
- Spreadsheet cannot be opened while in use with OFM and vice versa
49
Methods
4. Link - Excel
◼
Rules:
1.
2.
3.
4.
5.
6.
Worksheet Name will be used as Table Name
First row on worksheet is reserved for Field Names
Data must begin in second row
Data on worksheet must be continuous
No extra formats (i.e., comments, merged cells, etc…)
Data in the same column must be of identical type (i.e., number, text,
date/time)
7. No embedded graphs allowed on the linked worksheet
◼
Exercise Handout:
– Lesson 3 – pages 11-16
50
Methods – OPTIONAL
5. Template
◼
◼
◼
◼
Create a snapshot of one completion from a pre-existing
project as template, tidy up the snapshot then delete the last
completion (see OFM 2012 Creating a Template Proj.pptx for more info)
Creates new project using structure of template project but
without data → then populate with new data
If template *.ofm file was created in a previous version of
OFM you must open it first in OFM and upgrade it to the new
version
Exercise Handout:
– Lesson 4 – pages 17-19
51
Module C – Project Customization
Module C Project Customization
◼
Map Association for Coordinates
◼
Add a New Completion
◼
Well Symbols
◼
Other Uses of Well Symbols
◼
Map Headers
◼
Well Names
◼
Deviation Surveys
◼
Map Annotations
53
Basemap
◼
◼
◼
Basemap is displayed whenever
a project is open
Displays location of each well in
the project
May also contain:
– Map Annotations (grid,
culture)
– Well Deviations
– Well Annotations (well by
well data posted on map)
54
Setup > Association
◼
◼
◼
OFM needs specific
information before basemap
can be correctly displayed
The WELLBORE will be
considered the same as the
Completion unless it is
mapped here
Exercise Handout:
– C1 – page 20
55
Map Headers
◼
◼
◼
Format Tab > Header
For presentation purposes,
map title, e.g.:
– “PROVO PROJECT”
For practical purposes, other
information, e.g.:
– “Updated to June 2011” (this
can be calculated – later)
– “Contact Maria G. with
questions”
56
An even better trick
is coming later
Legend and Well Symbols
◼
◼
◼
◼
Symbols can represent any
variable – set under
Setup Tab > Association
Normally based upon well
status or type
Can show zone, operator, or
performance based data
(later)
Exercise Handout:
– C2-C4 – pages 21-25
57
Deviation Surveys
exam
◼
For deviated or horizontal wells:
◼
To drive or fly to the well you want to know the surface coordinates.
◼
To analyze the reservoir performance you want to see the well’s
location (well symbol on map) at the bottom hole or mid-point of perfs
58
Deviation Surveys
◼
◼
◼
exam
If deviation surveys available, set
map association to surface
locations and display deviation
surveys completely. The survey tells
OFM where to find the bottomhole.
If no deviation survey data, set map
association to bottomhole
Surface
coordinates
Bottomhole
coordinates
Exercise Handout:
– C5 – page 26-27
Bottomhole
coordinates
59
Map Annotations – Existing Files
Existing map annotation files containing “grid and culture” data
can be loaded:
1. Format Tab > Annotations
2. Navigate to the \C Provo Configuration folder.
Five .ano files are listed there. These are text files that
contain instructions for drawing map annotations.
3. Click Add All.
◼ Creating New Annotations 4. Click Load.
Exercise Handout:
5. Click OK.
– C6 – page 28-29
60
Where to get map annotations from?
◼
◼
◼
◼
Draw your own
Google for ESRI Shapefiles for that country/area
These will only work if they are using the same coordinate
system as your project, e.g. lat-long
Get CPS-3 files that have been exported from Petrel,
Geoframe or other G&G applications
Same comment
Find out if the client has a source of *.ano files for OFM
Latitude-Longitude
◼
Map coordinate values for master
table may be in:
– Coordinates for East-West and NorthSouth (e.g. UTM coordinates, feet,
meters, yards)
– OR in latitude (Y) and longitude (X)
◼
◼
If in lat-long, should be converted to
UTM otherwise map will be out of
proportion
Setup Tab > Association
– Coordinates Tab
– Enable checkboxes as appropriate
– WGS-84 is the most recent World
Geodetic System (equivalent to NAD-27)
62
Distance, Area, Manual Grid Control
◼
Distance and area:
–
–
–
–
◼
Can be measured directly on the map
Right-click – Distance or Area
Answer appears at bottom left
Units are map units (or meters if lat-long)
Manual grid control
– If you want the map zoom to be different
than the default or you want a frame and
grid-lines
– Zoom in the way you want and set Grid
Control to Manual
– If desired, set Grid Type to Grid, Grid &
Frame, Frame
63
Are we ready to do analyses?
◼
No.
◼
We have:
– Well header data, enough to make a map
– Monthly production volumes
◼
For any sort of useful analysis we need:
– Rates, ratios, cumulatives
◼
How do we get those?
– Calculated variables
64
Module D – Project Variables
Module D Project Variables
Types:
◼
Input Variable
– Raw data stored in the tables
◼
Calculated Variable
◼
Calculated Field
66
Calculated Variables
◼
◼
◼
◼
Allow calculations involving fields
from multiple tables and built-in
functions
Results are not stored, only the
definition, so the calculation is
performed at every retrieval (like
Excel formulas)
A calculated variable can be
based on other calculated
variables
If any variable in a calculation is
null, entire result is null, i.e. null +
2 = null
67
Parser Files (*.par)
◼
◼
◼
Text file which defines
calculated variables,
including:
– Formula
– Units & Multiplier
– Report and Plot Attributes
You will NEVER type up a
PAR file from scratch –
Units
instead export
from an
existing project
Multiplier
Can be used to create just
one calc var or many
*Class "Gas"
c[
CD.Gas.Rate=prd.gas/@dom(date)
]
*rh "Gas" "Rate" "(CD)"
*rf 10 2 "Right"
*pn "Gas Rate (CD)"
*pa "Red" "Solid" "Filled Circle" 2 3
*u "cf/d" "scm/d"
*mu "M"
c[
Active.Gas.Producers=@countinput(prd.gas)
]
Load*rhthe"Wells"
parser"on
file:Gas" "Prod"
*rf 8 0 "Right"
\D*pnProject
"WellsVariables\Training
on Gas Production"
Text
*pa Files.par
"Black" "Solid" "None" 0 0 "Non
68
System Functions
◼
◼
◼
OFM includes a set of 245 builtin System Functions to help with
calculations (similar to the
functions in Excel)
System Functions can be used
in the definition of Calculated
Variables
They are used with ‘@’
character in front
69
Common System Functions
@loadname() or @name() → returns the name of the currently
loaded entity – very useful for plot headers
@CumInput(input variable) → returns the running cumulative of an
input variable, e.g. cum oil, cum gas, cum water
@RSum(expression [,condition]) → generates a rolling sum of the
variable - @Rsum(prd.oil) is not always the same as
@Cuminput(prd.oil)
@CountInput(input variable) → counts the wells contributing to an
input variable being totaled for a group of wells – used for average
rates per well for a group
@Dom(date) → returns the number of days in the calendar month –
used for calendar day rates
70
Common System Functions
@Last(variable [, condition]) → retrieves the last value of the selected
project variable, e.g. last cumoil value.
@First(variable [, condition]) → returns the first occurrence of the
variable, e.g. first date or oil production.
@FmtName(variable, expression) → returns the plot name, units,
multiplier and value of the variable. Example:
@FmtName(Cum.Water.Prod, @Last(Cum.Water.Prod)) → Cumulative Water
Production 102.56 MMm3
@if(condition, true, false) → if condition is true, returns the 2nd
argument; otherwise, returns the 3rd argument.
Many other functions are available (See Workspace Tab > Help >
System Functions)
71
Create some new calculated variables
Setup tab > Calculated Variable Editor
◼
Peak (highest) oil rate in the well’s life
– Check the @Max function – will it work?
– @Tmax(CD.Oil.Rate, 1)
◼
First date the WOR was higher than 1
– @First(Date, Water.Oil.Ratio > 1)
◼
Header for a plot showing the last value of cum oil
– @FmtName(Cum.Oil.Prod, @Last(Cum.Oil.Prod))
User Functions (used little)
◼
◼
Allow user to create specialized functions which can be used
in Reports and Calculated Variables in a similar manner to
System Functions
Must be programmed in OFM’s user function language,
which is similar to C or BASIC
– IF/ELSE and WHILE logic is supported as are most
mathematical, logical and relational operators
◼
User functions may be generated which prompt user for
input, write data to files or launch external applications
73
User Functions
Example
◼
◼
A user function that
opens a well report
in Notepad
Can be launched
from the map with a
right-click if set up
under
Setup Tab >
Execute
Procedures
WellReport()
Num check;
check = 0;
if(Sc.Wellreport = “yes")
{
if(@FileExist(“d:\MBfield\Data\Rpt\"+xy.wellname
+".txt") & (check = 0))
{
@Launch("notepad.exe", d:\MBfield\Data\Rpt\"
+ xy.wellname + ".txt" );
check = 1;
}
}
if(check = 0)
@PrintError("No well file available or you have
not selected a well");]
74
Calculated Field (used little)
◼
◼
◼
Defined as Table Fields using
Schema Editor
Can operate only within a
single table
Only simple operations can be
used
– Syntax depends on the database
being used (MS Access, Oracle
etc.)
◼
Primarily used for Producing
Day Rates (volume / # days
production in month)
75
How do Calculated Variables and Calculated Fields
differ?
◼
◼
When wells are grouped (i.e. aggregated), data is summed
or averaged according to setup in Schema tables to give a
single value for the group
Subtle difference between how Calculated Variables and
Calculated Fields are applied to grouped data
– Calculated Variables: wells are grouped first then the calculation is
done, e.g. sum the water, sum the oil, then calculate the water-oil
Used a lot
ratio (right)
– Calculated Field: calculation is done first on each well then the
results are grouped, e.g. calculate the water-oil ratio for each well,
then sum or average the results (wrong)
Used little
76
Grouping
Calculated Variables vs. Calculated Fields
◼
Consider the Producing Day Oil Rate (Monthly production /
Producing days) grouped to the field level
Calculated Field
77
Now can we do analyses?
◼
Yes!
78
Module E – Filtering Techniques
Module E Filtering
◼
Filtering is a technique used to reduce list of completions to
a more manageable and workable selection
– Examples: wells that had acid jobs, wells with particular type of
data (i.e. Test data), wells with high water cuts etc.
– In other words, wells that need your attention today
◼
Multiple filters can be applied sequentially to build a complex
criteria
80
Plots Showing the Effect of Filtering
◼
Open 2 provided plot
templates:
–
–
–
–
Click My Analysis
Right-click – Open
Plot
Go to \E Filtering and
Grouping\
– Ctrl-A or shift-click to
choose both grf files.
– Click a completion on the
Step Pane
ACL1012
1000
10000
500
5000
100
Axis 1 ACL1012
Monthly Oil Volume ( bbl )
50
Monthly Water Volume ( bbl )
1000
Axis 2
Monthly Gas Volume ( Mcf ) ACL1012
500
10
5
81
1
2006
07
08
Date
09
100
Filtering Techniques
◼
Map Techniques
◼
By Completion
◼
Well List
◼
Filter Archive
◼
By Categories
◼
By Query
◼
By Match
◼
Other Filtering Options:
–
–
–
–
–
◼
82
Pattern
Invert
Flag
Table Data
DCA Data
Project Filter
Well List
◼
After filtering by any technique, ensure
you get exactly the same completions
again later
– Well List – right-click – Add
– Set from Current Filter or Current Group
– Name it and reuse it
◼
Save a well list as a text file
◼
Use a text file as a well list
– Well List – right-click – Open
– \E Filtering and Grouping\Best Gas.txt
83
Categories - Analogy
We could apply the concept of categories to the people in this
class if we were doing some sort of study. For example:
◼
Gender
◼
Country of residence
◼
First language
◼
Age (in years)
◼
Country of birth
◼
Needs glasses (yes/no)
How would we know?
We would need data.
Are these useful categories?
◼
Address
◼
Phone number
◼
GIN number
Categories
◼
Used to group and filter
completions by different
hierarchical level
– Well type, reservoir, field,
platform, AL type etc.
◼
◼
Based on data in a static table
You can add any categories you
find useful, by adding the data
to a table
85
Categories
◼
◼
◼
◼
Enable, disable, and create
categories under
Setup Tab > Categories
Add Areal Category
Change step to AC1 and
observe base map
Add Vintage Category –
filter to most recent vintage,
group wells and view plot
Navigation
86
Calculated Categories
◼
◼
◼
◼
To be useful, calculated
categories must return a few
discrete values, not a
different value for each
completion
E.g. an indicator of current
water production
Current_Water_Prod=
@ifstr(@last(cd.prod.water.rate)=0, "Clean",
Setup Tab > Import > Data
@ifstr(@last(cd.prod.water.rate)<100, "Low",
Loader: \D Project
@ifstr(@last(cd.prod.water.rate)<500, "Medium",
Variables\CWP.par
@ifstr(@last(cd.prod.water.rate)<1200, "High", "Very High"))))
Add Calculated Category
87
OFM Query
◼
Click OFM Query
◼
Right-click – Add
◼
Edit
◼
PRD.Oil > 5000
◼
Rename query to High Oil
◼
Right-click query – Edit
◼
Add: & Date > 20000101
◼
Right-click query – Edit
◼
3 times Consecutively
89
Operators for OFM Queries and Calculated
Variables
exam
For a condition of “and”, OFM uses &
For a condition of “or”, OFM uses |
When querying for values, e.g. gas rate > 50 Mcf/d, you must
use the data value without the multiplier.
The query would be: CD.Gas.Rate > 50000
Other Useful Filtering Options
◼
◼
◼
◼
◼
◼
Pattern = if patterns have been set up in a waterflood, this
becomes a category automatically
Invert = gives the opposite of what you are filtered to now
Home > Flag = “marks” one or more completions to return
later for deeper investigation (Completion > Select Flagged)
Table Data = quickly finds completions that have data in the
specific table – very convenient when testing new plots etc.
DCA Data = finds completions that have forecasts
Project Filter = to read only applicable list of completions to
help speed up project opening, a “semi-permanent” filter
91
Saving Filter
◼
Filters can be saved either
by
– Well List = to save well
names currently in the filter
– Archive = to save steps
taken to arrive at current filter
◼
Important if database
changes (new wells are
added etc.)
92
Filtering Summary
◼
Map Techniques
◼
By Completion
◼
Well List
◼
Filter Archive
◼
By Categories
◼
By Query
◼
By Match
◼
Other Filtering Options:
–
–
–
–
–
◼
93
Pattern
Invert
Flag
Table Data
DCA Data
Project Filter
Module F1 – Plotting
Module F1 Plotting
◼
Basics of Plotting
◼
Plot Annotations
◼
Chan Plots and Hall Plots for Water Production Analysis
◼
Plot-Related Tools/Utilities
95
Plotting
– Graph = one xy axis graph
– Plot = housing of the graph(s), the whole window
◼
All Input variables, calculated variables and calculated
fields can be plotted in OFM
◼
Text variables cannot be plotted
◼
Can be for any completion or group of completions
◼
Many customizations are possible e.g. multiple axes, linear
or logarithmic scales, headers and annotations (comments)
96
Oil Rate (Daily) : 12401.96 bbl/d
Cum Oil Prod : 17907.85 Mbbl
Liquid Rate (Daily) : 18030.14 bbl/d
Composite Reservoir Performance
Gas Rate (Daily) : 8.09 MMcf/d
Wells on Oil Production : 5
• 1 plot
• 4 graphs
• Graphs 1
& 3 each
have 2
y-axes
Cum Water Prod : 3899.78 Mbbl
Cum Gas Prod : 18.03 MMMcf
All ItemIDs(25)
30
37.5
24
30.0
18
22.5
12
15.0
6
7.5
0
0.0
Axis 1 All ItemIDs(25)
Water Rate (Daily) ( Mbbl/d )
Oil Rate (Daily) ( Mbbl/d )
Axis 2
Gas Rate (Daily) ( MMcf/d )
10
All ItemIDs(25)
1
Gas / Oil Ratio ( 1000ft3/bbl )
Water / Oil Ratio ( bbl/bbl )
0.1
0.01
0.001
20
20
16
16
12
12
Axis 1 All ItemIDs(25)
Cum Oil Prod ( MMbbl )
Cum Water Prod ( MMbbl )
Axis 2
8
8
4
4
0
0
Cum Gas Prod ( MMMcf )
5.0
4.0
Wells on Oil Production All ItemIDs(25)
3.0
2.0
1.0
0.0
2008
09
10
Date
11
12
Last DB Date Jan 2012 Current: 07/02/2012
Save Workspace OFTEN
Plot Setup
◼
Each plot may have up to 6 graphs and each graph
may have up to 6 y-axes
◼
No limit to number of curves on one y-axis
Add Multiple Curves can create a multi-well or multigroup graph
◼
Scale Type offers linear, logarithmic (or probability)
◼
98
Plot Exercise
◼
◼
◼
Filter to Category:
Provo East Field
Home Tab > Plot
Select Y variables:
AVI2_0532
10000
Oil Rate (CD) ( bbl/d )
Producing
Day Oil Rate ( bbl/d )
5000
Water Rate (CD) ( bbl/d )
PeakOilRate
1000
CD.Oil.Rate Add Curve
PRD.PDOil Add Curve
CD.Prod.Water.Rate
500
100
Add Curve
50
CDOil.Peak
10
2000
01
02
03
04
05
Date
99
06
07
08
09
Plot Header
◼
◼
Snipping tool: snip a logo from
the Internet and save to the
folder where your OFM project is
as a jpg
Format Tab > Header > Add
> Assist:
Cum Oil Prod : 398.78 Mbbl
AVI2_0532
10000
5000
@Name()
OK, Add
Hdr.Cumoil OK, Add
@Image("xxx.jpg")
1000
500
100
AVI2_0532
Oil Rate (CD) ( bbl/d )
Producing Day Oil Rate ( bbl/d )
Water Rate (CD) ( bbl/d )
PeakOilRate
50
10
2000
01
02
03
05
04
Date
100
06
07
08
09
Saving & Importing Plots
◼
◼
◼
◼
◼
Header Save As= save the header template to a .gh file – Can be used in
a different plot or OFM project
Save Analysis= to save format of a plot to *.grf file, import to another
project
Export The Node= from Analysis pane. Node can be a folder including
multiple plots, reports etc. and can be imported to another project
Save Image= to save plot screenshot to image file to use in a document
(or just Ctrl-C then paste into PPT or Word)
A saved .grf or .NODE file can be brought into another project.
- Analysis pane.
Save Workspace OFTEN
- Click My Analysis.
- Right-click and choose Open – Plot or Import The Node
101
Getting plots from one project to another
◼
They must use the same variable names
Project 1
Export
Node
Project 2
Save
grf
Open
grf
Import
Node
“Ninja” method:
For these methods, start from Analysis pane of Attach Workspace
Project 1, then go to Analysis pane of
2
ForProject
this method,
work from
A Node can contain a folder of plots, Analysis
reports, etc
pane of Project 2
102
Plot Annotations
◼
Add a well events table:
Setup Tab > Import > Data Loader
Load: \F Plotting and
Reporting\Events.def
◼
◼
◼
Select HOGL1032 in Navigation
Pane
Setup Tab > Data Grid > Events
Enter data as shown – click in
different row to save changes to a
record
103
Plot Annotations
◼
Display your plot for HOGL1032
◼
Click one of the oil rate curves
◼
Properties Pane:
– Set Event to Events.Comment
– Font of legend & numbers set by
clicking event legend - set in
Properties pane in Legend section
– For display on the curve, set
Display Type to On Curve. Set
font immediately below with 60-90
degree angle
◼
Load \F Plotting and Reporting\
Real Events.txt
for additional real event data 104
Water Control Diagnostics - Theory
exam
“Chan Plot” - Potential insight
into water problems.
WOR and WOR1 vs. Cum Prod
Days on a log-log plot
Can help differentiate coning
from breakthrough for example
105
SPE # 30775: Water Control Diagnostic Plots
K.S. Chan
Water Control Diagnostics - Theory
Possible coning
106
exam
Water Control Diagnostics - Theory
Possible near wellbore breakthrough
107
exam
Chan Plot - Anomalous Wells
Looks normal
108
exam
Chan Plot - Anomalous Wells
Further evidence of coning:
When the liquid production
rate drops the water-oil-ratio
also drops.
Coning?
109
exam
Chan Plot - Anomalous Wells
PLEASE:
Use the word “possible” when
showing Chan plots to clients!! It is
NOT a magic bullet!!
Near WB
Breakthrough?
110
exam
OFM 2012 Catalog - Chan Plot - Setup
◼
◼
Requirements:
– Data – monthly days on
production, monthly water, oil,
gas
– Calculated variables – WOR
– Plot format from Catalog
Home Tab > Catalog > filter for
Chan
– Map to Dictionary
111
Chan Plot – Setup – Just for fun
You can set it so that a pdf file containing the interpretations of the
Chan plot can be opened from the Analysis pane.
◼
Click My Analysis, right-click, New, Linked Application
◼
Target: Paste in the path and file name of the supplied pdf, e.g.
– D:\Documents\OFM 2012 Training\1 Fundamentals\F Plotting
and Reporting\Chan_Plot_Interpretations.pdf
◼
Arguments: leave blank
◼
OR In the header, open the file Chan interpretations.gh
– Adjust the path to the jpg
113
Impact of Nearby Injector
Make use of the Areal Category (AC1)
◼
Clear the filter
◼
Create a plot: Axis 1:
◼
Axis 2:
◼
Change step to areal category (AC1) on the Navigation pane
◼
Select HOGL4_1132
114
Injector Analysis - Hall Plot
◼
◼
In 1963, Hall presented technique to analyze skin effects of
injection wells
For the integral value on the y-axis, use
–  (P* t)
- with P in psi, and t in days
1 = DAMAGED WELL
2 = GRADUAL PLUGGING IN WELL
3 = NO CHANGE, NO PLUGGING, NO
DAMAGE
4 = STIMULATED WELL OR SUDDEN
CHANNELING
115
Hall Plot HOGL232
◼
Change step back to Completion
◼
There was a large increase in injection rate in 1994
◼
Create a plot of Hall.Coeff vs Cum.Water.Inj (linear scales)
Possible breakthrough
116
Plot Types
◼
Different plot types are
available on the Format tab:
– Regular = a normal set of line plots
– Stacked = fills area below curves
and stacks multiple curves above
each other
– Sum = totals all the curve values
– Average = averages all the curve
values
– % = shows contribution of each curve
to the total
117
Plot Types – Multi-Well Example
◼
Filter to Flow_Station: S
◼
Create a new plot
– Do not select a variable
– Click Add Multiple Curves
– Completion & CD.Gas.Rate
◼
◼
◼
Variables are all the same,
Completions are “hard-coded”
Click the various Plot toolbar
buttons
Is each result meaningful?
100
1000
80
100
Gas Rate (CD) (%)
Completion
ACL208
60Rate (CD)
Gas
(Mcf /d)
Completion
ACL208
Completion
ACL607
Completion
ACL607
Completion
ACL618
10
Completion
ACL618
Completion
AEL1205
40 Completion AEL1205
Completion
AVAB1016
Completion
AVAB1016
Completion
AVAB1016_2
Completion
AVAB1016_2
Completion
BTEL1620
1 Completion BTEL1620
Completion
BTEL221
20
Completion
BTEL221
Completion
BTEL619
Completion BTEL619
Completion EOG205
Completion EOG205
Completion EOG206
0.10 Completion EOG206
Completion
TBE1320
197576
91 92
93 95
94 96
95 97
9698
9799
98
992000
0103
020403050406050706
197576
777778787979
8080
8181
8282
8383
8484
8585
8686
87 87
88 88
89 89
90 90
91 92
93 94
2000
01 02
0807
0908 09
Completion TBE1320
Date
Date
118
Multi-Completion Plot Without “Hard-Coding”
◼
Still filtered to Flow_Station: S
◼
Create a new plot
– Select CD.Gas.Rate
– Category: Completion
– Name: All in Group
◼
◼
Click OK. Group the
Completions
1000
100
Change Limit to 20
Gas Rate (CD) (Mcf /d)
10
Completion
ACL208
Completion ACL607
Completion ACL618
◼
Plot same as previous
Completion AEL1205
Completion
AVAB1016_2
1
Completion BTEL1620
Completion BTEL221
◼
Change the filter and group
119
Completion BTEL619
Completion EOG205
0.1
Completion
EOG206
1975
76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99200001 02 03 04 05 06 07 08 09
Completion TBE1320
Date
Data Normalization
◼
Not all wells start producing
at the same time
1000
100
◼
◼
Normalization lets you shift
dates in memory to bring all
wells to the same starting
point for analysis and
comparison
Gas Rate (CD) (Mcf /d)
Completion ACL208
Completion ACL607
10
Completion ACL618
Completion AEL1205
Completion AVAB1016
Completion AVAB1016_2
1
Completion BTEL1620
Completion BTEL221
Completion BTEL619
Completion EOG205
0.1
Completion EOG206
197576 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99200001 02 03 04 05 06 07 08 09
Completion TBE1320
Remember that when
normalized, dates are
“pseudo-dates”. Don’t get
confused.
Date
120
Data Normalization
exam
1000
◼
◼
◼
Requires 2 cv’s: first prod date
and elapsed months since first
prod date
For example, First.Prod.Date
and Delta.Prod.Months
First time: Workspace Tab >
Options > Normalize tables
100
Gas Rate (CD) (Mcf /d)
10 ACL208
Completion
Completion ACL607
Completion ACL618
Completion AEL1205
Completion
1 AVAB1016_2
Completion BTEL1620
Completion BTEL221
Completion BTEL619
Completion EOG205
0.1
Completion
EOG206
197172
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99200001 02 03 04 05
Completion TBE1320
Date
– use first production date
(First.Prod.Date)
◼
After first time:
121
Steps for a Normalized Plot Comparing
Multiple Completions
Filter
Plot - Add Multiple
Curves – by
Completion
Observe/
analyze
Turn off Normalization
exam
Workspace Options Normalize
Change X-axis to
Delta.Prod.Months
& set to Linear
If you’re plotting by
completions this works.
If you’re plotting by categories you might
not be seeing what you think.
Gender - Boy
Location Mexico
Location Brazil
No crossing categories
Location USA
Location
Nigeria
Location Malaysia
Gender - Girl
Analogy – Categories Gender & Location
If we wanted to study a
correlation between
wearing glasses and
class marks for boys
only, we would have to
remove the data for girls.
Gender - Boy
Gender - Girl
Analogy – Categories Gender & Glasses
Crossing categories
TB0539
TB0532
NE
SE
S
W
N
Provo – Field & Flow Station
No crossing categories
Provo – Field & Vintage (2000-2010 only)
If we wanted to study a
correlation between
vintage and average gas
rate for Provo West only,
we would have to
remove the data for
Provo East.
Crossing categories
How can you tell if categories are crossing?
It’s easy when Field is one of them – just filter
and look at the map. Others are intuitive. E.g.
vintage usually crosses with all other categories.
If no geographic separation, suppose you want
to filter by cat 1 (e.g. operator HOGL) and plot
by cat 2 (e.g. zone):
◼
◼
◼
◼
◼
Clear the filter
Filter to the first value of cat 2 (e.g. zone IC)
Change the step to cat 1 (e.g. operator)
Does more thanMore
one value
of cat
than one
cat11(operator)
show up?
for any cat 2 filter
means
Repeat for the next
valuecrossing.
of cat 2 (e.g. zone II)
Apply this
Example:
◼
◼
◼
Clear the filter.
Filter by Category
Field: Provo-West
Create a plot using Add
Multiple Curves
Multi-category plots do NOT honour
the current filter.
To achieve this plot for Provo-West
wells only you must use a Project
Filter.
– Category: Vintage Decade
– Variable:
CD.Gas.Rate.Per.Active.Well
◼
◼
Clear the filter. Does the plot
change? No
Change filter to Provo-East. Does
the plot change? No
128
Steps for a Normalized Plot Comparing
Multiple Categories
Plot - Add Multiple
Curves
Filter
Not
sure
Did I
filter by one
category and plot
by a crossing
one?
Change X-axis to
Delta.Prod.Months
& set to Linear
No
Workspace Options Normalize
If in doubt, use a project filter.
Yes
Filter by one
Still not
and step by the sure?
other to check
Use project
filter instead of
just filter
Observe/
analyze
You’re seeing what you think you’re seeing
Turn off
Normalization
Steps for a Regular Plot Comparing
Multiple Categories (not normalized)
Plot - Add Multiple
Curves
Filter
Did I
filter by one
No
plot filter
If in doubt,category
use aand
project
by a crossing
one?
Not
sure
Yes
Filter by one
Still not
and step by the sure?
other to check
Use project
filter instead of
just filter
Observe/
analyze
Other Useful Plot Options
◼
◼
◼
View XY Pairs
Plot to Report
Use Compute Line to generate a straight line between
two points
– Formula of line shows in Status Bar
131
Module F2 – Reporting
Module F2
Reporting
◼
OFM Reports
◼
Report Variables
◼
Report Formats
◼
Additional Report Tools
133
Rules
◼
◼
◼
Static data can be retrieved at any time
Monthly/Daily data are both date-based but represent
different concepts → do not include in the same report
Sporadic data → do not combine with Monthly or Daily in a
report
134
Historical Report
Filter to Category – Status – Oil
Home Tab → Report
Date, PRD.Oil, CD.Oil.Rate, Cum.Oil.Prod, Gas.Oil.Ratio,
Water.Cut
Date Format in Properties Pane – change as desired
135
Sort
◼
◼
◼
Click Date & Sort in
the toolbar

Up to three levels
(i.e. three different
columns) of sorting
are available
Each can be either
ascending or
descending
136
Breaks & Sub-Totals
◼
Breaks section allows breaks
(blank lines) to be inserted
into a report
– May be set as monthly,
quarterly, semi-annually,
annually, at end of Report or at
a user-defined point
– Can be inserted when data in a
particular column changes
◼
Sub-Totals can be added by
setting that column to Sum,
Average etc.
137
Breaks for Historical Report
Properties Pane: Set Break:
Annually
Click in PRD.Oil column, on
Properties Pane set Sub-Total:
Sum & Average
CD.Oil.Rate column → Average
Gas.Oil.Ratio → Average
Water.Cut → Average
138
Summary Reports
◼
◼
◼
Usually focus on the most recent date
Examples might include a sorted list of best oil producing wells to
date, latest monthly production volumes for wells belonging to a
specific field, comparison of category level totals
Pay attention to Format Tab > Date & Sort > Set Date tab so as
not to create a super-long report showing production from every
well at every time in the database – usually Last Date
– Format Tab → Summary By Item to generate a report for
each item in the current filter grouped by item **** very useful
– Summary By Date to generate a report grouped by date –
seldom used
139
Summary Report from Catalog
Filter to Category – Status – Gas
Home Tab → Report → From
Catalog
Select: Cumulative Production
Ranked Report
Map to Dictionary:
Add, Close
How to calculate the peak gas
rate in the well’s life?
@Tmax(CD.Gas.Rate, 1)
140
Format Calculated Column
Click in calculated column on
report
On Properties Pane, set:
Column Headings
Units & Multiplier
141
Set Date – already done in catalog report
◼
◼
◼
◼
Format Tab > Date & Sort
Set range of dates to include in
your report
At Last Date is normally used
for Summary Reports
Format Tab → Summary By
Item
142
Saving Reports (seldom used – NODES are used
more)
◼
◼
Save File= to save results as text (*.txt) file or rich text
format (*.rtf) depending on the specifications set
Save Format= to save format of a report as binary (*.rpt) file
- Contains column variables and customizations but not the data
itself
◼
A Saved .rpt file can be brought into another project.
-
Analysis pane.
Click My Analysis.
Right-click and choose Open – Report.
Select the Report
144
Exporting Reports
◼
Many different report
export options are
available – Format Tab
– Access to generate new
table within OFM project
database
– Excel to output report into
Excel spreadsheet *** very
useful
– Text to output to comma
delineated text file –
seldom used
Other Excel method – highlight
report in OFM, copy and paste
into Excel
145
Module F3 – Exporting
Module F3 Exporting
◼
Project Data Exports
◼
Text Load File Exports
147
Exporting Purpose
◼
◼
◼
To store critical information in
text files to rebuild the complete
database if something goes
wrong
To extract def and par files for
building new projects
To locally capture all data
including linked tables on
shared (network) project while
out of the office with no access
to network
148
Exporting Text Load Files (ASCII)
◼
Purposes:
- To export specific tables to incorporate data from one project into
another or to rebuild the project
- To generate a def or par file to edit and use in another project
◼
Types:
a. Exporting Table Definitions (*.def)
b. Exporting Table Data
c. Exporting Calculated Variables (*.par)
150
Workspace Snapshot
◼
◼
◼
To create a small project on
local drive that contains
only the wells of interest
Good for trouble-shooting
the project – especially for
SIS support – ask client to
do this
Good for situations with no
access to network
151
Module G – PVT Functionality
Module G PVT Functionalities
◼
OFM PVT Functionality
◼
@PVT…() System Functions
◼
PVT Lookup Tables
153
PVT Functionality
◼
Typically production data is surface-measured volumes of
oil/gas/water, but for most reservoir engineering calculations
it is better to deal with reservoir volumes
–
◼
E.g.: Waterflooding requires replacement of one reservoir barrel
of produced fluid with one reservoir barrel of injected water
Fluid properties typically change with pressure
154
PVT Approaches
PVT Correlations
◼
Contains comprehensive set of industry standard fluid correlations to
determine reservoir properties. Based on pressures.
PVT Lookup Tables
◼
Set up table of formation volume factors based on various pressure
values, OFM interpolates between values
Constants (where pressure data is not available)
e.g. FVF.Oil = 1.09
155
Pressures
◼
◼
◼
◼
◼
For calculations like VRR (res inj/ res
prod), need results every month.
If not much pressure data you need
a way to make it continuous.
Three methods: Step, Interpolate,
Curve fit
On Navigation Pane select Field:
PROVO-EAST
Plot Prs.Bhfp (raw data),
Stepped.BH.Pressure,
Curve.Fit.BH.Pressure,
Interpolated.BH.Pressure
exam
Provo East Pressures
1440
Field: PROVO-EAST
BHFP ( psi )
Stepped Res Press ( psia )
Fitted Reserv oir Pressure ( psia )
1360
Interpolated Reserv oir Pressure ( psia )
1280
1200
1120
1040
960
198081 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99200001 02 03 04 05 06 07 08 09
Date
@PVT System Functions – for correlations
◼
Use family of system functions to extract stored PVT data
◼
General syntax
@PVT…
◼
(Pressure)
Example of full list includes:
–
–
–
–
–
–
@PvtBg
@PvtBo
@PvtBt
@PvtBw
@PvtRs
@PvtZ
(Gas Formation Volume Factor)
(Oil Formation Volume Factor)
(Total Formation Volume Factor)
(Water Formation Volume Factor)
(Solution Gas-Oil Ratio)
(Gas Z-Factor)
157
PVT Regions
Your project may contain completions in different reservoirs
with different fluid properties. For example, in Provo, suppose
they vary by field.
To accommodate this:
1. From Base Map: Setup Tab > Association
2. Set PVT: Sc.Field
3. Setup Tab > PVT > Add. Name the Entity PROVO-EAST
(must exactly match the name of a field)
4. Set up the properties. Repeat for PROVO-WEST.
5. Calc Vars: FVF.Gas = @PvtBg(Stepped.BH.Pressure)
158
PVT Lookup Tables
Create a new
table, e.g.
PVTL, type
Lookup.
exam
Make sure the highest pressure in
the table is higher than all actual
pressure data.
The Lookup function interpolates.
It does not extrapolate.
FVF.Gas = @LOOKUP(PVTL.bg,"PVT1",
Stepped.BH.Pressure,"linear")
To accommodate difference by field, change PVT1 in table to
zone name, e.g. PROVO-EAST:
FVF.Gas = @LOOKUP(PVTL.bg, Sc.Field,
Stepped.BH.Pressure,"linear")
159
Setting Up PVT
◼
◼
◼
The parser we loaded originally contains the calculations for
PVT correlations
Three parser files have been included, one for constants,
one for lookup tables and one for correlations
Load the following from \G PVT:
– PVT_Lookup_Table.def
– Pvt_Lookup_Data.txt
– PVT Calcs Lookup.par
◼
What does each file do?
160
Module H – Shared Workspace, Tools &
Settings
Module H Shared Workspace, Tools & Settings
◼
◼
◼
◼
My Workspace Link to Existing Shared
Workspace
Other Features of Shared Workspace
Linking Existing OFM Project Workspace to
Shared Workspace
Tools & Settings
162
Shared Workspace
◼
◼
◼
Shared Workspace can be considered as “master” project
containing all analyses and linked data commonly used by all
team members
Automatically ensures that all team members are making
use of the most up-to-date information
Any existing workspace can become a shared workspace
- set it up fully first
163
Shared Workspace
User A sees:
Admin
Shared
Workspace
Shared Workspace
Shared
Tables
My
Workspace A
My
Tables A
User B sees:
Shared Defined Tables
Shared Data Tables
(Main Database)
Links (e.g. Avocet)
164
Shared
Workspace
My
Workspace B
Shared
Tables
My
Tables B
Final Method for Creating New Project
◼
◼
◼
Linked to a Shared Workspace File
This allows you to use any existing workspace &
database as the Shared Workspace, i.e. the master
project
Tables, calculated variables, categories are all shared, yet
users can have their own “My” versions
165
Module I – Logs (for Project 1)
Module I
Logs
OFM Defined Tables
◼
◼
◼
Default tables that are created automatically in every OFM
project with fixed table designs
Setup Tab > OFM Defined
Deviation, Fault, Marker, Pattern, Wellbore data can be
loaded without defining anything in a def file or here
◼
BUT - Log data requires a def file to define the traces
◼
Load from \I Logs:
– Log table.def
and
PROVO field logs.log
168
Download