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)
The package can be installed via
pip install tpd-analyse
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)
exp_data
: list of filenames. Each filename must be of the formatexposure_<some_value>.csv
where some_value can be the exposure in any units.order
: currently only first order desorption reactions are implemented, soorder=1
thermo_ads
(optional): Here thease
classHarmonicThermo
can be passed with the required inputs for the adsorbate(s) of interest. More information about the class can be found here.thermo_gas
: Similar to thethermo_ads
, only for gas molecules. One option is to useIdealGasThermo
plot_temperature
: A temperature range that the equibirium coverage can be determined in. An example range would be `np.linspace(100, 500)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.T_max
: Maximum temperature to consider for all the TPDs.T_rate_min
: Minimum temperature at which the baseline correction can be done.beta
: Heating rate in K/scorrect_background
(optional): bool to decide if the background is correctedp
(optional): Pressure in the case of equilibirum, only useful if equilbirum coverages are neededinitial_guess_theta
(optional): Initial guess for the coverage in the Newton root solverguess_b
(optional): Guess for the ads-ads interaction.calculate_eq_coverage
(oprtional): Decide is the equilibrium coverage is computed.