Capstone 1: Clastic shelf reservoir characterization
Learning objectives
- Run an end-to-end clastic-reservoir workflow: wells → variogram → kriging → simulation → OOIP
- Choose appropriate variogram model parameters (range, sill, nugget) for shelf-clastic data
- Generate P10/P50/P90 OOIP estimates from SGS realizations
- Communicate uncertainty using the P90/P10 ratio as a key metric
The first reservoir-characterisation capstone walks an end-to-end clastic-shelf workflow. Given porosity measurements at wells in a shelf-sand reservoir, generate a complete uncertainty model for original oil-in-place (OOIP).
Workflow stages
- Well-log statistics: typical clastic-shelf porosity ranges 0.10-0.30; mean ~0.18; variance 0.02; spatial range typically 6-12 grid cells in a uniform shelf depositional setting.
- Variogram modeling: use a spherical variogram with isotropic range. Nugget ~0.001 (well-measurement noise); sill = sample variance; range from inspection of declustered experimental variogram.
- Ordinary kriging: smooth deterministic interpolation. Kriging variance σ² gives local uncertainty at each grid cell.
- SGS: each realization = kriging mean + Normal(0, σ²) draw. 20+ realizations give the uncertainty model.
- OOIP calculation: OOIP (Mbbl) = 7758 · Area_acres · h_ft · φ · (1 - S_w) / B_o. The clastic-shelf simplifies S_w and B_o as constants; uncertainty enters via φ realizations.
Decision metric: P90/P10 ratio
The P90/P10 ratio is a one-number summary of OOIP UNCERTAINTY. A ratio of 1.2 means the high-side estimate is 20% larger than the low-side — a well-constrained reservoir. A ratio of 3.0 means the high-side is 3× larger — substantial uncertainty justifying additional appraisal data. Use this for capital-allocation decisions.
Try it
- Default settings (12 wells, range = 6, sill = 0.02). Note the P90/P10 ratio — typically ~1.2-1.4 with 12 wells. The kriging map is smooth; SGS realizations show variation around the mean.
- Drop nWells to 5. Uncertainty widens dramatically; P90/P10 jumps to 1.6-2.0. With fewer wells, kriging variance is higher, SGS realizations diverge more, and OOIP uncertainty grows.
- Increase range to 14 (long correlation). With strong spatial correlation, kriging interpolates confidently; uncertainty bounded. Decrease range to 2: nearly independent cells; SGS realizations become very different; OOIP P90/P10 spreads even with same n_wells.
- Compare P50 OOIP at different acreage / thickness inputs. Industry standard: report only P50 ± P90/P10 range, not the full distribution.
- Verify the variogram-range sensitivity: short range → high local variance → wide OOIP distribution; long range → low local variance → narrow OOIP distribution.
An asset team reports OOIP P50 = 12 Mbbl with P90/P10 ratio = 1.15. A second team analyzes the SAME data and reports P50 = 14 Mbbl with P90/P10 = 2.0. What ARE the methodological choices most likely to cause this discrepancy, and which team should you trust?
What you now know
You can run a complete clastic-shelf reservoir workflow in the browser. The same stack scales to real-data dimensions: just use math.js for matrix operations, replace the synthetic data with real well logs, and use proper search ellipsoids (anisotropic ranges) instead of isotropic.
References
- Pyrcz, M.J., Deutsch, C.V. (2014). Geostatistical Reservoir Modeling, 2nd ed. Oxford.
- Deutsch, C.V., Journel, A.G. (1998). GSLIB: Geostatistical Software Library, 2nd ed. Oxford.
- Caers, J. (2011). Modeling Uncertainty in the Earth Sciences. Wiley.
- Chilès, J.-P., Delfiner, P. (2012). Geostatistics: Modeling Spatial Uncertainty, 2nd ed. Wiley.
- Society of Petroleum Engineers (2018). SPE-PRMS Petroleum Resources Management System. (Industry P10/P50/P90 reporting standards.)