Reaction mechanism investigation using Gaussian is now routinely performed not only by computational chemists but also by experimental scientists.
The number of papers including DFT calculation as support for experimental data is increasing.
Now, in the reaction mechanistic investigation using gaussian, which has become very casual, I think it has become important how to perform calculations quickly without disturbing the experiment.
This article has summarized how to use Gaussian efficiently to perform DFT calculations.
Work Flow of mechanistic investigation
When investigating the reaction mechanism, it is necessary to first obtain the TS structure.
The general protocol using gaussian is following;
- Find the initial structure for TS opt by using modredundant option
- Perform TS opt & freq
- Perform IRC calculation
- Perform opt & freq for IRC result
The first step, moderedundant, can take a considerable amount of time, depending on the skills of the person. No matter how hard you try, you may not find a structure like TS or you may find it soon.
In this step, it is safer to check the calculation results one by one. In this regard, it is a trial and error cycle like an experiment.
Processes 2, 3, and 4, on the other hand, are just routine tasks that do not depend on skills. The most important thing is to complete quickly without waiting time, which is very suitable automation by a simple scripted.
Utilize chk file
Each time TSopt or IRC calculation is completed, open the log file in Gauss View and save the coordinates. . . It’s very time consuming.
In order to minimize these kind of time loss, use chk file!
In gaussian, you can directly obtain the coordinate information from the chk file.
In addition, you can skip the first force calculation using the keywords; opt=readfc or irc=rcfc, which dramatically save the calculation time.
The process of copying the chk file and creating the input file (.com or .gjf) is a very simple routine work. Also, the input files used for IRC calculations and the final opt & freq are almost the same in most of the time.
Therefore, if the process of “tsopt -> irc -> opt & freq” can be automated, the calculation will be completed much faster.
Let the computer do all the boring routine work!
The automation script is shown below.
We use the job scheduler, torque.
Before you use our script, first set up the job scheduler.
Please download the files that include the following script;
Compile them as “first“, “second“, and “third“, respectively, and put them in a folder in the path.
g++ first_PBS.cpp -o first
g++ second_PBS.cpp -o second
g++ third_PBS.cpp -o third
In case using the job scheduler, you need to make an sh file. For example sh file specifies the number of cores, memory, the wall time (execution time), setting mail, module load, etc.
In our script, please execute like “first inputfile.com [calculation level] [wall time]”. Then, it will automatically read the number of cores and memory from the input file of TSopt and make a sh file.
Use the following command;
first sample.com B3LYP/6-31+G** 72
After the first TS opt calculation is completed, a program called “second” will automatically start, and it will copy the chk file of TS opt, and create the input file and sh file for IRC calculation.
Moreover, after the IRC calculation is completed, a program called “third” will automatically start, copy the IRC calculation’s chk file and make an input and sh files for final opt & freq.
In case you use the different type of job scheduler, please rewrite our scrip.