[cctbxbb] fractional coordinate expansion ... share occupancy
David A Carr
dcarr2 at gmu.edu
Fri Feb 2 08:12:33 PST 2007
Hello All,
Thanks to Ralph's modification in January I have had success with cctbx.
Now I have another question. Is there a method in the cctbx for dealing with shared occupancy coordinates? I have a compound where in the reduced cell the x,y,z coordinates for two different atoms are the same and a "sof" fraction is given.
What is the best practice for handling such points?
I have provided an example compound with scatterer code below as you will note the output has overlapping atoms and the resulting 58 points are not enough to cover the chemical formula. What do I need to do to fix this?
Thanks,
Andrew
****************************************
Dr. D. Andrew Carr
George Mason University
dcarr2 at gmu.edu
##
## The following example is
## Na9.52 (Al7.2 Si16.8 O48) (H2 O)5.88
## DAC 1.12.07
##---------------------------------------
from cctbx import xray
from cctbx import crystal
from cctbx.array_family import flex
def demo():
crystal_symmetry = crystal.symmetry(
unit_cell="13.12,13.57,15.81,90.0,143.0,90.000000",
space_group_symbol="C 1 2/m 1")
scatterers = flex.xray_scatterer()
scatterers.append(xray.scatterer(#element = "Si",
label="Si1", site=(0.0042,0.2561,0.0965),occupancy=0.7))
scatterers.append(xray.scatterer(#element = "Al",
label="Al1", site=(0.0042,0.2561,0.0965),occupancy=0.3))
scatterers.append(xray.scatterer(#element = "Si",
label="Si2", site=(0.3442,0.1125,0.3278),occupancy=0.7))
scatterers.append(xray.scatterer(#element = "Al",
label="Al2", site=(0.3442,0.1125,0.3278),occupancy=0.3))
scatterers.append(xray.scatterer(#element = "Si",
label="Si3", site=(0.3497,0.1193,0.1355),occupancy=0.7))
scatterers.append(xray.scatterer(#element = "Al",
label="Al3", site=(0.3497,0.1193,0.1355),occupancy=0.3))
#---------------------------------------------
# Oxygens
#---------------------------------------------
scatterers.append(xray.scatterer(#element = "O",
label="O1", site=(0,0.3203,0)))
scatterers.append(xray.scatterer(#element = "O",
label="O2", site=(0.4292,0.1372,0.2924)))
scatterers.append(xray.scatterer(#element = "O",
label="O3", site=(-.0283,0.3315,0.1491)))
scatterers.append(xray.scatterer(#element = "O",
label="O4", site=(0.5,0.1347,0.5)))
scatterers.append(xray.scatterer(#element = "O",
label="O5", site=(0.1993,0.2072,0.2422)))
scatterers.append(xray.scatterer(#element = "O",
label="O6", site=(0.308,0,0.0850)))
scatterers.append(xray.scatterer(#element = "O",
label="O7", site=(-.1454,0.1619,0.0205)))
scatterers.append(xray.scatterer(#element = "O",
label="O8", site=(0.256,0,0.289)))
scatterers.append(xray.scatterer(#element = "Na",
label="Na", site=(0.7235,0.2619,0.3904),occupancy=1.19))
scatterers.append(xray.scatterer(#element = "O",
label="O9", site=(0.663,0.5645,0.7249),occupancy=0.47))
scatterers.append(xray.scatterer(#element = "O",
label="O10", site=(0.304,0,0.686),occupancy=0.53))
icsd_structure = xray.structure(
crystal_symmetry=crystal_symmetry,
scatterers=scatterers)
icsd_structure.show_summary().show_scatterers()
print
icsd_structure.show_distances(distance_cutoff=2.5)
print
primitive_structure = icsd_structure.primitive_setting()
primitive_structure.show_summary().show_scatterers()
print
p1_structure = primitive_structure.expand_to_p1()
p1_structure.show_summary().show_scatterers()
print
print "OK"
if (__name__ == "__main__"):
demo()
-------------- next part --------------
A non-text attachment was scrubbed...
Name: dcarr2.vcf
Type: text/x-vcard
Size: 163 bytes
Desc: Card for David A Carr <dcarr2 at gmu.edu>
Url : http://www.phenix-online.org/pipermail/cctbxbb/attachments/20070202/7b1c1f1a/dcarr2.vcf
More information about the cctbxbb
mailing list