Skip to main content

🧪 PyMemSim

PyMemSim

PyPI Downloads PyPI Python Version License

PyMemSim is a Python package for membrane-process simulation, with a current focus on hollow-fiber membrane (HFM) models.

⚙️ Package Functionalities

Current capabilities include:

  • Hollow-fiber membrane simulation through the HFM interface and create_hfm_module(...) factory.
  • Gas-phase and liquid-phase HFM modeling.
  • physical and scale modeling modes.
  • Isothermal and non-isothermal simulation setup.
  • Dual-side inlet specification (feed/permeate flows, temperatures, pressures).
  • Constant-pressure operation for feed and permeate sides.
  • Component-wise transport coefficients for gas and liquid systems.
  • Solver-based simulation (scipy.integrate.solve_ivp for IVP and scipy.integrate.solve_bvp via solver_bvp for BVP) with configurable solver options.

📦 Installation

Install from PyPI:

pip install PyMemSim

Quick version check:

import pymemsim as pms
print(pms.__version__)

🚀 Usage Examples

For a complete end-to-end setup (thermo source, options, model inputs, module creation, and simulation), see:

  • examples/hfm/gas-hfm-exp-1.py
  • examples/hfm/gas-hfm-exp-2.py

You can also review:

  • examples/hfm/liquid-hfm-exp-1.py

🔄 Co-current vs Counter-current (Gas HFM)

The gas HFM examples show how to switch the membrane flow arrangement through:

  • HollowFiberMembraneOptions(..., flow_pattern="co-current")
  • HollowFiberMembraneOptions(..., flow_pattern="counter-current")

Reference examples:

  • examples/hfm/gas-hfm-exp-1.py: co-current case (flow_pattern_to_run = "co-current"), solved with IVP-style solver options (Radau, rtol, atol).
  • examples/hfm/gas-hfm-exp-2.py: counter-current case (flow_pattern_to_run = "counter-current"), solved with solver_bvp and BVP-style options (mesh_points, tol, bc_tol, max_nodes).

You can run either arrangement in both files by changing flow_pattern_to_run to "co-current" or "counter-current".

🛠️ Development Status

PyMemSim is under active development. APIs, model options, and behaviors may change in future releases.

📄 License

This project is licensed under the Apache-2.0 License. You are free to use, modify, and distribute this software in your own applications or projects. However, if you choose to use this app in another app or software, please ensure that my name, Sina Gilassi, remains credited as the original author. This includes retaining any references to the original repository or documentation where applicable. By doing so, you help acknowledge the effort and time invested in creating this project.

❓ FAQ

For any question, contact me on LinkedIn

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pymemsim-0.4.0.tar.gz (81.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pymemsim-0.4.0-py3-none-any.whl (90.3 kB view details)

Uploaded Python 3

File details

Details for the file pymemsim-0.4.0.tar.gz.

File metadata

  • Download URL: pymemsim-0.4.0.tar.gz
  • Upload date:
  • Size: 81.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.3

File hashes

Hashes for pymemsim-0.4.0.tar.gz
Algorithm Hash digest
SHA256 36146acc4b22e2c2ff5c253b74e2256c95dfffd8e7b0c3aab1234d2a1074376e
MD5 53eb64c2e3f0afd4dab8a0f8473099f9
BLAKE2b-256 8d6749a560617241799b535df390a499f627081376b318878fa52b53ef000282

See more details on using hashes here.

File details

Details for the file pymemsim-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: pymemsim-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 90.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.3

File hashes

Hashes for pymemsim-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cdd658a108017e0022b8b1fd3a44e6c522914e4266a5afc406a0aaebc921e06e
MD5 bade344cf17e5f3582d85d89483572b3
BLAKE2b-256 16f934711788cff6a7dd0f87acc0a69ce41a7965dc957439eaae77a70378147f

See more details on using hashes here.

Release history Release notifications | RSS feed

0.5.0

2 files

This release

0.4.0 This release

2 files

0.3.1

2 files

0.3.0

2 files

0.2.1

2 files

0.2.0

2 files

0.1.1

2 files

0.1.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page