Space-group search: report the order of the point group it chose
The two-arm search compared its arms by the order of the space group each had picked, but Stage B leaves best_space_group unset whenever no candidate is eligible - no candidate had enough observed absences to trust. That is not rare on the Lorentz-filtered arm, and for a systematic reason: the filter removes the badly-measured observations, which is where the weak systematically-absent reflections are. An arm that confirmed 422 but stopped short of naming a space group therefore scored order 0 and lost to an arm supporting P2, and the demotion was logged as "taking the higher symmetry" - the comparison and the message both wrong, in the one direction the design says cannot happen. Carry the point-group order in the result, set from the order Stage A actually adopted, and compare on that. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -640,6 +640,7 @@ SearchSpaceGroupResult SearchSpaceGroup(
|
||||
|
||||
if (best_pg->representative)
|
||||
result.point_group_hm = best_pg->representative->point_group_hm();
|
||||
result.point_group_order = best_pg_order;
|
||||
|
||||
// Only report a refusal that is actually ABOVE what was adopted.
|
||||
if (refused_order > best_pg_order) {
|
||||
|
||||
Reference in New Issue
Block a user