Skip to content

geostat process using python, vtk, jupyter and your choice of interpolation engine

License

Notifications You must be signed in to change notification settings

pemn/vtk_geostat

Repository files navigation

📌 Description

full open source geostatistics workflow for generating a geological block model.
this script integrates multiple generic tools and modules in a full process.
the result is a complete block model in the vtk file format, that can be easily converted to other formats like csv, bmf, dm, etc.
the target audience is geologists and other mining industry professionals or students.
this is a proof of concept not intended for production use. most steps are placeholders which should be replaced with real tools. check notes. the idea is to provide a common backbone for custom processes tailored for each situation.

📸 Screenshot

screenshot1

🧩 Implementation

This implementations uses a jupyter notebook. Check my other project, bm_geostat_process, for a desktop based implementation. This geostatistics estimation process consists of the following steps:

  1. Data and parameter input
  2. Sample database preprocess
  3. Grid creation
  4. Flag litho solids
  5. Multivariate grade estimation
  6. Estimation Postprocess
  7. QA checks
  8. Reserve Report

📦 Installation

In the case a python distribution is not already available, the recomended distribution is Winpython 3.8+.
Download the installer from the link above.
Extract into this windows special folder:
%APPDATA%
The correct path to the python executable should be similar to this example:
C:\Users\user\AppData\Roaming\WPy64-31131\python-3.12.3.amd64\python.exe
Download this entire repository as zip and extract to the notebooks subfolder in the Winpython installations. Ex.:
C:\Users\user\AppData\Roaming\WPy64-31230\notebooks

🎬 Run

Start jupyter Notebook or jupyter Lab. If you dont already have a shortcut, the auxiliary script jupyter_localhost.bat is provided for easily starting jupyter on Microsoft Windows systems. Follow the instructions provided on the notebook.

📓 Notes

This proof of concept uses linear regression as the interpolation engine. Real products will require Pykrig or the isatis python module (isatis.py). The reserves calculation step is also a simple pivot table placeholder. For a real reserves calculation, use a commercial software or check my other project, vtk_reserves for a open source tool.

📚 Examples

db checks

screenshot2

grade checks

screenshot3

grade voxel view

screenshot4

reserves calculation

screenshot5

🧰 Tools

  • jupyter_localhost.bat: (optional) starts jupyter
  • wf01_main.ipynb: notebook with the complete workflow. will call the other tools which should be on the same folder.
  • db_desurvey_straight.py: helper script for sample compositing
  • db_linear_model.py: default linear regressor using scikit

🧊 Test Data

vox_samples_rand.xlsx
vox_low.vtk
vox_medium.vtk
vox_high.vtk

🙋 Support

Any question or problem contact:

  • paulo.ernesto

💎 License

Apache 2.0
Copyright vale_logo_only Vale 2024

About

geostat process using python, vtk, jupyter and your choice of interpolation engine

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published