Skip to content
Brent$117.6Gas TTF$1,192USD453.87 ₸
MunaiHub
SimulationUpscaling and petrophysics Advanced 22 min read

Pore-scale flow modelling

Pore-scale modelling is the calculation of flow inside the pore space. The pore space is described either as a set of pores and the narrow throats that join them, or directly by a digital image of the rock. The models use the sizes and connections of the pores, the wettability (which fluid the rock surface prefers) and the interfacial tension (the pull between two fluids at their boundary). From these they calculate what is measured on samples in the laboratory: permeability, capillary pressure, relative permeabilities, the irreducible and residual saturations (the water that cannot be displaced, and the oil that is left after flooding), and their hysteresis (the curves depend on the direction in which the saturation changes).

Why it matters

Relative permeability and capillary pressure curves are the main and the most expensive input data for a displacement calculation (Petrophysical input for simulation: relative permeability and capillary pressure). They are measured slowly, on few samples, and not for every process. Repeated cycles of drainage and imbibition (in drainage oil pushes water out of the pores, and in imbibition water comes back in), three-phase flow, and rock of another wettability are measured rarely. Pore models explain where the shape of the curves, the residual oil and the hysteresis come from. They show which properties of the rock and the fluids the curves depend on. They help to check and to complete the laboratory data. And from images of small samples they give first estimates even before the experiments. But these are models: without a check against measurements, their numbers are not carried over to the reservoir.

Quick refresher

  • For the models, rock is pores (cavities) and throats (the channels between them). The throats set the entry pressure (the pressure needed to push the oil through) and the resistance. The pores set the volume. The coordination number (the number of throats that meet at a pore) sets the connectivity. And an angular cross-section holds the wetting phase in its corners.
  • A bundle of capillaries gives relative permeabilities that add up to one, with no flow threshold (the saturation below which a phase does not flow at all), no trapping and no hysteresis: it has no connections between pores.
  • In a network, oil enters a pore only if the throat lets it through at the given pressure and there is a path to the throat from the inlet. Oil starts to flow when the pores it occupies join the inlet to the outlet. In the network of the lesson this happens at an oil saturation of 0.24. The sum of the relative permeabilities in the middle of the interval is about 0.43.
  • In imbibition, water fills pores and throats like a piston. Or it snaps the oil off in a throat: the water held in the corners thickens until it closes the throat, although no neighbouring pore is full of water. Snap-off cuts droplets of oil off in the pores. It is more likely when the advancing contact angle is smaller (this is the angle at which the water–oil interface meets the rock while water advances) and when the pores are larger relative to the throats.
  • In the network of the lesson the residual oil grows from 0.37 at an advancing angle of 30° to 0.77 at zero angle, where snap-off cuts oil off in almost all the pores. The model explains the trends, but its numbers, both the residual oil and the end points of the relative permeability, are not accurate without calibration against experiments.
  • A digital rock is a calculation from a micro-tomogram (a three-dimensional X-ray image of a small sample). Resolution and sample volume limit each other. The smallest pores and the wettability are not visible in the image.
Key relationships
g=πr48μℓ,∑jgij (pj−pi)=0g = \dfrac{\pi r^4}{8\mu\ell},\qquad \sum_j g_{ij}\,(p_j - p_i) = 0

conductance of a throat and the balance in a pore: the system of equations of the network

pcentry=2σcos⁡θr,pcsnap-off=σ(cos⁡θ−sin⁡θ)rp_c^{\text{entry}} = \dfrac{2\sigma\cos\theta}{r},\qquad p_c^{\text{snap-off}} = \dfrac{\sigma(\cos\theta - \sin\theta)}{r}

piston-like passage of a throat, and snap-off in a square throat

Rr>21−tan⁡θ\frac{R}{r} > \dfrac{2}{1 - \tan\theta}

snap-off of a throat comes before piston-like filling of the pore

Common pitfalls
  • Taking a sum of relative permeabilities equal to one as a sign of a good model. A bundle with no connections behaves like this.
  • Taking the radii from a mercury curve (mercury forced into a rock sample step by step under rising pressure) for pore sizes. These are the sizes of the throats through which the pores are reached.
  • Carrying the residual oil of a model over to the reservoir with no data on wettability. It depends strongly on the advancing contact angle.
  • Confusing piston-like filling of a pore (the meniscus passes the whole pore) with piston-like displacement in the reservoir (a front with no transition zone).
  • Trusting a calculation from an image whose resolution does not see the fine throats and the clay porosity.

After this lesson you can

  • describe the pore space by pores and throats, the coordination number, the ratio of pore and throat sizes and the shape of the cross-section, and compare three representations: a bundle of capillaries, a pore network and a digital image
  • calculate the permeability of a small pore network from the balance equations in the pores, and explain why it is not set by the average radius of the throats
  • calculate the saturation and relative permeability of a bundle of capillaries, and explain what it lacks compared with a network: accessibility of pores (a wide pore can be reached only through its throat), the percolation threshold (the share of open throats at which a connected path first appears) and trapping (oil left behind, cut off from the rest)
  • compare piston-like filling (the meniscus passes through a pore like a piston) and snap-off (water in the corners of a throat thickens and cuts the oil off) in imbibition, calculate their thresholds for a pore and a throat, and explain how wettability and the ratio of pore and throat sizes decide the residual oil
  • list what pore models and digital rock give for relative permeability, and where their results must not be used without a check

Pores, throats and ways to describe them

The pore space of a sandstone is made of cavities between the grains, joined by narrow channels. For the models we separate them. Pores (pore bodies) are the cavities that hold almost all the volume. Throats (pore throats; in the lesson Rock permeability they are called pore channels) are the narrow passages between them. The capillary pressure at which a meniscus (the curved boundary between two fluids) passes from one pore to the next, and the resistance to flow, are set by the throats. The storage of fluid is set by the pores.

Sizes of pores and throats
These are distributions of radii. For throats they come from the mercury curve (distribution of channels), and for pores from images. In sandstones the pores are usually several times wider than the throats.
Coordination number zz
The average number of throats that meet at a pore (coordination number). The larger it is, the more detours each phase has, and the less trapping there is.
Size ratio R/rR/r
The radius of a pore divided by the radius of its throat (the aspect ratio). It decides how water fills the pores in imbibition (the section on imbibition).
Shape of the cross-section
Real channels are angular. In the corners the wetting phase is held even where the centre is occupied by the non-wetting one, and it flows along these corner films (distribution of phases in pores).
Three representations of the pore space: a bundle of capillaries, a network of pores and throats, a digital imageBundle of capillariestube radii are the sizes ofthroats; the tubes are notconnected to each otherRrz = 3Network of pores and throatspores give the volume, throatsgive the entry pressure andthe resistanceDigital imagepores and grains on a gridof voxels; a one-voxel passage(frame) is barely visible

Three strips, one under the other. At the top is a bundle of parallel tubes of different thickness crossing the sample from left to right. In the middle is a network: circles, the pores, of different sizes, joined by thin links, the throats. For one pore the pore radius R and the throat radius r are marked, and for another there are three converging throats and z = 3. At the bottom is a grid of small squares: the dark ones are grains, and the light ones are pores. A narrow passage one cell wide is marked as barely visible. To the right of each strip is what this representation keeps.

SchematicThree representations of the pore space (schematic): a bundle of parallel capillaries of different radii; a network of pores joined by throats; and a digital image, with pores and grains on a grid of voxels (three-dimensional pixels).
What each representation keeps and what it loses
Representation
Bundle of capillaries
Keeps
the distribution of throat sizes
Loses
connections between pores, the difference between pores and throats
Used for
estimates of permeability and capillary pressure
Representation
Network of pores and throats
Keeps
connectivity, the sizes of pores and throats, the shape of cross-sections in a simplified form
Loses
the exact geometry
Used for
capillary pressure, relative permeability, residual saturation
Representation
Digital image
Keeps
the geometry of pores larger than a voxel
Loses
pores smaller than a voxel, wettability
Used for
permeability, building a network, checking models

A network is built from an image, or fitted to the statistics (size distributions, coordination number) and the mercury curve.

The model must cover a volume whose properties no longer depend on its size: the representative elementary volume (REV). For a uniform sandstone this is thousands of pores, that is, millimetres. For layered, vuggy (with cavities) and fractured rocks it is much more. The same idea at the scale of model cells is scale separation.

A bundle of capillaries: what it explains and what it cannot

The simplest model is a bundle of parallel tubes. We compare Poiseuille flow in the tubes (the flow of a viscous fluid in a round tube) with Darcy's law, and we get k=ϕr2/(8τ2)k = \phi r^2/(8\tau^2) (derivation), where τ\tau is the tortuosity of the tubes (how much longer than the sample the winding path is). The steps of mercury pressure turn into the sizes of channels (from the mercury curve). In drainage of a water-wet bundle, oil at once enters all the tubes wider than rc=2σcos⁡θ/pcr_c = 2\sigma\cos\theta/p_c, because every tube is open at both the inlet and the outlet.

Saturation and relative permeability of a bundle of capillaries in drainage
So=∑ri≥rcNiri2∑iNiri2,kro=∑ri≥rcNiri4∑iNiri4,krw=1−kro\begin{gathered}S_o = \frac{\sum_{r_i \ge r_c} N_i r_i^2}{\sum_i N_i r_i^2},\\ k_{ro} = \frac{\sum_{r_i \ge r_c} N_i r_i^4}{\sum_i N_i r_i^4},\qquad k_{rw} = 1 - k_{ro}\end{gathered}
where:
  • Ni, riN_i,\ r_inumber of tubes of class ii per unit of cross-section area, and their radius, —, µm
  • rcr_csmallest radius of the tubes filled with oil at the capillary pressure pcp_c: rc=2σcos⁡θ/pcr_c = 2\sigma\cos\theta/p_c, µm
  • σ, θ\sigma,\ \thetainterfacial tension and the receding contact angle (the contact angle while oil pushes water out, measured through the water), N/m, °
  • So, kro, krwS_o,\ k_{ro},\ k_{rw}oil saturation and the relative permeabilities of oil and water, —

Units: radii in equal units; in rcr_c consistent units (pcp_c in Pa, σ\sigma in N/m, rcr_c in m)

Holds when
  • The tubes have the same length and tortuosity, and each is completely filled with one phase (water films are neglected).
  • The volume of a tube is proportional to r2r^2, and its Poiseuille conductance to r4r^4.
  • Oil enters a tube as soon as pcp_c exceeds its entry pressure. The tubes are not connected to each other.

Oil occupies the widest tubes, and the conductance grows as the fourth power of the radius, so a small share of the volume gives a large share of the flow. The phases do not hinder each other: the conductance that water has lost has all gone to oil. The sum of the relative permeabilities is always one.

Worked exampleA bundle of four classes of tubes
Given (assumed data)
Tubes
radii 2, 4, 6 and 8 µm; 400, 200, 80 and 30 tubes per unit of area
Fluids
oil and water, σ\sigma = 30 mN/m; the rock is water-wet (θ\theta = 0)
Capillary pressure
12 kPa, which is more than the entry pressure of the 6 µm tubes, but less than that of the 4 µm tubes
Solution
  1. Entry pressures 2σ/r2\sigma/r: for the 8 µm tubes 2 · 0.03 / (8 · 10⁻⁶) = 7500 Pa, that is, 7.5 kPa. For the 6 µm tubes it is 10.0 kPa, and for 4 µm it is 15.0 kPa. At 12 kPa oil occupies the tubes of 8 and 6 µm.
  2. Volumes of the classes Nr2N r^2: 1600, 3200, 2880, 1920, in total 9600. Oil saturation SoS_o = (2880 + 1920) / 9600 = 0.50.
  3. Conductances of the classes Nr4N r^4: 6400, 51,200, 103,680, 122,880, in total 284,160. krok_{ro} = (103,680 + 122,880) / 284,160 = 0.797, and krwk_{rw} = (6400 + 51,200) / 284,160 = 0.203.
Answer: At 12 kPa oil occupies half of the pore volume and gives 80% of the conductance. kro+krwk_{ro} + k_{rw} = 1.

What it means. The bundle correctly shows that oil in the wide channels conducts disproportionately much, and it explains the shape of the capillary pressure curve. But in a rock a wide pore can be reached only through a narrow throat. Oil does not flow until the pores it occupies join the inlet to the outlet. And in imbibition part of the oil is left trapped. So real relative permeabilities add up to less than one, and imbibition does not repeat drainage. The data in this example are assumed for illustration.

Single-phase flow in a pore network

In a pore network model the pores are nodes and the throats are tubes between them. The resistance to flow sits in the throats, and a pore has one pressure. Each throat carries a rate proportional to the pressure difference between the pores it joins, and in each pore the inflow equals the outflow. This gives the same system as the cells of a reservoir simulation model (Pressure equation for single-phase flow), except that the cells are pores tens of micrometres across.

Conductance of a throat and the balance of rates in a pore
qij=gij (pi−pj),gij=πrij48 μ ℓij,∑jgij (pj−pi)=0\begin{gathered}q_{ij} = g_{ij}\,(p_i - p_j),\qquad g_{ij} = \frac{\pi r_{ij}^4}{8\,\mu\,\ell_{ij}},\\ \sum_j g_{ij}\,(p_j - p_i) = 0\end{gathered}
where:
  • qijq_{ij}rate through the throat between pores ii and jj, m³/s
  • gijg_{ij}hydraulic conductance of the throat, m³/(Pa·s)
  • rij, ℓijr_{ij},\ \ell_{ij}radius and length of the throat, m
  • μ\muviscosity of the fluid, Pa·s
  • pi, pjp_i,\ p_jpressures in the pores, Pa

Units: SI (any consistent system)

Holds when
  • The flow is laminar Poiseuille flow in a cylindrical throat. For angular cross-sections a shape correction is introduced.
  • The resistance of the pores themselves is neglected: they are much wider than the throats.
  • The sum in the balance is over all the throats of the pore. On the inlet and outlet faces of the sample the pressures are set.

The conductance grows as r4r^4: a throat twice as wide carries 16 times more. After solving the system for all the pores, we add up the rate through the outlet face, and we find the permeability of the network from Darcy's law: k=QμL/(A Δp)k = Q\mu L/(A\,\Delta p) (Darcy's law).

A network of nine pores: throat radii and the pressures in the poresp = 1p = 0inletoutlet67859610958475674650.770.690.250.800.680.490.790.230.12

A sketch of three by three circles, the pores. On the left is a vertical line, the inlet face, labelled “p = 1”, and on the right the outlet face, labelled “p = 0”. The pores are joined by horizontal and vertical lines of different thickness, labelled with radii from 4 to 10 micrometres. The thickest chain is in the middle row: 9, 10 and 9 micrometres. The circles show pressures from 0.80 near the inlet to 0.12 near the outlet.

CalculatedThe network of the example: nine pores in a layer 100 µm thick between the inlet face (pressure 1) and the outlet face (0). The thickness of a line is proportional to the radius of the throat. The throats are labelled with their radii in µm, and the pores with the calculated pressures as fractions of the pressure difference.
Worked examplePermeability of a network of nine pores
Given (assumed data)
Network
3 × 3 pores in a layer 100 µm thick; all the throats, including the inlet and the outlet ones, are ℓ\ell = 100 µm long; the radii are in the figure, from 4 to 10 µm
Dimensions
four throats from face to face: L=4ℓL = 4\ell = 400 µm; the cross-section is three rows of 100 µm times a thickness of 100 µm, AA = 30,000 µm²
Conditions
pressure 1 on the inlet face and 0 on the outlet face (as fractions of the difference), top and bottom closed. The viscosity is taken as one, so the conductances πr4/(8ℓ)\pi r^4/(8\ell) and the rate are in µm³, and the permeability k=QL/Ak = QL/A is in µm²
Solution
  1. Conductances: for the middle inlet throat (rr = 9 µm) it is π · 9⁴ / (8 · 100) = 25.765 µm³. For the next one (rr = 10 µm) it is π · 10⁴ / 800 = 39.270 µm³. The throats of 4 µm give only 1.005 µm³.
  2. The nine balance equations are solved on a computer, and the pressures are in the figure. Check in the central pore (pp = 0.6754): the inflow from the left is 39.270 · (0.8019 − 0.6754), and from the top 9.429 · (0.6923 − 0.6754), in total 5.13. The outflow to the right is 25.765 · (0.6754 − 0.4938), and downwards 1.005 · (0.6754 − 0.2280), in total 5.13. The balance holds.
  3. The rate through the outlet throats (7, 6 and 8 µm): QQ = 9.429 · 0.2482 + 5.089 · 0.4938 + 16.085 · 0.1202 = 6.787 µm³.
  4. Permeability: kk = 6.787 · 400 / 30,000 = 0.09049 µm², that is, 0.09049 / 0.000987 = 91.7 mD (1 mD ≈ 0.000987 µm²).
  5. Through the middle inlet throat passes 5.10 of the 6.787 µm³, which is 75% of the rate.
  6. The same network with all the throats of the average radius 6.5 µm: the vertical throats have no flow, and each row is four equal throats in a row, with a conductance π · 6.5⁴ / 800 = 7.010 µm³. Then QQ = 3 · 7.010 / 4 = 5.258 µm³, and kk = 5.258 · 400 / 30,000 / 0.000987 = 71.0 mD.
Answer: The permeability of the network is about 91.7 mD, and three quarters of the rate enter through one throat, the widest of the inlet ones. A network with the average throat radius would give 23% less.

What it means. The average throat radius does not set the permeability. The conductance grows as the fourth power of the radius, and the flow gathers in a chain of the widest throats (9, 10 and 9 µm in the middle row). It matters how the wide throats are connected with each other. With another arrangement of the same throats the answer would be different. This is the same problem as in the upscaling of cells (averages and bounds), only at the pore scale. The data in this example are assumed for illustration.

Drainage: invasion through the throats

In drainage of a water-wet rock, oil displaces water by steps of capillary pressure (drainage and imbibition curves). Two rules apply in the network. Oil passes a throat when the capillary pressure exceeds its entry pressure 2σcos⁡θ/r2\sigma\cos\theta/r, and only if oil has already reached the throat from the inlet face through the pores that it occupies. The pore behind the throat is wider than the throat, and it is filled at once. This process is called invasion percolation: the front moves not as a solid line but in fingers, along chains of the widest accessible throats.

  • Accessibility. A wide pore behind a narrow throat is filled only at the pressure of this throat. So the pressure at which a pore is filled tells us about its throat and not about the pore itself. The mercury curve gives the sizes of throats (distribution of channels).
  • Flow threshold. Until the pores occupied by oil have joined the inlet to the outlet, oil does not flow, even though there is quite a lot of it in the sample. The connection appears suddenly, when the capillary pressure opens a share of the throats equal to the percolation threshold. Only then do the open throats form a continuous chain (percolation theory).
  • Water in the corners. Water that is pushed out of the centre of the pores goes along the corners and is not trapped. Only a little of it is left in the corners of the pores occupied by oil. This is where most of the irreducible water saturation comes from. In pores of round cross-section, water cut off from the outlet by oil would stay trapped.
The network of the lesson
What
Lattice
Value
10 × 10 × 10 pores with a spacing of 80 µm, a cube of 0.8 mm
What
Pores
Value
radius 16–36 µm, median about 26 µm
What
Throats
Value
80% of the lattice links, average coordination number 4.34; the radius of a throat is the radius of the smaller of the neighbouring pores divided by a number from 2.0 to 5.0
What
Result
Value
porosity 0.179, permeability 206 mD, average R/rR/r 3.4
What
Fluids
Value
oil and water, σ\sigma = 30 mN/m; in drainage θ\theta = 0
What
Water in the corners
Value
15% of the volume of a pore or throat occupied by oil; its conductance is 2% of the conductance of the throat

The model is simplified. The pores are spheres with no resistance. The throats are cylinders (but water in the corners and snap-off are treated as if their cross-section were angular). The length of a throat in the conductance is equal to the lattice spacing. The data are assumed for illustration.

Capillary pressure of the network of the lesson in drainage and imbibition, and of a bundle of the same throats0.00.20.40.60.81.00246810Water saturationCapillary pressure, kPanetwork drainagebundleimbibition, 30°

Graph. The horizontal axis is water saturation, from 0 to 1. The vertical axis is capillary pressure, from 0 to 10 kilopascals. The dashed curve of the bundle rises smoothly from 3.7 kilopascals at a saturation of 1 to 9.9 kilopascals at 0.08. The drainage curve of the network, up to 6 kilopascals, moves away from saturation 1 slowly (to 0.88). Then it is almost horizontal, at about 6.3–7.5 kilopascals, from 0.8 to 0.27, and it rises steeply to 9.9 kilopascals at 0.17. The imbibition curve of the network drops vertically from the end of drainage to 3.2 kilopascals, then runs gently to 1.4 kilopascals at a saturation of 0.66, and falls vertically to zero.

CalculatedCapillary pressure of the network of the lesson: drainage and then imbibition at an advancing angle of 30°; for comparison, drainage of a bundle of the same throats. The bundle begins to fill at the entry pressure of the widest throat (3.69 kPa). At 6.05 kPa it has already given up 0.44 of the pore volume to oil, while the network has given up only 0.12: the wide pores are hidden behind narrow throats.
Worked exampleDrainage of the network and of a bundle of the same throats
Given (assumed data)
Network
the table above; oil is injected through one face, and water leaves through the opposite one
Bundle for comparison
the same throats, but as parallel tubes: volume ∝r2\propto r^2, conductance ∝r4\propto r^4
Relative permeability of the network
flow of each phase through the throats and pores it occupies, from face to face; water also flows along the corners
Solution
  1. The entry pressure of the widest throat is 3.69 kPa: the bundle begins to fill from it. At 6.05 kPa the water saturation of the bundle is already 0.56, and that of the network is 0.88: the wide pores of the network can be reached only through narrower throats.
  2. Oil joins the faces at 6.31 kPa, when the water saturation has fallen to 0.757. Oil then already occupies 0.243 of the pore volume, but only now does it start to flow. At the moment of connection krok_{ro} = 0.020 and krwk_{rw} = 0.569.
  3. At this pressure all the throats wider than 2σ/pc2\sigma/p_c = 2 · 0.03 / (6.31 · 10³) = 9.51 · 10⁻⁶ m are open, that is, wider than 9.51 µm. This is 595 of the 2700 links of the lattice, a share of 0.22. It is close to the percolation threshold of the links of a simple cubic lattice (about 0.25). In a small network, and in a single realisation (one random version of the network), the continuous chain appears with a scatter around the threshold.
  4. At 6.57 kPa, SwS_w = 0.536: krok_{ro} = 0.094, krwk_{rw} = 0.336, and the sum is 0.43. For a bundle the sum is always 1.
  5. The end of drainage at 9.93 kPa: SwiS_{wi} = 0.167, krok_{ro} = 0.878, krwk_{rw} = 0.041. Water flows only along the corners.
Answer: The network needs a larger pressure to reach the same oil saturation. Oil flows only from SoS_o ≈ 0.243 on, and the sum of the relative permeabilities in the middle of the interval is about 0.43.

What it means. The three differences from a bundle come from the connections between pores: the accessibility of pores through throats, the percolation threshold for the flow of oil, and the hindrance that the phases give each other on shared paths. The almost horizontal part of the curve near the threshold is also percolation. As soon as the pressure opens a continuous chain of throats, many wide pores behind it become accessible at once. The plateau on the mercury curves of well-sorted rocks is linked with this too. The irreducible water of the model is almost entirely water in the corners, set by an assumption. In a real rock its share is decided by the shape of the pores and by small pores that the model does not contain. The data in this example are assumed for illustration.

Drainage: relative permeability of the network and of a bundle of the same throats0.00.20.40.60.81.00.00.20.40.60.81.0Water saturationRelative permeabilitynetworkbundleoilwaterThe network of the lesson: relative permeability in drainage and in imbibition at an advancing angle of 30°0.00.20.40.60.81.00.00.20.40.60.81.0Water saturationRelative permeabilitydrainageimbibitionoilwater

Two graphs. In each, the horizontal axis is water saturation, from 0 to 1, and the vertical axis is relative permeability, from 0 to 1. Top: the dashed curves of the bundle. Oil grows smoothly from zero at a saturation of 1 to 0.98 at 0.08, and water is the mirror image. The solid curves of the network: oil is almost zero down to a saturation of 0.76 and grows to 0.88 at 0.17. Water falls from one to 0.04 and almost coincides with the dashed one. Bottom: the same drainage curves of the network, and the imbibition curves. Oil falls from 0.88 at 0.17 to zero at about 0.6, and water grows to 0.59 at 0.66.

CalculatedRelative permeability of the network of the lesson and of a bundle of the same throats. Top: drainage. In the bundle oil flows from the first few per cent of saturation, and the relative permeabilities add up to one. In the network oil flows only after the faces are joined. The water relative permeabilities almost coincide with those of the bundle: water occupies the small throats and the corners and stays connected, so the difference is carried by oil. Bottom: drainage and imbibition of the network at an advancing angle of 30°. In imbibition oil loses its connectivity even before the end of the process, and part of it stays trapped.

Imbibition: piston-like filling and snap-off

When the capillary pressure falls, because water soaks in or is injected, water returns into the pores. Imbibition does not repeat drainage. It has its own mechanisms, and the balance between them decides how much oil is left.

Piston-like filling of a throat
A meniscus from the neighbouring pore, already filled with water, passes through the throat at pc<2σcos⁡θa/rp_c < 2\sigma\cos\theta_a/r. This threshold is high, so the throats next to water are filled first.
Piston-like filling of a pore
The meniscus must pass the widest cross-section of the pore: pc<2σcos⁡θa/Rp_c < 2\sigma\cos\theta_a/R. If water already occupies several throats of the pore, it is easier to fill: this is cooperative filling. The simple model of the lesson does not include it.
Snap-off
As pcp_c falls, the water in the corners of a throat swells, and when the corner menisci meet, the thread of oil in the throat breaks (snap-off). A neighbouring pore with water is not needed: the water arrives along the corners.
Mechanisms of imbibition: piston-like filling and snap-offa) piston-like fillingwateroilthroatthe meniscus movesfrom a water poreinto an oil poreb) snap-offcross-section of the throat:water in the corners swellsmenisci have mergedside view, after snap-off:oildropletwatercut off

Two strips. At the top are a pore with water, a throat and a pore with oil. A meniscus, curved towards the water, advances along the throat to the oil pore, and an arrow shows the movement of the water. At the bottom left are three cross-sections of a square throat: the water in the four corners takes more and more room, and in the third cross-section the arcs meet in the middle of the walls. At the bottom right is a view along the throat: the thread of oil between two pores is broken in the throat, and a separate droplet of oil is left in the right pore.

SchematicMechanisms of imbibition (schematic): a) piston-like filling: a meniscus moves from a pore with water through a throat into a pore with oil; b) snap-off: the water in the corners of a square throat swells, the menisci join, and the oil in the pore is cut off from the rest of the oil.
Thresholds of imbibition: piston and snap-off
pcthroat=2σcos⁡θar,pcpore=2σcos⁡θaR,pcsnap-off=σ(cos⁡θa−sin⁡θa)r\begin{gathered}p_c^{\text{throat}} = \frac{2\sigma\cos\theta_a}{r},\qquad p_c^{\text{pore}} = \frac{2\sigma\cos\theta_a}{R},\\ p_c^{\text{snap-off}} = \frac{\sigma(\cos\theta_a - \sin\theta_a)}{r}\end{gathered}
where:
  • r, Rr,\ Rradii of the throat and of the pore (for a square throat rr is the radius of the inscribed circle), m
  • θa\theta_aadvancing contact angle, measured through the water (contact angle), °
  • σ\sigmaoil–water interfacial tension, N/m

Units: SI: pcp_c in Pa with σ\sigma in N/m and radii in m

Holds when
  • Capillary equilibrium: the flow is so slow that the positions of the menisci are set only by the capillary pressure (a small capillary number: the viscous forces are weak compared with the capillary ones).
  • The first two formulas are for a round cross-section. The snap-off formula is for a throat of square cross-section with water in the corners. At θa≥45°\theta_a \ge 45° snap-off is impossible in it.
  • A pore is filled from one side (no cooperative filling).

Snap-off comes before the piston-like filling of the pore when its threshold is higher, at R/r>2/(1−tan⁡θa)R/r > 2/(1 - \tan\theta_a) (the derivation is in the advanced section). Wide pores behind narrow throats, and strong water-wetness (a small θa\theta_a), favour snap-off. A growing advancing angle suppresses it.

Worked exampleOne pore: which comes first, filling or snap-off
Given (assumed data)
Pore and throat
RR = 30 µm, rr = 10 µm; the throat has a square cross-section
Fluids
σ\sigma = 30 mN/m; in drainage the receding angle is 0
Advancing angle in imbibition
0 or 30°
Solution
  1. Drainage: oil passed the throat at 2σ/r2\sigma/r = 2 · 0.03 / (10 · 10⁻⁶) Pa = 6.0 kPa.
  2. Imbibition at θa\theta_a = 0: filling of the pore is at 2σ/R2\sigma/R = 2.0 kPa, and snap-off is at σ/r\sigma/r = 3.0 kPa. Snap-off comes first.
  3. At θa\theta_a = 30°: filling of the pore is at 2 · 0.03 · 0.866 / (30 · 10⁻⁶) Pa = 1.73 kPa, and snap-off is at 0.03 · (0.866 − 0.5) / (10 · 10⁻⁶) Pa = 1.10 kPa. Now the pore is filled first.
  4. The boundary between the regimes for R/rR/r = 3: tan⁡θa=1−2/3\tan\theta_a = 1 - 2/3, so θa\theta_a = 18.4°.
Answer: At a zero advancing angle the throat snaps off (at 3.0 kPa) before water fills the pore (2.0 kPa). At 30° it is the other way round. The boundary is about 18.4°.

What it means. If all the throats of a pore are snapped off before water has filled it, the oil in the pore is cut off from the rest and stays in it as a droplet. This is trapping. At an angle larger than the boundary one, water advances from pore to pore as a front and displaces oil more completely. But oil that the front has bypassed can still be left trapped: wide pores are filled last, and water has time to surround them. Imbibition goes at pressures several times lower than drainage of the same pore. This is the hysteresis of capillary pressure. The data in this example are assumed for illustration.

What the network gives for relative permeability and residual oil

For each state of saturation the calculation “freezes” the positions of the phases and solves single-phase flow of each phase through the throats and pores it occupies, as in the section on single-phase flow. This gives the relative permeabilities of the capillary regime, where the positions of the phases are set by the capillary pressure and not by the rate. This regime is usual in the reservoir far from the wells, where the capillary number is about 10−710^{-7}. If we repeat imbibition at different advancing angles and on networks of different structure, we see what decides the residual oil.

Residual oil saturation after imbibition against the advancing contact angle010203040500.00.20.40.60.81.0Advancing contact angle, °Residual oil saturationlesson's network, R/r ≈ 3.4wider throats, R/r ≈ 1.8522°

Graph. The horizontal axis is the advancing angle, from 0 to 50 degrees. The vertical axis is residual oil saturation, from 0 to 1. The curve of the network of the lesson starts at about 0.77 at zero degrees, falls to 0.48 at 20 degrees, and from 30 degrees stays at about 0.37. The curve of the network with wide throats lies lower: 0.34 at zero and about 0.30 from 10 degrees on. Short vertical bars show the scatter of the three realisations, a few hundredths.

CalculatedResidual oil saturation after imbibition against the advancing contact angle: the network of the lesson (average R/rR/r ≈ 3.4) and a network with wider throats (≈ 1.85). The values are averages over three realisations, and the bars run from the smallest to the largest value.
Worked exampleResidual oil of the network: wettability and the size ratio
Given (assumed data)
Networks
the network of the lesson (average R/rR/r = 3.4) and a network with wider throats (1.85); three realisations of each
Process
drainage down to SwiS_{wi}, then imbibition down to zero capillary pressure, at an advancing angle from 0 to 50°
Solution
  1. The network of the lesson, averages over three realisations: 0.77 at 0°, 0.64 at 10°, 0.48 at 20°, 0.37 at 30°, and 0.36 at 40–50°. In the first realisation at 0° all 1307 events of imbibition are snap-offs. At 30° only 4 of 2198 are snap-offs.
  2. The boundary angle for the average R/rR/r = 3.4: tan⁡θa\tan\theta_a = 1 − 2 / 3.4, so θa\theta_a ≈ 22°. This is between 20 and 30°, where the curve levels off.
  3. The network with wider throats: 0.34 at 0° and 0.295 at 10–50°. Its average R/rR/r = 1.85 is less than 2. So even at zero angle snap-off comes before filling only where the throat is especially narrow: there are 198 snap-offs among 2259 events.
  4. The scatter of the realisations of the network of the lesson at 30°: 0.34, 0.38, 0.38.
Answer: The residual oil of the network of the lesson falls from 0.77 to 0.37 as the advancing angle grows from 0 to 30°. In the network with wider throats it is lower: 0.34 at 0° and 0.295 at larger angles.

What it means. Above the boundary angle there is almost no snap-off, and the oil that remains is the oil that the front bypassed in the wide pores. Below it, snap-off cuts oil off in many pores, and at zero angle in almost every one. At zero angle the model greatly exaggerates trapping. All its throats are at least twice as narrow as the neighbouring pores (R/r≥2R/r \ge 2 is exactly the boundary of snap-off at zero angle). So every throat snaps off before water fills the pore, and the model has no cooperative filling. In a strongly water-wet core the residual oil is noticeably smaller. A scatter of a few hundredths between realisations is a reminder that a cube of 0.8 mm is not yet a representative elementary volume. The data in this example are assumed for illustration.

The end points of the relative permeability of the network of the lesson (the first realisation, from which the curves were built): SwiS_{wi} = 0.167, and krok_{ro} at it is 0.88. After imbibition at 30°, SorS_{or} = 0.34, and krwk_{rw} at it is 0.59. This is 0.67 of krok_{ro} at SwiS_{wi}. By Craig's rules (rules of thumb that tell water-wet rock from oil-wet rock by the end points of the relative permeability), for a water-wet rock this ratio is usually below 0.3, and the irreducible water saturation is above 0.20–0.25 (signs of wettability). By its end points, the network looks more like an oil-wet rock, although it is water-wet by construction. The imbibition curves themselves also differ from those of a core (the lower graph of the relative permeability figure). At the start of imbibition, the oil relative permeability of the network is higher than in drainage at the same water saturation. Later the water relative permeability is noticeably higher. In a water-wet core, the oil relative permeability in imbibition is lower, and the water curves of both processes almost coincide.

The reasons are in the simplifications. The irreducible water of the model is the water in the corners, set by an assumption. The pores give no resistance and pass water even when oil is trapped in them. The spread of throat sizes is narrow, and the lattice is regular. Networks built from the image of a particular rock, with the real shape of cross-sections, the resistance of pores and cooperative filling, reproduce such curves noticeably better. But they too are checked against experiments. The simple model reproduces the trends, but it does not reproduce the numbers without calibration.

  • The shape of the curves and hysteresis. The model explains where hysteresis comes from. In imbibition the oil loses its connectivity and is trapped, and its relative permeability falls to zero at a higher oil saturation than that at which oil started to flow in drainage. It also shows why a reservoir simulation model needs imbibition curves (saturation history).
  • Wettability. If we make a part of the pores oil-wet, for example the large pores where the oil was, we get mixed wettability and see how the residual oil and the end points change (types of wettability).
  • Three phases. Three-phase relative permeabilities are rarely measured. Network models with the same rules for gas help to choose and to check the three-phase model of the simulator (three mobile phases).
  • Sensitivity. What would change if the throats were narrower, there were fewer connections, or the interfacial tension were lower? An experiment would answer such questions in months.

Digital rock

Digital rock is the calculation of rock properties from its three-dimensional image. A sample a few millimetres across is scanned in an X-ray micro-tomograph (the principle is the same as in core CT: attenuation of the X-ray beam). The image is divided into pores and grains (segmentation), and then there are two ways to go. We can pick out the pores and throats and build a network, as in this lesson. Or we can calculate the flow directly on the voxels, by solving the Stokes equations (the equations of slow viscous flow) or by the lattice Boltzmann method (it follows imaginary fluid particles that move on a lattice). The first way is fast and gives multiphase properties. The second represents the geometry more accurately, but it needs enormous computing, especially for two phases.

Worked exampleResolution against volume
Given (assumed data)
Image
2000 × 2000 × 2000 voxels, one byte per voxel
Rock
the network of the lesson: spacing between pores 80 µm, throat radii from 3.3 to 16.3 µm
Condition of the example
a throat can be resolved for the flow calculation if its diameter is at least 4 voxels
Solution
  1. Voxel 2.5 µm: the field is 2000 · 2.5 = 5000 µm = 5 mm. It holds (5000 / 80)³ = 62.5³ ≈ 244 thousand pores. Throats of radius from 4 · 2.5 / 2 = 5 µm can be resolved. These are 91% of the throats of the network of the lesson.
  2. Voxel 1 µm: the field is 2 mm, and it holds (2000 / 80)³ = 25³ ≈ 15.6 thousand pores. Throats of radius from 2 µm can be resolved, which is all the throats of the network (the narrowest is 3.3 µm).
  3. The amount of data in both cases is 2000³ = 8 billion voxels, that is, 8 GB per image.
Answer: With a voxel of 2.5 µm the image covers about 244 thousand pores, but it does not resolve 9% of the throats. With 1 µm it sees all the throats, but it holds 2.5³ ≈ 15.6 times fewer pores.

What it means. Resolution and field of view are tied together. Each time the voxel is halved with the same number of voxels, the volume of the sample falls eight times. For a clean sandstone a field of a few millimetres is enough. For clay-rich and carbonate rocks, with pores from nanometres to millimetres, one image is too little, and images of different scales are combined. Two more limits do not depend on the resolution: wettability is not visible in the image, and a small sample may not represent the reservoir. So calculations from digital rock are checked against laboratory ones: porosity, permeability, the mercury curve. The data in this example are assumed for illustration.

  • Microporosity. Clays and microporous grains (for example in carbonates) are smaller than a voxel. In the image they look solid, although they hold water and conduct current. We set them as a separate medium, with a permeability and a capillary pressure from laboratory data.
  • Segmentation. The boundary between pores and grains in an image is blurred. A shift of the segmentation threshold changes the porosity noticeably, and the permeability even more, because it depends on narrow throats a few voxels wide.
  • Wettability. A scan of a dry rock does not show it. The contact angles are set from core experiments, including images of oil and water in the pores, or they are chosen so that the model repeats the measured curves.
  • Representativeness. A sample of millimetres describes its own rock, not the reservoir. We carry the results over to a rock type after a check on several samples (Reservoir quality: geological controls on porosity and permeability).

The limits of pore models

What pore models give reliably and what they do not
Question
Permeability
Reliable
from a good image of a clean rock
With care
clays and microporosity, a small sample
Question
Drainage capillary pressure
Reliable
the shape of the curve from a mercury curve or an image
With care
absolute values without calibration
Question
Relative permeability and residual oil
Reliable
trends: wettability, connectivity, the size ratio
With care
end points; strong water-wetness; mixed wettability without data
Question
Fast displacement
Reliable
—
With care
capillary equilibrium models do not apply at a high capillary number

The numerical results of pore models are checked against laboratory experiments on the same rock, and adjusted, before they are passed to the reservoir simulation model.

The main thing that pore models give an engineer is understanding. Several things follow from the structure of the pore space: why the relative permeabilities add up to less than one; where residual oil comes from, and why it depends on wettability; why imbibition does not repeat drainage; and why the mercury curve speaks of throats and not of pores. With this understanding it is easier to check laboratory curves (Petrophysical input for simulation: relative permeability and capillary pressure) and to choose them for a model on good grounds.

Terms and symbols

Pore and throat
A pore is a cavity that holds the volume. A throat is a narrow channel between cavities, and it sets the entry pressure and the resistance.
Coordination number zz
The average number of throats that meet at a pore.
Size ratio R/rR/r
The radius of a pore divided by the radius of its throat. The balance of the mechanisms of imbibition depends on it.
Bundle of capillaries
A model of parallel tubes. It does not know the connections between pores, so its relative permeabilities add up to one.
Network model
A model in which pores are nodes and throats are tubes. Single-phase flow in it is a system of balance equations in the pores.
Invasion percolation
Drainage of a network: the non-wetting phase passes the throats in the order of their entry pressures, only if there is a path to them from the inlet.
Flow threshold
The saturation at which the pores occupied by a phase first join the inlet to the outlet. Below it the phase does not flow.
Piston-like filling and snap-off
The mechanisms of imbibition: a meniscus passes a pore or a throat, or the water in the corners of a throat closes up and cuts the oil off.
Digital rock
The calculation of properties from a three-dimensional image of the rock: from an extracted network, or directly on the voxels.

Common mistakes and misconceptions

Wrong

“A sum of relative permeabilities equal to one is a sign of a good model.”

In fact

Only a bundle of capillaries with no connections behaves like this. In the network of the lesson the sum of the relative permeabilities in the middle of the drainage interval is about 0.43: the phases hinder each other on shared paths.

Wrong

“The mercury curve shows the sizes of pores.”

In fact

It shows the sizes of the throats through which pores are reached: a wide pore behind a narrow throat is filled at the pressure of the throat. The sizes of the pores themselves are seen only in images.

Wrong

“The more water-wet the rock, the less residual oil.”

In fact

Not always. In the network of the lesson, at an advancing angle of 0, snap-off cuts oil off in almost every pore, and the residual oil saturation is 0.77 (the simple model greatly exaggerates this number). At 30° it is 0.37. Core experiments, too, often show the largest displacement at weak water-wetness (wettability and displacement).

Wrong

“A network with the average throat radius gives the same permeability.”

In fact

The conductance grows as r4r^4, and the flow chooses the wide throats and their chains. In the example of the lesson the network of nine pores has a permeability of 92 mD, and the same network with the average throat radius has 71 mD.

Wrong

“A model from an image is exact: it has the real geometry of the rock.”

In fact

Only of the part of it that is larger than a voxel, and only for a sample of millimetres. Clays, microporosity and wettability are not visible in the image, so the calculations are checked against laboratory data.

In depth: advanced detail

Where the thresholds of piston and snap-off come from

Piston. In a round channel of radius rr the meniscus is part of a sphere of radius r/cos⁡θr/\cos\theta, and both its principal curvatures are cos⁡θ/r\cos\theta/r. By the Laplace equation pc=2σcos⁡θ/rp_c = 2\sigma\cos\theta/r (where capillary pressure comes from). To pass a pore, the meniscus must pass its widest cross-section, where the curvature is smallest. This gives 2σcos⁡θ/R2\sigma\cos\theta/R.

Snap-off. In a throat of square cross-section with the inscribed radius rr, the water in each corner is bounded by an arc of radius rk=σ/pcr_k = \sigma/p_c, which touches the walls at the contact angle θ\theta (the second curvature, along the throat, is almost zero). The point of contact is at a distance b=rkcos⁡(θ+45°)/sin⁡45°b = r_k\cos(\theta + 45°)/\sin 45° from the apex of the corner. When pcp_c falls, rkr_k grows, and the arcs of neighbouring corners approach and meet in the middle of the wall, where b=rb = r. Substituting, we get rk=r/(cos⁡θ−sin⁡θ)r_k = r/(\cos\theta - \sin\theta), that is, pc=σ(cos⁡θ−sin⁡θ)/rp_c = \sigma(\cos\theta - \sin\theta)/r. At θ≥45°\theta \ge 45° the meniscus in the corner is flat (at 45°) or bulges towards the oil. Such an equilibrium is possible only at zero or negative pcp_c. So in imbibition down to zero capillary pressure, snap-off in a square throat is impossible. In triangular throats, with sharper corners, it is possible at larger angles too.

Snap-off comes before the piston-like filling of the pore if (cos⁡θ−sin⁡θ)/r>2cos⁡θ/R(\cos\theta - \sin\theta)/r > 2\cos\theta/R. Dividing by cos⁡θ\cos\theta, we get R/r>2/(1−tan⁡θ)R/r > 2/(1 - \tan\theta). At θ\theta = 0 the boundary is R/rR/r = 2, at 20° it is about 3.1, and at 30° about 4.7. So in rocks where the pores are much wider than the throats, snap-off matters even at moderate advancing angles.

Why networks are built in three dimensions

The percolation threshold depends on the dimension and the connectivity of the lattice. For the links of a square lattice in a plane it is 0.5, and for a simple cubic lattice in space it is about 0.249. The product of the threshold and the coordination number is almost constant: about 2 in a plane and about 1.5 in space (percolation theory).

An important consequence follows. In a plane, with a random placement of the phases, the links of a phase form a continuous path only if they take more than half of the lattice of square links. But more than half cannot belong to both phases at once. So in a plane network both phases flow together only in a narrow interval of saturation, and the narrower, the larger the network. In space about a quarter of the links is enough for each phase to be connected, and both are connected over a wide interval, from about a quarter to three quarters of the links taken by one of the phases, as in a rock. So plane networks and micromodels are good for seeing the mechanisms, and relative permeabilities are calculated on three-dimensional networks.

Connections to other topics

Check yourself

  1. 1

    A pore model gave oil and water relative permeabilities whose sum is one at any saturation. What does this say about the model?

    1. A.This always happens at capillary equilibrium
    2. B.The rock is oil-wet
    3. C.The model is accurate: the phases do not lose conductance
    4. D.The model does not include connections between pores. A bundle of capillaries behaves like this, and in a rock the sum is less than one
    Show the answer

    Correct answer: D. The model does not include connections between pores. A bundle of capillaries behaves like this, and in a rock the sum is less than one

    In a bundle each tube is open at both ends and filled with one phase, so the conductance lost by water goes entirely to oil. In a network the phases share paths, oil flows only after the inlet is joined to the outlet, and in imbibition part of it is trapped. So the sum of the relative permeabilities in the middle of the interval is noticeably less than one (in the network of the lesson, about 0.43).

  2. 2

    Throats of radius 12 and 6 µm have the same length. By how many times do their conductances and the entry pressures of oil in drainage of a water-wet rock differ?

    Show the answer

    The conductance is proportional to r4r^4: (12/6)4=16(12/6)^4 = 16, so the wide throat carries 16 times more. The entry pressure is inversely proportional to the radius: oil enters the narrow throat at a capillary pressure twice as large. So oil first occupies the wide throats, and at once gets a disproportionately large share of the flow.

  3. 3

    Why are the radii calculated from a mercury curve usually smaller than the radii of pores in thin sections and tomograms?

    1. A.Mercury compresses the rock
    2. B.Thin sections exaggerate the pores
    3. C.Mercury wets the rock
    4. D.A pore is filled at the pressure of the throat through which it is reached, so its volume is assigned to the radius of the throat
    Show the answer

    Correct answer: D. A pore is filled at the pressure of the throat through which it is reached, so its volume is assigned to the radius of the throat

    This is the accessibility effect: a wide pore behind a narrow throat waits until the pressure opens the throat, and its whole volume falls into the step that corresponds to the radius of the throat. So a mercury curve is a distribution of throats (with the volumes of the pores behind them), not of pores.

  4. 4

    The ratio of the radii of the pore and the throat is R/rR/r = 2.5. At what advancing contact angle does snap-off of the throat stop coming before piston-like filling of the pore (a throat of square cross-section)?

    Show the answer

    Snap-off goes first at R/r>2/(1−tan⁡θa)R/r > 2/(1 - \tan\theta_a). At the boundary 1−tan⁡θa=2/2.5=0.81 - \tan\theta_a = 2/2.5 = 0.8, tan⁡θa=0.2\tan\theta_a = 0.2, and θa≈11.3°\theta_a \approx 11.3°. At smaller angles the throats snap off before water fills the pore, and oil in the pores can be left trapped. At larger angles the pore is filled first.

  5. 5

    In which rock will a pore model predict the largest residual oil in imbibition?

    1. A.The pores are 4–5 times wider than the throats, advancing angle near zero, few connections between pores
    2. B.The pores are slightly wider than the throats, advancing angle 40°
    3. C.Residual oil does not depend on the structure of the pores
    4. D.The pores are 4–5 times wider than the throats, advancing angle 40°, many connections
    Show the answer

    Correct answer: A. The pores are 4–5 times wider than the throats, advancing angle near zero, few connections between pores

    Snap-off is favoured by wide pores behind narrow throats and by a small advancing angle, and a small coordination number takes away the detours for oil. All three conditions meet in the rock with pores 4–5 times wider than the throats, an angle near zero, and few connections. At an angle of 40° in square throats, snap-off comes before filling of the pore only if the pore is more than 12 times wider than the throat. And many connections also reduce the bypassing of oil by the front.

  6. 6

    A tomogram of 2000 voxels on a side was taken with a voxel of 1.5 µm. What is the field of view, how many pores does it cover at a spacing of 100 µm between pores, and which throats can be resolved if a throat needs at least 4 voxels across?

    Show the answer

    The field is 2000⋅1.5=30002000\cdot1.5 = 3000 µm, that is, 3 mm. Along a side there are 3000/100=303000/100 = 30 pores, in total 30330^3 = 27 thousand. Throats with a diameter from 4⋅1.5=64\cdot1.5 = 6 µm, that is, with a radius from 3 µm, can be resolved. Narrower throats and clay porosity will be “closed”, and the permeability from such an image will be too low unless they are accounted for separately.

Updated: 28 October 2026