Kinisot: v 1.0.0 public API for Kinisot.py
Description
A Python program to compute kinetic isotope effects from two Gaussian output files, one of which is a ground state and the other a transition state. It is developed by Robert Paton at Colorado State University.
This is a Python version of Kinisot, inspired by the Fortran version originally written by Henry Rzepa. This version does not require parameter files to run and allows easy manipulation of temperature and vibrational scaling factors. The level of theory and basis set are detected from in the output files and the program will attempt to assign the appropriate scaling factor based on data from the Truhlar group. Isotopic substitutions are to be specified by the command line, such that separate computations with Gaussian are not required. The program diagonalizes the massweighted Hessian matricies to obtain harmonic vibrational frequencies and BigeleisenMayer Reduced Isotopic Partition Function Ratios. One difference with the Gaussian program itself is that the lowest five/six normal modes (translations and rotations) are not projected out, however, this is also the approach taken by quiver. Testing this approach against calculation of the Reduced Isotopic Partition Function Ratios by hand (!) using the frequencies in the Gaussian output files led to agreeement up to 4DP. A onedimensional tunneling correction is also included, which is the Bell infiniteparabola model.
Also see related discussions on computing KIE values
The current version is currently hardcoded to consider ^{2}D/^{1}H, ^{13}C/^{12}C and ^{17}O/^{16}O isotopic replacements. This can be modified in Hess_to_Freq.py.
A video guide to using this software is available at Youtube
Installation
 Clone the repository https://github.com/bobbypaton/Kinisot.git
 Add the directory (/pathto/GoodVibes/goodvibes) containing the python files to the PATH environment variable (optional).
 Run the script with your Gaussian output files. It has been tested with Python 2 and 3 on OSX
Alternatively pip install kinisot
will install all classes
Correct Usage
Kinisot.py reactant_output ts_output iso "atom numbers" (t temperature) (s scalefactor)
 The two output files contain Gaussian frequency calculations performed for the reactant and transition state at the same level of theory. The temperature is unimportant.
 The
iso
flag is required and specifies a string of atom number(s) which are to be substituted for heavier isotopes. Multiple atom numbers require quotation marks and are separated by spaces.  The
t
option specifies temperature (in Kelvin). N.B. This does not have to correspond to the temperature used in the Gaussian calculation since the Reduced Isotopic Partition Function Ratios are evalulated at the requested temperature. The default value is 298.15 K.  The
s
option is a scaling factor for vibrational frequencies. Empirical scaling factors have been determined for several functional/basis set combinations, and these are applied automatically using values from the Truhlar group based on detection of the level of theory and basis set in the output files. The ZPEscaling factors are selected if available. The default value when no scaling factor is available is 1 (no scale factor).
Example 1. Proton Transfer
Transfer of a proton between two chloride anions; the reactant and TS are both linear. The hydrogen atom is atom number 1 in both files (the numbering needs to be identical). In this example we consider the 2D/1H kie at the default temperature without vibrational scaling.
python Kinisot.py Cl_H_Cl_RCT.out Cl_H_Cl_TS.out iso "1" s 1.0
The following output is produced:
Temp = 298.15K / Vib. scale factor = 1.0 Vratio ZPE EXC TRPF KIE 1Dtunn corrKIE o Cl_H_Cl_RCT  o Cl_H_Cl_TS 1013.5 o Cl_H_Cl_RCT: iso @ 1 1.113e+01 1.129e+00 1.971e+00 o Cl_H_Cl_TS: iso @ 1 722.0 3.494e+00 1.069e+00 2.765e+00  TSTKIE @ 298.15 K 1.403746 3.185402 1.056428 0.712742 3.366858 2.156937 7.262101
The first column (Vratio) shows imaginary frequencies for the TS and its isotopomer and their ratio. The next three columns show the terms of the Reduced Isotopic Partition Function Ratios (RPFRs): the zeropoint energy differences (ZPE), excitation factors (EXC) and enthalpic Teller–Redlich product factors (TRPF). The product of these four terms defines the KIE value, in this case 3.366858. This assumes classical nuclei (the BornOppenheimer approximation). A quantum mechanical tunnelling correction (1DTunn) is computed assuming an infinite parabolic barrier in onedimension, and multiplication gives the corrected KIE (corrKIE). The values obtained from manually computing the RPFRs are Vratio = 1.4038; ZPE = 3.1854; EXC = 1.0564; TRPF = 0.7127; KIE= 3.3669 which all agree to 4DP with the above.
The level of theory used for the above calculations is HF/631G(d). If a scaling factor is not specified manually, Kinisot tries to match the level/basis set with a database of scaling factors. For the proton transfer example again:
python Kinisot.py Cl_H_Cl_RCT.out Cl_H_Cl_TS.out iso "1"
To give:
Found vibrational scaling factor 0.909 for RHF/631G(d) level of theory REF: I. M. Alecu, J. Zheng, Y. Zhao, and D. G. Truhlar, J. Chem. Theory Comput. 6, 28722887 (2010). Temp = 298.15K / Vib. scale factor = 0.909 Vratio ZPE EXC TRPF KIE 1Dtunn corrKIE o Cl_H_Cl_RCT  o Cl_H_Cl_TS 1013.5 o Cl_H_Cl_RCT: iso @ 1 8.938e+00 1.156e+00 1.971e+00 o Cl_H_Cl_TS: iso @ 1 722.0 3.118e+00 1.088e+00 2.765e+00  TSTKIE @ 298.15 K 1.403746 2.866660 1.062490 0.712742 3.047348 2.156937 6.572937
Example 2. Nucleophilic Substitution
The SN2 identity reaction between fluoromethane and fluoride: the output files of reactant and TS contain the results from B3LYP/augccpVTZ frequency calculations. The temperature defined in Gaussian is unimportant.
Suppose we want to obtain the KIE at a temperature of 273K from deuterating all three H atoms i.e. CD_{3}F vs. CH_{3}F: these atoms are numbered 2,3 and 4 in both structure files. This is performed with the following command:
python Kinisot.py CH3F_F_rc.out CH3F_F_ts.out iso "2 3 4" t 273
To give:
Found vibrational scaling factor 0.985 for RB3LYP/AugCCpVTZ level of theory REF: I. M. Alecu, unpublished (2011). Temp = 273.0K / Vib. scale factor = 0.985 Vratio ZPE EXC TRPF KIE 1Dtunn corrKIE o CH3F_F_rc  o CH3F_F_ts 481.3 o CH3F_F_rc: iso @ 2 3 4 6.025e+04 1.253e+00 1.447e+01 o CH3F_F_ts: iso @ 2 3 4 480.5 7.602e+04 1.112e+00 1.453e+01  TSTKIE @ 273.0 K 1.001663 0.792526 1.126867 0.995606 0.890626 1.001003 0.891519 
The secondary KIE is 0.8906 (or 0.8916 with tunnelling).
License: CCBY
Files
Kinisotv1.0.zip
Files
(72.9 kB)
Name  Size  Download all 

md5:6e8dec4407e90d819ca37c1646ab6298

72.9 kB  Preview Download 
Additional details
Related works
 Is supplement to
 https://github.com/bobbypaton/Kinisot/tree/v1.0 (URL)