Open hongyi-zhao opened 7 months ago
this sounds interesting and i can see why you might want to allow only orientation-preserving rotations. but i don't have enough background to say why the current behavior was chosen in the first place. potentially there were reasons i'm unaware of. hoping others with more context can chime in
Is this the same issue encountered here with judging equivalence of structures with enantiomorphic space groups?
@mkhorton Yes. This is the exact case in a 3-dimensional space. But in higher dimensions, this is a more complicated problem to solve and I have given a gap implementation based on the algorithm suggested by Bernd.
I think it is best to consider that once you get to this kind of granularity of equivalence, the deviations in total energies may be below the threshold of chemical accuracy 1 2- even by the standards of the highest levels of theory.
With that said, there are in fact very important observable differences in chiral crystals. Circular dichroism and (reciprocal space) topology being two properties that are sensitive to such symmetries. 3
Solving this problem is incredibly interesting, but I am unsure how much it will benefit the users of pymatgen, especially if this routine incurs additional additional computational overhead. And naturally, this new feature will require additional maintenance that requires a niche expertise.
I think the best thing, which might actually help address #2593 , is to diversify the routines offered in StructureMatcher ? It would allow for the users to determine what degree of specificity they really care about and perhaps that can reduce the computational load if they are looking for a course grain matching.
But I suppose we have to wonder if readily available solutions exist elsewhere, then does pymatgen bear this responsibility?
thanks @wladerer, that's a lot of helpful context! 👍
I think the best thing, which might actually help address https://github.com/materialsproject/pymatgen/issues/2593, is to diversify the routines offered in StructureMatcher?
i'm open to that. sounds like that's the most actionable way forward to address #2593 and potentially even this issue
See my following testing:
As you can see, according to the Classification systems of the space group, the
StructureMatcher
method implemented currently works at the affine space group classification level instead of the crystallographic space group classification level, aka, it permits the non-proper rotation which doesn't preserve orientation.But as Bernd pointed out here on page 35, as shown below:
So, should we let the
StructureMatcher
method work at the affine space group classification level instead of the crystallographic space group classification level?Attached are all the test files mentioned above. Please check them.
test_StructureMatcher.zip
See here for the related discussion.
Regards, Zhao