Petres: lightweight Python library for reservoir grid modeling and visualization
Project description
Lightweight Python Library for Reservoir Grid Modeling and Simulation
Introduction
Petres is a lightweight, open-source Python library for reservoir grid modeling, providing a fully programmatic approach to constructing Corner-Point grid models.
For complete documentation, see the Petres documentation.
Stability Notice
Petres is currently in early development. The API is not yet stable and may change without notice.
Why Petres?
-
Open Access: Free alternative for engineers and students without access to expensive commercial softwares.
-
Scriptable Modeling: Avoid UI complexity and work with code-driven workflows.
-
Fully Customizable: Integrate your own code alongside built-in methods.
-
AI Integration: Use the Python ecosystem to apply AI and Machine Learning techniques.
Features
-
Grid Generation: Construct Corner-Point, Rectilinear, and Regular grids.
Apply boundary polygons to deactivate cells outside the target region. -
Structural Modeling: Generate horizon and zone surfaces from well tops to support grid construction.
-
Property Modeling: Assign petrophysical properties to grid cells using stochastic or deterministic methods, derived attributes, or interpolation from well data.
-
Import & Export Grids: Handle Eclipse grids (SLB reservoir simulator) using the
.GRDECLfile format. Visualize and export modeled Corner-Point grids. -
Visualization: Interactive 2D and 3D rendering of Corner-Point grids, structural zones, horizons, and spatial property distributions.
Getting Started
To get started with Petres, refer to the Installation Guide and the Quickstart Tutorial.
Technical Architecture
| Component | Implementation |
|---|---|
| Grid Operations | High-performance, vectorized array computations using NumPy |
| 2D Plotting | Visualization via Matplotlib |
| 3D Visualization | Interactive rendering and mesh handling via PyVista |
| Kriging Interpolation | Ordinary and Universal Kriging via PyKrige |
| RBF Interpolation | Multi-dimensional Radial Basis Function interpolation via SciPy |
| IDW Interpolation | In-house implementation of Inverse Distance Weighting |
Contact
For questions or collaboration, please contact jamalbaylit@gmail.com or connect via LinkedIn.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file petres-0.1.0.tar.gz.
File metadata
- Download URL: petres-0.1.0.tar.gz
- Upload date:
- Size: 5.9 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
10fec58afc2716af2159fae6feea461172c3de1750c8baa4b103faff81686bad
|
|
| MD5 |
6c5c0a3e7eea240db503d9885715acc5
|
|
| BLAKE2b-256 |
5c5632fa704a7c3668ed2ae8b363caefc8a641a145fc9edd423df424b0b3d208
|
Provenance
The following attestation bundles were made for petres-0.1.0.tar.gz:
Publisher:
pypi.yml on jamalbaylit/petres
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
petres-0.1.0.tar.gz -
Subject digest:
10fec58afc2716af2159fae6feea461172c3de1750c8baa4b103faff81686bad - Sigstore transparency entry: 1280953053
- Sigstore integration time:
-
Permalink:
jamalbaylit/petres@d346e349a42df360a25f4017399d6a3a8161903f -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/jamalbaylit
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@d346e349a42df360a25f4017399d6a3a8161903f -
Trigger Event:
push
-
Statement type:
File details
Details for the file petres-0.1.0-py3-none-any.whl.
File metadata
- Download URL: petres-0.1.0-py3-none-any.whl
- Upload date:
- Size: 138.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
81429194d18b90167638a7221f2cb78a4ac7bfbe591d5b3a8cfc400e3e1a1f9f
|
|
| MD5 |
78170319914ac2d5499d0e34d0bc2ec5
|
|
| BLAKE2b-256 |
5af08f48fdf1a40637f8484d28b2d34761f7fc91e6779d72bb6eb7ca14e79890
|
Provenance
The following attestation bundles were made for petres-0.1.0-py3-none-any.whl:
Publisher:
pypi.yml on jamalbaylit/petres
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
petres-0.1.0-py3-none-any.whl -
Subject digest:
81429194d18b90167638a7221f2cb78a4ac7bfbe591d5b3a8cfc400e3e1a1f9f - Sigstore transparency entry: 1280953055
- Sigstore integration time:
-
Permalink:
jamalbaylit/petres@d346e349a42df360a25f4017399d6a3a8161903f -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/jamalbaylit
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@d346e349a42df360a25f4017399d6a3a8161903f -
Trigger Event:
push
-
Statement type: