Reservoir Pressure and Temperature
On this page
Summary
The formation volume factors need the pressure and temperature at the depth of the interval. Reservoir pressure is the Reservoir pressure of a static water column, the hydrostatic pressure, plus any Excess pressure. Temperature rises linearly from the surface with the Geothermal gradient. Use a measured pressure or temperature when there is one, and use the gradients as a first estimate otherwise.
Inputs and outputs
| Item | Units | |
|---|---|---|
| Input | True vertical depth | ft |
| Input | Fluid pressure gradient | psi/ft |
| Input | Pressure at the datum | psia |
| Input | Excess pressure | psi |
| Input | Surface temperature | °F |
| Input | Geothermal gradient | °F/100 ft |
| Output | Reservoir pressure | psia |
| Output | Formation temperature | °F |
| Output | Equivalent mud weight | ppg |
Equations
Hydrostatic pressure is the weight of a static water column from the datum to the depth \(\zdepth\). With a pressure gradient \(\gradP\) in psi/ft and a pressure \(\Psurf\) at the datum, the absolute pressure is
where \(\dPex\) is the excess over hydrostatic and is zero for a normally pressured interval. Temperature follows a linear gradient from the surface temperature \(\Tsurf\):
The pressure can be expressed as the density of a mud column that would balance it, using 0.052 psi per foot for each pound per gallon:
The gradient depends on the density of the formation water: about 0.433 psi/ft for fresh water, which is 8.33 ppg, and about 0.465 psi/ft for a typical formation brine, which is 8.94 ppg. Salinity and temperature change the density, and a gradient can be computed as \(0.433\,\mathrm{SG}\) for a brine of specific gravity SG. The depth is true vertical depth below the datum the gradient is referenced to, which is ground level onshore or the sea-bed in an offshore well, with the water column handled separately.
| Symbol | Variable | Units | Typical range |
|---|---|---|---|
| \(z\) | True vertical depth | ft | 0 to 30000 |
| \(G_p\) | Fluid pressure gradient | psi/ft | 0.43 to 0.52 |
| \(p_0\) | Pressure at the datum | psia | 14.7 |
| \(\Delta p_{ex}\) | Excess pressure | psi | 0 to 10000 |
| \(T_0\) | Surface temperature | °F | 40 to 100 |
| \(G_T\) | Geothermal gradient | °F/100 ft | 0.8 to 2.5 |
| \(p\) | Reservoir pressure | psia | 500 to 20000 |
| \(T_f\) | Formation temperature | °F | 75 to 350 |
| \(\rho_{eq}\) | Equivalent mud weight | ppg | 8.3 to 18 |
Single-value calculator
Behavior
Pressure is a straight line in depth. Plotted with depth increasing downward, the three lines run parallel and are shifted to higher pressure by the excess pressure. At 12,000 ft with a brine gradient of 0.465 psi/ft the hydrostatic pressure is 5,595 psia, and with 1,500 and 3,000 psi of excess it is 7,095 and 8,595 psia. The same three cases correspond to equivalent mud weights of 8.94, 11.35 and 13.75 ppg. Temperature follows the gradient independently of pressure: at 1.5 °F per 100 ft and a 70 °F surface temperature, it is 220 °F at 10,000 ft and 250 °F at 12,000 ft.
Parameter guidance
Hydrostatic gradient. Use the density of the formation water of the area; 0.465 psi/ft is a typical value and 0.433 psi/ft is the fresh-water value. A pressure gradient from the formation water of a nearby well, or a salinity-based density, is better. Excess pressure. Where the interval is overpressured, the pore pressure comes from a pore pressure analysis: see Pore Pressure and Overburden and Hydrostatic Pressure. Direct measurements, such as a formation tester pressure, a drill-stem test or a shut-in pressure, override all of this and should be used wherever they exist. Temperature. The geothermal gradient is basin-specific. If bottom-hole temperatures from logs are available, correct them to equilibrium (for example by a Horner plot) before fitting a gradient; the raw logging temperature is lower than the formation temperature because mud circulation cools the hole.
Worked example
A reservoir at 10,000 ft true vertical depth in a normally pressured basin, with brine and fresh water compared, and the same interval with 2,000 psi of overpressure:
tvd = 10000.0
p0, t0, gt = 14.7, 70.0, 1.5
for label, grad, excess in (('fresh water', 0.433, 0.0), ('brine', 0.465, 0.0), ('brine + 2000 psi', 0.465, 2000.0)):
p = p0 + grad * tvd + excess
emw = (p - p0) / (0.052 * tvd)
print(f"{label:18s} p = {p:8.1f} psia equivalent mud weight = {emw:5.2f} ppg")
print(f"temperature = {t0:g} + {gt:g} x {tvd:g} / 100 = {t0 + gt * tvd / 100:.1f} F")
print(f"0.052 x 8.94 ppg = {0.052 * 8.94:.3f} psi/ft; 0.465 / 0.052 = {0.465 / 0.052:.2f} ppg")
print()
print("depth profile for brine (psia, F):")
for z in (2000, 5000, 8000, 11000, 14000):
print(f" {z:6d} ft {p0 + 0.465 * z:8.1f} {t0 + gt * z / 100:6.1f}")
Output
fresh water p = 4344.7 psia equivalent mud weight = 8.33 ppg
brine p = 4664.7 psia equivalent mud weight = 8.94 ppg
brine + 2000 psi p = 6664.7 psia equivalent mud weight = 12.79 ppg
temperature = 70 + 1.5 x 10000 / 100 = 220.0 F
0.052 x 8.94 ppg = 0.465 psi/ft; 0.465 / 0.052 = 8.94 ppg
depth profile for brine (psia, F):
2000 ft 944.7 100.0
5000 ft 2339.7 145.0
8000 ft 3734.7 190.0
11000 ft 5129.7 235.0
14000 ft 6524.7 280.0
Assumptions and limitations
- The water column is static and continuous from the datum to the depth, so the pressure is hydrostatic. Compartments, perched water and a pressure seal break this.
- The gradient is the average gradient of the water column to the depth of the interval. In a basin with a salinity change the gradient changes with depth, and an average over a long column differs from the local value.
- Temperature is a linear function of depth. In reality the gradient changes with the thermal conductivity of the rock, so a salt or a thick shale changes the profile.
- The excess pressure is a constant offset. In a real overpressured zone it varies with depth and is highest below the seal.
- Hydrocarbon columns have a lower gradient than water, so the reservoir pressure at the top of a thick column is higher than the water-line pressure at that depth. For a long gas column the correction is significant for the formation volume factor.
QC checks
- The initial pressure of a normally pressured reservoir sits on the regional water-gradient line. Pressure points from formation tests in the water leg should fall on the same line.
- The equivalent mud weight is near the density of the formation water, 8.3 to 9.5 ppg, for a normally pressured interval. A value near 12 ppg or higher is an overpressured interval, and a value below 8 ppg points to depletion or an error.
- Pressure is absolute here (psia). A gauge pressure is 14.7 psi lower, and mixing the two is an error of a fraction of a percent at depth but a large one at low pressure.
- Temperature at the interval matches the bottom-hole temperature after correction. A difference of more than about 10 °F calls for a check of the gradient.
- The formation volume factor does not change by more than a few percent between hydrostatic and measured pressure unless the interval is overpressured. If it does, the pressure model is the first thing to check.
Going Deeper
The hydrostatic gradient is the first pressure model, and almost every other pressure model is a departure from it. In an area with overpressure, the departure is the quantity of interest and is estimated with an effective-stress method from sonic or resistivity logs, covered in the Pore Pressure topic. In volumetrics, the effect is indirect: pressure enters through the formation volume factors, and a higher pressure compresses the gas, which reduces the formation volume factor and raises the gas in place per unit of pore volume. Initial pressure and temperature are properties of the reservoir at discovery. After production, the pressure has dropped and the volumetric calculation, which refers to original in-place volumes, should still use the initial values. Fluid contacts and the pressure difference between oil, gas and water phases mean the pressure at a point in a hydrocarbon column is the pressure at the free water level minus the weight of the water, plus the weight of the hydrocarbon column above it.
References
References will be added once verified.
Python reference implementation
Python reference implementation
The Python reference implementation is available to registered users with a verified email address. Register or sign in to view it.