Utilities Process Flowsheets & Simulations
Explore 6 validated, solved Utilities simulation flowsheets in MaximaLabs — real components: ethanol, water. Open any one directly in your browser.
Solved via: NRTL, COOLPROP, STEAM.
Cooling-water tower (Merkel sizing)
A process cooling-water utility: a hot ethanol-water process stream is cooled against cooling water in a counter-current exchanger, and the warmed cooling water is then sent to an evaporative cooling tower that rejects the picked-up heat to ambient air and returns it cold. The tower reports the evaporation + blowdown makeup water and — because the wet-bulb temperature and the water-to-air ratio L/G are given — the Merkel tower characteristic KaV/L a designer sizes the fill to, plus the range (hot→cold water drop, 10 K here) and the approach to the wet-bulb (5 K). Rate a fill against that demand with the standalone Cooling tower (Merkel) analysis tool. Honest scope: the cooling-water side is shown open (supply → exchanger → tower → return); a real plant recycles the return with makeup, and the Merkel model carries Le=1 assumptions.
6 unit ops • NRTL
79 1
View & openSteam-jet vacuum ejector (thermocompressor)
A steam-jet ejector holds vacuum on a vacuum-distillation overhead with no moving parts: high-pressure motive steam (16 bar) expands through a nozzle to a supersonic jet (~1100 m/s) that entrains the low-pressure suction vapor (0.1 bar), and the combined flow is recompressed in a diffuser to the 0.25 bar discharge. It reports the mass entrainment ratio ω = suction/motive (the ejector's defining performance number), the maximum ω it can sustain at this discharge pressure, and whether the duty is feasible (ω below ω_max, with margin here). Honest scope: geometry-free 1-D thermocompressor model (ideal-gas γ, lumped nozzle/mixing/diffuser efficiencies, no normal-shock/area detail).
4 unit ops • COOLPROP
79 0
View & openHybrid cooling — a closed circuit isolated from the tower by a plate exchanger
Three loops in series, and the middle one is the point. The process is cooled by a closed circuit of treated water that never contacts air; that circuit rejects its heat across a plate exchanger into an open evaporative circuit; and only that outer circuit goes to the tower and loses water. Why a plant pays for the extra exchanger: open cooling water picks up oxygen, airborne dirt and biology, and concentrates its dissolved salts every cycle. Putting that water through a reactor jacket or a condenser is what fouls and corrodes them. The closed loop stays clean, stays at pressure, and its inventory never concentrates — so the equipment the process actually touches sees water that does not scale. Solved here: the process leaves at 318 K, the closed circuit picks that up (303 → 320 K) and is knocked back to 306 K across the plate exchanger, the open circuit takes it (301 → 311 K) and the tower returns it to 301.15 K at a 4.0 K approach to a 297.15 K wet bulb. Water loss appears only in the open circuit — the closed one leaves with exactly the flow it entered with, which is the whole claim made arithmetic. The tower also reports its scaling limit from the makeup analysis: this water saturates in calcite at 2.2 cycles, so the 4 cycles configured here shows negative headroom — a real operating conflict, left visible rather than tuned away. Bounded: steady state, so there is no basin inventory and no level control (a level is only meaningful in the dynamic engine). Fouling is not modelled — the argument for the closed loop is made by the chemistry, not by a fouling rate. Feeds and returns are open rather than recycled, the same convention cooling-water-tower uses.
10 unit ops • STEAM
22 1
View & openCooling-water utility circuit — treatment, dosing, consumers, blowdown
A whole cooling-water utility rather than a single tower: raw water is filtered, dosed, and joins a circulating header that a pump pushes through three consumers with different duties — a reactor jacket, a condenser and a compressor intercooler — before the warmed return goes to the tower and a blowdown draw-off leaves for effluent treatment. The number worth checking is the consistency between the two halves. The tower computes the blowdown it needs to hold 4 cycles of concentration (32.1 mol/s) and the makeup that implies (128.3 mol/s); the drawn blowdown split and the sized raw-water intake match those to under 1.5%. A circuit whose blowdown valve and cycles disagree is the commonest way a real plant silently runs at a different concentration than its water chemistry was designed for, and the flowsheet is arranged so you can see them agree. Solved: 300 m3/h circulating at 301.15 K, split 45/35/20 across the three exchangers, returning mixed at 312 K for an 11.0 K tower range at a 4.0 K approach. What is drawn but not modelled, stated plainly. The biocide, scale-inhibitor and corrosion-inhibitor streams are real streams carrying real flow, and their chemistry is not simulated — no inhibitor efficacy, no biological control, no corrosion rate exists in this tool. They are here because a utility flowsheet without them misrepresents the plant, not because dosing more of them will change a number. The scale risk that IS quantified comes from the tower's saturation indices against the makeup analysis, and on this water it says calcite saturates at 2.2 cycles — below the 4 being held. Blowdown leaves to a product labelled for effluent treatment; the treatment train itself is not modelled, because carrying dissolved hardness as flowsheet components requires an electrolyte package and would change the thermodynamics of the entire water loop. And there is no basin: steady state has no inventory, so a sump level and its controller belong to the dynamic engine.
26 unit ops • STEAM
27 2
View & openPressure-controlled cooling-water header
A distribution header held at pressure by a control valve, rather than a valve with a pressure typed into it. A pressure transmitter reads the header downstream of the distribution line, a controller compares it with the 4.5 bar setpoint, and its output is written back into the valve — the flowsheet is re-converged until the manipulated variable and the measurement agree. What makes it a real loop rather than a tautology is the line between them. The transmitter sits 180 m downstream, so the valve cannot simply be set to the setpoint: it has to sit above it by exactly whatever the line is losing, and the controller has to find that. Solved here, it lands at 462.1 kPa at the valve for 450.0 kPa at the header — a 12.1 kPa line loss it was never told about — in 5 control passes. The controller runs in integral mode, so the steady-state offset a proportional-only controller would leave is driven to zero: the header sits at the setpoint to the last significant figure, not near it. One detail worth copying if you build your own: the pipeline carries an explicit molar_mass. Darcy-Weisbach needs mass density and ThermoPkg.density returns mol/m³, so a line without it inflates its pressure drop by roughly 1/M — about 55x for water. It warns, but the warning is easy to miss, and 12 kPa became 587 kPa while this example was being built. Bounded: steady state, so this finds the operating point a controller settles at, not the transient getting there — no overshoot, no settling time, no derivative action. Those live in the dynamic engine. The consumer splits are fixed fractions, so this demonstrates pressure control, not flow redistribution when a user throttles.
14 unit ops • STEAM
19 0
View & openSteam utility island: deaerator, boiler, desuperheater
The three units that stand between raw makeup water and steam a turbine can accept, on the IAPWS steam tables. The deaerator takes 500 mol/s of 300 K makeup and 40 mol/s of LP steam and returns 540 mol/s of saturated liquid at 5 bar (425 K) for 3.23 MW. It is a direct-contact heater, so the heating steam does not leave — it condenses into the feedwater and shows up in the outlet flow. That is the point of the unit: the reason a plant heats feedwater by injecting steam into it rather than through a tube bundle is that boiling the water is what strips the dissolved oxygen out of it. The boiler then absorbs 26.6 MW into the water and fires 31.3 MW to do it — the gap is the stack loss, and it is the number a fuel bill is written against, not the absorbed duty. The desuperheater takes that 720 K steam down to a 660 K target by spraying 25.96 mol/s of water into it. The spray rate is SOLVED, not specified: you state the temperature you want and the unit finds the water that achieves it, which is how an attemperator is actually specified. Note the outlet is 566 mol/s, more than entered it, the spray water becomes steam. Bounded: the deaerator is an equilibrium model, so it reports no rate-based O₂/CO₂ stripping (there is no residual-oxygen ppb number here, which is what a real deaerator is guaranteed on), and the desuperheater assumes the spray fully evaporates.
6 unit ops • STEAM
10 0
View & open