siesta-project / aiida_siesta_plugin

Source code for the AiiDA-Siesta package (plugin and workflows). See wiki
Other
6 stars 11 forks source link

Bands parsing in non-collinear spin cases #31

Open bosonie opened 5 years ago

bosonie commented 5 years ago

A check is needed on the structure of the siesta .bands file in the case of non-collinear spins / spin-orbit coupling in order to make sure that the parser works correctly. In the case of SpinOrbit option for Siesta 4.1 (example_soc.py), the siesta .bands file shows nspin=1 and the parser works accordingly, but I'm not sure it is physically correct. Moreover I never tested Siesta 4.0.1 in the non-collinear case.

bosonie commented 4 years ago

Also versions Siesta 4.0.* have the same behavior, nspin=1 is reported and the parsing goes on like a normal non-spin situation. For the moment, I will resolve this issue specifying in the documentation the above mentioned behavior. No information in the bands output is available to distinguish between the non-spin and spin-non-collinear case.

albgar commented 4 years ago

Indeed, the handling of the bands file in Siesta is not satisfactory. Other files (the WFSX and EIG, for example, now output the full nspin (1,2,4,8) flag, but the bands file does not. It uses only the distinction between "one" and "two" "spin blocks". Luckily, in AiiDA you have full information about the run, and can make sense more fully of the file. But if you found a lone .bands file out on the street you would not be able to do much with it.