Flue-gas desulfurization: venturi wet scrubber — a PENG-ROBINSON process flowsheet
A coal/oil-fired power-plant stack gas (SO₂ in a hot N₂/CO₂/O₂/water flue) is cleaned in a high-energy venturi wet scrubber before the stack — the classic flue-gas-desulfurization (FGD) front end. The new venturi_scrubber unit op accelerates the gas through a throat where injected scrubbing water is atomized, and a stated fraction of the soluble SO₂ is absorbed into the drops and carried out as a slurry while the cleaned gas goes up the stack. Two cited pieces are computed: the momentum-exchange pressure drop ΔP = ρ_L·(Q_L/Q_G)·v_gt² (Calvert 1968; de Nevers — the L/G here is ~1.4 L/m³ and the throat runs 90 m/s, giving ~11 kPa, a real high-energy venturi), and the SO₂ removal (92% at this water rate) that drops the stack SO₂ to a fraction of the inlet.
Modeling assumptions & limitations
- 1The gas absorption is a stated removal efficiency (a screening scrub — the rate-based reactive contactor with real liquid-phase alkali chemistry is the `absorber` / `rate_based_absorber`), the cut-diameter particulate physics is idle here (a gas-only feed), and ΔP assumes complete drop acceleration. A screening process-design starting point for scrubber sizing / pressure-drop budgeting, not a certified FGD performance deliverable.
78 views 0 forks
- Rigorous PENG-ROBINSON thermodynamics, solved by the same engine every simulation runs on.
- 1 unit operations modeled: VS.
- Focus areas: Air pollution control, Flue-gas desulfurization, Venturi scrubber, SO2 removal, Emissions.
- Verified fast convergence — a real, measured solve time, not an estimate.
- Thermodynamics
- PENG-ROBINSON
- Components
- nitrogen, carbon_dioxide, oxygen, water, sulfur_dioxide
- Unit operations
- VS
Opens in a new tab, loaded straight into the app — no setup.
Read the step-by-step guideReproduce 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("flue-gas-desulfurization-venturi")
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
Sour-gas sweetening — six-category footprint
A fuel-fired feed-gas heater, acid-gas removal, and a VOC purge — vented to atmosphere — so the Sustainability panel shows all six impact categories at once: carbon, water, acidification (vented H₂S/NH₃ + combustion NOx), eutrophication (NH₃ + NOx), photochemical ozone (vented benzene) and cumulative energy demand. Illustrative screening vent compositions — a real plant Claus/incinerates the H₂S and controls the VOC rather than venting; the point is to exercise the multi-category footprint on a process that genuinely carries these species. Spec-based separators, so it converges fast and conserves mass.
Thermal oxidizer: VOC-laden waste-gas incineration
A dilute VOC-laden air stream preheats and combusts completely at typical thermal-oxidizer operating temperature (~1100 K / 827degC, in the 750-870degC range these units commonly run at for reliable VOC destruction), destroying toluene (a standard VOC surrogate) to CO₂ + H₂O (C₇H₈ + 9 O₂ → 7 CO₂ + 4 H₂O, exactly mass-balanced) at 99.9% destruction-and-removal efficiency (DRE) — the real regulatory benchmark figure widely cited for thermal oxidizers/incinerators (e.g. the hazardous-waste-incinerator DRE standard), not a fabricated number. This is generic combustion-based air-pollution-control technology, not Linde-proprietary IP — built the same way already models fuel-gas combustion, applied here to a waste-destruction duty instead of a process-heating duty.
Dust collector selection: cyclone vs ESP vs baghouse
The same kiln offgas — 500 mol/s at 420 K carrying 8 mol/s of 20 micron dust (sphericity 0.7, GSD 2.2) — offered to the three gas-cleaning devices side by side, because choosing between them is a real design decision and the three models answer different questions. The cyclone catches 85.6%. That number is not specified anywhere: it is computed from the particle size distribution against the device's own cut size, and its d50 lands at 10 microns — half the dust's mean size, so everything finer escapes. It is the honest ceiling of a device with no consumables and no electricity, and it costs the most fan power of the three here at 1555 Pa. The ESP reaches 99.81% by Deutsch-Anderson on the migration velocity and plate area — also predicted, not specified — at essentially no pressure drop. The baghouse reports 99.8%, and this one you should read differently: its capture is the `penetration` you gave it, an INPUT. The baghouse model predicts pressure drop (37.7 Pa here, from the Cooper & Alley filter-drag law) and cloth area (1149 m2 at a 0.015 m/s air-to-cloth ratio) — not efficiency. Two of these three efficiencies are predictions and one is a specification, and a comparison that hides which is which is worse than no comparison. Why three parallel trains and not one series train. A cyclone roughing into a baghouse polishing is the standard industrial arrangement, and it cannot be drawn here: the cyclone folds its escaped dust back into the gas stream without a solids payload, so a second collector downstream sees no solids to catch. That is a modelling limitation, not a physical one, and it is stated rather than designed around. Bounded: the ESP's zero pressure drop is a model simplification (a real precipitator runs a few hundred Pa), and the pressure drops here are screening values from published correlations, not vendor guarantees.
Organic Rankine Cycle — marine diesel exhaust waste-heat recovery
A closed R245fa Rankine loop recovers waste heat from a heavy marine diesel engine's exhaust: a two-stream boiler vaporizes the working fluid against the hot exhaust gas, a real isentropic-efficiency turbine expands it to shaft power, an ambient-cooled condenser returns it to saturated liquid, and a pump restores boiler pressure. The exhaust-gas composition is a representative combustion-product mix (N₂/CO₂/O₂/H₂O), not a specific engine's measured flue analysis.
Rankine steam power cycle (pump -> boiler -> turbine -> condenser)
The classic steam power cycle behind most of the world's electricity, on the rigorous IAPWS-97 steam properties. Feedwater is pressurized by a boiler-feed pump, fired to superheated steam in the boiler, expanded through a steam turbine to make shaft power, then condensed back to water in the surface condenser. The four Rankine components appear in order, and the numbers are the real thermodynamic ones: at 60 bar / 500 degC steam expanding to a 0.1-bar condenser vacuum the turbine makes ~18 MW of shaft work at 85% isentropic efficiency, the exhaust leaves the turbine as wet steam (~92% quality, the classic low-pressure blade-erosion concern), the condenser rejects ~40 MW to cooling water, and the feed pump costs only ~0.15 MW (the small back-work ratio that makes the Rankine cycle practical, since pressurizing a liquid is nearly free next to expanding a gas). Cycle thermal efficiency comes out ~28%. Every property (the superheat enthalpy, the isentropic expansion endpoint, the exhaust steam quality) is the real IAPWS steam-table value, not a correlation.
Desiccant rotor HVAC — three-stage low-grade heat recovery
A desiccant dehumidification rotor whose regeneration air is preheated by three low-grade heat sources in ascending temperature order: a PVT (photovoltaic-thermal) collector loop at 40 °C, condenser heat rejected by the chiller at 50 °C, and a district-heating return at 55 °C. Cascading them warmest-last is the whole point — each coil lifts the air as far as its own source can reach, so the 55 °C district return is spent only on the final lift instead of being wasted on air that is still at ambient. Every coil leaves a 5 K approach at its hot end, which is what makes this solvable: a cold stream can never leave an exchanger hotter than the hot stream entering it, and in a series train each coil's outlet is the next one's inlet, so a target that looks reasonable in isolation becomes impossible two units downstream. The hot-side flows are sized so the water gives up its duty over a modest ΔT and stays above the air at the cold end as well — specifying the approach alone is not enough if the heat-capacity flow rates don't support it. The rotor's two halves are custom_block equation blocks (the regen side and the process side), and the process air is finished to a 16 °C supply condition by the evaporator coil.