5.1. isomer with Gaussian

Gaussian is one of the most popular quantum chemistry software, thus we have provided official support for it.

5.1.1. Configuration of Gaussian

If you already know how to configure Gaussian, you can skip this part.

For Windows users: Assume you use Gaussian16 and put it in the directory D:\G16W, then right-click This PC and click Properties, Advanced System Settings, and Environment Variables. In System variables, select PATH and click Edit. In the editbox, add ;D:\G16W at the end of the texts in it, and click OK to confirm it.

For Linux users: Assume you use Gaussian16 and put it in the directory /home/you/g16 and you want to set the scratch directory for calculations to /scratch/you, then open your .bashrc and at the end of the file, add the statements

.bashrc
export g16root="/home/you/g16"
export GAUSS_SCRDIR=/scratch/you
source $g16root/g16/bsd/g16.profile

5.1.2. Example: Al3O4(+)

Tip

The sample input and output files can be found in testfiles/isomer/1-al3o4-g16.

Here we want to find the global minimum of \(\mathrm{Al}_3\mathrm{O}_4^{+}\) at B3LYP/6-31g(d) level of theory. We will show how to use Gaussian and isomer to do this.

Step 1: Prepare an input file named al3o4.inp. For Linux users, use the following content:

al3o4.inp
1al3o4         # Result file name
2Al 3 O 4      # Symbols
3cube 3 3 3    # Structure types
440            # Maximal number of calculations
5>>>>
6xyz2gaussian optfile $inp$ > $xxx$.gjf
7g16 < $xxx$.gjf > $xxx$.log 2>/dev/null
8gaussian2xyz $xxx$.log > $out$
9>>>>

The texts after # are comments and can be arbitrary. I will explain the input line by line:

  1. The folder name to save local minima.

  2. The cluster components. For \(\mathrm{Al}_3\mathrm{O}_4^{+}\), just write Al 3 O 4.

  3. In this line, one can give the type of initial guesses. Available choices are shown below:

Key words

Meaning

line

Generate a linear initial structure.

plane 2 3

Generate a plane initial structure from a 2×3 lattice.

cube 3 4 3

Generate an initial structure from a 3×4×3 lattice.

Point group symmetry.

Generate a cluster with specific point group symmetry Please see Clusters with Specific Point Group Symmetry for details.

In this case, cube 3 3 3 has 3×3×3 = 27 lattice points. To generate an initial guess, isomer will place 7 atoms (3 aluminum and 4 oxygen atoms) among the 27 lattice points. Thus, the lattice size must be greater than the total number of atoms in the cluster.

Tip

The lattice size should be a little greater than the total number of atoms in the cluster. For example, you want to study a 11-atom cluster \(\mathrm{La}\mathrm{Si}_{10}^{+}\), you should use a guess like cube 4 4 4 (4×4×4=64) but not cube 5 5 5 (5×5×5=125)

  1. The maximum cycle number \(g_{\mathrm{max}}\). Here it is the number of calculations you want to do. See Theoretical Background for details.

  2. The lines between two >>>> are the commands to call external programs. See Interfaces to External Programs for details.

Step 2: Create a file called optfile with the following content:

optfile
1%nproc=48
2%mem=24GB
3#N B3LYP/6-31g(d) SCF(XQC) Geom(NoCrowd) Opt
4
5opt
6
7+1 1
8>>>>
9>>>>

This is a template file that tells xyz2gaussian how to generate a Gaussian file. Briefly, xyz2gaussian will put all things before the first >>>> to the beginning of the Gaussian input, and all things between the two >>>> after the coordinates in the Gaussian input.

Tip

You should change the number of cores, memory usage, charge, spin multiplicity and # line according to your systems.

Step 3: Now you can run the global optimization:

$ isomer al3o4.inp > al3o4.out

This will take a while (3 hours for me). After the optimization, the end of al3o4.out is

al3o4.out
Reordered from low to high energy:
===============================================================
     #          Energy      Match-RMSD
===============================================================
    19  -1028.18355496      0.00000000
    37  -1028.07587708      1.17242448
    21  -1028.04827707      1.37687293
    38  -1028.04583450      1.42104118
    36  -1028.04460563      1.60199116
    13  -1028.03167498      0.92850705
    12  -1028.02937072      0.96190938
    27  -1028.02418981      1.28093256
    24  -1028.02270757      1.24132082
    25  -1028.01698825      0.83752662
    34  -1028.01572644      0.94141639
     6  -1028.01527907      0.83000691
    15  -1028.01189880      1.08154055

So the global minimum is al3o4-LM/19.xyz and is shown below:

alternate text

5.1.3. Example: Au6

Tip

The sample input and output files can be found in testfiles/isomer/2-au6-g16.

Here we want to find the global minimum of \(\mathrm{Au}_6\). Assume you have known from literature that the global minima of small gold clusters are flat due to the relativistic effects, we can directly search the global minimum by using plane.

Step 1: Prepare an input file named au6.inp. For Linux users, use the following content:

au6.inp
1au6           # Result file name
2Au 6          # Symbols
3plane 4 3     # Structure types
420            # Maximal number of calculations
5>>>>
6xyz2gaussian optfile $inp$ > $xxx$.gjf
7g16 < $xxx$.gjf > $xxx$.log 2>/dev/null
8gaussian2xyz $xxx$.log > $out$
9>>>>

In this case, plane 4 3 has 4×3 = 12 lattice points. To generate an initial guess, isomer will place 6 atoms (6 goldatoms) among the 12 lattice points. You can use plane 4 4 if your have plenty of calculation resource. plane 3 3 is too small and is not recommended.

Step 2: Create a file called optfile. For gold, we want to use TPSS functional and a self-defined basis set plus pseudopotential. Remember to put basis information between the two >>>>.

optfile
  1%nproc=48
  2%mem=24GB
  3#N TPSSTPSS/GENECP SCF(XQC) Geom (NoCrowd) Opt
  4
  5opt
  6
  70 1
  8>>>>
  9Au 0
 10S 8 1.00
 110.38000800E+02 0.20009000E-01
 120.23972500E+02 -0.15167900E+00
 130.15218200E+02 0.36396000E+00
 140.55399900E+01 -0.82132600E+00
 150.13855100E+01 0.93664100E+00
 160.64246100E+00 0.42352700E+00
 170.15649600E+00 0.16250000E-01
 180.54910000E-01 -0.97800000E-03
 19S 8 1.00
 200.38000800E+02 -0.53040000E-02
 210.23972500E+02 0.46318000E-01
 220.15218200E+02 -0.11994000E+00
 230.55399900E+01 0.30406200E+00
 240.13855100E+01 -0.49450100E+00
 250.64246100E+00 -0.25551600E+00
 260.15649600E+00 0.60916300E+00
 270.54910000E-01 0.59776700E+00
 28S 8 1.00
 290.38000800E+02 0.32340000E-01
 300.23972500E+02 -0.17176200E+00
 310.15218200E+02 0.33950300E+00
 320.55399900E+01 -0.74617900E+00
 330.13855100E+01 0.19174980E+01
 340.64246100E+00 -0.11299310E+01
 350.15649600E+00 -0.13662840E+01
 360.54910000E-01 0.14423910E+01
 37S 1 1.00
 380.54910000E-01 0.10000000E+01
 39P 7 1.00
 400.10309200E+02 0.12821700E+00
 410.66276500E+01 -0.35379000E+00
 420.16744700E+01 0.56621100E+00
 430.80111600E+00 0.49317100E+00
 440.34687900E+00 0.11377500E+00
 450.12270100E+00 0.25340000E-02
 460.42428000E-01 0.67900000E-03
 47P 7 1.00
 480.10309200E+02 -0.35885000E-01
 490.66276500E+01 0.10289000E+00
 500.16744700E+01 -0.20098800E+00
 510.80111600E+00 -0.20104500E+00
 520.34687900E+00 0.11654900E+00
 530.12270100E+00 0.59496900E+00
 540.42428000E-01 0.45552000E+00
 55P 7 1.00
 560.10309200E+02 -0.77242000E-01
 570.66276500E+01 0.22261100E+00
 580.16744700E+01 -0.49535300E+00
 590.80111600E+00 -0.36074700E+00
 600.34687900E+00 0.71000000E+00
 610.12270100E+00 0.56883900E+00
 620.42428000E-01 0.11930000E-02
 63P 1 1.00
 640.42428000E-01 0.10000000E+01
 65D 6 1.00
 660.11002700E+02 0.16467000E-01
 670.68916600E+01 -0.68013000E-01
 680.18080800E+01 0.29949200E+00
 690.82105100E+00 0.45430300E+00
 700.34416100E+00 0.34422400E+00
 710.12974300E+00 0.12125600E+00
 72D 6 1.00
 730.11002700E+02 -0.23628000E-01
 740.68916600E+01 0.95672000E-01
 750.18080800E+01 -0.54129400E+00
 760.82105100E+00 -0.39553300E+00
 770.34416100E+00 0.61916500E+00
 780.12974300E+00 0.46827600E+00
 79D 1 1.00
 800.12974300E+00 0.10000000E+01
 81F 1 1.00
 820.89190000E+00 0.10000000E+01
 83****
 84
 85Au 0
 86ECP60MDF 5 60
 87H-Komponente
 881
 892 1.000000 0.000000
 90S-H
 912
 922 13.523218 426.641867
 932 6.264384 36.800668
 94P-H
 954
 962 11.413867 87.002091
 972 10.329215 174.004370
 982 5.707424 8.870610
 992 4.828165 17.902438
100D-H
1014
1022 7.430963 49.883655
1032 8.321990 74.684549
1042 4.609642 6.486227
1052 3.511507 9.546821
106F-H
1072
1082 3.084639 8.791640
1092 3.024743 11.658456
110G-H
1112
1122 3.978442 -5.234337
1132 4.011491 -6.738142
114
115>>>>

Step 3: Now you can run the global optimization:

$ isomer au6.inp > au6.out

After the optimization, the end of au6.out is

au6.out
Reordered from low to high energy:
===============================================================
    #          Energy      Match-RMSD
===============================================================
    1   -814.38125305      0.00000000
    3   -814.38117940      1.43811738
    4   -814.38099683      0.02502934
    7   -814.38067642      1.44986858
    0   -814.37928321      0.05173414
   19   -814.32702207      1.02885421

So the global minimum is au6-LM/1.xyz and is shown below:

alternate text