IDM: Difference between revisions
No edit summary |
No edit summary |
||
| Line 3: | Line 3: | ||
'''VASP_IDM''' is our internal abbreviation for a set of extra routines for VASP, developed by Dr. Tomáš Bučko ([http://online.univie.ac.at/pers?lang=en&zuname=Bucko Univ.Vienna]), which is useful for setting up calculations on transition state search. | '''VASP_IDM''' is our internal abbreviation for a set of extra routines for VASP, developed by Dr. Tomáš Bučko ([http://online.univie.ac.at/pers?lang=en&zuname=Bucko Univ.Vienna]), which is useful for setting up calculations on transition state search. | ||
Using the corresponding VASP binary loaded with the module ''5.2_IDM'', the '''improved dimer method (IDM)''' (IBRION=44) and '''intrinsic reaction coordinate (IRC)''' search (IBRION=40) become available. | Using the corresponding VASP binary loaded with the module ''5.2_IDM'', the '''improved dimer method (IDM)''' (<TT>IBRION=44</TT>) and '''intrinsic reaction coordinate (IRC)''' search (<TT>IBRION=40</TT>) become available. | ||
In the following, the (currently | In the following, the (currently not published elsewhere) manual supplied by the developer is presented. | ||
== Improved Dimer Method (IDM) == | == Improved Dimer Method (IDM) == | ||
The current implementation does not support lattice optimisation and can be used only for atomic relaxations (ISIF=2). | The current implementation does not support lattice optimisation and can be used only for atomic relaxations (<TT>ISIF=2</TT>). | ||
<p align="center" style="width:100%"> | <p align="center" style="width:100%"> | ||
| Line 15: | Line 15: | ||
|+ '''Flags and parameters''' | |+ '''Flags and parameters''' | ||
|- | |- | ||
| IBRION=44 | | <TT>IBRION=44</TT> | ||
| invokes relaxation with the dimer method | | invokes relaxation with the dimer method | ||
|- | |- | ||
| FINDIFF=1 | | <TT>FINDIFF=1|2</TT> | ||
| forward (1) of central (2) differences formula for numerical differentiation | | forward (1) of central (2) differences formula for numerical differentiation | ||
|- | |- | ||
| DIMER DIST=0.01 | | <TT>DIMER DIST=0.01</TT> | ||
| step for numerical differentiation (Å) | | step for numerical differentiation (Å) | ||
|- | |- | ||
| STEP SIZE=0.01 | | <TT>STEP SIZE=0.01</TT> | ||
| trial step size for energy minimisation(Å) | | trial step size for energy minimisation(Å) | ||
|- | |- | ||
| STEP MAX=0.1 | | <TT>STEP MAX=0.1</TT> | ||
| maximal step size for energy minimisation (Å) | | maximal step size for energy minimisation (Å) | ||
|- | |- | ||
| MINROT=0.01 | | <TT>MINROT=0.01</TT> | ||
| minimal rotation of dimer (rad.) | | minimal rotation of dimer (rad.) | ||
|} | |} | ||
</p> | </p> | ||
The method is described in detail in Ref.(2). The only input which has to be defined by user is a ''3N'' dimensional vector defining direction of negative curvature on potential energy hypersurface. It must be specified in POSCAR on place of ionic velocities (see documentation for the POSCAR file). Note that this vector is automatically normalised so it is the only direction that really matters. Output including maximal gradient in the current step, curvature along the dimer direction and the angle through which the dimer is rotated is written in OUTCAR after key words "DIMER METHOD". | The method is described in detail in Ref.(2). The only input which has to be defined by user is a ''3N''-dimensional vector defining direction of negative curvature on potential energy hypersurface. It must be specified in <TT>POSCAR</TT> on place of ionic velocities (see documentation for the <TT>POSCAR</TT> file). Note that this vector is automatically normalised so it is the only direction that really matters. Output including maximal gradient in the current step, curvature along the dimer direction and the angle through which the dimer is rotated is written in <TT>OUTCAR</TT> after key words "<TT>DIMER METHOD</TT>". | ||
(1) G. Henkelman and H. Jónsson. ''A dimer method for finding saddle points on high dimensional potential surfaces using only first derivatives.'' J. Chem. Phys., '''111(15)''':7010–7022, 1999. [http://dx.doi.org/10.1063/1.480097] | (1) G. Henkelman and H. Jónsson. ''A dimer method for finding saddle points on high dimensional potential surfaces using only first derivatives.'' J. Chem. Phys., '''111(15)''':7010–7022, 1999. [http://dx.doi.org/10.1063/1.480097] | ||
| Line 43: | Line 43: | ||
== Intrinsic Reaction Cooordinate (IRC) == | == Intrinsic Reaction Cooordinate (IRC) == | ||
The current implementation does not support lattice optimization and can be used only for atomic relaxations (ISIF=2). | The current implementation does not support lattice optimization and can be used only for atomic relaxations (<TT>ISIF=2</TT>). | ||
<p align="center" style="width:100%"> | <p align="center" style="width:100%"> | ||
| Line 49: | Line 49: | ||
|+ '''Flags and parameters''' | |+ '''Flags and parameters''' | ||
|- | |- | ||
| IBRION=40 | | <TT>IBRION=40</TT> | ||
| perform IRC search using the DVV method | | perform IRC search using the DVV method | ||
|- | |- | ||
| DVVEHISTORY=5 | | <TT>DVVEHISTORY=5</TT> | ||
| number of subsequent increasing energy steps taken before simulation is terminated | | number of subsequent increasing energy steps taken before simulation is terminated | ||
|- | |- | ||
| DVVDELTA0=1.5e-3 | | <TT>DVVDELTA0=1.5e-3</TT> | ||
| the error tolerance Δ<sub>0</sub> | | the error tolerance Δ<sub>0</sub> | ||
|- | |- | ||
| DVVVNORM0=0.01 | | <TT>DVVVNORM0=0.01</TT> | ||
| magnitude of the velocity vector v<sub>0</sub> | | magnitude of the velocity vector v<sub>0</sub> | ||
|- | |- | ||
| DVVMINPOTIM=0.025 | | <TT>DVVMINPOTIM=0.025</TT> | ||
| lower limit for the time step Δ''t'' | | lower limit for the time step Δ''t'' | ||
|- | |- | ||
| DVVMAXPOTIM=3.0 | | <TT>DVVMAXPOTIM=3.0</TT> | ||
| upper limit for the time step Δ''t'' | | upper limit for the time step Δ''t'' | ||
|- | |- | ||
| DVVMINUS=.FALSE. | | <TT>DVVMINUS=.FALSE.|.TRUE.</TT> | ||
| take positive|negative direction of the initial velocity vector | | take positive|negative direction of the initial velocity vector | ||
|} | |} | ||
| Line 85: | Line 85: | ||
: '' Δt<sub>i+1</sub> = Δt<sub>i</sub>|Δ<sub>0</sub>/Δ<sub>i</sub> |<sup>1/3</sup> ,'' | : '' Δt<sub>i+1</sub> = Δt<sub>i</sub>|Δ<sub>0</sub>/Δ<sub>i</sub> |<sup>1/3</sup> ,'' | ||
Δt<sub>i</sub> is constrained to interval DVVMINPOTIM < Δt<sub>i</sub> < DVVMAXPOTIM. | Δt<sub>i</sub> is constrained to interval <TT>DVVMINPOTIM</TT> < Δt<sub>i</sub> < <TT>DVVMAXPOTIM</TT>. | ||
Output (in particular value of intrinsic reaction coordinate (IRC) and corresponding potential energy) is written into OUTCAR file after key words "DAMPED VELOCITY VERLET ALGORITHM:" | Output (in particular value of intrinsic reaction coordinate (IRC) and corresponding potential energy) is written into <TT>OUTCAR</TT> file after key words "<TT>DAMPED VELOCITY VERLET ALGORITHM:</TT>" | ||
(3) H.P. Hratchian and H.B. Schlegel. ''Following reaction pathways using a damped classical trajectory algorithm.'' J. Phys. Chem. A, '''106(1)''':165–169, 2002. [http://dx.doi.org/10.1021/jp012125b] | (3) H.P. Hratchian and H.B. Schlegel. ''Following reaction pathways using a damped classical trajectory algorithm.'' J. Phys. Chem. A, '''106(1)''':165–169, 2002. [http://dx.doi.org/10.1021/jp012125b] | ||
== Hands-on Guide for IDM+IRC == | |||
(''Under Construction: A practical recipy for IDM and IRC calculation will appear here soon!'') | |||
Revision as of 11:09, 20 September 2010
DESCRIPTION
VASP_IDM is our internal abbreviation for a set of extra routines for VASP, developed by Dr. Tomáš Bučko (Univ.Vienna), which is useful for setting up calculations on transition state search.
Using the corresponding VASP binary loaded with the module 5.2_IDM, the improved dimer method (IDM) (IBRION=44) and intrinsic reaction coordinate (IRC) search (IBRION=40) become available.
In the following, the (currently not published elsewhere) manual supplied by the developer is presented.
Improved Dimer Method (IDM)
The current implementation does not support lattice optimisation and can be used only for atomic relaxations (ISIF=2).
| IBRION=44 | invokes relaxation with the dimer method |
| FINDIFF=1|2 | forward (1) of central (2) differences formula for numerical differentiation |
| DIMER DIST=0.01 | step for numerical differentiation (Å) |
| STEP SIZE=0.01 | trial step size for energy minimisation(Å) |
| STEP MAX=0.1 | maximal step size for energy minimisation (Å) |
| MINROT=0.01 | minimal rotation of dimer (rad.) |
The method is described in detail in Ref.(2). The only input which has to be defined by user is a 3N-dimensional vector defining direction of negative curvature on potential energy hypersurface. It must be specified in POSCAR on place of ionic velocities (see documentation for the POSCAR file). Note that this vector is automatically normalised so it is the only direction that really matters. Output including maximal gradient in the current step, curvature along the dimer direction and the angle through which the dimer is rotated is written in OUTCAR after key words "DIMER METHOD".
(1) G. Henkelman and H. Jónsson. A dimer method for finding saddle points on high dimensional potential surfaces using only first derivatives. J. Chem. Phys., 111(15):7010–7022, 1999. [1]
(2) A. Heyden, A.T. Bell, and F.J. Keil. Efficient methods for finding transition states in chemical reactions: Comparison of improved dimer method and partitioned rational function optimization method. J. Chem. Phys., 123(22):224101, 2005. [2]
Intrinsic Reaction Cooordinate (IRC)
The current implementation does not support lattice optimization and can be used only for atomic relaxations (ISIF=2).
| IBRION=40 | perform IRC search using the DVV method |
| DVVEHISTORY=5 | number of subsequent increasing energy steps taken before simulation is terminated |
| DVVDELTA0=1.5e-3 | the error tolerance Δ0 |
| DVVVNORM0=0.01 | magnitude of the velocity vector v0 |
| DVVMINPOTIM=0.025 | lower limit for the time step Δt |
| DVVMAXPOTIM=3.0 | upper limit for the time step Δt |
| DVVMINUS=.FALSE.|.TRUE. | negative direction of the initial velocity vector |
The method is described in detail in Ref.(3). Velocity verlet algorithm is used to drive system from (well relaxed!!!) saddle point to nearby minimum along intrinsic reaction coordinate (IRC):
- xi = xi-1 + vi-1Δti + ½ai-1Δti2
- vi = vi-1 + ½(ai-1+ai)Δti .
Direction of atomic velocities (i.e. vector of negative curvature) must be defined in POSCAR. Note that if DVVMINUS is set to =.FALSE., oposite direction of vector defined in POSCAR is used to initiate atomic velocities. In order to keep intermediate structures close to IRC, atomic velocities are damped such as the norm of velocity vector is constant:
- |vi| = v0 .
The size of integration step is varied during the simulation such as to ensure optimal performance:
- Δti+1 = Δti|Δ0/Δi |1/3 ,
Δti is constrained to interval DVVMINPOTIM < Δti < DVVMAXPOTIM. Output (in particular value of intrinsic reaction coordinate (IRC) and corresponding potential energy) is written into OUTCAR file after key words "DAMPED VELOCITY VERLET ALGORITHM:"
(3) H.P. Hratchian and H.B. Schlegel. Following reaction pathways using a damped classical trajectory algorithm. J. Phys. Chem. A, 106(1):165–169, 2002. [3]
Hands-on Guide for IDM+IRC
(Under Construction: A practical recipy for IDM and IRC calculation will appear here soon!)