Polystyrene devolatilization, two solvents (Sanchez-Lacombe) — a SANCHEZ-LACOMBE process flowsheet
A solution-polymerized polystyrene (100 kg/mol) carried in toluene and benzene, flashed at 480 K and 0.2 atm to strip the solvent — the multi-solvent case the Flory-Huggins package cannot take (one polymer, one solvent) and the reason the Sanchez-Lacombe lattice-fluid equation of state is in the tree. Characteristic parameters are the published ones: polystyrene T* 735 K, P* 357 MPa, rho* 1105 kg/m3; toluene 543 K, 402 MPa, 966 kg/m3; benzene 523 K, 444 MPa, 994 kg/m3 (Sanchez & Lacombe, J. Phys. Chem. 80 (1976) 2352 and Macromolecules 11 (1978) 1145), with the segment number r from M P*/(R T* rho*). What it computes: 94% of the feed moles leave overhead as solvent vapour and the melt retains 0.16 wt% residual solvent — read it on mass, not moles, since a 100 kg/mol chain is one mole against 0.09 kg/mol solvents. No binary k_ij (none is published for this pair); a single equilibrium stage, no diffusion-limited devolatilization kinetics.
1 views 0 forks
- Rigorous SANCHEZ-LACOMBE thermodynamics, solved by the same engine every simulation runs on.
- 1 unit operations modeled: Devol.
- Focus areas: Polymer, Devolatilization, Sanchez-Lacombe, Lattice fluid, Solvent recovery.
- Thermodynamics
- SANCHEZ-LACOMBE
- Components
- polystyrene, toluene, benzene
- Unit operations
- Devol
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("polystyrene-devolatilization-sanchez-lacombe")
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
Polystyrene devolatilization (Flory-Huggins)
A molten polystyrene/toluene melt is flashed above its Flory-Huggins bubble point to strip residual solvent — the polymer thermo package's headline use case: the vapor leaves essentially pure solvent while the melt concentrates toward pure polymer, exactly the physics a cubic EoS or an ordinary activity model (sized for components of comparable molecular size) can't represent.
Continuous polymerization -> inline devolatilization -> melt transfer
A continuous free-radical CSTR (Mn/Mw/PDI via method-of-moments) converts 10% of its monomer feed to polymer per pass; the effluent flashes above its real Flory-Huggins bubble point to strip most of the residual monomer for recycle (the same physics as the polystyrene-devolatilization example, chained directly onto a reactor for the first time). The still-solvent-carrying melt then transfers through a pipe whose pressure drop is driven by a real non-Newtonian melt viscosity — the 3.4-power Mw scaling law plus Carreau shear-thinning, not a flat user-guessed constant — closing the 'viscosity-driven hydraulic pressure drop' gap a competitive pitch this session flagged as unbuilt.
Acetone–water distillation
A 12-stage column recovers acetone overhead from a dilute aqueous solvent-recovery feed — a common industrial acetone/solvent-recycling duty.
Acetone-water column at 3 atm (PR + Wong-Sandler)
An acetone recovery column at 3 atm on Peng-Robinson with the Wong-Sandler mixing rule — the one Gᴱ rule that keeps the quadratic composition dependence of the second virial coefficient, so it stays thermodynamically consistent at high pressure. 20 mol% acetone feed, 14 stages, reflux 2, 25% distillate: 80 mol% acetone overhead and acetone-free water in the bottoms, 2.65 MW on the reboiler. The cut is set at 0.25 rather than the feed's exact acetone fraction of 0.20, which pinned the column on a razor edge (temperature residual 2e-3, balance 3%); at 0.25 it closes to zero. Bound: the rule is driven by the low-pressure acetone/water NRTL binary and, as records, NeqSim's Wong-Sandler kij is deliberately not wired in, so the second-virial cross term uses the van der Waals kij.
n-Hexane / 1-butanol column with no fitted binary (UNIFAC)
A binary the databank has no regressed NRTL parameters for, so the column runs on predictive original UNIFAC from the two molecules' groups alone: 50/50 n-hexane and 1-butanol, 20 stages, reflux 2, 45% distillate. UNIFAC predicts the minimum-boiling azeotrope at 97 mol% hexane and 341.7 K, and the column lands its distillate exactly there (96.7%) with an 88% butanol bottoms — the azeotrope, not the stage count, is what caps the overhead purity, and that is a prediction from group contributions with no data on this pair behind it. Read it as a screening result: original UNIFAC's mean error against fitted binaries in this tree is 0.08 in ln gamma, and an alkane/alcohol pair is in its well-behaved range.
Toluene removal from 1-butanol solvent (modified UNIFAC, Dortmund)
A recovered 1-butanol solvent contaminated with 5 mol% toluene, redistilled to send the toluene overhead: 24 stages, reflux 3, an 8% distillate. There is no fitted toluene/1-butanol binary, so this runs on modified UNIFAC (Dortmund) — the variant that cuts infinite-dilution error from 42% to 16% in this tree, and a dilute contaminant in a solvent is exactly the infinite-dilution regime. Dortmund puts the toluene/butanol azeotrope at 67 mol% toluene (original UNIFAC: 70%), which is why the overhead comes out at 43% toluene rather than pure, and the bottoms at 1.7% toluene — two-thirds of the contaminant removed per pass. The 3-point azeotrope difference between the two variants is the size of the model choice on this pair.