X

Search Results

Searching....

9.2 Geometry Optimization Job Controls

9.2.6 Libopt3 Job Examples

(July 14, 2022)

Example 9.4  As outlined, the rate of convergence of the iterative optimization process is dependent on a number of factors, one of which is the use of an initial analytic Hessian. This is easily achieved by instructing Q-Chem to calculate an analytic Hessian and proceed then to determine the required critical point. This job runs within Libopt3 driver which retains the reading of analytical Hessian feature.

$molecule
   0  1
   O
   H  1  oh
   H  1  oh 2 hoh

   oh  = 1.1
   hoh = 104
$end

$rem
   JOBTYPE    freq   Calculate an analytic Hessian
   METHOD     hf
   BASIS      6-31g(d)
$end

$comment
Now proceed with the optimization making sure to read in the analytic
Hessian (use other available information too).
$end

@@@

$molecule
   read
$end

$rem
   JOBTYPE            opt
   METHOD             hf
   BASIS              6-31g(d)
   SCF_GUESS          read
   GEOM_OPT_HESSIAN   read   Have the initial Hessian
$end

@@@

$comment
LIBOPT3 driver does not require the need for two jobs, as the exact analytic
Hessian can be computed from the optimization job.  LIBOPT3 still retains the
reading of Hessian for users who wish to split the jobs.
$end

$molecule
   0  1
   O
   H  1  oh
   H  1  oh 2 hoh

   oh  = 1.1
   hoh = 104
$end

$rem
   JOBTYPE    opt
   METHOD     hf
   BASIS      6-31g(d)
$end

$geom_opt
initial_hessian exact !Start with analytic Hessian
$end

Example 9.5  Libopt3 has the capability to provide recomputation of the Hessian during optimization. This is useful for difficult optimization jobs, but comes with the additional computational cost of calculating Hessians, every N-cycles.

$comment
Recompute Hessian during BFGS geometry optimization.
$end

$molecule
0 1
¯7          3.79442        2.45076       -4.34277
¯6          3.02868        3.04864       -3.23778
¯6          2.04275        1.98420       -2.78714
¯6          2.91776        0.76144       -2.89342
¯6          3.54332        1.00509       -4.25717
¯1          2.53337        3.99823       -3.53031
¯1          3.72326        3.26015       -2.39028
¯1          1.21899        1.90515       -3.53349
¯1          1.60572        2.16457       -1.78197
¯1          2.38404       -0.20872       -2.80429
¯1          3.70935        0.81472       -2.11094
¯1          2.79274        0.75455       -5.04001
¯1          4.45076        0.38822       -4.43647
¯1          4.81196        2.64598       -4.19025
$end


$rem
basis sto-3g
exchange hf
jobtype opt
$end

$geom_opt
initial_hessian = exact !Start with Exact Hessian
recompute_hessian = recompute  !Recompute Hessian
!recompute_hessian_cycles = 5  !Recompute Hessian every N cycles
$end

Example 9.6  Optimize a structure and then perform vibrational analysis from the recomputed Hessian.

$comment
Optimize Ethanol then perform vibrational analysis on final structure.
$end

$molecule
0 1
¯  1    0.0000000   -0.3967597    2.0821274
¯  6    0.0000000    0.2658586    1.2077483
¯  1   -0.8835614    0.9134896    1.2808899
¯  1    0.8835614    0.9134896    1.2808899
¯  6    0.0000000   -0.5475180   -0.0737199
¯  1    0.8913993   -1.2035918   -0.1244915
¯  1   -0.8913993   -1.2035918   -0.1244915
¯  8    0.0000000    0.3545729   -1.1566766
¯  1    0.0000000   -0.1696628   -1.9456823
$end


$rem
basis sto-3g
exchange hf
jobtype opt
$end

$geom_opt
hessian_verify = recomputed !Recompute Exact Hessian for verification
final_vibrational_analysis = true !Perform Vibrational Analysis on optimized Hessian
$end

Example 9.7  Libopt3 can read in a user defined topology, rather than using the generated topology.

$comment
Read in user defined topology
$end

$molecule
0 1
  H   -1.6466561   -2.6863748   -0.0117346
  O   -1.7341224   -2.4422496    0.9441588
  O   -1.0688554   -1.3124664    1.0588359
  H   -1.1563217   -1.0683412    2.0147293
$end

$rem
   BASIS  =  STO-3G
   JOB_TYPE  =  OPT
   METHOD  =  HF
$end

$geom_opt
user_topology = read
$end

$geom_opt_topology
6
1 1 2
1 2 3
1 3 4
2 1 3 2
2 2 4 3
4 1 2 3 4
$end