Particle subtraction

I am new to cryo-EM data processing. I am using cryosparc v2.4.6. I have a complex of a small protein bound to a larger nucleoprotein complex. I have ~3.0 A resolution for the larger nucleoprotein, but I am interested in improving the resolution of the smaller protein (which is currently at ~7A). I would like to do a local refinement of the smaller protein to see if the resolution for this protein can be improved. To do this, I subtracted the signal for the larger nucleoprotein from the complex. From the particle stack it is obvious that the particle subtraction worked. However, when I use the new subtracted stack of particles, in a 2d or 3d classification job, the results still contain the larger nucleoprotein in them. Doesn’t this indicate that the particle subtraction was unsuccessful? I feel like I am missing something here. Any help/input would be greatly appreciated.

Hi @umuthura,

Thanks for posting.
In the post-subtraction 2D or 3D classification jobs, do you see that the density of the nucleoprotein is reduced, or is it just as strong as before? Can you also try running a homogeneous 3D refinement with the subtracted particles and check how the density of the nucleoprotein changes?
The reason I ask is that during subtraction, the reference is subtracted from all particles but each particle can have a substantially different contrast level/ice thickness so there is sometimes a “shadow” left over due to the contrast variations. But this would appear as a much lower density than the non-subtracted protein domain.

Also, have you already tried local refinement of the smaller protein without subtraction, just as a baseline/sanity check?

And one more note - the current version of cryoSPARC is 2.14, it’s definitely worth updating! You may also want to check out 3D Variability Analysis ( for directly resolving flexible heterogeneity

Hi Dr. Punjani,
Thank you very much for your response. The density of the nucleoprotein is similar to the un-subtracted particle stack unfortunately.
And I have not yet run the homogeneous refinement on the subtracted stack or the local refinement without subtraction. Thanks for your suggestions, I will follow up on these and let you know if those worked.
Thanks again.

Ok, thank you, I’ve requested out IT staff to look into updating the Cryosparc version.