I recently achieved a fairly high-resolution structure using helical refinement and RBMC with a low pixel size. My problem is that whenever I try to load it into phenix.refine, my computer crashes from memory issues likely due to how large the MRC file is (~3Gb). Is there a way around this?
I have thought of two ways I can reduce the file size:
Resample at a lower box size.
Crop the box size more so that there is less density in regions I don’t necessarily need to model.
Does anyone have experience refining large cryo-EM maps and how they are able to overcome these memory issues?
Once you are happy with the results of phenix.real_space_refine, you can then rigid body fit into the original map (using either ChimeraX or phenix)
Alternatively, you can crop a cube just around the central region, including less helical repeats, which may accomplish the same purpose.
You might also try SERVALCAT, which has integrated support for refinement with helical symmetry (though I am not sure if the memory requirements are better or worse than phenix)
I’ve found servalcat a lot less troublesome in general to phenix. Generating custom restraints (externally) and refining with them just seems to work for me in servalcat (after Keitaro explained how to fix a problem I was experiencing) but phenix always seems to complain and crash somewhere. The phenix toolkit has a lot of useful features, but I don’t seem to get on well with using it. A servalcat/coot route usually works pretty well for me.
You can crop volumes down using Chimera(X) and re-save as well if the servalcat/coot pipeline is more to your comfort.
I’ve tended towards using ISOLDE in chimerax and then phenix with just morphing and ADP. I’m not sure which option it is, but either local grid search or global minimization can use a lot of memory for large box sizes, or maybe lots of atoms. After ISOLDE, neither of these options have seemed particularly useful, despite their much longer runtimes and higher memory requirements.