Metadata-Version: 2.1
Name: pygaps
Version: 2.0.1
Summary: A framework for processing adsorption data for porous materials
Home-page: https://github.com/pauliacomi/pygaps
Author: Paul Iacomi
Author-email: iacomi.paul@gmail.com
License: MIT license
Project-URL: Documentation, https://pygaps.readthedocs.io
Project-URL: Source Code, https://github.com/pauliacomi/pygaps
Keywords: adsorption,characterization,porous materials
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: Unix
Classifier: Operating System :: POSIX
Classifier: Operating System :: Microsoft :: Windows
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Intended Audience :: Science/Research
Classifier: Topic :: Scientific/Engineering :: Physics
Requires-Dist: numpy (>=1.13)
Requires-Dist: scipy (>=1.0.0)
Requires-Dist: pandas (>=0.21.1)
Requires-Dist: matplotlib (>=2.1)
Requires-Dist: xlrd (>=1.1)
Requires-Dist: xlwt (>=1.3)
Requires-Dist: coolprop (>=6.0)
Requires-Dist: requests
Provides-Extra: dev
Requires-Dist: isort ; extra == 'dev'
Requires-Dist: pylint ; extra == 'dev'
Requires-Dist: flake8 ; extra == 'dev'
Requires-Dist: autopep8 ; extra == 'dev'
Requires-Dist: pydocstyle ; extra == 'dev'
Requires-Dist: bump2version ; extra == 'dev'
Provides-Extra: docs
Requires-Dist: docutils (>=0.11doc8) ; extra == 'docs'
Requires-Dist: pandoc ; extra == 'docs'
Requires-Dist: restructuredtext-lint ; extra == 'docs'
Requires-Dist: sphinx ; extra == 'docs'
Requires-Dist: nbsphinx ; extra == 'docs'
Requires-Dist: sphinx-rtd-theme ; extra == 'docs'

========
Overview
========

pyGAPS (Python General Adsorption Processing Suite) is a framework for
adsorption data analysis and fitting written in Python 3.




Features
========

    - 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

Documentation
=============

The framework is well documented, with in-depth explanations, examples and
theory. An `online documentation <https://pygaps.readthedocs.io/>`__ is available
for this purpose.
If you are familiar with Python and adsorption theory and want to jump right
in, look at the `quickstart section
<https://pygaps.readthedocs.io/en/latest/examples/quickstart.html>`__.
Examples on each of the capabilities specified above can be found
in the `examples <https://pygaps.readthedocs.io/en/latest/examples/index.html>`__.
Most of the examples in the documentation are actually Jupyter Notebooks.
You can download them and run them yourself from the
`/docs/examples <https://github.com/pauliacomi/pyGAPS/tree/master/docs/examples>`__
folder.

To become well familiarised with the concepts introduced by pyGAPS,
such as what is an Isotherm, how units work, what data is required
and can be stored etc., a deep dive is available in the
`manual <https://pygaps.readthedocs.io/en/latest/manual/index.html>`__.

Finally, having a strong grasp of the science of adsorption is recommended,
to understand the strengths and shortcomings of various methods. We have
done our best to explain the theory and application range of each
capability and model. To learn more, look at the
`reference <https://pygaps.readthedocs.io/en/latest/reference/index.html>`__
or simply call ``help()`` from a python interpreter (for example
``help(pygaps.area_BET)``.

Citing
======

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

Installation
============

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.

.. code-block:: bash

    pip install pygaps

`Anaconda/Conda <https://www.anaconda.com/>`__ 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.

.. code-block:: bash

    conda create -n myenv python=3 numpy scipy pandas matplotlib
    conda activate myenv
    pip install pygaps

To install the development branch, clone the repository from GitHub.
Then install the package with pip either in regular or developer mode.

.. code-block:: bash

    git clone https://github.com/pauliacomi/pyGAPS

    # then install
    pip install pyGAPS/

    # or developer mode
    pip install -e pyGAPS/

Development
===========

If you want to contribute to pyGAPS or develop your own code
from the package, check out the detailed information
`here <CONTRIBUTING.rst>`__.

Bugs or questions?
==================

For any bugs found, please open an
`issue <https://github.com/pauliacomi/pyGAPS/issues/>`__ or, even better,
submit a `pull request <https://github.com/pauliacomi/pyGAPS/pulls/>`__.
It'll make my life easier.
This also applies to any features which you think might benefit the project.
I'm also more than happy to answer any questions. Shoot an email to
mail( at )pauliacomi.com or find me on
at https://pauliacomi.com or on `Twitter <https://twitter.com/i0_stream>`__.


