Transcript Slide 1
Computing Oil Reserves Using Statistical Distribution of Porosities Author: Jon Kleppe Assistant producer: Per Jørgen Dahl Svendsen, Ole Johan Storli ENTER Computing Oil Reserves Using Statistical Distribution of Porosities Introduction INTRODUCTION RESERVOAR DESCRIPTION RESERVOAR SIMULATION TASKS PROGRAM EXERCISE LINKS AND TIPS Fortran elements in this module •Use of nag library •Input & Output •Loops Learning goals • Review of methods for numerical integration • Develop problem solution skills using computers and numerical methods • Develop programming skills using FORTRAN SUMMARY Reservoar description Assign porosity Tasks Reservoar simulation Water saturation HCPV Links and tips Program exercise Summary FAQ REFERENCES ABOUT BACK HELP Computing Oil Reserves Using Statistical Distribution of Porosities Description of reservoir INTRODUCTION RESERVOAR DESCRIPTION RESERVOAR SIMULATION TASKS PROGRAM EXERCISE An oil reservoir extends over an area of 2 km x 2 km and has a thickness of 100 m. The reservoir has an initial water saturation which depends on the porosity, and the remaining of the pores are filled with oil. The porosities are different in each block, and will make the water saturation (and more important, the oil saturation) differ from block to block LINKS AND TIPS SUMMARY FAQ REFERENCES ABOUT BACK HELP Computing Oil Reserves Using Statistical Distribution of Porosities Reservoar simulation INTRODUCTION RESERVOAR DESCRIPTION RESERVOAR SIMULATION TASKS PROGRAM EXERCISE Based on well logs and core tests in the lab, it has been found that the porosity distribution is log-normal, and that the water saturation varies according to the following equation: S w 0,415 1,37 1,481 2 So 1 S w LINKS AND TIPS SUMMARY All reservoir simulators uses a similar procedure when assigning porosity and permeability to different blocks. You take all the data you have (logs, welltesting, core testing etc) in a field, and try to match it with a distribution function. Ironically, since the amount of information accumulates with time, the simulator will be as close to the reality as possible when the field is shut down Here is an example of a water saturation map taken from a reservoir simulator (Source : Reservoir Characterization Research and Consulting, Inc. ) FAQ REFERENCES ABOUT BACK HELP Computing Oil Reserves Using Statistical Distribution of Porosities Tasks INTRODUCTION RESERVOAR DESCRIPTION RESERVOAR SIMULATION The assignment in this module is to compute the Hydro Carbon Pore Volume (HCPV) for the imaginary reservoir described earlier. TASKS Assign porosity The following tasks should be executed: Water saturation HCPV PROGRAM EXERCISE Step1 Divide the reservoir into a number of blocks LINKS AND TIPS SUMMARY Step2 Assign a porosity to each block in accordance with the log-normal distribution function. Sw Φ HCPV Step3 Compute water saturation for each block by the equation presented earlier. Step4 Compute hydrocarbon pore volume (HCPV). FAQ REFERENCES ABOUT BACK Φ Sw HELP Computing Oil Reserves Using Statistical Distribution of Porosities Tasks INTRODUCTION RESERVOAR DESCRIPTION RESERVOAR SIMULATION TASKS Assign porosity The dividing of the reservoir: Water saturation: The dividing of the reservoar should not be a big problem, just write a DO-loop that divides the reservoir into blocks. The water saturation will determine how much hydrocarbons we can expect from a given reservoir. In this problem we do not separate oil and gas, we use the term hydrocarbons to include both. Water saturation HCPV PROGRAM EXERCISE LINKS AND TIPS SUMMARY The water saturation for each block can then be computed based on the randomized porosities. Assign porosity: The porosity is to be distributed to each block by a random number generator. To distribute porosities randomly, we will call a NAG routine called G05DEF. To see how this NAG routine works and which input data you need, simply type naghelp G05DEF in the terminal window. Upper and lower limit is to be set to 0.5 and 0.05 respectively. For each block, Sw should be computed with: 2 w Because the porositites are assigned by a random number generator, the HCPV will be different each time. By repeating the procedure many times, we may obtain a measure of the uncertainty in the reserves of the reservoir. To compute the hydro carbon pore volume for a given reservoir with known boundaries, we simply multiply the volume, the porosity and the fraction that contains hydrocarbons (1-Sw). S 0,4151,37 1,481 HCPV To compute the HCPV for a number of blocks we just sum all of the blocks and use: i NxN In particular, it is interesting to see how the reserves are affected by the number of blocks that the reservoir is divided into (i.e. the number of realizations). HCPV (1 S ) ixyh w i i1 FAQ REFERENCES ABOUT BACK HELP Computing Oil Reserves Using Statistical Distribution of Porosities Program exercise INTRODUCTION RESERVOAR DESCRIPTION RESERVOAR SIMULATION TASKS PROGRAM EXERCISE LINKS AND TIPS Make a FORTRAN program that divides the reservoir into N x N blocks. The program should then distribute porosities to N x N blocks in accordance with a log-normal distribution function by calling the NAGroutine G05DEF (see naghelp for description). Then, the program should compute water saturation for each block, and finally calculate the hydrocarbon pore volume (HCPV) . SUMMARY For each set of N x N blocks, the calculations are to be repeated 200 times, i.e. 200 realizations, and the average HCPV should be plotted vs. number of realizations. Also, plot the frequency distribution curves for porosity and HCPV. Use the following parameters for the porosity distribution curve: mean=0,2 =0,1 (standard deviation) max =0,5 min=0,05 Run the program for N=1, N=2, N=5, and N=10 FAQ REFERENCES ABOUT BACK HELP Computing Oil Reserves Using Statistical Distribution of Porosities Links and tips for the exercise INTRODUCTION RESERVOAR DESCRIPTION Tips RESERVOAR SIMULATION -The nag routine demands that input is declared with double presicion, i.e. REAL*8 TASKS PROGRAM EXERCISE -Remember to check the limits for the porosities, use an if structure to verify that [0.05, 0,5] LINKS AND TIPS SUMMARY -The NAG routine returns the values (porosities) exponentially, use DLOG to return the values to normal numbers Links: Introduction to fortran: The whole exercise in printable fromat: Websites: •Professional Programmer's Guide to Fortran77 •Programming in Fortran77 FAQ REFERENCES ABOUT BACK HELP Computing Oil Reserves Using Statistical Distribution of Porosities Summary INTRODUCTION RESERVOAR DESCRIPTION RESERVOAR SIMULATION Subsequent to this module you should: TASKS PROGRAM EXERCISE •Be able to translate a problem to Fortran code LINKS AND TIPS SUMMARY •Write and handle DO-loops •Know how to use NAG routines •Know the conditional statements and use the IF structures FAQ REFERENCES ABOUT BACK HELP Computing Oil Reserves Using Statistical Distribution of Porosities References INTRODUCTION RESERVOAR DESCRIPTION RESERVOAR SIMULATION TASKS PROGRAM EXERCISE W. H. Preuss, et al., “Numerical Recipes in Fortran”, 2nd edition, Cambridge University Press (1992) LINKS AND TIPS SUMMARY References to the textbook : Distribution function: FAQ REFERENCES ABOUT BACK page 604 HELP Computing Oil Reserves Using Statistical Distribution of Porosities About this module INTRODUCTION RESERVOAR DESCRIPTION RESERVOAR SIMULATION TASKS PROGRAM EXERCISE LINKS AND TIPS Title: Computing Oil Reserves Using Statistical Distribution of Porosities Teacher(s): Professor Jon Kleppe Assistant(s): Per Jørgen Dahl Svendsen, Ole Johan Storli Abstract: Provide a good background for solving problems within petroleum related topics | using numerical methods 4 keywords: Nag Routines, Statistical Distribution, Fortran SUMMARY Topic discipline: Level: 2 Prerequisites: None Learning goals: Develop problem solution skills using computers and numerical methods Size in megabytes: 0.9 MB Software requirements: MS Power Point 2002 or later, Flash Player 6.0 Estimated time to complete: Copyright information: FAQ REFERENCES ABOUT BACK The author has copyright to the module and use of the content must be in agreement with the responsible author or in agreement with http://www.learningjournals.net. HELP Computing Oil Reserves Using Statistical Distribution of Porosities INTRODUCTION RESERVOAR DESCRIPTION Help Navigation tools in the module RESERVOAR SIMULATION TASKS PROGRAM EXERCISE LINKS AND TIPS SUMMARY On every page, you will find the title at the top, and a menu with the main chapters in bold to the left. These are hyperlinks which enable you choose the chapters in whichever order you wish to view them. Keep in mind that the module is set up in the order the author believes is most appropriate for study. These chapters are also represented with an illustration on the introduction slide linked to the appropriate chapter. The chapter you are currently viewing in is shown with this marker: , while the subchapter (when applicable) is highlighted in orange. At bottom of the slide you’ll find a few standardised buttons which occur on every page (some may not be present in the module): REFERENCES shows the list of references. ABOUT shows information about the module (e.g. author and assistant producer). FAQ shows a list of frequently asked questions if there are any. BACK Within the main frame (the white area), you’ll find text and illustrations as well as animations and videos etc. Many pictures have enlargement buttons near them. takes you to previously viewed slide. is linked to the previous chapter and slide, respectively. Previous picture in an animation or sequence of pictures. is linked to the next chapter and slide, respectively. Next picture in an animation or sequence of pictures. ON OFF you may turn off the sound, or turn it on (when available). HELP you have figured it out! EXIT will end your session with the current module. If you have any problems, please let us know by sending an e-mail to [email protected]. Please include the title of module and description of the problem. We will respond as quickly as possible. FAQ REFERENCES ABOUT BACK HELP