WIT Press

A Physical Basis For Hubbert’s Decline From The Midpoint Empirical Model Of Oil Production


Free (open access)

Paper DOI









1279 kb


R. J. Wiener & D. M. Abrams


Just over fifty years ago, Hubbert correctly predicted that US oil production in the lower-48 states would soon peak, despite substantially rising production at the time. Hubbert based his prediction on the empirical observation that the production rate at oil reservoirs typically follows a bell-shaped curve that peaks near the midpoint of production. We present a highly simplified physical model of oil production that gives insight into Hubbert’s success. This toy model relates the total area of active wells to future production and allows for several interesting analytical conclusions. We show analytically, contrary to intuition but consistent with historical data, the number of active wells at any given field must peak after the production rate peaks. Since oil production is pressuredriven, the toy model treats an oil reservoir as a sealed container filled with liquid oil and highly pressurized gas. A pipe extends into the container with a cross-sectional area, which represents the total area of wells and changes continuously over time. As gas expands, it forces liquid out of the container through the pipe but also drops in pressure, eventually limiting production. We assume the flow obeys Bernoulli’s principle and the gas expands isothermally, which leads to a nonlinear ordinary differential equation for the velocity of fluid exiting the container. For most reasonable choices of the area function, the differential equation requires a numerical solution. However, it is possible to specify a plausible area function for which the model yields an analytical expression for the production rate that corresponds to the bell-shaped curve used by Hubbert to predict the peak in US oil production. Keywords: Hubbert’s peak, oil production, logistic growth, pressure-driven flow.


Hubbert’s peak, oil production, logistic growth, pressure-drivenflow.