[Ifeffit] how Atoms builds clusters
ravel at phys.washington.edu
Thu Sep 4 10:26:32 CDT 2003
I have twice recently been asked about how Atoms converts from its
input data, which is the minimal set of positions necessary to
describe the crystal, to the cluster that gets reported in the
feff.inp file. Since there seems to be some interest in this
question, I thought I would send a message to the mailing list with
the answer. That way it'll be archived and anyone can go back and
look at the answer.
If you've ever wondered about this, read on. If the thought never
crossed your mind, this is a good moment to go on to your next email
Here is the broad outline:
1. Atoms fills out the unit cell in the first octant. By "first
octant" I mean that all fractional coordinates of all positions
are non-negative and less than 1.
2. Enough unit cells are stacked up like blocks to make a rhomboid
large enough to entirely encompass a sphere of the radius
specified by the Rmax parameter. (If you poke hard enough at
Atoms, you will find a situation where it fails to create a large
enough rhomboid. It's an odd situation, though, and you won't run
into it if your space group is orthogonal.)
3. The fractional coordinates are converted to their Cartesian
4. All the atoms within the rhomboid but outside the sphere are
5. The atoms are translated such that the absorber is at the origin
and the list is sorted by distance from the absorber.
The non-obvious part of this algorithm is the first step. To fill out
the unit cell, these steps are taken:
a. For each atomic position given to Atoms, apply the symmetry
operations associated with the point group. These are the
operations reported in the symmetry.dat output file. They are
also given in the International Tables of Crystallography for each
b. For each position found from the point group, apply the Bravais
translations, if any.
c. Some of the coordinates found from applying the point and Bravais
operations will fall outside the first octant, that is, there may
be coordinates smaller than 0 or larger than or equal to 1.
Translate those positions back to the first octant by adding the
appropriate integer to the offending coordinate.
d. Weed through the list of positions and throw away any repeats.
For high symmetry groups, the vast majority of generated positions
will be repeats. For FCC copper, for example, you will find that
the point and Bravais operations generate the same point 96 times.
At the end of step 1, you have the contents of the P1 output file.
That is, you have a description in fractional coordinates of the
entire contents of the unit cell.
For step 2 above, it is much easier to use the fractional coordinates
to stack up unit cells to make the rhomboid. The unit cell in the +x
direction is made by adding 1 to all the x coordinates. The unit cell
in the -y direction is made by subtracting 1 from all the y
coordinates. And so on.
The conversion to Cartesian coordinates is where the lattice constants
and angles come into play. This is a tensor transform where the
non-zero elements of the metric tensor are functions of a, b, c,
alpha, beta, and gamma. This tensor is discussed in Volume A of the
International Tables and in many crystallography textbooks. The
geometrically inclined could probably derive it on the back of an
envelope. Or see the subroutines Xray::Xtal::Cell::make and
Xray::Xtal::Cell::metric in the file Xtal.pm from the Atoms
The last interesting detail is how the absorber atom is chosen. In a
space group of high symmetry, there may well be several examples of
the absorber in the unit cell. Atoms chooses the one that is closest
to the center of the unit cell, i.e. the one closest to (1/2, 1/2,
1/2). This choice minimizes the size of the rhomboid needed to
encompass the sphere of radius Rmax.
Now, wasn't that fascinating?
Bruce Ravel ----------------------------------- ravel at phys.washington.edu
Code 6134, Building 3, Room 222
Naval Research Laboratory phone: (1) 202 767 5947
Washington DC 20375, USA fax: (1) 202 767 1697
NRL Synchrotron Radiation Consortium (NRL-SRC)
Beamlines X11a, X11b, X23b, X24c, U4b
National Synchrotron Light Source
Brookhaven National Laboratory, Upton, NY 11973
My homepage: http://feff.phys.washington.edu/~ravel
EXAFS software: http://feff.phys.washington.edu/~ravel/software/exafs/
More information about the Ifeffit