pyvaporation

The solution for modelling pervaporation membrane performance based on experimental data

https://github.com/membrizard/pyvaporation

Science Score: 57.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 2 DOI reference(s) in README
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (16.8%) to scientific vocabulary

Keywords

chemical-engineering diffusion environmental-engineering heat-capacity membranes modelling-tool pervaporation physics process-simulation python scientific scipy thermodynamics uniquac vapor-liquid-equilibrium vaporisation-heat vapour-pressure
Last synced: 6 months ago · JSON representation ·

Repository

The solution for modelling pervaporation membrane performance based on experimental data

Basic Info
Statistics
  • Stars: 75
  • Watchers: 1
  • Forks: 4
  • Open Issues: 2
  • Releases: 15
Topics
chemical-engineering diffusion environmental-engineering heat-capacity membranes modelling-tool pervaporation physics process-simulation python scientific scipy thermodynamics uniquac vapor-liquid-equilibrium vaporisation-heat vapour-pressure
Created almost 4 years ago · Last pushed almost 3 years ago
Metadata Files
Readme License Citation

README.md

CI

For simplification of the package usage we have built the Pervaporation Modelling App

The app allows performing basic calculations available in the package using a User-friendly web-based UI.

This solution is designed specifically to assist Researchers in the field of Pervaporation membranes development. By means of the proposed instrument one can easily model a performance of a particular membrane with known permeance (Pi - GPU, SI, kg/(m2 * h * kPa)) and apparent energy of transport activiation (Ea - J/mol) values for each component of a considered binary mixture, if the transport is considered Ideal (Permeances are not dependent on the mixture composition)

Or, given that the diffusion curve set of a non-ideal process is measured one can model the non-ideal process in isothermal or non-isothermal (adiabatic) mode. Non-isothermal modelling for both type of processes supports self-cooling mode, or temperature program mode.

The comprehensive review of the theoretical background, applicability and code-examples may be found here

Following mixtures are Currently built into the solution:

(Current version supports only binary mixtures)

  • H2O/MeOH
  • H2O/EtOH
  • H2O/IPOH
  • H2O/Acetic acid
  • MeOH/toluene
  • MeOH/Methyl-tert-butyl ether
  • MeOH/Dimethylcarbonate
  • EtOH/Ethyl-tert-butyl ether

Assumptions and applicability

  • The activity coefficients of the binary mixture are calculated by means of NRTL or UNIQUAC model
  • Saturated vapour pressure could be assessed using Antoine or Frost equations
  • Vaporisation/Condensation heat values are calculated using Clapeyron-Clausius equation
  • Specific heat capacities are calculated using polynomial approximation
  • The ideal modelling process is applicable only for the processes, where permeance values do not depend significantly on mixture composition
  • The non-ideal modelling is performed only on the basis of specified diffusion curves (Fluxes/Permeances of each component as a function of first component concentration in feed)
  • Non-Ideal modelling supports non-linear dependencies of permeances and activation energies on feed composition
  • Non-Isothermal processes support pre-defined temperature program (feed temperature as a function of process time may be specified for process modelling)

Installation

Requirements:

python 3.7 or higher

To install: pip install pyvaporation

Code examples

You can run code-examples.ipynb from github.com/Membrizard/PyVaporation/code-examples.ipynb in order to check the package functionality.

Hints for general usage

  • Pre-configured default membranes are located in ./tests/default_membranes
  • VLE data used to fit UNIQUAC Parameters of default mixtures is located in ./tests/VLE_data
  • VLE data for a mixture could be fitted with a UNIQUAC model using fit_vle( data: VLEPoints, method: typing.Optional[str] = None, ) -> UNIQUACParameters
  • To run automated tests for all the modules: python -m pytest -sv tests/

Owner

  • Name: Denis Sapegin
  • Login: Membrizard
  • Kind: user
  • Company: Quantori

An experienced Chemist and Chemical process engineer passionate about helpful solutions for scientists.

Citation (CITATION.cff)

cff-version: 1.1.4
message: "If you use this software, please cite it as below."
authors:
- family-names: "Sapegin"
  given-names: "Denis Andzheevich"
  orcid: "https://orcid.org/0000-0002-1446-6288"
- family-names: "Chekmachev"
  given-names: "Aleksei Viktorovich"
title: "PyVaporation"
version: 1.1.4
date-released: 2022-07-18
url: "https://github.com/Membrizard/PyVaporation"
preferred-citation:
  type: article
  authors:
  - family-names: "Sapegin"
    given-names: "Denis Andzheevich"
    orcid: "https://orcid.org/0000-0002-1446-6288"
  - family-names: "Chekmachev"
    given-names: "Aleksei Viktorovich"
  doi: "10.3390/membranes12080784"
  journal: "Membranes"
  month: 8
  article-number: 784
  title: "PyVaporation: A Python Package for Studying and Modelling Pervaporation Processes"
  issue: 8
  volume: 12
  year: 2022

GitHub Events

Total
  • Watch event: 3
Last Year
  • Watch event: 3

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 409
  • Total Committers: 4
  • Avg Commits per committer: 102.25
  • Development Distribution Score (DDS): 0.21
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Membrizard d****n@q****m 323
Alexey Chekmachev a****v@g****m 78
Alexey Chekmachev a****v@a****m 7
Oleg Ivashov i****9@g****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 20
  • Total pull requests: 22
  • Average time to close issues: 25 days
  • Average time to close pull requests: 3 days
  • Total issue authors: 2
  • Total pull request authors: 3
  • Average comments per issue: 0.6
  • Average comments per pull request: 0.05
  • Merged pull requests: 15
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • Membrizard (18)
  • pajeeloy (2)
Pull Request Authors
  • Membrizard (15)
  • pajeeloy (6)
  • Ivashkaization (1)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 70 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 15
  • Total maintainers: 1
pypi.org: pyvaporation

Set of tools for modelling pervaporation processes

  • Versions: 15
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 70 Last month
Rankings
Dependent packages count: 6.6%
Stargazers count: 8.4%
Downloads: 12.0%
Average: 14.7%
Forks count: 15.7%
Dependent repos count: 30.6%
Maintainers (1)
Last synced: 6 months ago

Dependencies

requirements.txt pypi
  • attr ==0.3.1
  • attrs ==21.4.0
  • joblib ==1.1.0
  • matplotlib ==3.5.2
  • pandas ==1.3.5
  • scipy ==1.7.3
setup.py pypi
  • attr ==0.3.1
  • attrs ==21.4.0
  • joblib ==1.1.0
  • matplotlib ==3.5.2
  • pandas ==1.3.5
  • scipy ==1.7.3
.github/workflows/python-package.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v3 composite
.github/workflows/python-publish.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v3 composite
  • pypa/gh-action-pypi-publish 27b31702a0e7fc50959f5ad993c78deac1bdfc29 composite