Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
167 changes: 84 additions & 83 deletions notebooks/maintenance_ledger/comparesimulations2_20260809.json
Original file line number Diff line number Diff line change
@@ -1,29 +1,27 @@
{
"schema_version": 1,
"updated_at": "2026-08-09T14:58:13Z",
"updated_at": "2026-09-11T00:16:49Z",
"notebooks": [
{
"path": "notebooks/process/comparesimulations2.ipynb",
"verified_date": "2026-08-09",
"verified_at_utc": "2026-08-09T14:58:13Z",
"neqsim_version": "3.17.0",
"python_version": "3.12.13",
"java_version": "OpenJDK 17.0.19",
"verified_date": "2026-09-11",
"verified_at_utc": "2026-09-11T00:16:49Z",
"neqsim_version": "3.20.0 Python package with Java commit 653db71353dc3a5a0fad92b945978fd0bd94e74a",
"python_version": "3.12.14",
"java_version": "OpenJDK 17.0.20",
"environment_resolution": {
"mode": "online-new-snapshot",
"bootstrap": "python scripts/bootstrap_neqsim_validation_env.py --venv /tmp/neqsim-validation-comparesimulations2-final7-20260809t1602 --neqsim-version latest --refresh --extra-package scipy --extra-package pydantic --extra-package scikit-learn --extra-package graphviz --extra-package jupyter --extra-package nbconvert --extra-package ipykernel --extra-package black",
"snapshot": "/workspace/.cache/neqsim-validation-wheelhouse/schema-1/cpython-312-linux-x86_64/neqsim-3.17.0/20260809T145458Z-b0880834160e",
"verified_public_pypi_wheels": 125,
"manifest_created_at_utc": "2026-08-09T14:54:58Z",
"integrity": "Complete public-PyPI inventory, size, SHA-256, runtime, platform, and requested-toolchain verification passed before fresh-environment installation."
"mode": "exact-source-commit runtime with packaged Python API",
"runtime_jar_sha256": "8b2eeb94e972e0c30467ad9c4f99f299b5fe9eec57b55f0e4ff4dd5896ec6704",
"bootstrap": "The notebook accepts NEQSIM_EXACT_JAR for CI/developer validation; otherwise it fetches and builds public commit 653db71353dc3a5a0fad92b945978fd0bd94e74a before JVM startup.",
"integrity": "The retained provenance table records Python, Java, runtime JAR, SHA-256, and exact Java commit. No pre-release or stale packaged renderer was used."
},
"execution_status": "passed",
"execution_method": "All 30 code cells executed sequentially from an empty in-process IPython state with execution counts 1 through 30, zero exceptions, zero error outputs, and zero stored stderr. The final clean run completed in 103.2 seconds and retained every table and inline figure.",
"code_cells": 30,
"substantive_code_cells": 30,
"markdown_cells": 26,
"execution_method": "All 34 code cells executed sequentially from an empty in-process IPython state with execution counts 1 through 34, zero exceptions, zero error outputs, and zero stored stderr. The exact merged-core clean run completed in 217.8 seconds and retained every table, equation, calculated figure, and eight-sheet PFD/P&ID visual set.",
"code_cells": 34,
"substantive_code_cells": 34,
"markdown_cells": 27,
"publication": {
"branch": "automation/repair-comparesimulations2-20260809",
"branch": "automation/comparesimulations2-pfd-pid-20260909",
"mode": "atomic connector-backed draft pull request",
"commit": "the commit containing this ledger entry",
"files": [
Expand All @@ -33,99 +31,102 @@
]
},
"preservation": {
"pre_existing_cells": 48,
"preserved_cells": 48,
"pre_existing_cells": 56,
"preserved_cells": 56,
"pre_existing_substantive_examples": 16,
"preserved_substantive_examples": 16,
"pre_existing_figures": 3,
"preserved_figures": 3,
"repairs": "Preserved every original cell and all fluid, Eclipse import, standard-condition, phase-envelope, connected-process, report, persistence, product, duty, rotating-equipment, 100-case, optimization, surrogate, direct-thread, and pool examples. Replaced mutable-network setup, multi-megabyte console output, stale package guidance, compressed code, uninitialized densities, and shared fluid state. Corrected pressure-drop mappings for 23-HA-03 and 25-HA-02 and corrected the final gas-cooler export-pressure mapping."
"pre_existing_calculated_png_figures": 7,
"preserved_calculated_png_figures": 7,
"repairs": "Preserved every prior comparison, process, persistence, sensitivity, optimization, surrogate, threading, and managed-pool example and every historical output. Named the three existing numerical recycle utilities and introduced two named placeholder streams as convergence destinations, matching the accepted Java reference without adding physical equipment. Replaced the misleading serial teaching overview with distinct oil-export, fuel-gas, and gas-export branches plus two explicit recycle paths; all eight displayed connections are asserted against and mapped to the freshly exported runnable-model DOT graph. Retained the 0.01 percent mass-closure gate and deterministic post-thread convergence qualification."
},
"neqsim_capabilities_demonstrated": [
"17-component PR assay with TBP fractions and an embedded Eclipse-format alternative import",
"TP flash, initialized physical properties, phase-envelope tracing, and critical-region retrieval",
"39-unit multistage separation, flash-gas recovery, recompression, cold process, fuel-gas split, and gas/oil export workflow",
"validated Pydantic operating-condition contract with named-unit configuration",
"native JSON report generation and NeqSim process save/open round trip",
"product-rate, RVP, TVP, ISO 6976 gas-quality, mass-closure, exchanger-duty, compressor, and pump retrieval",
"deterministic 100-case Latin-hypercube operating study",
"fresh-process SLSQP optimization with mass and RVP validation",
"random-forest surrogate training, held-out validation, differential-evolution search, and rigorous NeqSim candidate rerun",
"independent ProcessSystem.runAsThread execution and managed NeqSimThreadPool futures"
"TP flash, phase-envelope tracing, standard-condition properties, and critical-region retrieval",
"multistage separation, flash-gas recovery, recompression, cold process, fuel-gas split, and gas/oil export",
"deterministic 100-case Latin-hypercube study plus direct and surrogate optimization",
"independent Java-thread and managed-pool execution with explicit convergence qualification",
"fresh PFD and distinct review-required P&ID from one solved canonical process",
"runnable-model block-flow overview with distinct export branches and an eight-row source-to-target evidence map",
"four A1 SVG sheets and one A1 PDF drawing set per profile",
"native DEXPI 2.0 Process and Plant/P&ID outputs kept distinct from the Proteus 4.1 compatibility companion",
"source-linked P&ID registers for nozzles, piping, valves, reducers, instruments, signals, and declared isolation/drain/vent/relief interfaces",
"independent byte-identical regeneration of all 29 delivered files"
],
"practical_application": "Builds a reusable offshore oil-and-gas process from a governed fluid assay; configures pressures, temperatures, pressure drops, and export conditions; runs and audits a base case; compares published HYSYS responses; maps 100 operating scenarios; validates direct and surrogate optimization candidates; and demonstrates safe parallel execution with independently cloned thermodynamic systems.",
"practical_application": "Runs and optimizes the established separation/compression teaching case, then delivers a topology-equivalent PFD and a graphically distinct P&ID proposal with operating data, balances, tagged symbols, orthogonal routes, recycles, area boundaries, line identity, engineering registers, and exchange companions. The outputs remain review-required teaching artifacts, not a completed safety or construction design.",
"engineering_validation": {
"assertions_passed": 43,
"assertions_passed": 59,
"assertions_failed": 0,
"checks": [
"all 48 original cells, 16 substantive examples, and three original figures preserved",
"all 30 code cells executed in order with no exceptions or stderr",
"standard-condition gas and oil densities finite and physically plausible",
"all required process units present and native DOT graph contains key nodes",
"overall base-case and 100-case mass residuals below 0.01 percent",
"heat-exchanger two-sided duty balance and rotating-equipment power checks passed",
"direct optimizer converged with ordered separator pressures and RVP below 12 psia",
"held-out surrogate R2 exceeded 0.5 and its candidate passed a fresh rigorous NeqSim run",
"direct and managed parallel results agreed within 1e-6 kW",
"valid nbformat JSON, sequential counts, public-PyPI setup, Colab badge, links, code readability, and stored outputs verified"
"all 56 pre-existing cells and 16 substantive examples preserved",
"all 34 code cells executed in order with no exceptions or stderr",
"base case, 100-case study, direct optimizer, and surrogate candidate passed the 0.01 percent mass-closure gate",
"the corrected teaching overview has separate oil, fuel-gas, and sales-gas branches, two recycle paths, and eight aggregate connections asserted against the current DOT graph",
"20 direct-thread and 20 managed-pool cases were explicitly qualified after timing and agreed within 1e-6 kW",
"PFD and P&ID share source graph fingerprint 47a2e6d7a3331f1ea2717b018e28977d943450bbe8130409d2401d223358ccc6",
"each profile contains four A1 SVG sheets and a four-page A1 PDF",
"completed-scene diagnostics report 14 PFD and 413 P&ID warnings, zero errors, and fail-visible review-required status",
"all 29 primary delivery files match an independently reconstructed and solved regeneration byte for byte",
"diagram byte stability is qualified separately from the stochastic sensitivity of the downstream surrogate candidate; repeated exact-runtime notebook runs kept every scientific gate green but produced different feasible surrogate candidates",
"24-VB-01 is absent from the runnable process and both deliveries",
"all eight fresh sheets inspected at full-sheet and 200 dpi detail scales"
],
"key_results": {
"base_total_power_kw": 10431.428486,
"base_oil_export_m3_day": 19130.517773,
"base_gas_export_msm3_day": 2.900716,
"base_mass_residual_percent": 0.000408,
"base_oil_rvp_psia": 9.5792,
"standard_gas_density_kg_m3": 0.9675,
"standard_oil_density_kg_m3": 708.9682,
"base_total_power_kw": 10431.534102,
"base_oil_export_m3_day": 19130.542443,
"base_gas_export_msm3_day": 2.900748,
"base_mass_residual_percent": 0.000076,
"base_oil_rvp_psia": 9.5793,
"scenario_count": 100,
"maximum_scenario_mass_residual_percent": 0.001336,
"direct_optimized_power_kw": 9909.8522,
"direct_optimized_stage_1_pressure_barg": 35.0,
"direct_optimized_stage_2_pressure_barg": 9.157728,
"maximum_scenario_mass_residual_percent": 0.003330,
"direct_optimized_power_kw": 9909.9486,
"surrogate_held_out_r2": 0.796,
"surrogate_candidate_power_kw": 9333.9807,
"surrogate_candidate_rvp_psia": 10.5563
"surrogate_candidate_power_kw": 9430.9342,
"surrogate_candidate_rvp_psia": 10.5094,
"notebook_sha256": "15e1429f379f7c2b9ea29525a19292d6a0cc9fb38bf40b084dddbce7d51f2b21",
"pfd_pdf_sha256": "a8ce98adc76ebd0be59a3b3fa59d7e7df5dc3dd1949b6dee7baf5a7372d7eaee",
"pid_pdf_sha256": "ff5f7a29a33c0ea734a7950d4d6701143739fa3e2aee6c53468a9bbe32b4bc6a"
}
},
"diagram_acceptance": {
"status": "generation and deterministic regeneration passed; whole-sheet visual acceptance blocked",
"paper_size": "A1 landscape",
"profiles": ["PFD", "PID"],
"svg_sheets_per_profile": 4,
"pdf_pages_per_profile": 4,
"renderer_warnings": 427,
"renderer_warnings_by_profile": {
"PFD": 14,
"PID": 413
},
"renderer_errors": 0,
"stable_regeneration": true,
"visual_inspection": "All eight fresh pages were rendered and inspected at full-sheet and 200 dpi detail scales. The corrected notebook teaching overview was also inspected at native scale and no longer serializes gas export into oil export. The controlled sheet index is intentionally non-connectivity content. The process sheets retain significant whitespace and off-page/text-route collision findings; P&ID sheets retain dense instrument, signal, valve, and physical-attachment findings. These 427 completed-scene warnings block whole-sheet visual acceptance.",
"project_metadata_gaps": "Line classes, piping specifications, design pressure and temperature, materials, valve failure positions, instrument ranges, alarm/trip set points, hazardous-area data, relief sizing and disposal, drain/vent destinations, revision approvals, and accountable discipline sign-off remain missing and explicitly disclosed.",
"claims_boundary": "Standards-aligned teaching proposal only. No ISO 10628 or ANSI/ISA-5.1 conformance, certification, safety credit, construction fitness, or engineering approval is claimed. Native DEXPI 2.0 and Proteus 4.1 compatibility claims are distinct; external named-CAE round-trip qualification remains open."
},
"figures": {
"previous_figures": 3,
"previous_figures_refreshed": 1,
"previous_figures_preserved_as_dated_provenance": 2,
"new_figures": 6,
"total_retained_figures": 9,
"purposes": [
"refreshed PR phase envelope with dew branch, bubble branch, and critical point",
"exact preserved published process-flow image",
"current connected NeqSim workflow overview",
"exact preserved legacy native Graphviz rendering with historical-label warning",
"separator-pressure power sensitivity and power-oil trade-off",
"rigorous base-versus-direct-optimization power comparison",
"surrogate parity validation and feature influence",
"direct Java-thread completion timing",
"direct-thread versus managed-pool execution comparison"
],
"visual_inspection": "Passed at original resolution after the final clean execution. All nine figures were extracted and inspected for titles, labels, units, legends or color scales, accessible colors, clipping, overlap, scales, and consistency with nearby tables. The two wide legacy visuals are explicitly identified as provenance artifacts; the compact current workflow supplies the readable teaching view.",
"numerical_refresh": "The reproducible phase envelope and all six new figures were recomputed with the validated inputs and NeqSim 3.17.0. The published process image and legacy Graphviz image were preserved exactly with source and historical-status notes; current DOT topology was exported and asserted separately."
"preserved_calculated_png_figures": 7,
"new_inline_svg_sheets": 8,
"fresh_profile_pdfs": 2,
"visual_inspection": "The exact merged-core clean execution retained seven calculated PNG figures and all eight fresh SVG sheets. Both four-page PDFs were rendered at target A1 size and inspected at full-sheet and 200 dpi detail scales; the inspection confirmed the fail-visible collision and P&ID-density findings recorded by completed-scene diagnostics."
},
"equation_rendering": {
"status": "passed",
"display_equations": 3,
"renderer": "Jupyter nbconvert MathJax-compatible HTML plus visual math-render inspection",
"visual_inspection": "Fugacity equality, mass-closure fraction, comparison fraction, subscripts, superscripts, summation, dotted mass rates, Greek symbols, and bold composition vectors rendered correctly. All delimiters are balanced and commands use single backslashes."
"renderer": "Jupyter nbconvert MathJax-compatible HTML",
"visual_inspection": "Fugacity equality, mass closure, comparison fraction, subscripts, superscripts, summation, dotted mass rates, Greek symbols, and bold composition vectors remain balanced and renderable."
},
"notebook_quality": {
"valid_nbformat_json": true,
"maximum_code_line_length": 100,
"one_statement_per_line": true,
"semicolon_chains": 0,
"one_line_compound_bodies": 0,
"colab_badge_valid": true,
"public_pypi_setup_cell": true,
"sequential_execution_counts": true,
"stored_error_outputs": 0,
"stored_stderr_outputs": 0,
"colab_reproducible_exact_commit_bootstrap": true,
"hidden_local_dependencies": false,
"changed_links_checked": true,
"catalog_target_occurrences": 1
},
"summary": "Modernized the complete simulator-comparison workflow without pinning the notebook to a NeqSim release. Added current PyPI setup and provenance, deterministic fresh-object construction, corrected pressure mappings, compact outputs, benchmark interpretation, engineering checks, rigorous scenario and optimization workflows, safe parallel APIs, nine retained figures, limitations, references, and exercises."
"summary": "Exact merged-core retained-output review milestone for the comparesimulations2 case: the executed teaching overview now follows the runnable model with distinct oil-export, fuel-gas, and sales-gas branches and documented recycle paths; the scientific rerun, deterministic delivery regeneration, fresh PFD and distinct P&ID, separate DEXPI/Proteus companions, and full A1 inspection remain complete. Completed-scene diagnostics expose 14 PFD and 413 P&ID warnings, so whole-sheet visual acceptance and publication approval remain blocked."
}
]
}
2 changes: 1 addition & 1 deletion notebooks/notebook_maintenance_ledger.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"schema_version": 3,
"updated_at": "2026-09-01T15:17:29Z",
"updated_at": "2026-09-11T00:16:49Z",
"active_notebook_count": 297,
"shards_glob": "maintenance_ledger/*.json",
"retired_notebooks": [
Expand Down
Loading