Non-collinear VASP compilation

Questions regarding the compilation of VASP on various platforms: hardware, compilers and libraries, etc.


Moderators: Global Moderator, Moderator

Post Reply
Message
Author
leogursky

Non-collinear VASP compilation

#1 Post by leogursky » Wed Oct 14, 2015 12:45 am

Hello,

I've recently re-compiled VASP for non-collinear magnetism calculation. The only change I've made is disable the -DNGXhalf and -DNGZhalf In the makefile.

Before I make this change, I get error message telling me to re-compile vasp without the two flags above. This is as expected.

However, with the re-compiled VASP, the error message above disappeared, but VASP seems not be able to read triplet of moments in MAGMOM. For example, for my 32-atom system, I initialize the system with 32 triplets:

#Non-collinear magnetic parameters
ISPIN = 2
LNONCOLLINEAR=.TRUE.
MAGMOM = 1 0 0 0 1 0 0 -1 0 0 1 0 0 0 1 -1 0 0 0 0 1 -1 0 0 0 0 -1 1 0 0 0 0 1 0 -1 0 1 0 0 0 0 1 0 0 1 1 0 0 0 1 0 1 0 0 -1 0 0 0 1 0 1 0 0 0 0 1 1 0 0 0 0 1 0 0 1 0 -1 0 0 1 0 -1 0 0 0 0 1 0 1 0 0 0 1 0 -1 0

but I got an error message as:

Error reading item 'MAGMOM' from file INCAR.
Error code was IERR=0 ... . Found N= 90 data.

It seems that VASP read the numbers one by one, instead of by triplets.

Can anyone help me with this problem?

admin
Administrator
Administrator
Posts: 2921
Joined: Tue Aug 03, 2004 8:18 am
License Nr.: 458

Re: Non-collinear VASP compilation

#2 Post by admin » Mon Mar 05, 2018 2:30 pm

for MAGMOM in a non-collinear calculation, you have to give a triplet of moments for each atom, you are correct
however it it seems that only 90 triplets were found, although you gave 96. The reason may be the following: the default string length to read
the moments is 255 characters altogether (including MAGMOM = ) any additional characters are ignored.
If this has happened in your case as well (please check your MAGMOM line in INCAR!) please
uncomment the line
#define LONGCHAR
in drdatab.F (in lib) and re-compile vasp.
then, the allowed string length is increased to 32767 characters

Post Reply