Open CompRhys opened 3 years ago
would an inc_magmoms
arg to SpacegroupAnalyzer
be an acceptable addition True
by default but can be turned off if all you care about is the structural spacegroup?
would an inc_magmoms arg to SpacegroupAnalyzer be an acceptable addition True by default but can be turned off if all you care about is the structural spacegroup?
Yes, I think so.
I haven't had chance to look at this specific example yet, but this is an issue.
It's difficult to know what the "correct" action is here; without vector magnetic moments we're in an unfortunate in-between where we cannot properly apply magnetic space groups, but using crystallographic space groups where, essentially, atoms with different moments are treated as non-equivalent are also not appropriate (for example, if you use get_symmetrized_structure()
on a structure with a specific magnetic ordering, you might find it undesirable for this ordering to be stripped).
This problem is exacerbated by the fact that, due to numerical noise, often magnetic moments on atoms are not going to be exactly equal. If I have to handle structures like this myself, the first step I take is usually to round off the magmoms.
If I query a structure with magnetic moments defined i.e.
mp-1228485
and run it throughSpacegroupAnalyzer
then callget_symmetrized_structure()
it returnsIf I go to bilbao crystallographic server and look up spacegroup 146's wyckoff sets we see that a sites and b sites have multiplicities 3 and 9 respectively (https://www.cryst.ehu.es/cgi-bin/cryst/programs/nph-normsets?from=wycksets&gnum=146).
Given only the above if I applied the symmetry operations I would end up with very large numbers of duplicated sites and wouldn't know which magmoms should be where when merging sites.
Instead what I feel
SymmetrizedStructure
should be can be obtained asSpacegroupAnalyzer(SpacegroupAnalyzer(struct).get_refined_structure()).get_symmetrized_structure()
However doing this discards the magmom information (not important for me but probably important for pymatgen).