Exercise 1.4
Bottomhole Pressure Report
The bottomhole pressure (BHP) in a well is the sum of surface pressure and the hydrostatic pressure of the mud column:
Calculate BHP for three drilling scenarios:
| Scenario | Surface Pressure (psi) | Mud Weight (ppg) | TVD (ft) |
|---|---|---|---|
| Normal drilling | 200 | 10.0 | 8,000 |
| High-pressure zone | 500 | 14.0 | 12,000 |
| Shallow well | 100 | 8.6 | 3,500 |
For each scenario, produce a dict with these exact keys:
name: the scenario labelbhp: total bottomhole pressure in psihydro: the hydrostatic component in psihydro_pct: percentage of BHP coming from hydrostatic pressure alone
Store the three dicts in the order shown above in a list called scenarios.
> Think about it: in which scenario does surface pressure matter most > relative to total BHP, and why? When would a drilling engineer choose > to deliberately apply surface pressure rather than rely on the mud column > alone?
Stuck? Reveal hints one at a time — they progress from nudge to near-solution.
visibilityReveal reference solutionexpand_more
Try solving it yourself first — the hints walk you through it. The solution below is one valid approach; yours may differ and still be correct.
inputs = [
("Normal drilling", 200, 10.0, 8000),
("High-pressure zone", 500, 14.0, 12000),
("Shallow well", 100, 8.6, 3500),
]
def scenario(name, ps, mw, tvd):
hydro = 0.052 * mw * tvd
bhp = ps + hydro
return {
"name": name,
"bhp": bhp,
"hydro": hydro,
"hydro_pct": hydro / bhp * 100,
}
scenarios = [scenario(*row) for row in inputs]
for row in scenarios:
print(f"{row['name']:<20} BHP={row['bhp']:.0f} psi hydro={row['hydro_pct']:.1f}%")
lockCopying code is a Full Access feature.