Skip to content

Commit

Permalink
Added profile sims from CIF file, uses CCTBX, linux only for now
Browse files Browse the repository at this point in the history
  • Loading branch information
bcolsen committed Jun 20, 2017
1 parent 4404ef5 commit 8d758e7
Show file tree
Hide file tree
Showing 5 changed files with 370 additions and 110 deletions.
224 changes: 224 additions & 0 deletions examples/Au.cif
Original file line number Diff line number Diff line change
@@ -0,0 +1,224 @@
#======================================================================

# CRYSTAL DATA

#----------------------------------------------------------------------

data_VESTA_phase_1


_pd_phase_name 'New structure'
_cell_length_a 4.07820
_cell_length_b 4.07820
_cell_length_c 4.07820
_cell_angle_alpha 90
_cell_angle_beta 90
_cell_angle_gamma 90
_symmetry_space_group_name_H-M 'F m -3 m'
_symmetry_Int_Tables_number 225

loop_
_symmetry_equiv_pos_as_xyz
'x, y, z'
'-x, -y, -z'
'-x, -y, z'
'x, y, -z'
'-x, y, -z'
'x, -y, z'
'x, -y, -z'
'-x, y, z'
'z, x, y'
'-z, -x, -y'
'z, -x, -y'
'-z, x, y'
'-z, -x, y'
'z, x, -y'
'-z, x, -y'
'z, -x, y'
'y, z, x'
'-y, -z, -x'
'-y, z, -x'
'y, -z, x'
'y, -z, -x'
'-y, z, x'
'-y, -z, x'
'y, z, -x'
'y, x, -z'
'-y, -x, z'
'-y, -x, -z'
'y, x, z'
'y, -x, z'
'-y, x, -z'
'-y, x, z'
'y, -x, -z'
'x, z, -y'
'-x, -z, y'
'-x, z, y'
'x, -z, -y'
'-x, -z, -y'
'x, z, y'
'x, -z, y'
'-x, z, -y'
'z, y, -x'
'-z, -y, x'
'z, -y, x'
'-z, y, -x'
'-z, y, x'
'z, -y, -x'
'-z, -y, -x'
'z, y, x'
'x, y+1/2, z+1/2'
'-x, -y+1/2, -z+1/2'
'-x, -y+1/2, z+1/2'
'x, y+1/2, -z+1/2'
'-x, y+1/2, -z+1/2'
'x, -y+1/2, z+1/2'
'x, -y+1/2, -z+1/2'
'-x, y+1/2, z+1/2'
'z, x+1/2, y+1/2'
'-z, -x+1/2, -y+1/2'
'z, -x+1/2, -y+1/2'
'-z, x+1/2, y+1/2'
'-z, -x+1/2, y+1/2'
'z, x+1/2, -y+1/2'
'-z, x+1/2, -y+1/2'
'z, -x+1/2, y+1/2'
'y, z+1/2, x+1/2'
'-y, -z+1/2, -x+1/2'
'-y, z+1/2, -x+1/2'
'y, -z+1/2, x+1/2'
'y, -z+1/2, -x+1/2'
'-y, z+1/2, x+1/2'
'-y, -z+1/2, x+1/2'
'y, z+1/2, -x+1/2'
'y, x+1/2, -z+1/2'
'-y, -x+1/2, z+1/2'
'-y, -x+1/2, -z+1/2'
'y, x+1/2, z+1/2'
'y, -x+1/2, z+1/2'
'-y, x+1/2, -z+1/2'
'-y, x+1/2, z+1/2'
'y, -x+1/2, -z+1/2'
'x, z+1/2, -y+1/2'
'-x, -z+1/2, y+1/2'
'-x, z+1/2, y+1/2'
'x, -z+1/2, -y+1/2'
'-x, -z+1/2, -y+1/2'
'x, z+1/2, y+1/2'
'x, -z+1/2, y+1/2'
'-x, z+1/2, -y+1/2'
'z, y+1/2, -x+1/2'
'-z, -y+1/2, x+1/2'
'z, -y+1/2, x+1/2'
'-z, y+1/2, -x+1/2'
'-z, y+1/2, x+1/2'
'z, -y+1/2, -x+1/2'
'-z, -y+1/2, -x+1/2'
'z, y+1/2, x+1/2'
'x+1/2, y, z+1/2'
'-x+1/2, -y, -z+1/2'
'-x+1/2, -y, z+1/2'
'x+1/2, y, -z+1/2'
'-x+1/2, y, -z+1/2'
'x+1/2, -y, z+1/2'
'x+1/2, -y, -z+1/2'
'-x+1/2, y, z+1/2'
'z+1/2, x, y+1/2'
'-z+1/2, -x, -y+1/2'
'z+1/2, -x, -y+1/2'
'-z+1/2, x, y+1/2'
'-z+1/2, -x, y+1/2'
'z+1/2, x, -y+1/2'
'-z+1/2, x, -y+1/2'
'z+1/2, -x, y+1/2'
'y+1/2, z, x+1/2'
'-y+1/2, -z, -x+1/2'
'-y+1/2, z, -x+1/2'
'y+1/2, -z, x+1/2'
'y+1/2, -z, -x+1/2'
'-y+1/2, z, x+1/2'
'-y+1/2, -z, x+1/2'
'y+1/2, z, -x+1/2'
'y+1/2, x, -z+1/2'
'-y+1/2, -x, z+1/2'
'-y+1/2, -x, -z+1/2'
'y+1/2, x, z+1/2'
'y+1/2, -x, z+1/2'
'-y+1/2, x, -z+1/2'
'-y+1/2, x, z+1/2'
'y+1/2, -x, -z+1/2'
'x+1/2, z, -y+1/2'
'-x+1/2, -z, y+1/2'
'-x+1/2, z, y+1/2'
'x+1/2, -z, -y+1/2'
'-x+1/2, -z, -y+1/2'
'x+1/2, z, y+1/2'
'x+1/2, -z, y+1/2'
'-x+1/2, z, -y+1/2'
'z+1/2, y, -x+1/2'
'-z+1/2, -y, x+1/2'
'z+1/2, -y, x+1/2'
'-z+1/2, y, -x+1/2'
'-z+1/2, y, x+1/2'
'z+1/2, -y, -x+1/2'
'-z+1/2, -y, -x+1/2'
'z+1/2, y, x+1/2'
'x+1/2, y+1/2, z'
'-x+1/2, -y+1/2, -z'
'-x+1/2, -y+1/2, z'
'x+1/2, y+1/2, -z'
'-x+1/2, y+1/2, -z'
'x+1/2, -y+1/2, z'
'x+1/2, -y+1/2, -z'
'-x+1/2, y+1/2, z'
'z+1/2, x+1/2, y'
'-z+1/2, -x+1/2, -y'
'z+1/2, -x+1/2, -y'
'-z+1/2, x+1/2, y'
'-z+1/2, -x+1/2, y'
'z+1/2, x+1/2, -y'
'-z+1/2, x+1/2, -y'
'z+1/2, -x+1/2, y'
'y+1/2, z+1/2, x'
'-y+1/2, -z+1/2, -x'
'-y+1/2, z+1/2, -x'
'y+1/2, -z+1/2, x'
'y+1/2, -z+1/2, -x'
'-y+1/2, z+1/2, x'
'-y+1/2, -z+1/2, x'
'y+1/2, z+1/2, -x'
'y+1/2, x+1/2, -z'
'-y+1/2, -x+1/2, z'
'-y+1/2, -x+1/2, -z'
'y+1/2, x+1/2, z'
'y+1/2, -x+1/2, z'
'-y+1/2, x+1/2, -z'
'-y+1/2, x+1/2, z'
'y+1/2, -x+1/2, -z'
'x+1/2, z+1/2, -y'
'-x+1/2, -z+1/2, y'
'-x+1/2, z+1/2, y'
'x+1/2, -z+1/2, -y'
'-x+1/2, -z+1/2, -y'
'x+1/2, z+1/2, y'
'x+1/2, -z+1/2, y'
'-x+1/2, z+1/2, -y'
'z+1/2, y+1/2, -x'
'-z+1/2, -y+1/2, x'
'z+1/2, -y+1/2, x'
'-z+1/2, y+1/2, -x'
'-z+1/2, y+1/2, x'
'z+1/2, -y+1/2, -x'
'-z+1/2, -y+1/2, -x'
'z+1/2, y+1/2, x'

loop_
_atom_site_label
_atom_site_occupancy
_atom_site_fract_x
_atom_site_fract_y
_atom_site_fract_z
_atom_site_adp_type
_atom_site_B_iso_or_equiv
_atom_site_type_symbol
Au 1.0 0.000000 0.000000 0.000000 Biso 1.000000 Au
28 changes: 28 additions & 0 deletions iotbx_cif.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
def run():

import iotbx.cif
import sys
# print sys.argv

cif_structure_list = iotbx.cif.reader(sys.argv[1]).build_crystal_structures()
cif_structure = cif_structure_list.values()[0]
cif_structure.scattering_type_registry(table="it1992")

# Now calculate some structure factors
f_calc = cif_structure.structure_factors(d_min=float(sys.argv[2])).f_calc()

f_calc_sq = f_calc.as_intensity_array()
if sys.argv[3] == 'sf':
#print f_calc_sq
f_calc_sq.show_array()
if sys.argv[3] == 'ds':
f_calc_sq.d_spacings().show_array()
if sys.argv[3] == 'mt':
#f_calc_sq.show_summary()
f_calc_sq.multiplicities().show_array()
# miller = cif_structure.build_miller_set(anomalous_flag=False, d_min = float(sys.argv[2]), d_max=None)
# print miller.all_selection().show_array()


if __name__ == "__main__":
run()
Loading

0 comments on commit 8d758e7

Please sign in to comment.