pyGAPS (Python General Adsorption Processing Suite) is a framework for adsorption data analysis written in Python 3.
status | |
---|---|
docs | |
license | |
tests | |
package |
- Advanced adsorption data import and manipulation
- Routine analysis such as BET/Langmuir surface area, t-plot, alpha-s, Dubinin plots etc.
- Pore size distribution calculations for mesopores (BJH, Dollimore-Heal)
- Pore size distribution calculations for micropores (Horvath-Kawazoe)
- Pore size distribution calculations using DFT kernels
- Isotherm model fitting (Henry, Langmuir, DS/TS Langmuir, etc..)
- IAST calculations for binary and multicomponent adsorption
- Isosteric enthalpy of adsorption calculations
- Parsing to and from multiple formats such as Excel, CSV and JSON
- An sqlite database backend for storing and retrieving data
- Simple methods for isotherm graphing and comparison
A peer-reviewed paper regarding pyGAPS is currently in the process of being published. In the meantime, consider citing the preprint if you use the program in your work.
Paul Iacomi, Philip L. Llewellyn, 2019. pyGAPS: A Python-Based Framework for Adsorption Isotherm Processing and Material Characterisation. https://doi.org/10.26434/chemrxiv.7970402.v1
For more info, as well as a complete manual and reference visit:
https://pygaps.readthedocs.io/
Most of the examples in the documentation are actually in the form of Jupyter Notebooks which are turned into webpages with nbsphinx. You can find them for download in:
https://github.com/pauliacomi/pyGAPS/tree/master/docs/examples
The easiest way to install pyGAPS is from the command line. Make sure that you have numpy, scipy, pandas and matplotlib, as well as CoolProp already installed.
pip install pygaps
Anaconda/Conda is your best bet since it manages environments for you. First create a new environment and use conda to install the dependencies (or start with one that already has a full instalation). Then use pip inside your environment.
conda create -n py3 python=3 numpy scipy pandas matplotlib CoolProp
conda activate py3
pip install pygaps
Alternatively, to install the development branch, clone the repository from Github. Then install the package with pip or setuptools, either in regular or developer mode.
git clone https://github.com/pauliacomi/pyGAPS
// then install
pip install ./ # pip
python setup.py install # setuptools
// or developer mode
pip install -e ./ # pip
python setup.py develop # setuptools
If you have all the python environments needed to run the entire test suite, use tox. To run the all tests run:
tox
Note, to combine the coverage data from all the tox environments run:
Windows | set PYTEST_ADDOPTS=--cov-append tox |
---|---|
Other | PYTEST_ADDOPTS=--cov-append tox |
For testing only with the environment you are currently on, run instead
python setup.py test
# or run pytest
pytest
Alternatively, you can depend on TravisCI for testing, which will be slower overall but should have all the environments required.
I'm more than happy to answer any questions. Shoot an email to mail( at )pauliacomi.com or find me on some social media.
For any bugs found, please open an issue or, even better, submit a pull request. It'll make my life easier. This also applies to any features which you think might benefit the project.