-
Notifications
You must be signed in to change notification settings - Fork 50
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
spin polarized cased #4
Comments
Yeah, It seems to be that BandUp does not work with QE spin polarized calculations. I have got an error during unfolding process. |
It seems that BANDUP code is not implemented for spin polarized calculations. |
Hello! First, sorry for not replying very quickly to this. I am working on other projects now and it has been extremely difficult to maintain the code without help (this is actually why I made the code free and open from the beginning, so people in the community could not only use it, but also collaborate with coding). Back to your question: I use QE's own routines to read QE wavefunctions (I didn't write those myself). In general, however, you select the spin channel to be parsed by bandup by using the command line option "-spin_channel", e.g., "./bandup -spin_channel 2" (you can run the code with the "-h" option to get a list of all supported command line arguments). Does that work? If not, then I can assist anyone interested in helping fixing this. |
Indeed, I run band up with the spin channel option but i got: FROM IOTK LIBRARY, VERSION 1.2.0UNRECOVERABLE ERROR (ierr=1)ERROR IN: iotk_scan_end (iotk_scan.f90:241)CVS Revision: 1.23foundl######################################################################################################################## I recompiled the iotk module in QE but this error persist. I will be glad to collaborate solving this issue and extend this code to other ab-initio packages. |
Replacing the subroutine "read_qe_evec_file" in the read_qe_wavefunctions_mod.f90 by the following lines
|
Related to this issue: is bandup implemented for non-collinear spin case? |
Dear @ahzeeshan, yes, bandup is implemented for the non-collinear spin case, when the two spin channels are mixed by spin-orbit coupling (wavefunctions are spinors) That was the snece of the paper http://dx.doi.org/10.1103/PhysRevB.91.041116 . When the spin channels are separated (spin-polarised) the unfolding procedure is the same as for scalar (spinless) wavefunctions. The only problem could be in reading wavefunctions and consistency with the particular version of the abinitio code. |
Spin pilarized calculations with QE can be performed with banduppy https://github.com/band-unfolding/banduppy using the parameter |
Looking at your code, here and here it seems spin polarized cases are not implemented, (else this would segfault:
bandup/src/external/espresso-5.1_modules_for_BandUP/Modules/qexml.f90
line 4026
,ik_eff
would lead to an overflow, going beyond number of kpoints, meaning this was considered but not implemented), what is needed to introduce proper support for spin polarized cases?The text was updated successfully, but these errors were encountered: