MaximaLabs
Back to gallery
Ludwigshafen, Germany

Aniline via nitrobenzene hydrogenation — a PENG-ROBINSON process flowsheet

Vapor-phase catalytic hydrogenation of nitrobenzene (C₆H₅NO₂ + 3H2 → C₆H₅NH₂ + 2H2O, highly exothermic) with excess hydrogen, a high-pressure flash recovering unreacted H₂ as a recycle vent, then a reduced-pressure flash stripping residual water from the crude aniline.

Modeling assumptions & limitations

  1. 1The reactor is a stoichiometric conversion model (98%), not a nitrobenzene-specific rate law — this solver has no curated hydrogenation kinetics for this reaction. The final aniline/water cut is a single-stage flash, not a multi-tray column: aniline and water are a genuinely non-ideal, partially-miscible pair, and this solver's UNIFAC-based decanter (the tool built for exactly that miscibility gap) doesn't have nitrobenzene's group decomposition, so a real plant's decant-then-distill sequence isn't fully modeled here.

346 views 0 forks

NB FEED
H2 FEED
MIX
RX
Hpsep
H2 VENT
Vflash
Water OVHD
Aniline Product
What this showcases
  • Rigorous PENG-ROBINSON thermodynamics, solved by the same engine every simulation runs on.
  • 3 unit operations modeled: MIX, RX, 2× Vflash.
  • Focus areas: Hydrogenation, Exothermic reaction, Gas recycle, Vacuum flash.
Specification
Thermodynamics
PENG-ROBINSON
Components
nitrobenzene, hydrogen, aniline, water
Unit operations
MIXRX2× Vflash
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("aniline-hydrogenation")
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

Reference model (ChemSep)

Benzene hydrogenation → cyclohexane

Benzene + 3 H₂ → cyclohexane in a conversion reactor, then a high-pressure flash recovers liquid cyclohexane and recycles the excess hydrogen (with a purge). The classic ChemSep recycle example — exercises reaction + recycle convergence.

Phosphoric acid complex, Jorf Lasfar, Morocco

Phosphoric acid concentration: steam evaporator baseline (29 → 54% P2O5)

The conventional wet-process step, at the scale of one Jorf Lasfar concentration line: 138 t/h of 29% P₂O₅ acid, heated by 3.5 bar LP steam in a graphite exchanger and flashed under vacuum (0.12 bar) to 54% P₂O₅, evaporating 64.0 t/h of water. The steam feed is tuned so the concentrate lands on 54.0 wt% P₂O₅ (the user variable p2o5_wt_product), which takes 73.6 t/h of steam — 1.84 t steam per tonne of P₂O₅, 44.5 MW of condensing duty. That is the single-effect ideal; the published plant benchmark of ~2.8 t/t carries exchanger approach, losses and off-design operation on top. The point of the number here is what it costs the site: at Jorf Lasfar this steam is a co-product of the exothermic sulfuric-acid plants, which is the fact any electric alternative has to beat. Compare the two sibling examples, phosphoric-acid-concentration-microwave and -hybrid. Model scope, stated up front. The acid runs on the brine package, which carries phosphoric acid as a non-volatile molecular solute with its CRC liquid heat capacity (145 J/mol/K) — the streams show the real H₃PO₄/water compositions and the acid's sensible heat is in the balance — and a water activity fitted to measured data: binary boiling points (Li 2017, NIST TRC ThermoML Archive) and 20 °C vapour pressures up to 85 wt% (Kirk-Othmer), with a held-out error of 2% in water activity. The boiling-point elevation is therefore the fitted one, 23.5 K at 54% P₂O₅ and 0.12 bar (the ideal, Raoult's-law activity this replaced gave 9 K). Checked against a boiling point the fit never saw, it puts 85 wt% acid at 164 °C at atmospheric pressure against a measured 158 °C. Above 18 mol% acid the temperature dependence rests on one coefficient and that single check, so read the concentrate temperature to within a few kelvin. No heat of dilution is carried (about 1.5% of the latent duty at 54% P₂O₅). The 320 K feed stands in for a hotter plant feed. The acid heated at 1 atm here partly boils in the exchanger (the model's fitted boiling point at 1 atm); the real acid is kept liquid under static head and flashes in the chamber.

Phosphoric acid complex, Jorf Lasfar, Morocco

Phosphoric acid concentration: microwave heating (29 → 54% P2O5)

The same duty with the steam exchanger replaced by volumetric microwave heating: 44.5 MW absorbed in the acid, then the same vacuum flash to 54.0 wt% P₂O₅ and the same 64.0 t/h of water removed — the microwave does not remove water, it supplies the latent heat. At a 65% wall-plug magnetron efficiency (915 MHz industrial units reach ~85%) that is 68.5 MW of electricity, 1,710 kWh per tonne of P₂O₅ (1,310 at 85%). The comparison that decides it is the energy carrier, not the heating mechanism: at Jorf Lasfar the baseline's 1.84 t/t of steam is a co-product of the sulfuric-acid plants, and the site turns that steam into electricity at roughly 30%. Sending it through a turbine, a magnetron and back into the acid delivers about a fifth of the heat the exchanger delivers directly (0.30 × 0.65 ≈ 0.2), so on this site the microwave route needs roughly five times the primary steam energy of the baseline. Where microwaves do earn their place is not here but at the superphosphoric end (>70% P₂O₅, viscous, fouling, where the recent literature targets them), and an electric route for the 29-54 step should be compared against mechanical vapour recompression, which reuses the latent heat at a coefficient of performance of 10-30. Sweep the absorbed duty to see the product concentration and the electricity follow it. Model scope, stated up front. The acid runs on the brine package, which carries phosphoric acid as a non-volatile molecular solute with its CRC liquid heat capacity (145 J/mol/K) — the streams show the real H₃PO₄/water compositions and the acid's sensible heat is in the balance — and a water activity fitted to measured data: binary boiling points (Li 2017, NIST TRC ThermoML Archive) and 20 °C vapour pressures up to 85 wt% (Kirk-Othmer), with a held-out error of 2% in water activity. The boiling-point elevation is therefore the fitted one, 23.5 K at 54% P₂O₅ and 0.12 bar (the ideal, Raoult's-law activity this replaced gave 9 K). Checked against a boiling point the fit never saw, it puts 85 wt% acid at 164 °C at atmospheric pressure against a measured 158 °C. Above 18 mol% acid the temperature dependence rests on one coefficient and that single check, so read the concentrate temperature to within a few kelvin. No heat of dilution is carried (about 1.5% of the latent duty at 54% P₂O₅). The 320 K feed stands in for a hotter plant feed. Microwave penetration depth (about a centimetre in a conductive acid at 2.45 GHz) and the HF attack on quartz windows are equipment questions this model does not carry.

Aniline plant, Ludwigshafen, Germany

Jet loop reactor: nitrobenzene to aniline

A circulating loop reactor of the kind BASF and Buss built for strongly exothermic three-phase hydrogenations — here nitrobenzene to aniline (C₆H₅NO₂ + 3 H₂ → C₆H₅NH₂ + 2 H₂O, -443 kJ/mol). Fresh nitrobenzene and hydrogen are injected into a large circulating liquid stream; the reactor itself runs adiabatic and the reaction heat is taken out by a heat exchanger in the EXTERNAL loop, which is the whole architectural point — the exchanger area is set independently of the reactor, and the circulation rate, not a cooling jacket, is what holds the temperature. A gas separator vents the excess hydrogen, 5% of the liquid is taken off as crude aniline, and the rest is pumped back. What it computes: a 19:1 recycle-to-product ratio holds the adiabatic reactor to 429.7 K in / 494.3 K out, a 64.6 K rise, with the loop cooler removing 4.66 MW; overall nitrobenzene conversion is 99.98% (99.70% per pass) and the crude leaves at 34.7% aniline / 64.9% water. Counting the vent as well as the crude, one aniline is made per two water, which is the stoichiometric mass-balance check on the whole loop — the crude by itself runs slightly water-lean because the vent carries water vapour off with the excess hydrogen. The acid test is what happens without the loop: the same feed in one adiabatic once-through reactor is already at 627 K by 30% conversion and runs off the top of the model's temperature range well before full conversion. That gap is the reason the architecture exists.

Ludwigshafen, Germany

Polymerization reactor comparison: CSTR cascade vs. tubular (PFR)

The same monomer feed, split 50/50 into two trains at equal total reactor volume: a 3-stage CSTR cascade (each stage blending its own new polymer with the MWD already carried by the stream from the stage before it) versus a single tubular (PFR) reactor. Both converge to a real, different Mn/Mw/PDI — the PFR reaches higher conversion at the same total volume, but its cumulative polydispersity is measurably broader than the cascade's, because chain length drifts continuously with conversion along the tube while each CSTR stage makes its own local production under one fixed monomer concentration. See the 'Polymerization Reactors' docs page for the full reasoning.

Amarillo, Texas, USA

Helium liquefaction (Linde-Hampson cycle)

A Joule-Thomson liquefaction loop: helium is compressed, aftercooled, precooled well below its ~40-51 K JT-inversion temperature, then throttled through a valve into a flash drum that draws off liquid helium while the cold vapor recycles back to the compressor suction — the same JT-cycle physics as the platform's LNG/refrigeration loops, run on a fluid whose inversion curve makes precooling mandatory before the throttle can cool it at all.

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