[cctbxbb] Strange behaviour of resolution filter

Pavel Afonine pafonine at lbl.gov
Fri Feb 8 07:00:19 PST 2013


Hi,

it's due to rounding errors. A safer way of doing this is:

(...)
fc1 = structure.structure_factors(d_min=1.0).f_calc().sort()
fc2 = 
fc1.structure_factors_from_scatterers(xray_structure=structure).f_calc()
(...)

which will guarantee that miller indices of fc1 and fc2 are identical.

BTW, I did not realize that there is "resolution_range()". I always use 
".d_max_min()" function, which is clearer as it exactly tells what it 
returns.

Pavel

On 2/8/13 4:16 AM, Jan Marten Simons wrote:
> Hi,
>
> I discovered a rather strange behaviour of the miller.index_generator.
>
> Sample code showing the weirdness:
>
> -----8<---------------------------
>
> from __future__ import division
> from cctbx import xray
> from cctbx import crystal
> from cctbx.array_family import flex
>
>
> structure = xray.structure(
>    special_position_settings=crystal.special_position_settings(
>      crystal_symmetry=crystal.symmetry(
>        unit_cell=(3.14098, 4.08327, 5.33966, 83, 109, 129),
>        space_group_symbol="P 1")),
>    scatterers=flex.xray_scatterer([
>      xray.scatterer(
>        label="Si",
>        site=(0.,0.,0.),
>        u=0.0)]))
>
> fc1 = structure.structure_factors(d_min=1.0).f_calc().sort()
> d_max, d_min = fc1.resolution_range()
> fc2 = structure.structure_factors(d_min=d_min).f_calc().sort()
>
> print(fc1.size(), fc2.size())
> #fc1.show_array()
> fc1.show_comprehensive_summary()
> print("\nd_min: {}\n".format(d_min))
> fc2.show_comprehensive_summary()
> #fc2.show_array()
>
> -----8<---------------------------
>
> fc1 has 105 indices, while fc2 only has 104. Also fc2 has a higher d_min than
> fc1 although I'd expect both to have the same. To me it seems like the index
> with d==d_min is not included and only indices with d>d_min are calculated.
> I wonder if this behaviour is the desired one or rather a bug, as I was quite
> surprised when I discovered this.
>
> With regards,
>
>   Dipl. Phys.
>    Jan M. Simons
>   
> Institute of Crystallography
> RWTH Aachen University
> _______________________________________________
> cctbxbb mailing list
> cctbxbb at phenix-online.org
> http://phenix-online.org/mailman/listinfo/cctbxbb



More information about the cctbxbb mailing list