Questions about nebresult.pl
Moderator: moderators
Questions about nebresult.pl
Dear Graeme:
Here are two questions about the Climbing NEB calculation and analysis.
1)The example INCAR file given in this website show that the NEB convergence criteria take EDIFFG=-0.001, I think this value is often too small for large slab or cluster system, in my (12x8x21 supercell size) slab system, I use EDIFFG=-0.1, I wonder my setting is small enough to obtain the correct transition state.
2)My old version (4.6.28) was compiled with PGI compiler, and all things about C-NEB calculations and analysis are right. However my newest version (4.6.31) compiled with IFC compiler show some errors during the C-NEB analysis, the details are:
firstly, I finished a C-NEB calculation (8 or 10 IMAGES), then I run the vfinl.pl(this step show no error), after that I run the nebresults.pl to give out the mep.eps, although I can obtain the mep.eps file, but here is the error information:
[b][color=green]gnuplot> plot "fe.dat" u 1:2 axis x1y1 t "Max force" w lp lt 1 lw 2.4 pt 7 ps 0.9, "fe.dat" u 1:3 axis x1y2 t "Energy" w lp lt 3 lw 2.4 pt 7 ps 0.9
^
"/opt/VASP/vtstscripts/vef.gnu", line 11: no data point found in specified file[/color][/b]
and in the vaspgr directory show 8 or 10 null vaspout(1-8 or 1-10).eps files.
After careful check, I found that the OUTCAR files given by tow different VASP (PGI and IFC compiled) show some different in the end parts of the OUTCAR files.
[b]PGI-VASP given out:[/b]
[color=red] NEB: Forces: par spring, perp spring, perp real 0.023902 0.000000 0.069815
NEB: distance to prev, next image, angle between 1.263764 1.258983 132.778095
NEB: spring constants (prev,next) 5.000000 5.000000
NEB: projections on to tangent (spring, real) -0.023902 0.113190
NEB: Forces: max atom, RMS 0.048170 0.013045
FORCES: max atom, RMS 0.048170 0.013045
Quasi-Newton relaxation of ions (Broydens 2nd method)
g(Force) = 0.147E-03 g(Stress)= 0.000E+00
retain information from N= 1 steps
eigenvalues of (default step * inverse Hessian matrix)
average eigenvalue of G= 20.9148
eigenvalue spectrum of G is 20.9148[/color]
[b]IFC-VASP given out:[/b]
[color=blue] NEB: forces: par spring, perp REAL, dneb 0.005831 0.104605 0.000000
NEB: distance to prev, next image, angle between 0.519301 0.520468 157.022063
NEB: projections on to tangent (spring, REAL) 0.005831 0.348357
FORCES: max atom, RMS 0.071629 0.011939
FORCE total and by dimension 0.104767 0.071629[/color]
I think this my be the main reason for no vaspout(1-8 or 1-10).eps file in vaspgr directory and the error information.
Can you help to fix this problem?
Thks!
Here are two questions about the Climbing NEB calculation and analysis.
1)The example INCAR file given in this website show that the NEB convergence criteria take EDIFFG=-0.001, I think this value is often too small for large slab or cluster system, in my (12x8x21 supercell size) slab system, I use EDIFFG=-0.1, I wonder my setting is small enough to obtain the correct transition state.
2)My old version (4.6.28) was compiled with PGI compiler, and all things about C-NEB calculations and analysis are right. However my newest version (4.6.31) compiled with IFC compiler show some errors during the C-NEB analysis, the details are:
firstly, I finished a C-NEB calculation (8 or 10 IMAGES), then I run the vfinl.pl(this step show no error), after that I run the nebresults.pl to give out the mep.eps, although I can obtain the mep.eps file, but here is the error information:
[b][color=green]gnuplot> plot "fe.dat" u 1:2 axis x1y1 t "Max force" w lp lt 1 lw 2.4 pt 7 ps 0.9, "fe.dat" u 1:3 axis x1y2 t "Energy" w lp lt 3 lw 2.4 pt 7 ps 0.9
^
"/opt/VASP/vtstscripts/vef.gnu", line 11: no data point found in specified file[/color][/b]
and in the vaspgr directory show 8 or 10 null vaspout(1-8 or 1-10).eps files.
After careful check, I found that the OUTCAR files given by tow different VASP (PGI and IFC compiled) show some different in the end parts of the OUTCAR files.
[b]PGI-VASP given out:[/b]
[color=red] NEB: Forces: par spring, perp spring, perp real 0.023902 0.000000 0.069815
NEB: distance to prev, next image, angle between 1.263764 1.258983 132.778095
NEB: spring constants (prev,next) 5.000000 5.000000
NEB: projections on to tangent (spring, real) -0.023902 0.113190
NEB: Forces: max atom, RMS 0.048170 0.013045
FORCES: max atom, RMS 0.048170 0.013045
Quasi-Newton relaxation of ions (Broydens 2nd method)
g(Force) = 0.147E-03 g(Stress)= 0.000E+00
retain information from N= 1 steps
eigenvalues of (default step * inverse Hessian matrix)
average eigenvalue of G= 20.9148
eigenvalue spectrum of G is 20.9148[/color]
[b]IFC-VASP given out:[/b]
[color=blue] NEB: forces: par spring, perp REAL, dneb 0.005831 0.104605 0.000000
NEB: distance to prev, next image, angle between 0.519301 0.520468 157.022063
NEB: projections on to tangent (spring, REAL) 0.005831 0.348357
FORCES: max atom, RMS 0.071629 0.011939
FORCE total and by dimension 0.104767 0.071629[/color]
I think this my be the main reason for no vaspout(1-8 or 1-10).eps file in vaspgr directory and the error information.
Can you help to fix this problem?
Thks!
1) I would think the 0.1 should be an absolute upper limit on EDDIFG, but I agree that 0.001 can be very optimistic. Usually I start with 0.05, then starting from the previously converged run, I set it to 0.01, then 0.005 etc. until I think the path is properly converged.
2) I am little bit confused on what is going on here. Do you have the latest VTST source (http://theory.cm.utexas.edu/vtsttools/downloads/) compiled with your version of VASP? Also, can you run *vef.pl* in each subdirectory, 01, 02, 03, ...? The script uses *grep 'FORCES: max atom, RMS' OUTCAR* to get the forces from the OUTCAR. It seems to me that this line is actually in your OUTCAR file, so it should work.
2) I am little bit confused on what is going on here. Do you have the latest VTST source (http://theory.cm.utexas.edu/vtsttools/downloads/) compiled with your version of VASP? Also, can you run *vef.pl* in each subdirectory, 01, 02, 03, ...? The script uses *grep 'FORCES: max atom, RMS' OUTCAR* to get the forces from the OUTCAR. It seems to me that this line is actually in your OUTCAR file, so it should work.
Sorry, I made a mistake.
In each subdirectory, vef.pl works and give out a fe.dat file as following
0 1.14866400 -266.112272 0
1 1.15193500 -266.141583 -0.029311
2 1.15533100 -266.200012 -0.08774
3 1.15132200 -266.287043 -0.174771
4 1.13457000 -266.400897 -0.288625
5 1.08159600 -266.538917 -0.426645
6 0.97274300 -266.690755 -0.578483
7 0.78127900 -266.838816 -0.726544
8 0.50515900 -266.957626 -0.845354
9 0.27471400 -267.026304 -0.914032
10 0.45337200 -267.048776 -0.936504
11 0.36219300 -267.051695 -0.939423
12 0.15759600 -267.056563 -0.944291
13 0.12370000 -267.057983 -0.945711
14 0.11604900 -267.059076 -0.946804
15 0.11241900 -267.060186 -0.947914
16 0.08059600 -267.061273 -0.949001
but, when I run nebresults.pl after vfinl.pl running, is gives out a null fe.dat file and give following information:
[H-storage@C1 out]$ nebresults.pl
Unziping the OUTCARs ... done
Do nebbarrier.pl ; nebspline.pl
Do nebef.pl
Do nebmovie.pl
Do nebconverge.pl
gnuplot> plot "fe.dat" u 1:2 axis x1y1 t "Max force" w lp lt 1 lw 2.4 pt 7 ps 0.9, "fe.dat" u 1:3 axis x1y2 t "Energy" w lp lt 3 lw 2.4 pt 7 ps 0.9
^
"/opt/VASP/vtstscripts/vef.gnu", line 11: no data point found in specified file
gnuplot> plot "fe.dat" u 1:2 axis x1y1 t "Max force" w lp lt 1 lw 2.4 pt 7 ps 0.9, "fe.dat" u 1:3 axis x1y2 t "Energy" w lp lt 3 lw 2.4 pt 7 ps 0.9
^
"/opt/VASP/vtstscripts/vef.gnu", line 11: no data point found in specified file
gnuplot> plot "fe.dat" u 1:2 axis x1y1 t "Max force" w lp lt 1 lw 2.4 pt 7 ps 0.9, "fe.dat" u 1:3 axis x1y2 t "Energy" w lp lt 3 lw 2.4 pt 7 ps 0.9
^
"/opt/VASP/vtstscripts/vef.gnu", line 11: no data point found in specified file
gnuplot> plot "fe.dat" u 1:2 axis x1y1 t "Max force" w lp lt 1 lw 2.4 pt 7 ps 0.9, "fe.dat" u 1:3 axis x1y2 t "Energy" w lp lt 3 lw 2.4 pt 7 ps 0.9
^
"/opt/VASP/vtstscripts/vef.gnu", line 11: no data point found in specified file
gnuplot> plot "fe.dat" u 1:2 axis x1y1 t "Max force" w lp lt 1 lw 2.4 pt 7 ps 0.9, "fe.dat" u 1:3 axis x1y2 t "Energy" w lp lt 3 lw 2.4 pt 7 ps 0.9
^
"/opt/VASP/vtstscripts/vef.gnu", line 11: no data point found in specified file
gnuplot> plot "fe.dat" u 1:2 axis x1y1 t "Max force" w lp lt 1 lw 2.4 pt 7 ps 0.9, "fe.dat" u 1:3 axis x1y2 t "Energy" w lp lt 3 lw 2.4 pt 7 ps 0.9
^
"/opt/VASP/vtstscripts/vef.gnu", line 11: no data point found in specified file
gnuplot> plot "fe.dat" u 1:2 axis x1y1 t "Max force" w lp lt 1 lw 2.4 pt 7 ps 0.9, "fe.dat" u 1:3 axis x1y2 t "Energy" w lp lt 3 lw 2.4 pt 7 ps 0.9
^
"/opt/VASP/vtstscripts/vef.gnu", line 11: no data point found in specified file
gnuplot> plot "fe.dat" u 1:2 axis x1y1 t "Max force" w lp lt 1 lw 2.4 pt 7 ps 0.9, "fe.dat" u 1:3 axis x1y2 t "Energy" w lp lt 3 lw 2.4 pt 7 ps 0.9
^
"/opt/VASP/vtstscripts/vef.gnu", line 11: no data point found in specified file
Zipping the OUTCARs again ... done
Forces and Energy:
0 0.00913300 -267.24751700 0.00000000
1 0.07528400 -267.21345800 0.03405900
2 0.08573400 -267.12757100 0.11994600
3 0.08059600 -267.06127300 0.18624400
4 0.06557500 -266.90793600 0.33958100
5 0.06973000 -266.62659000 0.62092700
6 0.01833900 -266.40105800 0.84645900
7 0.01889900 -266.57966100 0.66785600
8 0.07162900 -266.83292600 0.41459100
9 0.00893000 -266.92551100 0.32200600
Extrema 1 found at image 0.000000 with energy: 0.000000
Extrema 2 found at image 5.997516 with energy: 0.846461
Extrema 3 found at image 9.000000 with energy: 0.322006
In each subdirectory, vef.pl works and give out a fe.dat file as following
0 1.14866400 -266.112272 0
1 1.15193500 -266.141583 -0.029311
2 1.15533100 -266.200012 -0.08774
3 1.15132200 -266.287043 -0.174771
4 1.13457000 -266.400897 -0.288625
5 1.08159600 -266.538917 -0.426645
6 0.97274300 -266.690755 -0.578483
7 0.78127900 -266.838816 -0.726544
8 0.50515900 -266.957626 -0.845354
9 0.27471400 -267.026304 -0.914032
10 0.45337200 -267.048776 -0.936504
11 0.36219300 -267.051695 -0.939423
12 0.15759600 -267.056563 -0.944291
13 0.12370000 -267.057983 -0.945711
14 0.11604900 -267.059076 -0.946804
15 0.11241900 -267.060186 -0.947914
16 0.08059600 -267.061273 -0.949001
but, when I run nebresults.pl after vfinl.pl running, is gives out a null fe.dat file and give following information:
[H-storage@C1 out]$ nebresults.pl
Unziping the OUTCARs ... done
Do nebbarrier.pl ; nebspline.pl
Do nebef.pl
Do nebmovie.pl
Do nebconverge.pl
gnuplot> plot "fe.dat" u 1:2 axis x1y1 t "Max force" w lp lt 1 lw 2.4 pt 7 ps 0.9, "fe.dat" u 1:3 axis x1y2 t "Energy" w lp lt 3 lw 2.4 pt 7 ps 0.9
^
"/opt/VASP/vtstscripts/vef.gnu", line 11: no data point found in specified file
gnuplot> plot "fe.dat" u 1:2 axis x1y1 t "Max force" w lp lt 1 lw 2.4 pt 7 ps 0.9, "fe.dat" u 1:3 axis x1y2 t "Energy" w lp lt 3 lw 2.4 pt 7 ps 0.9
^
"/opt/VASP/vtstscripts/vef.gnu", line 11: no data point found in specified file
gnuplot> plot "fe.dat" u 1:2 axis x1y1 t "Max force" w lp lt 1 lw 2.4 pt 7 ps 0.9, "fe.dat" u 1:3 axis x1y2 t "Energy" w lp lt 3 lw 2.4 pt 7 ps 0.9
^
"/opt/VASP/vtstscripts/vef.gnu", line 11: no data point found in specified file
gnuplot> plot "fe.dat" u 1:2 axis x1y1 t "Max force" w lp lt 1 lw 2.4 pt 7 ps 0.9, "fe.dat" u 1:3 axis x1y2 t "Energy" w lp lt 3 lw 2.4 pt 7 ps 0.9
^
"/opt/VASP/vtstscripts/vef.gnu", line 11: no data point found in specified file
gnuplot> plot "fe.dat" u 1:2 axis x1y1 t "Max force" w lp lt 1 lw 2.4 pt 7 ps 0.9, "fe.dat" u 1:3 axis x1y2 t "Energy" w lp lt 3 lw 2.4 pt 7 ps 0.9
^
"/opt/VASP/vtstscripts/vef.gnu", line 11: no data point found in specified file
gnuplot> plot "fe.dat" u 1:2 axis x1y1 t "Max force" w lp lt 1 lw 2.4 pt 7 ps 0.9, "fe.dat" u 1:3 axis x1y2 t "Energy" w lp lt 3 lw 2.4 pt 7 ps 0.9
^
"/opt/VASP/vtstscripts/vef.gnu", line 11: no data point found in specified file
gnuplot> plot "fe.dat" u 1:2 axis x1y1 t "Max force" w lp lt 1 lw 2.4 pt 7 ps 0.9, "fe.dat" u 1:3 axis x1y2 t "Energy" w lp lt 3 lw 2.4 pt 7 ps 0.9
^
"/opt/VASP/vtstscripts/vef.gnu", line 11: no data point found in specified file
gnuplot> plot "fe.dat" u 1:2 axis x1y1 t "Max force" w lp lt 1 lw 2.4 pt 7 ps 0.9, "fe.dat" u 1:3 axis x1y2 t "Energy" w lp lt 3 lw 2.4 pt 7 ps 0.9
^
"/opt/VASP/vtstscripts/vef.gnu", line 11: no data point found in specified file
Zipping the OUTCARs again ... done
Forces and Energy:
0 0.00913300 -267.24751700 0.00000000
1 0.07528400 -267.21345800 0.03405900
2 0.08573400 -267.12757100 0.11994600
3 0.08059600 -267.06127300 0.18624400
4 0.06557500 -266.90793600 0.33958100
5 0.06973000 -266.62659000 0.62092700
6 0.01833900 -266.40105800 0.84645900
7 0.01889900 -266.57966100 0.66785600
8 0.07162900 -266.83292600 0.41459100
9 0.00893000 -266.92551100 0.32200600
Extrema 1 found at image 0.000000 with energy: 0.000000
Extrema 2 found at image 5.997516 with energy: 0.846461
Extrema 3 found at image 9.000000 with energy: 0.322006
Can you send me (moller.plesset@gmail.com) all your files from the NEB run?
That's odd, I just ran nebresults.pl on the files you sent me and everything worked fine. Are you using the latest version of the scripts? I have now updated the nebconverge.pl so that *Forces* now reads *FORCES*.
Couple of points:
1) You should have the elements in the first line of the POSCAR, that way you can generate a movie with nebmovie.pl to visualize the process. In your case the first line should be 'Al Ti H'. You can use typeset.pl to automatically change your POSCARs and CONTCAR.
2) The best way to generate the initial linear path is by using nebmake.pl. Although it will give the same path as the old interpolatePOSCAR, it's easier to use.
Couple of points:
1) You should have the elements in the first line of the POSCAR, that way you can generate a movie with nebmovie.pl to visualize the process. In your case the first line should be 'Al Ti H'. You can use typeset.pl to automatically change your POSCARs and CONTCAR.
2) The best way to generate the initial linear path is by using nebmake.pl. Although it will give the same path as the old interpolatePOSCAR, it's easier to use.