Page 1 of 1

about DYNAMICAL_MATRIX calculation

Posted: Wed Jun 30, 2010 2:19 am
by barryhyc
Dear Prof. graeme,
When I use VTSTTools to calculate the frequency, I found the IS always has small imaginary frequency and TS has two (one for the right vibration mode, the other is small). This is different for using IBRION=5. I list the whole calculation process and please help me point out what is the potential reason for this diffence.
This is the output of using IBRION=5 for TS.
OUTCAR: 1 f = 96.314490 THz 605.161788 2PiTHz 3212.705472 cm-1 398.324856 meV
OUTCAR: 2 f = 93.879635 THz 589.863143 2PiTHz 3131.487454 cm-1 388.255101 meV
OUTCAR: 3 f = 87.224223 THz 548.045959 2PiTHz 2909.486829 cm-1 360.730522 meV
OUTCAR: 4 f = 41.698346 THz 261.998437 2PiTHz 1390.907075 cm-1 172.450561 meV
OUTCAR: 5 f = 40.140315 THz 252.209037 2PiTHz 1338.936745 cm-1 166.007059 meV
OUTCAR: 6 f = 30.163342 THz 189.521869 2PiTHz 1006.140764 cm-1 124.745601 meV
OUTCAR: 7 f = 21.251889 THz 133.529559 2PiTHz 708.886704 cm-1 87.890781 meV
OUTCAR: 8 f = 18.131372 THz 113.922773 2PiTHz 604.797466 cm-1 74.985356 meV
OUTCAR: 9 f = 12.049774 THz 75.710960 2PiTHz 401.937171 cm-1 49.833876 meV
OUTCAR: 10 f = 10.907218 THz 68.532074 2PiTHz 363.825633 cm-1 45.108646 meV
OUTCAR: 11 f = 8.361187 THz 52.534886 2PiTHz 278.899160 cm-1 34.579101 meV
OUTCAR: 12 f = 4.787054 THz 30.077947 2PiTHz 159.678924 cm-1 19.797671 meV
OUTCAR: 13 f = 3.868253 THz 24.304953 2PiTHz 129.031043 cm-1 15.997816 meV
OUTCAR: 14 f = 3.147595 THz 19.776920 2PiTHz 104.992451 cm-1 13.017410 meV
OUTCAR: 15 f/i= 16.133248 THz 101.368184 2PiTHz 538.147194 cm-1 66.721772 meV
next I use VTSTTools.
DISPLACECAR(the first column is the number of rows, only for clarity):
1 0.0 0.0 0.0
2 0.0 0.0 0.0
3 0.0 0.0 0.0
4 0.0 0.0 0.0
5 0.0 0.0 0.0
6 0.0 0.0 0.0
7 0.0 0.0 0.0
8 0.0 0.0 0.0
9 0.0 0.0 0.0
10 0.0 0.0 0.0
11 0.0 0.0 0.0
12 0.0 0.0 0.0
13 0.0 0.0 0.0
14 0.0 0.0 0.0
15 0.002 0.002 0.002 #connected to adsorbates, I use "T T T" flag for corresponding postion on POSCAR
16 0.0 0.0 0.0
17 0.0 0.0 0.0
18 0.0 0.0 0.0
19 0.0 0.0 0.0
20 0.0 0.0 0.0
21 0.0 0.0 0.0
22 0.0 0.0 0.0
23 0.0 0.0 0.0
24 0.0 0.0 0.0
25 0.0 0.0 0.0
26 0.0 0.0 0.0
27 0.0 0.0 0.0
28 0.0 0.0 0.0
29 0.0 0.0 0.0
30 0.002 0.002 0.002
31 0.0 0.0 0.0
32 0.0 0.0 0.0
33 0.0 0.0 0.0
34 0.0 0.0 0.0
35 0.0 0.0 0.0
36 0.0 0.0 0.0
37 0.0 0.0 0.0
38 0.0 0.0 0.0
39 0.0 0.0 0.0
40 0.0 0.0 0.0
41 0.0 0.0 0.0
42 0.0 0.0 0.0
43 0.0 0.0 0.0
44 0.0 0.0 0.0
45 0.0 0.0 0.0
46 0.0 0.0 0.0
47 0.0 0.0 0.0
48 0.002 0.002 0.002
49 0.0 0.0 0.0
50 0.0 0.0 0.0
51 0.0 0.0 0.0
52 0.0 0.0 0.0
53 0.0 0.0 0.0
54 0.0 0.0 0.0
55 0.0 0.0 0.0
56 0.0 0.0 0.0
57 0.0 0.0 0.0
58 0.0 0.0 0.0
59 0.0 0.0 0.0
60 0.0 0.0 0.0
61 0.0 0.0 0.0
62 0.0 0.0 0.0
63 0.0 0.0 0.0
64 0.0 0.0 0.0
65 0.002 0.002 0.002
66 0.002 0.002 0.002
67 0.002 0.002 0.002
68 0.002 0.002 0.002
69 0.002 0.002 0.002

INCAR
SYSTEM=1/16 zn on pd(111) surface
ISMEAR= 1
SIGMA=0.10
GGA=91
IALGO=48
ISIF = 2
ENMAX= 400
ENAUG=650
NSW=4 #DOF=24/8+1,use 6cpu
IBRION=3
VOSKOWN=1
LREAL=Auto
LMAXPAW=0
LPLANE=.TRUE.
ISYM=0
LCHARG=.FALSE.
ICHAIN=1
IMAGES=8
POTIM=0.0
EDIFF=1E-7
LWAVE=.FALSE.

output of freq.dat
535.295081 cm^{-1} ... 1
116.801593 cm^{-1} ... 1
47.616238 cm^{-1} ... 0
89.233606 cm^{-1} ... 0
105.527254 cm^{-1} ... 0
131.460212 cm^{-1} ... 0
141.120705 cm^{-1} ... 0
150.224787 cm^{-1} ... 0
154.030306 cm^{-1} ... 0
174.836285 cm^{-1} ... 0
187.722061 cm^{-1} ... 0
195.593805 cm^{-1} ... 0
198.400289 cm^{-1} ... 0
271.582240 cm^{-1} ... 0
398.544034 cm^{-1} ... 0
429.426905 cm^{-1} ... 0
601.296167 cm^{-1} ... 0
692.341275 cm^{-1} ... 0
1007.040875 cm^{-1} ... 0
1332.429621 cm^{-1} ... 0
1384.423962 cm^{-1} ... 0
2927.528023 cm^{-1} ... 0
3146.411528 cm^{-1} ... 0
3230.090377 cm^{-1} ... 0

Also, if I use this file to calculate the prefactor, can I delete the small imaginary frequency to guarantee TS has only one imaginary frequency and IS has zero?

Thanks.

Re: about DYNAMICAL_MATRIX calculation

Posted: Thu Jul 01, 2010 2:35 am
by graeme
Certainly do not ignore a small negative mode when calculating a prefactor! This indicates a problem with the saddle point geometry or the dynamical matrix calculation which must be resolved in order to calculate a harmonic prefactor.

Why has the IBRION=5 calculation given 15 modes whereas the vtstcode dynmat calculations gives 24? Did you look at just the adsorbate modes using the built-in vasp routine? If so, start by comparing the two calculations using the same degrees of freedom.

The second thing I would consider is that the saddle point was well-converged. Were the substrate atoms relaxed in this calculation? What was the residual force on the saddle geometry?

Then, make sure that the saddle modes are insensitive to the displacement. You should not see a difference in the range of displacements from 0.005 to 0.001. Also check that the calculation finished properly - for example by making sure that there are no zero rows in the dynamical matrix. One final suggestion: to exactly compare with vasp, you can also calculate the -0.002 displacements and then use our dymfit.pl script to average these dynamical matrices and thereby use a central difference approximation.

But again, this must be sorted out before you can trust a harmonic prefactor.

Re: about DYNAMICAL_MATRIX calculation

Posted: Fri Jul 02, 2010 8:10 am
by barryhyc
Thanks Prof. graeme for kindly reply.

The different numbers of modes are due to I only consider the adsorbate (5 atoms) using IBRION=5 while I look at three additional surface atoms (8 atoms) for matrix calculation which I refer to previous posts. I am afraid if the calculation of matrix is not include the surface atoms related to adsorbates, the more negative modes would appear. Anyway, I accept your advice and will recalculate the matrix only the adsorbates with the DOF=16 and then compare with the result of IBRION=5.

The configuration of TS is well converged with force criterion (0.03). I construct four layers of slab and relax the upper two layers. I used this settings for previous work and the calculation always obtain one imaginary frequency on TS. So, I still confused why I get one more negative modes when using VTSTTools? Is the calculation process is incorrect or some settings of parameter is sensitive to the calculation result?

I checked the file of freq.mat and there are no zeros rows. But I am sorry I do not understand your suggestions about the following two senstences ("Then, make sure that the saddle modes are insensitive to the displacement. You should not see a difference in the range of displacements from 0.005 to 0.001.") . Do you mean I need to prepare more DISPLACECARs with different displacements in the range of 0.005 to 0.001? If so, this calculations is a bit expensive.

Re: about DYNAMICAL_MATRIX calculation

Posted: Wed Jul 07, 2010 3:08 am
by graeme
Yes, that's right, I was suggesting that you try either a larger or smaller displacement (e.g. 0.001 or 0.005) and see if the modes are sensitive to the displacement. You really need to do this kind of check with any finite difference calculation. If you are convinced that there are problems with our code, and you are willing to upload your calculation, I'll take a look at it.

Another possible check is to run in serial (I see that you are doing an 8 image parallel calculation), and make sure that there are no differences in the modes.