complete representation of your map (the one in CCP4 formatted file) is a reciprocal space box of reflections with miller indices being |h|<N1/2, |k|<N2/2, |l|<N3/2 , where N1,N2,N3 is map gridding.
Converting map (from CCP4 file) into a set of structure factors in a sphere of given resolution is an operation associated with loss of information. Further truncation of resolution obviously results in further loss of information. All in all this means the artifacts you observe after these manipulations are expected.
Alternatively, I guess, you can do local averaging: replace each map grid node with the average takes over all 27 nearest neighbors of that node or all neighbors in a sphere of R around it (Wang's averaging). As A. Leslie demonstrated original Wang's averaging can be done efficiently in reciprocal space by convolution of structure factors with some function (see that paper for details).
I can write a simple Python script for you to do this task.
Pavel
On 11/13/14 4:00 PM, Barad, Ben wrote:
Hi All,
I am currently trying to filter a CCP4-formatted real space map from the EMDB, which is at 3.2 Å resolution, to different resolutions from 3.2 to 5 Å, and I've been having a bit of a difficult time getting it to work.
My first thought was to do an fft to get structure factors, then regenerate the map from those structure factors with a resolution cutoff. To do this, I used the tools "phenix.map_to_structure_factors" and "phenix.mtz2map" to generate a structure factor file, then convert it back into a map. When I do this, I end up with a very noisy map that is not usable for what I would like to do.
Is there a better way to accomplish this in phenix (or another tool)? I've also tried some low-pass filtering with proc3d, without much success...
Thanks,
Ben Barad
Fraser Lab @ UCSF