rmgpy.kinetics.Eckart

class rmgpy.kinetics.Eckart(frequency, E0_reac, E0_TS, E0_prod=None)

A tunneling model based on the Eckart model. The attributes are:

Attribute

Description

frequency

The imaginary frequency of the transition state

E0_reac

The ground-state energy of the reactants

E0_TS

The ground-state energy of the transition state

E0_prod

The ground-state energy of the products

If E0_prod is not given, it is assumed to be the same as the reactants; this results in the so-called “symmetric” Eckart model. Providing E0_prod, and thereby using the “asymmetric” Eckart model, is the recommended approach.

The Eckart tunneling model is based around a potential of the form

\[V(x) = \frac{\hbar^2}{2m} \left[ \frac{A e^x}{1 + e^x} + \frac{B e^x}{\left( 1 + e^x \right)^2} \right]\]

where \(x\) represents the reaction coordinate and \(A\) and \(B\) are parameters. The potential is symmetric if \(A = 0\) and asymmetric if \(A \ne 0\). If we add the constraint \(\left| B \right| > \left| A \right|\) then the potential has a maximum at

\[x_\mathrm{max} = \ln \left( \frac{B + A}{B - A} \right)\]
\[V(x_\mathrm{max}) = \frac{\hbar^2}{2m} \frac{(A + B)^2}{4B}\]

The one-dimensional Schrodinger equation with the Eckart potential is analytically solvable. The resulting microcanonical tunneling factor \(\kappa(E)\) is a function of the total energy of the molecular system:

\[\kappa(E) = 1 - \frac{\cosh (2 \pi a - 2 \pi b) + \cosh (2 \pi d)}{\cosh (2 \pi a + 2 \pi b) + \cosh (2 \pi d)}\]

where

\[2 \pi a = \frac{2 \sqrt{\alpha_1 \xi}}{\alpha_1^{-1/2} + \alpha_2^{-1/2}}\]
\[2 \pi b = \frac{2 \sqrt{\left| (\xi - 1) \alpha_1 + \alpha_2 \right|}}{\alpha_1^{-1/2} + \alpha_2^{-1/2}}\]
\[2 \pi d = 2 \sqrt{\left| \alpha_1 \alpha_2 - 4 \pi^2 / 16 \right|}\]
\[\alpha_1 = 2 \pi \frac{\Delta V_1}{h \left| \nu_\mathrm{TS} \right|}\]
\[\alpha_2 = 2 \pi \frac{\Delta V_2}{h \left| \nu_\mathrm{TS} \right|}\]
\[\xi = \frac{E}{\Delta V_1}\]

\(\Delta V_1\) and \(\Delta V_2\) are the thermal energy difference between the transition state and the reactants and products, respectively; \(\nu_\mathrm{TS}\) is the negative frequency, \(h\) is the Planck constant.

Applying a Laplace transform gives the canonical tunneling factor as a function of temperature \(T\) (expressed as \(\beta \equiv 1 / k_\mathrm{B} T\)):

\[\kappa(T) = e^{\beta \Delta V_1} \int_0^\infty \kappa(E) e^{- \beta E} \ dE\]

If product data is not available, then it is assumed that \(\alpha_2 \approx \alpha_1\).

The Eckart correction requires information about the reactants as well as the transition state. For best results, information about the products should also be given. (The former is called the symmetric Eckart correction, the latter the asymmetric Eckart correction.) This extra information allows the Eckart correction to generally give a better result than the Wigner correction.

E0_TS

The ground-state energy of the transition state.

E0_prod

The ground-state energy of the products.

E0_reac

The ground-state energy of the reactants.

calculate_tunneling_factor(self, double T) double

Calculate and return the value of the Eckart tunneling correction for the reaction at the temperature T in K.

calculate_tunneling_function(self, ndarray Elist) ndarray

Calculate and return the value of the Eckart tunneling function for the reaction at the energies e_list in J/mol.

frequency

The negative frequency along the reaction coordinate.