Reservoir Rock & Fluid Properties

What the reservoir is made of. Learn porosity (total and effective), permeability and Darcy's law, fluid saturations, Archie's equation and well logs, capillary pressure and wettability, relative permeability, compressibility, reservoir fluids (black oil, volatile oil, gas condensate, wet and dry gas), phase diagrams, bubble point, PVT properties (B_o, R_s, B_g, viscosity) and gas Z-factor — with Python for Archie saturation, core Darcy flow and formation volume factor.

How much oil is in place and how fast it flows depend on rock properties (porosity, permeability, saturation) and fluid properties (density, viscosity, how volume changes with pressure). These are measured on cores, from well logs and from PVT lab tests.

Every reserves estimate, well rate and simulation model starts with these numbers — errors here propagate everywhere.

An analogy

Porosity is how much space a sponge has for water; permeability is how easily water can be squeezed through it. A pumice stone is very porous but poorly connected; a coarse sand is both porous and permeable.

Porosity and permeability

Porosity (5–35%) depends on sorting, grain packing, cementation and fractures. Only effective (connected) porosity matters for flow. Permeability varies enormously — from nanodarcies in shale to darcies in unconsolidated sand — and controls well rates. Measured on cores (helium porosimeter, gas/liquid permeameter) and estimated from logs and well tests.

Saturation, logs and capillarity

Key petrophysics:

Reservoir fluids and phase behaviour

The pressure–temperature phase diagram classifies fluids: black oil and volatile oil (reservoir T below critical point — bubble-point fluids), gas condensate (retrograde dew point), wet gas and dry gas. Above the bubble point, oil is undersaturated; below it, gas comes out of solution. PVT tests (constant composition expansion, differential liberation, separator tests) give B_o, R_s, µ_o versus pressure.

Gas properties and compressibility

Natural gas deviates from ideal behaviour; the Z-factor (Standing–Katz chart, Hall–Yarborough, equations of state like Peng–Robinson) corrects pV = nRT. Rock and fluid compressibilities (c_f, c_o, c_w) drive pressure-support and well-test analysis. Equations of state tuned to lab data feed compositional simulators.

Formulas

Worked example: Porosity from core

Given: Bulk 50 cm³, grain volume 39 cm³

Find: φ.

Answer: 0.22

Worked example: Archie

Given: φ 0.22, R_w 0.05, R_t 12

Find: S_w.

Answer: 0.293

Worked example: Gas FVF

Given: Z 0.88, T 660 °R, p 3000 psia

Find: B_g.

Answer: 0.00547 ft³/scf (1 ft³ reservoir holds ~183 scf)

Archie saturation, core permeability and B_o

# Reservoir rock & fluid properties: porosity, saturation (Archie), permeability (Darcy)
phi = 0.22
a, m, n = 1.0, 2.0, 2.0
Rw, Rt = 0.05, 12.0                     # ohm-m formation water, true resistivity
Sw = (a * Rw / (phi**m * Rt)) ** (1 / n)
print(f"Archie water saturation Sw = {Sw:.3f}, hydrocarbon saturation {1-Sw:.3f}")
# Linear Darcy flow through a core plug
k_md = 150.0
k = k_md * 9.869e-16                     # m2
A = 3.14159 / 4 * 0.0381**2              # 1.5-inch core
L, mu, dP = 0.05, 1e-3, 2.0e5            # m, Pa.s, Pa
q = k * A * dP / (mu * L)
print(f"core flow rate {q*1e6*60:.2f} cm3/min for k = {k_md:.0f} mD")
# Oil formation volume factor effect
Bo = 1.25
print(f"1 stock-tank barrel occupies {Bo} reservoir bbl -> shrinkage {(1-1/Bo)*100:.0f}%")
# Archie water saturation Sw = 0.293, hydrocarbon saturation 0.707
# core flow rate 40.51 cm3/min for k = 150 mD
# 1 stock-tank barrel occupies 1.25 reservoir bbl -> shrinkage 20%

High resistivity (12 Ω·m) relative to the brine (0.05 Ω·m) signals hydrocarbons: 71% of the pore space holds oil. A 150 mD sandstone is a good reservoir. Oil shrinks 20% from reservoir to surface as dissolved gas comes out.

Common mistakes

Applications

Key takeaways

Going further