welltest-pta
Pressure Transient Analysis (PTA) and Drill-Stem Test (DST) toolkit for Python.
A complete, batteries-included pipeline for petroleum well-test interpretation: robust ASCII parsing \(\rightarrow\) automatic event detection \(\rightarrow\) per-event analytics (Bourdet derivative, Horner, MDH) \(\rightarrow\) flow-regime identification \(\rightarrow\) reservoir parameters (\(k\), \(kh\), skin, wellbore storage) \(\rightarrow\) multi-event deconvolution \(\rightarrow\) publication-quality plots.
At a glance
from welltest_pta import WellTest, deconvolve
# 1) Load + auto-detect events (with optional CV scoring)
wt = WellTest.from_file("DST.txt", cross_validate=True)
wt.print_summary()
# 2) Per-event PTA analysis
bu = wt.events.longest_buildup
params = bu.reservoir_params(q=850, mu=0.45, B=1.18,
h=18, phi=0.12, ct=1.2e-5, rw=0.108)
print(f"k = {params['k']:.2f} mD, skin = {params['skin']:+.2f}")
# 3) Multi-event deconvolution
recon = deconvolve(wt.events, default_q=850)
recon.plot()
# 4) Bulk export
wt.export_all("./output", per_event=True)
User guide
Getting started
Reference
Citation
If you use welltest-pta in research, please cite:
@software{harkat2026welltestpta,
author = {Harkat, Ismail},
title = {welltest-pta: Pressure Transient Analysis Toolkit for Python},
year = {2026},
url = {https://github.com/geoharkat/welltest-pta},
version = {0.1.0},
}