Skip to main content

Physics-based synthetic well-log benchmark generator

Project description

wellbench

Physics-based synthetic well-log benchmark generator for pore-pressure prediction research. Five regions calibrated against real-world wells (Optuna optimisation against Jensen–Shannon divergence and Wasserstein distance), a deterministic physics generator, an optional CTGAN baseline, and a CLI that reproduces a 15-dataset benchmark.

Install

pip install wellbench
pip install wellbench[ctgan]   # adds the optional CTGAN baseline
pip install wellbench[docs]    # to rebuild the Sphinx docs locally

Quickstart

from wellbench import SyntheticWellLogGenerator, REGION_1

gen = SyntheticWellLogGenerator(REGION_1)
df = gen.generate(seed=42)
print(df.head())

CLI:

wellbench                       # all 15 datasets (5 regions × 3 seeds)
wellbench -r 2 -s 99 200        # region 2, seeds 99 and 200
wellbench -o my_data            # custom output directory

A single, runnable tour of every public entry point lives in examples.py:

python examples.py              # run every example
python examples.py basic ctgan  # pick specific examples

Regions

# Region Location Pore pressure
1 Missa Keswal (Zone 1) Eastern Potwar Basin, Punjab, Pakistan yes
2 PINDORI-1 (Zone 2) Eastern Potwar Basin, Punjab, Pakistan yes
3 JOYAMAIR-4 / MINWAL-2 (Zone 3) Eastern Potwar Basin, Punjab, Pakistan yes
4 IODP Expedition 323, Hole U1343E Bering Sea no
5 Volve oil field North Sea (Norway/UK) no

Physics models

  • Porosity — exponential compaction (Athy's law) + layered sinusoids + noise
  • Sonic (DT) — Wyllie time-average equation
  • Density (RHOB) — bulk density mixing law
  • Resistivity (RT) — Archie's equation
  • Gamma ray (GR) — shale-volume linear mixing
  • Pore pressure (PPP) — Eaton's method on a normal compaction trend

All outputs are clipped to wellbench.PHYSICAL_BOUNDS so consumers can rely on a fixed physical range.

Documentation

Full docs (Sphinx + autodoc) live under docs/. Build them with:

pip install wellbench[docs]
cd docs
make html             # POSIX
.\make.bat html       # Windows
# open _build/html/index.html

License

MIT — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wellbench-0.1.0.tar.gz (2.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wellbench-0.1.0-py3-none-any.whl (2.5 MB view details)

Uploaded Python 3

File details

Details for the file wellbench-0.1.0.tar.gz.

File metadata

  • Download URL: wellbench-0.1.0.tar.gz
  • Upload date:
  • Size: 2.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for wellbench-0.1.0.tar.gz
Algorithm Hash digest
SHA256 0f859131fade433dd7d40faa49ba3c35085dfe7e12b9ec80aa3aad486563bd4c
MD5 ea29c4fe2f019e20067920637630f3c1
BLAKE2b-256 cb32d825fd9f93801cc87a50994ec74a765bf08dfcf23b81fc88a1ff59a04479

See more details on using hashes here.

File details

Details for the file wellbench-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: wellbench-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 2.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for wellbench-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a4813ef3d5cc962d6462a5400d1fd2ead4ce6869c34f25ce590f28cb1285c367
MD5 34b8cb971d3386fb896dc6f2a52a6e14
BLAKE2b-256 0906a2227d52da88c123f98d8622b5db5829fd157ca108883a25237c1b6265cf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page