PetroCalcHub
All workflow tools

Wet-Mixture Three-Phase PR Screening Calculator

Explore vapor and up to two PR liquids with water, light hydrocarbons and noncondensables, while identifying assumed versus database interaction parameters.

Inputs

Results

Calculate to view linked results. Default values are examples, not recommended operating inputs.

Calculation sequence

  1. Enter twelve feed mole fractions on one molar basis and make their sum one. Include isomers in their own slots; do not add iC4 to nC4 or confuse nitrogen/CO2/H2S with a gas-gravity approximation. Include at least 0.001 water; this workflow can search vapor plus two PR liquid phases.
  2. Use the pinned ChemSep PR kij wherever that exact pair has an entry. A missing entry is not a verified zero: the calculation lists each active missing pair and applies the common user coefficient explicitly. This common assumption is a sensitivity input, not a substitute for pair-specific laboratory fitting. Available coefficients are not overwritten by the missing-pair setting.
  3. A multi-liquid stability search can find an additional water-rich phase in the synthetic example. Ordinary PR with quadratic mixing is not a calibrated water-activity or association model. Varying a common water interaction is a numerical exploration only; no brine, electrolyte, acid-gas chemistry, hydrate onset or water-content accuracy is claimed. Do not infer phase identity solely from the liquid number.
  4. At every returned state independently re-evaluate classical PR pressure, log fugacity and residual enthalpy/entropy. Require component balance <=2e-7, log-fugacity mismatch <=2e-5 and relative pressure residual <=2e-6. Reject vanishing phase fractions below 1e-6 and density separation below 1.1 for ordinary splits. These are numerical checks, not measured-PVT validation.
  5. Calculations run locally in a dedicated WebAssembly worker. The advanced Python/scientific engine is a roughly 33 MB first download, separate from ordinary calculators; it is self-hosted and version pinned. No composition or measurements are sent to a calculation server. Save and file backups retain canonical inputs, while CSV/PDF include returned tables and source notes. The worker is released after idle time and failures never return partial results.

Worked check

The synthetic 320 K, 2 MPa feed includes 0.08 water and uses assumed k_water=0.5 for missing water pairs, plus database values where available. The PR search finds three phases, vapor mole fraction about 0.777603 and bulk density 36.867696 kg/m3. This demonstrates a checked three-phase calculation, not measured water/hydrocarbon phase accuracy.

Synthetic examples for reproducibility, not measured field results.

Assumptions and limitations

  • Classical PR, no volume translation, at most one vapor and two liquid phases, 280-450 K, 0.1-10 MPa(a). Fixed component list only. No heavy ends, reactions, ionic species, adsorption, wax or hydrates. Numerical stability search is not proof of stability against arbitrary additional phases.
  • Database kij values are constant and are not guaranteed accurate across the software envelope. Missing dry pairs use k_missing; missing water pairs use k_water. Both are common symmetric assumptions, not pair-specific fits. No default coefficient is represented as measured calibration for this feed.
  • Wet-mixture screening only: no validated aqueous density/solubility/acid-gas partition prediction, brine, inhibitors or association-capable EOS. Two separate liquid roots do not establish measured phase behavior. At least 0.001 of each present component; vanishing/near-critical phases and failed fugacity/material/pressure closure cause rejection.

Implemented equations

PR attraction with a disclosed interaction matrix

a=∑i∑jxixjaiaj(1−kij)kij=kji,kii=0\begin{aligned}a&=\sum_i\sum_j x_ix_j\sqrt{a_ia_j}(1-k_{ij})\\k_{ij}&=k_{ji},\quad k_{ii}=0\end{aligned}

Multiphase component and molar-volume balances

zi=∑αβαxi,α∑αβα=1vˉ=∑αβαvαxi,αφi,α=xi,γφi,γ\begin{aligned}z_i&=\sum_\alpha\beta_\alpha x_{i,\alpha}\\\sum_\alpha\beta_\alpha&=1\\\bar v&=\sum_\alpha\beta_\alpha v_\alpha\\x_{i,\alpha}\varphi_{i,\alpha}&=x_{i,\gamma}\varphi_{i,\gamma}\end{aligned}

Sources and maintenance

Published by PetroCalcHub Team. Implementation and source checks: . This does not claim independent expert review.

Report a correction

Related tools and references