# PyVaporation: A Python Package for Studying and Modelling Pervaporation Processes

^{*}

## Abstract

**:**

## 1. Introduction

_{i}is the molar flux, mol·m

^{−2}·s

^{−1}; ${\Pi}_{i}$ is the permeability coefficient, mol·m·m

^{−2}·s

^{−1}⋅(J·mol

^{−1})

^{−1}, which, in terms of the ideal SDM case, could be presented as the product of corresponding solubility and diffusion coefficients; $\delta $ is the thickness of the membrane, m; and P

_{i}is the permeance, or driving force-normalized flux mol·m

^{−2}·s

^{−1}⋅(J·mol

^{−1})

^{−1}.

## 2. Theoretical Background

^{−2}·s

^{−1}·Pa

^{−1}), gas permeance units (GPU—10

^{−6}·cm

_{STP}

^{−3}·cm

^{−2}·s·cmHg) or mass-related units (kg·m

^{−2}·h

^{−1}·kPa

^{−1}) [10,14].

_{i}is the molar or mass flux, kg·m

^{−2}·h

^{−1}or mol·m

^{−2}·h

^{−1}; P

_{i}is the permeance, kg·m

^{−2}·h

^{−1}·kPa

^{−1}or mol·m

^{−2}·s

^{−1}·Pa

^{−1}; and p

_{i feed}and p

_{i perm}are the partial pressure of the component’s saturated vapours in the feed and the permeate, respectively, kPa or Pa.

_{i,j}is the molar permeance of components i and j; and C

_{ip}(C

_{jp}) and C

_{if}(C

_{jf}) represent the concentration of component i in the permeate and feed, respectively. Sometimes, for the evaluation of the overall process efficiency, the pervaporation separation index is considered a useful numerical characteristic [34]:

_{Σ}is the overall pervaporation flux, kg⋅m

^{−2}⋅h

^{−1}or mol⋅m

^{−2}⋅h

^{−1}

## 3. Driving Force

_{i sat}is the pressure of the saturated vapour, usually in kPa, and m and p stand for the mixture and pure component, respectively; and ${\gamma}_{i}$ is the dimensionless activity coefficient calculated by the means of afore-described models.

_{i sat}is the pressure of the saturated vapours over the pure component at a given temperature; a, b and c are empirical constants; and the A and F indexes stand for Antoine and Frost, respectively.

## 4. Permeance

_{F}is the feed concentration, mol or wt. %; and P

_{i}is the permeance of component i, kg·m

^{−2}·h

^{−1}·kPa

^{−1}or mol·m

^{−2}·s

^{−1}·Pa

^{−1}.

^{−2}⋅h

^{−1}⋅kPa

^{−1}; E

_{a}is the apparent energy of transport activation, J⋅mol

^{−1}; R is the gas constant, J⋅mol

^{−1}⋅K

^{−1}, and T is the temperature, K.

_{dry}, permeance on a “dry” membrane) and without the thorough intermediate drying of the membrane (P

_{swelled}, permeance on a previously swollen membrane) (15).

## 5. Heat Balance in the Pervaporation Process

_{mixture}is the evaporation/condensation heat of the mixture, kJ⋅mol

^{−1}; ν

_{i}is the molar fraction of component i; and ∆H

_{i}is the evaporation/condensation heat of pure component i, kJ⋅mol

^{−1}.

_{i}is the evaporation/condensation heat of pure component i, kJ⋅mol

^{−1}; T is the temperature, K; b

_{i}and c

_{i}are constants of the saturated vapour equation of component i; and the A and F indexes correspond to the Antoine and Frost equations.

_{p mixture}is the isobaric heat capacity of the mixture, kJ⋅mol

^{−1}⋅K

^{−1}; ν

_{i}is the molar fraction of component i; ∆C

_{pi}is the isobaric heat capacity of the pure component i, kJ⋅mol

^{−1}⋅K

^{−1}; a, b, c and d are semi-empirical constants of the heat capacity equation; the C index stands for heat capacity; n

_{i}is the quantity of the component, mol; and Q

_{i}is heat of cooling or heating KJ.

## 6. PyVaporation Package

## 7. Main Classes and Methods

#### 7.1. Component

#### 7.2. Mixture

#### 7.3. Membrane

^{−2}⋅h

^{−1}⋅kPa

^{−1}), permeance values are represented as instances of the Permeance class defined with a value and units. The class allows conversion between the supported units by calling the convert() method, with the corresponding parameters (Scheme 3). IdealExperiment objects are associated with the object of the IdealExperiments class, which could be used to define a membrane and is loaded from a

`.csv`file.

`.csv`files.

#### 7.4. Pervaporation Function

#### 7.5. Pervaporation

#### 7.6. Process Model

`.csv`file with all process parameters and binary PervaporationFunction and InitialConditions files. ProcessModel could be loaded from a directory with corresponding structure and contents to the system for further evaluation. The methods defined for the ProcessModel are similar to those defined for DiffusionCurve objects and allow a researcher to calculate basic derivative parameters, such as the separation factor, PSI or selectivity as functions of the processing time. Similar to the DiffusionCurve objects, the plot() method allows one to plot a graph of a specified process parameter as a function of the processing time.

#### 7.7. Description of Partial Flux Calculation Algorithms

#### 7.8. Approximation of Permeance Functions

#### 7.9. Evaluation against Experimental Data

^{2}, the initial feed amount was 60 g and the absolute permeate pressure was measured to be 2 ± 1 kPa. The data on the performance of Romakon-PM 102 reported in [15] were used for modelling, and a description of the experimental setup and methods used is provided in the Supplementary Materials. The code used to model the experiment is given in Scheme 13, and the evaluation of the model obtained with PyVaporation against the experimental data is illustrated in Figure 6.

## 8. Conclusions

## Supplementary Materials

## Author Contributions

## Funding

## Acknowledgments

## Conflicts of Interest

## References

- Baker, R.W. Membrane Technology and Applications, 3rd ed.; John Wiley & Sons Ltd.: Chichester, UK, 2012. [Google Scholar]
- Dresner, L.; Johnson, J.S., Jr. Hyperfiltration (reverse osmosis). In Principles of Desalination; Academic Press: Cambridge, MA, USA, 1980; pp. 401–560. [Google Scholar] [CrossRef]
- Chen, X.Y.; Tien-Binh, N.; Kaliaguine, S.; Rodrigue, D. Polyimide membranes for gas separation: Synthesis, processing and properties. In Polyimides Synthesis, Applications and Research; Murphy, C., Ed.; Nova Science Publishers Inc.: New York, NY, USA, 2017; pp. 1–73. [Google Scholar]
- Bernardo, P.; Drioli, E.; Golemme, G. Membrane gas separation: A review/state of the art. Ind. Eng. Chem. Res.
**2009**, 48, 4638–4663. [Google Scholar] [CrossRef] - Luis, P. Pervaporation. In Fundamental Modelling of Membrane Systems; Elsevier: Amsterdam, The Netherlands, 2018; pp. 71–102. [Google Scholar] [CrossRef]
- Sridhar, S.; Moulik, S. Membrane Processes: Pervaporation, Vapor Permeation and Membrane Distillation for Industrial Scale Separations; Wiley: Hoboken, NJ, USA, 2018. [Google Scholar] [CrossRef]
- Chapman, P.D.; Oliveira, T.; Livingston, A.G.; Li, K. Membranes for the dehydration of solvents by pervaporation. J. Membr. Sci.
**2008**, 318, 5–37. [Google Scholar] [CrossRef] - Roy, S.; Thongsukmak, A.; Tang, J.; Sirkar, K.K. Concentration of aqueous hydrogen peroxide solution by pervaporation. J. Membr. Sci.
**2012**, 389, 17–24. [Google Scholar] [CrossRef] - Prasad, N.S.; Moulik, S.; Bohra, S.; Rani, K.Y.; Sridhar, S. Solvent resistant chitosan/poly (ether-block-amide) composite membranes for pervaporation of n-methyl-2-pyrrolidone/water mixtures. Carbohydr. Polym.
**2016**, 136, 1170–1181. [Google Scholar] [CrossRef] [PubMed] - Drioli, E.; Giorno, L. Encyclopedia of Membranes, 1st ed.; Springer: Berlin/Heidelberg, Germany, 2016. [Google Scholar] [CrossRef]
- Sanaeepur, H.; Ebadi Amooghin, A.; Bandehali, S.; Moghadassi, A.; Matsuura, T.; Van der Bruggen, B. Polyimides in membrane gas separation: Monomer’s molecular design and structural engineering. Prog. Polym. Sci.
**2019**, 91, 80–125. [Google Scholar] [CrossRef] - Sapegin, D.A.; Gubanova, G.N.; Kruchinina, E.V.; Volkov, A.Y.; Popova, E.N.; Vylegzhanina, M.E.; Setnickova, K.; Kononova, S.V. On the structure, morphology and transport through limitedly flexible chain sulfonated co-polyimide. Polymer
**2021**, 212, 123142. [Google Scholar] [CrossRef] - Heintz, A.; Stephan, W. A generalized solution—Diffusion model of the pervaporation process through composite membranes Part I. Prediction of mixture solubilities in the dense active layer using the UNIQUAC model. J. Membr. Sci.
**1994**, 89, 143–151. [Google Scholar] [CrossRef] - Koros, W.J.; Ma, Y.H.; Shimidzu, T. Terminology for membranes and membrane processes (IUPAC Recommendations 1996). Pure Appl. Chem.
**1996**, 68, 1479–1489. [Google Scholar] [CrossRef] - Sapegin, D.A.; Gubanova, G.N.; Kononova, S.V.; Kruchinina, E.V.; Saprykina, N.N.; Volkov, A.Y.; Vylegzhanina, M.E. Characterisation of Romakon™-PM pervaporation membranes for the separation of dilute aqueous alcohol mixtures. Sep. Purif. Technol.
**2020**, 240, 116605. [Google Scholar] [CrossRef] - Lipnizki, F.; Trägårdh, G. Modelling of pervaporation: Models to analyze and predict the mass transport in pervaporation. Sep. Purif. Methods
**2001**, 30, 49–125. [Google Scholar] [CrossRef] - Minelli, M.; Sarti, G.C. Permeability and diffusivity of CO
_{2}in glassy polymers with and without plasticization. J. Membr. Sci.**2013**, 435, 176–185. [Google Scholar] [CrossRef] - Drioli, E.; Zhang, S.; Basile, A. On the coupling effect in pervaporation. J. Membr. Sci.
**1993**, 81, 43–55. [Google Scholar] [CrossRef] - Zarca, R.; Ortiz, A.; Gorri, D.; Ortiz, I. A practical approach to fixed-site-carrier facilitated transport modeling for the separation of propylene/propane mixtures through silver-containing polymeric membranes. Sep. Purif. Technol.
**2017**, 180, 82–89. [Google Scholar] [CrossRef] - Sapegin, D.A.; Kononova, S.V.; Gubanova, G.N.; Kruchinina, E.V.; Saprykina, N.N.; Popova, E.N.; Vlasova, E.N. Selective facilitated fixed-site carrier transport of methanol through sulfonated copolyimide pervaporation membranes for the separation of methanol/toluene mixtures. Sep. Purif. Technol.
**2020**, 236, 116274. [Google Scholar] [CrossRef] - Way, J.D.; Noble, R.D. Competitive facilitated transport of acid gases in perfluorosulfonic acid membranes. J. Membr. Sci.
**1989**, 46, 309–324. [Google Scholar] [CrossRef] - Wijmans, J.G.; Baker, R.W. A simple predictive treatment of the permeation process in pervaporation. J. Membr. Sci.
**1993**, 79, 101–113. [Google Scholar] [CrossRef] - Vatankhah, F.; Moheb, A.; Mehrabani-Zeinabad, A. A study on the effects of feed temperature and concentration on design of a multi-stage pervaporation system for isopropanol-water separation using commercial available modules with inter-stage heating. J. Membr. Sci.
**2021**, 618, 118717. [Google Scholar] [CrossRef] - Yave, W. Separation performance of improved PERVAP membrane and its dependence on operating conditions. J. Membr. Sci. Res.
**2018**, 5, 216–221. [Google Scholar] [CrossRef] - Baker, R.W.; Wijmans, J.G.; Huang, Y. Permeability, permeance and selectivity: A preferred way of reporting pervaporation performance data. J. Membr. Sci.
**2010**, 348, 346–352. [Google Scholar] [CrossRef] - Gallego-Lizon, T.; Ho, Y.S.; Freitas dos Santos, L. Comparative study of commercially available polymeric and microporous silica membranes for the dehydration of IPA/water mixtures by pervaporation/vapour permeation. Desalination
**2002**, 149, 3–8. [Google Scholar] [CrossRef] - Luis, P.; Van der Bruggen, B. Pervaporation modeling: State of the art and future trends. In Pervaporation, Vapour Permeation and Membrane Distillation; Woodhead Publishing: Cambridge, UK, 2015; pp. 87–106. [Google Scholar] [CrossRef]
- Van Rossum, G.; Drake, F.L. Python 3 Reference Manual; CreateSpace: Scotts Valley, CA, USA, 2009. [Google Scholar]
- Virtanen, P.; Gommers, R.; Oliphant, T.E.; Haberland, M.; Reddy, T.; Cournapeau, D.; Burovski, E.; Peterson, P.; Weckesser, W.; Bright, J.; et al. SciPy 1.0: Fundamental algorithms for scientific computing in Python. Nat. Methods
**2020**, 17, 261–272. [Google Scholar] [CrossRef] - Chaparro, G.; Mejía, A. Phasepy: A Python based framework for fluid phase equilibria and interfacial properties computation. J. Comput. Chem.
**2020**, 41, 2504–2526. [Google Scholar] [CrossRef] [PubMed] - Available online: https://github.com/Membrizard/PyVaporation (accessed on 10 August 2022).
- Sapegin, D.A.; Gubanova, G.N.; Popova, E.N.; Kononova, S.V. Increasing the performance of asymmetric pervaporation membranes for the separation of methanol/methyl-tert-butyl ether mixtures by the introduction of sulfonated polyimide into the poly(amide-imide) matrix. J. Appl. Polym. Sci.
**2020**, 138, 49982. [Google Scholar] [CrossRef] - Hall, S. Rules of Thumb for Chemical Engineers; Elsevier: Amsterdam, The Netherlands, 2012. [Google Scholar] [CrossRef]
- Huang, R.Y.M.; Yeom, C.K. Pervaporation separation of aqueous mixtures using crosslinked polyvinyl alcohol membranes. III. Permeation of acetic acid-water mixtures. J. Membr. Sci.
**1991**, 58, 33–47. [Google Scholar] [CrossRef] - Renon, H. NRTL: An empirical equation or an inspiring model for fluids mixtures properties? Fluid Phase Equilibria
**1985**, 24, 87–114. [Google Scholar] [CrossRef] - Nagata, I.; Watanabe, T. Modification of the Wilson equation for correlating quaternary liquid-liquid equilibrium data. Thermochim. Acta
**1992**, 208, 43–59. [Google Scholar] [CrossRef] - Weidlich, U.; Gmehling, J. A modified UNIFAC model. 1. Prediction of VLE, hE, and. gamma..infin. Ind. Eng. Chem. Res.
**1987**, 26, 1372–1381. [Google Scholar] [CrossRef] - Anderson, T.F.; Prausnitz, J.M. Application of the UNIQUAC equation to calculation of multicomponent phase equilibria. 1. Vapor-liquid equilibria. Ind. Eng. Chem. Process Des. Dev.
**1978**, 17, 552–561. [Google Scholar] [CrossRef] - Vier, J. Pervaporation Azeotroper Wäriger Und Rein Organischer Stof-Fgemische-Verfahrensentwicklung Und Integration. Ph.D. Thesis, University of Aachen, Aachen, Germany, 1995. [Google Scholar]
- Sanchez, J.; Gîjiu, C.L.; Hynek, V.; Muntean, O.; Julbe, A. The application of transient time-lag method for the diffusion coefficient estimation on zeolite composite membranes. Sep. Purif. Technol.
**2001**, 25, 467–474. [Google Scholar] [CrossRef] - Fuoco, A.; Monteleone, M.; Esposito, E.; Bruno, R.; Ferrando-Soria, J.; Pardo, E.; Armentano, D.; Jansen, J.C. Gas transport in mixed matrix membranes: Two methods for time lag determination. Computation
**2020**, 8, 28. [Google Scholar] [CrossRef] - Python Package Index; Python Software Foundation: Wilmington, DE, USA, 2021; Available online: https://pypi.org/project/pyvaporation/1.1.4/ (accessed on 10 August 2022).
- Powell, M.J.D. An efficient method for finding the minimum of a function of several variables without calculating derivatives. Comput. J.
**1964**, 7, 155–162. [Google Scholar] [CrossRef] - Thiess, H.; Schmidt, A.; Strube, J. Development of a scale-up tool for pervaporation processes. Membranes
**2018**, 8, 4. [Google Scholar] [CrossRef] - Chang, J.-H.; Yoo, J.-K.; Ahn, S.-H.; Lee, K.-H.; Ko, S.-M. Simulation of pervaporation process for ethanol dehydration by using pilot test results. Korean J. Chem. Eng.
**1998**, 15, 28–36. [Google Scholar] [CrossRef]

**Figure 2.**Illustration of the Pervap 4100™ [24] diffusion curve fit (

**a**) with Equation (13) (initial water content 47.4 wt%) and modelled curves obtained by the introduction of the FR parameter (

**b**–

**d**).

**Scheme 2.**Creation of a Mixture object and calculation of the saturated vapour pressure of the components at 333.15 °K under a stated composition range.

**Scheme 4.**Loading of a Membrane object from a directory and calculation of some parameters based on a loaded IdealExperiments object. Data for Romakon-PM 102 membranes were taken from [15].

**Scheme 5.**Creation, calling and plotting of a PervaporationFunction object. The data on Pervap 2510’s performance in relation to the separation of water/isopropanol mixtures were taken from [23]. Three-dimensional plots generated in Python are interactive; (

**a**–

**c**) projections of H

_{2}O permeance fitted surface along with experimental data, (

**d**–

**f**) projections of iPOH permeance fitted surface along with experimental data, (

**g**) fitted H

_{2}O permeance as function of feed mixture concentration at 373.15 K (cut of the permeance surface at 373.15 K).

**Scheme 6.**Creation of a Pervaporation object and modelling of an ideal diffusion curve (permeance is assumed to be independent of feed composition) of Romakon PM 102 membranes [15] at 335.15 K; plotting of partial fluxes and the separation factor as functions of water weight fraction in the feed.

**Scheme 7.**Creation of a Pervaporation object and modelling of a non-ideal diffusion curve (permeance is assumed dependent on the feed composition) for Romakon PM 102 membranes [15] at 335.15 K.

**Scheme 9.**Creation of a ProcessModel object; modelling the ideal isothermal process of H

_{2}O/EtOH mixture separation with a Romakon PM 102 membrane [15]; (

**a**) water concentration in feed as a function of process time, (

**b**) total feed amount as a function of process time.

**Scheme 10.**Illustration of the influence of the precision value on the obtained flux values. Data for PAI-SPI (1 wt%) membrane’s performance in relation to the separation of methanol/MTBE mixtures were taken from [32].

**Scheme 11.**Example of fitting experimental data with the find_best_fit() function; Experimental data on SPI pervaporation performance were taken from [20]; (

**a**) fitting of water permeance as a function of feed mixture concentration along with experimental data, (

**b**) fitting of ethanol permeance as a function of feed mixture concentration along with experimental data.

**Scheme 13.**Modelling a non-ideal isothermal process of water/ethanol mixture concentration with Romakon-PM 102 membranes.

**Figure 6.**Comparison of the modelling results (curve) and experimental data (dots) regarding the isothermal water/ethanol mixture concentration at 68.8 °C with Romakon-PM 102 membranes.

**Scheme 14.**Modelling of a non-ideal non-isothermal process described in [45].

**Figure 7.**Illustration of modelling a non-isothermal non-ideal process described in [45] with PyVaporation (curves), along with the corresponding experimental results (dots); (

**a**) feed temperature as a function of membrane area; (

**b**) weight fraction of water in feed as a function of membrane area.

Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |

© 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).

## Share and Cite

**MDPI and ACS Style**

Sapegin, D.A.; Chekmachev, A.V.
PyVaporation: A Python Package for Studying and Modelling Pervaporation Processes. *Membranes* **2022**, *12*, 784.
https://doi.org/10.3390/membranes12080784

**AMA Style**

Sapegin DA, Chekmachev AV.
PyVaporation: A Python Package for Studying and Modelling Pervaporation Processes. *Membranes*. 2022; 12(8):784.
https://doi.org/10.3390/membranes12080784

**Chicago/Turabian Style**

Sapegin, Denis Andzheevich, and Aleksei Viktorovich Chekmachev.
2022. "PyVaporation: A Python Package for Studying and Modelling Pervaporation Processes" *Membranes* 12, no. 8: 784.
https://doi.org/10.3390/membranes12080784