Skip to content

Add executed RMS-to-OPM Flow, ERT, and NeqSim notebook - #147

Merged
EvenSol merged 19 commits into
masterfrom
codex/rms-agent-opm-ert-notebook
Aug 31, 2026
Merged

Add executed RMS-to-OPM Flow, ERT, and NeqSim notebook#147
EvenSol merged 19 commits into
masterfrom
codex/rms-agent-opm-ert-notebook

Conversation

@EvenSol

@EvenSol EvenSol commented Aug 31, 2026

Copy link
Copy Markdown
Owner

Summary

  • Adds a long, fully executed Colab notebook that starts from public Reek RMS-origin ROFF exports, inspects the geological and simulation grids, and documents every pinned input with byte size and SHA-256.
  • Demonstrates the 80×128×56 to 40×64×14 blocking relationship, porosity/permeability/facies/zone QC, property spreading, and why simple pore-volume weighting or majority voting does not exactly reproduce the archived RMS simulation-property workflow.
  • Builds and runs an OPM Flow black-oil model, reads summary and restart results, and visualizes pressure, saturation, production, and a 3-D water front.
  • Integrates ERT 23.0.1 with a four-realization ensemble_experiment; every realization launches a real OPM Flow simulation and the notebook analyzes ensemble pressure, injection, and water-front responses.
  • Uses NeqSim current master for PVT and a selected-realization surface-process calculation.
  • Includes a governed request/manifest/result contract for a future agent that delegates licensed RMS automation to an external RMS worker. RMS itself is not bundled or run in Colab.
  • Adds a deterministic notebook generator, a permanent GitHub Actions validation workflow, catalog entry, and maintenance-ledger evidence.

Data and licensing boundary

The geological data are public Reek exports from equinor/xtgeo-testdata, pinned to commit cad17f24e22c19c6cefe6f647185395cc0a11add (LGPL-3.0). The source readme identifies the originating RMS project. The notebook uses exported ROFF artifacts only; a production agent would call a separately licensed and governed RMS worker.

Executed results

  • Python 3.12.14; Java 17.0.20.1; XTGeo 4.25.1; OPM Flow 2026.04; ERT 23.0.1.
  • NeqSim Python bridge 3.18.0 with current-master commit 1f7a01b06307d9d56451e43bb8d6023d28d14007; the notebook records the built JAR digest and verifies the loaded-class origin.
  • Geological grid: 572,992 active cells; simulation grid: 35,838 active cells.
  • NeqSim bubble point: 193.240400 bara.
  • Base Flow run: final field pressure 223.618027 bara; cumulative oil 7.305 million Sm³; 25 restart states.
  • ERT ensemble: final field pressure 219.467545–230.828323 bara; produced-water rate 0.008757–0.010718 Sm³/day.
  • Selected-realization NeqSim process: compressor power 2.680346 MW; aftercooler duty −7.344375 MW; mass residual 5.42×10⁻¹¹ kg/s.

Validation

  • Notebook contains 42 executed code cells, 20 explanatory Markdown cells, 13 embedded figures, no error outputs, no stderr, and no unexecuted code cells.
  • All 26/26 engineering assertions pass.
  • Focused repository notebook checker reports 0 errors and 0 warnings.
  • Full remote execution succeeded in GitHub Actions: https://github.com/EvenSol/NeqSim-Colab/actions/runs/33418137078
  • A path-filtered PR workflow regenerates, executes, checks, renders, and uploads the notebook artifact.

Review note

This is a draft so maintainers can review the teaching assumptions—especially the property-upscaling comparison—and the proposed production RMS-worker governance contract before merge.

@EvenSol
EvenSol marked this pull request as ready for review August 31, 2026 21:37
@EvenSol
EvenSol merged commit 7848628 into master Aug 31, 2026
2 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant