Metadata-Version: 2.1
Name: pygaps
Version: 1.4.0
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
Description: ========
        Overview
        ========
        
        pyGAPS (Python General Adsorption Processing Suite) is a framework for adsorption data analysis written in python 3.
        
        
        
        
        Features
        ========
        
            - Advanced adsorption data import and manipulation
            - Routine analysis such as BET surface area, t-plot, alpha-s method
            - 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 modelling (Henry, Langmuir, DS/TS Langmuir, etc..)
            - IAST calculations for binary and multicomponent adsorption
            - Isosteric heat 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
        =============
        
        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
        
        
        Installation
        ============
        
        The easiest way to install pyGAPS is from the command line.
        Make sure that you have `numpy`, `scipy`, `pandas` and `matplotlib` already installed.
        
        .. code-block:: bash
        
            pip install pygaps
        
        On Windows, `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:: bat
        
            conda create -n py3 python=3 numpy scipy pandas matplotlib
            activate py3
            pip install pygaps
        
        Alternatively, to install the development branch, clone the repository from Github.
        Then install the package with setuptools, either in regular or developer mode.
        
        .. code-block:: bash
        
            git clone https://github.com/pauliacomi/pyGAPS
        
            # then install
        
            python setup.py install
        
            # or developer mode
        
            python setup.py develop
        
        Development
        ===========
        
        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:
        
        .. list-table::
            :widths: 10 90
            :stub-columns: 1
        
            - - 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
        
        .. code-block:: bash
        
            python setup.py test
        
            # or run pytest
        
            pytest
        
        Alternatively, you can depend on travisCI for the testing, which will be slower overall
        but should have all the environments required.
        
        Questions?
        ==========
        
        I'm more than happy to answer any questions. Shoot me an email at paul.iacomi@univ-amu or find
        me on some social media.
        
        For any bugs found, please open an `issue <https://github.com/pauliacomi/pyGAPS/issues/>`__ or, If
        you feel like you can do the fix yourself, 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.
        
        
        Changelog
        =========
        
        
        1.4.0 (2018-11-10)
        ------------------
        
        Features:
        
        * Added the GAB isotherm model
        
        Bugfixes:
        
        * Improved pore size distribution calculations to display cumulative pore
          volume when called.
        * Fixed the "all-nol" selection parameter for legend display in isotherm
          graphs.
        
        1.3.0 (2018-08-13)
        ------------------
        
        Features:
        
        * Added an excel import which can take Micromeritics or
          Belsorp report (.xls) files. Micromeritics code was
          taken from the `official python repo <https://github.com/Micromeritics/micromeritics>`_.
        * Added an import option which can read and import Belsorp
          data (.DAT) files.
        * Improved plotting functions to allow for more customisation
          over how the graph looks.
        * The extra arguments to print_info() are now passed to the plotting
          function allowing for styles such as ``8``.
        
        Breaking changes:
        
        * The unique isotherm ID is now generated only on a small subset of
          properties instead of all isotherm properties.
        * The isotherm 'other_properties' subdictionary has been removed.
          Instead, all isotherm properties are now direct members of the
          class.
        * When plotting, isotherm branches are now defined as 'ads', 'des'
          'all' (both branches) and 'all-nol' (both branches without
          legend entry) instead of a list of branches.
        * Plot types are now universal. Any property can be plotted
          against any other property by specifying the x_data,
          y1_data and y2_data.
        
        Bugfixes:
        
        * Fixed 'source' not being recognised as an isotherm field
        * Re-worked plot_iso color selection to avoid errors (``10``)
        * Re-worked plot_isp legend placement to ensure no overlap
        * Added correct common name for ethylene, propylene, methanol
          and ethanol in the database
        * Renamed some model parameters for consistency
        * A lot of typo fixes
        
        
        1.2.0 (2018-02-19)
        ------------------
        
        Features:
        
        * The plotting legend now works with any isotherm attribute specified
        * Changed model parent class to print out model name when displayed
        * Added Toth and Jensen-Seaton models to the IAST calculation (spreading pressure is computed
          numerically using scipy.integrate.quad, ``7``)
        
        Bugfixes:
        
        * Fixed an issue where the returned IAST selectivity v pressure data would not include all pressures
        * Changed sqlite retrieval order to improve performance (``2``)
        * Fixed an error where IAST vle data was plotted opposite to the graph axes
        * Fixed a mistake in the Jensen-Seaton equation
        * Fixed a mistake in the FH-VST equation
        
        1.1.1 (2018-02-11)
        ------------------
        
        Features:
        
        * Allowed for branch selection for isosteric heat and fixed an error where this was an issue (``3``)
        
        Bugfixes:
        
        * Fixed an issue when plotting isotherms with and without secondary data simultaneously
        * Fixed error with magnitude of polarizability of adsorbate from database in microporous PSD
        
        
        1.1.0 (2018-01-24)
        ------------------
        
        * Automatic travis deployment to PyPI
        * Improved enthalpy modelling for initial enthalpy determination
        * Improved documentation
        
        1.0.1 (2018-01-08)
        ------------------
        
        * Fixed wrong value of polarizability for nitrogen in database
        * Added a check for initial enthalpy when the isotherm is measured in supercritical mode
        
        1.0.0 (2018-01-01)
        ------------------
        
        * Improved unit management by adding a unit/basis for both the
          adsorbent (ex: amount adsorbed per g, kg or cm3 of material
          are all valid) and loading (ex: mmol, g, kg of gas adsorbed
          per amount of material are all valid)
        * Separated isotherm models so that they can now be easily
          created by the used.
        * Added new isotherm models: Toth, Jensen-Seaton, W-VST, FH-VST.
        * Made creation of classes (Adsorbate/Sample/Isotherms) more
          intuitive.
        * Many small fixes and improvements
        
        0.9.3 (2017-10-24)
        ------------------
        
        * Added unit_adsorbate and basis_loading as parameters for an isotherm,
          although they currently do not have any influence on data processing
        
        0.9.2 (2017-10-24)
        ------------------
        
        * Slightly changed json format for efficiency
        
        0.9.1 (2017-10-23)
        ------------------
        
        * Better examples
        * Small fixes and improvements
        
        0.9.0 (2017-10-20)
        ------------------
        
        * Code is now in mostly working state.
        * Manual and reference are built.
        
        
        0.1.0 (2017-07-27)
        ------------------
        
        * First release on PyPI.
        
Keywords: adsorption,science,porous materials
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
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.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Topic :: Scientific/Engineering :: Physics
Provides-Extra: reST
