Data processing requires the specification of geometrical parameters that describe the diffraction experiment. The coordinate systems used by nXDS to this purpose are explained in this chapter.

Any convenient right-handed orthonormal system may be chosen with the origin at the intersection between rotation axis, direct beam and crystal. Once chosen, the coordinate system remains fixed throughout the diffraction experiment. This coordinate system serves to specify

- direction cosines of the rotation axis
- incident beam wave vector
- detector orientation and translation
- unit cell basis vectors of the crystal

*Example* of a typical experimental setup for the SIEMENS detector.

In the chosen laboratory coordinate system, the y-axis points vertically down and is defined to be collinear with the detector swing axis (for the SIEMENS). The z-axis lies within the plane spanned by the y-axis and the detector normal at swing angle 0, with +z pointing from the crystal towards the detector. The x-axis is defined to yield an orthonormal right handed laboratory coordinate system.

viewed from ABOVE:

detector \ \ \ | \ | \ | \ | \ | ---beam->-->-O-------------- +z | | | | | +x

viewed from the SIDE:

swing axis ω axis 2θ axis rotation axis detector | | | | | | | | ---beam->-->-O-------------- +z | | | | | | | | | +y

ROTATION_AXIS= 0 -1 0

if the crystal rotates counterclockwise when proceeding to the next data
frame and the crystal is viewed from above; otherwise ` 0 1 0`.

Note, that nXDS requires the frame increment
(oscillation range)
be non-negative.

INCIDENT_BEAM_DIRECTION= 0 0 1

The positive beam direction points along +z from the source towards
the crystal. The beam is aligned normal to the y-axis and the
detector surface at swing angle χ=0.

DIRECTION_OF_DETECTOR_X-AXIS=`ED(1,1) ED(2,1) ED(3,1)=
-cosχ 0 sinχ`

DIRECTION_OF_DETECTOR_Y-AXIS=`ED(1,2) ED(2,2) ED(3,2)=
0.0 -1.0 0.0`

ORGX=261.45

ORGY=268.06

DETECTOR_DISTANCE=
130.01

The x- and y- axes of the *detector* coordinate system are
specified by the two orthonormal vectors ED(:,1) and ED(:,2), respectively.
These vectors - together with their cross product
`ED(:,3)=ED(:,1) X ED(:,2)` - define a rotation matrix ED.
The swing axis points downwards along +y and a positive swing
angle χ (or 2θ) corresponds to a clockwise rotation of the
detector when viewed from above. In the drawing, the detector is set to
a negative swing angle χ.

The origin of the *detector* system, fixed at 0 0 0 in the
instrument, is specified (mm) in the *laboratory* coordinate system
by the vector

`ORG(:) = -ORGX*QX*ED(:,1)-ORGY*QY*ED(:,2)+F*ED(:,3)`
using device specific conversion factors
QX=0.19 and
QY=0.19.

Note the positive sign for the detector distance because the detector
normal ED(:,3) points away from the crystal.

A right-handed orthonormal *detector* coordinate system, assumed
fixed with the instrument, is used as a reference for desribing internal
details of the device. This description is invariant towards movements
of the detector. As mentioned above this *detector* system, i.e.
the right-handed orthonormal matrix `ED`, is specified by the
two input parameters
DIRECTION_OF_DETECTOR_X-AXIS= and
DIRECTION_OF_DETECTOR_Y-AXIS=.

The detector translation, namely the vector
`ORG(:) = -ORGX*QX*ED(:,1)-ORGY*QY*ED(:,2)+F*ED(:,3)`
pointing from the laboratory origin to the origin of the *detector*
system, is specified by the input parameters
ORGX=,
ORGY=, and
DETECTOR_DISTANCE=.

The class of detectors that can be handled by nXDS consist of one or
several rectangular arrays of X-ray sensitive segments at arbitrary
orientation and translation fixed with respect to the *detector*
system.
The pixels of a segment are enumerated by IX,IY whereby
1≤x1≤IX≤x2 and 1≤y1≤IY≤y2. The index ranges
[x1,x2], [y1,y2] are defined by the input parameter

SEGMENT=` x1 x2 y1 y2`
and are chosen so that pixel numbers from other segments do not overlap.
Thus, a given pixel address IX,IY belongs to at most one segment.
The union of the index ranges from all segments is a subset of the index
set 1≤IX≤NX and 1≤IY≤NY, where NX, NY are chosen just big
enough to accommodate all pixels. Diffraction data from all segments are
stored as a linear array of NX*NY pixel values in a file that can be
displayed as a two-dimensional 'mosaic' image.
A pixel at (IX,IY) in the two-dimensional image is found at
position IX+NX*(IY-1) in the linear array, where NX is the number of
"fast" pixels, NY is the number of "slow" image pixels,
and IX= 1,..., NX, IY= 1,..., NY. Each pixel is assumed as a rectangle
of dimensions QX,QY along the
"fast" and "slow" directions, respectively.

The orientation of each segment plane is described by two orthonormal
vectors, EDS(:,1) and EDS(:,2), that specify the directions along the
"fast" and "slow" pixels with respect to the
*detector system*. The two vectors have to be provided as
the input parameters

DIRECTION_OF_SEGMENT_X-AXIS=`EDS(1,1) EDS(2,1) EDS(3,1)`

DIRECTION_OF_SEGMENT_Y-AXIS=`EDS(1,2) EDS(2,2) EDS(3,2)`

The third unit vector, the segment normal, is then constructed as

`EDS(:,3)=EDS(:,1) X EDS(:,2)`
to form a right-handed orthonormal *segment system*
`{EDS(:,1), EDS(:,2), EDS(:,3)}`.
The origin of the *segment* system, fixed at 0 0 0
in the *segment system*, is specified (mm) in the *detector*
coordinate system by the point vector

`-ORGXS*QX*EDS(:,1)-ORGYS*QY*EDS(:,2)+FS*EDS(:,3)`

where
SEGMENT_ORGX=
`ORGXS`,
SEGMENT_ORGY=
`ORGYS`, and
SEGMENT_DISTANCE=
`FS`.

The representation of the *segment system* `EDS`
with respect to the *laboratory system* `ED` is the
matrix product `EDSL = MATMUL(ED,EDS)`.
Thus, a segment pixel at IX,IY has the laboratory coordinates (mm units)

`x=QX*(IX-ORGXS)*EDSL(1,1)+QY*(IY-ORGYS)*EDSL(1,2)+FS*EDSL(1,3)+ORG(1)`

`y=QX*(IX-ORGXS)*EDSL(2,1)+QY*(IY-ORGYS)*EDSL(2,2)+FS*EDSL(2,3)+ORG(2)`

`z=QX*(IX-ORGXS)*EDSL(3,1)+QY*(IY-ORGYS)*EDSL(3,2)+FS*EDSL(3,3)+ORG(3)`

This mapping of segment pixels `IX,IY` to corresponding
*laboratory* coordinates is assumed by nXDS and the correct choice
of the involved parameter values is **absolutely essential**.
In the next section a procedure is described for their experimental
verification.

The parameters describing translation and orientation of a segment
with respect to the laboratory system can be refined individually by nXDS
(see REFINE_SEGMENT=).

For each segment of the detector a new set of the segment parameters must be provided in nXDS.INP, except for the case of a single segment for which a default set of values is used.

*Example (continued from above)*

NX= 512 NY= 512 QX=0.19 QY=0.19 !old SIEMENS at MPI-Heidelberg

DIRECTION_OF_DETECTOR_X-AXIS=`
-1 0.0 0.0 !-cosχ 0 sinχ`

DIRECTION_OF_DETECTOR_Y-AXIS=` 0.0 -1.0 0.0`

ORGX=`261.45`
ORGY=`268.06`
DETECTOR_DISTANCE=
`130.01`

SEGMENT=` 1 512 1 512`

SEGMENT_ORGX= `0.0`,
SEGMENT_ORGY= `0.0`, and
SEGMENT_DISTANCE=
`0.0`

DIRECTION_OF_SEGMENT_X-AXIS=` 1.0 0.0 0.0`

DIRECTION_OF_SEGMENT_Y-AXIS=` 0.0 1.0 0.0`

This detector consists of a single segment.
The *segment system* is identical with the *detector system*
which is the default for single segment devices. Specification of
all SEGMENT parameters could have been omitted from nXDS.INP.

Verification of the above mapping of pixels to their location in the laboratory system can be achieved by repeating the procedure

- shield selected parts of each segment from X-ray background scatter and record test exposures each time.
- make a little drawing each time so that you do not forget the location of the obscuring object in the laboratory frame!
- put each image on screen using the XDS-Viewer program and move the mouse to the shaded part to find the pixel coordinates. (It is essential to use the XDS-Viewer program because the pixel coordinates IX,IY reported at the mouse position have the identical meaning in the nXDS program.)
- it is then easy to find out which way the "fast" and "slow" pixels run in the laboratory frame.
- insert a few values IX,IY in the mapping formula above to find corresponding x,y,z values. Do the computed "fast" and "slow" directions roughly agree? If not change parameter values to reverse direction or exchange vectors in the mapping.
- Verify segment distance. Correct sign?

** WARNING**: An incorrect choice of the vectors ED, EDS may
well lead to

© 2009-2019, MPI for Medical Research, Heidelberg

page last updated: Feb 14, 2019