MaximaLabs

Crude distillation, one solve and then the cuts

Desalter, fired heater, a multi-draw atmospheric column, three steam side-strippers and a three-phase reflux drum — side cuts carved from a real converged tray profile.

Multi-draw column — side cuts from the real converged tray profileDesalter, fired heater, three steam side-strippers, V-L-L reflux drumCrude/residue preheat integration solved, not assumed
Crude oil
Crude/residue preheat
Wash water
Desalter mix
Desalter
Brine
Trim preheat
Fired heater
Atmospheric column
Overhead condenser
Reflux drum (V-L-L)
Fuel gas
Naphtha
Sour water
Stripping steam
Kerosene side-stripper
Kerosene
Stripping steam
LGO side-stripper
Light gas oil
Stripping steam
HGO side-stripper
Heavy gas oil
Atmospheric residue

The actual dark-mode canvas: crude preheated against hot residue, desalted, fired to flash zone temperature, then cut into fuel gas, naphtha, kerosene, light and heavy gas oil, and atmospheric residue — with the overhead drum decanting sour water as a genuine third phase.

One column solve, then the cuts — not seven split fractions

The side draws are taken off a converged MESH tray profile, so moving a draw rate changes every cut above and below it the way it does in the unit. Each side-stripper is a real equilibrium-stage contactor against live steam, not a flash-point correction factor.

Ln1+Vn+1+Fn=Ln+Vn(MESH on every tray of the main column)L_{n-1} + V_{n+1} + F_n = L_n + V_n \quad \text{(MESH on every tray of the main column)}
side draw Sk=LnkLnkinternal(each cut carved from the converged tray profile)\text{side draw } S_k = L_{n_k} - L_{n_k}^{\,\text{internal}} \quad \text{(each cut carved from the converged tray profile)}
Vstripyi+Lstripxi=Skzi(steam side-stripper, real equilibrium stages)V_{\text{strip}} y_i + L_{\text{strip}} x_i = S_k z_{i} \quad \text{(steam side-stripper, real equilibrium stages)}
Qfired=n˙(houthin)Qpreheat(what the crude/residue exchanger saves)Q_{\text{fired}} = \dot n\bigl(h_{\text{out}} - h_{\text{in}}\bigr) - Q_{\text{preheat}} \quad \text{(what the crude/residue exchanger saves)}

Unit ops shipped for this vertical

Heat exchanger

Two-stream counter-current exchanger — the crude/residue preheat that pays for a CDU's fired duty.

Run preset →
Mixer

Combines multiple streams into one, closing the mass and energy balance.

Run preset →
Separator

Flash/phase-split unit op — the foundational vapor-liquid calculation.

Run preset →
Heater / cooler

Duty- or outlet-condition-specified energy-balance stage.

Run preset →
Crude distillation (CDU)

Multi-draw atmospheric column — side cuts carved from the converged tray profile.

Run preset →
Three-phase flash

Vapour + two liquid phases in one equilibrium solve — fuel gas, naphtha, and decanted sour water off one overhead drum.

Run preset →
Absorber (Kremser shortcut)

A specified equilibrium-stage count absorbing or stripping between two contacted streams.

Run preset →
Live plant integration

Stream your CDU's draw temperatures, fired-heater outlet, and overhead drum split from the plant OPC-UA server into this flowsheet's twin comparison — a cut point drifting away from the solved tray profile is flagged before it shows up in a product spec.

See the Digital Twin platform →

Try it yourself

  • Multi-draw column: every cut comes off one converged MESH profile
  • Steam side-strippers as real equilibrium contactors, not flash-point factors
  • Crude/residue preheat integration solved against the fired duty

Ready to modernize your refining simulations?

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