ComputationalCryoEM / ASPIRE-Python

Algorithms for Single Particle Reconstruction
http://spr.math.princeton.edu
GNU General Public License v3.0
46 stars 21 forks source link

J-sync Bug #1117

Closed j-c-c closed 4 months ago

j-c-c commented 4 months ago

There was a small bug in part of the J-sync algorithm used for Cn symmetric molecules. In particular, there was an error in this line https://github.com/ComputationalCryoEM/ASPIRE-Python/blob/554601bd5f91d33aab09efe0d80644360f6f3663/src/aspire/abinitio/commonline_c3_c4.py#L788

where the first term should be s_ij_ik. The existing test did not catch this bug as the algorithm was still producing correct results since this one term was part of a larger accumulation of terms of which we only take the sign.

To expose the bug in the new test we use a problem size of n=3, the smallest size for the algorithm to run since it loops over triplets of images. In this case the test fails with the bug still in place.