Skip to content

Illustrate pipeline startup after pigging: transient MEG/water film drying - #191

Draft
EvenSol wants to merge 1 commit into
masterfrom
agent/pipeline-pigging-meg-water-drying
Draft

EvenSol wants to merge 1 commit into
masterfrom
agent/pipeline-pigging-meg-water-drying

Conversation

@EvenSol

@EvenSol EvenSol commented Oct 9, 2026

Copy link
Copy Markdown
Owner

Purpose

Illustrate startup after a pig train leaves a stationary 99/1 wt% MEG/water film in a 10 km pipeline at 5 °C. The inlet gas is specified by a −18 °C liquid-water dew point at 70 bara. Gas dew-point compliance alone does not establish removal of the MEG film.

What changes

  • An executed, self-contained Colab notebook using source-built current NeqSim master CPA equilibrium and a conservative Python transient film/gas model.
  • Editable pipe diameter, film thickness, methane/carrier composition, gas flow, pressure/temperature, mass-transfer parameters and residual criterion.
  • Reversible water/MEG transfer, finite gas holdup, film inventories, outlet water/MEG and water-only dew point, axial profiles, local completion times, CSV/JSON exports, six retained figures and all result tables.
  • README and examples catalog entry, plus a dedicated maintenance shard and index count.

The Python model is explicitly separate from the existing distance-marching PipelineEvaporationStudy. Native stationary-film support is tracked in equinor/neqsim#4281.

Main result under illustrative assumptions

For methane, 300 mm ID, 100 µm initial film and 1 million Sm³/day at 15 °C/1.01325 bara:

  • Initial film mass ≈1,050.7 kg, of which ≈10.5 kg is water.
  • Water initially absorbs into the film and peaks near 82.6 kg.
  • All-cell residual criterion: 644.26 days. Every cell is below 0.01% of its own initial solvent mass; residue is retained in the inventory ledger.
  • 50 µm film: 322.18 days; half gas flow: 1,287.43 days.
  • MEG vapor-capacity lower bound: approximately 504.5 days.

The final outlet may still contain MEG because the gas holdup has not been purged. Exact zero liquid and experimentally qualified field drying time are not claimed.

Validation

  • Source-built equinor/neqsim master ea7d61ac1cbfc4b25689a4e81406a7bef248ae64; JAR SHA-256 d110e7f8b0b620d488c6e2aa0881b69ad5dbf6f350016975dbd92b4d2482904f.
  • Python 3.12.14 / Java 17.0.20; fresh isolated environment from hash-verified public-PyPI wheel snapshot; package versions retained.
  • All 12 code cells executed top to bottom in 80.3 s with all results saved; no errors or stderr.
  • CPA fugacity residual, water/MEG balances including gas accumulation and net export, dilute-species/positivity tolerance, analytical advection and vapor-capacity bounds pass.
  • Eight baseline/refinement/sensitivity cases pass; maximum component balance error across cases <4e-8 kg.
  • 40→80 cells changes completion time by approximately 0.00026%.
  • python -m unittest discover -s scripts -p test_check_notebook.py: 6 passed.
  • scripts/check_notebook.py on the new notebook with --require-main-source and focused ledger/catalog: 0 errors, 0 warnings.
  • All 329 relative catalog links checked against the authoritative remote tree plus the added notebook.
  • nbconvert Jupyter HTML + MathJax SVG: all 29 mathematical expressions, six figures, Markdown and result tables inspected through raster render; original PNGs inspected. Catalog Markdown rendered and reviewed.
  • Python syntax, teaching readability and compact Colab-safe math checks pass.
  • Repository-wide notebook-integrity CI remains pending until GitHub runs it.

Model limits and documentation impact

Isothermal fixed-pressure screening; stationary, internally mixed film; smooth-pipe Chilton–Colburn/Petukhov transfer analogy with assumed diffusivities. No pig motion, pressure ramp, liquid drainage/entrainment, liquid diffusion, oil phase, hydrate/ice formation or coupled energy balance. Literature provenance and these boundaries are documented in the notebook. This is not a native full two-fluid transient or a validated field-duration forecast.

Documentation impact: new model assumptions, units, setup, results and limitations are documented in the notebook, README, examples catalog and maintenance evidence.

Open in Colab

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