Hi,

It took me a bit to figure it out, but the intensity lines you quote in the database listed are powder lines and are multiplicity weighted. If you take that into account, the calculated values have a better correspondence to the table listed, but are still not perfect which likely has to do with Pavel's suggestions as well as with the fact that bonding electrons breaking spherical symmetry have a contribution to the total. 

Note that you can use this for reading in the cif file you attached earlier:


from __future__ import division
from cctbx import xray
from scitbx.array_family import flex
from libtbx import easy_pickle
from libtbx.str_utils import show_string
import sys, os
op = os.path

def run(args):
  for f in args:
    try:
      xray_structures = xray.structure.from_cif(file_path=f)
    except KeyboardInterrupt:
      raise
    except Exception, e:
      print "Error extracting xray structure from file: %s:" % (
        show_string(f))
      print " ", str(e)
      continue
    basename, _ = op.splitext(op.basename(f))
    for key, xs in xray_structures.items():
      xs.show_summary()
      r = basename
      if key != r:
        r += '_'+key
      #easy_pickle.dump(file_name=r+'_xray_structure.pickle', obj=xs)
      F = xs.structure_factors(d_min=1.5,algorithm='direct').f_calc()
      I = F.as_intensity_array()
      d = I.d_spacings().data()
      m = I.multiplicities().data()
      max_i = flex.max( I.data() )
      for i,dd,mm in zip(I,d,m):
        print i[0], i[1], dd,mm

if (__name__ == "__main__"):
  import sys
  run(args=sys.argv[1:])

resulting in 

Number of scatterers: 1
At special positions: 1
Unit cell: (5.43094, 5.43094, 5.43094, 90, 90, 90)
Space group: F d -3 m :1 (No. 227)
(0, 2, 2) 4878.06695169 1.92012760466 12 100.0
(1, 1, 1) 3543.96579287 3.1355552483 8 48.4340187479
(1, 3, 1) 2144.13899149 1.63749032323 24 87.9093711801

these values are close to what Debye reported (contact me personally for the manuscript).

P


 



On Mon, Aug 24, 2015 at 4:47 PM, Peter Zwart <PHZwart@lbl.gov> wrote:
Hi,

There are two standard space group settings for F d -3 m (namely 1 and 2) and I am not sure what the literature uses. 
It is a puzzle indeed, in one setting (2,2,0) is absent, in another it isn't. I guess the difference is space group settings, but the choice between setting 1 and 2 still doesn't reproduce the table you send, which by chance isn't in the paper listed in the link you send.

P








On 24 August 2015 at 15:55, Pavel Afonine <pafonine@lbl.gov> wrote:
Hi Allan,

I'm not entirely sure why the difference between observed (experimentally measured) and calculated (using your script below) amplitudes of structure factors surprises you..

Also:

- your script computes structure factors and prints out amplitudes (not intensities);
- you do not set the B-factor. By default scatterer object is constructed with u_iso=0.

Pavel


On 8/24/15 15:01, Allan Lyckegaard wrote:
Dear CCTBX-list

I am trying to reproduce the (scaled) intensities for Si reported here: http://rruff.geo.arizona.edu/AMS/xtal_data/DIFfiles/15285.txt based on this information: http://rruff.geo.arizona.edu/AMS/CIF_text_files/15285_cif.txt

I am using CCTBX in Python:

from cctbx.array_family import flex

from cctbx import sgtbx, crystal, miller, xray

sgnum = 227

sg = sgtbx.space_group_info(sgnum).group()

latticepar = [5.43070, 5.43070, 5.43070, 90, 90, 90]

dmin = 1.0

atompos = [['Si',(0.0, 0.0, 0.0)]]

scatterers = flex.xray_scatterer()

scatterers.append(xray.scatterer(label=atompos[0][0], site=atompos[0][1]))

pg = sg.build_derived_point_group()

sym = crystal.symmetry(space_group=sg,unit_cell=latticepar)

sps = crystal.special_position_settings(crystal_symmetry=sym)

structure = xray.structure(special_position_settings=sps,scatterers=scatterers)

F = structure.structure_factors(d_min=dmin,algorithm='direct').f_calc()

list(F.amplitudes())


This gives:

[((0, 2, 2), 0.0),

 ((0, 4, 0), 120.21765812638594),

 ((1, 1, 1), 84.18849550806966),

 ((1, 3, 1), 65.48371727205928),

 ((1, 3, 3), 57.45438308324155),

 ((1, 5, 1), 51.48759686950681),

 ((2, 2, 2), 128.54540698861973),

 ((2, 4, 2), 0.0),

 ((3, 3, 3), 51.48759686950681)]


How come CCTBX give an amplitude of 0.0 for (0,2,2) and (2,4,2)? The measured intensities in the DIFfile above does not show this. Am I missing something?

Cheers,
/Allan


_______________________________________________
cctbxbb mailing list
cctbxbb@phenix-online.org
http://phenix-online.org/mailman/listinfo/cctbxbb


_______________________________________________
cctbxbb mailing list
cctbxbb@phenix-online.org
http://phenix-online.org/mailman/listinfo/cctbxbb




--
-----------------------------------------------------------------
P.H. Zwart
Staff Scientist
Berkeley Center for Structural Biology, Science lead
Lawrence Berkeley National Laboratories
1 Cyclotron Road, Berkeley, CA-94703, USA
Cell: 510 289 9246
SASTBX:  http://sastbx.als.lbl.gov
-----------------------------------------------------------------

_______________________________________________
cctbxbb mailing list
cctbxbb@phenix-online.org
http://phenix-online.org/mailman/listinfo/cctbxbb




--
-----------------------------------------------------------------
P.H. Zwart
Staff Scientist
Berkeley Center for Structural Biology, Science lead
Lawrence Berkeley National Laboratories
1 Cyclotron Road, Berkeley, CA-94703, USA
Cell: 510 289 9246
SASTBX:  http://sastbx.als.lbl.gov
-----------------------------------------------------------------