We’ve been enjoyed the helical refinement function in cryoSPARC. But recently I noticed a strange behavior of the Helical refinement from two unrelated helical objects. They are both pretty large in diameter (250-350 Å), and the tube can be viewed as a thin shell.
What I found is that the refinement didn’t converge in the first Helical refinement job with the correct symmetry (tiny search range for the rise and twist because it is calculated from layer lines at high resolution). However, if I copied this Helical refinement job, using exactly the same parameters and also using the output volume of the 1st job as input, the 2nd refinement will converge. Any thoughts? Currently, it didn’t create any problem for me, but one can imagine it may be an issue when one has 100 possible helical symmetries to test.
Thanks for the feedback! Reports like this help us improve the robustness of the algorithms we implement
We have noticed that this can sometimes happen on the datasets available to us, and most often the issue was related to both half maps diverging from each other early on (usually through slight differences in rotation/orientation). This causes the FSCs to be incorrect, sometimes showing a lot of artefacts and spikes. The typical way to work around this is to average the two half-maps together at low resolution only, and by default, this is done at resolution of 20Å or below. Though for objects with helical symmetry and smaller asymmetric units, it seems 20Å might not always be sufficient, as more of the signal used to align particles to the volume is moderate or higher frequency. E.g. in this dataset, at ~10Å it looks like you can just see the asymmetric unit, but I imagine at 20Å it might just look like a featureless cylinder.
Could you try changing the GSFSC split resolution (A) parameter to be a bit lower in value, say 12-15Å, to see if this alleviates the issue in the first job? As well, do you notice that the FSCs in the first job contain lots of spikes or artefacts at resolutions beyond 20Å?
Something else that may be related to this is the initialization. In the first job you ran (top picture), did you pass in an initial model, or did you let the refinement generate one itself? In my experience the problem mentioned above is more common when the initial model is generated from scratch, possibly because we’re starting “further away” from the optimal structure, so there’s more ways in which the half maps could diverge.
(2) copied the 1st job, and deleted the starting volume (what I used for the starting volume is a cylinder shell generated according to its diameter. It had a bug without starting volume, but that’s another story. See my previous post). It reported ~8Å.
So it seems the GSFSC split resolution (A) is really the solution, and I will set that to 12Å by default in future helical projects. Maybe you guys may consider this as well in your future release?
I’m glad to see that this helped alleviate the issue! We’ll definitely see if we can tune this better going forward. The only thing to note about this parameter is that it controls the frequency above which the two half-maps are independent, which in turn controls the resolution at which the FSC is considered “gold-standard”. Since your sample is going to well beyond 12 Å, there is no cause for concern.
The case to be aware of is if your sample doesn’t significantly exceed the split resolution (e.g. if you set the split resolution to 12 Å and the refinement doesn’t exceed 12 Å, or you see a sharp drop in the FSC as soon as it exceeds 12 Å). This would indicate that the true resolution of the volume is >12 Å, which could be due to many factors like incorrect symmetry, poor particle picks, etc.