GemPy structural geology uncertainty modeller
A GemPy 2026.0.3 study of a synthetic folded and faulted four-unit basin, testing contact, orientation, fault-position, and data-density uncertainty across 75 realisations.

Software compatibility
The structural model, uncertainty scripts, and reference results use the pinned GemPy 2026.0.3 environment. Leapfrog Geo, Micromine, Surpac, and Datamine project files are not included.
Project definition
Problem statement
Sparse contacts and orientations can support multiple plausible subsurface geometries. Contact position, pole-vector uncertainty, fault position, and reduced data density can move interpreted boundaries and change estimated unit volumes.
Project objectives
- Build a transparent four-unit folded and faulted structural model.
- Check the baseline against an independent analytical synthetic classifier.
- Run contact, orientation, and combined uncertainty scenarios with fixed seeds.
- Calculate cell-level probabilities, confidence, modal classifications, entropy, and unit volumes.
- Verify observation counts, determinism, geological recovery, probability closure, and result completeness.
Project structure
Project components
Synthetic geology
Defines the folded contact equations, dipping fault plane, stratigraphic observations, and independent analytical classifier.
GemPy model
Creates the conformable structural series, offset-all fault group, regular grid, and computed lithological solution.
Uncertainty runner
Builds 25 contact, 25 orientation, and 25 combined realisations with recorded seeds and observation counts.
Probability analyser
Calculates empirical unit probabilities, modal classifications, confidence, Shannon entropy, and unit volumes.
Verification
Runs five automated tests and checks 75 realisations, 151 raw files, baseline fidelity, credentials, documents, and typography.
Methodology
Project workflow
- 01Generate observations
The scripted geology creates 45 contact points, nine stratigraphic poles, nine fault points, and one fault pole.
- 02Build baseline
GemPy computes 19,968 cells with four geological units and distinct fault blocks.
- 03Compare with reference
Engine identifiers are mapped to the analytical convention and baseline cell agreement is measured.
- 04Run uncertainty
Seventy-five seeded models perturb contact elevation, orientation, fault position, and data density.
- 05Analyse
Python produces agreement summaries, cell probabilities, confidence, entropy, sections, slices, and volume plots.
Demonstration scenario
A synthetic four-unit basin with folded contacts and one dipping fault is computed on 19,968 cells. Seventy-five uncertainty realisations show that most of the model is stable while ambiguity concentrates around stratigraphic boundaries and the faulted region.
Engineering
Tools and method
- Tools
- The project uses GemPy 2026.0.3, Python 3.11, NumPy, Pandas, Matplotlib for subject analysis, simulation, and results.
- Environment
- Pinned GemPy 2026.0.3 and Python 3.11 packages in a digest-pinned Docker image.
- Structural model
- Three conformable contacts define four ordered units, while one dipping fault offsets the stratigraphic series.
- Uncertainty
- Contact sigma of 55 m, pole-vector sigma of 0.045, fault sigma of 60 m, and 30 percent contact removal in the combined case.
- Verification
- Analytical synthetic truth, deterministic generation, compact real GemPy computation, probability closure, and repository validation.
Testing
Evaluation
Evaluation measures
- 98.7129 percent baseline agreement with the analytical synthetic reference
- Mean baseline agreement of 0.9560 for contact perturbation
- Mean baseline agreement of 0.9921 for orientation perturbation
- Mean baseline agreement of 0.9530 for the combined scenario
- 0.9974 modal-model agreement with the baseline and 0.9673 mean cell confidence
- 5.4237 percent of cells at or above the 0.75-bit entropy review threshold
Project boundaries
- Only the pinned GemPy 2026.0.3 model and generated results are delivered.
- All geological observations and the analytical reference are synthetic educational assumptions.
- The project excludes real topography, boreholes, geophysics, resources, groundwater, hazards, and alternative conceptual histories.
- Real geological decisions require qualified geologists, site evidence, competing interpretations, current standards, and independent review.
Included
- 01Synthetic folded and faulted four-unit geological setting
- 0245 stratigraphic contacts, nine orientations, nine fault points, and one fault orientation
- 03Baseline model plus 75 contact, orientation, and combined uncertainty realisations
- 04Cell-level unit probabilities, modal class, confidence, Shannon entropy, and unit volumes
- 05151 raw NPZ and JSON evidence files with PNG and SVG figure sets
- 06Complete project files, models, calculations, and analysis material in a private GitHub repository
- 0780-page project documentation in PDF and editable Word formats
- 08Setup and usage guide
Project record
No information is collected on this page.
- Permanent project ID
- GP-GE-09TN3PB
- Catalogued
- 22 Aug 2026
- Completed
- 23 Aug 2026
- Verified
- 23 Aug 2026
- Demonstration
- Included in repository
Handover
After purchase
- 01Payment is confirmed
The project is marked unavailable and cannot be purchased again.
- 02Repository access is granted
The buyer's submitted GitHub account receives access to the private repository.
- 03The purchase record is delivered
The certification sheet is prepared from the reviewed buyer details and sent privately by email.