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>.csvwhere some_value can be the exposure in any units.order: currently only first order desorption reactions are implemented, soorder=1thermo_ads(optional): Here theaseclassHarmonicThermocan 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 useIdealGasThermoplot_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.