Skip to main content

A python module of determining adsorption energies from temperature programmed desorption curves

Project description

TPD analysis for first order desorption process

Details

Calculate the adsorption energy, configurational entropy and adsorbate-adsorbate interaction parameter for first order desorption from TPD curves.

Equations used to fit are described in the manuscipt: How to Extract Adsorption Energies, Adsorbate-adsorbate Interaction Parameters, and Saturation Coverages from Temperature Programmed Desorption Experiments (link)

Installation

The package can be installed via

pip install tpd-analyse

Usage

All inputs must be passed to the central class PlotTPD. An example of some possible inputs are shown below.

    TPDClass = PlotTPD(exp_data=files,
                        order=order,
                        thermo_ads=vibration_energies_ads,
                        thermo_gas=vibration_energies_gas,
                        plot_temperature=np.linspace(100, 500, 50), 
                        T_switch=T_switch_211,
                        T_max=T_max_211,
                        T_rate_min=T_rate_min_211,
                        beta=beta_211)
  1. exp_data: list of filenames. Each filename must be of the format exposure_<some_value>.csv where some_value can be the exposure in any units.
  2. order: currently only first order desorption reactions are implemented, so order=1
  3. thermo_ads: Here the ase class HarmonicThermo can be passed with the required inputs for the adsorbate(s) of interest. More information about the class can be found here.
  4. thermo_gas: Similar to the thermo_ads, only for gas molecules. One option is to use IdealGasThermo
  5. plot_temperature: A temperature range that the equibirium coverage can be determined in. An example range would be `np.linspace(100, 500)
  6. T_switch: Is there are more than one processes occuring in one TPD plot, supply a list of temperatures to switch from one to another in K.
  7. T_max: Maximum temperature to consider for all the TPDs.
  8. T_rate_min: Minimum temperature at which the baseline correction can be done.
  9. beta: Heating rate in K/s
  10. correct_background (optional): bool to decide if the background is corrected
  11. p (optional): Pressure in the case of equilibirum, only useful if equilbirum coverages are needed
  12. initial_guess_theta (optional): Initial guess for the coverage in the Newton root solver
  13. guess_b(optional): Guess for the ads-ads interaction.
  14. calculate_eq_coverage (oprtional): Decide is the equilibrium coverage is computed.

Project details


Download files

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

Source Distribution

tpd_analyse-0.2.0.tar.gz (10.5 kB view hashes)

Uploaded Source

Built Distribution

tpd_analyse-0.2.0-py3-none-any.whl (7.4 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page