1 / 17

Computing Oil Reserves Using Statistical Distribution of Porosities

Computing Oil Reserves Using Statistical Distribution of Porosities. Home. Introduction. Water Saturation. The Program Step-by-step. Assign Porosity. HCPV. Programming Exercise. Resources. Useful Info. Learning Objectives. Learning objectives in this module

lang
Download Presentation

Computing Oil Reserves Using Statistical Distribution of Porosities

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Computing Oil Reserves Using Statistical Distribution of Porosities

  2. Home Introduction Water Saturation The Program Step-by-step Assign Porosity HCPV Programming Exercise Resources Useful Info

  3. Learning Objectives • Learning objectives in this module • Review of methods for numerical integration • Develop problem solution skills using computers and numerical methods • Develop programming skills using FORTRAN • FORTRAN elements in this module • use of nag library • input /output • Loops

  4. Introduction • 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 is 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 Continue =0,21 =0,39 2 km 2 km

  5. Introduction • 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: • 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

  6. Introduction • The assignment in this module is to compute the Hydro Carbon Pore Volume (HCPV) for the imaginary reservoir described earlier. Here is an example of a water saturation map taken from a reservoir simulator (Source : Reservoir Characterization Research and Consulting, Inc. )

  7. Tasks • The following tasks should be executed: • Divide the reservoir into a number of blocks • Assign a porosity to each block in accordance with the log-normal distribution function. • Compute water saturation for each block by the equation presented earlier. • Compute hydrocarbon pore volume (HCPV). • The first element should not be a big problem, just write a DO loop • that divides the reservoir into blocks

  8. 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. • 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. • 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).

  9. Water Saturation • 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. • The water saturation for each block can then be computed based on the randomized porosities. • For each block, Sw should be computed with:

  10. HCPV • 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). • To compute the HCPV for a number of blocks we just sum all of the blocks and use:

  11. Program Exercise • 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 NAG-routine G05DEF (see naghelp for description). Then, the program should compute water saturation for each block, and finally calculate the hydrocarbon pore volume (HCPV) • 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: • Run the program for N=1, N=2, N=5, and N=10 mean=0,2 =0,1 (standard deviation) max =0,5 min=0,05

  12. Useful Information • Here is a few hints and tips for this exercise • the nag routine demands that input is declared with double presicion, i.e. REAL*8 • remember to check the limits for the porosities, use an if structure to verify that   [0.05, 0,5] • the NAG routine returns the values (porosities) exponentially, use DLOG to return the values to normal numbers Resources

  13. Resources Introduction to Fortran Fortran Template here The whole exercise in a printable format here Web sites • Numerical Recipes In Fortran • Fortran Tutorial • Professional Programmer's Guide to Fortran77 • Programming in Fortran77 Useful Info

  14. General information About the author

  15. FAQ • No questions have been posted yet. However, when questions are asked they will be posted here. • Remember, if something is unclear to you, it is a good chance that there are more people that have the same question For more general questions and definitions try these Dataleksikon Webopedia Schlumberger Oilfield Glossary

  16. References W. H. Preuss, et al., “Numerical Recipes in Fortran”, 2nd edition, Cambridge University Press (1992) • References to the textbook : Distribution function: page 604 • The Textbook can also be accessed online: Numerical Recipes in Fortran

  17. Summary Subsequent to this module you should... • be able to translate a problem to Fortran code • write and handle DO loops • know how to use Nag routines • know the conditional statements and use the IF structure

More Related