[cctbxbb] Bug in structure.expand_to_p1?
Ralf Grosse-Kunstleve
rwgrosse-kunstleve at lbl.gov
Mon Jun 20 06:16:57 PDT 2011
Hi Jan,
ref_structure = quartz_structure.expand_to_p1(
append_number_to_labels=True).sites_mod_positive()
should do the trick. There is also .sites_mod_short().
Ralf
2011/6/20 Jan Marten Simons <marten at xtal.rwth-aachen.de>:
> Hi,
>
> I'm quite puzzled at the moment.
>
> using this code:
>
> if __name__ == '__main__':
> quartz_structure = xray.structure(
> special_position_settings=crystal.special_position_settings(
> crystal_symmetry=crystal.symmetry(
> unit_cell=(5.01,5.01,5.47,90,90,120),
> space_group_symbol="P6222")),
> scatterers=flex.xray_scatterer([
> xray.scatterer(
> label="Si",
> site=(1/2.,1/2.,1/3.),
> u=0.2),
> xray.scatterer(
> label="O",
> site=(0.197,-0.197,0.83333),
> u=0)]))
>
> ref_structure = quartz_structure.expand_to_p1(
> append_number_to_labels=True)
>
> print(ref_structure.as_py_code())
>
>
> I get this result:
>
> xray.structure(
> crystal_symmetry=crystal.symmetry(
> unit_cell=(5.01, 5.01, 5.47, 90, 90, 120),
> space_group_symbol="P 1"),
> scatterers=flex.xray_scatterer([
> xray.scatterer( #0
> label="Si_0",
> site=(0.500000, 0.500000, 0.333333),
> u=0.200000),
> xray.scatterer( #1
> label="Si_1",
> site=(0.000000, 0.500000, 0.666667),
> u=0.200000),
> xray.scatterer( #2
> label="Si_2",
> site=(0.500000, 0.000000, 1.000000),
> u=0.200000),
> xray.scatterer( #3
> label="O_0",
> site=(0.197000, -0.197000, 0.833333),
> u=0.000000),
> xray.scatterer( #4
> label="O_1",
> site=(0.394000, 0.197000, 1.166667),
> u=0.000000),
> xray.scatterer( #5
> label="O_2",
> site=(-0.197000, -0.394000, 1.500000),
> u=0.000000),
> xray.scatterer( #6
> label="O_3",
> site=(0.197000, 0.394000, 1.500000),
> u=0.000000),
> xray.scatterer( #7
> label="O_4",
> site=(-0.394000, -0.197000, 1.166667),
> u=0.000000),
> xray.scatterer( #8
> label="O_5",
> site=(-0.197000, 0.197000, 0.833333),
> u=0.000000)]))
>
>
> It bothers me that there are x,y,z not in [0, 1[. Shouldn't the newly expanded
> cell only contain atoms within the unit cell? I realize, that the quarz
> structure (from the sample code from the website) also violates this with Oy
> beeing negative, but still I think expand_to_p1 should return a regular
> structure.
>
> Also is there a method already implemented to change a structure from a non-
> conventional description into a conventional one (with all atoms within its
> unit cell)?
>
> 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