Skip to the content.

Depressurization (Blowdown) per API 521

NeqSim provides neqsim.process.safety.depressurization.DepressurizationSimulator for transient vessel blowdown analysis per API STD 521 (7th ed., 2020) §5.20.

Method

The simulator integrates a vessel as a constant-volume control mass, performing a VU-flash (constant volume / internal energy) at each step:

\[\frac{dM}{dt} = -\dot{m}_{out}, \qquad \frac{dU}{dt} = \dot{Q}_{fire} - \dot{m}_{out} h_{out}\]

Fire heat input follows API 521 §4.4.13:

\[Q_{fire} = C_1 \cdot F \cdot A_{wetted}^{0.82}\]

with $C_1 = 43.2$ kW/m² (adequate drainage + prompt firefighting; otherwise $C_1 = 70.9$).

Code pattern

SystemInterface fluid = new SystemSrkEos(273.15 + 25.0, 100.0);
fluid.addComponent("methane", 0.85);
fluid.addComponent("ethane", 0.10);
fluid.addComponent("propane", 0.05);
fluid.setMixingRule("classic");
fluid.setTotalNumberOfMoles(5000.0);  // initial inventory
fluid.init(3);

DepressurizationSimulator sim = new DepressurizationSimulator(fluid);
sim.setVesselVolume(50.0);          // m³
sim.setOrificeArea(0.001);          // m² (BDV throat)
sim.setBackPressure(1.5);           // bara
sim.setHeatInput(150.0);            // kW (API 521 fire case)
sim.run(900.0, 1.0);                // 15 min, 1 s steps

double tHalf = sim.timeToPressure(50.0);  // s to 50 bara
double Tmin  = sim.minTemperatureC();     // for MDMT check
double mdotMax = sim.peakMassFlow();      // for flare network sizing

API 521 acceptance criteria

Criterion Limit Source
Time to ≤ 50 % design pressure ≤ 15 min API 521 §5.20.2
Minimum metal temperature ≥ MDMT (UCS-66) API 521 §5.20.3
BDV downstream pressure ≤ MAWP of flare header API 521 §5.20.5

See also