Skip to determine time-reversal part for non-overlapped operations #195
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes: #194
Time-reversal parts are searched after determining linear and
translation parts of symmetry operations by
get_dataset
. Itis impossible in theory but we rarely fail to overlap atoms
possibly due to too high symprec. In that case, skip the
symmetry operation.
@atztogo In some edge cases with high
symprec
, a symmetry operation inDataContainer->exact_structure->Symmetry
does not followsymprec
(on the other hand, the not-refined operation followssymprec
).In the current implementation for MSG search, permutations of sites are computed from
DataContainer->exact_structure->symmetry
. Then, the segmentation fault in #194 was caused.This PR just skips such a suspicious operation and does not change space-group search codes.
So, I will merge this if there are no concerns.
Not addressed in this PR, but I think adding permutation information in
DataContainer
will be better (e.g.int *DataContainer->exact_structure->permutations
).