Skip to content

Add plant-data reconciliation and Bayesian digital twin notebook - #150

Merged
EvenSol merged 1 commit into
masterfrom
codex/data-reconciliation-bayesian-digital-twin
Sep 1, 2026
Merged

Add plant-data reconciliation and Bayesian digital twin notebook#150
EvenSol merged 1 commit into
masterfrom
codex/data-reconciliation-bayesian-digital-twin

Conversation

@EvenSol

@EvenSol EvenSol commented Sep 1, 2026

Copy link
Copy Markdown
Owner

Summary

Adds a long, executed NeqSim Colab tutorial on plant-data reconciliation and Bayesian digital-twin calibration.

The notebook:

  • qualifies historian windows with NeqSim's Cao-Rhinehart steady-state detector;
  • reconciles five redundant mass-flow meters with native uncertainty-weighted least squares and an independent NumPy check;
  • detects, ranks, and isolates a synthetic gross sensor error;
  • calibrates compressor polytropic efficiency with NeqSim's native batch estimator;
  • constructs an independently calculated Bayesian posterior from NeqSim response surfaces;
  • validates against held-out observations and off-grid NeqSim calls;
  • propagates posterior uncertainty to compressor-power decisions; and
  • emits an auditable JSON handoff with runtime provenance, limitations, and 27 named validation checks.

This fills the explicit follow-up recorded for the retired syntheticdatageneration.ipynb notebook and complements the existing online-simulation, model-versus-measurement, IoT, and machine-learning examples.

Reproducibility and validation

  • Executed all 27 code cells top-to-bottom in a clean Python 3.12 environment.
  • Built and loaded NeqSim Java master at fdf6b227b4240589ebbfb900527b37e667f3efc8.
  • Retained sequential execution counts, tables, stdout, JSON, and nine inline PNG figures.
  • Passed 27/27 named engineering checks with no execution errors or stderr.
  • Passed scripts/check_notebook.py --require-main-source.
  • Passed the full 339-notebook repository scan with zero errors.
  • Passed all six repository checker unit tests.
  • Rendered to HTML with MathJax and visually inspected every figure at original resolution.
  • Regeneration plus a second clean execution reproduced the exact same notebook blob.

The new path-scoped workflow repeats source build, generation, execution, integrity checks, HTML rendering, and artifact upload.

Documentation impact

Adds the notebook to the main Colab catalog and the README featured list, records it in the sharded maintenance ledger, and increments the active-notebook count.

Upstream finding

While reviewing the current NeqSim APIs, the core data-reconciliation example was found to use obsolete method signatures. The actionable repair is tracked in equinor/neqsim#3393. This notebook links that issue and uses the verified current APIs.

EvenSol commented Sep 1, 2026

Copy link
Copy Markdown
Owner Author

CI triage update:

  • ✅ Data reconciliation and Bayesian twin validation
  • ✅ Notebook integrity
  • ✅ Validate seismic to RMS notebook
  • ✅ Northern Lights open-data notebook validation
  • ❌ Existing CO2 low-temperature notebook validation

The CO₂ failure occurs in an unchanged notebook while testing current NeqSim master: its EOS-CG 70 bara / 25 °C nominal-state phase-count assertion no longer passes. It is independent of this PR's seven changed files and is tracked with exact provenance and acceptance criteria in #151. No unrelated workaround has been added to this focused draft PR.

@EvenSol
EvenSol marked this pull request as ready for review September 1, 2026 17:10
@EvenSol
EvenSol merged commit 098b94e into master Sep 1, 2026
4 of 5 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