Hi Ben,

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.

My understanding is that the loss of information would happen at high resolution (which I want to be filtering out anyway),

Discrete 3D function (map calculated on N1,N2,N3 regular grid) in reciprocal space corresponds to Fourier map coefficients with indices |h|<N1/2, |k|<N2/2, |l|<N3/2, which corresponds to a box. Any missing coefficients from this box (no matter which one, low or high resolution) will result in a loss of information and artifacts.

I guess one way would be to calculate a box of Fourier coefficients from your map, then remove those coefficients that have resolution higher than certain predefined value.

Thinking of available tools... You can convert your CCP4 map into box of reflections:

phenix.map_to_structure_factors map_real_space.ccp4 box=true

then convert compute map again but leave out high-res terms up to certain d_min:

phenix.mtz2map map_reciprocal_space_box.mtz d_min=3.21

By default this will result in a map with grid defined as d_min/grid_resolution_factor, where grid_resolution_factor=0.25 (you can change it). Perhaps you want to use the same gridding for the new map as the original map has.

Alternatively, you can just do local map averaging as I explained in previous email: for each map grid node value replace it with a local average (calculated in a sphere of radius R around this node or simply over all nearest neighbors. This is not the same as truncating high resolution, but may give you similar result.

Pavel