Tables for
Volume F
Crystallography of biological macromolecules
Edited by M. G. Rossmann and E. Arnold

International Tables for Crystallography (2006). Vol. F, ch. 11.3, pp. 218-221   | 1 | 2 |

Section 11.3.2. Modelling rotation images

W. Kabscha*

aMax-Planck-Institut für medizinische Forschung, Abteilung Biophysik, Jahnstrasse 29, 69120 Heidelberg, Germany
Correspondence e-mail:

11.3.2. Modelling rotation images

| top | pdf |

The observed diffraction pattern, i.e., the positions of the reflections recorded in the rotation-data images, is controlled by a small set of parameters which must be accurately determined before integration can start. Approximate values for some of these parameters are given by the experimental setup, whereas others may be completely unknown and must be obtained from the rotation images. This is achieved by automatic location of strong diffraction spots, extraction of a primitive lattice basis that yields integer indices for the observed reflections, and subsequent refinement of all parameters to minimize the discrepancies between observed and calculated spot positions in the data images. Coordinate systems and parameters

| top | pdf |

In the rotation method, the incident beam wave vector [{\bf S}_{0}] of length [1/\lambda] (λ is the wavelength) is fixed while the crystal is rotated around a fixed axis described by a unit vector [{\bf m}_{2}]. [{\bf S}_{0}] points from the X-ray source towards the crystal. It is assumed that the incident beam and the rotation axis intersect at one point at which the crystal must be located. This point is defined as the origin of a right-handed orthonormal laboratory coordinate system [\{{\bf l}_{1},{\bf l}_{2},{\bf l}_{3}\}]. This fixed but otherwise arbitrary system is used as a reference frame to specify the setup of the diffraction experiment.

Diffraction data are assumed to be recorded on a fixed planar detector. A right-handed orthonormal detector coordinate system [\{{\bf d}_{1},{\bf d}_{2},{\bf d}_{3}\}] is defined such that a point with coordinates X, Y in the detector plane is represented by the vector [(X - X_{0}){\bf d}_{1} + {(Y - Y_{0}){\bf d}_{2} + F{\bf d}_{3}}] with respect to the laboratory coordinate system. The origin [X_{0}, Y_{0}] of the detector plane is found at a distance [|F|] from the crystal position. It is assumed that the diffraction data are recorded on adjacent non-overlapping rotation images, each covering a constant oscillation range [\Delta_{\varphi}] with image No. 1 starting at spindle angle [\varphi_{0}].

Diffraction geometry is conveniently expressed with respect to a right-handed orthonormal goniostat system [\{{\bf m}_{1}, {\bf m}_{2}, {\bf m}_{3}\}]. It is constructed from the rotation axis and the incident beam direction such that [{\bf m}_{1} = ({\bf m}_{2}\times {\bf S}_{0})/|{\bf m}_{2} \times {\bf S}_{0}|] and [{\bf m}_{3} = {\bf m}_{1} \times {\bf m}_{2}]. The origin of the goniostat system is defined to coincide with the origin of the laboratory system.

Finally, a right-handed crystal coordinate system [\{{\bf b}_{1}, {\bf b}_{2}, {\bf b}_{3}\}] and its reciprocal basis [\{{\bf b}_{1}^{*}, {\bf b}_{2}^{*}, {\bf b}_{3}^{*}\}] are defined to represent the unrotated crystal, i.e., at rotation angle [\varphi = 0^{\circ}], such that any reciprocal-lattice vector can be expressed as [{\bf p}_{0}^{*} = h{\bf b}_{1}^{*} + k{\bf b}_{2}^{*} + l{\bf b}_{3}^{*}] where [h, k, l] are integers.

Using a Gaussian model, the shape of the diffraction spots is specified by two parameters: the standard deviations of the reflecting range [\sigma_{M}] and the beam divergence [\sigma_{D}] (see Section[link]). This leads to an integration region around the spot defined by the parameters [\delta_{M}] and [\delta_{D}], which are typically chosen to be 6–10 times larger than [\sigma_{M}] and [\sigma_{D}], respectively.

Knowledge of the parameters [{\bf S}_{0}], [{\bf m}_{2}], [{\bf b}_{1}], [{\bf b}_{2}], [{\bf b}_{3}], [X_{0}], [Y_{0}, F], [{\bf d}_{1}], [{\bf d}_{2}], [{\bf d}_{3}], [\varphi_{0}] and [\Delta_{\varphi}] is sufficient to compute the location of all diffraction peaks recorded in the data images. Determination and refinement of these parameters are described in the following sections. Spot prediction

| top | pdf |

It is assumed here that accurate values of all parameters describing the diffraction experiment are available, permitting prediction of the positions of all diffraction peaks recorded in the data images. Let [{\bf p}^{*}_{0}] denote any arbitrary reciprocal-lattice vector if the crystal has not been rotated, i.e., at rotation angle [\varphi = 0^{\circ}]. [{\bf p}^{*}_{0}] can be expressed by its components with respect to the orthonormal goniostat system as [{\bf p}^{*}_{0} = {\bf m}_{1} ({\bf m}_{1} \cdot {\bf p}^{*}_{0}) + {\bf m}_{2}({\bf m}_{2} \cdot {\bf p}^{*}_{0}) + {\bf m}_{3}({\bf m}_{3} \cdot {\bf p}^{*}_{0}).] Depending on the diffraction geometry, [{\bf p}^{*}_{0}] may be rotated into a position fulfilling the reflecting condition. The required rotation angle ϕ and the coordinates X, Y of the diffracted beam at its intersection with the detector plane can be found from [{\bf p}^{*}_{0}] as follows.

Rotation by ϕ around axis [{\bf m}_{2}] changes [{\bf p}^{*}_{0}] into [{\bf p}^{*}]. [\eqalign{{\bf p}^{*} &=D({\bf m}_{2}, \varphi){\bf p}^{*}_{0} = {\bf m}_{2}({\bf m}_{2} \cdot {\bf p}^{*}_{0}) + [{\bf p}^{*}_{0} - {\bf m}_{2}({\bf m}_{2} \cdot {\bf p}^{*}_{0})]\cos \varphi\cr&\quad+ \;{\bf m}_{2} \times {\bf p}^{*}_{0} \sin \varphi\cr &= {\bf m}_{1}({\bf m}_{1} \cdot {\bf p}^{*}_{0} \cos \varphi + {\bf m}_{3} \cdot {\bf p}^{*}_{0} \sin \varphi) + {\bf m}_{2}{\bf m}_{2} \cdot {\bf p}^{*}_{0}\cr &\quad+\; {\bf m}_{3}({\bf m}_{3} \cdot {\bf p}^{*}_{0}\cos \varphi - {\bf m}_{1} \cdot {\bf p}^{*}_{0}\sin \varphi)\cr &= {\bf m}_{1}({\bf m}_{1} \cdot {\bf p}^{*}) + {\bf m}_{2}({\bf m}_{2} \cdot {\bf p}^{*}) + {\bf m}_{3}({\bf m}_{3} \cdot {\bf p}^{*}).}] The incident and diffracted beam wave vectors, [{\bf S}_{0}] and S, have their termini on the Ewald sphere and satisfy the Laue equations [{\bf S} = {\bf S}_{0} + {\bf p}^{*}, \quad {\bf S}^{2} = {\bf S}_{0}^{2}\;\Longrightarrow\; {\bf p}^{*2} = -2{\bf S}_{0} \cdot {\bf p}^{*} = {\bf p}^{*2}_{0}.] If [\rho = [{\bf p}^{*2}_{0} - ({\bf p}^{*}_{0} \cdot {\bf m}_{2})^{2}]^{1/2}] denotes the distance of [{\bf p}^{*}_{0}] from the rotation axis, solutions for [{\bf p}^{*}] and ϕ can be obtained in terms of [{\bf p}^{*}_{0}] as [\eqalign{{\bf p}^{*} \cdot {\bf m}_{3} &= [-{\bf p}^{*2}_{0}/2 - ({\bf p}^{*}_{0} \cdot {\bf m}_{2})({\bf S}_{0} \cdot {\bf m}_{2})]/{\bf S}_{0}\cdot {\bf m}_{3}\cr {\bf p}^{*} \cdot {\bf m}_{2} &= {\bf p}^{*}_{0} \cdot {\bf m}_{2}\cr {\bf p}^{*} \cdot {\bf m}_{1} &= \pm [\rho^{2} - ({\bf p}^{*} \cdot {\bf m}_{3})^{2}]^{1/2}\cr \cos \varphi &= [({\bf p}^{*} \cdot {\bf m}_{1})({\bf p}^{*}_{0} \cdot {\bf m}_{1}) + ({\bf p}^{*} \cdot {\bf m}_{3})({\bf p}^{*}_{0} \cdot {\bf m}_{3})]/\rho^{2}\cr \sin \varphi &= [({\bf p}^{*} \cdot {\bf m}_{1})({\bf p}^{*}_{0} \cdot {\bf m}_{3}) - ({\bf p}^{*} \cdot {\bf m}_{3})({\bf p}^{*}_{0} \cdot {\bf m}_{1})]/\rho^{2}.}] In general, there are two solutions according to the sign of [{\bf p}^{*} \cdot {\bf m}_{1}]. If [\rho^{2} \lt ({\bf p}^{*} \cdot {\bf m}_{3})^{2}] or [{\bf p}^{*2}_{0}\gt 4{\bf S}_{0}^{2}], the Laue equations have no solution and the reciprocal-lattice point [{\bf p}^{*}_{0}] is in the `blind' region.

If [F{\bf S} \cdot {\bf d}_{3} \gt 0], the diffracted beam intersects the detector plane at the point [\eqalign{F{\bf S}/{\bf S} \cdot {\bf d}_{3} &= (F{\bf S} \cdot {\bf d}_{1}/{\bf S} \cdot {\bf d}_{3}){\bf d}_{1} + (F{\bf S} \cdot {\bf d}_{2}/{\bf S} \cdot {\bf d}_{3}){\bf d}_{2} + F{\bf d}_{3}\cr &= (X - X_{0}){\bf d}_{1} + (Y - Y_{0}){\bf d}_{2} + F{\bf d}_{3},}] which leads to a diffraction spot recorded at detector coordinates [\eqalign{X &= X_{0} + F{\bf S} \cdot {\bf d}_{1}/{\bf S} \cdot {\bf d}_{3},\cr Y &= Y_{0} + F{\bf S} \cdot {\bf d}_{2}/{\bf S} \cdot {\bf d}_{3}.}] Standard spot shape

| top | pdf |

A reciprocal-lattice point crosses the Ewald sphere by the shortest route only if the crystal happens to be rotated about an axis perpendicular to both the diffracted and incident beam wave vectors, the `β-axis' [{\bf e}_{1} = {\bf S} \times {\bf S}_{0}/|{\bf S} \times {\bf S}_{0}|], as introduced by Schutt & Winkler (1977[link]). Rotation around the fixed axis [{\bf m}_{2}], as enforced by the rotation camera, thus leads to an increase in the length of the shortest path by the factor [1/|{\bf e}_{1} \cdot {\bf m}_{2}|]. This has motivated the introduction of a coordinate system [\{{\bf e}_{1}, {\bf e}_{2}, {\bf e}_{3}\}], specific for each reflection, which has its origin on the surface of the Ewald sphere at the terminus of the diffracted beam wave vector S, [\displaylines{{\bf e}_{1} = {\bf S} \times {\bf S}_{0}/|{\bf S} \times {\bf S}_{0}|, \quad {\bf e}_{2} = {\bf S} \times {\bf e}_{1}/|{\bf S} \times {\bf e}_{1}|,\cr \quad {\bf e}_{3} = ({\bf S} + {\bf S}_{0})/|{\bf S} + {\bf S}_{0}|.}] The unit vectors [{\bf e}_{1}] and [{\bf e}_{2}] are tangential to the Ewald sphere, while [{\bf e}_{3}] is perpendicular to [{\bf e}_{1}] and [{\bf p}^{*} = {\bf S} - {\bf S}_{0}]. The shape of a reflection, as represented with respect to [\{{\bf e}_{1}, {\bf e}_{2}, {\bf e}_{3}\}], then no longer contains geometrical distortions resulting from the fixed rotation axis of the camera and the oblique incidence of the diffracted beam on a flat detector. Instead, all reflections appear as if they had followed the shortest path through the Ewald sphere and had been recorded on the surface of the sphere.

A detector pixel at X′, Y′ in the neighbourhood of the reflection centre X, Y, when the crystal is rotated by ϕ′ instead of ϕ, is mapped to the profile coordinates [\varepsilon_{1}, \varepsilon_{2}, \varepsilon_{3}] by the following procedure: [\eqalign{{\bf S}' &= [(X' - X_{0}){\bf d}_{1} + (Y' - Y_{0}){\bf d}_{2} + F{\bf d}_{3}]\cr &\quad\times \{\lambda \cdot [(X' - X_{0})^{2} + (Y' - Y_{0})^{2} + F^{2}]^{1/2}\}^{-1}\cr \varepsilon_{1} &= {\bf e}_{1} \cdot ({\bf S}' - {\bf S})180/(|{\bf S}|\pi ),\cr \varepsilon_{2} &= {\bf e}_{2} \cdot ({\bf S}' - {\bf S})180/(|{\bf S}|\pi )\cr \varepsilon_{3} &= {\bf e}_{3} \cdot [D({\bf m}_{2}, \varphi' - \varphi){\bf p}^{*} - {\bf p}^{*}]180/(|{\bf p}^{*}|\pi ) \simeq \zeta \cdot (\varphi' - \varphi)\cr \zeta &= {\bf m}_{2} \cdot {\bf e}_{1}.}] ζ corrects for the increased path length of the reflection through the Ewald sphere and is closely related to the reciprocal Lorentz correction factor [L^{-1} = |{\bf m}_{2} \cdot ({\bf S} \times {\bf S}_{0})|/(|{\bf S}| \cdot |{\bf S}_{0}|) = |\zeta \cdot \sin \angle ({\bf S},{\bf S}_{0})|.]

Because of crystal mosaicity and beam divergence, the intensity of a reflection is smeared around the diffraction maximum. The fraction of total reflection intensity found in the volume element [\hbox{d}\varepsilon_{1} \hbox{d}\varepsilon_{2} \hbox{d}\varepsilon_{3}] at [\varepsilon_{1}, \varepsilon_{2}, \varepsilon_{3}] can be approximated by Gaussian functions: [\displaylines{\omega(\varepsilon_{1}, \varepsilon_{2}, \varepsilon_{3})\hbox{d}\varepsilon_{1} \hbox{d}\varepsilon_{2} \hbox{d}\varepsilon_{3}\hfill\cr \quad= {\exp(- \varepsilon_{1}^{2}/2\sigma_{D}^{2}) \over (2\pi )^{1/2} \sigma_{D}} \hbox{d}\varepsilon_{1} \cdot {\exp(- \varepsilon_{2}^{2}/2\sigma_{D}^{2}) \over (2\pi )^{1/2} \sigma_{D}} \hbox{d}\varepsilon_{2} \cdot {\exp(- \varepsilon_{3}^{2}/2\sigma_{M}^{2}) \over (2\pi )^{1/2} \sigma_{M}} \hbox{d}\varepsilon_{3}.}] Spot centroids and partiality

| top | pdf |

The intensity of a reflection can be completely recorded on one image, or distributed among several adjacent images. The fraction [R_{j}] of total intensity recorded on image j, the `partiality' of the reflection, can be derived from the distribution function [\omega (\varepsilon_{1}, \varepsilon_{2}, \varepsilon_{3})] as [\eqalign{R_{j} &= {\textstyle\int\limits_{- \infty}^{\infty}} \hbox{d}\varepsilon_{1} {\textstyle\int\limits_{- \infty}^{\infty}} \hbox{d}\varepsilon_{2} {\textstyle\int\limits_{\zeta [\varphi_{0} + (j - 1)\Delta_{\varphi} - \varphi]}^{\zeta (\varphi_{0} + j\Delta_{\varphi} - \varphi)}} \hbox{d}\varepsilon_{3} \;\omega(\varepsilon_{1}, \varepsilon_{2}, \varepsilon_{3})\cr &= \{[1/(2\pi )^{1/2} \sigma_{M}]/|\zeta|\} \cr&\quad\times{\textstyle\int\limits_{\varphi_{0} + (j - 1)\Delta_{\varphi}}^{\varphi_{0} + j\Delta_{\varphi}}} \exp[- (\varphi' - \varphi)^{2}/2(\sigma_{M}/|\zeta|)^{2}] \;\hbox{d}\varphi'\cr &= \left(\hbox{erf}[|\zeta|(\varphi_{0} + j\Delta_{\varphi} - \varphi)/(2)^{1/2} \sigma_{M}]\right. \cr&\left.\quad-\;\hbox{erf}\{|\zeta|[\varphi_{0} + (j - 1)\Delta_{\varphi} - \varphi]/(2)^{1/2} \sigma_{M}\}\right)\big/2.}] The integral is evaluated by using a numerical approximation of the error function, erf (Abramowitz & Stegun, 1972[link]).

While the spot centroids in the detector plane are usually good estimates for the detector position of the diffraction maximum, the angular centroid about the rotation axis, [Z = \varphi_{0} + \Delta_{\varphi} \cdot {\textstyle\sum\limits_{j = -\infty}^{\infty}} (j - 1/2) R_{j} \approx \varphi,] can be a rather poor guess for the true ϕ angle of the maximum. Its accuracy depends strongly on the value of ϕ and the size of the oscillation range [\Delta_{\varphi}] relative to the mosaicity [\sigma_{M}] of the crystal. For a reflection fully recorded on image j, the value [Z = \varphi_{0} + {(\;j - 1/2) \cdot \Delta_{\varphi}}] will always be obtained, which is correct only if ϕ accidentally happens to be close to the centre of the rotation range of the image. In contrast, the ϕ angle of a partial reflection recorded on images j and [j + 1] is closely approximated by [Z = \varphi_{0} + [\;j + (R_{j + 1} - R_{j})/2] \cdot \Delta_{\varphi}]. If many images contribute to the spot intensity, [Z(\varphi)] is always an excellent approximation to the ideal angular position ϕ when the Laue equations are satisfied; in fact, in the limiting case of infinitely fine-sliced data, it can be shown that [\lim_{\Delta_{\varphi} \rightarrow 0}Z(\varphi) = \varphi].

Most refinement routines minimize the discrepancies between the predicted ϕ angles and their approximations obtained from the observed Z centroids, and must therefore carefully distinguish between fully and partially recorded reflections. This distinction is unnecessary, however, if observed Z centroids are compared with their analytic forms instead, because the sensitivity of the centroid positions to the diffraction parameters is correctly weighted in either case (see Section[link]). Localizing diffraction spots

| top | pdf |

Recognition and refinement of the parameter values controlling the observed diffraction pattern begins with the extraction of a list of coordinates of strong spots occurring in the images. As implemented in XDS, this list is obtained by the following procedure. First, each pixel value is compared with the mean value and standard deviation of surrounding pixels in the same image and classified as a strong pixel if its value exceeds the mean by a given multiple (typically 3 to 5) of the standard deviation. Values of the strong pixels and their location addresses and image running numbers are stored in a hash table during spot search [for a discussion of the hash technique, see Wirth (1976[link])]. After processing a fixed number of images, or when the table is full, all strong pixels are labelled by a unique number identifying the spot to which they belong. By definition, any two such pixels which can be connected by direct strong neighbours in two or three dimensions (if there are adjacent images) belong to the same spot (equivalence class). The labelling is achieved by the highly efficient algorithm for the recording of equivalence classes developed by Rem (see Dijkstra, 1976[link]). At the end of this procedure, the table is searched for spots that have no contributing strong pixel on the current or the previous image. These spots are complete and their centroids are evaluated and saved in a file. To make room for new strong pixels as the spot search proceeds, all entries of strong pixels that are no longer needed are removed from the hash table and the remaining ones are rehashed. On termination, a list [X'_{i}, Y'_{i}, Z'_{i}\ (i = 1, \ldots, n)] of the centroids of strong spots is available. Basis extraction

| top | pdf |

Any reciprocal-lattice vector can be written in the form [{\bf p}_{0}^{*} = h{\bf b}_{1}^{*} + k{\bf b}_{2}^{*} + l{\bf b}_{3}^{*}] where h, k, l are integer numbers and [{\bf b}_{1}^{*}, {\bf b}_{2}^{*}, {\bf b}_{3}^{*}] are basis vectors of the lattice. The basis vectors which describe the orientation, metric and symmetry of the crystal, as well as the reflection indices h, k, l, have to be determined from the list of strong diffraction spots [X'_{i}, Y'_{i}, Z'_{i}\ (i = 1, \ldots, n)]. Ideally, each spot corresponds to a reciprocal-lattice vector [{\bf p}_{0}^{*}] which satisfies the Laue equations after a crystal rotation by ϕ. Substituting the observed value Z′ for the unknown ϕ angle (see Section[link]), [{\bf p}_{0}^{*}] is found from the observed spot coordinates as [\eqalign{{\bf p}_{0}^{*} &=D({\bf m}_{2}, -Z') ({\bf S'} - {\bf S}_{0})\cr {\bf S'} &= \left[(X'- X_{0}){\bf d}_{1} + (Y'- Y_{0}){\bf d}_{2} + F{\bf d}_{3}\right]\cr &\quad\times\left\{\lambda \cdot \left[(X'- X_{0})^{2} + (Y' - Y_{0})^{2} + F^{2}\right]^{1/2}\right\}^{-1}.}] Unfortunately, the reciprocal-lattice vectors [{\bf p}^{*}_{0i}\ (i = 1, \ldots, n)] derived from the above list of strong diffraction spots often contain a number of `aliens' (spots arising from fluctuations of the background, from ice, or from satellite crystals) and a robust method has to be used which is still capable of recognizing the dominant lattice. One approach, suggested by Bricogne (1986[link]) and implemented in a number of variants (Otwinowski & Minor, 1997[link]; Steller et al., 1997[link]), is to identify a lattice basis as the three shortest linear independent vectors [{\bf b}_{1}, {\bf b}_{2}, {\bf b}_{3}], each at a maximum of the Fourier transform [\sum\nolimits_{i=1}^{n} \cos (2\pi {\bf b} \cdot {\bf p}^{*}_{0i})]. Alternatively, a reciprocal basis for the dominant lattice can be determined from short differences between the reciprocal-lattice vectors (Howard, 1986[link]; Kabsch, 1988a[link]). As implemented in XDS, a lattice basis is found by the following procedure.

The list of given reciprocal-lattice points [{\bf p}^{*}_{0i}\ (i = 1, \ldots,n)] is first reduced to a small number m of low-resolution difference-vector clusters [{\bf v}^{*}_{\mu}\ (\mu = 1, \ldots, m)]. [f_{\mu}] is the population of a difference-vector cluster [{\bf v}^{*}_{\mu}], that is the number of times the difference between any two reciprocal-lattice vectors [{\bf p}^{*}_{0i} - {\bf p}^{*}_{0j}] is approximately equal to [{\bf v}^{*}_{\mu}]. In a second step, three linear independent vectors [{\bf b}_{1}^{*}, {\bf b}_{2}^{*}, {\bf b}_{3}^{*}] are selected among all possible triplets of difference-vector clusters that maximize the function Q: [\eqalign{Q({\bf b}_{1}^{*}, {\bf b}_{2}^{*}, {\bf b}_{3}^{*}) &={\textstyle\sum\limits_{\mu = 1}^{m}} f_{\mu} q(\xi_{1}^{\mu}, \xi_{2}^{\mu}, \xi_{3}^{\mu})\cr q(\xi_{1}^{\mu}, \xi_{2}^{\mu}, \xi_{3}^{\mu}) &= \exp\left(-2 {\textstyle\sum\limits_{k = 1}^{3}}\left\{[\max(|\xi_{k}^{\mu} - h_{k}^{\mu}| - \varepsilon,0)/\varepsilon]^{2}\right.\right.\cr&\quad\left. +\; [\max(|h_{k}^{\mu}| - \delta,0)]^{2}\right\}\bigg)\cr \xi_{k}^{\mu} &={\bf v}_{\mu}^{*} \cdot {\bf b}_{k}, \quad {\bf v}_{\mu}^{*} = {\textstyle\sum\limits_{k = 1}^{3}} \xi_{k}^{\mu}{\bf b}_{k}^{*}, \quad {\bf b}_{k} \cdot {\bf b}_{l}^{*} = {\left\{\matrix{1 \hbox{ if } k = l \hbox{;}\hfill\cr 0 \hbox{ otherwise}\cr}\right.}\cr h_{k}^{\mu} &= \hbox{ nearest integer to}\ \xi_{k}^{\mu}.}\hfill] The absolute maximum of Q is assumed if all difference vectors can be expressed as small integral multiples of the best triplet. Deviations from this ideal situation are quantified by the quality measure q. The value of q declines sharply if the expansion coefficients [\xi_{k}^{\mu}] deviate by more than [epsilon] from their nearest integers [h_{k}^{\mu}] or if the indices are absolutely larger than δ. The constraint on the allowed range of indices prevents the selection of a spurious triplet of very short difference vector clusters which might be present in the set. Excellent results have been obtained using [\varepsilon = 0.05] and [\delta = 5]. The best vector triplet thus found is refined against the observed difference-vector clusters. Finally, a reduced cell is derived from the refined reciprocal-base vector triplet as defined in IT A (2005[link]), Chapter 9.2[link] . Indexing

| top | pdf |

Once a basis [{\bf b}_{1}, {\bf b}_{2}, {\bf b}_{3}] of the lattice is available, integral indices [h_{i}, k_{i}, l_{i}] must be assigned to each reciprocal-lattice vector [{\bf p}_{0i}^{*}\ (i = 1, \ldots, n)]. Using the integers nearest to [{\bf p}_{0i}^{*} \cdot {\bf b}_{k}\ (k = 1,2,3)] as indices of the reciprocal-lattice vectors [{\bf p}_{0i}^{*}] could easily lead to a misindexing of longer vectors because of inaccuracies in the basis vectors [{\bf b}_{k}] and the initial values of the parameters describing the instrumental setup. A more robust solution of the indexing problem is provided by the local indexing method which assigns only small index differences [h_{i} - h_{j}, k_{i} - k_{j}, l_{i} - l_{j}] between pairs of neighbouring reciprocal-lattice vectors (Kabsch, 1993[link]).

The reciprocal-lattice points can be considered as the nodes of a tree. The tree connects the n points to each other with the connections as its branches. The length [\ell_{ij}] of a possible branch between nodes i and j is defined here as [\eqalign{\ell_{ij} &= 1 - \exp\left(-2 {\textstyle\sum\limits_{k = 1}^{3}}\left\{[\max(|\xi_{k}^{ij} - h_{k}^{ij}| - \varepsilon,0)/\varepsilon]^{2}\right.\right.\cr&\quad\left. +\; [\max(|h_{k}^{ij}| - \delta,0)]^{2}\right\}\bigg)\cr \xi_{k}^{ij} &= ({\bf p}_{0i}^{*} - {\bf p}_{0j}^{*}) \cdot {\bf b}_{k}, \quad h_{k}^{ij} = \hbox{ nearest integer of }\xi_{k}^{ij}, \quad k = 1,2,3.}] Reliable index differences are indicated by short branches; in fact, [\ell_{ij}] is 0 if none of the indices [h_{k}^{ij}] is absolutely larger than δ and the [\xi_{k}^{ij}] are integer values to within [epsilon]. Typical values of [epsilon] and δ are [\varepsilon = 0.05] and [\delta = 5]. Defining the length of a tree as the sum of the lengths of its branches, a shortest tree among all [n^{n-2}] possible trees is determined by the elegant algorithm described by Dijkstra (1976[link]). Starting with arbitrary indices 0, 0, 0 for the root node, the local indexing method then consists of traversing the shortest tree and thereby assigning each node the indices of its predecessor plus the small index differences between the two nodes.

During traversal of the tree, each node is also given a subtree number. Starting with subtree number 1 for the root node, each successor node is given the same subtree number as its predecessor if the length of the connecting branch is below a minimal length [\ell_{\min}]. Otherwise its subtree number is incremented by 1. Thus all nodes in the same subtree have internally consistent reflection indices. Defining the size of a subtree by the number of its nodes, aliens are usually found in small subtrees. Finally, a constant index offset is determined such that the centroids of the observed reciprocal-lattice points [{\bf p}_{0i}^{*}] belonging to the largest subtree and their corresponding grid vectors [\sum\nolimits_{k = 1}^{3}h_{k}^{i}{\bf b}_{k}^{*}] are as close as possible. This offset is added to the indices of each reciprocal-lattice point. Refinement

| top | pdf |

For a fixed detector, the diffraction pattern depends on the parameters [{\bf S}_{0}, {\bf m}_{2}, {\bf b}_{1}, {\bf b}_{2}, {\bf b}_{3}, X_{0}, Y_{0}] and F. Starting values for the parameters can be obtained by the procedures described above that do not rely on prior knowledge of the crystal orientation, space-group symmetry or unit-cell metric. Better estimates of the parameter values, as required for the subsequent integration step, can be obtained by the method of least squares from the list of n observed indexed reflection centroids [h_{i}], [k_{i}], [l_{i}], [X_{i}'], [Y_{i}'], [Z_{i}'] [(i = 1, \ldots, n)]. In this method, the parameters are chosen to minimize a weighted sum of squares of the residuals [E = w_{X} {\textstyle\sum\limits_{i=1}^{n}} (\Delta_{X}^{i})^{2} + w_{Y} {\textstyle\sum\limits_{i=1}^{n}} (\Delta_{Y}^{i})^{2} + w_{Z} {\textstyle\sum\limits_{i=1}^{n}} (\Delta_{Z}^{i})^{2}.] The residuals between the calculated [(X_{i}, Y_{i}, Z_{i})] and observed spot centroids are [\eqalign{\Delta_{X}^{i} &=X_{i} - X_{i}' =X_{0} + F{\bf S}_{i} \cdot {\bf d}_{1}/{\bf S}_{i} \cdot {\bf d}_{3} - X_{i}'\cr \Delta_{Y}^{i} &=Y_{i} - Y_{i}' =Y_{0} + F{\bf S}_{i} \cdot {\bf d}_{2}/{\bf S}_{i} \cdot {\bf d}_{3} - Y_{i}'\cr \Delta_{Z}^{i} &=Z_{i} - Z_{i}' =\varphi_{0} + \Delta_{\varphi} {\textstyle\sum\limits_{j = -\infty}^{\infty}} (\;j - 1/2) R_{j}^{i} - Z_{i}'.}]

Let [s_{\mu}\ (\mu = 1, \ldots, k)] denote the k independent parameters for which initial estimates are available. Expanding the residuals to first order in the parameter changes [\delta s_{\mu}] gives [\Delta (s_{\mu} + \delta s_{\mu}) \approx \Delta (s_{\mu}) + \sum\limits_{\mu = 1}^{k} {\partial\Delta\over \partial s_{\mu}}\delta s_{\mu}.] The parameters should be changed in such a way as to minimize [E(\delta s_{\mu})], which implies [\partial E/\partial \delta s_{\mu} = 0] for [\mu = 1, \ldots, k]. The [\delta s_{\mu}] are found as the solution of the k normal equations [\eqalign{&\sum\limits_{\mu'= 1}^{k} \left(w_{X} \sum\limits_{i=1}^{n} {\partial\Delta_{X}^{i} \over \partial s_{\mu}} {\partial\Delta_{X}^{i} \over \partial s_{\mu'}} + w_{Y}\sum\limits_{i=1}^{n} {\partial\Delta_{Y}^{i} \over \partial s_{\mu}} {\partial\Delta_{Y}^{i} \over \partial s_{\mu'}} + w_{Z} \sum\limits_{i=1}^{n} {\partial\Delta_{Z}^{i} \over \partial s_{\mu}} {\partial\Delta_{Z}^{i} \over \partial s_{\mu'}}\right) \delta s_{\mu'}\cr &\quad = - \left(w_{X}\sum\limits\limits_{i=1}^{n} \Delta_{X}^{i} {\partial \Delta_{X}^{i} \over \partial s_{\mu}} + w_{Y}\sum\limits\limits_{i=1}^{n}\Delta_{Y}^{i} {\partial \Delta_{Y}^{i} \over \partial s_{\mu}} + w_{Z}\sum\limits\limits_{i=1}^{n} \Delta_{Z}^{i} {\partial \Delta_{Z}^{i} \over \partial s_{\mu}}\right).}] The parameters are corrected by [\delta s_{\mu}] and a new cycle of refinement is started until a minimum of E is reached. The weights [w_{X} = 1/{\textstyle\sum\limits_{i=1}^{n}}(\Delta_{X}^{i})^{2}, \quad w_{Y} = 1/{\textstyle\sum\limits_{i=1}^{n}} (\Delta_{Y}^{i})^{2}, \quad w_{Z} = 1/{\textstyle\sum\limits_{i=1}^{n}} (\Delta_{Z}^{i})^{2}] are calculated with the current guess for [s_{\mu}] at the beginning of each cycle.

The derivatives appearing in the normal equations can be worked out from the definitions given in Sections[link] and[link], and only the form of the gradient of the Z residuals is shown. Assuming [\sigma_{i} = \sigma_{M}/|\zeta_{i}|\ (i = 1,\ldots, n)] is constant for each reflection, the gradients of the Z residuals are obtained from the chain rule and the relation [\hbox{d erf}(z)/\hbox{d}z = [2/(\pi)^{1/2}] \exp (-z^{2})]. [\eqalign{{\partial \Delta_{Z}^{i} \over \partial s_{\mu}} &= {\partial \Delta_{Z}^{i} \over \partial \varphi_{i}} {\partial \varphi_{i} \over \partial s_{\mu}}\cr {\partial \Delta_{Z}^{i} \over \partial \varphi_{i}} &= {\Delta_{\varphi} \over (2\pi)^{1/2} \sigma_{i}} \sum\limits_{j=-\infty}^{\infty} \exp [-(\varphi_{0} + j\Delta_{\varphi} -\varphi_{i})^{2}/2\sigma_{i}^{2}]\cr {\partial \varphi_{i} \over \partial s_{\mu}} &= \cos \varphi_{i} {\partial \sin \varphi_{i} \over \partial s_{\mu}} - \sin \varphi_{i} {\partial \cos \varphi_{i} \over \partial s_{\mu}}.}] Obviously, [\partial \Delta_{Z}^{i}/\partial s_{\mu}] is small for a fully recorded reflection because of the small values of all exponentials appearing in [\partial \Delta_{Z}^{i}/\partial \varphi_{i}]. In contrast, the gradient for a partial reflection, equally recorded on two adjacent images, is most sensitive to parameter variations because one of the exponentials assumes its maximum value. In the limiting case of infinitely fine-sliced data, it can be shown that [\lim_{\Delta_{\varphi \rightarrow 0}} \partial \Delta_{Z}^{i}/\partial \varphi_{i} = 1]. Thus, the refinement scheme based on observed Z centroids, as described here and implemented in XDS, is applicable to fine-sliced data – and to data recorded with a large oscillation range as well.


International Tables for Crystallography (2005). Vol. A. Space-group symmetry, edited by Th. Hahn, ch. 9.2. Heidelberg: Springer.
Abramowitz, M. & Stegun, I. A. (1972). Handbook of mathematical functions. New York: Dover Publications.
Bricogne, G. (1986). Indexing and the Fourier transform. In Proceedings of the EEC cooperative workshop on position-sensitive detector software (phase III), p. 28. LURE, 12–19 November.
Dijkstra, E. W. (1976). A discipline of programming, pp. 154–167. New Jersey: Prentice-Hall.
Howard, A. (1986). Autoindexing. In Proceedings of the EEC cooperative workshop on position-sensitive detector software (phases I & II), pp. 89–94. LURE, 26 May–7 June.
Kabsch, W. (1988a). Automatic indexing of rotation diffraction patterns. J. Appl. Cryst. 21, 67–71.
Kabsch, W. (1993). Automatic processing of rotation diffraction data from crystals of initially unknown symmetry and cell constants. J. Appl. Cryst. 26, 795–800.
Otwinowski, Z. & Minor, W. (1997). Processing of X-ray diffraction data collected in oscillation mode. Methods Enzymol. 276, 307–326.
Schutt, C. & Winkler, F. K. (1977). The oscillation method for very large unit cells. In The rotation method in crystallography, edited by U. W. Arndt & A. J. Wonacott, pp. 173–186. Amsterdam, New York, Oxford: North-Holland.
Steller, I., Bolotovsky, R. & Rossmann, M. G. (1997). An algorithm for automatic indexing of oscillation images using Fourier analysis. J. Appl. Cryst. 30, 1036–1040.
Wirth, N. (1976). Algorithms + data structures = programs, pp. 264–274. New York: Prentice-Hall.

to end of page
to top of page