Symmetry alignment in refinement flips volume that is already aligned

Hi @apunjani @spunjani,

Refinements keep flipping my volumes upside down, and I think symmetry alignment is to blame. I am running Non-Uniform Refinement (CryoSPARC v5.0.3). The only non-default setting is that I’ve set the symmetry to C5.

Here is a slice of my input volume, which is already aligned to the symmetry axis:

This is what the refinement job does to the volume if I leave symmetry alignment on (flips it upside down):

This is what the refinement job does to the volume if I turn symmetry alignment off (leaves it right-side up):

This situation seems to correspond perfectly to @apunjani‘s comment about how a problem with symmetry alignment “causes it to fail in general when the optimal rotation is identity".”

I see that the originally referenced bug was fixed years ago, but I don’t know what else could be causing this behavior. If I’m misunderstanding something please let me know!

Thanks,

Josh

Dear @josh.cofsky,

Thanks for reporting. The symmetry alignment feature here indeed rotates the volume, however it moves from one valid orientation to another: before and after the alignment, the symmetry axis is coincident with the z-axis of the volume. This property of having multiple valid orientations is unique to cyclic symmetries. In other words it remains valid to run the refinement with the volume flipped “upside down”.

We recognize it is undesirable for symmetry alignment to further modify the volume’s orientation if it is already properly aligned, and have internally noted to consider a robust fix for this. For the time being, a workaround is to use the “Align 3D Maps” job to put any rotated volumes back in-register with a common reference (e.g. your input volume).

Best,
Michael

I understand, thanks Michael. Right, I guess what I’m actually requesting is, among all the valid solutions for Symmetry Alignment to choose, it should choose the solution where (1) the sign for the symmetry axis direction is the one that more closely matches the pre-alignment axis direction and (2) rotation of the volume around the symmetry axis as compared to the pre-alignment volume is minimized.

It’s a minor thing, just for the convenience of being able to quickly visually compare volumes from different workflows. For now, it’s easy enough for me to just manually turn symmetry alignment off. Thanks!

1 Like