01a4e9504116ff6d38d302ada82c4ebd841adba3
With --prepass-fraction below 1 the geometry pre-pass stopped integrating at the fraction but still handed the merge and the post-refinement an outcome vector the length of the whole sweep. The fulls' per-frame log-scale smoother (Whittaker, lambda by cross-validation) then carried its curve straight across the empty tail; on a sparse small-molecule sweep with 900 empty frames the extrapolated scale fell further each round until it underflowed to zero, log G became -inf there, the cross-validation error became 0*inf = NaN for every lambda, lambda fell back to 0, the smoother's band matrix was singular on the frames without fulls, and every per-frame scale in the sweep went NaN. The merge was then empty and the run aborted with "RotationScaleMerge: resolution calculation failed". The outcome vector is now cut to the frames the pre-pass read, so its merge, its rocking-events-per-frame prior, its smoothed mosaicity and its post-refinement all describe a sweep of those frames. The pre-pass mosaicity that the second pass predicts with is carried to the frames after the pre-pass at the median of what the pre-pass fitted (on a small-molecule sweep, predicting the second half at each frame's own estimate alone lost a fifth of the predictions and took R_meas from 5.2 % to 7.2 %). The two-pass quality guard compares the refined pass with the pre-pass on their search merges. Against a pre-pass of the first half, a merge of the whole sweep always holds more reflections, more signal and more of the axial rows, so the guard could never fire (it fired on 6 battery sets at fraction 1 and on none at 0.5). A refined pass judged against a partial pre-pass now fills the guard's numbers from its own integration of the same frames, merged the way the pre-pass merged them (P1 or the fixed group, search merge, no surfaces). At fraction 1 nothing changes. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SVmAWnzCmRKAXVUCdc4iNi
Jungfraujoch
Application to receive and analyse data from the PSI JUNGFRAU and EIGER detectors, together with
rugnux, its program for processing stored diffraction data - rotation and serial, macromolecular
and small-molecule - from images to merged reflections.
All documentation is now placed in docs/ subdirectory and for the current version hosted on Jungfraujoch Read The Docs page.
Languages
C++
77.9%
HTML
6%
C
4.7%
TypeScript
3.4%
Cuda
3%
Other
4.9%