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