AndyForesterFulvene
Fulvene TD-DFT Excited State IRC
Getting Force constants and a path
Using initial coordinates from David, performed a calculation to retrieve forces using:
#p freq=projected b3lyp/6-31G(d) td=(root=1)
This will give the steepest descent as an imaginary frequency and also allow me to read in (RCFC) to the IRC calculation.
Creating the IRC input file
Internal Coordinate path vector
The path vector MUST be in internal coordinates - they are printed as Cartesian coordinates in the log file so must be converted:
- Open the frequency calculation log in Gaussview 5
- Visualise the frequency that corresponds to the required path
- Allow manual displacement of the frequency in Gaussian 5
- Save structure at 0 displacement and turn off (write Cartesians) by going though calculation setup (edit)
- Displace structure 0.1 using the manual displacement slider
- Save structure again without writing Cartesians
This gives 2 sets of internal coordinates - the difference is the vector we require in internal coordinates.
- Check that the atoms are matched in each set of coordinates - the NoSym option in calculation setup can be used to avoid changing the coordinates at all.
- Paste coordinates into excel and take one from the other.
- This is our new vector!
The next step is to make the vector in a format that Gaussian can read. This is VERY important since the vector is not checked by gaussian. The format is 8F10.6 for each value - 8 numbers, 10 Characters, 6 decimal places. Place the vector into this format in a text file (or use the script!). There should be 3N-6 internal coordinates.
eg:
-0.010890 -0.010890 -0.010890 -0.010890 -0.010890 -0.010890 -0.010890 -0.010890 0.000330 0.000330 0.000330 0.000330 0.000330 0.000330 0.000330 0.000330 0.012430 0.012430 0.012430 0.012430 0.012430 0.012430 0.012430 0.012430 0.012430 0.012430 0.012430 0.012430
The route IRC=ReadVector will make Gaussian read the vector - it should be placed at the end of the input file.
Setting up the IRC file
IRC calculations also require initial force constants to proceed. You must provide these to the calculation in some way, options defined in the route section:
- IRC=RCFC reads the force constants from the checkpoint file from the preceding frequency calculation (used to identify the required frequency corresponding to the reaction coordinate)
- IRC=CalcFC recalculates the force constants at the beginning of the IRC calculation
The best way to do this is to retrieve them from the previous calculation of the frequencies (the chk file). Also because there are no analytical second derivatives for the TD-DFT IRC we need to use an algorithm that doesn't require them... this is specified using the IRC=GradientOnly. The route section now looks like:
# TD(root=1) b3lyp/6-31G(d) IRC=(RCFC,GradientOnly,ReadVector)