Skip to main content

Calculator for the CO2 parasitic energy from CO2 and N2 isotherms

Project description


calc_pe computes the parasitic energy for CO2 capture from CO2 and N2 isotherms.


git clone
cd calc_pe
pip install .

Input and run

$ calc_pe Mg-MOF74 coal -rho 914.88 -cp 896 -process TPSA -datapath ./tests/

See calc_pe --help for the input description.

Use calc_pe --log for printing the debug log file.


  • The isotherm data should be put in the {datapath}/{structure_name} folder.

  • The temperature at which the isotherm data is calculated is automatically read from the filename {datapath}/{structure_name}/{adsorbate_name}/{temperature}.csv.

  • Isotherms are fitted using pyiast.InterpolatorIsotherm with fill_value = uptake.max(). Therefore, the isotherm should be well saturated, because for higher pressures the loading is extrapolated as the maximum uptake.

  • The heat of adsorption (HoA) needs to be provided in kJ/mol for all the loading pressures of the isotherm. It is needed to shift the original isotherm to a new temperature using the Classius-Clapyeron equation. Note that the HoA is defined here with a NEGATIVE value.

  • You can provide density and cp as single value files cp.csv and rho.csv: see the tests as example.

  • For testing the minimal inputs are:

$ cd tests/
$ calc_pe Mg-MOF74 coal
$ calc_pe HKUST-1 coal


In the output, the program prints:

Mg-MOF74: PE(MJ/kg)= 0.867: Pd(bar)= 0.01 Td(K)= 333.0 EL(-) = 0.235 Q(MJ/kg)= 0.124 Wcomp(MJ/kg)= 0.743 WCv(kg/m3)= 114.655 WCg(kg/kg)= 0.193 pur(-)= 0.967
  • Name of the adsorbent
  • PE(MJ/kg): parasitic energy per kg of CO2 (Note: PE=Q+Wcomp)
  • Pd(bar): optimal desorption pressure
  • Td(K): optimal desorption temperature
  • EL(J/J): fraction of electricity loss
  • Q(MJ/kg): heat requirement
  • Wcomp(MJ/kg): compression work
  • WCv(kg/m3): volumetric working capacity, i.e., mass of CO2 produced per m2 of bed, considering -vf void fraction.
  • WCg(kg/kg): gravimetric working capacity, i.e., mass of CO2 produced per kg of bed, considering -vf void fraction.
  • pur(mol/mol): molar fraction of CO2 final purity (-)

A warning is printed in case of negative working capacity for all the tested desorption conditions, e.g.:

$ calc_pe HKUST-1 air
HKUST-1: Unfeasible process!


  • The Henry coefficient for CO2 is a good pre-screening parameter

  • The working capacity is also very important, since it allows for less cycles using the same amount of adsorbent (or less adsorbent needed with the same cycles).

  • The final CO2 purity is less than the imposed purity, -yd (default: 0.99): we use the yd value as an approximation of the gas phase at desorption to get the uptake in the adsorbent at the desorption condition (using IAST). Note that the PE is not very sensitive to yd (see Joos et al. (2016)) and there is not a motivated need for reiteration. The final CO2 purity is computed as the working capacity of CO2 over the sum of the working capacities of both CO2 and N2.

  • By default the program prints the results for optimal PE (i.e., the lowest). However, one can search for other optimal parameters by using the -opt command: lowest Q if he is not interest in compressing the CO2, highest working capacity (WC) or highest CO2 final purity (pur). Note that these may not be anymore optimization problems, returning just the max/min T and P conditions.


calc_pe uses:


If you use calc_pe, please consider citing:

This program has been used in:


  • Johanna M. Huck
  • Li-Chiang Lin
  • Cory M. Simon
  • Adam Berger
  • Daniele Ongari (restyling, December 2018)

Project details

Download files

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

Files for calc-pe, version 1.0.1
Filename, size File type Python version Upload date Hashes
Filename, size calc_pe-1.0.1-py2.py3-none-any.whl (9.9 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size calc_pe-1.0.1.tar.gz (9.7 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page