v1.0.0-rc.155 #65
Reference in New Issue
Block a user
Delete Branch "2606-viewer-processing"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This is an UNSTABLE release. It includes many experimental features, as well as many AI generated fixes. We recommend using rc.152 for production use.
Refine all per-image scales, per-image mosaicities and the shared per-HKL true intensities (plus the global wedge) together in one Ceres problem (GlobalScale.{h,cpp}, GlobalScaleCeres), as an alternative to the existing alternating merge-then-scale-each-image loop. The result feeds back into each reflection's image_scale_corr exactly as ScaleOnTheFly does, so the rot3d combine and MergeOnTheFly run unchanged and every metric stays comparable. On HEWL crystal 2 the joint fit converges to the same place as the alternating loop (anomalous S-peak vs XDS 0.53x -> 0.54x, ISa 9.4 both), confirming the alternating path already reaches the joint optimum. Kept as a validated alternative and the home for future global corrections. A shared quadratic absorption surface in detector position was prototyped here and dropped: it fit large non-physical coefficients (radially degenerate with the per-HKL resolution structure), lowered the scaling-fit residual but raised the error-model b (ISa 9.4 -> 7.3) and did not improve anomalous accuracy. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>Profiling showed the joint Ceres solve took ~120 s versus ~3.5 s for the alternating per-image scaling loop (~35x) for no quality gain (HEWL anomalous 0.54x vs 0.53x), so it is not worth keeping. Drop GlobalScale.{h,cpp}, the jfjoch_process --global-scale flag, and ScalingSettings::GlobalScaling. While here, in the same scaling/process area: fold scale_fulls into ScalingSettings (alongside combine_3d) so the CLI and experiment carry it uniformly, add per-substep [timing] logging to the scaling/merge post-pass (including the serial MergeAll vs parallel ScaleAllImages split), and carry structured MergeStatistics + ISa in ProcessResult. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>