symmetry info is not right for some structure
simonnier opened this issue · 6 comments
Dear developers,
I have a structure which is monoclinic and spacegroup C2/m (No.12). The cif file can be downloaded here
But when I feed this structure into seekpath.get_path, no matter what threshold I set, it always shows the spacegroup is P1(No.1) and bravais lattice is aP.
On the other hand, the spglib.get_symmetry_dataset do return P1 with the default symprec=1e-5. But it will return C2/m with symprec=5e-4.
So, I am wondering if there is something wrong with threshold in seekpath.get_path ?
best regards
Hi,
indeed, the 'threshold' in seek path is not the symprec of spglib, but it's used e.g. to detect if the system is cubic or tetragonal, etc.
See e.g.
seekpath/seekpath/hpkot/__init__.py
Line 85 in c0091c1
We need to add another parameter.
Hi, I just implemented what you were asking in the branch fix_36_symprec
. Before I merge and make a new release, could you check that it works for you? All relevant functions now have two additional parameters, symprec
and angle_tolerance
that are passed to SPGLIB. To test, you can (in a new folder)
git clone https://github.com/giovannipizzi/seekpath.git
cd seekpath
git checkout fix_36_symprec
pip install -e .
that will replace the current seekpath
installation with the one you downloaded.
Could you please report back if it works, so I merge and make a new release? Thanks!
Hi, @giovannipizzi .
Thank you so much for quick fix. I just tried it. It works as expected.
Will this symprec option be added to the web version seekpath? I think this option is important to get correct view of k path.
Also, I am confused about the usage of "threshold". Doesn't spacegroup determine everything? Why do we need "threshold" to test cubic or tetragonal?
best regards
Hi, @giovannipizzi .
By the way, I notice that you are one of the authors of wannier90. I recently made a bug report on github and got no reply for a week. Does github of wannier90 not maintained an more?
best regards
I opened #37 for the web interface, I will not manage to work on it soon.
The "threshold" is needed for seekpath-specific things. E.g., for a given Bravais lattice, different topologies of the BZ are possible (even if the space group is the same), e.g. for tetragonal body-centered. You can check the cases by looking at extended Bravais symbols where the third character changes, like tI1
vs tI2
(see our Bravais Symbol Explanation and this is also explained in our paper, see Table 94 for instance). In the specific example of tI
we need to check if c<a
or c>a
but there are more complex cases.
For Wannier90, its actively maintained, we just don't have enough time to react to issues quickly. We'll try to reply there as soon as possible.
@giovannipizzi . Thank you so much : )