This program is used to analyse the breakthrough curves generated by adsorption in the rig created by Dr E.G (in the lab as of 1st of September 2022).
The folders include:
- Code
- Contains the python script
- Explaining program
- This contains a jupyter notebook explaining how to use the Python script and some extra information if neeeded
- Generating results
- Contains a simple jupyter notebook with the essentials needed to run and produce the required outputs
There are two ways to interact with this package.
1. Local installation
- Install via pip, (
pip install AdsorptionBreakthroughAnalysis
) - Cloning the github repo (
git clone https://github.com/dm937/Adsorption_Breakthrough_Analysis/
) - Use the jupyter notebook locally. (Check
Explaining program/Explaining_program.ipynb
)
2. Using the online notebook (easy)
- Using the online notebook
If you are unfamiliar with pip then we recommend using online notebook.
The program takes in MS and coriolis readings and then creates a dataframe containing only the relevant breakthrough data
This is done by the use of classes. Each part of the experiment will be an object containing the related data. for example 14%_CO2_UiO66_sample may be one object.
To create the object setup the ExperimentalSetup dictionary with the relevant values and the MS and coriolis files must be in the same folder and inputted to the ExperimentalSetup aswell. The object is then created by calling the class and inputting the relevant conditions.
Once a blank and sample object are created you can call the standard output function in order to produce the standard set of results.
This is all explained further (with functions/methods called in code cells) in the "Explaining program" notebook
This work is part of the PrISMa Project (299659), funded through the ACT Programme (Accelerating CCS Technologies, Horizon 2020 Project 294766). Financial contributions from the Department for Business, Energy & Industrial Strategy (BEIS) together with extra funding from the NERC and EPSRC Research Councils, United Kingdom, the Research Council of Norway (RCN), the Swiss Federal Office of Energy (SFOE), and the U.S. Department of Energy are gratefully acknowledged. Additional financial support from TOTAL and Equinor is also gratefully acknowledged. This work is also part of the USorb-DAC Project, which is supported by a grant from The Grantham Foundation for the Protection of the Environment to RMI’s climate tech accelerator program, Third Derivative.
The code in this package is licensed under the MIT License.
This package was created with @audreyfeldroy's cookiecutter package using @cthoyt's cookiecutter-snekpack template.
See developer instructions
To install in development mode, use the following:
$ git clone git+https://github.com/RCCS-CaptureTeam/Adsorption_Breakthrough_Analysis.git
$ cd Adsorption_Breakthrough_Analysis
$ pip install -e .
After cloning the repository and installing tox
with pip install tox
, the unit tests in the tests/
folder can be
run reproducibly with:
$ tox
Additionally, these tests are automatically re-run with each commit in a GitHub Action.
The documentation can be built locally using the following:
$ git clone git+https://github.com/RCCS-CaptureTeam/Adsorption_Breakthrough_Analysis.git
$ cd Adsorption_Breakthrough_Analysis
$ tox -e docs
$ open docs/build/html/index.html
The documentation automatically installs the package as well as the docs
extra specified in the setup.cfg
. sphinx
plugins
like texext
can be added there. Additionally, they need to be added to the
extensions
list in docs/source/conf.py
.
After installing the package in development mode and installing
tox
with pip install tox
, the commands for making a new release are contained within the finish
environment
in tox.ini
. Run the following from the shell:
$ tox -e finish
This script does the following:
- Uses Bump2Version to switch the version number in the
setup.cfg
,src/AdsorptionBreakthroughAnalysis/version.py
, anddocs/source/conf.py
to not have the-dev
suffix - Packages the code in both a tar archive and a wheel using
build
- Uploads to PyPI using
twine
. Be sure to have a.pypirc
file configured to avoid the need for manual input at this step - Push to GitHub. You'll need to make a release going with the commit where the version was bumped.
- Bump the version to the next patch. If you made big changes and want to bump the version by minor, you can
use
tox -e bumpversion -- minor
after.