Dear List,
I am a newbie in VASP calculations, studying the chemisorption of CH4 on Ni(111) , where I used a 3 layer Nickel slab, 12 A vaccum, 2x2 unitcell, (8 8 1) auto. k points, PBE functional, etc. (please see POSCAR/INCAR) and conjugate-gradient algorithm for the minimization.
PROBLEM:
I found a problem with my constrained geometry optimization at PAW-DFT:
I used flags “F� OR “T� in the POSCAR file, to make the constraints on the x, y, z positions during the optimization; But it seems to be working properly ONLY to some atoms. In this case – all the nickel atoms are freezed, (as per the< F F F >, flags) and some other coordinates- for ex. Cz [< F > flag – which remains at 3.5 A, in all optimization steps], But all other coordinates of the CH4, which is attached by < F > flag is moving!
I changed several parameters EXCEPT ibrion, which I kept to < 2 > always, shows the same tendency – it relaxes the coordinate with < F > flag !!.
Does anyone have some idea about this behavior? Did someone experience with this?
Or if possible, How can I do a constrained optimization in a safe way in VASP ?
DETAILS OF THE FILES:
INCAR:
--------------------------------------------------------------
SYSTEM = NI-CH4
ISTART = 0
ISIF=2
IBRION=2
EDIFF = 1E-3
EDIFFG = -1E-2
POTIM = 0.01
NSW=40
GGA=91
VOSKOWN=1
ISPIN=1
LREAL=A
PREC= Accurate
Electronic minimisation
ENCUT =400 eV
DOS related values
ISMEAR = -5;
POSCAR
--------------------------------------------------------------
Ni-CH4
1.0000
4.36130393 -2.518 0.0
4.36130393 2.518 0.0
0.0 0.0 16.0540126
12 1 4
Selective dynamics
Cartesian
.00000000 .00000000 -.02858610 F F F
2.18065197 1.25900000 -.02858610 F F F
2.18065197 -1.25900000 -.02858610 F F F
4.36130393 .00000000 -.02858610 F F F
1.45376813 .0000000 -2.05580070 F F F
3.63442009 1.2590000 -2.05580070 F F F
3.63442009 -1.2590000 -2.05580070 F F F
5.81507206 .0000000 -2.05580070 F F F
2.90753593 .00000000 -4.08264189 F F F
5.08818789 1.25900000 -4.08264189 F F F
5.08818789 -1.25900000 -4.08264189 F F F
7.26883986 .00000000 -4.08264189 F F F
-.00134965 .00000000 3.50000000 T F F
.51772049 .89768008 3.86520453 T T T
.51772049 -.89768008 3.86520453 T T T
-1.03852359 .00000000 3.86458322 T F T
-.00021200 .00000000 2.39768919 T F T
And CONTCAR, after optimizing:
--------------------------------------------------------------
…
12 1 4
Selective dynamics
Direct
0.0000000000000000 0.0000000000000000 0.9982193797455992 F F F
0.0000000005732232 0.5000000005732232 0.9982193797455992 F F F
0.5000000005732232 0.0000000005732232 0.9982193797455992 F F F
0.5000000000000000 0.5000000000000000 0.9982193797455992 F F F
0.1666666842455058 0.1666666842455058 0.8719447435839172 F F F
0.1666666836722825 0.6666666836722825 0.8719447435839172 F F F
0.6666666836722825 0.1666666836722825 0.8719447435839172 F F F
0.6666666842455058 0.6666666842455058 0.8719447435839172 F F F
0.3333333306582915 0.3333333306582915 0.7456933670277550 F F F
0.3333333300850683 0.8333333300850683 0.7456933670277550 F F F
0.8333333300850683 0.3333333300850683 0.7456933670277550 F F F
0.8333333306582915 0.8333333306582915 0.7456933670277550 F F F
-0.0001041249026444 0.9998452698984437 0.2180140309594591 T F F
0.8809668931150955 0.2372702363703456 0.2403813670624553 T T T
0.2373494594146753 0.8811139022113522 0.2403553853450800 T T T
0.8813215482685608 0.8809388652260211 0.2402658310105120 T F T
0.9999317248378382 0.9999756953421013 0.1493458263930275 T F T
…
So I guessed that, VASP catches the flags CORRECTLY but somehow the corresponding coordinates with < F > are changing !
The above geometry in the Cartesian coordinates which I took from the last “POSITION� data from the OUTCAR file is
(final) POSITION
-----------------------------------------------------
0.00000 0.00000 16.02543
2.18065 1.25900 16.02543
2.18065 -1.25900 16.02543
4.36130 0.00000 16.02543
1.45377 0.00000 13.99821
3.63442 1.25900 13.99821
3.63442 -1.25900 13.99821
5.81507 0.00000 13.99821
2.90754 0.00000 11.97137
5.08819 1.25900 11.97137
5.08819 -1.25900 11.97137
7.26884 0.00000 11.97137
4.36017 2.51787 3.50000
4.87697 -1.62083 3.85909
4.87796 1.62100 3.85867
7.68575 -0.00096 3.85723
8.72220 0.00011 2.39760
-------------------------------------------------------
which indicates the movements/displacements of the F-flagged coordinates [ie numbers 2.51787(Cy), -0.00096(H3y) ,0.00011(h4y) , which should be always 0.00000 ]
With best regards and thanks in advance,
Krishna Mohan G.P.
THEOR
Universiteit Leiden.
[size=16]T/F Flags in Constrained Optimization: doubts[/size]
Moderators: Global Moderator, Moderator
[size=16]T/F Flags in Constrained Optimization: doubts[/size]
Last edited by gpkmohan on Mon Jun 16, 2008 5:18 pm, edited 1 time in total.
-
- Full Member
- Posts: 201
- Joined: Thu Nov 02, 2006 4:35 pm
- License Nr.: 5-532
- Location: Ghent, Belgium
- Contact:
[size=16]T/F Flags in Constrained Optimization: doubts[/size]
check the initial positions in the outcar ;-)
I'm affraid this might just be due to VASP's strange use and mixing of coordinate systems.
Cartesian coordinates are only scaled, BUT not related to the basisvectors you give.
If you would use for example the 110 and 1-10 directions as basisvectors and then define a coordinate in cartesian as 100, then this is not along one of these 2 basisvectors but along the diagonal.
Check the vasp manual with regard to the POSCAR file for more information...Now an interesting question appears: Do the T and F act with regard to the Direct coordinate system, or to the system you give(direct or cartesian) if the later is the case, this means there is a bugg in VASP since cartesian coordinates are always transferred to direct after a run, so continuations wil fix a different direction then was first intended. Maybe the administrator could shed some light on this?
Danny
I'm affraid this might just be due to VASP's strange use and mixing of coordinate systems.
Cartesian coordinates are only scaled, BUT not related to the basisvectors you give.
If you would use for example the 110 and 1-10 directions as basisvectors and then define a coordinate in cartesian as 100, then this is not along one of these 2 basisvectors but along the diagonal.
Check the vasp manual with regard to the POSCAR file for more information...Now an interesting question appears: Do the T and F act with regard to the Direct coordinate system, or to the system you give(direct or cartesian) if the later is the case, this means there is a bugg in VASP since cartesian coordinates are always transferred to direct after a run, so continuations wil fix a different direction then was first intended. Maybe the administrator could shed some light on this?
Danny
Last edited by Danny on Mon Jun 16, 2008 7:43 pm, edited 1 time in total.
[size=16]T/F Flags in Constrained Optimization: doubts[/size]
Hi Danny thnx for the comments
from OUTCAR : after the Iteration 1
POSITION TOTAL-FORCE (eV/Angst)
-----------------------------------------------------------------------------------
0.00000 0.00000 16.02543 -0.000795 -0.000286 -0.176868
2.18065 1.25900 16.02543 -0.002545 0.004183 -0.236229
2.18065 -1.25900 16.02543 -0.001071 -0.002800 -0.240798
4.36130 0.00000 16.02543 0.003837 -0.000416 -0.244620
1.45377 0.00000 13.99821 0.004905 0.000527 -0.002146
3.63442 1.25900 13.99821 -0.002579 -0.004757 -0.002304
3.63442 -1.25900 13.99821 -0.001908 0.004657 -0.002083
5.81507 0.00000 13.99821 -0.000402 -0.000357 0.005440
2.90754 0.00000 11.97137 0.000742 0.000353 0.200433
5.08819 1.25900 11.97137 0.000103 0.000220 0.208404
5.08819 -1.25900 11.97137 -0.001302 -0.001647 0.210770
7.26884 0.00000 11.97137 0.000947 0.000400 0.214594
8.72126 0.00000 3.50000 0.007903 -0.000040 0.241800
4.87902 -1.62032 3.86520 -0.050096 -0.077086 -0.059983
4.87902 1.62032 3.86520 -0.050096 0.077063 -0.059980
7.68408 0.00000 3.86458 0.094673 -0.000007 -0.060634
8.72240 0.00000 2.39769 -0.002318 -0.000007 0.004206
-----------------------------------------------------------------------------------
total drift: 0.000171 0.000160 -0.001382
means it really CATCH the flags at the beginning. ISNT ?
but still I wonder [REALLY WONDER] why the flags are catched well by all the Nickel atoms[especially in Y coordinates with 5 digits precision] as we can see from in OUTCAR /CONTCAR
intersetingly When I used IBRION=1 , it shows the same results !!!!!!!!
k
from OUTCAR : after the Iteration 1
POSITION TOTAL-FORCE (eV/Angst)
-----------------------------------------------------------------------------------
0.00000 0.00000 16.02543 -0.000795 -0.000286 -0.176868
2.18065 1.25900 16.02543 -0.002545 0.004183 -0.236229
2.18065 -1.25900 16.02543 -0.001071 -0.002800 -0.240798
4.36130 0.00000 16.02543 0.003837 -0.000416 -0.244620
1.45377 0.00000 13.99821 0.004905 0.000527 -0.002146
3.63442 1.25900 13.99821 -0.002579 -0.004757 -0.002304
3.63442 -1.25900 13.99821 -0.001908 0.004657 -0.002083
5.81507 0.00000 13.99821 -0.000402 -0.000357 0.005440
2.90754 0.00000 11.97137 0.000742 0.000353 0.200433
5.08819 1.25900 11.97137 0.000103 0.000220 0.208404
5.08819 -1.25900 11.97137 -0.001302 -0.001647 0.210770
7.26884 0.00000 11.97137 0.000947 0.000400 0.214594
8.72126 0.00000 3.50000 0.007903 -0.000040 0.241800
4.87902 -1.62032 3.86520 -0.050096 -0.077086 -0.059983
4.87902 1.62032 3.86520 -0.050096 0.077063 -0.059980
7.68408 0.00000 3.86458 0.094673 -0.000007 -0.060634
8.72240 0.00000 2.39769 -0.002318 -0.000007 0.004206
-----------------------------------------------------------------------------------
total drift: 0.000171 0.000160 -0.001382
means it really CATCH the flags at the beginning. ISNT ?
but still I wonder [REALLY WONDER] why the flags are catched well by all the Nickel atoms[especially in Y coordinates with 5 digits precision] as we can see from in OUTCAR /CONTCAR
intersetingly When I used IBRION=1 , it shows the same results !!!!!!!!
k
Last edited by gpkmohan on Mon Jun 16, 2008 8:50 pm, edited 1 time in total.
-
- Sr. Member
- Posts: 339
- Joined: Mon Apr 24, 2006 9:07 am
- License Nr.: 173
- Location: Gothenburg, Sweden
[size=16]T/F Flags in Constrained Optimization: doubts[/size]
The 'Selective dynamics' tag doesn't lock carteesian coordinates, but locks the relative coordinates of the lattice vectors. If you lock the coordinate for the second lattice vector as you do for the C, H3 and H4 they will still be allowed to move along the first lattice vector.
If you take the difference between the final coordinates and the initial coordinates (carteesian representation), the coordinate change in the plane spaned by the two first basis vectors should be a vector along the direction of the first lattice vector. This appears to be the case for C, H3 and H4. Thus everything appears to be working in a correct manner.
Best regards,
/Dan Fors
<span class='smallblacktext'>[ Edited Tue Jun 17 2008, 01:33PM ]</span>
If you take the difference between the final coordinates and the initial coordinates (carteesian representation), the coordinate change in the plane spaned by the two first basis vectors should be a vector along the direction of the first lattice vector. This appears to be the case for C, H3 and H4. Thus everything appears to be working in a correct manner.
Best regards,
/Dan Fors
<span class='smallblacktext'>[ Edited Tue Jun 17 2008, 01:33PM ]</span>
Last edited by forsdan on Tue Jun 17, 2008 11:26 am, edited 1 time in total.
-
- Administrator
- Posts: 2921
- Joined: Tue Aug 03, 2004 8:18 am
- License Nr.: 458
[size=16]T/F Flags in Constrained Optimization: doubts[/size]
a small further hint (to confirm fosdan's reply): please compare the read positions, converted to direct coordinates (
position of ions in fractional coordinates (direct lattice)
in OUTCAR)
to the relaxed output coordinates in CONTCAR. You will find that the fixed coordinates have not been changed
position of ions in fractional coordinates (direct lattice)
in OUTCAR)
to the relaxed output coordinates in CONTCAR. You will find that the fixed coordinates have not been changed
Last edited by admin on Thu Jun 19, 2008 3:47 pm, edited 1 time in total.