StepDownToReference (rc181, -C supercell step-down) also runs on every rotation re-index with an
internal given cell - the long-axis hypothesis and the floor-lowered re-index - and there it was the
largest single CPU cost of the first pass: 39% of all cycles on a no-crystal control, where the
first pass then took ~4x what it took at rc176. Nearly all of it was the triple loop over the
candidate basis vectors, almost every triple rejected by the volume test.
Two exact cuts:
- of v and -v only the one enumerated first is kept. Both span the same lattice, every test after
it reads them alike, and the first triple with the most spots in the full enumeration is made
of first-met vectors, so it is the one returned either way - from an eighth of the triples.
- the volume is taken as |(v0 x v1) . v2| with the cross product per pair, asked first against a
bound wider than the determinant test, which then runs as before on what survives.
Measured on a loaded box, rc182 vs this: no-crystal control first passes 79 + 122 s -> 27 + 34 s
(wall 214 -> 70 s); the merged MTZ, HKL and the report are byte-identical on four sets.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UqXYdL4qBGYRiSXSGXfCLu