PET-320 · Lesson 9 of 12 · 19 min
Darcy's law and steady-state radial flow
Material balance says how much oil the Cardium A pool holds and what energy drives it. It says nothing about how fast the oil will come out. 'Rate is a well problem,' Lena says, handing Ethan the test data from one of the vertical wells. 'This well makes about 23 m³ a day. The rock around it should support more. Is the rock poorer than we think, or is the well damaged? You can't plan new wells until you can answer that kind of question.'
This lesson brings Darcy's law from the core plug (PET-250) to the reservoir. It derives the steady-state radial flow equation for a vertical well, introduces the productivity index and the skin factor, shows how layered reservoirs and gas wells are handled, and explains why tight reservoirs need horizontal wells and fractures.
Darcy's law in radial form
Darcy's law says that the flow rate of a fluid through porous rock is proportional to the permeability, the area open to flow and the pressure gradient, and inversely proportional to the fluid's viscosity. Around a vertical well that fully penetrates a horizontal layer of thickness h, flow is radial: fluid converges from all directions toward the wellbore. At radius r the flow area is the side of a cylinder, 2π r h.
If the rate is constant at every radius, which is the steady-state assumption, the equation can be integrated from the wellbore radius rw, where the pressure is the flowing bottomhole pressure pwf, to the external radius re, where the pressure is held at pe. Expressing the rate in stock-tank units by dividing by Bo gives the steady-state radial inflow equation.
In consistent SI units, k is in m², h and r in m, pressures in Pa, μ in Pa·s, and q in m³/s; in practice the equation is evaluated with a unit conversion, with k in millidarcies (1 mD ≈ 9.869 × 10⁻¹⁶ m²), pressure in kPa, viscosity in mPa·s and rate in m³/d. The term s, the skin factor, is explained below.
Two features of this equation shape all of well engineering. First, the rate is proportional to kh, the flow capacity, so a thick, permeable layer delivers far more than a thin, tight one. Second, the pressure falls logarithmically with distance: most of the pressure drop happens close to the well, where the flow converges into a small area. Half the drop typically occurs within a few metres or feet of the wellbore. That is why damage near the well matters so much.
Skin
In a real well, the rock near the wellbore is rarely the same as the rock farther out. Drilling mud and cement filtrate can invade and plug pores, perforations may be partially blocked, and fines can migrate; all of these restrict flow and add an extra pressure drop near the well. Stimulation, such as acidizing or hydraulic fracturing, does the opposite, opening extra flow paths. Van Everdingen and Hurst described the combined effect with a single dimensionless number, the skin factor s, which adds to ln(re/rw) in the inflow equation.
A positive skin means damage: a skin of 5 to 10 is common in a poorly completed well and can halve its rate. A skin of zero is an undamaged well. A negative skin means stimulation; a well with a large hydraulic fracture may have a skin of −3 to −5. Skin can also include effects that are not damage at all: partial penetration of the reservoir, deviation of the well, and high-velocity flow near gas wells all add to the apparent skin. Well tests, covered in PET-360, measure skin directly.
The productivity index
The productivity index, J, is the rate per unit of drawdown. For steady-state radial flow above the bubble point it is a constant property of the well.
Production engineers use J to predict how much a well will make at a given flowing pressure, for example after installing a pump that lowers pwf. Reservoir engineers use it to diagnose wells: comparing the measured J with the J expected from the kh of the logs and core shows whether a well is underperforming because of damage. Below the bubble point, free gas reduces the oil relative permeability near the well, J falls with drawdown, and inflow performance relationships such as Vogel's are used instead (PET-340).
# Steady-state radial flow to a vertical well: rate, productivity index, skin and layers
import math
SI = True
if SI: # SI units: k in mD, h m, mu mPa.s, pressures kPa, rates m3/d of stock-tank oil
k, h, mu, B, re, rw, dp = 15.0, 6.5, 0.72, 1.29, 400.0, 0.10, 5500.0
def q(k, h, s, dp=dp): return 2 * math.pi * (k * 9.869e-16) * h * (dp * 1e3) / (mu * 1e-3 * B * (math.log(re / rw) + s)) * 86400
qu, pu, layers = "m3/d", "kPa", [(2.0, 40.0), (3.0, 8.0), (1.5, 1.5)] # (thickness m, permeability mD)
else: # oilfield units: k mD, h ft, mu cP, psi, STB/d
k, h, mu, B, re, rw, dp = 25.0, 30.0, 0.90, 1.19, 1490.0, 0.354, 800.0
def q(k, h, s, dp=dp): return 0.00708 * k * h * dp / (mu * B * (math.log(re / rw) + s))
qu, pu, layers = "STB/d", "psi", [(10.0, 60.0), (12.0, 15.0), (8.0, 3.0)]
q0 = q(k, h, 0.0)
print(f"undamaged well (skin 0): {q0:,.1f} {qu}; productivity index {q0/dp:.4f} {qu} per {pu}")
for s in (-3, 0, 5, 10, 20):
print(f" skin {s:+3d}: rate {q(k, h, s):8,.1f} {qu} ({q(k, h, s)/q0:5.0%} of undamaged)")
kh = sum(t * kk for t, kk in layers); htot = sum(t for t, _ in layers)
print(f"layered: total kh = {kh:,.0f} mD.{'m' if SI else 'ft'}, average k = {kh/htot:.1f} mD; rate {q(kh/htot, htot, 0.0):,.1f} {qu}")
for t, kk in layers:
print(f" layer of {t:4.1f} {'m' if SI else 'ft'} at {kk:5.1f} mD carries {t*kk/kh:5.1%} of the flow")
tight = 0.01 if SI else 0.005
print(f"the same vertical well in {tight} mD tight rock: {q(tight, h, 0.0):.3f} {qu} (why tight pools use fractured horizontals)")undamaged well (skin 0): 37.3 m3/d; productivity index 0.0068 m3/d per kPa skin -3: rate 58.4 m3/d ( 157% of undamaged) skin +0: rate 37.3 m3/d ( 100% of undamaged) skin +5: rate 23.3 m3/d ( 62% of undamaged) skin +10: rate 16.9 m3/d ( 45% of undamaged) skin +20: rate 10.9 m3/d ( 29% of undamaged) layered: total kh = 106 mD.m, average k = 16.3 mD; rate 40.6 m3/d layer of 2.0 m at 40.0 mD carries 75.3% of the flow layer of 3.0 m at 8.0 mD carries 22.6% of the flow layer of 1.5 m at 1.5 mD carries 2.1% of the flow the same vertical well in 0.01 mD tight rock: 0.025 m3/d (why tight pools use fractured horizontals)
For the Cardium A pool vertical well, with 15 mD, 6.5 m of pay and a drawdown of 5,500 kPa, an undamaged well should make about 37 m³/d. The well actually makes about 23 m³/d, which matches a skin of about +5: the well is damaged, not the rock. (At this drawdown the flowing pressure is somewhat below the bubble point, so free gas near the well makes the single-phase equation an approximation; PET-340 treats two-phase inflow.) Lena suggests a small acid treatment. The layered calculation adds a warning for the waterflood: the 2 m layer at 40 mD carries three-quarters of the flow, so injected water will rush through it first.
Layered reservoirs
When a well produces from several layers that are separated by impermeable barriers but share a common wellbore, each layer flows according to its own kh. The total rate is the sum, so the total flow capacity is the sum of the layer kh values. The layers with the highest kh dominate the production, and they also deplete fastest. If the layers have different pressures, crossflow can occur through the wellbore when the well is shut in. Production logging measures the contribution of each layer and shows where to target stimulation or water shutoff.
Steady-state gas flow
For gas, the radial equation has the same form, but density and viscosity vary strongly with pressure, so the integration is done in terms of the real-gas pseudopressure, m(p) = 2∫ p/(μ z) dp, which accounts for the changing gas properties. At low pressures, below about 14,000 kPa (2,000 psia), the product μz is nearly constant and the equation reduces to a form in the difference of squared pressures. At high pressures, μz is roughly proportional to p, and the ordinary pressure difference works. High gas velocities near the wellbore add a rate-dependent, non-Darcy skin, so gas well deliverability tests measure at several rates. Gas well testing is covered in PET-360 and PET-440.
Why tight reservoirs need horizontal wells and fractures
The radial equation also explains modern unconventional development. Rate is proportional to kh. In a reservoir of 0.01 mD or less, a vertical well delivers only a tiny fraction of a cubic metre or barrel per day, far below any economic rate. No amount of drawdown fixes that. What changes the answer is contact area: a horizontal well thousands of metres or feet long, with dozens of hydraulic fracture stages, creates a huge area of rock face, and flow into each fracture face is linear rather than radial, over a short distance. That is why the Cardium is developed with multi-stage fractured horizontal wells, whose behaviour is analysed by decline and rate-transient methods rather than by the steady radial equation.
Limitations of the steady-state equation
True steady state requires that pressure at the outer boundary is held constant, which happens only with strong water drive or pressure maintenance. Most wells are in transient or pseudosteady-state flow, where the pressure everywhere declines with time. Lesson 10 develops those regimes. The steady-state equation is still the best way to understand how inflow depends on kh, skin and drainage size, and its pseudosteady-state cousin, which differs only by a constant in the logarithm, is used every day.
Worked problem
Skin from a production rate
A well in 20 mD rock with 8 m of pay produces 40 m³/d of oil (Bo 1.20, μo 1.0 mPa·s) at a drawdown of 6,000 kPa. With re = 300 m and rw = 0.1 m, find the skin. The undamaged rate formula gives q = 2π k h Δp/(μ B (ln(re/rw) + s)) × 86,400 with SI conversions.
Show solution
- Undamaged term: 2π × (20 × 9.869 × 10⁻¹⁶) × 8 × (6,000,000) / (0.001 × 1.20) × 86,400 = 429 m³/d multiplied by 1/(ln(re/rw) + s).
- ln(300/0.1) = 8.01.
- Required: 429/(8.01 + s) = 40, so 8.01 + s = 10.7.
- s ≈ 2.7.
Answer: Skin about +2.7: mild damage.
Drainage area and well spacing
The external radius re in the inflow equation is the radius of the area each well drains, which in a developed field is set by the spacing between wells. Because the rate depends only on the logarithm of re/rw, closer spacing barely raises each well's rate in a high-permeability reservoir; what it changes is how fast the reservoir is drained and, in heterogeneous rock, how much of it is contacted. In low-permeability rock, where the pressure disturbance spreads slowly (lesson 10), closer spacing can add reserves by reaching rock that wider spacing would never drain within the economic life of the wells. Spacing decisions therefore depend on permeability, continuity and economics together, and regulators set minimum spacing to protect correlative rights between mineral owners.
Common mistakes
MistakeBlaming low rate on poor rock without checking skin.
InsteadCompare the measured productivity with the kh expected; a large difference points to damage.
MistakeUsing arithmetic average k times total h for layers with barriers and different pressures.
InsteadSum the layer kh values and allow for different layer pressures.
MistakeApplying the oil equation directly to gas at all pressures.
InsteadUse pseudopressure, or the squared-pressure form at low pressure.
MistakeTreating skin as permanent.
InsteadDamage can be removed by stimulation, and stimulation can wear off.
MistakeExpecting a vertical well to produce economically from very tight rock.
InsteadRate scales with kh; tight rock needs fractured horizontal wells.
Summary and key terms
- Darcy's law in radial form gives q = 2π k h (pe − pwf)/[μ B (ln(re/rw) + s)] for steady state.
- Pressure falls logarithmically with distance, so most of the drawdown is near the well.
- Skin adds an extra near-well pressure drop: positive for damage, negative for stimulation.
- The productivity index is rate per unit drawdown and diagnoses well performance.
- Layer contributions are proportional to kh; high-kh layers dominate and deplete first.
- Gas flow uses pseudopressure or squared pressures and includes rate-dependent skin.
- Very tight rock needs large contact areas from horizontal wells and fractures.
- Radial flow
- Flow converging toward a well from all directions in a horizontal layer.
- Steady state
- Flow in which pressure at every point stays constant with time.
- Skin factor
- A dimensionless measure of the extra near-well pressure drop from damage or stimulation.
- Productivity index (J)
- Oil rate per unit pressure drawdown.
- Flow capacity (kh)
- Permeability times thickness.
- Pseudopressure
- An integral transform of pressure used to linearize gas flow equations.
- Non-Darcy skin
- A rate-dependent pressure loss from high gas velocities near the wellbore.
Practice problems
Work each problem on paper first, then reveal the answer to check.
If skin rises from 0 to 10 in a well where ln(re/rw) = 8, by what fraction does the rate fall at the same drawdown?
Show answer
Rate becomes 8/18 of the original, a fall of about 56 percent.
Why does doubling the drainage radius change the rate only slightly?
Show answer
Rate depends on the logarithm of re/rw; doubling re adds only ln 2 ≈ 0.69 to a term of about 8.
A production log shows one layer producing 80 percent of the oil. What does this suggest for a future waterflood?
Show answer
Water will likely break through that layer first; it may need profile control.
Name two things besides formation damage that can add to the measured skin.
Show answer
Partial penetration, well deviation, perforation effects and non-Darcy flow.
Lesson quiz · 5 questions
Score 60% or more to complete this lesson.
Create a free account to save your progress, take quizzes and earn a certificate.