Draft: Add writting of spin-orbit hamiltonian (only SO contribution) to netcdf, and generalize spin.orbitstrength
- Add writting of spin-orbit (SO) Hamiltonian (only SO contribution) to netcdf. The savehs.so fdf-flag is added.
- Move implementation of spin.orbitstrength into spinorb and nlefsm_so_offisite subroutines from atom.F, to generalize it to all pseudopotentials.
Details
Please detail what this MR introduces
-
Describe in details what this MR does? (link to the issue by writing # here) -
Does this MR change the behaviour of any fdf-flags? If so, ensure this is documented in the manual -
If new fdf-flags are added, please add thorough descriptions to the manual -
add a summary sentence in the ReleaseNotes.md file -
if this breaks compatibility, add mentions to the Docs/compatibility.tex
Why is it needed
The changes are useful for computing exchange parameters (Dzyloshinskii-Moriya interactions and single-ion anisotropy) with magnetic force theorem. These calculations benefit from the separation of the spin-orbit part from the full Hamiltonian. It is also useful to do a calculation without spin-orbit with spin.orbitstrength but output the spin-orbit Hamiltonian (without the prefactor of 0) for post-processing. This enables treating the SO as a perturbation to the non-SO Hamiltonian in a non-SCF manner.
Authors
Xu He