Git Product home page Git Product logo

tpd-analyse's Introduction

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 (optional): 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.

tpd-analyse's People

Contributors

sudarshanv01 avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

tpd-analyse's Issues

The reaction order

In the main.py code , Line 29. and 30:
## Order of the reaction
order = 1

The reaction order is an parameter, however, when we change the creation order to 0 or 2. The code can not run and got struck. Only order=1 run well.

Error Report:
Traceback (most recent call last):
File "main.py", line 55, in
TPDClass.get_results()
File "/home/cat/mianle/Package/tpd_analyse/tpd_analyse/tpd.py", line 126, in get_results
self.norm_results[exposure] = experimentalTPD(tpd_filename=f,
File "/home/cat/mianle/Package/tpd_analyse/tpd_analyse/tools/parser_class.py", line 161, in init
raise NotImplementedError
NotImplementedError

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.