Loading vs Unloading
On this page
Summary
Rock that is being buried follows a virgin loading curve of velocity against effective stress; rock whose stress has fallen, for example by Unloading caused by fluid expansion, stays faster than that curve predicts. This page shows the two curves, how to tell which applies, and how much the choice changes the pressure. A loading-curve method applied to unloaded rock underestimates the pore pressure.
Inputs and outputs
| Item | Units | |
|---|---|---|
| Input | Vertical effective stress | psi |
| Input | Bowers mudline velocity | ft/s |
| Input | Bowers parameter A | ft/s per psi^B |
| Input | Bowers parameter B | |
| Input | Bowers unloading parameter | |
| Input | Velocity at onset of unloading | ft/s |
| Output | Maximum effective stress | psi |
| Output | Velocity on the loading curve | ft/s |
| Output | Velocity on the unloading curve | ft/s |
| Output | Slowness on the loading curve | µs/ft |
| Output | Slowness on the unloading curve | µs/ft |
Equations
Loading, as in the Bowers page, velocity as a function of effective stress:
Unloading from a maximum stress \(\ppSmax\) at velocity \(\ppVmax\), for \(\ppSeff < \ppSmax\):
For \(\ppSeff \ge \ppSmax\) the rock is still loading and the unloading curve is replaced by the loading curve. The slowness displayed on a log is \(10^6/V\) in µs/ft.
| Symbol | Variable | Units | Typical range |
|---|---|---|---|
| \(V_{load}\) | Velocity on the loading curve | ft/s | |
| \(V_{unl}\) | Velocity on the unloading curve | ft/s | |
| \(V_0\) | Bowers mudline velocity | ft/s | 4500 to 5500 |
| \(A\) | Bowers parameter A | ft/s per psi^B | 5 to 20 |
| \(\sigma'\) | Vertical effective stress | psi | 0 to 15000 |
| \(B\) | Bowers parameter B | 0.6 to 0.9 | |
| \(U\) | Bowers unloading parameter | 1 to 8 | |
| \(\sigma'_{max}\) | Maximum effective stress | psi | 2000 to 10000 |
| \(V_{max}\) | Velocity at onset of unloading | ft/s | 8000 to 15000 |
| Slowness on the loading curve | µs/ft | ||
| Slowness on the unloading curve | µs/ft |
Single-value calculator
Behavior
At the same effective stress the unloaded rock is faster than the loaded rock, and the two curves meet at the maximum stress, 5,061 psi here. At 3,000 psi the loading curve gives 9,054 ft/s (110.5 µs/ft) and the unloading curve 10,265 ft/s (97.4 µs/ft), a difference of 1,211 ft/s. The gap is widest at low stress: at 1,000 psi it is 2,222 ft/s, and it closes to 36 ft/s at 5,000 psi. Read the other way, a log that reads 10,000 ft/s is at 3,969 psi if the rock is loading but at only 2,440 psi if it has been unloaded, a difference of about 1,500 psi, or 1.7 ppg, in the pore pressure. The plot has the stress on the horizontal axis and the velocity vertical, as in the usual presentation of hysteresis.
Parameter guidance
Recognizing unloading. Look for: a reversal or flattening of velocity (or of density) with depth, or a drop in sonic slowness reversal in shale that is not matched by a lithology change; a velocity-density cross-plot in which the points move away from the loading trend towards higher velocity for the same density, rather than along it; and a plausible source of fluid expansion (gas generation or a temperature window of clay diagenesis, a thick lateral transfer pathway, a structural position at the crest of a pressured sand). Disequilibrium compaction alone does not require unloading. Setting Vmax and U. Vmax is the velocity on the virgin curve at the depth where the log leaves the loading trend. U is calibrated from measured pressure in the unloaded interval, since log data alone do not determine it. Where no calibration exists, give a range of results with U from 3 to 8 and treat the lower pressure as the loading case and the higher as the unloading bound.
Worked example
The same velocity of 10,000 ft/s at 12,000 ft with an overburden of 11,400 psi, interpreted as loading and as unloading, and a check that the curves meet at the maximum stress:
v0, a, b, u, vmax = 5000.0, 10.0, 0.75, 3.0, 11000.0
sv, z, v = 11400.0, 12000.0, 10000.0
s_max = ((vmax - v0) / a) ** (1 / b)
s_load = ((v - v0) / a) ** (1 / b)
s_unl = s_max * ((v - v0) / (vmax - v0)) ** (u / b)
for name, s in (('loading', s_load), ('unloading', s_unl)):
pp = sv - s
print(f'{name:9s}: effective stress {s:6.0f} psi, Pp = {pp:6.0f} psi, {pp / (0.052 * z):5.2f} ppg')
print(f'difference in pore pressure = {s_load - s_unl:.0f} psi = {(s_load - s_unl) / (0.052 * z):.2f} ppg')
for s in (1000.0, 3000.0, 5000.0, s_max):
vl = v0 + a * s ** b
vu = v0 + a * (s_max * (s / s_max) ** (1 / u)) ** b
print(f'at {s:6.0f} psi: loading {vl:6.0f} ft/s ({1e6 / vl:6.1f} us/ft), unloading {vu:6.0f} ft/s ({1e6 / vu:6.1f} us/ft)')
Output
loading : effective stress 3969 psi, Pp = 7431 psi, 11.91 ppg
unloading: effective stress 2440 psi, Pp = 8960 psi, 14.36 ppg
difference in pore pressure = 1528 psi = 2.45 ppg
at 1000 psi: loading 6778 ft/s ( 147.5 us/ft), unloading 9000 ft/s ( 111.1 us/ft)
at 3000 psi: loading 9054 ft/s ( 110.5 us/ft), unloading 10265 ft/s ( 97.4 us/ft)
at 5000 psi: loading 10946 ft/s ( 91.4 us/ft), unloading 10982 ft/s ( 91.1 us/ft)
at 5061 psi: loading 11000 ft/s ( 90.9 us/ft), unloading 11000 ft/s ( 90.9 us/ft)
Assumptions and limitations
- Loading and unloading follow the Bowers forms, with the same V0, A and B on both curves and one value of U for the whole unloaded interval.
- Velocity reflects effective stress history only. Cementation, chemical diagenesis and temperature also increase velocity at a given stress, and look like unloading in a velocity-only analysis.
- The onset of unloading is a single point, and the maximum stress at that point is the virgin curve value at Vmax.
- Only vertical effective stress is considered: lateral stress changes or tectonic loading are not included.
- The curves are calibrated from measured pressure, since the log alone cannot separate loading from unloading.
QC checks
- The two curves meet at the maximum stress and the unloading curve is above the loading curve at lower stress.
- Pressure calculated with the unloading curve is above the loading result and below the overburden.
- The decision to use unloading is supported by evidence outside the sonic log: a geological mechanism, a density or velocity-density trend, or measured pressures that the loading curve cannot reproduce.
- Pressure results agree with measurements in the unloaded interval and still match hydrostatic above it.
- Results of loading and unloading are both reported when the choice is uncertain.
Going Deeper
The loading and unloading curves differ because some of the compaction is irreversible: grains rearrange, and cement and clay fabric are formed, as the rock is buried, and these are not undone when the stress falls. Velocity therefore stays high. In practice the mechanisms are separated into those that keep the rock on the loading curve (disequilibrium compaction) and those that move it off it (fluid expansion through hydrocarbon generation, clay transformation, and lateral transfer). Many wells have both. Methods that rely on the trend method alone (Eaton, equivalent depth) are accurate for the first and conservative for the second, which is why the choice of method affects the safe mud weight window. Where the mechanism is unclear, calibration to measured pressures is the only arbiter.
References
- Bowers, G.L., 1995. Pore pressure estimation from velocity data: accounting for overpressure mechanisms besides undercompaction. SPE Drilling & Completion, 10(2), 89–95.
- Zhang, J., 2011. Pore pressure prediction from well logs: methods, modifications, and new approaches. Earth-Science Reviews, 108(1–2), 50–63.
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.