I recently wrote a little jiffy program for calculating "general scattering" images that could perhaps be useful for answering some of the questions raised on this thread:
http://bl831.als.lbl.gov/~jamesh/nearBragg/nearBragg2D.c

Instructions for compiling and running are in this text file:
http://bl831.als.lbl.gov/~jamesh/nearBragg/example.com

No libraries are required! You give nearBragg2D a text file containing one x y z "atom" position per line in Angstrom (and optionally some camera parameters that have sensible defaults) and it writes out an SMV-format image file of normalized intensity at the detector. Plus some raw binary "float" files that contain the absolute structure factor at the center of each pixel.

nearBragg2D makes no assumptions whatsoever about unit cells, FFTs, acoustic vs optical or whatever diffuse scattering, or even Bragg's law (and the far-field approximations he made). All it does is calculate the distance from one or more source points to each "atom" and then from the "atom" to the center of a detector pixel. Then it adds up the sin() and cos() of all such paths through all listed atoms and squares the result to get intensity. It is actually a very short program (~300 lines). The atoms are considered point scatterers with an intrinsic structure factor of "1" in all directions. That is, they don't have form factors or anything like that. It is up to you to make a list of atoms at positions that you find interesting. I find it most instructive to start with one atom at "0 0 0" and then start adding new atoms to see what happens, as in the example.com file.

I have found this code to be highly informative, and originally wrote it to try to understand exactly how different kinds of lattice disorder affect scattering. It is also useful to explore when a "lattice translocation defect" becomes twinning, and figure out when diffuse scattering "tails" that are "under the spots" become "important". The answer to the last question appears to be "never". The "background"-subtracted spot intensities really are the square of the Fourier transform of the AVERAGE electron density in a unit cell. Yes, the arithmetic average. Does not matter where the background comes from. This is another beer I owe Colin.

However, somehow I get the feeling that not everyone will agree with me on this. So, I have provided the code so that interested parties can do their own "experiments" and come to their own conclusions. nearBragg2D might even be a useful teaching tool. I think it would be instructive to the original poster and other BBers if interested parties can "prove me wrong" by coming up with a constellation of points in space that exemplify the point they are trying to make.

In keeping with my own request, I present the calculated general scattering from a 101^3 lattice of points when the points are moved from their ideal positions by a Gaussian-distributed displacement:
http://bl831.als.lbl.gov/~jamesh/nearBragg/diffuse_scatter_nearBragg.png

The error bars are the mean (and sigma) of intensity from 10,000 runs of nearBragg using different random number seeds for the displacements (with rmsd consistent with the indicated B factor), and the solid lines are the result of multiplying the "perfect lattice" scattering by exp(-B*s^2). I chose a spot (at 1.81 A) that was about to "wink out" to demonstrate that the theoretical intensity using the B-factor is actually "riding" on top of the diffuse scatter. For a completely disordered group of atoms, the theoretical "diffuse scatter" in this case is simply "1", since that is the scattering from one "atom" and for this graph I am dividing the result printed out by nearBragg by the number of atoms in the list. The point I am trying to make here is that background subtraction really does give you the scattering from the average unit cell electron density.


Happy scattering!

-James Holton
MAD Scientist


Richard Gillilan wrote:

David had developed an empirical theory to model the air, solvent,
Compton & acoustic contributions and correct the integrated data for
these, without background correction of course since the optic DS
background was ultimately to be our data!
...

Hi Ian, did David publish this theory somewhere? I'd love to get a reference.




I'm genuinely confused by this because I thought the whole point of
modern focusing optics (or at least the confocal mirror design) is to
focus the beam onto (or close to) the sample, in which case wouldn't the photons diverge from the 'virtual source' (actually a real image of the
real source) at the crystal, instead of from the real source?  So then
Bragg spots (and therefore also the acoustic DS) should diverge from the
position of this virtual source?

Cheers

-- Ian



This does seem confusing now. Here at CHESS, focus is either at the collimator (just upstream of the sample), or, in the case of capillaries, on the sample. In rare cases, on the detector. True, the focal spot would be a virtual source and, if the spot is reflected by an ideal crystal, that wouldn't change anything. But it is a very well collimated source even though it is slightly divergent (by a few mrad at most) ... this is in contrast to background scatter where photons are emitted in the whole q range (assuming it is "that kind" of scatter). So maybe it is more accurate to say Bragg reflections and background scatter are two rather different kinds of sources located at the crystal. Pardon my ignorance, but how can lattice phonons be a significant effect at low temperature? I presume the correlated displacements you refer to must be phonon modes frozen in place to create static disorder or something like that ... or perhaps stuff is moving more than I think at 100 K.

Richard









Reply via email to