VASP and Wannier90 with SOC
Posted: Thu Jul 02, 2020 8:03 am
Dear VASP developers,
I would like to report an issue regarding usage of VASP 5.4.4 and wannier90 2.1.0:
First, VASP has been compiled with the relevant -DVASP2WANNIER90v2 compiler option. Also, W90 is run in library mode with the lib file being properly linked to VASP as far as I can see.
In the attached files, you will see that the code runs as it should once "LSORBIT=FALSE", so that at the moment I doubt this is an installation issue.
However, once I use "LSORBIT = T" and the interface to Wannier90, then the VASP run goes through normally, however, the interface (i.e., the actual W90 calculation) crashes.
I'm now providing additional information from my debugging and tests that may be of help to you:
the most common thing to happen is that the number of projections simply runs too far. Please see attached tests, where I have saved the value of variable "nproj" into the sdout file of VASP. E.g., I expect to see an output related to ten projections, but the index runs further.
Further information, potentially not reliable: I think it is related to the file "mlwf.F" and the following cycle:
IF (proj_l(ICNTR)==0.AND.proj_m(ICNTR)==0.AND.proj_radial(ICNTR)==0) CYCLE sites
I'm speculating that something between wannier1.2 and wannier2.0 in terms of how spinors are handled must have changed, so that this condition (or another one close to the place of this one in the file mlwf.F) may require an update.
I'm happy to run further tests or provide further information.
Your help is greatly appreciated, thanks a lot!
Best wishes,
David
Attachment doesn't work at the moment, so here is a weblink to the test files I produced:
https://www.dropbox.com/s/9g2kuvhzdeucf ... s.zip?dl=0
I would like to report an issue regarding usage of VASP 5.4.4 and wannier90 2.1.0:
First, VASP has been compiled with the relevant -DVASP2WANNIER90v2 compiler option. Also, W90 is run in library mode with the lib file being properly linked to VASP as far as I can see.
In the attached files, you will see that the code runs as it should once "LSORBIT=FALSE", so that at the moment I doubt this is an installation issue.
However, once I use "LSORBIT = T" and the interface to Wannier90, then the VASP run goes through normally, however, the interface (i.e., the actual W90 calculation) crashes.
I'm now providing additional information from my debugging and tests that may be of help to you:
the most common thing to happen is that the number of projections simply runs too far. Please see attached tests, where I have saved the value of variable "nproj" into the sdout file of VASP. E.g., I expect to see an output related to ten projections, but the index runs further.
Further information, potentially not reliable: I think it is related to the file "mlwf.F" and the following cycle:
IF (proj_l(ICNTR)==0.AND.proj_m(ICNTR)==0.AND.proj_radial(ICNTR)==0) CYCLE sites
I'm speculating that something between wannier1.2 and wannier2.0 in terms of how spinors are handled must have changed, so that this condition (or another one close to the place of this one in the file mlwf.F) may require an update.
I'm happy to run further tests or provide further information.
Your help is greatly appreciated, thanks a lot!
Best wishes,
David
Attachment doesn't work at the moment, so here is a weblink to the test files I produced:
https://www.dropbox.com/s/9g2kuvhzdeucf ... s.zip?dl=0