MaximaLabs
Back to gallery
Refinery reformer block, Rotterdam, Netherlands

Reformate splitter — a PENG-ROBINSON process flowsheet

A single column cutting catalytic reformate into a light benzene/hexane overhead and a toluene/xylene bottoms — the IECR 50, 5680 configuration from the ChemSep casebook.

169 views 0 forks

FEED
feed
dist
btms
Split
Light
Heavy
What this showcases
  • Rigorous PENG-ROBINSON thermodynamics, solved by the same engine every simulation runs on.
  • 1 unit operations modeled: Split.
  • Focus areas: Reformate, Distillation, Aromatics.
Specification
Thermodynamics
PENG-ROBINSON
Components
n_hexane, benzene, toluene, o_xylene
Unit operations
Split
Open in workspace

Opens in a new tab, loaded straight into the app — no setup.

Read the step-by-step guide
Python SDK

Reproduce this exact result from Python — the real client.get_example() → run_and_wait() path, not a mockup.

from flowsim.sdk import FlowSimClient

client = FlowSimClient()
example = client.get_example("reformate-splitter")
sim = client.create_simulation(example["title"], example["flowsheet"])
result = client.run_and_wait(sim["id"])

print(result["status"])              # "converged"
streams = client.streams(sim["id"])

Related models

Aromatics complex, Rotterdam, Netherlands

Aromatics column (Strigle)

A simple aromatics splitter recovering benzene overhead from a toluene/xylene-heavy feed, as described by R. Strigle (Gulf Publishing, 1987) — a classic packed-column textbook design case.

Aromatics complex, Rotterdam, Netherlands

Sulfolane extractive distillation of aromatics

Extractive distillation recovering benzene and toluene from a stabilized reformate's C₆-C₇ non-aromatics (represented by methylcyclohexane) using sulfolane, after Figure 10.2/10.6 of T. Brouwer (PhD thesis, TU Twente, 2021). A vacuum solvent-recovery column then splits the aromatics from the sulfolane (reported as its own product rather than recycled). Both columns converge (ED 44 iterations, SR 98, residuals ~1e-5): methylcyclohexane leaves overhead at 91.3 mol%, the aromatics product carries no sulfolane at all (0.00000 mole fraction) at 95.2% recovery of the feed's benzene and toluene, and the recovery column returns sulfolane 99.96% pure at 490 K. Both columns were originally mis-specified in the same way, and it is worth seeing once because the symptom looks like a thermodynamic failure rather than an arithmetic one. distillate_to_feed is a fraction of a column's TOTAL feed, and both were set above the amount of light key actually present, so each column was forced to drag its heavy key overhead to make up the flow. The ED asked for 0.15 of 140 mol/s = 21 mol/s of overhead when only 17.5 mol/s of non-aromatics exists, so 3.5 mol/s of aromatics had to come over — that was the 19.4% benzene lost to the raffinate. The recovery column asked for 0.42 of its bottoms against roughly a quarter of it being aromatics, so ~20 mol/s of solvent had to come over — that was the 42 mol% sulfolane in the product. Setting each to the light key's real share (0.125 and 0.265) removes both. The property method is the whole story here, and it is why this example ran unconverged for a long time. Extractive distillation exists because of solvent selectivity, so a cubic with van der Waals mixing rules — Peng-Robinson as this was originally written — cannot represent the one effect the column depends on; it was being asked to converge on a model that did not contain the physics. A plain activity model cannot be used either: sulfolane boils at 558 K, so a reboiler hot enough to strip it drives benzene past its 562 K critical point, where a gamma-phi formulation has no answer at all. What the system needs is both at once, which is exactly what a Ge mixing rule provides — PSRK is a cubic (no supercritical ceiling) whose mixing is driven by UNIFAC (real selectivity). pr-mhv1 converges here too, in 47 iterations.

Reference model (Dejanovic et al. 2011)

Reformate splitter via dividing-wall column

A refinery catalytic-reformer stream (benzene/toluene/o-xylene plus a non-aromatic n-heptane proxy) is split into three purified aromatics cuts by a single thermally-coupled dividing-wall column instead of two ordinary columns in series — the same DWC economics as the BTX example, applied to a genuine reformate splitter duty. Dejanovic, Matijasevic, Jansen, Olujic, "Designing a Packed Dividing Wall Column for an Aromatics Processing Plant," Ind. Eng. Chem. Res. 2011, 50, 5680.

Pekin, Illinois, USA

Ethanol–water distillation

An 8-stage column concentrating ethanol overhead toward the azeotrope (the headline demo).

Tray efficiency — real trays vs ideal stages

The same ethanol–water column solved with a Murphree vapor tray efficiency of 0.7 instead of ideal equilibrium stages. A real sieve/valve tray never reaches full vapor-liquid equilibrium — the vapor leaving it only partly approaches the equilibrium composition with the tray liquid, mixing in un-equilibrated vapor from the tray below: y = E·K·x + (1−E)·y_below (Murphree 1925). At E = 0.7 each of these 12 trays does 70% of an ideal stage's work, so the overhead ethanol is lower than an equilibrium column of the same tray count would predict — which is exactly why a real column needs more trays than a shortcut (ideal-stage) calculation says. Both HYSYS and Aspen RadFrac expose this per-tray efficiency; set murphree_efficiency back to 1.0 to recover the ideal-stage column. The efficiency auto-selects the component-flow Naphtali-Sandholm solver (the reduced-form solvers carry no explicit per-tray VLE row to apply an efficiency to).

Reference model

Distillation column startup dynamics (feed-rate step)

An 8-stage ethanol-water column at a reduced startup feed rate. Solves the steady state normally; switch to the Dynamic solve mode with weir/level-controlled hydraulics enabled and step the feed rate up (e.g. 6 → 9 mol/s) to watch the bottoms draw genuinely rebalance to the new throughput as the tray inventories fill — a feed-rate disturbance no fixed-hydraulics dynamic model (incl. this same column's own default rigorous mode) can show at all. Honest bound: the vapor traffic is held at its steady-state value in this mode, so the distillate draw (condenser-level-controlled off vapor inflow) does not move for a feed-rate-only step — only the liquid/bottoms side responds.

Stop fighting legacy software. Build your first flowsheet in 60 seconds.