Example: Mode Tracking¶
Download VATools_cyclohexanone.run
#! /bin/sh
# This example demonstrates the usage of the AMS vibrational analysis tools
# on the cyclohexanone molecule.
# 1. Optimization with DFT
# ------------------------
AMS_JOBNAME=DFT $AMSBIN/ams << EOF
System
Atoms
C 0.000000 0.000000 0.000000
C 0.978606 1.950589 -1.251328
C 0.978606 1.950589 1.251328
C 0.812569 2.806732 0.000000
C -0.039622 0.802151 1.272926
C -0.039622 0.802151 -1.272926
O 0.062619 -1.251283 0.000000
H 0.123306 0.119861 2.122758
H -1.060012 1.229063 1.372200
H 0.871524 2.560541 2.167037
H 2.001065 1.521810 1.263746
H -0.196785 3.268312 0.000000
H 1.549313 3.631809 0.000000
H 0.871524 2.560541 -2.167037
H 2.001065 1.521810 -1.263746
H 0.123306 0.119861 -2.122758
H -1.060012 1.229063 -1.372200
End
End
Task GeometryOptimization
GeometryOptimization
Convergence Gradients=1.0e-4
End
Engine BAND
EndEngine
EOF
# 2. Obtain DFTB hessian and modes as preconditioner and guess
# ------------------------------------------------------------
AMS_JOBNAME=DFTB $AMSBIN/ams << EOF
LoadSystem
File DFT.results/ams.rkf
End
Task GeometryOptimization
GeometryOptimization
Convergence Gradients=1.0e-4
End
Properties
NormalModes Yes
End
Engine DFTB
Model DFTB3
ResourcesDir DFTB.org/3ob-freq-1-2
EndEngine
EOF
# 3. ModeScanning of DFTB C=O stretch mode with DFT
# -------------------------------------------------
AMS_JOBNAME=ModeScanning $AMSBIN/ams << EOF
LoadSystem
File DFTB.results/ams.rkf
End
LoadEngine DFT.results/band.rkf
Task VibrationalAnalysis
VibrationalAnalysis
Type ModeScanning
NormalModes
ModeFile DFTB.results/dftb.rkf
ModeSelect
HighIR 1 # This should select the C=O stretch
End
End
End
EOF
# 4. Mode tracking with DFT starting from DFTB C=O stretch mode
# -------------------------------------------------------------
AMS_JOBNAME=ModeTracking $AMSBIN/ams << EOF
LoadSystem
File DFT.results/ams.rkf
End
LoadEngine DFT.results/band.rkf
Task VibrationalAnalysis
VibrationalAnalysis
Type ModeTracking
ModeTracking
HessianGuess File
HessianPath DFTB.results
End
NormalModes
ModeInputFormat File
ModeFile DFTB.results/dftb.rkf
ModeSelect
HighIR 1 # This should select the C=O stretch
End
End
End
EOF
# 5. Mode tracking with DFT starting from a pure C=O stretch
# ----------------------------------------------------------
AMS_JOBNAME=ModeTracking_COStretch $AMSBIN/ams << EOF
LoadSystem
File DFT.results/ams.rkf
End
LoadEngine DFT.results/band.rkf
Task VibrationalAnalysis
VibrationalAnalysis
Type ModeTracking
NormalModes
ModeInputFormat Inline
ModeInline
0.0 0.0 0.7071 # This is the C attached to the O
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 -0.7071 # This is the O
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
0.0 0.0 0.0
End
ModeSelect
HighIR 1 # This should select the C=O stretch
End
End
ModeTracking
HessianGuess File
HessianPath DFTB.results
TrackingMethod OverlapPrevious
# ^-- Probably better than the default.
# Our initial mode is not particularly close yet ...
End
End
EOF