Property Packages Guide¶
Choosing the right property package is one of the most important decisions in process simulation. The wrong choice can produce results that look reasonable but are quantitatively wrong by a wide margin. This guide helps you select the appropriate model for your system.
Decision Tree¶
graph TB
Q1["Pure water or steam<br/>only?"]
Q1 -->|Yes| ST["Steam Tables (IAPWS-IF97)"]
Q1 -->|No| Q2["Hydrocarbon-only<br/>(CH4-C20+)?"]
Q2 -->|Yes| Q2A["Pressure?"]
Q2A -->|Low| LK["Lee-Kesler-Ploecker<br/>or SRK"]
Q2A -->|Medium-High| PR["Peng-Robinson"]
Q2 -->|No| Q3["Polar compounds<br/>(water, alcohols, acids)?"]
Q3 -->|Yes| Q3A["VLE only<br/>or also LLE?"]
Q3A -->|VLE| NRTL["NRTL or UNIQUAC"]
Q3A -->|LLE| UNILL["UNIFAC-LL or NRTL"]
Q3 -->|No| Q4["Electrolytes<br/>(salts, ions)?"]
Q4 -->|Yes| EL["Sour Water,<br/>Electrolyte NRTL,<br/>or Seawater"]
Q4 -->|No| GENERIC["Peng-Robinson (default)"]
Recommended Models by System¶
Water and Steam¶
| System | Recommended | Notes |
|---|---|---|
| Pure water/steam | Steam Tables (IAPWS-IF97) | Reference accuracy across all conditions |
| Water + hydrocarbons (immiscible) | UNIFAC-LL, Sour Water | Captures liquid-liquid behavior |
Hydrocarbons¶
| System | Recommended | Notes |
|---|---|---|
| Light hydrocarbons (C1-C5) | Peng-Robinson | Industry standard for gas processing |
| Petroleum cuts | PR or SRK with pseudo-components | Generate pseudo-components from boiling curves |
| High pressure (> 100 bar) | PR or PRSV2 | PRSV2 has better accuracy for polar species |
| Sour gas (with H2S, CO2) | PR with kij | Set binary interaction parameters |
Polar Mixtures¶
| System | Recommended | Notes |
|---|---|---|
| Alcohol/water | NRTL | Handles azeotropes correctly |
| Acid/water | NRTL or UNIQUAC | NRTL is the safer default |
| Aldehydes, ketones | NRTL | Verify with experimental data if critical |
| Wide-temperature alcohol/water | Modified UNIFAC (Dortmund) | Predictive, no DB needed |
Predictive (when no data available)¶
| System | Recommended | Notes |
|---|---|---|
| Mixed organics, no DB | UNIFAC | Group-contribution; works for many systems |
| Wide T range, polar | Modified UNIFAC (Dortmund) | More accurate at extreme T |
| Vapor-Liquid only | Standard UNIFAC | |
| Liquid-Liquid | UNIFAC-LL |
Electrolytes and Specialized¶
| System | Recommended | Notes |
|---|---|---|
| Seawater | Seawater (IAPWS-08) | Reference for desalination |
| Sour water (NH3, H2S, CO2) | Sour Water | Specialized for gas treating |
| Aqueous electrolytes | Electrolyte NRTL | Plus / Patreon edition |
| Refrigerants | PR or REFPROP-style | PR works for most R-X compounds |
Common Pitfalls¶
Using Raoult's Law for Non-Ideal Systems¶
Raoult's Law assumes ideal behavior in both phases. For non-ideal mixtures (water/ethanol, water/acetone), it gives wrong VLE predictions, especially near azeotropes. Always use NRTL or UNIQUAC for polar mixtures.
Using PR for Highly Polar Systems¶
Peng-Robinson is excellent for hydrocarbons and gases, but performs poorly for water/alcohol mixtures. The cubic EOS form does not capture the strong hydrogen bonding in polar systems. Use activity-coefficient models (NRTL) instead.
Mixing Property Package Conventions¶
Different packages may use different mole/mass fraction conventions or compound naming. When importing a flowsheet from another simulator, verify that all stream specifications are consistent with the new package.
Forgetting to Set Binary Interaction Parameters¶
For PR/SRK with strongly polar or quadrupolar compounds (CO2, H2S), the kij values matter. DWSIM's database has many published kij values, but always verify they are loaded.
Verification Strategy¶
Before trusting a simulation result:
- Sanity check with hand calculations for simple cases (single component, ideal mixture)
- Compare phases (vapor fraction, density) with NIST WebBook or experimental data
- Check azeotropes appear at the right composition for known systems
- Run with two different packages and compare; large discrepancies indicate the system is sensitive
Property Package List in DWSIM¶
The most common packages available in DWSIM (FluentAPI enum names):
| Enum | Full Name |
|---|---|
SteamTables |
IAPWS-IF97 |
PengRobinson |
Peng-Robinson (1976) |
PengRobinsonStryjekVera2 |
PRSV2 |
SoaveRedlichKwong |
SRK (1972) |
LeeKeslerPloecker |
LKP |
RaoultLaw |
Raoult's Law (ideal) |
NRTL |
NRTL |
UNIQUAC |
UNIQUAC |
Wilson |
Wilson |
UNIFAC |
Standard UNIFAC |
ModifiedUNIFAC_DDB |
Modified UNIFAC (Dortmund) |
UNIFAC_LL |
UNIFAC for LLE |
GraysonStreed |
Grayson-Streed |
ChaoSeader |
Chao-Seader |
SourWater |
Sour Water |
SeaWater |
IAPWS-08 Seawater |
Electrolyte_NRTL |
Electrolyte NRTL (Plus) |
Refer to the FluentAPI Property Packages reference (DWSIM.FluentAPI/docs/api/property-packages.md) for the complete list.