Page 1 of 1

Possible bug in mlwf.F of vasp6.3 for non-collinear calculations

Posted: Sun Mar 13, 2022 4:11 am
by domenico_disante1
Dear Developers,

I think that the following instruction, in mlwf.F of vasp 6.3 at the line 1125, contains a bug:

MLWF%LPRJ_functions(IS)%spin_qaxis = proj_s_qaxisx(3,IS)

Indeed, spin_qaxis is a three-components vectors containing the spin-quantization axis of the projectors. After the above instruction, all these components will assume the same value proj_s_qaxisx(3,IS), as for example read from the wannier90.win file. In other words, the default values spin_qaxis=(0,0,1) are always overwritten to spin_qaxis=(1,1,1). Most probably, the correct line code should be

MLWF%LPRJ_functions(IS)%spin_qaxis = proj_s_qaxisx(:,IS)

If what I write is correct, it means that the spin-full Wannier hamiltonians wannier90_hr.dat created by wannier90 from vasp 6.3 AMN files have an unexpected spin-quantization axis. This may be problematic for the calculation and interpretation of quantities of interest for topological systems, such as spin-expectation values and spin-Berry curvature.

Looking forward to hearing from you,
Best regards,
Domenico Di Sante

Re: Possible bug in mlwf.F of vasp6.3 for non-collinear calculations

Posted: Mon Mar 14, 2022 10:43 am
by marie-therese.huebsch
Dear Domenico Di Sante,

Thank you very much for reporting this bug!! Yes, this is indeed wrong and it will be corrected in the next version (6.3.1). We are sorry this has caused problems in your calculations and potentially for other users.

Best regards,
Marie-Therese

Re: Possible bug in mlwf.F of vasp6.3 for non-collinear calculations

Posted: Wed Dec 20, 2023 1:35 pm
by valln59
Respected Herr. @domenico_disante1,
thank you for pointing out this issue. With VASP-6.2.1, I face the same issue.
I try to run non-collinear calculations along with wannier90 options. I set NUM_WANN = 12 in INCAR, but vasp_ncl understands it differently and is trying to get 20 projections.

So I changed the line
MLWF%LPRJ_functions(IS)%spin_qaxis = proj_s_qaxisx(3,IS)
in the source code (mlwf.F ; line number 840 in ver 6.2.1 unlike ver 6.3) to
MLWF%LPRJ_functions(IS)%spin_qaxis = proj_s_qaxisx(:,IS)
and recompiled vasp.

still, vasp_ncl creates the same problem. Again, vasp_ncl is trying to get 20 projections. So What I understand is, that modifying this line alone does not solve this issue.

At present, our group can not upgrade the VASP version to 6.3. so if there is a patch file for this particular issue for vasp-6.2.1 that would help us a lot.
I request @marie-therese.huebsch and @domenico_disante1 for your valuable comments on solving this issue in vasp-6.2.1.

Looking forward to your further communications.

Thank you

Best regards,

Muthu
Research scholar
Helmholtz Center - Dresen

Re: Possible bug in mlwf.F of vasp6.3 for non-collinear calculations

Posted: Thu Dec 21, 2023 12:05 pm
by marie-therese.huebsch
Dear Mathu,

As stated, the issue has been solved for VASP >=6.3.1. In order to have access and be entitled to patches and bugfixes one needs to have a valid license. If there is any technical issue with the process of upgrading, please let me know. I am happy to assist.

Best regards,
Marie-Therese