
CIF dictionary browser
Expanded view
View CIF syntax
ARRAY_DATA
CIF
Data items in the ARRAY_DATA category are the containers for the array data items described in the category ARRAY_STRUCTURE.
It is recognized that the data in this category need to be used in two distinct ways. During a data collection the lack of ancillary data and timing constraints in processing data may dictate the need to make a 'miniCBF', nothing more than an essential minimum of information to record the results of the data collection. In that case it is proper to use the ARRAY_DATA category as a container for just a single image and a compacted, beamline-dependent list of data collection parameter values. In such a case, only the tags '_array_data.header_convention', '_array_data.header_contents' and '_array_data.data' need be populated.
For full processing and archiving, most of the tags in this dictionary will need to be populated.
Examples:
loop_ _array_data.array_id _array_data.binary_id _array_data.data image_1 1 ; --CIF-BINARY-FORMAT-SECTION-- Content-Type: application/octet-stream; conversions="X-CBF_CANONICAL" Content-Transfer-Encoding: X-BASE16 X-Binary-Size: 3927126 X-Binary-ID: 1 Content-MD5: u2sTJEovAHkmkDjPi+gWsg==
# Hexadecimal encoding, byte 0, byte order ...21 # H4< 0050B810 00000000 00000000 00000000 000F423F 00000000 00000000 ... .... --CIF-BINARY-FORMAT-SECTION---- ; image_2 2 ; --CIF-BINARY-FORMAT-SECTION-- Content-Type: application/octet-stream; conversions="X-CBF-PACKED" Content-Transfer-Encoding: BASE64 X-Binary-Size: 3745758 X-Binary-ID: 2 Content-MD5: 1zsJjWPfol2GYl2V+QSXrw==
ELhQAAAAAAAA... ... --CIF-BINARY-FORMAT-SECTION---- ;
###CBF: VERSION 1.5 # CBF file written by CBFlib v0.7.8
data_insulin_pilatus6m
_array_data.header_convention SLS_1.0 _array_data.header_contents ; # Detector: PILATUS 6M SN: 60-0001 # 2007/Jun/17 15:12:36.928 # Pixel_size 172e-6 m x 172e-6 m # Silicon sensor, thickness 0.000320 m # Exposure_time 0.995000 s # Exposure_period 1.000000 s # Tau = 194.0e-09 s # Count_cutoff 1048575 counts # Threshold_setting 5000 eV # Wavelength 1.2398 A # Energy_range (0, 0) eV # Detector_distance 0.15500 m # Detector_Voffset -0.01003 m # Beam_xy (1231.00, 1277.00) pixels # Flux 22487563295 ph/s # Filter_transmission 0.0008 # Start_angle 13.0000 deg. # Angle_increment 1.0000 deg. # Detector_2theta 0.0000 deg. # Polarization 0.990 # Alpha 0.0000 deg. # Kappa 0.0000 deg. # Phi 0.0000 deg. # Chi 0.0000 deg. # Oscillation_axis X, CW # N_oscillations 1 ;
_array_data.data
;
--CIF-BINARY-FORMAT-SECTION--
Content-Type: application/octet-stream;
conversions="x-CBF_BYTE_OFFSET"
Content-Transfer-Encoding: BINARY
X-Binary-Size: 6247567
X-Binary-ID: 1
X-Binary-Element-Type: "signed 32-bit integer"
X-Binary-Element-Byte-Order: LITTLE_ENDIAN
Content-MD5: 8wO6i2+899lf5iO8QPdgrw==
X-Binary-Number-of-Elements: 6224001
X-Binary-Size-Fastest-Dimension: 2463
X-Binary-Size-Second-Dimension: 2527
X-Binary-Size-Padding: 4095
...
--CIF-BINARY-FORMAT-SECTION---- ;
_array_data.array_id
CIF
This item is a pointer to _array_structure.id in the
ARRAY_STRUCTURE category.
If not given, it defaults to 1.
_array_data.binary_id
CIF
Data names: _array_data.binary_id _diffrn_data_frame.binary_id _array_intensities.binary_id
This item is an integer identifier which, along with
_array_data.array_id, should uniquely identify the
particular block of array data.
If _array_data.binary_id is not explicitly given,
it defaults to 1.
The value of _array_data.binary_id distinguishes
among multiple sets of data with the same array
structure.
If the MIME header of the data array specifies a
value for X-Binary-ID, the value of _array_data.binary_id
should be equal to the value given for X-Binary-ID.
_array_data.data
CIF
The value of _array_data.data contains the array data
encapsulated in a STAR string. The value of this item is
required unless a value is given for
_array_data.external_data_id instead, in which
case, a null value of '.' should be given here.
The representation used is a variant on the Multipurpose Internet Mail Extensions (MIME) specified in RFC 2045-2049 by N. Freed et al. The boundary delimiter used in writing an imgCIF or CBF is --CIF-BINARY-FORMAT-SECTION-- (including the required initial --, where represents the system newline character(s)).
The Content-Type may be any of the discrete types permitted in RFC 2045; 'application/octet-stream' is recommended for diffraction images in the ARRAY_DATA category. Note: When appropriate in other categories, e.g. for photographs of crystals, more precise types, such as 'image/jpeg', 'image/tiff', 'image/png', etc. should be used.
If an octet stream was compressed, the compression should be specified by the parameter conversions="X-CBF_PACKED" or the parameter conversions="X-CBF_CANONICAL" or the parameter conversions="X-CBF_BYTE_OFFSET" or the parameter conversions="X-CBF_BACKGROUND_OFFSET_DELTA"
If the parameter
conversions="X-CBF_PACKED"
is given it may be further modified with the parameters
uncorrelated_sections
or
flat
(e.g. conversions="X-CBF_PACKED flat").
In such cases the _array_structure.compression_type_flag
should also be present with the corresponding value.
If the "uncorrelated_sections" parameter is given, each section will be compressed without using the prior section for averaging.
If the "flat" parameter is given, each image will be treated as one long row.
Note that X-CBF_CANONICAL and X-CBF_PACKED are slower but more efficient compressions than the others. The X-CBF_BYTE_OFFSET compression is a good compromise between speed and efficiency for ordinary diffraction images. The X-CBF_BACKGROUND_OFFSET_DELTA compression is oriented towards sparse data, such as masks and tables of replacement pixel values for images with overloaded spots.
The Content-Transfer-Encoding may be 'BASE64', 'Quoted-Printable', 'X-BASE8', 'X-BASE10', 'X-BASE16' or 'X-BASE32K', for an imgCIF or 'BINARY' for a CBF. The octal, decimal and hexadecimal transfer encodings are provided for convenience in debugging and are not recommended for archiving and data interchange.
In a CIF, one of the parameters 'charset=us-ascii', 'charset=utf-8' or 'charset=utf-16' may be used on the Content-Transfer-Encoding to specify the character set used for the external presentation of the encoded data. If no charset parameter is given, the character set of the enclosing CIF is assumed. In any case, if a BOM flag is detected (FE FF for big-endian UTF-16, FF FE for little-endian UTF-16 or EF BB BF for UTF-8) is detected, the indicated charset will be assumed until the end of the encoded data or the detection of a different BOM. The charset of the Content-Transfer-Encoding is not the character set of the encoded data, only the character set of the presentation of the encoded data and should be respecified for each distinct STAR string.
In an imgCIF file, the encoded binary data begin after the empty line terminating the header. In an imgCIF file, the encoded binary data ends with the terminating boundary delimiter '--CIF-BINARY-FORMAT-SECTION----' in the currently effective charset or with the ';' that terminates the STAR string.
In a CBF, the raw binary data begin after an empty line terminating the header and after the sequence:
Octet Hex Decimal Purpose 0 0C 12 Ctrl-L: page break 1 1A 26 Ctrl-Z: stop listings, MS-DOS 2 04 04 Ctrl-D: stop listings, UNIX 3 D5 213 binary section begins
None of these octets are included in the calculation of the message size or in the calculation of the message digest.
The X-Binary-Size header specifies the size of the equivalent binary data in octets. If compression was used, this size is the size after compression, including any book-keeping fields. An adjustment is made for the deprecated binary formats in which eight bytes of binary header are used for the compression type. In this case, the eight bytes used for the compression type are subtracted from the size, so that the same size will be reported if the compression type is supplied in the MIME header. Use of the MIME header is the recommended way to supply the compression type. In general, no portion of the binary header is included in the calculation of the size.
The X-Binary-Element-Type header specifies the type of
binary data in the octets, using the same descriptive
phrases as in _array_structure.encoding_type. The default
value is 'unsigned 32-bit integer'.
An MD5 message digest may, optionally, be used. The 'RSA Data Security, Inc. MD5 Message-Digest Algorithm' should be used. No portion of the header is included in the calculation of the message digest.
If the Transfer Encoding is 'X-BASE8', 'X-BASE10' or 'X-BASE16', the data are presented as octal, decimal or hexadecimal data organized into lines or words. Each word is created by composing octets of data in fixed groups of 2, 3, 4, 6 or 8 octets, either in the order ...4321 ('big- endian') or 1234... ('little-endian'). If there are fewer than the specified number of octets to fill the last word, then the missing octets are presented as '==' for each missing octet. Exactly two equal signs are used for each missing octet even for octal and decimal encoding. The format of lines is:
rnd xxxxxx xxxxxx xxxxxx
where r is 'H', 'O' or 'D' for hexadecimal, octal or decimal, n is the number of octets per word and d is '<' or '>' for the '...4321' and '1234...' octet orderings, respectively. The '==' padding for the last word should be on the appropriate side to correspond to the missing octets, e.g.
H4< FFFFFFFF FFFFFFFF 07FFFFFF ====0000
or
H3> FF0700 00====
For these hexadecimal, octal and decimal formats only, comments beginning with '#' are permitted to improve readability.
BASE64 encoding follows MIME conventions. Octets are in groups of three: c1, c2, c3. The resulting 24 bits are broken into four six-bit quantities, starting with the high-order six bits (c1 >> 2) of the first octet, then the low-order two bits of the first octet followed by the high-order four bits of the second octet [(c1 & 3)<<4 | (c2>>4)], then the bottom four bits of the second octet followed by the high-order two bits of the last octet [(c2 & 15)<<2 | (c3>>6)], then the bottom six bits of the last octet (c3 & 63). Each of these four quantities is translated into an ASCII character using the mapping:
1 2 3 4 5 6 0123456789012345678901234567890123456789012345678901234567890123 | | | | | | | ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/
with short groups of octets padded on the right with one '=' if c3 is missing, and with '==' if both c2 and c3 are missing.
X-BASE32K encoding is similar to BASE64 encoding, except that sets of 15 octets are encoded as sets of 8 16-bit Unicode characters, by breaking the 120 bits into 8 15-bit quantities. 256 is added to each 15-bit quantity to bring it into a printable Unicode range. When encoding, zero padding is used to fill out the last 15-bit quantity. If 8 or more bits of padding are used, a single equals sign (hexadecimal 003D) is appended. Embedded whitespace and newlines are introduced to produce lines of no more than 80 characters each. On decoding, all printable ASCII characters and ASCII whitespace characters are ignored except for any trailing equals signs. The number of trailing equals signs indicated the number of trailing octets to be trimmed from the end of the decoded data (see Darakev et al., 2006).
QUOTED-PRINTABLE encoding also follows MIME conventions, copying octets without translation if their ASCII values are 32...38, 42, 48...57, 59, 60, 62, 64...126 and the octet is not a ';' in column 1. All other characters are translated to =nn, where nn is the hexadecimal encoding of the octet. All lines are 'wrapped' with a terminating '=' (i.e. the MIME conventions for an implicit line terminator are never used).
The 'X-Binary-Element-Byte-Order' can specify either 'BIG_ENDIAN' or 'LITTLE_ENDIAN' byte order of the image data. Only LITTLE_ENDIAN is recommended. Processors may treat BIG_ENDIAN as a warning of data that can only be processed by special software.
The 'X-Binary-Number-of-Elements' specifies the number of elements (not the number of octets) in the decompressed, decoded image.
The optional 'X-Binary-Size-Fastest-Dimension' specifies the number of elements (not the number of octets) in one row of the fastest changing dimension of the binary data array. This information must be in the MIME header for proper operation of some of the decompression algorithms.
The optional 'X-Binary-Size-Second-Dimension' specifies the number of elements (not the number of octets) in one column of the second-fastest changing dimension of the binary data array. This information must be in the MIME header for proper operation of some of the decompression algorithms.
The optional 'X-Binary-Size-Third-Dimension' specifies the number of sections for the third-fastest changing dimension of the binary data array.
The optional 'X-Binary-Size-Padding' specifies the size in octets of an optional padding after the binary array data and before the closing flags for a binary section.
Reference:
Darakev, G., Litchev, V., Mitev, K. Z. & Bernstein, H. J. (2006). 'Efficient Support of Binary Data in the XML Implementation of the NeXus File Format', abstract W0165, ACA Summer Meeting, Honolulu, HI, USA, July 2006.
_array_data.external_data_id
CIF
This item is a pointer to _array_data_external_data.id in the
ARRAY_DATA_EXTERNAL_DATA category.
If not given, then the actual array data should be specified as the value of _array_data.data. If both values are given, the value on _array_data.data takes precedence, and a warning of a possible conflict should be issued.
_array_data.header_contents
CIF
This item is a text field for use in minimal CBF files to carry
essential header information to be kept with image data
in _array_data.data when the tags that normally carry the
structured metadata for the image have not been populated.
Normally this data item should not appear when the full set
of tags has been populated and _diffrn_data_frame.details
appears.
_array_data.header_convention
CIF
This item is an identifier for the convention followed in
constructing the contents of _array_data.header_contents
The permitted values are of an image creator identifier followed by an underscore and a version string. To avoid confusion about conventions, all creator identifiers should be registered with the IUCr and the conventions for all identifiers and versions should be posted on the MEDSBIO.org web site.
_array_data.variant
CIF
The value of _array_data.variant gives the variant
to which the given ARRAY_DATA row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
ARRAY_DATA_EXTERNAL_DATA
CIF
Data items in the ARRAY_DATA_EXTERNAL_DATA category optionally
record the location and essential characteristics of arrays of data for use in ARRAY_DATA that are found external to the cif_img file.
_array_data_external_data.archive_format
CIF
The type of single-file archive in which image data or multi-image
inage containers have been encapsulated, if any. The archive is
located at _array_data_external_data.uri.
_array_data_external_data.archive_path
CIF
The location of the image or multi-image image container, such as HDF5 or CBF, within an archive such as a tarball.
_array_data_external_data.frame
CIF
The position of the raw data array in what may possibly be a multi-dimensional array of data referenced by
_array_data_external_data.uri and _array_data_external_data.path.
For many of the formats, data for a single frame is identified by that
reference. If data for multiple frames or data for portions of
one or more frames is referenced, the desired portion can be
identified dimension by dimension as an array section identifier
the form ARRAYID(start1:end1:stride1,start2:end2:stride2, ...) or other valid ARRAY_STRUCTURE_LIST_SECTION identifier.
Note that the precendence ordering of dimensions varies, even within a single specified format. For example HDF5 supports both C slowest first and Fortran fastest first, so it is essential to properly populate ARRAY_STRUCTURE_LIST category.
Example:
4
_array_data_external_data.format
CIF
The format in which raw array data referenced by
_array_data_external_data.uri and following archive extraction can be
accessed. Items in array_structure and array_structure_list refer
to the data after any decompressions and other transformations
performed by standard libraries associated with the format as
described in the description of each format below.
Note that, if a single file archive, such as a zip or tarball has been specified at _array_data_external_data.uri then the format of the archive, as contrasted with the format of the image or the multi-image image container such as CBF or HDF5 is specified by _array_data_external_data.archive_format and the particular image is specified by the combination of _array_data_external_data.archive_path, _array_data_external_data.format, _array_data_external_data.path, and _array_data_external_data.frame while if no single file archive is used, so that a CBF, HDF5, TIFF or SMV is specified at _array_data_external_data.uri, then the particular image is specified by the combination of _array_data_external_data.format, _array_data_external_data.path, and _array_data_external_data.frame directly.
Examples:
loop_ _array_data.array_id _array_data.binary_id _array_data.external_data_id 1 1 1 1 2 2 loop_ _array_data_external_data.id _array_data_external_data.format _array_data_external_data.uri _array_data_external_data.path _array_data_external_data.frame 1 HDF5 https://zenodo.org/record/12345/files/tartaric.h5 /entry1/detector1/data 1 2 HDF5 https://zenodo.org/record/12345/files/tartaric.h5 /entry1/detector1/data 2 ...
loop_ _array_data.array_id _array_data.binary_id _array_data.external_data_id 1 1 1 1 2 2 loop_ _array_data_external_data.id _array_data_external_data.format _array_data_external_data.version _array_data_external_data.uri 1 Bruker Smart6000 https://uni_repo.edu/5341/run1/tartaric.001 2 Bruker Smart6000 https://uni_repo.edu/5341/run1/tartaric.002 ...
loop_ _array_data.array_id _array_data.binary_id _array_data.external_data_id 1 1 1 1 2 2 loop_ _array_data_external_data.id _array_data_external_data.format _array_data_external_data.uri _array_data_external_data.archive_format _array_data_external_data.archive_path 1 SMV https://data.proteindiffraction.org/ssgcid/MyulA_01062_a_B12-sddc0001574_7k69.tar.bz2 TBZ MyulA_01062_a_B12-sddc0001574_7k69/data/317895h4_y_0001.img 2 SMV https://data.proteindiffraction.org/ssgcid/MyulA_01062_a_B12-sddc0001574_7k69.tar.bz2 TBZ MyulA_01062_a_B12-sddc0001574_7k69/data/317895h4_y_0002.img
_array_data_external_data.id
CIF
Data names: _array_data_external_data.id _array_data.external_data_id
The value of _array_data_external_data.id must uniquely identify
each item of array_data_external_data.
This item has been made implicit and given a default value of 1 as a convenience in writing miniCBF files. Normally an explicit name with useful content should be used.
_array_data_external_data.path
CIF
An optional format-dependent path that is used to locate the external image or images within the object referenced by the combination of _array_data_external_data.uri, _array_data_external_data.archive_path in the case that _array_data_external_data.archive_format specifies a non-null single-file archive format, such as zip or a tarball. When a single-file archive format is not used, then _array_data_external_data.path locates the external image or images within the object referenced by _array_data_external_data.uri. In both cases, the specific image within an array of multiple images is identified by _array_data_external_data.frame.
_array_data_external_data.uri
CIF
A URI describing the location of an image external to the current data block
_array_data_external_data.variant
CIF
The value of _array_data_external_data.variant gives the variant
to which the given ARRAY_DATA_EXTERNAL_DATA row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
_array_data_external_data.version
CIF
An identifier for the version of the file format described by '_array_data_external_data.format'.
ARRAY_ELEMENT_SIZE
CIF
Data items in the ARRAY_ELEMENT_SIZE category record the physical
size of array elements along each array dimension.
Example:
loop_ _array_element_size.array_id _array_element_size.index _array_element_size.size image_1 1 1.22e-6 image_1 2 1.22e-6
_array_element_size.array_id
CIF
This item is a pointer to _array_structure.id in the
ARRAY_STRUCTURE category.
_array_element_size.index
CIF
This item is a pointer to _array_structure_list.index in
the ARRAY_STRUCTURE_LIST category.
_array_element_size.size
CIF
The size in metres of an image element in this
dimension. This supposes that the elements are arranged on a regular grid.
_array_element_size.variant
CIF
The value of _array_element_size.variant gives the variant
to which the given ARRAY_ELEMENT_SIZE row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
ARRAY_INTENSITIES
CIF
Data items in the ARRAY_INTENSITIES category record the
information required to recover the intensity data from the set of data values stored in the ARRAY_DATA category.
The detector may have a complex relationship between the raw intensity values and the number of incident photons. In most cases, the number stored in the final array will have a simple linear relationship to the actual number of incident photons, given by _array_intensities.gain. If raw, uncorrected values are presented (e.g. for calibration experiments), the value of _array_intensities.linearity will be 'raw' and _array_intensities.gain will not be used.
Example:
loop_ _array_intensities.array_id _array_intensities.linearity _array_intensities.gain _array_intensities.overload _array_intensities.undefined_value _array_intensities.pixel_fast_bin_size _array_intensities.pixel_slow_bin_size _array_intensities.pixel_binning_method image_1 linear 1.2 655535 0 2 2 hardware
_array_intensities.array_id
CIF
This item is a pointer to _array_structure.id in the
ARRAY_STRUCTURE category.
_array_intensities.binary_id
CIF
This item is a pointer to _array_data.binary_id in the
ARRAY_DATA category.
_array_intensities.details
CIF
A description of special aspects of the calculation of array
intensities.
Example:
Gain_setting: low gain (vrf = -0.300)
_array_intensities.gain
CIF
Detector 'gain'. The factor by which linearized
intensity count values should be divided to produce true photon counts.
_array_intensities.gain_esd
CIF
The standard uncertainty (estimated standard deviation, e.s.d.)
of detector 'gain'.
_array_intensities.linearity
CIF
The intensity linearity scaling method used to convert
from the raw intensity to the stored element value:
'linear' is linear.
'offset' means that the value defined by
_array_intensities.offset should be added to each
element value.
'scaling' means that the value defined by
_array_intensities.scaling should be multiplied with each
element value.
'scaling_offset' is the combination of the two previous cases,
with the scale factor applied before the offset value.
'sqrt_scaled' means that the square root of raw
intensities multiplied by _array_intensities.scaling is
calculated and stored, perhaps rounded to the nearest
integer. Thus, linearization involves dividing the stored
values by _array_intensities.scaling and squaring the
result.
'logarithmic_scaled' means that the logarithm base 10 of
raw intensities multiplied by _array_intensities.scaling
is calculated and stored, perhaps rounded to the nearest
integer. Thus, linearization involves dividing the stored
values by _array_intensities.scaling and calculating 10
to the power of this number.
'raw' means that the data are a set of raw values straight
from the detector.
_array_intensities.offset
CIF
Offset value to add to array element values in the manner
described by the item _array_intensities.linearity.
_array_intensities.overload
CIF
The saturation intensity level for this data array, i.e. the
value above which correct intensities may not be recorded.
The valid pixel values are those less than _array_intensities.overload and greater than or equal to _array_intensities.underload
_array_intensities.pixel_fast_bin_size
CIF
The value of _array_intensities.pixel_fast_bin_size specifies
the number of pixels that compose one element in the direction of the most rapidly varying array dimension.
Typical values are 1, 2, 4 or 8. When there is 1 pixel per
array element in both directions, the value given for
_array_intensities.pixel_binning_method normally should be
'none'.
It is specified as a float to allow for binning algorithms that create array elements that are not integer multiples of the detector pixel size.
_array_intensities.pixel_slow_bin_size
CIF
The value of _array_intensities.pixel_slow_bin_size specifies
the number of pixels that compose one element in the direction of the second most rapidly varying array dimension.
Typical values are 1, 2, 4 or 8. When there is 1 pixel per
array element in both directions, the value given for
_array_intensities.pixel_binning_method normally should be
'none'.
It is specified as a float to allow for binning algorithms that create array elements that are not integer multiples of the detector pixel size.
_array_intensities.pixel_binning_method
CIF
The value of _array_intensities.pixel_binning_method specifies
the method used to derive array elements from multiple pixels.
_array_intensities.scaling
CIF
Multiplicative scaling value to be applied to array data
in the manner described by the item
_array_intensities.linearity.
_array_intensities.undefined_value
CIF
A value to be substituted for undefined values in
the data array.
_array_intensities.underload
CIF
The lowest value at which pixels for this detector are
measured.
The valid pixel values are those less than _array_intensities.overload and greater than or equal to _array_intensities.underload
_array_intensities.variant
CIF
The value of _array_intensities.variant gives the variant
to which the given ARRAY_INTENSITIES row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
ARRAY_STRUCTURE
CIF
Data items in the ARRAY_STRUCTURE category record the organization and
encoding of array data that may be stored in the ARRAY_DATA category.
Example:
loop_ _array_structure.id _array_structure.encoding_type _array_structure.compression_type _array_structure.byte_order image_1 "unsigned 16-bit integer" none little_endian
_array_structure.byte_order
CIF
The order of bytes for integer values which require more
than 1 byte.
(IBM-PCs and compatibles, and DEC VAXs use low-byte-first ordered integers, whereas Hewlett Packard 700 series, Sun-4 and Silicon Graphics use high-byte-first ordered integers. DEC Alphas can produce/use either depending on a compiler switch.)
_array_structure.compression_type
CIF
Type of data-compression method used to compress the array
data.
_array_structure.compression_type_flag
CIF
Flags modifying the type of data-compression method used to
compress the arraydata.
_array_structure.encoding_type
CIF
Data encoding of a single element of array data.
The type 'unsigned 1-bit integer' is used for packed Boolean arrays for masks. Each element of the array corresponds to a single bit packed in unsigned 8-bit data.
In several cases, the IEEE format is referenced. See IEEE Standard 754-1985 (IEEE, 1985).
Reference: IEEE (1985). IEEE Standard for Binary Floating-Point Arithmetic. ANSI/IEEE Std 754-1985. New York: Institute of Electrical and Electronics Engineers.
_array_structure.id
CIF
Data names: _array_structure.id _array_data.array_id _array_structure_list.array_id _array_structure_list_section.array_id _array_intensities.array_id _diffrn_data_frame.array_id
The value of _array_structure.id must uniquely identify
each item of array data.
This item has been made implicit and given a default value of 1 as a convenience in writing miniCBF files. Normally an explicit name with useful content should be used.
_array_structure.variant
CIF
The value of _array_structure.variant gives the variant
to which the given ARRAY_STRUCTURE row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
ARRAY_STRUCTURE_LIST
CIF
Data items in the ARRAY_STRUCTURE_LIST category record the size
and organization of each array dimension.
The relationship to physical axes may be given.
Example:
loop_ _array_structure_list.array_id _array_structure_list.index _array_structure_list.dimension _array_structure_list.precedence _array_structure_list.direction _array_structure_list.axis_set_id image_1 1 1300 1 increasing ELEMENT_X image_1 2 1200 2 decreasing ELEMENY_Y
_array_structure_list.array_id
CIF
This item is a pointer to _array_structure.id in the
ARRAY_STRUCTURE category.
_array_structure_list.array_section_id
CIF
This item is a pointer to _array_structure_list_section.id in the
ARRAY_STRUCTURE_LIST_SECTION category.
_array_structure_list.axis_set_id
CIF
Data names: _array_structure_list.axis_set_id _array_structure_list_axis.axis_set_id
This is a descriptor for the physical axis or set of axes
corresponding to an array index.
This data item is related to the axes of the detector itself given in DIFFRN_DETECTOR_AXIS, but usually differs in that the axes in this category are the axes of the coordinate system of reported data points, while the axes in DIFFRN_DETECTOR_AXIS are the physical axes of the detector describing the 'poise' of the detector as an overall physical object.
If there is only one axis in the set, the identifier of that axis should be used as the identifier of the set.
_array_structure_list.dimension
CIF
The number of elements stored in the array structure in
this dimension.
_array_structure_list.direction
CIF
Identifies the direction in which this array index changes.
_array_structure_list.index
CIF
Data names: _array_structure_list.index _array_structure_list.precedence _array_element_size.index
Identifies the one-based index of the row or column in the
array structure.
_array_structure_list.precedence
CIF
Identifies the rank order in which this array index changes
with respect to other array indices. The precedence of 1 indicates the index which changes fastest.
_array_structure_list.variant
CIF
The value of _array_structure_list.variant gives the variant
to which the given ARRAY_STRUCTURE_LIST row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
ARRAY_STRUCTURE_LIST_AXIS
CIF
Data items in the ARRAY_STRUCTURE_LIST_AXIS category describe
the physical settings of sets of axes for the centres of pixels that correspond to data points described in the ARRAY_STRUCTURE_LIST category.
In the simplest cases, the physical increments of a single axis correspond to the increments of a single array index. More complex organizations, e.g. spiral scans, may require coupled motions along multiple axes.
Note that a spiral scan uses two coupled axes: one for the angular direction and one for the radial direction. This differs from a cylindrical scan for which the two axes are not coupled into one set.
Axes may be specified either for an entire array or for just a section of an array.
_array_structure_list_axis.axis_id
CIF
The value of this data item is the identifier of one of
the axes in the set of axes for which settings are being specified.
Multiple axes may be specified for the same value of
_array_structure_list_axis.axis_set_id.
This item is a pointer to _axis.id in the
AXIS category.
_array_structure_list_axis.axis_set_id
CIF
The value of this data item is the identifier of the
set of axes for which axis settings are being specified.
Multiple axes may be specified for the same value of
_array_structure_list_axis.axis_set_id.
This item is a pointer to
_array_structure_list.axis_set_id
in the ARRAY_STRUCTURE_LIST category.
If this item is not specified, it defaults to the corresponding axis identifier.
_array_structure_list_axis.angle
CIF
The setting of the specified axis in degrees for the first
data point of the array index with the corresponding value
of _array_structure_list.axis_set_id. If the index is
specified as 'increasing', this will be the centre of the
pixel with index value 1. If the index is specified as
'decreasing', this will be the centre of the pixel with
maximum index value.
_array_structure_list_axis.angle_increment
CIF
The pixel-centre-to-pixel-centre increment in the angular
setting of the specified axis in degrees. This is not meaningful in the case of 'constant velocity' spiral scans and should not be specified for this case.
See _array_structure_list_axis.angular_pitch.
_array_structure_list_axis.displacement
CIF
The setting of the specified axis in millimetres for the first
data point of the array index with the corresponding value
of _array_structure_list.axis_set_id. If the index is
specified as 'increasing', this will be the centre of the
pixel with index value 1. If the index is specified as
'decreasing', this will be the centre of the pixel with
maximum index value.
_array_structure_list_axis.fract_displacement
CIF
The setting of the specified axis as a decimal fraction of
the axis unit vector for the first data point of the array
index with the corresponding value of
_array_structure_list.axis_set_id.
If the index is specified as 'increasing', this will be the centre of the pixel with index value 1. If the index is specified as 'decreasing', this will be the centre of the pixel with maximum index value.
_array_structure_list_axis.displacement_increment
CIF
The pixel-centre-to-pixel-centre increment for the displacement
setting of the specified axis in millimetres.
_array_structure_list_axis.fract_displacement_increment
CIF
The pixel-centre-to-pixel-centre increment for the displacement
setting of the specified axis as a decimal fraction of the axis unit vector.
_array_structure_list_axis.angular_pitch
CIF
The pixel-centre-to-pixel-centre distance for a one-step
change in the setting of the specified axis in millimetres.
This is meaningful only for 'constant velocity' spiral scans or for uncoupled angular scans at a constant radius (cylindrical scans) and should not be specified for cases in which the angle between pixels (rather than the distance between pixels) is uniform.
See _array_structure_list_axis.angle_increment.
_array_structure_list_axis.radial_pitch
CIF
The radial distance from one 'cylinder' of pixels to the
next in millimetres. If the scan is a 'constant velocity'
scan with differing angular displacements between pixels,
the value of this item may differ significantly from the
value of _array_structure_list_axis.displacement_increment.
_array_structure_list_axis.reference_angle
CIF
The value of _array_structure_list_axis.reference_angle
specifies the setting of the angle of this axis used for
determining a reference beam centre and a reference detector
distance. It is normally expected to be identical to the
value of _array_structure_list_axis.angle.
_array_structure_list_axis.reference_displacement
CIF
The value of _array_structure_list_axis.reference_displacement
specifies the setting of the displacement of this axis used
for determining a reference beam centre and a reference detector
distance. It is normally expected to be identical to the value
of _array_structure_list_axis.displacement.
_array_structure_list_axis.variant
CIF
The value of _array_structure_list_axis.variant gives the variant
to which the given ARRAY_STRUCTURE_LIST_AXIS row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
ARRAY_STRUCTURE_LIST_SECTION
CIF
Data items in the ARRAY_STRUCTURE_LIST_SECTION category identify
the dimension-by-dimension start, end and stride of each section of an array that is to be referenced.
For any array with identifier ARRAYID, array section ids of the form ARRAYID(start1:end1:stride1,start2:end2:stride2, ...) are defined by default.
For the given index, the elements in the section are of indices: _array_structure_list_section.start, _array_structure_list_section.start + _array_structure_list_section.stride, _array_structure_list_section.start + 2*_array_structure_list_section.stride, ...
stopping either when the indices leave the limits of the indices of that dimension or [min(_array_structure_list_section.start, _array_structure_list_section.end), max(_array_structure_list_section.start, _array_structure_list_section.end)].
The ordering of these elements is determined by the overall ordering of
_array_structure_list_section.array_id and not by the ordering implied
by the stride.
Example:
loop_ _array_structure_list.array_id _array_structure_list.index _array_structure_list.dimension _array_structure_list.precedence _array_structure_list.direction _array_structure_list.axis_set_id myarray 1 1300 1 increasing ELEMENT_X myarray 2 1200 2 increasing ELEMENT_Y myarray 3 700 3 increasing FRAME_NO
loop_ _array_structure_list_section.id _array_structure_list_section.array_id _array_structure_list_section.index _array_structure_list_section.start _array_structure_list_section.end _array_structure_list_section.stride "myarray(101:1200,101:1100,1:700:10)" myarray 1 101 1200 . "myarray(101:1200,101:1100,1:700:10)" myarray 2 101 1100 . "myarray(101:1200,101:1100,1:700:10)" myarray 3 1 700 10
_array_structure_list_section.array_id
CIF
This item is a pointer to _array_structure.id in the
ARRAY_STRUCTURE category.
_array_structure_list_section.end
CIF
Identifies the ending ordinal, numbered from 1, for an array
element of index _array_structure_list_section.index in the
section.
The value defaults to the dimension for index
_array_structure_list_section.index
of the array.
Note that this agrees with the Fortran convention, rather than the Python convention in that, if compatible with the stride, the end element is included in the section as in Fortran, rather than being one beyond the section as in Python.
_array_structure_list_section.id
CIF
Uniquely identifies the array section chosen.
To avoid confusion array section IDs that contain parentheses should conform to the default syntax
ARRAYID(start1:end1:stride1,start2:end2:stride2, ...)
_array_structure_list_section.index
CIF
This item is a pointer to _array_structure_list.index
in the ARRAY_STRUCTURE_LIST category.
Identifies the one-based index of the row, column, sheet ... the ARRAY_STRUCTURE_LIST category.
For a multidimensional array, a value must be explicitly given.
If an index is omitted from a section then all elements for that index are assumed to be included in the section.
_array_structure_list_section.start
CIF
Identifies the starting ordinal, numbered from 1,
for an array element of index _array_structure_list_section.index
in the section.
The value defaults to 1. For the given index, the elements in the section are of indices: _array_structure_list_section.start, _array_structure_list_section.start + _array_structure_list_section.stride, _array_structure_list_section.start + 2*_array_structure_list_section.stride, ...
stopping either when the indices leave the limits of the indices of that dimension or [min(_array_structure_list_section.start, _array_structure_list_section.end ), max(_array_structure_list_section.start, _array_structure_list_section.end )].
The ordering of these elements is determined by the overall
ordering of _array_structure_list_section.array_id and not by
the ordering implied by the stride.
_array_structure_list_section.stride
CIF
Identifies the incremental steps to be taken when moving
element to element in the section in that particular dimension. The value of _array_structure_list_section.stride may be positive or negative. If the stride is zero, the section is just defined by _array_structure_list_section.start.
_array_structure_list_section.variant
CIF
The value of _array_structure_list_section.variant gives the
variant to which the given ARRAY_STRUCTURE_LIST_SECTION row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
AXIS
CIF
Data items in the AXIS category record the information required
to describe the various goniometer, detector, source and other axes needed to specify a data collection or the axes defining the coordinate system of an image.
The location of each axis is specified by two vectors: the axis itself, given by a unit vector in the direction of the axis, and an offset to the base of the unit vector.
The vectors defining an axis are referenced to an appropriate coordinate system, given in _axis.system. The axis vector itself, [_axis.vector[1], _axis.vector[2], _axis.vector[3]], is a dimensionless unit vector. Where meaningful, an offset vector [_axis.offset[1], _axis.offset[2], _axis.offset[3]] supplies the offsets to the base of a rotation or translation axis in X, Y and Z. This is appropriate for the imgCIF standard laboratory coordinate system, the NeXus/HDF5 McStas laboratory coordinate system and the last two Cartesian coordinate systems, but for the direct lattice, X corresponds to a, Y to b and Z to c, while for the reciprocal lattice, X corresponds to a*, Y to b* and Z to c*.
For purposes of visualization, all the coordinate systems are taken as right-handed, i.e. using the convention that the extended thumb of a right hand could point along the first (X) axis, the straightened pointer finger could point along the second (Y) axis and the middle finger folded inward could point along the third (Z) axis. For a right-handed rotation axis, if the right hand is wrapped around the axis with the thumb pointed in the direction of the axis, the fingers point in the positive rotation direction, i.e. clockwise.
THE IMGCIF STANDARD LABORATORY COORDINATE SYSTEM
The imgCIF standard laboratory coordinate system is a right-handed orthogonal coordinate system similar to that used by MOSFLM, but imgCIF puts Z along the X-ray beam, rather than putting X along the X-ray beam as in MOSFLM.
The vectors for the imgCIF standard laboratory coordinate system form a right-handed Cartesian coordinate system with its origin in the sample or specimen. The origin of the axis system should, if possible, be defined in terms of mechanically stable axes to be both in the sample and in the beam. If the sample goniometer or other sample positioner has two axes the intersection of which defines a unique point at which the sample should be mounted to be bathed by the beam, that will be the origin of the axis system. If no such point is defined, then the midpoint of the line of intersection between the sample and the centre of the beam will define the origin. For this definition the sample positioning system will be set at its initial reference position for the experiment.
| Y (to complete right-handed system) | | | | | |________________X / principal goniometer axis / / / / /Z (to source)
Axis 1 (X): The X-axis is aligned to the mechanical axis pointing from the sample or specimen along the principal axis of the goniometer or sample positioning system if the sample positioning system has an axis that intersects the origin and which forms an angle of more than 22.5 degrees with the beam axis.
Axis 2 (Y): The Y-axis completes an orthogonal right-handed system defined by the X-axis and the Z-axis (see below).
Axis 3 (Z): The Z-axis is derived from the source axis which goes from the sample to the source. The Z-axis is the component of the source axis in the direction of the source orthogonal to the X-axis in the plane defined by the X-axis and the source axis.
If the conditions for the X-axis can be met, the coordinate system will be based on the goniometer or other sample positioning system and the beam and not on the orientation of the detector, gravity etc. The vectors necessary to specify all other axes are given by sets of three components in the order (X, Y, Z). If the axis involved is a rotation axis, it is right-handed, i.e. as one views the object to be rotated from the origin (the tail) of the unit vector, the rotation is clockwise. If a translation axis is specified, the direction of the unit vector specifies the sense of positive translation.
In some experimental techniques, there is no goniometer or the principal axis of the goniometer is at a small acute angle with respect to the source axis. In such cases, other reference axes are needed to define a useful coordinate system. The order of priority in defining directions in such cases is to use the detector, then gravity, then north.
If the X-axis cannot be defined as above, then the direction (not the origin) of the X-axis should be parallel to the axis of the primary detector element corresponding to the most rapidly varying dimension of that detector element's data array, with its positive sense corresponding to increasing values of the index for that dimension. If the detector is such that such a direction cannot be defined (as with a point detector) or that the direction forms an angle of less than 22.5 degrees with respect to the source axis, then the X-axis should be chosen so that if the Y-axis is chosen in the direction of gravity, and the Z-axis is chosen to be along the source axis, a right-handed orthogonal coordinate system is chosen. In the case of a vertical source axis, as a last resort, the X-axis should be chosen to point north.
All rotations are given in degrees and all translations are given in mm.
Axes may be dependent on one another. The X-axis is the only goniometer axis the direction of which is strictly connected to the hardware. All other axes are specified by the positions they would assume when the axes upon which they depend are at their zero points.
When specifying detector axes, the axis is given to the beam centre. The location of the beam centre on the detector should be given in the DIFFRN_DETECTOR category in distortion-corrected millimetres from the (0,0) corner of the detector.
For convenience when describing detector element (module) placement, an optional mounting rotation axis and rotation angle may be specified. In such cases, the mounting rotation axis and angle of rotation around the mounting rotation axis are applied after applying the transformations upon which the given axis depends.
It should be noted that many different origins arise in the definition of an experiment. In particular, as noted above, it is necessary to specify the location of the beam centre on the detector in terms of the origin of the detector, which is, of course, not coincident with the centre of the sample.
THE NEXUS/HDF5 MCSTAS LABORATORY COORDINATE SYSTEM
The standard coordinate frame in NeXus is the McStas coordinate frame, in which the Z-axis points in the direction of the incident beam, the X-axis is orthogonal to the Z-axis in the horizontal plane and pointing left as seen from the source and the Y-axis points upwards. The origin is in the sample.
Differences in Coordinate Frames
The standard coordinate frame in imgCIF/CBF aligns the X-axis to the principal goniometer axis, and chooses the Z-axis to point from the sample into the beam. If the beam is not orthogonal to the X-axis, the Z-axis is the component of the vector that points into the beam orthogonal to the X-axis. The Y-axis is chosen to complete a right-handed axis system.
Let us call the NeXus coordinate axes, X_nx, Y_nx and Z_nx, the imgCIF/CBF coordinate axes, X_cbf, Y_cbf and Z_cbf and the direction of gravity, Gravity. In order to translate a vector v_nx = ( x, y, z) from the NeXus coordinate system to the imgCIF coordinate system, we also need two additional axes, as unit vectors, Gravity_cbf the downwards direction, and Beam_cbf, the direction of the beam, e.g. ( 0, 0, -1).
In practice, the beam is not necessarily perfectly horizontal, so Y_nx is not necessarily perfectly vertical. Therefore, in order to generate X_nx, Y_nx and Z_nx some care is needed. The cross product between two vectors a and b is a new vector c orthogonal to both a and b, chosen so that a, b, c is a right-handed system. If a and b are orthogonal unit vectors, this right-handed system is an orthonormal coordinate system.
In the CBF coordinate frame, Z_nx is aligned to Beam_cbf:
Z_nx = Beam_cbf.
X_nx is defined as being horizontal at right angles to the beam, pointing to the left when seen from the source. Assuming the beam is not vertical, we can compute X_nx as the normalized cross product of the beam and gravity:
X_nx = (Beam_cbf x Gravity_cbf)/||Beam_cbf x Gravity_cbf||.
To see that this satisfies the constraint of being horizontal and pointing to the left, consider the case of Beam = ( 0, 0, -1 ) and Gravity = ( 0, 0, 1 ); then we would have X_nx = ( 1, 0, 0 ) from the cross product above. The normalization is only necessary if the beam is not horizontal.
Finally Y_nx is computed as the cross product of the beam and X_nx, completing an orthonormal right-handed system with Y_nx pointing upwards
Y_nx = Beam_cbf x X_nx.
Then we know that in the imgCIF/CBF coordinate frame
v_nx = X.X_nx + Y.Y_nx + Z.Z_nx.
Thus, given the imgCIF/CBF vectors for the true direction of the beam and the true direction of gravity, we have a linear transformation from the NeXus coordinate frame to the imgCIF/CBF coordinate frame. The origins of the two frames agree. The inverse linear transformation will transform a vector in the imgCIF/CBF coordinate frame into the NeXus coordinate frame.
In the common case in which the beam is orthogonal to the principal goniometer axis so that Beam_cbf = ( 0, 0, -1 ) and the imgCIF/CBF Y-axis points upwards, the transformation inverts the X and Z axes. In the other common case in which the beam is orthogonal to the principal goniometer axis and the imgCIF/CBF Y-axis points downwards, the transformation inverts the Y and Z axes.
Mapping axes
There are two transformations needed: coord_xform(v) which takes a vector, v, in the CBF imgCIF Standard Laboratory Coordinate System and returns the equivalent McStas coordinate vector, and offset_xform(o) which takes an offset, o, in the CBF imgCIF Standard Laboratory Coordinate System and returns the equivalent NeXus offset.
In imgCIF/CBF all the information about all axes other than their settings are gathered in one AXIS category. The closest equivalent container in NeXus is the NXinstrument class. We put the information about detector axes into a detector:NXdetector/transformations:NXtransformations NeXus class instance, information about the goniometer into a goniometer:NXgoniometer/transformations:NXtransformations NeXus class instance, etc. Additionally, in view of the general nature of some axes, such as the coordinate frame axes and gravity, we add a transformations:NXtransformation NeXus class instance under NXentry with axis__gravity, axis__beam and other axes not tied to specific equipment.
We have applied the coordinate frame transformation changing the CBF laboratory coordinates into McStas coordinates. Notice that X and Z have changed direction, but Y has not. In other experimental setups, other transformations may occur. The offsets for dependent axes are given relative to the total offset of axes on which that axis is dependent. Note that the axis settings do not enter into this calculation, because the offsets of dependent axes are given with all axes at their zero settings.
The cbf_location attribute gives a mapping back into the CBF AXIS category in dotted notation. The first component is the data block. The second component is "axis". The third component is either "vector" or "offset" for information drawn from the AXIS.VECTOR[...] or AXIS.OFFSET[...] respectively. The last component is the CBF row number to facilitate recovering the original CBF layout.
THE DIRECT LATTICE (FRACTIONAL COORDINATES)
The unit cell, reciprocal cell and crystallographic orthogonal Cartesian coordinate system are defined by the CELL and the matrices in the ATOM_SITES category.
The direct lattice coordinate system is a system of fractional coordinates aligned to the crystal, rather than to the laboratory. This is a natural coordinate system for maps and atomic coordinates. It is the simplest coordinate system in which to apply symmetry. The axes are determined by the cell edges, and are not necessarily orthogonal. This coordinate system is not uniquely defined and depends on the cell parameters in the CELL category and the settings chosen to index the crystal.
Molecules in a crystal studied by X-ray diffraction are organized into a repeating regular array of unit cells. Each unit cell is defined by three vectors, a, b and c. To quote from Drenth (2001),
"The choice of the unit cell is not unique and therefore, guidelines have been established for selecting the standard basis vectors and the origin. They are based on symmetry and metric considerations:
"(1) The axial system should be right-handed. (2) The basis vectors should coincide as much as possible with directions of highest symmetry. (3) The cell taken should be the smallest one that satisfies condition (2) (4) Of all the lattice vectors, none is shorter than a. (5) Of those not directed along a, none is shorter than b. (6) Of those not lying in the ab plane, none is shorter than c. (7) The three angles between the basis vectors a, b and c are either all acute (< 90 degrees) or all obtuse ( >= 90 degrees)."
These rules do not produce a unique result that is stable under the assumption of experimental errors, and the resulting cell may not be primitive.
In this coordinate system, the vector (.5, .5, .5) is in the middle of the given unit cell.
Grid coordinates are an important variation on fractional coordinates used when working with maps. In imgCIF, the conversion from fractional to grid coordinates is implicit in the array indexing specified by _array_structure_list.dimension. Note that this implicit grid-coordinate scheme is 1-based, not zero-based, i.e. the origin of the cell for axes along the cell edges with no specified _array_structure_list_axis.displacement will have grid coordinates of (1,1,1), i.e. array indices of (1,1,1).
THE ORTHOGONAL CARTESIAN COORDINATE SYSTEM (REAL SPACE)
The orthogonal Cartesian coordinate system is a transformation of the direct lattice to the actual physical coordinates of atoms in space. It is similar to the laboratory coordinate system, but is anchored to and moves with the crystal, rather than being anchored to the laboratory. The transformation from fractional to orthogonal Cartesian coordinates is given by the _atom_sites.Cartn_transf_matrix[i][j] and _atom_sites.Cartn_transf_vector[i] tags. A common choice for the matrix of the transformation is given in Protein Data Bank (1992):
| a b cos c cos | | 0 b sin c (cos - cos cos )/sin | | 0 0 V/(a b sin ) |
This is a convenient coordinate system in which to do fitting of models to maps and in which to understand the chemistry of a molecule.
THE RECIPROCAL LATTICE
The reciprocal lattice coordinate system is used for diffraction intensities. It is based on the reciprocal cell, the dual of the cell, in which reciprocal cell edges are derived from direct cell faces:
a* = bc sin /V b* = ac sin /V c* = ab sin /V cos * = (cos cos - cos )/(sin sin ) cos * = (cos cos - cos )/(sin sin ) cos * = (cos cos - cos )/(sin sin ) V = abc (1 - cos^2^ - cos^2^ - cos^2^ + 2 cos cos cos )^1/2^
In this form the dimensions of the reciprocal lattice are in reciprocal ngstrms (^-1^). A dimensionless form can be obtained by multiplying by the wavelength. Reflections are commonly indexed against this coordinate system as (h, k, l) triples.
References:
Drenth, J. (2001). Introduction to basic crystallography. International tables for crystallography, Vol. F, Crystallography of biological macromolecules, edited by M. G. Rossmann & E. Arnold, 1st ed., ch. 2.1, pp. 44--63. Dordrecht: Kluwer Academic Publishers.
Leslie, A. G. W. & Powell, H. (2004). MOSFLM v6.11. MRC Laboratory of Molecular Biology, Hills Road, Cambridge, England. http://www.CCP4.ac.uk/dist/X-windows/Mosflm/.
Stout, G. H. & Jensen, L. H. (1989). X-ray structure determination, 2nd ed., 453 pp. New York: Wiley.
Protein Data Bank (1992). Atomic Coordinate and Bibliographic Entry Format Description. Report, February 1992. Brookhaven, NY, USA: Brookhaven National Laboratory.
Examples:
loop_ _axis.id _axis.type _axis.equipment _axis.depends_on _axis.vector[1] _axis.vector[2] _axis.vector[3] omega rotation goniometer . 1 0 0 kappa rotation goniometer omega -.64279 0 -.76604 phi rotation goniometer kappa 1 0 0
loop_ _axis.id _axis.type _axis.equipment _axis.depends_on _axis.vector[1] _axis.vector[2] _axis.vector[3] _axis.offset[1] _axis.offset[2] _axis.offset[3] source . source . 0 0 1 . . . gravity . gravity . 0 -1 0 . . . tranz translation detector rotz 0 0 1 0 0 -68 twotheta rotation detector . 1 0 0 . . . roty rotation detector twotheta 0 1 0 0 0 -68 rotz rotation detector roty 0 0 1 0 0 -68
loop_ _axis.id _axis.system _axis.vector[1] _axis.vector[2] _axis.vector[3] CELL_A_AXIS fractional 1 0 0 CELL_B_AXIS fractional 0 1 0 CELL_C_AXIS fractional 0 0 1
loop_ _array_structure_list.array_id _array_structure_list.index _array_structure_list.dimension _array_structure_list.precedence _array_structure_list.direction _array_structure_list.axis_set_id map 1 25 1 increasing CELL_A_AXIS map 1 25 2 increasing CELL_B_AXIS map 1 25 3 increasing CELL_C_AXIS
loop_ _array_structure_list_axis.axis_id _array_structure_list_axis.fract_displacement _array_structure_list_axis.fract_displacement_increment CELL_A_AXIS 0.01 0.02 CELL_B_AXIS 0.01 0.02 CELL_C_AXIS 0.01 0.02
loop_ _axis.id _axis.system _axis.vector[1] _axis.vector[2] _axis.vector[3] X orthogonal 1 0 0 Y orthogonal 0 1 0 Z orthogonal 0 0 1
loop_ _array_structure_list.array_id _array_structure_list.index _array_structure_list.dimension _array_structure_list.precedence _array_structure_list.direction _array_structure_list.axis_set_id map 1 25 1 increasing X map 2 25 2 increasing Y map 3 25 3 increasing Z
loop_ _array_structure_list_axis.axis_id _array_structure_list_axis.displacement _array_structure_list_axis.displacement_increment X 7.5e-8 1.5e-7 Y 7.5e-8 1.5e-7 Z 7.5e-8 1.5e-7
loop_ _diffrn_detector_axis.detector_id _diffrn_detector_axis.axis_id CSPAD_FRONT AXIS_D0_X CSPAD_FRONT AXIS_D0_Y CSPAD_FRONT AXIS_D0_Z CSPAD_FRONT AXIS_D0_R CSPAD_FRONT FS_D0Q0 CSPAD_FRONT FS_D0Q0S0 CSPAD_FRONT FS_D0Q0S0A0 CSPAD_FRONT FS_D0Q0S0A1 CSPAD_FRONT FS_D0Q0S1 CSPAD_FRONT FS_D0Q0S1A0 CSPAD_FRONT FS_D0Q0S1A1 CSPAD_FRONT FS_D0Q0S2 CSPAD_FRONT FS_D0Q0S2A0 CSPAD_FRONT FS_D0Q0S2A1 CSPAD_FRONT FS_D0Q0S3 CSPAD_FRONT FS_D0Q0S3A0 CSPAD_FRONT FS_D0Q0S3A1 CSPAD_FRONT FS_D0Q0S4 CSPAD_FRONT FS_D0Q0S4A0 CSPAD_FRONT FS_D0Q0S4A1 CSPAD_FRONT FS_D0Q0S5 CSPAD_FRONT FS_D0Q0S5A0 CSPAD_FRONT FS_D0Q0S5A1 CSPAD_FRONT FS_D0Q0S6 CSPAD_FRONT FS_D0Q0S6A0 CSPAD_FRONT FS_D0Q0S6A1 CSPAD_FRONT FS_D0Q0S7 CSPAD_FRONT FS_D0Q0S7A0 CSPAD_FRONT FS_D0Q0S7A1 CSPAD_FRONT FS_D0Q1 CSPAD_FRONT FS_D0Q1S0 CSPAD_FRONT FS_D0Q1S0A0 CSPAD_FRONT FS_D0Q1S0A1 CSPAD_FRONT FS_D0Q1S1 CSPAD_FRONT FS_D0Q1S1A0 CSPAD_FRONT FS_D0Q1S1A1 CSPAD_FRONT FS_D0Q1S2 CSPAD_FRONT FS_D0Q1S2A0 CSPAD_FRONT FS_D0Q1S2A1 CSPAD_FRONT FS_D0Q1S3 CSPAD_FRONT FS_D0Q1S3A0 CSPAD_FRONT FS_D0Q1S3A1 CSPAD_FRONT FS_D0Q1S4 CSPAD_FRONT FS_D0Q1S4A0 CSPAD_FRONT FS_D0Q1S4A1 CSPAD_FRONT FS_D0Q1S5 CSPAD_FRONT FS_D0Q1S5A0 CSPAD_FRONT FS_D0Q1S5A1 CSPAD_FRONT FS_D0Q1S6 CSPAD_FRONT FS_D0Q1S6A0 CSPAD_FRONT FS_D0Q1S6A1 CSPAD_FRONT FS_D0Q1S7 CSPAD_FRONT FS_D0Q1S7A0 CSPAD_FRONT FS_D0Q1S7A1 CSPAD_FRONT FS_D0Q2 CSPAD_FRONT FS_D0Q2S0 CSPAD_FRONT FS_D0Q2S0A0 CSPAD_FRONT FS_D0Q2S0A1 CSPAD_FRONT FS_D0Q2S1 CSPAD_FRONT FS_D0Q2S1A0 CSPAD_FRONT FS_D0Q2S1A1 CSPAD_FRONT FS_D0Q2S2 CSPAD_FRONT FS_D0Q2S2A0 CSPAD_FRONT FS_D0Q2S2A1 CSPAD_FRONT FS_D0Q2S3 CSPAD_FRONT FS_D0Q2S3A0 CSPAD_FRONT FS_D0Q2S3A1 CSPAD_FRONT FS_D0Q2S4 CSPAD_FRONT FS_D0Q2S4A0 CSPAD_FRONT FS_D0Q2S4A1 CSPAD_FRONT FS_D0Q2S5 CSPAD_FRONT FS_D0Q2S5A0 CSPAD_FRONT FS_D0Q2S5A1 CSPAD_FRONT FS_D0Q2S6 CSPAD_FRONT FS_D0Q2S6A0 CSPAD_FRONT FS_D0Q2S6A1 CSPAD_FRONT FS_D0Q2S7 CSPAD_FRONT FS_D0Q2S7A0 CSPAD_FRONT FS_D0Q2S7A1 CSPAD_FRONT FS_D0Q3 CSPAD_FRONT FS_D0Q3S0 CSPAD_FRONT FS_D0Q3S0A0 CSPAD_FRONT FS_D0Q3S0A1 CSPAD_FRONT FS_D0Q3S1 CSPAD_FRONT FS_D0Q3S1A0 CSPAD_FRONT FS_D0Q3S1A1 CSPAD_FRONT FS_D0Q3S2 CSPAD_FRONT FS_D0Q3S2A0 CSPAD_FRONT FS_D0Q3S2A1 CSPAD_FRONT FS_D0Q3S3 CSPAD_FRONT FS_D0Q3S3A0 CSPAD_FRONT FS_D0Q3S3A1 CSPAD_FRONT FS_D0Q3S4 CSPAD_FRONT FS_D0Q3S4A0 CSPAD_FRONT FS_D0Q3S4A1 CSPAD_FRONT FS_D0Q3S5 CSPAD_FRONT FS_D0Q3S5A0 CSPAD_FRONT FS_D0Q3S5A1 CSPAD_FRONT FS_D0Q3S6 CSPAD_FRONT FS_D0Q3S6A0 CSPAD_FRONT FS_D0Q3S6A1 CSPAD_FRONT FS_D0Q3S7 CSPAD_FRONT FS_D0Q3S7A0 CSPAD_FRONT FS_D0Q3S7A1
loop_ _diffrn_detector_element.id _diffrn_detector_element.detector_id ELE_D0Q0S0A0 CSPAD_FRONT ELE_D0Q0S0A1 CSPAD_FRONT ELE_D0Q0S1A0 CSPAD_FRONT ELE_D0Q0S1A1 CSPAD_FRONT ELE_D0Q0S2A0 CSPAD_FRONT ELE_D0Q0S2A1 CSPAD_FRONT ELE_D0Q0S3A0 CSPAD_FRONT ELE_D0Q0S3A1 CSPAD_FRONT ELE_D0Q0S4A0 CSPAD_FRONT ELE_D0Q0S4A1 CSPAD_FRONT ELE_D0Q0S5A0 CSPAD_FRONT ELE_D0Q0S5A1 CSPAD_FRONT ELE_D0Q0S6A0 CSPAD_FRONT ELE_D0Q0S6A1 CSPAD_FRONT ELE_D0Q0S7A0 CSPAD_FRONT ELE_D0Q0S7A1 CSPAD_FRONT ELE_D0Q1S0A0 CSPAD_FRONT ELE_D0Q1S0A1 CSPAD_FRONT ELE_D0Q1S1A0 CSPAD_FRONT ELE_D0Q1S1A1 CSPAD_FRONT ELE_D0Q1S2A0 CSPAD_FRONT ELE_D0Q1S2A1 CSPAD_FRONT ELE_D0Q1S3A0 CSPAD_FRONT ELE_D0Q1S3A1 CSPAD_FRONT ELE_D0Q1S4A0 CSPAD_FRONT ELE_D0Q1S4A1 CSPAD_FRONT ELE_D0Q1S5A0 CSPAD_FRONT ELE_D0Q1S5A1 CSPAD_FRONT ELE_D0Q1S6A0 CSPAD_FRONT ELE_D0Q1S6A1 CSPAD_FRONT ELE_D0Q1S7A0 CSPAD_FRONT ELE_D0Q1S7A1 CSPAD_FRONT ELE_D0Q2S0A0 CSPAD_FRONT ELE_D0Q2S0A1 CSPAD_FRONT ELE_D0Q2S1A0 CSPAD_FRONT ELE_D0Q2S1A1 CSPAD_FRONT ELE_D0Q2S2A0 CSPAD_FRONT ELE_D0Q2S2A1 CSPAD_FRONT ELE_D0Q2S3A0 CSPAD_FRONT ELE_D0Q2S3A1 CSPAD_FRONT ELE_D0Q2S4A0 CSPAD_FRONT ELE_D0Q2S4A1 CSPAD_FRONT ELE_D0Q2S5A0 CSPAD_FRONT ELE_D0Q2S5A1 CSPAD_FRONT ELE_D0Q2S6A0 CSPAD_FRONT ELE_D0Q2S6A1 CSPAD_FRONT ELE_D0Q2S7A0 CSPAD_FRONT ELE_D0Q2S7A1 CSPAD_FRONT ELE_D0Q3S0A0 CSPAD_FRONT ELE_D0Q3S0A1 CSPAD_FRONT ELE_D0Q3S1A0 CSPAD_FRONT ELE_D0Q3S1A1 CSPAD_FRONT ELE_D0Q3S2A0 CSPAD_FRONT ELE_D0Q3S2A1 CSPAD_FRONT ELE_D0Q3S3A0 CSPAD_FRONT ELE_D0Q3S3A1 CSPAD_FRONT ELE_D0Q3S4A0 CSPAD_FRONT ELE_D0Q3S4A1 CSPAD_FRONT ELE_D0Q3S5A0 CSPAD_FRONT ELE_D0Q3S5A1 CSPAD_FRONT ELE_D0Q3S6A0 CSPAD_FRONT ELE_D0Q3S6A1 CSPAD_FRONT ELE_D0Q3S7A0 CSPAD_FRONT ELE_D0Q3S7A1 CSPAD_FRONT
loop_ _axis.id _axis.type _axis.equipment _axis.depends_on _axis.vector[1] _axis.vector[2] _axis.vector[3] _axis.offset[1] _axis.offset[2] _axis.offset[3] _axis.equipment_component _axis.rotation _axis.rotation_axis AXIS_SOURCE general source . 0 0 1 . . . . . . AXIS_GRAVITY general gravity . 0 -1 0 . . . . . . AXIS_D0_Z translation detector . 0 0 1 . . . detector_arm . . AXIS_D0_Y translation detector AXIS_D0_Z 0 1 0 . . . detector_arm . . AXIS_D0_X translation detector AXIS_D0_Y 1 0 0 . . . detector_arm . . AXIS_D0_R rotation detector AXIS_D0_X 0 0 1 0.0 0.0 0.0 detector_arm . . FS_D0Q0 rotation detector AXIS_D0_R 0 0 1 -49.860765625 41.643353125 0.0 detector_quadrant . . FS_D0Q0S0 rotation detector FS_D0Q0 0.0 0.0 1.0 11.3696 -23.189925 0.0 detector_sensor . . FS_D0Q0S0A0 rotation detector FS_D0Q0S0 0 0 1 -10.835 0.0 0.0 detector_asic 89.66181 FS_D0Q0S0 AXIS_D0Q0S0A0_F translation detector FS_D0Q0S0A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q0S0A0_S translation detector AXIS_D0Q0S0A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q0S0A1 rotation detector FS_D0Q0S0 0 0 1 10.835 0.0 0.0 detector_asic 89.66181 FS_D0Q0S0 AXIS_D0Q0S0A1_F translation detector FS_D0Q0S0A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q0S0A1_S translation detector AXIS_D0Q0S0A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q0S1 rotation detector FS_D0Q0 0.0 0.0 1.0 34.815 -23.309825 0.0 detector_sensor . . FS_D0Q0S1A0 rotation detector FS_D0Q0S1 0 0 1 -10.835 0.0 0.0 detector_asic 90.00132 FS_D0Q0S1 AXIS_D0Q0S1A0_F translation detector FS_D0Q0S1A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q0S1A0_S translation detector AXIS_D0Q0S1A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q0S1A1 rotation detector FS_D0Q0S1 0 0 1 10.835 0.0 0.0 detector_asic 90.00132 FS_D0Q0S1 AXIS_D0Q0S1A1_F translation detector FS_D0Q0S1A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q0S1A1_S translation detector AXIS_D0Q0S1A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q0S2 rotation detector FS_D0Q0 -0.0 -0.0 -1.0 -23.5389 -10.921625 0.0 detector_sensor . . FS_D0Q0S2A0 rotation detector FS_D0Q0S2 0 0 1 -10.835 0.0 0.0 detector_asic 359.68548 FS_D0Q0S2 AXIS_D0Q0S2A0_F translation detector FS_D0Q0S2A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q0S2A0_S translation detector AXIS_D0Q0S2A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q0S2A1 rotation detector FS_D0Q0S2 0 0 1 10.835 0.0 0.0 detector_asic 359.68548 FS_D0Q0S2 AXIS_D0Q0S2A1_F translation detector FS_D0Q0S2A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q0S2A1_S translation detector AXIS_D0Q0S2A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q0S3 rotation detector FS_D0Q0 0.0 0.0 1.0 -23.5499 -34.181125 0.0 detector_sensor . . FS_D0Q0S3A0 rotation detector FS_D0Q0S3 0 0 1 -10.835 0.0 0.0 detector_asic 359.96513 FS_D0Q0S3 AXIS_D0Q0S3A0_F translation detector FS_D0Q0S3A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q0S3A0_S translation detector AXIS_D0Q0S3A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q0S3A1 rotation detector FS_D0Q0S3 0 0 1 10.835 0.0 0.0 detector_asic 359.96513 FS_D0Q0S3 AXIS_D0Q0S3A1_F translation detector FS_D0Q0S3A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q0S3A1_S translation detector AXIS_D0Q0S3A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q0S4 rotation detector FS_D0Q0 0.0 0.0 1.0 -11.2651 24.282775 0.0 detector_sensor . . FS_D0Q0S4A0 rotation detector FS_D0Q0S4 0 0 1 -10.835 0.0 0.0 detector_asic 270.14738 FS_D0Q0S4 AXIS_D0Q0S4A0_F translation detector FS_D0Q0S4A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q0S4A0_S translation detector AXIS_D0Q0S4A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q0S4A1 rotation detector FS_D0Q0S4 0 0 1 10.835 0.0 0.0 detector_asic 270.14738 FS_D0Q0S4 AXIS_D0Q0S4A1_F translation detector FS_D0Q0S4A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q0S4A1_S translation detector AXIS_D0Q0S4A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q0S5 rotation detector FS_D0Q0 0.0 0.0 1.0 -34.7336 24.169475 0.0 detector_sensor . . FS_D0Q0S5A0 rotation detector FS_D0Q0S5 0 0 1 -10.835 0.0 0.0 detector_asic 270.07896 FS_D0Q0S5 AXIS_D0Q0S5A0_F translation detector FS_D0Q0S5A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q0S5A0_S translation detector AXIS_D0Q0S5A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q0S5A1 rotation detector FS_D0Q0S5 0 0 1 10.835 0.0 0.0 detector_asic 270.07896 FS_D0Q0S5 AXIS_D0Q0S5A1_F translation detector FS_D0Q0S5A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q0S5A1_S translation detector AXIS_D0Q0S5A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q0S6 rotation detector FS_D0Q0 0.0 0.0 1.0 23.5488 33.320375 0.0 detector_sensor . . FS_D0Q0S6A0 rotation detector FS_D0Q0S6 0 0 1 -10.835 0.0 0.0 detector_asic 359.78222 FS_D0Q0S6 AXIS_D0Q0S6A0_F translation detector FS_D0Q0S6A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q0S6A0_S translation detector AXIS_D0Q0S6A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q0S6A1 rotation detector FS_D0Q0S6 0 0 1 10.835 0.0 0.0 detector_asic 359.78222 FS_D0Q0S6 AXIS_D0Q0S6A1_F translation detector FS_D0Q0S6A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q0S6A1_S translation detector AXIS_D0Q0S6A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q0S7 rotation detector FS_D0Q0 0.0 0.0 1.0 23.3541 9.829875 0.0 detector_sensor . . FS_D0Q0S7A0 rotation detector FS_D0Q0S7 0 0 1 -10.835 0.0 0.0 detector_asic 359.89604 FS_D0Q0S7 AXIS_D0Q0S7A0_F translation detector FS_D0Q0S7A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q0S7A0_S translation detector AXIS_D0Q0S7A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q0S7A1 rotation detector FS_D0Q0S7 0 0 1 10.835 0.0 0.0 detector_asic 359.89604 FS_D0Q0S7 AXIS_D0Q0S7A1_F translation detector FS_D0Q0S7A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q0S7A1_S translation detector AXIS_D0Q0S7A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q1 rotation detector AXIS_D0_R 0 0 1 41.512521875 50.149653125 0.0 detector_quadrant . . FS_D0Q1S0 rotation detector FS_D0Q1 -0.0 -0.0 -1.0 -23.1589875 -11.451825 0.0 detector_sensor . . FS_D0Q1S0A0 rotation detector FS_D0Q1S0 0 0 1 -10.835 0.0 0.0 detector_asic 0.27238 FS_D0Q1S0 AXIS_D0Q1S0A0_F translation detector FS_D0Q1S0A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q1S0A0_S translation detector AXIS_D0Q1S0A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q1S0A1 rotation detector FS_D0Q1S0 0 0 1 10.835 0.0 0.0 detector_asic 0.27238 FS_D0Q1S0 AXIS_D0Q1S0A1_F translation detector FS_D0Q1S0A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q1S0A1_S translation detector AXIS_D0Q1S0A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q1S1 rotation detector FS_D0Q1 -0.0 -0.0 -1.0 -23.2073875 -34.782825 0.0 detector_sensor . . FS_D0Q1S1A0 rotation detector FS_D0Q1S1 0 0 1 -10.835 0.0 0.0 detector_asic 0.00525999986641 FS_D0Q1S1 AXIS_D0Q1S1A0_F translation detector FS_D0Q1S1A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q1S1A0_S translation detector AXIS_D0Q1S1A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q1S1A1 rotation detector FS_D0Q1S1 0 0 1 10.835 0.0 0.0 detector_asic 0.00525999986641 FS_D0Q1S1 AXIS_D0Q1S1A1_F translation detector FS_D0Q1S1A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q1S1A1_S translation detector AXIS_D0Q1S1A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q1S2 rotation detector FS_D0Q1 0.0 0.0 1.0 -10.7311875 23.286175 0.0 detector_sensor . . FS_D0Q1S2A0 rotation detector FS_D0Q1S2 0 0 1 -10.835 0.0 0.0 detector_asic 270.02545 FS_D0Q1S2 AXIS_D0Q1S2A0_F translation detector FS_D0Q1S2A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q1S2A0_S translation detector AXIS_D0Q1S2A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q1S2A1 rotation detector FS_D0Q1S2 0 0 1 10.835 0.0 0.0 detector_asic 270.02545 FS_D0Q1S2 AXIS_D0Q1S2A1_F translation detector FS_D0Q1S2A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q1S2A1_S translation detector AXIS_D0Q1S2A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q1S3 rotation detector FS_D0Q1 0.0 0.0 1.0 -34.1402875 23.344475 0.0 detector_sensor . . FS_D0Q1S3A0 rotation detector FS_D0Q1S3 0 0 1 -10.835 0.0 0.0 detector_asic 270.03066 FS_D0Q1S3 AXIS_D0Q1S3A0_F translation detector FS_D0Q1S3A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q1S3A0_S translation detector AXIS_D0Q1S3A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q1S3A1 rotation detector FS_D0Q1S3 0 0 1 10.835 0.0 0.0 detector_asic 270.03066 FS_D0Q1S3 AXIS_D0Q1S3A1_F translation detector FS_D0Q1S3A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q1S3A1_S translation detector AXIS_D0Q1S3A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q1S4 rotation detector FS_D0Q1 0.0 0.0 1.0 24.0035125 11.407275 0.0 detector_sensor . . FS_D0Q1S4A0 rotation detector FS_D0Q1S4 0 0 1 -10.835 0.0 0.0 detector_asic 179.96381 FS_D0Q1S4 AXIS_D0Q1S4A0_F translation detector FS_D0Q1S4A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q1S4A0_S translation detector AXIS_D0Q1S4A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q1S4A1 rotation detector FS_D0Q1S4 0 0 1 10.835 0.0 0.0 detector_asic 179.96381 FS_D0Q1S4 AXIS_D0Q1S4A1_F translation detector FS_D0Q1S4A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q1S4A1_S translation detector AXIS_D0Q1S4A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q1S5 rotation detector FS_D0Q1 0.0 0.0 1.0 24.0035125 34.876875 0.0 detector_sensor . . FS_D0Q1S5A0 rotation detector FS_D0Q1S5 0 0 1 -10.835 0.0 0.0 detector_asic 180.02434 FS_D0Q1S5 AXIS_D0Q1S5A0_F translation detector FS_D0Q1S5A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q1S5A0_S translation detector AXIS_D0Q1S5A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q1S5A1 rotation detector FS_D0Q1S5 0 0 1 10.835 0.0 0.0 detector_asic 180.02434 FS_D0Q1S5 AXIS_D0Q1S5A1_F translation detector FS_D0Q1S5A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q1S5A1_S translation detector AXIS_D0Q1S5A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q1S6 rotation detector FS_D0Q1 0.0 0.0 1.0 33.2523125 -23.321925 0.0 detector_sensor . . FS_D0Q1S6A0 rotation detector FS_D0Q1S6 0 0 1 -10.835 0.0 0.0 detector_asic 270.08027 FS_D0Q1S6 AXIS_D0Q1S6A0_F translation detector FS_D0Q1S6A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q1S6A0_S translation detector AXIS_D0Q1S6A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q1S6A1 rotation detector FS_D0Q1S6 0 0 1 10.835 0.0 0.0 detector_asic 270.08027 FS_D0Q1S6 AXIS_D0Q1S6A1_F translation detector FS_D0Q1S6A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q1S6A1_S translation detector AXIS_D0Q1S6A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q1S7 rotation detector FS_D0Q1 0.0 0.0 1.0 9.9785125 -23.358225 0.0 detector_sensor . . FS_D0Q1S7A0 rotation detector FS_D0Q1S7 0 0 1 -10.835 0.0 0.0 detector_asic 270.15067 FS_D0Q1S7 AXIS_D0Q1S7A0_F translation detector FS_D0Q1S7A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q1S7A0_S translation detector AXIS_D0Q1S7A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q1S7A1 rotation detector FS_D0Q1S7 0 0 1 10.835 0.0 0.0 detector_asic 270.15067 FS_D0Q1S7 AXIS_D0Q1S7A1_F translation detector FS_D0Q1S7A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q1S7A1_S translation detector AXIS_D0Q1S7A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q2 rotation detector AXIS_D0_R 0 0 1 49.596146875 -41.351371875 0.0 detector_quadrant . . FS_D0Q2S0 rotation detector FS_D0Q2 -0.0 -0.0 -1.0 -11.3150125 23.1242 0.0 detector_sensor . . FS_D0Q2S0A0 rotation detector FS_D0Q2S0 0 0 1 -10.835 0.0 0.0 detector_asic 90.04803 FS_D0Q2S0 AXIS_D0Q2S0A0_F translation detector FS_D0Q2S0A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q2S0A0_S translation detector AXIS_D0Q2S0A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q2S0A1 rotation detector FS_D0Q2S0 0 0 1 10.835 0.0 0.0 detector_asic 90.04803 FS_D0Q2S0 AXIS_D0Q2S0A1_F translation detector FS_D0Q2S0A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q2S0A1_S translation detector AXIS_D0Q2S0A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q2S1 rotation detector FS_D0Q2 -0.0 -0.0 -1.0 -34.6999125 23.155 0.0 detector_sensor . . FS_D0Q2S1A0 rotation detector FS_D0Q2S1 0 0 1 -10.835 0.0 0.0 detector_asic 90.00592 FS_D0Q2S1 AXIS_D0Q2S1A0_F translation detector FS_D0Q2S1A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q2S1A0_S translation detector AXIS_D0Q2S1A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q2S1A1 rotation detector FS_D0Q2S1 0 0 1 10.835 0.0 0.0 detector_asic 90.00592 FS_D0Q2S1 AXIS_D0Q2S1A1_F translation detector FS_D0Q2S1A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q2S1A1_S translation detector AXIS_D0Q2S1A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q2S2 rotation detector FS_D0Q2 0.0 0.0 1.0 23.4746875 10.7811 0.0 detector_sensor . . FS_D0Q2S2A0 rotation detector FS_D0Q2S2 0 0 1 -10.835 0.0 0.0 detector_asic 180.11318 FS_D0Q2S2 AXIS_D0Q2S2A0_F translation detector FS_D0Q2S2A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q2S2A0_S translation detector AXIS_D0Q2S2A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q2S2A1 rotation detector FS_D0Q2S2 0 0 1 10.835 0.0 0.0 detector_asic 180.11318 FS_D0Q2S2 AXIS_D0Q2S2A1_F translation detector FS_D0Q2S2A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q2S2A1_S translation detector AXIS_D0Q2S2A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q2S3 rotation detector FS_D0Q2 0.0 0.0 1.0 23.6220875 34.2221 0.0 detector_sensor . . FS_D0Q2S3A0 rotation detector FS_D0Q2S3 0 0 1 -10.835 0.0 0.0 detector_asic 179.92104 FS_D0Q2S3 AXIS_D0Q2S3A0_F translation detector FS_D0Q2S3A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q2S3A0_S translation detector AXIS_D0Q2S3A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q2S3A1 rotation detector FS_D0Q2S3 0 0 1 10.835 0.0 0.0 detector_asic 179.92104 FS_D0Q2S3 AXIS_D0Q2S3A1_F translation detector FS_D0Q2S3A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q2S3A1_S translation detector AXIS_D0Q2S3A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q2S4 rotation detector FS_D0Q2 0.0 0.0 1.0 11.1953875 -23.9954 0.0 detector_sensor . . FS_D0Q2S4A0 rotation detector FS_D0Q2S4 0 0 1 -10.835 0.0 0.0 detector_asic 89.63875 FS_D0Q2S4 AXIS_D0Q2S4A0_F translation detector FS_D0Q2S4A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q2S4A0_S translation detector AXIS_D0Q2S4A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q2S4A1 rotation detector FS_D0Q2S4 0 0 1 10.835 0.0 0.0 detector_asic 89.63875 FS_D0Q2S4 AXIS_D0Q2S4A1_F translation detector FS_D0Q2S4A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q2S4A1_S translation detector AXIS_D0Q2S4A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q2S5 rotation detector FS_D0Q2 0.0 0.0 1.0 34.5494875 -24.1901 0.0 detector_sensor . . FS_D0Q2S5A0 rotation detector FS_D0Q2S5 0 0 1 -10.835 0.0 0.0 detector_asic 89.68154 FS_D0Q2S5 AXIS_D0Q2S5A0_F translation detector FS_D0Q2S5A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q2S5A0_S translation detector AXIS_D0Q2S5A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q2S5A1 rotation detector FS_D0Q2S5 0 0 1 10.835 0.0 0.0 detector_asic 89.68154 FS_D0Q2S5 AXIS_D0Q2S5A1_F translation detector FS_D0Q2S5A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q2S5A1_S translation detector AXIS_D0Q2S5A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q2S6 rotation detector FS_D0Q2 0.0 0.0 1.0 -23.4854125 -33.2552 0.0 detector_sensor . . FS_D0Q2S6A0 rotation detector FS_D0Q2S6 0 0 1 -10.835 0.0 0.0 detector_asic 179.83473 FS_D0Q2S6 AXIS_D0Q2S6A0_F translation detector FS_D0Q2S6A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q2S6A0_S translation detector AXIS_D0Q2S6A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q2S6A1 rotation detector FS_D0Q2S6 0 0 1 10.835 0.0 0.0 detector_asic 179.83473 FS_D0Q2S6 AXIS_D0Q2S6A1_F translation detector FS_D0Q2S6A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q2S6A1_S translation detector AXIS_D0Q2S6A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q2S7 rotation detector FS_D0Q2 0.0 0.0 1.0 -23.3413125 -9.8417 0.0 detector_sensor . . FS_D0Q2S7A0 rotation detector FS_D0Q2S7 0 0 1 -10.835 0.0 0.0 detector_asic 180.092 FS_D0Q2S7 AXIS_D0Q2S7A0_F translation detector FS_D0Q2S7A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q2S7A0_S translation detector AXIS_D0Q2S7A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q2S7A1 rotation detector FS_D0Q2S7 0 0 1 10.835 0.0 0.0 detector_asic 180.092 FS_D0Q2S7 AXIS_D0Q2S7A1_F translation detector FS_D0Q2S7A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q2S7A1_S translation detector AXIS_D0Q2S7A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q3 rotation detector AXIS_D0_R 0 0 1 -41.247903125 -50.441634375 0.0 detector_quadrant . . FS_D0Q3S0 rotation detector FS_D0Q3 0.0 0.0 1.0 23.1056375 11.6367625 0.0 detector_sensor . . FS_D0Q3S0A0 rotation detector FS_D0Q3S0 0 0 1 -10.835 0.0 0.0 detector_asic 180.12436 FS_D0Q3S0 AXIS_D0Q3S0A0_F translation detector FS_D0Q3S0A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q3S0A0_S translation detector AXIS_D0Q3S0A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q3S0A1 rotation detector FS_D0Q3S0 0 0 1 10.835 0.0 0.0 detector_asic 180.12436 FS_D0Q3S0 AXIS_D0Q3S0A1_F translation detector FS_D0Q3S0A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q3S0A1_S translation detector AXIS_D0Q3S0A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q3S1 rotation detector FS_D0Q3 0.0 0.0 1.0 23.1298375 34.9864625 0.0 detector_sensor . . FS_D0Q3S1A0 rotation detector FS_D0Q3S1 0 0 1 -10.835 0.0 0.0 detector_asic 180.00263 FS_D0Q3S1 AXIS_D0Q3S1A0_F translation detector FS_D0Q3S1A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q3S1A0_S translation detector AXIS_D0Q3S1A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q3S1A1 rotation detector FS_D0Q3S1 0 0 1 10.835 0.0 0.0 detector_asic 180.00263 FS_D0Q3S1 AXIS_D0Q3S1A1_F translation detector FS_D0Q3S1A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q3S1A1_S translation detector AXIS_D0Q3S1A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q3S2 rotation detector FS_D0Q3 -0.0 -0.0 -1.0 10.9572375 -23.5830375 0.0 detector_sensor . . FS_D0Q3S2A0 rotation detector FS_D0Q3S2 0 0 1 -10.835 0.0 0.0 detector_asic 269.55191 FS_D0Q3S2 AXIS_D0Q3S2A0_F translation detector FS_D0Q3S2A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q3S2A0_S translation detector AXIS_D0Q3S2A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q3S2A1 rotation detector FS_D0Q3S2 0 0 1 10.835 0.0 0.0 detector_asic 269.55191 FS_D0Q3S2 AXIS_D0Q3S2A1_F translation detector FS_D0Q3S2A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q3S2A1_S translation detector AXIS_D0Q3S2A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q3S3 rotation detector FS_D0Q3 -0.0 -0.0 -1.0 34.4180375 -23.4818375 0.0 detector_sensor . . FS_D0Q3S3A0 rotation detector FS_D0Q3S3 0 0 1 -10.835 0.0 0.0 detector_asic 269.74206 FS_D0Q3S3 AXIS_D0Q3S3A0_F translation detector FS_D0Q3S3A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q3S3A0_S translation detector AXIS_D0Q3S3A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q3S3A1 rotation detector FS_D0Q3S3 0 0 1 10.835 0.0 0.0 detector_asic 269.74206 FS_D0Q3S3 AXIS_D0Q3S3A1_F translation detector FS_D0Q3S3A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q3S3A1_S translation detector AXIS_D0Q3S3A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q3S4 rotation detector FS_D0Q3 0.0 0.0 1.0 -24.1283625 -11.5336375 0.0 detector_sensor . . FS_D0Q3S4A0 rotation detector FS_D0Q3S4 0 0 1 -10.835 0.0 0.0 detector_asic 359.81971 FS_D0Q3S4 AXIS_D0Q3S4A0_F translation detector FS_D0Q3S4A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q3S4A0_S translation detector AXIS_D0Q3S4A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q3S4A1 rotation detector FS_D0Q3S4 0 0 1 10.835 0.0 0.0 detector_asic 359.81971 FS_D0Q3S4 AXIS_D0Q3S4A1_F translation detector FS_D0Q3S4A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q3S4A1_S translation detector AXIS_D0Q3S4A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q3S5 rotation detector FS_D0Q3 0.0 0.0 1.0 -24.1701625 -34.9548375 0.0 detector_sensor . . FS_D0Q3S5A0 rotation detector FS_D0Q3S5 0 0 1 -10.835 0.0 0.0 detector_asic 359.99883 FS_D0Q3S5 AXIS_D0Q3S5A0_F translation detector FS_D0Q3S5A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q3S5A0_S translation detector AXIS_D0Q3S5A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q3S5A1 rotation detector FS_D0Q3S5 0 0 1 10.835 0.0 0.0 detector_asic 359.99883 FS_D0Q3S5 AXIS_D0Q3S5A1_F translation detector FS_D0Q3S5A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q3S5A1_S translation detector AXIS_D0Q3S5A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q3S6 rotation detector FS_D0Q3 -0.0 -0.0 -1.0 -33.3089625 23.4474625 0.0 detector_sensor . . FS_D0Q3S6A0 rotation detector FS_D0Q3S6 0 0 1 -10.835 0.0 0.0 detector_asic 269.67299 FS_D0Q3S6 AXIS_D0Q3S6A0_F translation detector FS_D0Q3S6A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q3S6A0_S translation detector AXIS_D0Q3S6A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q3S6A1 rotation detector FS_D0Q3S6 0 0 1 10.835 0.0 0.0 detector_asic 269.67299 FS_D0Q3S6 AXIS_D0Q3S6A1_F translation detector FS_D0Q3S6A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q3S6A1_S translation detector AXIS_D0Q3S6A1_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q3S7 rotation detector FS_D0Q3 -0.0 -0.0 -1.0 -10.0032625 23.4826625 0.0 detector_sensor . . FS_D0Q3S7A0 rotation detector FS_D0Q3S7 0 0 1 -10.835 0.0 0.0 detector_asic 269.67561 FS_D0Q3S7 AXIS_D0Q3S7A0_F translation detector FS_D0Q3S7A0 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q3S7A0_S translation detector AXIS_D0Q3S7A0_F 0 -1 0 0 0 0.0 detector_asic . . FS_D0Q3S7A1 rotation detector FS_D0Q3S7 0 0 1 10.835 0.0 0.0 detector_asic 269.67561 FS_D0Q3S7 AXIS_D0Q3S7A1_F translation detector FS_D0Q3S7A1 1 0 0 -10.615000 10.120000 0.0 detector_asic . . AXIS_D0Q3S7A1_S translation detector AXIS_D0Q3S7A1_F 0 -1 0 0 0 0.0 detector_asic . .
loop_ _diffrn_detector_axis.detector_id _diffrn_detector_axis.axis_id CSPAD_FRONT AXIS_DETECTOR_X CSPAD_FRONT AXIS_DETECTOR_Y CSPAD_FRONT AXIS_DETECTOR_Z CSPAD_FRONT AXIS_DETECTOR_PITCH
loop_ _diffrn_detector_element.id _diffrn_detector_element.detector_id ELE_D0Q0S0A0 CSPAD_FRONT ELE_D0Q0S0A1 CSPAD_FRONT ELE_D0Q0S1A0 CSPAD_FRONT ELE_D0Q0S1A1 CSPAD_FRONT ELE_D0Q0S2A0 CSPAD_FRONT ELE_D0Q0S2A1 CSPAD_FRONT ELE_D0Q0S3A0 CSPAD_FRONT ELE_D0Q0S3A1 CSPAD_FRONT ELE_D0Q0S4A0 CSPAD_FRONT ELE_D0Q0S4A1 CSPAD_FRONT ELE_D0Q0S5A0 CSPAD_FRONT ELE_D0Q0S5A1 CSPAD_FRONT ELE_D0Q0S6A0 CSPAD_FRONT ELE_D0Q0S6A1 CSPAD_FRONT ELE_D0Q0S7A0 CSPAD_FRONT ELE_D0Q0S7A1 CSPAD_FRONT ELE_D0Q1S0A0 CSPAD_FRONT ELE_D0Q1S0A1 CSPAD_FRONT ELE_D0Q1S1A0 CSPAD_FRONT ELE_D0Q1S1A1 CSPAD_FRONT ELE_D0Q1S2A0 CSPAD_FRONT ELE_D0Q1S2A1 CSPAD_FRONT ELE_D0Q1S3A0 CSPAD_FRONT ELE_D0Q1S3A1 CSPAD_FRONT ELE_D0Q1S4A0 CSPAD_FRONT ELE_D0Q1S4A1 CSPAD_FRONT ELE_D0Q1S5A0 CSPAD_FRONT ELE_D0Q1S5A1 CSPAD_FRONT ELE_D0Q1S6A0 CSPAD_FRONT ELE_D0Q1S6A1 CSPAD_FRONT ELE_D0Q1S7A0 CSPAD_FRONT ELE_D0Q1S7A1 CSPAD_FRONT ELE_D0Q2S0A0 CSPAD_FRONT ELE_D0Q2S0A1 CSPAD_FRONT ELE_D0Q2S1A0 CSPAD_FRONT ELE_D0Q2S1A1 CSPAD_FRONT ELE_D0Q2S2A0 CSPAD_FRONT ELE_D0Q2S2A1 CSPAD_FRONT ELE_D0Q2S3A0 CSPAD_FRONT ELE_D0Q2S3A1 CSPAD_FRONT ELE_D0Q2S4A0 CSPAD_FRONT ELE_D0Q2S4A1 CSPAD_FRONT ELE_D0Q2S5A0 CSPAD_FRONT ELE_D0Q2S5A1 CSPAD_FRONT ELE_D0Q2S6A0 CSPAD_FRONT ELE_D0Q2S6A1 CSPAD_FRONT ELE_D0Q2S7A0 CSPAD_FRONT ELE_D0Q2S7A1 CSPAD_FRONT ELE_D0Q3S0A0 CSPAD_FRONT ELE_D0Q3S0A1 CSPAD_FRONT ELE_D0Q3S1A0 CSPAD_FRONT ELE_D0Q3S1A1 CSPAD_FRONT ELE_D0Q3S2A0 CSPAD_FRONT ELE_D0Q3S2A1 CSPAD_FRONT ELE_D0Q3S3A0 CSPAD_FRONT ELE_D0Q3S3A1 CSPAD_FRONT ELE_D0Q3S4A0 CSPAD_FRONT ELE_D0Q3S4A1 CSPAD_FRONT ELE_D0Q3S5A0 CSPAD_FRONT ELE_D0Q3S5A1 CSPAD_FRONT ELE_D0Q3S6A0 CSPAD_FRONT ELE_D0Q3S6A1 CSPAD_FRONT ELE_D0Q3S7A0 CSPAD_FRONT ELE_D0Q3S7A1 CSPAD_FRONT
loop_ _axis.id _axis.type _axis.equipment _axis.depends_on _axis.vector[1] _axis.vector[2] _axis.vector[3] _axis.offset[1] _axis.offset[2] _axis.offset[3] _axis.rotation _axis.rotation_axis AXIS_SOURCE general source . 0 0 1 . . . . . AXIS_GRAVITY general gravity . 0 -1 0 . . . . . AXIS_DETECTOR_Z translation detector . 0 0 1 0 0 0 . . AXIS_DETECTOR_Y translation detector AXIS_DETECTOR_Z 0 1 0 0 0 0 . . AXIS_DETECTOR_X translation detector AXIS_DETECTOR_Y 1 0 0 0 0 0 . . AXIS_DETECTOR_PITCH rotation detector AXIS_DETECTOR_X 0 1 0 0 0 0 . . AXIS_DETECTOR_ROT rotation detector AXIS_DETECTOR_PITCH 0 0 1 0 0 0 . . AXIS_D0_ORIGIN translation detector AXIS_DETECTOR_PITCH 0 0 1 0 0 171.0104 . . AXIS_D0_ROT rotation detector AXIS_D0_ORIGIN 0.0 0.0 0.0 0 0 0 . . AXIS_D0 translation detector AXIS_D0_ORIGIN . . . 0.0 0.0 0.0 0.0 AXIS_D0_ROT AXIS_D0Q0_ROT rotation detector AXIS_D0 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q0 translation detector AXIS_D0 . . . -49.860765625 41.643353125 0.0 0.0 AXIS_D0Q0_ROT AXIS_D0Q0S0_ROT rotation detector AXIS_D0Q0 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q0S0 translation detector AXIS_D0Q0 . . . 11.3696 -23.189925 0.0 89.66181 AXIS_D0Q0S0_ROT AXIS_D0Q0S0A0_ROT rotation detector AXIS_D0Q0S0 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q0S0A0 translation detector AXIS_D0Q0S0 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q0S0A0_ROT AXIS_D0Q0S0A0_F translation detector AXIS_D0Q0S0A0 1 0 0 0 0 0 . . AXIS_D0Q0S0A0_S translation detector AXIS_D0Q0S0A0 0 1 0 0 0 0 . . AXIS_D0Q0S0A1_ROT rotation detector AXIS_D0Q0S0 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q0S0A1 translation detector AXIS_D0Q0S0 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q0S0A1_ROT AXIS_D0Q0S0A1_F translation detector AXIS_D0Q0S0A1 1 0 0 0 0 0 . . AXIS_D0Q0S0A1_S translation detector AXIS_D0Q0S0A1 0 1 0 0 0 0 . . AXIS_D0Q0S1_ROT rotation detector AXIS_D0Q0 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q0S1 translation detector AXIS_D0Q0 . . . 34.815 -23.309825 0.0 90.00132 AXIS_D0Q0S1_ROT AXIS_D0Q0S1A0_ROT rotation detector AXIS_D0Q0S1 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q0S1A0 translation detector AXIS_D0Q0S1 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q0S1A0_ROT AXIS_D0Q0S1A0_F translation detector AXIS_D0Q0S1A0 1 0 0 0 0 0 . . AXIS_D0Q0S1A0_S translation detector AXIS_D0Q0S1A0 0 1 0 0 0 0 . . AXIS_D0Q0S1A1_ROT rotation detector AXIS_D0Q0S1 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q0S1A1 translation detector AXIS_D0Q0S1 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q0S1A1_ROT AXIS_D0Q0S1A1_F translation detector AXIS_D0Q0S1A1 1 0 0 0 0 0 . . AXIS_D0Q0S1A1_S translation detector AXIS_D0Q0S1A1 0 1 0 0 0 0 . . AXIS_D0Q0S2_ROT rotation detector AXIS_D0Q0 -0.0 -0.0 -1.0 0 0 0 . . AXIS_D0Q0S2 translation detector AXIS_D0Q0 . . . -23.5389 -10.921625 0.0 359.68548 AXIS_D0Q0S2_ROT AXIS_D0Q0S2A0_ROT rotation detector AXIS_D0Q0S2 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q0S2A0 translation detector AXIS_D0Q0S2 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q0S2A0_ROT AXIS_D0Q0S2A0_F translation detector AXIS_D0Q0S2A0 1 0 0 0 0 0 . . AXIS_D0Q0S2A0_S translation detector AXIS_D0Q0S2A0 0 1 0 0 0 0 . . AXIS_D0Q0S2A1_ROT rotation detector AXIS_D0Q0S2 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q0S2A1 translation detector AXIS_D0Q0S2 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q0S2A1_ROT AXIS_D0Q0S2A1_F translation detector AXIS_D0Q0S2A1 1 0 0 0 0 0 . . AXIS_D0Q0S2A1_S translation detector AXIS_D0Q0S2A1 0 1 0 0 0 0 . . AXIS_D0Q0S3_ROT rotation detector AXIS_D0Q0 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q0S3 translation detector AXIS_D0Q0 . . . -23.5499 -34.181125 0.0 359.96513 AXIS_D0Q0S3_ROT AXIS_D0Q0S3A0_ROT rotation detector AXIS_D0Q0S3 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q0S3A0 translation detector AXIS_D0Q0S3 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q0S3A0_ROT AXIS_D0Q0S3A0_F translation detector AXIS_D0Q0S3A0 1 0 0 0 0 0 . . AXIS_D0Q0S3A0_S translation detector AXIS_D0Q0S3A0 0 1 0 0 0 0 . . AXIS_D0Q0S3A1_ROT rotation detector AXIS_D0Q0S3 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q0S3A1 translation detector AXIS_D0Q0S3 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q0S3A1_ROT AXIS_D0Q0S3A1_F translation detector AXIS_D0Q0S3A1 1 0 0 0 0 0 . . AXIS_D0Q0S3A1_S translation detector AXIS_D0Q0S3A1 0 1 0 0 0 0 . . AXIS_D0Q0S4_ROT rotation detector AXIS_D0Q0 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q0S4 translation detector AXIS_D0Q0 . . . -11.2651 24.282775 0.0 270.14738 AXIS_D0Q0S4_ROT AXIS_D0Q0S4A0_ROT rotation detector AXIS_D0Q0S4 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q0S4A0 translation detector AXIS_D0Q0S4 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q0S4A0_ROT AXIS_D0Q0S4A0_F translation detector AXIS_D0Q0S4A0 1 0 0 0 0 0 . . AXIS_D0Q0S4A0_S translation detector AXIS_D0Q0S4A0 0 1 0 0 0 0 . . AXIS_D0Q0S4A1_ROT rotation detector AXIS_D0Q0S4 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q0S4A1 translation detector AXIS_D0Q0S4 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q0S4A1_ROT AXIS_D0Q0S4A1_F translation detector AXIS_D0Q0S4A1 1 0 0 0 0 0 . . AXIS_D0Q0S4A1_S translation detector AXIS_D0Q0S4A1 0 1 0 0 0 0 . . AXIS_D0Q0S5_ROT rotation detector AXIS_D0Q0 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q0S5 translation detector AXIS_D0Q0 . . . -34.7336 24.169475 0.0 270.07896 AXIS_D0Q0S5_ROT AXIS_D0Q0S5A0_ROT rotation detector AXIS_D0Q0S5 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q0S5A0 translation detector AXIS_D0Q0S5 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q0S5A0_ROT AXIS_D0Q0S5A0_F translation detector AXIS_D0Q0S5A0 1 0 0 0 0 0 . . AXIS_D0Q0S5A0_S translation detector AXIS_D0Q0S5A0 0 1 0 0 0 0 . . AXIS_D0Q0S5A1_ROT rotation detector AXIS_D0Q0S5 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q0S5A1 translation detector AXIS_D0Q0S5 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q0S5A1_ROT AXIS_D0Q0S5A1_F translation detector AXIS_D0Q0S5A1 1 0 0 0 0 0 . . AXIS_D0Q0S5A1_S translation detector AXIS_D0Q0S5A1 0 1 0 0 0 0 . . AXIS_D0Q0S6_ROT rotation detector AXIS_D0Q0 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q0S6 translation detector AXIS_D0Q0 . . . 23.5488 33.320375 0.0 359.78222 AXIS_D0Q0S6_ROT AXIS_D0Q0S6A0_ROT rotation detector AXIS_D0Q0S6 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q0S6A0 translation detector AXIS_D0Q0S6 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q0S6A0_ROT AXIS_D0Q0S6A0_F translation detector AXIS_D0Q0S6A0 1 0 0 0 0 0 . . AXIS_D0Q0S6A0_S translation detector AXIS_D0Q0S6A0 0 1 0 0 0 0 . . AXIS_D0Q0S6A1_ROT rotation detector AXIS_D0Q0S6 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q0S6A1 translation detector AXIS_D0Q0S6 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q0S6A1_ROT AXIS_D0Q0S6A1_F translation detector AXIS_D0Q0S6A1 1 0 0 0 0 0 . . AXIS_D0Q0S6A1_S translation detector AXIS_D0Q0S6A1 0 1 0 0 0 0 . . AXIS_D0Q0S7_ROT rotation detector AXIS_D0Q0 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q0S7 translation detector AXIS_D0Q0 . . . 23.3541 9.829875 0.0 359.89604 AXIS_D0Q0S7_ROT AXIS_D0Q0S7A0_ROT rotation detector AXIS_D0Q0S7 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q0S7A0 translation detector AXIS_D0Q0S7 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q0S7A0_ROT AXIS_D0Q0S7A0_F translation detector AXIS_D0Q0S7A0 1 0 0 0 0 0 . . AXIS_D0Q0S7A0_S translation detector AXIS_D0Q0S7A0 0 1 0 0 0 0 . . AXIS_D0Q0S7A1_ROT rotation detector AXIS_D0Q0S7 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q0S7A1 translation detector AXIS_D0Q0S7 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q0S7A1_ROT AXIS_D0Q0S7A1_F translation detector AXIS_D0Q0S7A1 1 0 0 0 0 0 . . AXIS_D0Q0S7A1_S translation detector AXIS_D0Q0S7A1 0 1 0 0 0 0 . . AXIS_D0Q1_ROT rotation detector AXIS_D0 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q1 translation detector AXIS_D0 . . . 41.512521875 50.149653125 0.0 0.0 AXIS_D0Q1_ROT AXIS_D0Q1S0_ROT rotation detector AXIS_D0Q1 -0.0 -0.0 -1.0 0 0 0 . . AXIS_D0Q1S0 translation detector AXIS_D0Q1 . . . -23.1589875 -11.451825 0.0 0.27238 AXIS_D0Q1S0_ROT AXIS_D0Q1S0A0_ROT rotation detector AXIS_D0Q1S0 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q1S0A0 translation detector AXIS_D0Q1S0 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q1S0A0_ROT AXIS_D0Q1S0A0_F translation detector AXIS_D0Q1S0A0 1 0 0 0 0 0 . . AXIS_D0Q1S0A0_S translation detector AXIS_D0Q1S0A0 0 1 0 0 0 0 . . AXIS_D0Q1S0A1_ROT rotation detector AXIS_D0Q1S0 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q1S0A1 translation detector AXIS_D0Q1S0 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q1S0A1_ROT AXIS_D0Q1S0A1_F translation detector AXIS_D0Q1S0A1 1 0 0 0 0 0 . . AXIS_D0Q1S0A1_S translation detector AXIS_D0Q1S0A1 0 1 0 0 0 0 . . AXIS_D0Q1S1_ROT rotation detector AXIS_D0Q1 -0.0 -0.0 -1.0 0 0 0 . . AXIS_D0Q1S1 translation detector AXIS_D0Q1 . . . -23.2073875 -34.782825 0.0 0.00525999986641 AXIS_D0Q1S1_ROT AXIS_D0Q1S1A0_ROT rotation detector AXIS_D0Q1S1 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q1S1A0 translation detector AXIS_D0Q1S1 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q1S1A0_ROT AXIS_D0Q1S1A0_F translation detector AXIS_D0Q1S1A0 1 0 0 0 0 0 . . AXIS_D0Q1S1A0_S translation detector AXIS_D0Q1S1A0 0 1 0 0 0 0 . . AXIS_D0Q1S1A1_ROT rotation detector AXIS_D0Q1S1 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q1S1A1 translation detector AXIS_D0Q1S1 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q1S1A1_ROT AXIS_D0Q1S1A1_F translation detector AXIS_D0Q1S1A1 1 0 0 0 0 0 . . AXIS_D0Q1S1A1_S translation detector AXIS_D0Q1S1A1 0 1 0 0 0 0 . . AXIS_D0Q1S2_ROT rotation detector AXIS_D0Q1 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q1S2 translation detector AXIS_D0Q1 . . . -10.7311875 23.286175 0.0 270.02545 AXIS_D0Q1S2_ROT AXIS_D0Q1S2A0_ROT rotation detector AXIS_D0Q1S2 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q1S2A0 translation detector AXIS_D0Q1S2 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q1S2A0_ROT AXIS_D0Q1S2A0_F translation detector AXIS_D0Q1S2A0 1 0 0 0 0 0 . . AXIS_D0Q1S2A0_S translation detector AXIS_D0Q1S2A0 0 1 0 0 0 0 . . AXIS_D0Q1S2A1_ROT rotation detector AXIS_D0Q1S2 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q1S2A1 translation detector AXIS_D0Q1S2 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q1S2A1_ROT AXIS_D0Q1S2A1_F translation detector AXIS_D0Q1S2A1 1 0 0 0 0 0 . . AXIS_D0Q1S2A1_S translation detector AXIS_D0Q1S2A1 0 1 0 0 0 0 . . AXIS_D0Q1S3_ROT rotation detector AXIS_D0Q1 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q1S3 translation detector AXIS_D0Q1 . . . -34.1402875 23.344475 0.0 270.03066 AXIS_D0Q1S3_ROT AXIS_D0Q1S3A0_ROT rotation detector AXIS_D0Q1S3 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q1S3A0 translation detector AXIS_D0Q1S3 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q1S3A0_ROT AXIS_D0Q1S3A0_F translation detector AXIS_D0Q1S3A0 1 0 0 0 0 0 . . AXIS_D0Q1S3A0_S translation detector AXIS_D0Q1S3A0 0 1 0 0 0 0 . . AXIS_D0Q1S3A1_ROT rotation detector AXIS_D0Q1S3 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q1S3A1 translation detector AXIS_D0Q1S3 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q1S3A1_ROT AXIS_D0Q1S3A1_F translation detector AXIS_D0Q1S3A1 1 0 0 0 0 0 . . AXIS_D0Q1S3A1_S translation detector AXIS_D0Q1S3A1 0 1 0 0 0 0 . . AXIS_D0Q1S4_ROT rotation detector AXIS_D0Q1 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q1S4 translation detector AXIS_D0Q1 . . . 24.0035125 11.407275 0.0 179.96381 AXIS_D0Q1S4_ROT AXIS_D0Q1S4A0_ROT rotation detector AXIS_D0Q1S4 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q1S4A0 translation detector AXIS_D0Q1S4 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q1S4A0_ROT AXIS_D0Q1S4A0_F translation detector AXIS_D0Q1S4A0 1 0 0 0 0 0 . . AXIS_D0Q1S4A0_S translation detector AXIS_D0Q1S4A0 0 1 0 0 0 0 . . AXIS_D0Q1S4A1_ROT rotation detector AXIS_D0Q1S4 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q1S4A1 translation detector AXIS_D0Q1S4 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q1S4A1_ROT AXIS_D0Q1S4A1_F translation detector AXIS_D0Q1S4A1 1 0 0 0 0 0 . . AXIS_D0Q1S4A1_S translation detector AXIS_D0Q1S4A1 0 1 0 0 0 0 . . AXIS_D0Q1S5_ROT rotation detector AXIS_D0Q1 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q1S5 translation detector AXIS_D0Q1 . . . 24.0035125 34.876875 0.0 180.02434 AXIS_D0Q1S5_ROT AXIS_D0Q1S5A0_ROT rotation detector AXIS_D0Q1S5 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q1S5A0 translation detector AXIS_D0Q1S5 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q1S5A0_ROT AXIS_D0Q1S5A0_F translation detector AXIS_D0Q1S5A0 1 0 0 0 0 0 . . AXIS_D0Q1S5A0_S translation detector AXIS_D0Q1S5A0 0 1 0 0 0 0 . . AXIS_D0Q1S5A1_ROT rotation detector AXIS_D0Q1S5 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q1S5A1 translation detector AXIS_D0Q1S5 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q1S5A1_ROT AXIS_D0Q1S5A1_F translation detector AXIS_D0Q1S5A1 1 0 0 0 0 0 . . AXIS_D0Q1S5A1_S translation detector AXIS_D0Q1S5A1 0 1 0 0 0 0 . . AXIS_D0Q1S6_ROT rotation detector AXIS_D0Q1 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q1S6 translation detector AXIS_D0Q1 . . . 33.2523125 -23.321925 0.0 270.08027 AXIS_D0Q1S6_ROT AXIS_D0Q1S6A0_ROT rotation detector AXIS_D0Q1S6 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q1S6A0 translation detector AXIS_D0Q1S6 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q1S6A0_ROT AXIS_D0Q1S6A0_F translation detector AXIS_D0Q1S6A0 1 0 0 0 0 0 . . AXIS_D0Q1S6A0_S translation detector AXIS_D0Q1S6A0 0 1 0 0 0 0 . . AXIS_D0Q1S6A1_ROT rotation detector AXIS_D0Q1S6 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q1S6A1 translation detector AXIS_D0Q1S6 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q1S6A1_ROT AXIS_D0Q1S6A1_F translation detector AXIS_D0Q1S6A1 1 0 0 0 0 0 . . AXIS_D0Q1S6A1_S translation detector AXIS_D0Q1S6A1 0 1 0 0 0 0 . . AXIS_D0Q1S7_ROT rotation detector AXIS_D0Q1 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q1S7 translation detector AXIS_D0Q1 . . . 9.9785125 -23.358225 0.0 270.15067 AXIS_D0Q1S7_ROT AXIS_D0Q1S7A0_ROT rotation detector AXIS_D0Q1S7 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q1S7A0 translation detector AXIS_D0Q1S7 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q1S7A0_ROT AXIS_D0Q1S7A0_F translation detector AXIS_D0Q1S7A0 1 0 0 0 0 0 . . AXIS_D0Q1S7A0_S translation detector AXIS_D0Q1S7A0 0 1 0 0 0 0 . . AXIS_D0Q1S7A1_ROT rotation detector AXIS_D0Q1S7 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q1S7A1 translation detector AXIS_D0Q1S7 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q1S7A1_ROT AXIS_D0Q1S7A1_F translation detector AXIS_D0Q1S7A1 1 0 0 0 0 0 . . AXIS_D0Q1S7A1_S translation detector AXIS_D0Q1S7A1 0 1 0 0 0 0 . . AXIS_D0Q2_ROT rotation detector AXIS_D0 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q2 translation detector AXIS_D0 . . . 49.596146875 -41.351371875 0.0 0.0 AXIS_D0Q2_ROT AXIS_D0Q2S0_ROT rotation detector AXIS_D0Q2 -0.0 -0.0 -1.0 0 0 0 . . AXIS_D0Q2S0 translation detector AXIS_D0Q2 . . . -11.3150125 23.1242 0.0 90.04803 AXIS_D0Q2S0_ROT AXIS_D0Q2S0A0_ROT rotation detector AXIS_D0Q2S0 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q2S0A0 translation detector AXIS_D0Q2S0 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q2S0A0_ROT AXIS_D0Q2S0A0_F translation detector AXIS_D0Q2S0A0 1 0 0 0 0 0 . . AXIS_D0Q2S0A0_S translation detector AXIS_D0Q2S0A0 0 1 0 0 0 0 . . AXIS_D0Q2S0A1_ROT rotation detector AXIS_D0Q2S0 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q2S0A1 translation detector AXIS_D0Q2S0 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q2S0A1_ROT AXIS_D0Q2S0A1_F translation detector AXIS_D0Q2S0A1 1 0 0 0 0 0 . . AXIS_D0Q2S0A1_S translation detector AXIS_D0Q2S0A1 0 1 0 0 0 0 . . AXIS_D0Q2S1_ROT rotation detector AXIS_D0Q2 -0.0 -0.0 -1.0 0 0 0 . . AXIS_D0Q2S1 translation detector AXIS_D0Q2 . . . -34.6999125 23.155 0.0 90.00592 AXIS_D0Q2S1_ROT AXIS_D0Q2S1A0_ROT rotation detector AXIS_D0Q2S1 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q2S1A0 translation detector AXIS_D0Q2S1 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q2S1A0_ROT AXIS_D0Q2S1A0_F translation detector AXIS_D0Q2S1A0 1 0 0 0 0 0 . . AXIS_D0Q2S1A0_S translation detector AXIS_D0Q2S1A0 0 1 0 0 0 0 . . AXIS_D0Q2S1A1_ROT rotation detector AXIS_D0Q2S1 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q2S1A1 translation detector AXIS_D0Q2S1 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q2S1A1_ROT AXIS_D0Q2S1A1_F translation detector AXIS_D0Q2S1A1 1 0 0 0 0 0 . . AXIS_D0Q2S1A1_S translation detector AXIS_D0Q2S1A1 0 1 0 0 0 0 . . AXIS_D0Q2S2_ROT rotation detector AXIS_D0Q2 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q2S2 translation detector AXIS_D0Q2 . . . 23.4746875 10.7811 0.0 180.11318 AXIS_D0Q2S2_ROT AXIS_D0Q2S2A0_ROT rotation detector AXIS_D0Q2S2 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q2S2A0 translation detector AXIS_D0Q2S2 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q2S2A0_ROT AXIS_D0Q2S2A0_F translation detector AXIS_D0Q2S2A0 1 0 0 0 0 0 . . AXIS_D0Q2S2A0_S translation detector AXIS_D0Q2S2A0 0 1 0 0 0 0 . . AXIS_D0Q2S2A1_ROT rotation detector AXIS_D0Q2S2 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q2S2A1 translation detector AXIS_D0Q2S2 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q2S2A1_ROT AXIS_D0Q2S2A1_F translation detector AXIS_D0Q2S2A1 1 0 0 0 0 0 . . AXIS_D0Q2S2A1_S translation detector AXIS_D0Q2S2A1 0 1 0 0 0 0 . . AXIS_D0Q2S3_ROT rotation detector AXIS_D0Q2 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q2S3 translation detector AXIS_D0Q2 . . . 23.6220875 34.2221 0.0 179.92104 AXIS_D0Q2S3_ROT AXIS_D0Q2S3A0_ROT rotation detector AXIS_D0Q2S3 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q2S3A0 translation detector AXIS_D0Q2S3 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q2S3A0_ROT AXIS_D0Q2S3A0_F translation detector AXIS_D0Q2S3A0 1 0 0 0 0 0 . . AXIS_D0Q2S3A0_S translation detector AXIS_D0Q2S3A0 0 1 0 0 0 0 . . AXIS_D0Q2S3A1_ROT rotation detector AXIS_D0Q2S3 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q2S3A1 translation detector AXIS_D0Q2S3 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q2S3A1_ROT AXIS_D0Q2S3A1_F translation detector AXIS_D0Q2S3A1 1 0 0 0 0 0 . . AXIS_D0Q2S3A1_S translation detector AXIS_D0Q2S3A1 0 1 0 0 0 0 . . AXIS_D0Q2S4_ROT rotation detector AXIS_D0Q2 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q2S4 translation detector AXIS_D0Q2 . . . 11.1953875 -23.9954 0.0 89.63875 AXIS_D0Q2S4_ROT AXIS_D0Q2S4A0_ROT rotation detector AXIS_D0Q2S4 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q2S4A0 translation detector AXIS_D0Q2S4 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q2S4A0_ROT AXIS_D0Q2S4A0_F translation detector AXIS_D0Q2S4A0 1 0 0 0 0 0 . . AXIS_D0Q2S4A0_S translation detector AXIS_D0Q2S4A0 0 1 0 0 0 0 . . AXIS_D0Q2S4A1_ROT rotation detector AXIS_D0Q2S4 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q2S4A1 translation detector AXIS_D0Q2S4 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q2S4A1_ROT AXIS_D0Q2S4A1_F translation detector AXIS_D0Q2S4A1 1 0 0 0 0 0 . . AXIS_D0Q2S4A1_S translation detector AXIS_D0Q2S4A1 0 1 0 0 0 0 . . AXIS_D0Q2S5_ROT rotation detector AXIS_D0Q2 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q2S5 translation detector AXIS_D0Q2 . . . 34.5494875 -24.1901 0.0 89.68154 AXIS_D0Q2S5_ROT AXIS_D0Q2S5A0_ROT rotation detector AXIS_D0Q2S5 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q2S5A0 translation detector AXIS_D0Q2S5 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q2S5A0_ROT AXIS_D0Q2S5A0_F translation detector AXIS_D0Q2S5A0 1 0 0 0 0 0 . . AXIS_D0Q2S5A0_S translation detector AXIS_D0Q2S5A0 0 1 0 0 0 0 . . AXIS_D0Q2S5A1_ROT rotation detector AXIS_D0Q2S5 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q2S5A1 translation detector AXIS_D0Q2S5 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q2S5A1_ROT AXIS_D0Q2S5A1_F translation detector AXIS_D0Q2S5A1 1 0 0 0 0 0 . . AXIS_D0Q2S5A1_S translation detector AXIS_D0Q2S5A1 0 1 0 0 0 0 . . AXIS_D0Q2S6_ROT rotation detector AXIS_D0Q2 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q2S6 translation detector AXIS_D0Q2 . . . -23.4854125 -33.2552 0.0 179.83473 AXIS_D0Q2S6_ROT AXIS_D0Q2S6A0_ROT rotation detector AXIS_D0Q2S6 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q2S6A0 translation detector AXIS_D0Q2S6 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q2S6A0_ROT AXIS_D0Q2S6A0_F translation detector AXIS_D0Q2S6A0 1 0 0 0 0 0 . . AXIS_D0Q2S6A0_S translation detector AXIS_D0Q2S6A0 0 1 0 0 0 0 . . AXIS_D0Q2S6A1_ROT rotation detector AXIS_D0Q2S6 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q2S6A1 translation detector AXIS_D0Q2S6 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q2S6A1_ROT AXIS_D0Q2S6A1_F translation detector AXIS_D0Q2S6A1 1 0 0 0 0 0 . . AXIS_D0Q2S6A1_S translation detector AXIS_D0Q2S6A1 0 1 0 0 0 0 . . AXIS_D0Q2S7_ROT rotation detector AXIS_D0Q2 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q2S7 translation detector AXIS_D0Q2 . . . -23.3413125 -9.8417 0.0 180.092 AXIS_D0Q2S7_ROT AXIS_D0Q2S7A0_ROT rotation detector AXIS_D0Q2S7 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q2S7A0 translation detector AXIS_D0Q2S7 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q2S7A0_ROT AXIS_D0Q2S7A0_F translation detector AXIS_D0Q2S7A0 1 0 0 0 0 0 . . AXIS_D0Q2S7A0_S translation detector AXIS_D0Q2S7A0 0 1 0 0 0 0 . . AXIS_D0Q2S7A1_ROT rotation detector AXIS_D0Q2S7 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q2S7A1 translation detector AXIS_D0Q2S7 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q2S7A1_ROT AXIS_D0Q2S7A1_F translation detector AXIS_D0Q2S7A1 1 0 0 0 0 0 . . AXIS_D0Q2S7A1_S translation detector AXIS_D0Q2S7A1 0 1 0 0 0 0 . . AXIS_D0Q3_ROT rotation detector AXIS_D0 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q3 translation detector AXIS_D0 . . . -41.247903125 -50.441634375 0.0 0.0 AXIS_D0Q3_ROT AXIS_D0Q3S0_ROT rotation detector AXIS_D0Q3 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q3S0 translation detector AXIS_D0Q3 . . . 23.1056375 11.6367625 0.0 180.12436 AXIS_D0Q3S0_ROT AXIS_D0Q3S0A0_ROT rotation detector AXIS_D0Q3S0 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q3S0A0 translation detector AXIS_D0Q3S0 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q3S0A0_ROT AXIS_D0Q3S0A0_F translation detector AXIS_D0Q3S0A0 1 0 0 0 0 0 . . AXIS_D0Q3S0A0_S translation detector AXIS_D0Q3S0A0 0 1 0 0 0 0 . . AXIS_D0Q3S0A1_ROT rotation detector AXIS_D0Q3S0 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q3S0A1 translation detector AXIS_D0Q3S0 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q3S0A1_ROT AXIS_D0Q3S0A1_F translation detector AXIS_D0Q3S0A1 1 0 0 0 0 0 . . AXIS_D0Q3S0A1_S translation detector AXIS_D0Q3S0A1 0 1 0 0 0 0 . . AXIS_D0Q3S1_ROT rotation detector AXIS_D0Q3 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q3S1 translation detector AXIS_D0Q3 . . . 23.1298375 34.9864625 0.0 180.00263 AXIS_D0Q3S1_ROT AXIS_D0Q3S1A0_ROT rotation detector AXIS_D0Q3S1 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q3S1A0 translation detector AXIS_D0Q3S1 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q3S1A0_ROT AXIS_D0Q3S1A0_F translation detector AXIS_D0Q3S1A0 1 0 0 0 0 0 . . AXIS_D0Q3S1A0_S translation detector AXIS_D0Q3S1A0 0 1 0 0 0 0 . . AXIS_D0Q3S1A1_ROT rotation detector AXIS_D0Q3S1 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q3S1A1 translation detector AXIS_D0Q3S1 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q3S1A1_ROT AXIS_D0Q3S1A1_F translation detector AXIS_D0Q3S1A1 1 0 0 0 0 0 . . AXIS_D0Q3S1A1_S translation detector AXIS_D0Q3S1A1 0 1 0 0 0 0 . . AXIS_D0Q3S2_ROT rotation detector AXIS_D0Q3 -0.0 -0.0 -1.0 0 0 0 . . AXIS_D0Q3S2 translation detector AXIS_D0Q3 . . . 10.9572375 -23.5830375 0.0 269.55191 AXIS_D0Q3S2_ROT AXIS_D0Q3S2A0_ROT rotation detector AXIS_D0Q3S2 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q3S2A0 translation detector AXIS_D0Q3S2 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q3S2A0_ROT AXIS_D0Q3S2A0_F translation detector AXIS_D0Q3S2A0 1 0 0 0 0 0 . . AXIS_D0Q3S2A0_S translation detector AXIS_D0Q3S2A0 0 1 0 0 0 0 . . AXIS_D0Q3S2A1_ROT rotation detector AXIS_D0Q3S2 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q3S2A1 translation detector AXIS_D0Q3S2 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q3S2A1_ROT AXIS_D0Q3S2A1_F translation detector AXIS_D0Q3S2A1 1 0 0 0 0 0 . . AXIS_D0Q3S2A1_S translation detector AXIS_D0Q3S2A1 0 1 0 0 0 0 . . AXIS_D0Q3S3_ROT rotation detector AXIS_D0Q3 -0.0 -0.0 -1.0 0 0 0 . . AXIS_D0Q3S3 translation detector AXIS_D0Q3 . . . 34.4180375 -23.4818375 0.0 269.74206 AXIS_D0Q3S3_ROT AXIS_D0Q3S3A0_ROT rotation detector AXIS_D0Q3S3 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q3S3A0 translation detector AXIS_D0Q3S3 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q3S3A0_ROT AXIS_D0Q3S3A0_F translation detector AXIS_D0Q3S3A0 1 0 0 0 0 0 . . AXIS_D0Q3S3A0_S translation detector AXIS_D0Q3S3A0 0 1 0 0 0 0 . . AXIS_D0Q3S3A1_ROT rotation detector AXIS_D0Q3S3 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q3S3A1 translation detector AXIS_D0Q3S3 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q3S3A1_ROT AXIS_D0Q3S3A1_F translation detector AXIS_D0Q3S3A1 1 0 0 0 0 0 . . AXIS_D0Q3S3A1_S translation detector AXIS_D0Q3S3A1 0 1 0 0 0 0 . . AXIS_D0Q3S4_ROT rotation detector AXIS_D0Q3 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q3S4 translation detector AXIS_D0Q3 . . . -24.1283625 -11.5336375 0.0 359.81971 AXIS_D0Q3S4_ROT AXIS_D0Q3S4A0_ROT rotation detector AXIS_D0Q3S4 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q3S4A0 translation detector AXIS_D0Q3S4 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q3S4A0_ROT AXIS_D0Q3S4A0_F translation detector AXIS_D0Q3S4A0 1 0 0 0 0 0 . . AXIS_D0Q3S4A0_S translation detector AXIS_D0Q3S4A0 0 1 0 0 0 0 . . AXIS_D0Q3S4A1_ROT rotation detector AXIS_D0Q3S4 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q3S4A1 translation detector AXIS_D0Q3S4 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q3S4A1_ROT AXIS_D0Q3S4A1_F translation detector AXIS_D0Q3S4A1 1 0 0 0 0 0 . . AXIS_D0Q3S4A1_S translation detector AXIS_D0Q3S4A1 0 1 0 0 0 0 . . AXIS_D0Q3S5_ROT rotation detector AXIS_D0Q3 0.0 0.0 1.0 0 0 0 . . AXIS_D0Q3S5 translation detector AXIS_D0Q3 . . . -24.1701625 -34.9548375 0.0 359.99883 AXIS_D0Q3S5_ROT AXIS_D0Q3S5A0_ROT rotation detector AXIS_D0Q3S5 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q3S5A0 translation detector AXIS_D0Q3S5 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q3S5A0_ROT AXIS_D0Q3S5A0_F translation detector AXIS_D0Q3S5A0 1 0 0 0 0 0 . . AXIS_D0Q3S5A0_S translation detector AXIS_D0Q3S5A0 0 1 0 0 0 0 . . AXIS_D0Q3S5A1_ROT rotation detector AXIS_D0Q3S5 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q3S5A1 translation detector AXIS_D0Q3S5 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q3S5A1_ROT AXIS_D0Q3S5A1_F translation detector AXIS_D0Q3S5A1 1 0 0 0 0 0 . . AXIS_D0Q3S5A1_S translation detector AXIS_D0Q3S5A1 0 1 0 0 0 0 . . AXIS_D0Q3S6_ROT rotation detector AXIS_D0Q3 -0.0 -0.0 -1.0 0 0 0 . . AXIS_D0Q3S6 translation detector AXIS_D0Q3 . . . -33.3089625 23.4474625 0.0 269.67299 AXIS_D0Q3S6_ROT AXIS_D0Q3S6A0_ROT rotation detector AXIS_D0Q3S6 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q3S6A0 translation detector AXIS_D0Q3S6 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q3S6A0_ROT AXIS_D0Q3S6A0_F translation detector AXIS_D0Q3S6A0 1 0 0 0 0 0 . . AXIS_D0Q3S6A0_S translation detector AXIS_D0Q3S6A0 0 1 0 0 0 0 . . AXIS_D0Q3S6A1_ROT rotation detector AXIS_D0Q3S6 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q3S6A1 translation detector AXIS_D0Q3S6 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q3S6A1_ROT AXIS_D0Q3S6A1_F translation detector AXIS_D0Q3S6A1 1 0 0 0 0 0 . . AXIS_D0Q3S6A1_S translation detector AXIS_D0Q3S6A1 0 1 0 0 0 0 . . AXIS_D0Q3S7_ROT rotation detector AXIS_D0Q3 -0.0 -0.0 -1.0 0 0 0 . . AXIS_D0Q3S7 translation detector AXIS_D0Q3 . . . -10.0032625 23.4826625 0.0 269.67561 AXIS_D0Q3S7_ROT AXIS_D0Q3S7A0_ROT rotation detector AXIS_D0Q3S7 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q3S7A0 translation detector AXIS_D0Q3S7 . . . -10.835 0.0 0.0 0.0 AXIS_D0Q3S7A0_ROT AXIS_D0Q3S7A0_F translation detector AXIS_D0Q3S7A0 1 0 0 0 0 0 . . AXIS_D0Q3S7A0_S translation detector AXIS_D0Q3S7A0 0 1 0 0 0 0 . . AXIS_D0Q3S7A1_ROT rotation detector AXIS_D0Q3S7 0.0 0.0 0.0 0 0 0 . . AXIS_D0Q3S7A1 translation detector AXIS_D0Q3S7 . . . 10.835 0.0 0.0 0.0 AXIS_D0Q3S7A1_ROT AXIS_D0Q3S7A1_F translation detector AXIS_D0Q3S7A1 1 0 0 0 0 0 . . AXIS_D0Q3S7A1_S translation detector AXIS_D0Q3S7A1 0 1 0 0 0 0 . .
_axis.depends_on
CIF
The value of _axis.depends_on specifies the next outermost
axis upon which this axis depends, unless _axis.rotation_axis is specified, in which case, _axis.rotation_axis is next outermost and _axis.depends_on is second outermost.
This item is a pointer to _axis.id in the same category.
_axis.equipment
CIF
The value of _axis.equipment specifies the type of
equipment using the axis: 'goniometer', 'detector', 'gravity', 'source' or 'general'.
_axis.equipment_component
CIF
The value of _axis.equipment_component specifies
an arbitrary identifier of a component of the equipment to which the axis belongs, such as 'detector_arm' or 'detector_module'.
_axis.offset[1]
CIF
The [1] element of the three-element vector used to specify
the offset to the base of a rotation or translation axis.
The vector is specified in millimetres.
_axis.offset[2]
CIF
The [2] element of the three-element vector used to specify
the offset to the base of a rotation or translation axis.
The vector is specified in millimetres.
_axis.offset[3]
CIF
The [3] element of the three-element vector used to specify
the offset to the base of a rotation or translation axis.
The vector is specified in millimetres.
_axis.id
CIF
Data names: _axis.id _array_structure_list_axis.axis_id _diffrn_detector_axis.axis_id _diffrn_measurement_axis.axis_id _diffrn_scan_axis.axis_id _diffrn_scan_frame_axis.axis_id
The value of _axis.id must uniquely identify
each axis relevant to the experiment. Note that multiple pieces of equipment may share the same axis (e.g. a twotheta arm), so the category key for AXIS also includes the equipment.
_axis.rotation
CIF
The value of _axis.rotation specifies
the fixed base rotation angle for _axis.rotation_axis
to which the value of any frame-by-frame setting, if any, should
be added. Normally, only the fixed value would be given.
_axis.rotation_axis
CIF
The value of _axis.rotation_axis specifies
an optional additional dependency for this axis to be applied
after applying _axis.depends_on.
This item is a pointer to _axis.id in the same category.
_axis.system
CIF
The value of _axis.system specifies the coordinate
system used to define the axis: 'laboratory', 'McStas', 'direct', 'orthogonal', 'reciprocal' or 'abstract'.
_axis.type
CIF
The value of _axis.type specifies the type of
axis: 'rotation' or 'translation' (or 'general' when the type is not relevant, as for gravity).
_axis.vector[1]
CIF
The [1] element of the three-element vector used to specify
the direction of a rotation or translation axis. The vector should be normalized to be a unit vector and is dimensionless.
_axis.vector[2]
CIF
The [2] element of the three-element vector used to specify
the direction of a rotation or translation axis. The vector should be normalized to be a unit vector and is dimensionless.
_axis.vector[3]
CIF
The [3] element of the three-element vector used to specify
the direction of a rotation or translation axis. The vector should be normalized to be a unit vector and is dimensionless.
_axis.variant
CIF
The value of _axis.variant gives the variant
to which the given AXIS row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
DIFFRN_DATA_FRAME
CIF
Data items in the DIFFRN_DATA_FRAME category record
the details about each frame of data.
The items in this category were previously in a DIFFRN_FRAME_DATA category, which is now deprecated. The items from the old category are provided as aliases but should not be used for new work.
Example:
loop_ _diffrn_data_frame.id _diffrn_data_frame.detector_element_id _diffrn_data_frame.array_id _diffrn_data_frame.binary_id frame_1 d1_ccd_1 array_1 1 frame_1 d1_ccd_2 array_1 2 frame_1 d1_ccd_3 array_1 3 frame_1 d1_ccd_4 array_1 4
_diffrn_data_frame.array_id
CIF
This item is a pointer to _array_structure.id in the
ARRAY_STRUCTURE category.
Also known as: _diffrn_frame_data.array_id
_diffrn_data_frame.array_section_id
CIF
This item is a pointer to _array_structure_list_section.id
in the ARRAY_STRUCTURE_LIST_SECTION category.
_diffrn_data_frame.binary_id
CIF
This item is a pointer to _array_data.binary_id in the
ARRAY_DATA category.
Also known as: _diffrn_frame_data.binary_id
_diffrn_data_frame.center_fast
CIF
The value of _diffrn_data_frame.center_fast is
the fast index axis beam centre position relative to the detector
element face in the units specified in the data item
_diffrn_data_frame.center_units along the fast
axis of the detector from the centre of the first pixel to
the point at which the Z axis (which should be collinear with the
beam) intersects the face of the detector, if in fact it does.
At the time of the measurement the current settings of
the detector positioner for the given frame are used.
It is important to note that for measurements in mm, the sense of the axis is used, rather than the sign of the pixel-to-pixel increments.
_diffrn_data_frame.center_slow
CIF
The value of _diffrn_data_frame.center_slow is
the slow index axis beam centre position relative to the detector
element face in the units specified in the data item
_diffrn_data_frame.center_units along the slow
axis of the detector from the centre of the first pixel to
the point at which the Z axis (which should be collinear with the
beam) intersects the face of the detector, if in fact it does.
At the time of the measurement the current settings of
the detector positioner for the given frame are used.
It is important to note that the sense of the axis is used, rather than the sign of the pixel-to-pixel increments.
_diffrn_data_frame.center_derived
CIF
The value of _diffrn_data_frame.center_derived
is assumed to be 'yes', i.e. that values of _diffrn_data_frame.center_fast and _diffrn_data_frame.center_slow are derived from the axis settings rather than measured.
_diffrn_data_frame.center_units
CIF
The value of _diffrn_data_frame.center_units
specifies the units in which the values of _diffrn_data_frame.center_fast and _diffrn_data_frame.center_slow are presented. The default is 'mm' for millimetres. The alternatives are 'pixels' and 'bins'. In all cases the centre distances are measured from the centre of the first pixel, i.e. in a 2x2 binning, the measuring origin is offset from the centres of the bins by one half pixel towards the first pixel.
If 'bins' is specified, the data in _array_intensities.pixel_fast_bin_size, _array_intensities.pixel_slow_bin_size, and _array_intensities.pixel_binning_method are used to define the binning scheme.
_diffrn_data_frame.detector_element_id
CIF
This item is a pointer to _diffrn_detector_element.id
in the DIFFRN_DETECTOR_ELEMENT category.
Also known as: _diffrn_frame_data.detector_element_id
_diffrn_data_frame.id
CIF
Data names: _diffrn_data_frame.id _diffrn_refln.frame_id _diffrn_scan.frame_id_start _diffrn_scan.frame_id_end _diffrn_scan_frame.frame_id _diffrn_scan_frame_axis.frame_id _diffrn_scan_frame_monitor.frame_id
The value of _diffrn_data_frame.id must uniquely identify
each complete frame of data.
Also known as: _diffrn_frame_data.id
_diffrn_data_frame.details
CIF
The value of _diffrn_data_frame.details should give a
description of special aspects of each frame of data.
This is an appropriate location in which to record information from vendor headers as presented in those headers, but it should never be used as a substitute for providing the fully parsed information within the appropriate imgCIF/CBF categories.
Normally, when a conversion from a miniCBF has been done the data from _array_data.header_convention should be transferred to this data item and _array_data.header_convention should be removed.
Also known as: _diffrn_frame_data.details
Example:
HEADER_BYTES = 512; DIM = 2; BYTE_ORDER = big_endian; TYPE = unsigned_short; SIZE1 = 3072; SIZE2 = 3072; PIXEL_SIZE = 0.102588; BIN = 2x2; DETECTOR_SN = 901; TIME = 29.945155; DISTANCE = 200.000000; PHI = 85.000000; OSC_START = 85.000000; OSC_RANGE = 1.000000; WAVELENGTH = 0.979381; BEAM_CENTER_X = 157.500000; BEAM_CENTER_Y = 157.500000; PIXEL SIZE = 0.102588; OSCILLATION RANGE = 1; EXPOSURE TIME = 29.9452; TWO THETA = 0; BEAM CENTRE = 157.5 157.5;
_diffrn_data_frame.variant
CIF
The value of _diffrn_data_frame.variant gives the variant
to which the given DIFFRN_DATA_FRAME row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
DIFFRN_DETECTOR
CIF
Data items in the DIFFRN_DETECTOR category describe the
detector used to measure the scattered radiation, including any analyser and post-sample collimation.
Example:
_diffrn_detector.diffrn_id 'd1' _diffrn_detector.detector 'multiwire' _diffrn_detector.type 'Siemens'
_diffrn_detector.details
CIF
A description of special aspects of the radiation detector.
Also known as: _diffrn_detector_details
Example:
slow mode
_diffrn_detector.detector
CIF
The general class of the radiation detector.
Examples:
photographic film
scintillation counter
CCD plate
BF~3~ counter
_diffrn_detector.diffrn_id
CIF
This data item is a pointer to _diffrn.id in the DIFFRN
category.
The value of _diffrn.id uniquely defines a set of diffraction data.
_diffrn_detector.dtime
CIF
The deadtime in microseconds of the detector(s) used to
measure the diffraction intensities.
_diffrn_detector.id
CIF
Data names: _diffrn_detector.id _diffrn_detector_axis.detector_id _diffrn_scan_frame_monitor.detector_id
The value of _diffrn_detector.id must uniquely identify
each detector used to collect each diffraction data set.
If the value of _diffrn_detector.id is not given, it is implicitly equal to the value of _diffrn_detector.diffrn_id.
_diffrn_detector.layer_thickness
CIF
The thickness in mm of the sensing layer of the detector
for use in angular corrections.
_diffrn_detector.gain_setting
CIF
The gain setting for detector. This is a text string usually
reflecting a detector setting that may have a simple or very
complex relationship with the value of
_array_intensities.gain
and should not be used directly for computations without
further information.
This tag is provided for completeness in recording the settings of an experiment using a detector with a panel-switch, jumper or control command that allows a choice of gain settings.
_diffrn_detector.number_of_axes
CIF
The value of _diffrn_detector.number_of_axes gives the
number of axes of the positioner for the detector identified
by _diffrn_detector.id.
The word 'positioner' is a general term used in instrumentation design for devices that are used to change the positions of portions of apparatus by linear translation, rotation or combinations of such motions.
Axes which are used to provide a coordinate system for the face of an area detector should not be counted for this data item.
The description of each axis should be provided by entries in DIFFRN_DETECTOR_AXIS.
_diffrn_detector.type
CIF
The make, model or name of the detector device used.
Also known as: _diffrn_detector_type
_diffrn_detector.variant
CIF
The value of _diffrn_detector.variant gives the variant
to which the given DIFFRN_DETECTOR row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
DIFFRN_DETECTOR_AXIS
CIF
Data items in the DIFFRN_DETECTOR_AXIS category associate
axes with detectors.
_diffrn_detector_axis.axis_id
CIF
This data item is a pointer to _axis.id in
the AXIS category.
_diffrn_detector_axis.detector_id
CIF
This data item is a pointer to _diffrn_detector.id in
the DIFFRN_DETECTOR category.
This item was previously named _diffrn_detector_axis.id
which is now a deprecated name. The old name is
provided as an alias but should not be used for new work.
Also known as: _diffrn_detector_axis.id
_diffrn_detector_axis.variant
CIF
The value of _diffrn_detector_axis.variant gives the variant
to which the given DIFFRN_DETECTOR_AXIS row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
_diffrn_detector_axis.id
CIF
This data item is a pointer to _diffrn_detector.id in
the DIFFRN_DETECTOR category.
DEPRECATED -- DO NOT USE
DIFFRN_DETECTOR_ELEMENT
CIF
Data items in the DIFFRN_DETECTOR_ELEMENT category record
the details about spatial layout and other characteristics of each element of a detector which may have multiple elements.
In most cases, giving more detailed information in ARRAY_STRUCTURE_LIST and ARRAY_STRUCTURE_LIST_AXIS is preferable to simply providing the centre of the detector element.
Example:
loop_ _diffrn_detector_element.detector_id _diffrn_detector_element.id _diffrn_detector_element.reference_center_fast _diffrn_detector_element.reference_center_slow _diffrn_detector_element.reference_center_units d1 d1_ccd_1 201.5 201.5 mm d1 d1_ccd_2 -1.8 201.5 mm d1 d1_ccd_3 201.6 -1.4 mm d1 d1_ccd_4 -1.7 -1.5 mm
_diffrn_detector_element.id
CIF
Data names: _diffrn_detector_element.id
The value of _diffrn_detector_element.id must uniquely
identify each element of a detector.
_diffrn_detector_element.detector_id
CIF
This item is a pointer to _diffrn_detector.id
in the DIFFRN_DETECTOR category.
_diffrn_detector_element.reference_center_fast
CIF
The value of _diffrn_detector_element.reference_center_fast is
the fast index axis beam centre position relative to the detector
element face in the units specified in the data item
_diffrn_detector_element.reference_center_units along the fast
axis of the detector from the centre of the first pixel to
the point at which the Z-axis (which should be collinear with the
beam) intersects the face of the detector, if in fact it does.
At the time of the measurement all settings of the detector
positioner should be at their reference settings. If more than
one reference setting has been used the value given should be
representative of the beam centre as determined from the ensemble
of settings.
It is important to note that for measurements in mm, the sense of the axis is used, rather than the sign of the pixel-to-pixel increments.
_diffrn_detector_element.reference_center_slow
CIF
The value of _diffrn_detector_element.reference_center_slow is
the slow index axis beam centre position relative to the detector
element face in the units specified in the data item
_diffrn_detector_element.reference_center_units along the slow
axis of the detector from the centre of the first pixel to
the point at which the Z-axis (which should be collinear with the
beam) intersects the face of the detector, if in fact it does.
At the time of the measurement all settings of the detector
positioner should be at their reference settings. If more than
one reference setting has been used the value given should be
representative of the beam centre as determined from the ensemble
of settings.
It is important to note that the sense of the axis is used, rather than the sign of the pixel-to-pixel increments.
_diffrn_detector_element.reference_center_units
CIF
The value of _diffrn_detector_element.reference_center_units
specifies the units in which the values of _diffrn_detector_element.reference_center_fast and _diffrn_detector_element.reference_center_slow are presented. The default is 'mm' for millimetres. The alternatives are 'pixels' and 'bins'. In all cases the centre distances are measured from the centre of the first pixel, i.e. in a 2x2 binning, the measuring origin is offset from the centres of the bins by one half pixel towards the first pixel.
If 'bins' is specified, the data in _array_intensities.pixel_fast_bin_size, _array_intensities.pixel_slow_bin_size, and _array_intensities.pixel_binning_method are used to define the binning scheme.
_diffrn_detector_element.variant
CIF
The value of _diffrn_detector_element.variant gives the variant
to which the given DIFFRN_DETECTOR_ELEMENT row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
_diffrn_detector_element.center[1]
CIF
The value of _diffrn_detector_element.center[1] is the X
component of the distortion-corrected beam centre in millimetres from the (0, 0) (lower-left) corner of the detector element viewed from the sample side.
The X and Y axes are the laboratory coordinate system coordinates defined in the AXIS category measured when all positioning axes for the detector are at their zero settings. If the resulting X or Y axis is then orthogonal to the detector, the Z axis is used instead of the orthogonal axis.
Because of ambiguity about the setting used to determine this
centre, use of this data item is deprecated. The data item
_diffrn_data_frame.center_fast
which is referenced to the detector coordinate system and not
directly to the laboratory coordinate system should be used
instead.
_diffrn_detector_element.center[2]
CIF
The value of _diffrn_detector_element.center[2] is the Y
component of the distortion-corrected beam centre in millimetres from the (0, 0) (lower-left) corner of the detector element viewed from the sample side.
The X and Y axes are the laboratory coordinate system coordinates defined in the AXIS category measured when all positioning axes for the detector are at their zero settings. If the resulting X or Y axis is then orthogonal to the detector, the Z axis is used instead of the orthogonal axis.
Because of ambiguity about the setting used to determine this
centre, use of this data item is deprecated. The data item
_diffrn_data_frame.center_slow
which is referenced to the detector coordinate system and not
directly to the laboratory coordinate system should be used
instead.
DIFFRN_FRAME_DATA
CIF
Data items in the DIFFRN_FRAME_DATA category record
the details about each frame of data.
The items in this category are now in the DIFFRN_DATA_FRAME category.
The items in the DIFFRN_FRAME_DATA category
are now deprecated. The items from this category
are provided as aliases in the 1.0 dictionary
or, in the case of _diffrn_frame_data.details,
in the 1.4 dictionary. THESE ITEMS SHOULD NOT
BE USED FOR NEW WORK.
The items from the old category are provided in this dictionary for completeness but should not be used or cited. To avoid confusion, the example has been removed and the redundant parent-child links to other categories have been removed.
All _item.mandatory_code values have been changed to 'no'.
Example:
# EXAMPLE REMOVED #
_diffrn_frame_data.array_id
CIF
This item is a pointer to _array_structure.id in the
ARRAY_STRUCTURE category.
DEPRECATED -- DO NOT USE
_diffrn_frame_data.binary_id
CIF
This item is a pointer to _array_data.binary_id in the
ARRAY_STRUCTURE category.
DEPRECATED -- DO NOT USE
_diffrn_frame_data.detector_element_id
CIF
This item is a pointer to _diffrn_detector_element.id
in the DIFFRN_DETECTOR_ELEMENT category.
DEPRECATED -- DO NOT USE
_diffrn_frame_data.id
CIF
Data names: _diffrn_frame_data.id
The value of _diffrn_frame_data.id must uniquely identify
each complete frame of data.
DEPRECATED -- DO NOT USE
_diffrn_frame_data.details
CIF
The value of _diffrn_frame_data.details should give a
description of special aspects of each frame of data.
DEPRECATED -- DO NOT USE
DIFFRN_MEASUREMENT
CIF
Data items in the DIFFRN_MEASUREMENT category record details
about the device used to orient and/or position the crystal during data measurement and the manner in which the diffraction data were measured.
Examples:
_diffrn_measurement.diffrn_id 'd1' _diffrn_measurement.device '3-circle camera' _diffrn_measurement.device_type 'Supper model X' _diffrn_measurement.device_details 'none' _diffrn_measurement.method 'omega scan' _diffrn_measurement.details ; 440 frames, 0.20 degrees, 150 sec, detector distance 12 cm, detector angle 22.5 degrees ;
_diffrn_measurement.diffrn_id 's1' _diffrn_measurement.device_type 'Philips PW1100/20 diffractometer' _diffrn_measurement.method 'theta/2theta (/2)'
_diffrn_measurement.device
CIF
Data names: _diffrn_measurement.device _diffrn_measurement_axis.measurement_device
The general class of goniometer or device used to support
and orient the specimen.
If the value of _diffrn_measurement.device is not given, it is implicitly equal to the value of _diffrn_measurement.diffrn_id.
Either _diffrn_measurement.device or _diffrn_measurement.id may be used to link to other categories. If the experimental setup admits multiple devices, then _diffrn_measurement.id is used to provide a unique link.
Also known as: _diffrn_measurement_device
Examples:
3-circle camera
4-circle camera
kappa-geometry camera
oscillation camera
precession camera
_diffrn_measurement.device_details
CIF
A description of special aspects of the device used to
measure the diffraction intensities.
Also known as: _diffrn_measurement_device_details
Example:
commercial goniometer modified locally to allow for 90 arc
_diffrn_measurement.device_type
CIF
The make, model or name of the measurement device
(goniometer) used.
Also known as: _diffrn_measurement_device_type
Examples:
Supper model q
Huber model r
Enraf-Nonius model s
home-made
_diffrn_measurement.diffrn_id
CIF
This data item is a pointer to _diffrn.id in the DIFFRN
category.
_diffrn_measurement.details
CIF
A description of special aspects of the intensity
measurement.
Also known as: _diffrn_measurement_details
Example:
440 frames, 0.20 degrees, 150 sec, detector distance 12 cm, detector angle 22.5 degrees
_diffrn_measurement.id
CIF
Data names: _diffrn_measurement.id _diffrn_measurement_axis.measurement_id
The value of _diffrn_measurement.id must uniquely identify
the set of mechanical characteristics of the device used to orient and/or position the sample used during the collection of each diffraction data set.
If the value of _diffrn_measurement.id is not given, it is implicitly equal to the value of _diffrn_measurement.diffrn_id.
Either _diffrn_measurement.device or _diffrn_measurement.id may be used to link to other categories. If the experimental setup admits multiple devices, then _diffrn_measurement.id is used to provide a unique link.
_diffrn_measurement.method
CIF
Method used to measure intensities.
Also known as: _diffrn_measurement_method
Example:
profile data from theta/2theta (/2) scans
_diffrn_measurement.number_of_axes
CIF
The value of _diffrn_measurement.number_of_axes gives the
number of axes of the positioner for the goniometer or
other sample orientation or positioning device identified
by _diffrn_measurement.id.
The description of the axes should be provided by entries in DIFFRN_MEASUREMENT_AXIS.
_diffrn_measurement.sample_detector_distance
CIF
The value of _diffrn_measurement.sample_detector_distance gives
the unsigned distance in millimetres from the sample to the detector along the beam. Normally this distance is derived from the axis settings.
_diffrn_measurement.sample_detector_distance_derived
CIF
The value of _diffrn_measurement.sample_detector_distance_derived
is assumed to be 'yes', i.e. that value of
_diffrn_measurement.sample_detector_distance
is derived from the axis settings rather than measured.
_diffrn_measurement.sample_detector_voffset
CIF
The value of _diffrn_measurement.sample_detector_voffset gives
the signed distance in millimetres in the vertical direction (positive for up) from the centre of the beam to the centre of the detector.
_diffrn_measurement.specimen_support
CIF
The physical device used to support the crystal during data
collection.
Also known as: _diffrn_measurement_specimen_support
Examples:
glass capillary
quartz capillary
fiber
metal loop
_diffrn_measurement.variant
CIF
The value of _diffrn_measurement.variant gives the variant
to which the given DIFFRN_MEASUREMENT row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
DIFFRN_MEASUREMENT_AXIS
CIF
Data items in the DIFFRN_MEASUREMENT_AXIS category associate
axes with goniometers.
_diffrn_measurement_axis.axis_id
CIF
This data item is a pointer to _axis.id in
the AXIS category.
_diffrn_measurement_axis.measurement_device
CIF
This data item is a pointer to _diffrn_measurement.device
in the DIFFRN_MEASUREMENT category.
_diffrn_measurement_axis.measurement_id
CIF
This data item is a pointer to _diffrn_measurement.id in
the DIFFRN_MEASUREMENT category.
This item was previously named _diffrn_measurement_axis.id,
which is now a deprecated name. The old name is
provided as an alias but should not be used for new work.
Also known as: _diffrn_measurement_axis.id
_diffrn_measurement_axis.variant
CIF
The value of _diffrn_measurement_axis.variant gives the variant
to which the given DIFFRN_MEASUREMENT_AXIS row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
_diffrn_measurement_axis.id
CIF
This data item is a pointer to _diffrn_measurement.id in
the DIFFRN_MEASUREMENT category.
DEPRECATED -- DO NOT USE
DIFFRN_RADIATION
CIF
Data items in the DIFFRN_RADIATION category describe
the radiation used for measuring diffraction intensities, its collimation and monochromatization before the sample.
Post-sample treatment of the beam is described by data items in the DIFFRN_DETECTOR category.
Examples:
_diffrn_radiation.diffrn_id 'set1'
_diffrn_radiation.collimation '0.3 mm double pinhole' _diffrn_radiation.monochromator 'graphite' _diffrn_radiation.type 'Cu K' _diffrn_radiation.wavelength_id 1
_diffrn_radiation.wavelength_id 1 _diffrn_radiation.type 'Cu K' _diffrn_radiation.monochromator 'graphite'
_diffrn_radiation.beam_width
CIF
Full width at half maximum of the beam incident on the sample
in the plane of polarization (or horizontally if unpolarized).
_diffrn_radiation.beam_width
CIF
Full width at half maximum of the beam incident on the sample
orthogonal to the plane of polarization (or vertically if unpolarized).
_diffrn_radiation.beam_flux
CIF
The average flux integrated over the beam incident on the sample.
_diffrn_radiation.collimation
CIF
The collimation or focusing applied to the radiation.
Also known as: _diffrn_radiation_collimation
Examples:
0.3 mm double-pinhole
0.5 mm
focusing mirrors
_diffrn_radiation.diffrn_id
CIF
This data item is a pointer to _diffrn.id in the DIFFRN
category.
_diffrn_radiation.div_x_source
CIF
Beam crossfire in degrees parallel to the laboratory X axis
(see AXIS category).
This is a characteristic of the X-ray beam as it illuminates the sample (or specimen) after all monochromation and collimation.
This is the standard uncertainty (estimated standard deviation, e.s.d.) of the directions of photons in the XZ plane around the mean source beam direction.
Note that for some synchrotrons this value is specified in milliradians, in which case a conversion is needed. To convert a value in milliradians to a value in degrees, multiply by 0.180 and divide by .
_diffrn_radiation.div_y_source
CIF
Beam crossfire in degrees parallel to the laboratory Y axis
(see AXIS category).
This is a characteristic of the X-ray beam as it illuminates the sample (or specimen) after all monochromation and collimation.
This is the standard uncertainty (estimated standard deviation, e.s.d.) of the directions of photons in the YZ plane around the mean source beam direction.
Note that for some synchrotrons this value is specified in milliradians, in which case a conversion is needed. To convert a value in milliradians to a value in degrees, multiply by 0.180 and divide by .
_diffrn_radiation.div_x_y_source
CIF
Beam crossfire correlation in degrees squared between the
crossfire laboratory X-axis component and the crossfire laboratory Y-axis component (see AXIS category).
This is a characteristic of the X-ray beam as it illuminates the sample (or specimen) after all monochromation and collimation.
This is the mean of the products of the deviations of the direction of each photon in XZ plane times the deviations of the direction of the same photon in the YZ plane around the mean source beam direction. This will be zero for uncorrelated crossfire.
Note that for some synchrotrons, this value is specified in milliradians squared, in which case a conversion is needed. To convert a value in milliradians squared to a value in degrees squared, multiply by 0.180^2^ and divide by ^2^.
_diffrn_radiation.filter_edge
CIF
Absorption edge in ngstrms of the radiation filter used.
Also known as: _diffrn_radiation_filter_edge
_diffrn_radiation.inhomogeneity
CIF
Half-width in millimetres of the incident beam in the
direction perpendicular to the diffraction plane.
Also known as: _diffrn_radiation_inhomogeneity
_diffrn_radiation.monochromator
CIF
The method used to obtain monochromatic radiation. If a
monochromator crystal is used, the material and the indices of the Bragg reflection are specified.
Also known as: _diffrn_radiation_monochromator
Examples:
Zr filter
Ge 220
none
equatorial mounted graphite
_diffrn_radiation.polarisn_norm
CIF
The angle in degrees, as viewed from the specimen, between the
perpendicular component of the polarization and the diffraction plane. See _diffrn_radiation_polarisn_ratio.
Also known as: _diffrn_radiation_polarisn_norm
_diffrn_radiation.polarisn_norm_esd
CIF
The standard uncertainty (estimated standard deviation, e.s.d.) of
_diffrn_radiation.polarisn_norm,
the angle in degrees, as viewed from the specimen, between the
perpendicular component of the polarization and the diffraction
plane. See _diffrn_radiation_polarisn_ratio.
_diffrn_radiation.polarisn_ratio
CIF
Polarization ratio of the diffraction beam incident on the
crystal. This is the ratio of the perpendicularly polarized to
the parallel polarized component of the radiation. The
perpendicular component forms an angle of
_diffrn_radiation.polarisn_norm to the normal to the
diffraction plane of the sample (i.e. the plane containing
the incident and reflected beams).
Also known as: _diffrn_radiation_polarisn_ratio
_diffrn_radiation.polarisn_ratio_esd
CIF
The standard uncertainty (estimated standard deviation, e.s.d.) of
_diffrn_radiation.polarisn_ratio,
the polarization ratio of the diffraction beam incident on the
crystal.
_diffrn_radiation.polarizn_source_norm
CIF
The angle in degrees, as viewed from the specimen, between
the normal to the polarization plane and the laboratory Y-axis as defined in the AXIS category.
Note that this is the angle of polarization of the source photons, either directly from a synchrotron beamline or from a monochromator.
This differs from the value of _diffrn_radiation.polarisn_norm in that _diffrn_radiation.polarisn_norm refers to polarization relative to the diffraction plane rather than to the laboratory axis system.
In the case of an unpolarized beam, or a beam with true circular polarization, in which no single plane of polarization can be determined, the plane should be taken as the XZ plane and the angle as 0.
See _diffrn_radiation.polarizn_source_ratio.
_diffrn_radiation.polarizn_source_norm_esd
CIF
The standard uncertainty (estimated standard deviation, e.s.d.)
of _diffrn_radiation.polarizn_source_norm,
the angle in degrees, as viewed from the specimen, between
the normal to the polarization plane and the laboratory
Y-axis as defined in the AXIS category.
_diffrn_radiation.polarizn_source_ratio
CIF
The quantity (Ip-In)/(Ip+In), where Ip is the intensity
(amplitude squared) of the electric vector in the plane of polarization and In is the intensity (amplitude squared) of the electric vector in the plane of the normal to the plane of polarization.
In the case of an unpolarized beam, or a beam with true circular polarization, in which no single plane of polarization can be determined, the plane is to be taken as the XZ plane and the normal is parallel to the Y axis.
Thus, if there was complete polarization in the plane of polarization, the value of _diffrn_radiation.polarizn_source_ratio would be 1, and for an unpolarized beam _diffrn_radiation.polarizn_source_ratio would have a value of 0.
If the X axis has been chosen to lie in the plane of
polarization, this definition will agree with the definition
of 'MONOCHROMATOR' in the Denzo glossary, and values of near
1 should be expected for a bending-magnet source. However,
if the X-axis were perpendicular to the polarization plane
(not a common choice), then the Denzo value would be the
negative of _diffrn_radiation.polarizn_source_ratio.
See http://www.hkl-xray.com for information on Denzo and Otwinowski & Minor (1997).
This differs both in the choice of ratio and choice of orientation from _diffrn_radiation.polarisn_ratio, which, unlike _diffrn_radiation.polarizn_source_ratio, is unbounded.
Reference: Otwinowski, Z. & Minor, W. (1997). 'Processing of X-ray diffraction data collected in oscillation mode.' Methods Enzymol. 276, 307-326.
_diffrn_radiation.polarizn_source_ratio_esd
CIF
The standard uncertainty (estimated standard deviation, e.s.d.)
of _diffrn_radiation.polarizn_source_ratio,
(Ip-In)/(Ip+In), where Ip is the intensity
(amplitude squared) of the electric vector in the plane of
polarization and In is the intensity (amplitude squared)
of the electric vector in the plane of the normal to the
plane of polarization.
_diffrn_radiation.polarizn_Stokes_I
CIF
The quantity Ip+In+Inp, where Ip is the intensity (amplitude
squared) of the electric vector in the plane of polarization, In is the intensity (amplitude squared) of the electric vector in the plane of the normal to the plane of polarization, and Inp is the intensity (amplitude squared) of the non-polarized (incoherent) electric vector.
This is an average or other representative sample of the scan.
This is the first of the Stokes polarization parameters, I, Q, U, V [also known as I, M, C, S; see Berry et al. (1977)].
If the absolute intensity is not known, the value 1.0 is assumed for I, and all four Stokes parameters are dimensionless. When the absolute intensity is known, all four Stokes parameters are in units of watts per square metre.
Note that, if the polarized intensity Ip+In is required, (Ip+In)^2^ is the sum of Q^2^+U^2^+V^2^.
Reference: Berry, H. H., Gabrielse, G. & Livingston, A. E. (1977). 'Measurement of the Stokes parameters of light', Appl. Optics, 16:12, 3200 -- 3205.
_diffrn_radiation.polarizn_Stokes_I_esd
CIF
The standard uncertainty (estimated standard deviation, e.s.d.)
of _diffrn_radiation.polarizn_Stokes_I,
Ip+In+Inp, where Ip is the intensity (amplitude squared)
of the electric vector in the plane of polarization,
In is the intensity (amplitude squared) of the electric vector
in the plane of the normal to the plane of polarization,
and Inp is the intensity (amplitude squared) of the
non-polarized (incoherent) electric vector.
_diffrn_radiation.polarizn_Stokes_Q
CIF
The quantity (Ip-In)*cos(2*theta), where Ip is the intensity
(amplitude squared) of the electric vector in the plane of polarization, In is the intensity (amplitude squared) of the electric vector in the plane of the normal to the plane of polarization, and theta is the angle as viewed from the specimen, between the normal to the polarization plane and the laboratory Y axis as defined in the AXIS category.
This is an average or other representative sample of the scan.
This is the second of the Stokes polarization parameters, I, Q, U, V [also known as I, M, C, S; see Berry et al. (1977)].
If the absolute intensity is not known, the value 1.0 is assumed for I, and all four Stokes parameters are dimensionless. When the absolute intensity is known, all four Stokes parameters are in units of watts per square metre.
Reference: Berry, H. H., Gabrielse, G. & Livingston, A. E. (1977). 'Measurement of the Stokes parameters of light', Appl. Optics, 16:12, 3200 -- 3205.
_diffrn_radiation.polarizn_Stokes_Q_esd
CIF
The standard uncertainty (estimated standard deviation, e.s.d.)
of _diffrn_radiation.polarizn_Stokes_Q,
(Ip-In)*cos(2*theta), where Ip is the intensity
(amplitude squared) of the electric vector in the plane of
polarization, In is the intensity (amplitude squared) of
the electric vector in the plane of the normal to the
plane of polarization, and theta is the angle as viewed
from the specimen, between the normal to the polarization
plane and the laboratory Y-axis as defined in the
AXIS category.
_diffrn_radiation.polarizn_Stokes_U
CIF
The quantity (Ip-In)*sin(2*theta), where Ip is the intensity
(amplitude squared) of the electric vector in the plane of polarization, In is the intensity (amplitude squared) of the electric vector in the plane of the normal to the plane of polarization, and theta is the angle as viewed from the specimen, between the normal to the polarization plane and the laboratory Y axis as defined in the AXIS category.
This is an average or other representative sample of the scan.
This is the third of the Stokes polarization parameters, I, Q, U, V [also known as I, M, C, S; see Berry at al. (1977)].
If the absolute intensity is not known, the value 1.0 is assumed for I, and all four Stokes parameters are dimensionless. When the absolute intensity is known, all four Stokes parameters are in units of watts per square metre.
Reference: Berry, H. H., Gabrielse, G. & Livingston, A. E. (1977). 'Measurement of the Stokes parameters of light', Appl. Optics, 16:12, 3200 -- 3205.
_diffrn_radiation.polarizn_Stokes_U_esd
CIF
The standard uncertainty (estimated standard deviation, e.s.d.)
of _diffrn_radiation.polarizn_Stokes_U,
(Ip-In)*sin(2*theta), where Ip is the intensity
(amplitude squared) of the electric vector in the plane of
polarization, In is the intensity (amplitude squared) of
the electric vector in the plane of the normal to the
plane of polarization, and theta is the angle as viewed
from the specimen, between the normal to the polarization
plane and the laboratory Y-axis as defined in the
AXIS category.
_diffrn_radiation.polarizn_Stokes_V
CIF
The quantity +/-2*sqrt(IpIn), with a + sign for right-handed
circular polarization, where Ip is the intensity (amplitude squared) of the electric vector in the plane of polarization and In is the intensity (amplitude squared) of the electric vector in the plane of the normal to the plane of polarization, and theta is the angle as viewed from the specimen, between the normal to the polarization plane and the laboratory Y axis as defined in the AXIS category.
This is an average or other representative sample of the scan.
This is the fourth of the Stokes polarization parameters, I, Q, U, V [also known as I, M, C, S; see Berry et al. (1977)].
If the absolute intensity is not known, the value 1.0 is assumed for I, and all four Stokes parameters are dimensionless. When the absolute intensity is known, all four Stokes parameters are in units of watts per square metre.
Reference: Berry, H. H., Gabrielse, G. & Livingston, A. E. (1977). 'Measurement of the Stokes parameters of light', Appl. Optics, 16:12, 3200 -- 3205.
_diffrn_radiation.polarizn_Stokes_V_esd
CIF
The standard uncertainty (estimated standard deviation, e.s.d.)
of _diffrn_radiation.polarizn_Stokes_V,
+/-2*sqrt(IpIn), with a + sign for right-handed circular
polarization, where Ip is the intensity
(amplitude squared) of the electric vector in the plane of
polarization and In is the intensity (amplitude squared) of
the electric vector in the plane of the normal to the
plane of polarization, and theta is the angle as viewed
from the specimen, between the normal to the polarization
plane and the laboratory Y axis as defined in the
AXIS category.
_diffrn_radiation.probe
CIF
Name of the type of radiation used. It is strongly
recommended that this be given so that the probe radiation is clearly specified.
Also known as: _diffrn_radiation_probe
_diffrn_radiation.type
CIF
The nature of the radiation. This is typically a description
of the X-ray wavelength in Siegbahn notation.
Also known as: _diffrn_radiation_type
Examples:
CuK
Cu K~1~
Cu K-L~2,3~
white-beam
_diffrn_radiation.xray_symbol
CIF
The IUPAC symbol for the X-ray wavelength for the probe
radiation.
Also known as: _diffrn_radiation_xray_symbol
_diffrn_radiation.wavelength_id
CIF
This data item is a pointer to
_diffrn_radiation_wavelength.id in the DIFFRN_RADIATION_WAVELENGTH category.
_diffrn_radiation.variant
CIF
The value of _diffrn_radiation.variant gives the variant
to which the given DIFFRN_RADIATION row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
_diffrn_scan_frame.polarizn_Stokes_I_esd
CIF
The standard uncertainty (estimated standard deviation, e.s.d.)
of _diffrn_scan_frame.polarizn_Stokes_I,
Ip+In+Inp, where Ip is the intensity (amplitude squared)
of the electric vector in the plane of polarization,
In is the intensity (amplitude squared) of the electric vector
in the plane of the normal to the plane of polarization,
and Inp is the intensity (amplitude squared) of the
non-polarized (incoherent) electric vector.
_diffrn_scan_frame.polarizn_Stokes_Q_esd
CIF
The standard uncertainty (estimated standard deviation, e.s.d.)
of _diffrn_scan_frame.polarizn_Stokes_Q,
(Ip-In)*cos(2*theta), where Ip is the intensity
(amplitude squared) of the electric vector in the plane of
polarization, In is the intensity (amplitude squared) of
the electric vector in the plane of the normal to the
plane of polarization, and theta is the angle as viewed
from the specimen, between the normal to the polarization
plane and the laboratory Y-axis as defined in the
AXIS category.
_diffrn_scan_frame.polarizn_Stokes_U_esd
CIF
The standard uncertainty (estimated standard deviation, e.s.d.)
of _diffrn_scan_frame.polarizn_Stokes_U,
(Ip-In)*sin(2*theta), where Ip is the intensity
(amplitude squared) of the electric vector in the plane of
polarization, In is the intensity (amplitude squared) of
the electric vector in the plane of the normal to the
plane of polarization, and theta is the angle as viewed
from the specimen, between the normal to the polarization
plane and the laboratory Y-axis as defined in the
AXIS category.
_diffrn_scan_frame.polarizn_Stokes_V_esd
CIF
The standard uncertainty (estimated standard deviation, e.s.d.)
of _diffrn_scan_frame.polarizn_Stokes_V,
+/-2*sqrt(IpIn), with a + sign for right-handed circular
polarization, where Ip is the intensity
(amplitude squared) of the electric vector in the plane of
polarization and In is the intensity (amplitude squared) of
the electric vector in the plane of the normal to the
plane of polarization, and theta is the angle as viewed
from the specimen, between the normal to the polarization
plane and the laboratory Y-axis as defined in the
AXIS category.
DIFFRN_REFLN
CIF
This category redefinition has been added to extend the key of
the standard DIFFRN_REFLN category.
Data items in the DIFFRN_REFLN category record details about
the intensities in the diffraction data set
identified by _diffrn_refln.diffrn_id.
The DIFFRN_REFLN data items refer to individual intensity measurements and must be included in looped lists.
The DIFFRN_REFLNS data items specify the parameters that apply
to all intensity measurements in the particular diffraction
data set identified by _diffrn_reflns.diffrn_id and
_diffrn_refln.frame_id
_diffrn_refln.frame_id
CIF
This item is a pointer to _diffrn_data_frame.id
in the DIFFRN_DATA_FRAME category.
_diffrn_refln.variant
CIF
The value of _diffrn_refln.variant gives the variant
to which the given DIFFRN_REFLN row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
_diffrn_refln.id
CIF
This item is a placeholder for the definition in the
PDBx/mmCIF dictionary.
_diffrn_refln.diffrn_id
CIF
This item is a placeholder for the definition in the
PDBx/mmCIF dictionary
DIFFRN_SCAN
CIF
Data items in the DIFFRN_SCAN category describe the parameters of one
or more scans, relating axis positions to frames.
Examples:
_diffrn_scan.id 1 _diffrn_scan.date_start '2001-11-18T03:26:42' _diffrn_scan.date_end_estimated '2001-11-18T03:36:45' _diffrn_scan.date_end '2001-11-18T03:36:45' _diffrn_scan.integration_time 3.0 _diffrn_scan.frame_id_start mad_L2_000 _diffrn_scan.frame_id_end mad_L2_200 _diffrn_scan.frames 201
loop_ _diffrn_scan_axis.scan_id _diffrn_scan_axis.axis_id _diffrn_scan_axis.angle_start _diffrn_scan_axis.angle_range _diffrn_scan_axis.angle_increment _diffrn_scan_axis.displacement_start _diffrn_scan_axis.displacement_range _diffrn_scan_axis.displacement_increment
1 omega 200.0 20.0 0.1 . . . 1 kappa -40.0 0.0 0.0 . . . 1 phi 127.5 0.0 0.0 . . . 1 tranz . . . 2.3 0.0 0.0
_diffrn_scan_frame.scan_id 1 _diffrn_scan_frame.date '2001-11-18T03:27:33' _diffrn_scan_frame.integration_time 3.0 _diffrn_scan_frame.frame_id mad_L2_018 _diffrn_scan_frame.frame_number 18
loop_ _diffrn_scan_frame_axis.frame_id _diffrn_scan_frame_axis.axis_id _diffrn_scan_frame_axis.angle _diffrn_scan_frame_axis.angle_increment _diffrn_scan_frame_axis.displacement _diffrn_scan_frame_axis.displacement_increment
mad_L2_018 omega 201.8 0.1 .. mad_L2_018 kappa -40.0 0.0 .. mad_L2_018 phi 127.5 0.0 .. mad_L2_018 tranz . . 2.3 0.0
###CBF: VERSION 1.1
data_image_1
# category DIFFRN _diffrn.id P6MB _diffrn.crystal_id P6MB_CRYSTAL7
# category DIFFRN_SOURCE loop_ _diffrn_source.diffrn_id _diffrn_source.source _diffrn_source.type P6MB synchrotron 'SSRL beamline 9-1'
# category DIFFRN_RADIATION loop_ _diffrn_radiation.diffrn_id _diffrn_radiation.wavelength_id _diffrn_radiation.monochromator _diffrn_radiation.polarizn_source_ratio _diffrn_radiation.polarizn_source_norm _diffrn_radiation.div_x_source _diffrn_radiation.div_y_source _diffrn_radiation.div_x_y_source P6MB WAVELENGTH1 'Si 111' 0.8 0.0 0.08 0.01 0.00
# category DIFFRN_RADIATION_WAVELENGTH loop_ _diffrn_radiation_wavelength.id _diffrn_radiation_wavelength.wavelength _diffrn_radiation_wavelength.wt WAVELENGTH1 0.98 1.0
# category DIFFRN_DETECTOR loop_ _diffrn_detector.diffrn_id _diffrn_detector.id _diffrn_detector.type _diffrn_detector.number_of_axes P6MB MAR345-SN26 'MAR 345' 4
# category DIFFRN_DETECTOR_AXIS loop_ _diffrn_detector_axis.detector_id _diffrn_detector_axis.axis_id MAR345-SN26 DETECTOR_X MAR345-SN26 DETECTOR_Y MAR345-SN26 DETECTOR_Z MAR345-SN26 DETECTOR_PITCH
# category DIFFRN_DETECTOR_ELEMENT loop_ _diffrn_detector_element.id _diffrn_detector_element.detector_id ELEMENT1 MAR345-SN26
# category DIFFRN_DATA_FRAME loop_ _diffrn_data_frame.id _diffrn_data_frame.detector_element_id _diffrn_data_frame.array_id _diffrn_data_frame.binary_id FRAME1 ELEMENT1 ARRAY1 1
# category DIFFRN_MEASUREMENT loop_ _diffrn_measurement.diffrn_id _diffrn_measurement.id _diffrn_measurement.number_of_axes _diffrn_measurement.method P6MB GONIOMETER 3 rotation
# category DIFFRN_MEASUREMENT_AXIS loop_ _diffrn_measurement_axis.measurement_id _diffrn_measurement_axis.axis_id GONIOMETER GONIOMETER_PHI GONIOMETER GONIOMETER_KAPPA GONIOMETER GONIOMETER_OMEGA
# category DIFFRN_SCAN loop_ _diffrn_scan.id _diffrn_scan.frame_id_start _diffrn_scan.frame_id_end _diffrn_scan.frames SCAN1 FRAME1 FRAME1 1
# category DIFFRN_SCAN_AXIS loop_ _diffrn_scan_axis.scan_id _diffrn_scan_axis.axis_id _diffrn_scan_axis.angle_start _diffrn_scan_axis.angle_range _diffrn_scan_axis.angle_increment _diffrn_scan_axis.displacement_start _diffrn_scan_axis.displacement_range _diffrn_scan_axis.displacement_increment SCAN1 GONIOMETER_OMEGA 12.0 1.0 1.0 0.0 0.0 0.0 SCAN1 GONIOMETER_KAPPA 23.3 0.0 0.0 0.0 0.0 0.0 SCAN1 GONIOMETER_PHI -165.8 0.0 0.0 0.0 0.0 0.0 SCAN1 DETECTOR_Z 0.0 0.0 0.0 -240.0 0.0 0.0 SCAN1 DETECTOR_Y 0.0 0.0 0.0 0.6 0.0 0.0 SCAN1 DETECTOR_X 0.0 0.0 0.0 -0.5 0.0 0.0 SCAN1 DETECTOR_PITCH 0.0 0.0 0.0 0.0 0.0 0.0
# category DIFFRN_SCAN_FRAME loop_ _diffrn_scan_frame.frame_id _diffrn_scan_frame.frame_number _diffrn_scan_frame.integration_time _diffrn_scan_frame.scan_id _diffrn_scan_frame.date FRAME1 1 20.0 SCAN1 1997-12-04T10:23:48
# category DIFFRN_SCAN_FRAME_AXIS loop_ _diffrn_scan_frame_axis.frame_id _diffrn_scan_frame_axis.axis_id _diffrn_scan_frame_axis.angle _diffrn_scan_frame_axis.displacement FRAME1 GONIOMETER_OMEGA 12.0 0.0 FRAME1 GONIOMETER_KAPPA 23.3 0.0 FRAME1 GONIOMETER_PHI -165.8 0.0 FRAME1 DETECTOR_Z 0.0 -240.0 FRAME1 DETECTOR_Y 0.0 0.6 FRAME1 DETECTOR_X 0.0 -0.5 FRAME1 DETECTOR_PITCH 0.0 0.0
# category AXIS loop_ _axis.id _axis.type _axis.equipment _axis.depends_on _axis.vector[1] _axis.vector[2] _axis.vector[3] _axis.offset[1] _axis.offset[2] _axis.offset[3] GONIOMETER_OMEGA rotation goniometer . 1 0 0 . . . GONIOMETER_KAPPA rotation goniometer GONIOMETER_OMEGA 0.64279 0 0.76604 . . . GONIOMETER_PHI rotation goniometer GONIOMETER_KAPPA 1 0 0 . . . SOURCE general source . 0 0 1 . . . GRAVITY general gravity . 0 -1 0 . . . DETECTOR_Z translation detector . 0 0 1 0 0 0 DETECTOR_Y translation detector DETECTOR_Z 0 1 0 0 0 0 DETECTOR_X translation detector DETECTOR_Y 1 0 0 0 0 0 DETECTOR_PITCH rotation detector DETECTOR_X 0 1 0 0 0 0 ELEMENT_X translation detector DETECTOR_PITCH 1 0 0 172.43 -172.43 0 ELEMENT_Y translation detector ELEMENT_X 0 1 0 0 0 0
# category ARRAY_STRUCTURE_LIST loop_ _array_structure_list.array_id _array_structure_list.index _array_structure_list.dimension _array_structure_list.precedence _array_structure_list.direction _array_structure_list.axis_set_id ARRAY1 1 2300 1 increasing ELEMENT_X ARRAY1 2 2300 2 increasing ELEMENT_Y
# category ARRAY_STRUCTURE_LIST_AXIS loop_ _array_structure_list_axis.axis_set_id _array_structure_list_axis.axis_id _array_structure_list_axis.displacement _array_structure_list_axis.displacement_increment ELEMENT_X ELEMENT_X 0.075 0.150 ELEMENT_Y ELEMENT_Y 0.075 0.150
# category ARRAY_ELEMENT_SIZE loop_ _array_element_size.array_id _array_element_size.index _array_element_size.size ARRAY1 1 150e-6 ARRAY1 2 150e-6
# category ARRAY_INTENSITIES loop_ _array_intensities.array_id _array_intensities.binary_id _array_intensities.linearity _array_intensities.gain _array_intensities.gain_esd _array_intensities.overload _array_intensities.undefined_value ARRAY1 1 linear 1.15 0.2 240000 0
# category ARRAY_STRUCTURE loop_ _array_structure.id _array_structure.encoding_type _array_structure.compression_type _array_structure.byte_order ARRAY1 "signed 32-bit integer" packed little_endian
# category ARRAY_DATA loop_ _array_data.array_id _array_data.binary_id _array_data.data ARRAY1 1 ; --CIF-BINARY-FORMAT-SECTION-- Content-Type: application/octet-stream; conversions="X-CBF_PACKED" Content-Transfer-Encoding: BASE64 X-Binary-Size: 3801324 X-Binary-ID: 1 X-Binary-Element-Type: "signed 32-bit integer" Content-MD5: 07lZFvF+aOcW85IN7usl8A==
AABRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZBQSr1sKNBOeOe9HITdMdDUnbq7bg ... 8REo6TtBrxJ1vKqAvx9YDMD6J18Qg83OMr/tgssjMIJMXATDsZobL90AEXc4KigE
--CIF-BINARY-FORMAT-SECTION---- ;
###CBF: VERSION 1.1
data_image_1
# category DIFFRN _diffrn.id P6MB _diffrn.crystal_id P6MB_CRYSTAL7
# category DIFFRN_SOURCE loop_ _diffrn_source.diffrn_id _diffrn_source.source _diffrn_source.type P6MB synchrotron 'SSRL beamline 9-1'
# category DIFFRN_RADIATION loop_ _diffrn_radiation.diffrn_id _diffrn_radiation.wavelength_id _diffrn_radiation.monochromator _diffrn_radiation.polarizn_source_ratio _diffrn_radiation.polarizn_source_norm _diffrn_radiation.div_x_source _diffrn_radiation.div_y_source _diffrn_radiation.div_x_y_source P6MB WAVELENGTH1 'Si 111' 0.8 0.0 0.08 0.01 0.00
# category DIFFRN_RADIATION_WAVELENGTH loop_ _diffrn_radiation_wavelength.id _diffrn_radiation_wavelength.wavelength _diffrn_radiation_wavelength.wt WAVELENGTH1 0.98 1.0
# category DIFFRN_DETECTOR loop_ _diffrn_detector.diffrn_id _diffrn_detector.id _diffrn_detector.type _diffrn_detector.number_of_axes P6MB MAR345-SN26 'MAR 345' 4
# category DIFFRN_DETECTOR_AXIS loop_ _diffrn_detector_axis.detector_id _diffrn_detector_axis.axis_id MAR345-SN26 DETECTOR_X MAR345-SN26 DETECTOR_Y MAR345-SN26 DETECTOR_Z MAR345-SN26 DETECTOR_PITCH
# category DIFFRN_DETECTOR_ELEMENT loop_ _diffrn_detector_element.id _diffrn_detector_element.detector_id ELEMENT1 MAR345-SN26
# category DIFFRN_DATA_FRAME loop_ _diffrn_data_frame.id _diffrn_data_frame.detector_element_id _diffrn_data_frame.array_id _diffrn_data_frame.binary_id FRAME1 ELEMENT1 ARRAY1 1
# category DIFFRN_MEASUREMENT loop_ _diffrn_measurement.diffrn_id _diffrn_measurement.id _diffrn_measurement.number_of_axes _diffrn_measurement.method P6MB GONIOMETER 3 rotation
# category DIFFRN_MEASUREMENT_AXIS loop_ _diffrn_measurement_axis.measurement_id _diffrn_measurement_axis.axis_id GONIOMETER GONIOMETER_PHI GONIOMETER GONIOMETER_KAPPA GONIOMETER GONIOMETER_OMEGA
# category DIFFRN_SCAN loop_ _diffrn_scan.id _diffrn_scan.frame_id_start _diffrn_scan.frame_id_end _diffrn_scan.frames SCAN1 FRAME1 FRAME1 1
# category DIFFRN_SCAN_AXIS loop_ _diffrn_scan_axis.scan_id _diffrn_scan_axis.axis_id _diffrn_scan_axis.angle_start _diffrn_scan_axis.angle_range _diffrn_scan_axis.angle_increment _diffrn_scan_axis.displacement_start _diffrn_scan_axis.displacement_range _diffrn_scan_axis.displacement_increment SCAN1 GONIOMETER_OMEGA 12.0 1.0 1.0 0.0 0.0 0.0 SCAN1 GONIOMETER_KAPPA 23.3 0.0 0.0 0.0 0.0 0.0 SCAN1 GONIOMETER_PHI -165.8 0.0 0.0 0.0 0.0 0.0 SCAN1 DETECTOR_Z 0.0 0.0 0.0 -240.0 0.0 0.0 SCAN1 DETECTOR_Y 0.0 0.0 0.0 0.6 0.0 0.0 SCAN1 DETECTOR_X 0.0 0.0 0.0 -0.5 0.0 0.0 SCAN1 DETECTOR_PITCH 0.0 0.0 0.0 0.0 0.0 0.0
# category DIFFRN_SCAN_FRAME loop_ _diffrn_scan_frame.frame_id _diffrn_scan_frame.frame_number _diffrn_scan_frame.integration_time _diffrn_scan_frame.scan_id _diffrn_scan_frame.date FRAME1 1 20.0 SCAN1 1997-12-04T10:23:48
# category DIFFRN_SCAN_FRAME_AXIS loop_ _diffrn_scan_frame_axis.frame_id _diffrn_scan_frame_axis.axis_id _diffrn_scan_frame_axis.angle _diffrn_scan_frame_axis.displacement FRAME1 GONIOMETER_OMEGA 12.0 0.0 FRAME1 GONIOMETER_KAPPA 23.3 0.0 FRAME1 GONIOMETER_PHI -165.8 0.0 FRAME1 DETECTOR_Z 0.0 -240.0 FRAME1 DETECTOR_Y 0.0 0.6 FRAME1 DETECTOR_X 0.0 -0.5 FRAME1 DETECTOR_PITCH 0.0 0.0
# category AXIS loop_ _axis.id _axis.type _axis.equipment _axis.depends_on _axis.vector[1] _axis.vector[2] _axis.vector[3] _axis.offset[1] _axis.offset[2] _axis.offset[3] GONIOMETER_OMEGA rotation goniometer . 1 0 0 . . . GONIOMETER_KAPPA rotation goniometer GONIOMETER_OMEGA 0.64279 0 0.76604 . . . GONIOMETER_PHI rotation goniometer GONIOMETER_KAPPA 1 0 0 . . . SOURCE general source . 0 0 1 . . . GRAVITY general gravity . 0 -1 0 . . . DETECTOR_Z translation detector . 0 0 1 0 0 0 DETECTOR_Y translation detector DETECTOR_Z 0 1 0 0 0 0 DETECTOR_X translation detector DETECTOR_Y 1 0 0 0 0 0 DETECTOR_PITCH rotation detector DETECTOR_X 0 1 0 0 0 0 ELEMENT_ROT translation detector DETECTOR_PITCH 0 0 1 0 0 0 ELEMENT_RAD translation detector ELEMENT_ROT 0 1 0 0 0 0
# category ARRAY_STRUCTURE_LIST loop_ _array_structure_list.array_id _array_structure_list.index _array_structure_list.dimension _array_structure_list.precedence _array_structure_list.direction _array_structure_list.axis_set_id ARRAY1 1 8309900 1 increasing ELEMENT_SPIRAL
# category ARRAY_STRUCTURE_LIST_AXIS loop_ _array_structure_list_axis.axis_set_id _array_structure_list_axis.axis_id _array_structure_list_axis.angle _array_structure_list_axis.displacement _array_structure_list_axis.angular_pitch _array_structure_list_axis.radial_pitch ELEMENT_SPIRAL ELEMENT_ROT 0 . 0.075 . ELEMENT_SPIRAL ELEMENT_RAD . 172.5 . -0.150
# category ARRAY_ELEMENT_SIZE # the actual pixels are 0.075 by 0.150 mm # We give the coarser dimension here. loop_ _array_element_size.array_id _array_element_size.index _array_element_size.size ARRAY1 1 150e-6
# category ARRAY_INTENSITIES loop_ _array_intensities.array_id _array_intensities.binary_id _array_intensities.linearity _array_intensities.gain _array_intensities.gain_esd _array_intensities.overload _array_intensities.undefined_value ARRAY1 1 linear 1.15 0.2 240000 0
# category ARRAY_STRUCTURE loop_ _array_structure.id _array_structure.encoding_type _array_structure.compression_type _array_structure.byte_order ARRAY1 "signed 32-bit integer" packed little_endian
# category ARRAY_DATA loop_ _array_data.array_id _array_data.binary_id _array_data.data ARRAY1 1 ; --CIF-BINARY-FORMAT-SECTION-- Content-Type: application/octet-stream; conversions="X-CBF_PACKED" Content-Transfer-Encoding: BASE64 X-Binary-Size: 3801324 X-Binary-ID: 1 X-Binary-Element-Type: "signed 32-bit integer" Content-MD5: 07lZFvF+aOcW85IN7usl8A==
AABRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZBQSr1sKNBOeOe9HITdMdDUnbq7bg ... 8REo6TtBrxJ1vKqAvx9YDMD6J18Qg83OMr/tgssjMIJMXATDsZobL90AEXc4KigE
--CIF-BINARY-FORMAT-SECTION---- ;
_diffrn_scan.id
CIF
Data names: _diffrn_scan.id _diffrn_scan_axis.scan_id _diffrn_scan_collection.scan_id _diffrn_scan_frame.scan_id
The value of _diffrn_scan.id uniquely identifies each
scan. The identifier is used to tie together all the information about the scan.
_diffrn_scan.date_end
CIF
The date and time of the end of the scan. Note that this
may be an estimate generated during the scan, before the
precise time of the end of the scan is known, in which
case _diffrn_scan.date_end_estimated should be used instead.
_diffrn_scan.date_end_estimated
CIF
The estimated date and time of the end of the scan. Note
that this may be generated at the start or during the scan, before the precise time of the end of the scan is known.
_diffrn_scan.date_start
CIF
The date and time of the start of the scan.
_diffrn_scan.integration_time
CIF
Approximate average time in seconds to integrate each
step of the scan. The precise time for integration
of each particular step must be provided in
_diffrn_scan_frame.integration_time, even
if all steps have the same integration time.
_diffrn_scan.frame_id_start
CIF
The value of this data item is the identifier of the
first frame in the scan.
This item is a pointer to _diffrn_data_frame.id in the
DIFFRN_DATA_FRAME category.
_diffrn_scan.frame_id_end
CIF
The value of this data item is the identifier of the
last frame in the scan.
This item is a pointer to _diffrn_data_frame.id in the
DIFFRN_DATA_FRAME category.
_diffrn_scan.frames
CIF
The value of this data item is the number of frames in
the scan.
_diffrn_scan.time_period
CIF
Approximate average time in seconds between the start
of each step of the scan. The precise start-to-start
time increment of each particular step may be provided in
_diffrn_scan_frame.time_period.
_diffrn_scan.time_rstrt_incr
CIF
Approximate average time in seconds between the end
of integration of each step of the scan and the start of integration of the next step.
In general, this will agree with _diffrn_scan_frame.time_rstrt_incr . The sum of the values of _diffrn_scan_frame.integration_time and _diffrn_scan_frame.time_rstrt_incr is the time from the start of integration of one frame and the start of integration for the next frame and should equal the value of _diffrn_scan_frame.time_period for this frame. If the individual frame values vary, then the value of _diffrn_scan.time_rstrt_incr will be representative of the ensemble of values of _diffrn_scan_frame.time_rstrt_incr (e.g. the mean).
_diffrn_scan.variant
CIF
The value of _diffrn_scan.variant gives the variant
to which the given DIFFRN_SCAN row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
DIFFRN_SCAN_AXIS
CIF
Data items in the DIFFRN_SCAN_AXIS category describe the settings of
axes for particular scans. Unspecified axes are assumed to be at their zero points.
_diffrn_scan_axis.scan_id
CIF
The value of this data item is the identifier of the
scan for which axis settings are being specified.
Multiple axes may be specified for the same value of
_diffrn_scan.id.
This item is a pointer to _diffrn_scan.id in the
DIFFRN_SCAN category.
_diffrn_scan_axis.axis_id
CIF
The value of this data item is the identifier of one of
the axes for the scan for which settings are being specified.
Multiple axes may be specified for the same value of
_diffrn_scan.id.
This item is a pointer to _axis.id in the
AXIS category.
_diffrn_scan_axis.angle_start
CIF
The starting position for the specified axis in degrees.
_diffrn_scan_axis.angle_range
CIF
The range from the starting position for the specified axis
in degrees.
_diffrn_scan_axis.angle_increment
CIF
The increment for each step for the specified axis
in degrees. In general, this will agree with _diffrn_scan_frame_axis.angle_increment . The sum of the values of _diffrn_scan_frame_axis.angle and _diffrn_scan_frame_axis.angle_increment is the angular setting of the axis at the end of the integration time for a given frame. If the individual frame values vary, then the value of _diffrn_scan_axis.angle_increment will be representative of the ensemble of values of _diffrn_scan_frame_axis.angle_increment (e.g. the mean).
_diffrn_scan_axis.angle_rstrt_incr
CIF
The increment after each step for the specified axis
in degrees. In general, this will agree with _diffrn_scan_frame_axis.angle_rstrt_incr . The sum of the values of _diffrn_scan_frame_axis.angle, _diffrn_scan_frame_axis.angle_increment and _diffrn_scan_frame_axis.angle_rstrt_incr is the angular setting of the axis at the start of the integration time for the next frame relative to a given frame and should equal _diffrn_scan_frame_axis.angle for this next frame. If the individual frame values vary, then the value of _diffrn_scan_axis.angle_rstrt_incr will be representative of the ensemble of values of _diffrn_scan_frame_axis.angle_rstrt_incr (e.g. the mean).
_diffrn_scan_axis.displacement_start
CIF
The starting position for the specified axis in millimetres.
_diffrn_scan_axis.displacement_range
CIF
The range from the starting position for the specified axis
in millimetres.
_diffrn_scan_axis.displacement_increment
CIF
The increment for each step for the specified axis
in millimetres. In general, this will agree with _diffrn_scan_frame_axis.displacement_increment. The sum of the values of _diffrn_scan_frame_axis.displacement and _diffrn_scan_frame_axis.displacement_increment is the angular setting of the axis at the end of the integration time for a given frame. If the individual frame values vary, then the value of _diffrn_scan_axis.displacement_increment will be representative of the ensemble of values of _diffrn_scan_frame_axis.displacement_increment (e.g. the mean).
_diffrn_scan_axis.displacement_rstrt_incr
CIF
The increment for each step for the specified axis
in millimetres. In general, this will agree with _diffrn_scan_frame_axis.displacement_rstrt_incr. The sum of the values of _diffrn_scan_frame_axis.displacement, _diffrn_scan_frame_axis.displacement_increment and _diffrn_scan_frame_axis.displacement_rstrt_incr is the angular setting of the axis at the start of the integration time for the next frame relative to a given frame and should equal _diffrn_scan_frame_axis.displacement for this next frame. If the individual frame values vary, then the value of _diffrn_scan_axis.displacement_rstrt_incr will be representative of the ensemble of values of _diffrn_scan_frame_axis.displacement_rstrt_incr (e.g. the mean).
_diffrn_scan_axis.reference_angle
CIF
The setting of the specified axis in degrees
against which measurements of the reference beam centre and reference detector distance should be made.
In general, this will agree with
_diffrn_scan_frame_axis.reference_angle.
If the individual frame values vary, then the value of _diffrn_scan_axis.reference_angle will be representative of the ensemble of values of _diffrn_scan_frame_axis.reference_angle (e.g. the mean).
If not specified, the value defaults to zero.
_diffrn_scan_axis.reference_displacement
CIF
The setting of the specified axis in millimetres
against which measurements of the reference beam centre and reference detector distance should be made.
In general, this will agree with
_diffrn_scan_frame_axis.reference_displacement.
If the individual frame values vary, then the value of _diffrn_scan_axis.reference_displacement will be representative of the ensemble of values of _diffrn_scan_frame_axis.reference_displacement (e.g. the mean).
_diffrn_scan_axis.variant
CIF
The value of _diffrn_scan_axis.variant gives the variant
to which the given DIFFRN_SCAN_AXIS row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
DIFFRN_SCAN_COLLECTION
CIF
Data items in the DIFFRN_SCAN_COLLECTION category describe
the collection strategy for each scan.
This category is a preliminary version being developed as synchrotron and XFEL collection strategies evolve.
Example:
Example 1 - Describing a multi-wedge raster scan.
_diffrn_scan_collection.details
CIF
The value of _diffrn_scan_collection.details should give a
description of special aspects of each collection strategy.
_diffrn_scan_collection.scan_id
CIF
The value of _diffrn_scan_collection.scan_id identifies the scan
containing this frame.
This item is a pointer to _diffrn_scan.id in the
DIFFRN_SCAN category.
In the case of a single-scan dataset, the value is implicit.
_diffrn_scan_collection.type
CIF
The value of _diffrn_scan_collection.type identifies
the strategy used in this scan, e.g. `rotation', 'raster', 'vector', 'still', etc.
The default is 'rotation'.
_diffrn_scan_collection.translation_width
CIF
The value of _diffrn_scan_collection.translation_width
gives the average single step translation in micrometres in collection strategies for which this information is appropriate, e.g. 'vector'.
_diffrn_scan_collection.variant
CIF
The value of _diffrn_scan_collection.variant gives the variant
to which the given DIFFRN_SCAN_COLLECTION row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
DIFFRN_SCAN_FRAME
CIF
Data items in the DIFFRN_SCAN_FRAME category describe
the relationships of particular frames to scans.
_diffrn_scan_frame.date
CIF
The date and time of the start of the frame being scanned.
_diffrn_scan_frame.frame_id
CIF
The value of this data item is the identifier of the
frame being examined.
This item is a pointer to _diffrn_data_frame.id in the
DIFFRN_DATA_FRAME category.
_diffrn_scan_frame.frame_number
CIF
The value of this data item is the number of the frame
within the scan, starting with 1. It is not necessarily
the same as the value of _diffrn_scan_frame.frame_id,
but it may be.
_diffrn_scan_frame.integration_time
CIF
The time in seconds to integrate this step of the scan.
This should be the precise time of integration of each
particular frame. The value of this data item should
be given explicitly for each frame and not inferred
from the value of _diffrn_scan.integration_time.
_diffrn_scan_frame.polarizn_Stokes_I
CIF
The quantity Ip+In+Inp, where Ip is the intensity (amplitude
squared) of the electric vector in the plane of polarization, In is the intensity (amplitude squared) of the electric vector in the plane of the normal to the plane of polarization, and Inp is the intensity (amplitude squared) of the non-polarized (incoherent) electric vector.
This is an average or other representative sample of the frame.
This is the first of the Stokes polarization parameters, I, Q, U, V [also known as I, M, C, S; see Berry et al. (1977)].
If the absolute intensity is not known, the value 1.0 is assumed for I, and all four Stokes parameters are dimensionless. When the absolute intensity is known, all four Stokes parameters are in units of watts per square metre.
Note that, if the polarized intensity Ip+In is required, (Ip+In)^2^ is the sum of Q^2^+U^2^+V^2^.
Reference: Berry, H. H., Gabrielse, G. & Livingston, A. E. (1977). 'Measurement of the Stokes parameters of light', Appl. Optics, 16:12, 3200--3205.
_diffrn_scan_frame.polarizn_Stokes_Q
CIF
The quantity (Ip-In)*cos(2*theta), where Ip is the intensity
(amplitude squared) of the electric vector in the plane of polarization, In is the intensity (amplitude squared) of the electric vector in the plane of the normal to the plane of polarization, and theta is the angle as viewed from the specimen, between the normal to the polarization plane and the laboratory Y axis as defined in the AXIS category.
This is an average or other representative sample of the frame.
This is the second of the Stokes polarization parameters, I, Q, U, V [also known as I, M, C, S; see Berry et al. (1977)].
If the absolute intensity is not known, the value 1.0 is assumed for I, and all four Stokes parameters are dimensionless. When the absolute intensity is known, all four Stokes parameters are in units of watts per square metre.
Reference: Berry, H. H., Gabrielse, G. & Livingston, A. E. (1977). 'Measurement of the Stokes parameters of light', Appl. Optics, 16:12, 3200--3205.
_diffrn_scan_frame.polarizn_Stokes_U
CIF
The quantity (Ip-In)*sin(2*theta), where Ip is the intensity
(amplitude squared) of the electric vector in the plane of polarization, In is the intensity (amplitude squared) of the electric vector in the plane of the normal to the plane of polarization, and theta is the angle as viewed from the specimen, between the normal to the polarization plane and the laboratory Y axis as defined in the AXIS category.
This is an average or other representative sample of the frame.
This is the third of the Stokes polarization parameters, I, Q, U, V [also known as I, M, C, S; see Berry et al. (1977)]
If the absolute intensity is not known, the value 1.0 is assumed for I, and all four Stokes parameters are dimensionless. When the absolute intensity is known, all four Stokes parameters are in units of watts per square metre.
Reference: Berry, H. H., Gabrielse, G. & Livingston, A. E. (1977). 'Measurement of the Stokes parameters of light', Appl. Optics, 16:12, 3200--3205.
_diffrn_scan_frame.polarizn_Stokes_V
CIF
The quantity +/-2*sqrt(IpIn), with a + sign for right-handed
circular polarization, where Ip is the intensity (amplitude squared) of the electric vector in the plane of polarization and In is the intensity (amplitude squared) of the electric vector in the plane of the normal to the plane of polarization, and theta is the angle as viewed from the specimen, between the normal to the polarization plane and the laboratory Y axis as defined in the AXIS category.
This is an average or other representative sample of the frame.
This is the fourth of the Stokes polarization parameters, I, Q, U, V [also known as I, M, C, S; see Berry et al. (1977)].
If the absolute intensity is not known, the value 1.0 is assumed for I, and all four Stokes parameters are dimensionless. When the absolute intensity is known, all four Stokes parameters are in units of watts per square metre.
Reference: Berry, H. H., Gabrielse, G. & Livingston, A. E. (1977). 'Measurement of the Stokes parameters of light', Appl. Optics, 16:12, 3200--3205.
_diffrn_scan_frame.scan_id
CIF
The value of _diffrn_scan_frame.scan_id identifies the scan
containing this frame.
This item is a pointer to _diffrn_scan.id in the
DIFFRN_SCAN category.
_diffrn_scan_frame.time_period
CIF
The time in seconds between the start of this frame and the
start of the next frame, if any. If there is no next frame, a null value should be given.
_diffrn_scan_frame.time_rstrt_incr
CIF
The time in seconds between the end of integration of this step of the scan
and the start of integration of the next step.
The sum of the values of _diffrn_scan_frame.integration_time and _diffrn_scan_frame.time_rstrt_incr is the time from the start of integration of one frame and the start of integration for the next frame and should equal the value of _diffrn_scan_frame.time_period for this frame. The value of _diffrn_scan.time_rstrt_incr will be representative of the ensemble of values of _diffrn_scan_frame.time_rstrt_incr (e.g. the mean).
If there is no next frame, a null value should be given.
_diffrn_scan_frame.variant
CIF
The value of _diffrn_scan_frame.variant gives the variant
to which the given DIFFRN_SCAN_FRAME row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
DIFFRN_SCAN_FRAME_AXIS
CIF
Data items in the DIFFRN_SCAN_FRAME_AXIS category describe the
settings of axes for particular frames. Unspecified axes are assumed to be at their zero points. If, for any given frame, nonzero values apply for any of the data items in this category, those values should be given explicitly in this category and not simply inferred from values in DIFFRN_SCAN_AXIS.
_diffrn_scan_frame_axis.axis_id
CIF
The value of this data item is the identifier of one of
the axes for the frame for which settings are being specified.
Multiple axes may be specified for the same value of
_diffrn_scan_frame.frame_id.
This item is a pointer to _axis.id in the
AXIS category.
_diffrn_scan_frame_axis.angle
CIF
The setting of the specified axis in degrees for this frame.
This is the setting at the start of the integration time.
_diffrn_scan_frame_axis.angle_increment
CIF
The increment for this frame for the angular setting of
the specified axis in degrees. The sum of the values of _diffrn_scan_frame_axis.angle and _diffrn_scan_frame_axis.angle_increment is the angular setting of the axis at the end of the integration time for this frame.
_diffrn_scan_frame_axis.angle_rstrt_incr
CIF
The increment after this frame for the angular setting of
the specified axis in degrees. The sum of the values of _diffrn_scan_frame_axis.angle, _diffrn_scan_frame_axis.angle_increment and _diffrn_scan_frame_axis.angle_rstrt_incr is the angular setting of the axis at the start of the integration time for the next frame and should equal _diffrn_scan_frame_axis.angle for this next frame.
_diffrn_scan_frame_axis.displacement
CIF
The setting of the specified axis in millimetres for this
frame. This is the setting at the start of the integration time.
_diffrn_scan_frame_axis.displacement_increment
CIF
The increment for this frame for the displacement setting of
the specified axis in millimetres. The sum of the values of _diffrn_scan_frame_axis.displacement and _diffrn_scan_frame_axis.displacement_increment is the angular setting of the axis at the end of the integration time for this frame.
_diffrn_scan_frame_axis.displacement_rstrt_incr
CIF
The increment for this frame for the displacement setting of
the specified axis in millimetres. The sum of the values of _diffrn_scan_frame_axis.displacement, _diffrn_scan_frame_axis.displacement_increment and _diffrn_scan_frame_axis.displacement_rstrt_incr is the angular setting of the axis at the start of the integration time for the next frame and should equal _diffrn_scan_frame_axis.displacement for this next frame.
_diffrn_scan_frame_axis.frame_id
CIF
The value of this data item is the identifier of the
frame for which axis settings are being specified.
Multiple axes may be specified for the same value of
_diffrn_scan_frame.frame_id.
This item is a pointer to _diffrn_data_frame.id in the
DIFFRN_DATA_FRAME category.
_diffrn_scan_frame_axis.reference_angle
CIF
The setting of the specified axis in degrees
against which measurements of the reference beam centre and reference detector distance should be made.
This is normally the same for all frames, but the option is provided here of making changes when needed.
If not provided, it is assumed to be zero.
_diffrn_scan_frame_axis.reference_displacement
CIF
The setting of the specified axis in millimetres for this
frame against which measurements of the reference beam centre and reference detector distance should be made.
This is normally the same for all frames, but the option is provided here of making changes when needed.
If not provided, it is assumed to be equal to
_diffrn_scan_frame_axis.displacement.
_diffrn_scan_frame_axis.variant
CIF
The value of _diffrn_scan_frame_axis.variant gives the variant
to which the given DIFFRN_SCAN_FRAME_AXIS row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
DIFFRN_SCAN_FRAME_MONITOR
CIF
Data items in the DIFFRN_SCAN_FRAME_MONITOR category record
the values and details about each monitor for each frame of data during a scan.
Each monitor value is uniquely identified by the combination of the scan id given by _diffrn_scan_frame.scan_id, the frame id given by _diffrn_scan_frame_monitor.frame_id, the monitor's detector id given by _diffrn_scan_frame_monitor.detector_id, and a 1-based ordinal given by _diffrn_scan_frame_monitor.id.
If there is only one frame for the scan, the value of
_diffrn_scan_frame_monitor.frame_id may be omitted.
A single frame may have more than one monitor value, and each monitor value may be the result of integration over the entire frame integration time given by the value of _diffrn_scan_frame.integration_time, or many monitor values may be reported over shorter times given by the value of _diffrn_scan_frame_monitor.integration_time. If only one monitor value for a given monitor is collected during the integration time of the frame, the value of _diffrn_scan_frame_monitor.id may be omitted.
Example:
# category DIFFRN_DETECTOR loop_ _diffrn_detector.diffrn_id _diffrn_detector.id _diffrn_detector.type _diffrn_detector.number_of_axes P6MB MAR345-SN26 'MAR 345' 4 P6MB BSM01 'metal foil and PIN diode' 1
# category DIFFRN_DETECTOR_AXIS loop_ _diffrn_detector_axis.detector_id _diffrn_detector_axis.axis_id MAR345-SN26 DETECTOR_X MAR345-SN26 DETECTOR_Y MAR345-SN26 DETECTOR_Z MAR345-SN26 DETECTOR_PITCH BSM01 MONITOR_Z
# category DIFFRN_DATA_FRAME loop_ _diffrn_data_frame.id _diffrn_data_frame.detector_element_id _diffrn_data_frame.array_id _diffrn_data_frame.binary_id FRAME1 ELEMENT1 ARRAY1 1
# category DIFFRN_SCAN loop_ _diffrn_scan.id _diffrn_scan.frame_id_start _diffrn_scan.frame_id_end _diffrn_scan.frames SCAN1 FRAME1 FRAME1 1
# category DIFFRN_SCAN_AXIS loop_ _diffrn_scan_axis.scan_id _diffrn_scan_axis.axis_id _diffrn_scan_axis.angle_start _diffrn_scan_axis.angle_range _diffrn_scan_axis.angle_increment _diffrn_scan_axis.displacement_start _diffrn_scan_axis.displacement_range _diffrn_scan_axis.displacement_increment SCAN1 GONIOMETER_OMEGA 12.0 1.0 1.0 0.0 0.0 0.0 SCAN1 GONIOMETER_KAPPA 23.3 0.0 0.0 0.0 0.0 0.0 SCAN1 GONIOMETER_PHI -165.8 0.0 0.0 0.0 0.0 0.0 SCAN1 DETECTOR_Z 0.0 0.0 0.0 -240.0 0.0 0.0 SCAN1 DETECTOR_Y 0.0 0.0 0.0 0.6 0.0 0.0 SCAN1 DETECTOR_X 0.0 0.0 0.0 -0.5 0.0 0.0 SCAN1 DETECTOR_PITCH 0.0 0.0 0.0 0.0 0.0 0.0 SCAN1 MONITOR_Z 0.0 0.0 0.0 -220.0 0.0 0.0
# category DIFFRN_SCAN_FRAME loop_ _diffrn_scan_frame.frame_id _diffrn_scan_frame.frame_number _diffrn_scan_frame.integration_time _diffrn_scan_frame.scan_id _diffrn_scan_frame.date FRAME1 1 20.0 SCAN1 1997-12-04T10:23:48
# category DIFFRN_SCAN_FRAME_MONITOR loop_ _diffrn_scan_frame_monitor.id _diffrn_scan_frame_monitor.detector_id _diffrn_scan_frame_monitor.scan_id _diffrn_scan_frame_monitor.frame_id _diffrn_scan_frame_monitor.integration_time _diffrn_scan_frame_monitor.monitor_value 1 BSM01 SCAN1 FRAME1 2.0 23838345642 2 BSM01 SCAN1 FRAME1 2.0 23843170669 3 BSM01 SCAN1 FRAME1 2.0 23839478690 4 BSM01 SCAN1 FRAME1 2.0 23856642085 5 BSM01 SCAN1 FRAME1 2.0 23781717656 6 BSM01 SCAN1 FRAME1 2.0 23788850775 7 BSM01 SCAN1 FRAME1 2.0 23815576677 8 BSM01 SCAN1 FRAME1 2.0 23789299964 9 BSM01 SCAN1 FRAME1 2.0 23830195536 10 BSM01 SCAN1 FRAME1 2.0 23673082270
# category DIFFRN_SCAN_FRAME_AXIS loop_ _diffrn_scan_frame_axis.frame_id _diffrn_scan_frame_axis.axis_id _diffrn_scan_frame_axis.angle _diffrn_scan_frame_axis.displacement FRAME1 GONIOMETER_OMEGA 12.0 0.0 FRAME1 GONIOMETER_KAPPA 23.3 0.0 FRAME1 GONIOMETER_PHI -165.8 0.0 FRAME1 DETECTOR_Z 0.0 -240.0 FRAME1 DETECTOR_Y 0.0 0.6 FRAME1 DETECTOR_X 0.0 -0.5 FRAME1 DETECTOR_PITCH 0.0 0.0 FRAME1 MONITOR_Z 0.0 -220.0
# category AXIS loop_ _axis.id _axis.type _axis.equipment _axis.depends_on _axis.vector[1] _axis.vector[2] _axis.vector[3] _axis.offset[1] _axis.offset[2] _axis.offset[3] GONIOMETER_OMEGA rotation goniometer . 1 0 0 . . . GONIOMETER_KAPPA rotation goniometer GONIOMETER_OMEGA 0.64279 0 0.76604 . . . GONIOMETER_PHI rotation goniometer GONIOMETER_KAPPA 1 0 0 . . . SOURCE general source . 0 0 1 . . . GRAVITY general gravity . 0 -1 0 . . . DETECTOR_Z translation detector . 0 0 1 0 0 0 DETECTOR_Y translation detector DETECTOR_Z 0 1 0 0 0 0 DETECTOR_X translation detector DETECTOR_Y 1 0 0 0 0 0 DETECTOR_PITCH rotation detector DETECTOR_X 0 1 0 0 0 0 ELEMENT_X translation detector DETECTOR_PITCH 1 0 0 172.43 -172.43 0 ELEMENT_Y translation detector ELEMENT_X 0 1 0 0 0 0 MONITOR_Z translation detector . 0 0 1 0 0 0
_diffrn_scan_frame_monitor.id
CIF
This item is an integer identifier which, along with
_diffrn_scan_frame_monitor.detector_id, _diffrn_scan_frame_monitor.scan_id, and _diffrn_scan_frame_monitor.frame_id should uniquely identify the monitor value being recorded.
If _array_data.binary_id is not explicitly given,
it defaults to 1.
_diffrn_scan_frame_monitor.detector_id
CIF
This data item is a pointer to _diffrn_detector.id in
the DIFFRN_DETECTOR category.
_diffrn_scan_frame_monitor.frame_id
CIF
This item is a pointer to _diffrn_data_frame.id
in the DIFFRN_DATA_FRAME category.
_diffrn_scan_frame_monitor.integration_time
CIF
The precise time for integration of the monitor value given in
_diffrn_scan_frame_monitor.monitor_value must be given in _diffrn_scan_frame_monitor.integration_time.
_diffrn_scan_frame_monitor.monitor_value
CIF
The value reported by the monitor detector should be given in
_diffrn_scan_frame_monitor.monitor_value.
The value is typed as float to allow of monitors for very intense beams that cannot report all digits, but when available, all digits of the monitor should be recorded.
For convenience in automated validation, the deprecated
_diffrn_scan_frame_monitor.monitor_value
is given as an alias, but should be avoided for new data sets.
Also known as: _diffrn_scan_frame_monitor.value
_diffrn_scan_frame_monitor.scan_id
CIF
This item is a pointer to _diffrn_scan.id in
the DIFFRN_SCAN category.
_diffrn_scan_frame_monitor.variant
CIF
The value of _diffrn_scan_frame_monitor.variant gives the variant
to which the given DIFFRN_SCAN_FRAME_MONITOR row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
_diffrn_scan_frame_monitor.value
CIF
This is a deprecated version of
_diffrn_scan_frame_monitor.monitor_value.
The value is typed as float to allow of monitors for very intense beams that cannot report all digits, but when available, all digits of the monitor should be recorded.
DEPRECATED -- DO NOT USE
MAP
CIF
Data items in the MAP category record
the details of maps. Maps record values of parameters, such as density, that are functions of position within a cell or are functions of orthogonal coordinates in three space.
A map is composed of one or more map segments specified in the MAP_SEGMENT category.
Examples are given in the MAP_SEGMENT category.
Example:
loop_ _map.id _map.details
rho_calc ; density calculated from F_calc derived from the ATOM_SITE list ; rho_obs ; density combining the observed structure factors with the calculated phases ;
_map.details
CIF
The value of _map.details should give a
description of special aspects of each map.
Example:
Example 1. Identifying an observed density map and a calculated density map
_map.diffrn_id
CIF
This item is a pointer to _diffrn.id in the
DIFFRN category.
_map.entry_id
CIF
This item is a pointer to _entry.id in the
ENTRY category.
_map.id
CIF
Data names: _map.id _map_segment.id
The value of _map.id must uniquely identify
each map for the given diffrn.id or entry.id.
_map.variant
CIF
The value of _map.variant gives the variant
to which the given map row is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
MAP_SEGMENT
CIF
Data items in the MAP_SEGMENT category record
the details about each segment (section or brick) of a map.
Example:
loop_ _map.id _map.details
rho_calc ; density calculated from F_calc derived from the ATOM_SITE list ; rho_obs ; density combining the observed structure factors with the calculated phases ;
loop_ _map_segment.map_id _map_segment.id _map_segment.array_id _map_segment.binary_id _map_segment.mask_array_id _map_segment.mask_binary_id rho_calc rho_calc map_structure 1 mask_structure 1 rho_obs rho_obs map_structure 2 mask_structure 1
_map_segment.array_id
CIF
The value of _map_segment.array_id identifies the array
structure into which the map is organized.
This item is a pointer to _array_structure.id in the
ARRAY_STRUCTURE category.
_map_segment.array_section_id
CIF
This item is a pointer to _array_structure_list_section.id
in the ARRAY_STRUCTURE_LIST_SECTION category.
_map_segment.binary_id
CIF
The value of _map_segment.binary_id distinguishes the particular
set of data organized according to _map_segment.array_id in
which the data values of the map are stored.
This item is a pointer to _array_data.binary_id in the
ARRAY_DATA category.
_map_segment.mask_array_id
CIF
The value of _map_segment.mask_array_id, if given, describes
the array structure into which the mask for the map is organized. If no value is given, then all elements of the map are valid. If a value is given, then only elements of the map for which the corresponding element of the mask is non-zero are valid. The value of _map_segment.mask_array_id differs from the value of _map_segment.array_id in order to permit the mask to be given as, say, unsigned 8-bit integers, while the map is given as a data type with more range. However, the two array structures must be aligned, using the same axes in the same order with the same displacements and increments.
This item is a pointer to _array_structure.id in the
ARRAY_STRUCTURE category.
_map_segment.mask_binary_id
CIF
The value of _map_segment.mask_binary_id identifies the
particular set of data organized according to
_map_segment.mask_array_id specifying the mask for the map.
This item is a pointer to _array_data.binary_id in the
ARRAY_DATA category.
_map_segment.mask_array_section_id
CIF
This item is a pointer to _array_structure_list_section.id
in the ARRAY_STRUCTURE_LIST_SECTION category.
_map_segment.id
CIF
Data names: _map_segment.id
The value of _map_segment.id must uniquely
identify each segment of a map.
_map_segment.map_id
CIF
This item is a pointer to _map.id
in the MAP category.
_map_segment.details
CIF
The value of _map_segment.details should give a
description of special aspects of each segment of a map.
Example:
Example to be provided
_map_segment.variant
CIF
The value of _map_segment.variant gives the variant
to which the given map segment is related.
If this value is not given, the variant is assumed to be the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
VARIANT
CIF
Data items in the VARIANT category record
the details about sets of variants of data items.
There is sometimes a need to allow for multiple versions of the
same data items in order to allow for refinements and corrections
to earlier assumptions, observations and calculations. In order
to allow data sets to contain more than one variant of the same
information, an optional *.variant data item as a pointer to
_variant.variant has been added to the key of every category,
as an implicit data item with a null (empty) default value.
All rows in a category with the same variant value are considered to be related to one another and to all rows in other categories with the same variant value. For a given variant, all such rows are also considered to be related to all rows with a null variant value, except that a row with a null variant value for which all other components of its key are identical to those entries in another row with a non-null variant value is not related the the rows with that non-null variant value. This behaviour is similar to the convention for identifying alternate conformers in an atom list.
An optional role may be specified for a variant as the value of
_variant.role. Possible roles are null, 'preferred',
'raw data', 'unsuccessful trial'.
variants may carry an optional timestamp as the value of
_variant.timestamp.
variants may be related to other variants from which they were
derived by the value of _variant.variant_of.
Further details about the variant may be specified as the value
of _variant.details.
In order to allow variant information from multiple datasets to be combined, _variant.diffrn_id and/or _variant.entry_id may be used.
Example:
loop_ _variant.variant _variant.role _variant.timestamp _variant.variant_of _variant.details . "raw data" 2007-08-03T23:20:00 .. indexed "preferred" 2007-08-04T01:17:28. "indexed cell and refined beam centre"
loop_ _diffrn_detector_element.detector_id _diffrn_detector_element.id _diffrn_detector_element.reference_center_fast _diffrn_detector_element.reference_center_slow _diffrn_detector_element.reference_center_units _diffrn_detector_element.variant d1 d1_ccd_1 201.5 201.5 mm . d1 d1_ccd_2 -1.8 201.5 mm . d1 d1_ccd_3 201.6 -1.4 mm . d1 d1_ccd_4 -1.7 -1.5 mm . d1 d1_ccd_1 201.3 201.6 mm indexed d1 d1_ccd_2 -2.0 201.6 mm indexed d1 d1_ccd_3 201.3 -1.5 mm indexed d1 d1_ccd_4 -1.9 -1.6 mm indexed
_variant.details
CIF
A description of special aspects of the variant.
Example:
indexed cell and refined beam centre
_variant.diffrn_id
CIF
This item is a pointer to _diffrn.id in the
diffrn category.
_variant.entry_id
CIF
This item is a pointer to _entry.id in the
entry category
_variant.role
CIF
The value of _variant.role specified a role
for this variant. Possible roles are null, 'preferred', 'raw data', and 'unsuccessful trial'.
A null value for _variant.role leaves the
precise role of the variant unspecified. No inference should
be made that the variant with the latest time stamp is
preferred.
_variant.timestamp
CIF
The date and time identifying a variant. This is not
necessarily the precise time of the measurement or calculation of the individual related data items, but a timestamp that reflects the order in which the variants were defined.
_variant.variant
CIF
Data names: _variant.variant _variant.variant_of _array_data.variant _array_data_external_data.variant _array_element_size.variant _array_intensities.variant _array_structure.variant _array_structure_list.variant _array_structure_list_axis.variant _array_structure_list_section.variant _axis.variant _diffrn_data_frame.variant _diffrn_detector.variant _diffrn_detector_axis.variant _diffrn_detector_element.variant _diffrn_measurement.variant _diffrn_measurement_axis.variant _diffrn_radiation.variant _diffrn_refln.variant _diffrn_scan.variant _diffrn_scan_axis.variant _diffrn_scan_collection.variant _diffrn_scan_frame.variant _diffrn_scan_frame_axis.variant _diffrn_scan_frame_monitor.variant _map.variant _map_segment.variant
The value of _variant.variant must uniquely identify
each variant for the given diffraction experiment and/or entry
This item has been made implicit and given a default value of null.
_variant.variant_of
CIF
The value of _variant.variant_of gives the variant
from which this variant was derived. If this value is not given, the variant is assumed to be derived from the default null variant.
This item is a pointer to _variant.variant in the
VARIANT category.
Revision history
Version 1.8.6 (2022-05-11) Add missing archive tags to external data tags, clarify use of those tags and correct typos (jrh, hjb) + Add _array_data_external_data.archive_format + Add _array_data_external_data.archive_path
Version 1.8.5 (2021-07-09) Handling of external data (jrh, ab, hjb) + Remove preliminary versions of external data tags in ARRAY_DATA + Add ARRAY_DATA_EXTERNAL_DATA + Add _array_data.external_data_id + Add _array_data_external_data.format + Add _array_data_external_data.frame + Add _array_data_external_data.id + Add _array_data_external_data.path + Add _array_data_external_data.uri + Add _array_data_external_data.variant + Add _array_data_external_data.version
Version 1.8.4 (2021-04-15) Copy-editing refinements (bm)
+ Add _item_related.related_name and
"_item_related.function_code replacedby" to deprecated items.
+ Add "_item_default.value ." to *_variant items
+ Change uses of \%Angstroms to \%angstr\"oms
+ Change category save frames to upper case names
+ Fix misssing superscript terminating ^
Preliminary version of external data tags (jrh)
+ Add _array_data.external_format
+ Add _array_data.external_version
+ Add _array_data.external_location_uri
+ Add _array_data.external_path
+ Add _array_data.external_frame
+ Add _array_data.external_archive_path
+ Add _array_data.external_archive_format
Note the second block of mads is a preliminary version. When they are
done they may well be removed from here and reappear in a 1.8.5
dictionary.
Version 1.8.3 (2021-02-28) Correction as per Brian McMahon + Fix _item.name for _array_structure_list.array_section_id + Remove spurious _item_aliases.alias_name from _diffrn_radiation.polarisn_ratio_esd + Remove spurious reference to _diffrn_scan_frame.time_rstrt_incr + Provide missing _diffrn_scan_frame_monitor.monitor_value definition + Deprecate _diffrn_scan_frame_monitor.value
Version 1.8.2 (2021-02-21) Corrections and additions for ITVG 2021 + Add McStas as an axis coordinate system + Add _array_intensities.underload as optional + Add _diffrn_scan_collection.details as optional + Add _diffrn_scan_collection.variant as optional
Version 1.8.1 (2021-01-30) Copy-paste error corrections (JRH) + Fix double underscore in _diffrn_data_frame.center_derived + Fix wrong _item.name in _diffrn_scan.date_end_estimated + Fix wrong _item.mandatory_code in _diffrn_scan_frame_monitor.frame_id + Fix wrong _item.mandatory_code in _variant.variant_of
Version 1.8.0 (2021-01-24) Changes for 2021 ITVG and conformance with Gold Standard and NXmx (HJB) + Add _diffrn_data_frame.center_derived as optional + Add _diffrn_measurement.sample_detector_distance_derived as optional + Change _diffrn_scan.date_start to mandatory + Add _diffrn_scan.date_end_estimated as mandatory + Fix .array_id and .binary_id columns to be implicit in all cases to facilitate mini_cbfs
Version 1.7.11 (2018-12-03) Changes for CBFlib 0.9.6 release (HJB) + Remove _array_structure_list.array_section_id + Revisions to _category.NX_mapping_details in most categories for array sections. + Change to uniform use of entry:NXentry + Change to uniform use of identification of NXdetector by detector element + Change to uniform use of data_ARRAYID_BINARYID + Add _array_structure_list.array_section_id + Add _map_segment.mask_array_section_id + Add _diffrn_scan_collection.scan_id + Add _diffrn_scan_collection.type + Add _diffrn_scan_collection.translation_width + Add _diffrn_radiation.beam_width + Add _diffrn_radiation.beam_height + Add _diffrn_radiation.beam_flux
Version 1.7.10 (2014-04-25) Additions of esd's to polarization tags. Change to NeXus mapping to use NXtransformations instead of NXpoise (HJB) + Add _diffrn_radiation.polarisn_norm_esd, _diffrn_radiation.polarisn_ratio_esd, _diffrn_radiation.polarizn_source_norm_esd, _diffrn_radiation.polarizn_source_ratio_esd, _diffrn_radiation.polarizn_Stokes_I_esd, _diffrn_radiation.polarizn_Stokes_Q_esd, _diffrn_radiation.polarizn_Stokes_U_esd, _diffrn_radiation.polarizn_Stokes_V_esd, _diffrn_scan_frame.polarizn_Stokes_I_esd, _diffrn_scan_frame.polarizn_Stokes_Q_esd, _diffrn_scan_frame.polarizn_Stokes_U_esd, _diffrn_scan_frame.polarizn_Stokes_V_esd. + Change NeXus mapping for ARRAY_STRUCTURE_LIST ARRAY_STRUCTURE_LIST_AXIS, AXIS, DIFFRN_DETECTOR_AXIS, DIFFRN_MEASUREMENT_AXIS, DIFFRN_SCAN_FRAME_AXIS.
Version 1.7.9 (2014-04-05) Corrections to Stokes parameter description. (HJB) + Clarify the meaning of _diffrn_radiation.polarizn_Stokes_I and _diffrn_scan_frame.polarizn_Stokes_I to explicitly include non-polarized component. + Provide missing factor of 2 in _diffrn_radiation.polarizn_Stokes_V description and _diffrn_scan_frame.polarizn_Stokes_V description.
Version 1.7.8 (2014-02-22) Minor changes to NeXus mapping. (HJB) + Conform NeXus mapping of DIFFRN_DETECTOR to neXus NXdetector base class terminology + Add _diffrn_detector.gain_setting to handle the reverse mapping from NeXus of the equivalent field in NXdetector.
Version 1.7.7 (2014-02-22) Major changes to NeXus mapping to conform to JS functional mapping prototype, add Stoke parameter tags for polarization and beam intensity, and add an new tag for FEL axes (HJB) + Add _axis.equipment_component, _diffrn_radiation.polarizn_Stokes_I, _diffrn_radiation.polarizn_Stokes_Q, _diffrn_radiation.polarizn_Stokes_U, _diffrn_radiation.polarizn_Stokes_V, _diffrn_scan_frame.polarizn_Stokes_I, _diffrn_scan_frame.polarizn_Stokes_Q, _diffrn_scan_frame.polarizn_Stokes_U, _diffrn_scan_frame.polarizn_Stokes_V. + Remove erroneous type code from _diffrn_scan_frame_monitor.value. + Update dictionary version
Version 1.7.6 (2013-10-29) To avoid a conflict with PDB software, remove the null value enumeration for _variant.role (HJB)
Version 1.7.5 (2013-10-27) At request of JW for the PDB move _category.NX_mapping_details
to be adjacent to other category tags. (HJB)
Version 1.7.4 (2013-10-23) Minor cleanup and remove spurious tag
+ remove spurious _array_structure_list_section.array_set_id
references. (JS)
+ Change case of category names to conform to PDB conventions. (JW)
Version 1.7.3 (2013-10-15) Major cleanup of dictionary typos, misplaced loops, etc by John Westbrook + Change _item.mandatory_code of all *.variant to implicit + Add _diffrn_refln.id and _diffrn_refln.diffrn_id + Correct many _item.name values that were wrong or missing quote marks
Version 1.7.2 (2013-10-07) Add FEL detector positioning tags and change back to NXgoniometer + Add _axis.rotation_axis and _axis.rotation and + Change NXsample back to NXgoniometer
Version 1.7.1 (2013-08-10) Minor cleanup (HJB) + Correction to description of _diffrn_data_frame.array_section_id + Change NXgoniometer to NXsample + Fix typos in NeXus mappings
Version 1.7 (2013-06-18) Additions to start merge of CBF, HDF5 and NeXus (HJB) + Define new ARRAY_STRUCTURE_LIST_SECTION category + Add new _category.NX_mapping_details DDL tag to carry details on NeXus category mappings. + Define new tags _array_structure_list_section.array_id, _array_structure_list_section.id, _array_structure_list_section.index, _array_structure_list_section.end, _array_structure_list_section.start, _array_structure_list_section.stride, _array_structure_list_section.variant, _diffrn_data_frame.array_section_id, _diffrn_detector.layer_thickness, _map_segment.array_section_id, _map_segment.mask_array_section_id
Version 1.6.4 (2011-07-02) Corrections to support DLS Dectris header as per G. Winter (HJB) + Define new tags _diffrn_scan.time_period, _diffrn_scan.time_rstrt_incr, _diffrn_scan_frame.time_period, _diffrn_scan_frame.time_rstrt_incr + fix bad category name in loop in _diffrn_detector.id + remove stray text field terminator at line 4642 + fix unquoted tag as a value in _diffrn_scan_frame_monitor.id + make formerly mandatory and implicit deprecated items non-mandatory
Version 1.6.3 (2010-08-26) Cumulative corrections from 1.6.0, 1, 2 drafts (HJB) + Move descriptive dictionary comments into _datablock.description with category tree described + add default _array_data.array_id value of 1 + add option of CBF_BACKGROUND_OFFSET_DELTA compression + add VARIANT category and tags + add DIFFRN_SCAN_FRAME_MONITOR category
Version 1.5.4 (2007-07-28) Typographics corrections (HJB)
+ Corrected embedded degree characters to \%
+ Corrected embedded Aring to \%A
+ Added trailing ^ for a power
+ Removed 2 cases of a space after an underscore
in tag name.
Version 1.5.3 (2007-07-08) Changes to support SLS miniCBF and suggestions from the 24 May 07 BNL imgCIF workshop (HJB) + Added new data items '_array_data.header_contents', '_array_data.header_convention', '_diffrn_data_frame.center_fast', '_diffrn_data_frame.center_slow', '_diffrn_data_frame.center_units', '_diffrn_measurement.sample_detector_distance', '_diffrn_measurement.sample_detector_voffset + Deprecated data items '_diffrn_detector_element.center[1]', '_diffrn_detector_element.center[2]' + Added comments and example on miniCBF + Changed all array_id data items to implicit
Version 1.5.2 (2007-05-06) Further clarifications of the coordinate system. (HJB)
Version 1.5.1 (2007-04-26) Improve definition of X-axis to cover the case of no goniometer
and clean up more line folds (HJB)
Version 1.5 (2007-07-25) This is a cumulative list of the changes proposed since the imgCIF workshop in Hawaii in July 2006. It is the result of contributions by H. J. Bernstein, A. Hammersley, J. Wright and W. Kabsch. 2007-02-19 Consolidated changes (edited by HJB) + Added new data items '_array_structure.compression_type_flag', '_array_structure_list_axis.fract_displacement', '_array_structure_list_axis.displacement_increment', '_array_structure_list_axis.reference_angle', '_array_structure_list_axis.reference_displacement', '_axis.system', '_diffrn_detector_element.reference_center_fast', '_diffrn_detector_element.reference_center_slow', '_diffrn_scan_axis.reference_angle', '_diffrn_scan_axis.reference_displacement', '_map.details', '_map.diffrn_id', '_map.entry_id', '_map.id', '_map_segment.array_id', '_map_segment.binary_id', '_map_segment.mask_array_id', '_map_segment.mask_binary_id', '_map_segment.id', '_map_segment.map_id', '_map_segment.details. + Change type of '_array_structure.byte_order' and '_array_structure.compression_type' to ucode to make these values case-insensitive + Add values 'packed_v2' and 'byte_offset' to enumeration of values for '_array_structure.compression_type' + Add to definitions for the binary data type to handle new compression types, maps, and a variety of new axis types. 2007-07-25 Cleanup of typos for formal release (HJB) + Corrected text fields for reference_ tag descriptions that were off by one column + Fix typos in comments listing fract_ tags + Changed name of release from 1.5_DRAFT to 1.5 + Fix unclosed text fields in various map definitions
Version 1.4 (2006-07-04) This is a change to reintegrate all changes made in the course of publication of ITVG, by the RCSB from April 2005 through August 2008 and changes for the 2006 imgCIF workshop in Hawaii. 2006-07-04 Consolidated changes for the 2006 imgCIF workshop (edited by HJB) + Correct type of '_array_structure_list.direction' from 'int' to 'code'. + Added new data items suggested by CN '_diffrn_data_frame.details' '_array_intensities.pixel_fast_bin_size', '_array_intensities.pixel_slow_bin_size and '_array_intensities.pixel_binning_method + Added deprecated item for completeness '_diffrn_frame_data.details' + Added entry for missing item in contents list '_array_structure_list_axis.displacement' + Added new MIME type X-BASE32K based on work by VL, KM, GD, HJB + Correct description of MIME boundary delimiter to start in column 1. + General cleanup of text fields to conform to changes for ITVG by removing empty lines at start and finish of text field. + Amend example for ARRAY_INTENSITIES to include binning. + Add local copy of type specification (as 'code') for all children of '_diffrn.id '. + For consistency, change all references to 'pi' to '\p' and all references to 'Angstroms' to '\%Angstroms'. + Clean up all powers to use IUCr convention of '^power^', as in '10^3^' for '10**3'. + Update 'yyyy-mm-dd' type regex to allow truncation from the right and improve comments to explain handling of related mmCIF 'yyyy-mm-dd:hh:mm' type, and use of 'Z' for GMT time zone. 2005-03-08 and 2004-08-08 fixed cases where _item_units.code used instead of _item_type.code (JDW) 2004-04-15 fixed item ordering in _diffrn_measurement_axis.measurement_id added sub_category 'vector' (JDW)
Version 1.3.2 (2005-06-25) 2005-06-25 ITEM_TYPE_LIST: code, ucode, line, uline regexps updated to those of current mmCIF; float modified by allowing integers terminated by a point as valid. The 'time' part of yyyy-mm-dd types made optional in the regexp. (BM) 2005-06-17 Minor corrections as for proofs for IT G Chapter 4.6 (NJA) 2005-02-21 Minor corrections to spelling and punctuation (NJA) 2005-01-08 Changes as per Nicola Ashcroft. + Updated example 1 for DIFFRN_MEASUREMENT to agree with mmCIF. + Spelled out "micrometres" for "um" and "millimetres" for "mm". + Removed phrase "which may be stored" from ARRAY_STRUCTURE description. + Removed unused 'byte-offsets' compressions and updated cites to ITVG for '_array_structure.compression_type'. (HJB)
Version 1.3.1 (2003-08-13) Changes as per Frances C. Bernstein. + Identify initials. + Adopt British spelling for centre in text. + Set \p and \%Angstrom and powers. + Clean up commas and unclear wordings. + Clean up tenses in history. Changes as per Gotzon Madariaga. + Fix the ARRAY_DATA example to align '_array_data.binary_id' and X-Binary-ID. + Add a range to '_array_intensities.gain_esd '. + In the example of DIFFRN_DETECTOR_ELEMENT, '_diffrn_detector_element.id' and '_diffrn_detector_element.detector_id' interchanged. + Fix typos for direction, detector and axes. + Clarify description of polarisation. + Clarify axes in '_diffrn_detector_element.center[1]' '_diffrn_detector_element.center[2] '. + Add local item types for items that are pointers. (HJB)
Version 1.3.0 (2003-07-24) Changes as per Brian McMahon. + Consistently quote tags embedded in text. + Clean up introductory comments. + Adjust line lengths to fit in 80 character window. + Fix several descriptions in AXIS category which referred to '_axis.type' instead of the current item. + Fix erroneous use of deprecated item '_diffrn_detector_axis.id' in examples for DIFFRN_SCAN_AXIS. + Add deprecated items '_diffrn_detector_axis.id' and '_diffrn_measurement_axis.id'. (HJB)
Version 1.2.4 (2003-07-14) Changes as per I. David Brown.
+ Enhance descriptions in DIFFRN_SCAN_AXIS to make them less
dependent on the descriptions in DIFFRN_SCAN_FRAME_AXIS.
+ Provide a copy of the deprecated DIFFRN_FRAME_DATA
category for completeness.
(HJB)
Version 1.2.3 (2003-07-03) Cleanup to conform to ITVG. + Correct sign error in ..._cubed units. + Correct '_diffrn_radiation.polarisn_norm' range. (HJB)
Version 1.2.2 (2003-03-10) Correction of typos in various DIFFRN_SCAN_AXIS descriptions.
(HJB)
Version 1.2.1 (2003-02-22) Correction of ATOM_ for ARRAY_ typos in various descriptions.
(HJB)
Version 1.2 (2003-02-07) Corrections to encodings (remove extraneous hyphens) remove extraneous underscore in '_array_structure.encoding_type' enumeration. Correct typos in items units list. (HJB)
Version 1.1.3 (2001-04-19) Another typo corrections by Wilfred Li, and cleanup by HJB.
Version 1.1.2 (2001-03-06) Several typo corrections by Wilfred Li.
Version 1.1.1 (2001-02-16) Several typo corrections by JW.
Version 1.1 (2001-02-06) Draft resulting from discussions on header for use at NSLS. (HJB) + Change DIFFRN_FRAME_DATA to DIFFRN_DATA_FRAME. + Change '_diffrn_detector_axis.id' to '_diffrn_detector_axis.detector_id '. + Add '_diffrn_measurement_axis.measurement_device' and change '_diffrn_measurement_axis.id' to '_diffrn_measurement_axis.measurement_id '. + Add '_diffrn_radiation.div_x_source', '_diffrn_radiation.div_y_source', '_diffrn_radiation.div_x_y_source', '_diffrn_radiation.polarizn_source_norm', '_diffrn_radiation.polarizn_source_ratio', '_diffrn_scan.date_end', '_diffrn_scan.date_start', '_diffrn_scan_axis.angle_rstrt_incr', '_diffrn_scan_axis.displacement_rstrt_incr', '_diffrn_scan_frame_axis.angle_increment', '_diffrn_scan_frame_axis.angle_rstrt_incr', '_diffrn_scan_frame_axis.displacement', '_diffrn_scan_frame_axis.displacement_increment',and '_diffrn_scan_frame_axis.displacement_rstrt_incr '. + Add '_diffrn_measurement.device' to category key. + Update yyyy-mm-dd to allow optional time with fractional seconds for time stamps. + Fix typos caught by RS. + Add ARRAY_STRUCTURE_LIST_AXIS category, and use concept of axis sets to allow for coupled axes, as in spiral scans. + Add examples for fairly complete headers thanks to R. Sweet and P. Ellis.
Version 1.0 (2000-12-21) Release version - few typos and tidying up. (BM & HJB)
+ Move ITEM_TYPE_LIST, ITEM_UNITS_LIST and DICTIONARY_HISTORY to end
of dictionary.
+ Alphabetize dictionary.
Version 0.7.1 (2000-09-29) Cleanup fixes. (JW) + Correct spelling of DIFFRN_MEASUREMENT_AXIS in '_axis.id' + Correct ordering of uses of '_item.mandatory_code' and '_item_default.value'.
Version 0.7.0 (2000-09-09) Respond to comments by I. David Brown. (HJB) + Add further comments on '\n' and '\t'. + Update ITEM_UNITS_LIST by taking section from mmCIF dictionary and adding metres. Change 'meter' to 'metre' throughout. + Add missing enumerations to '_array_structure.compression_type' and make 'none' the default. + Remove parent-child relationship between '_array_structure_list.index' and '_array_structure_list.precedence'. + Improve alphabetization. + Fix '_array_intensities.gain_esd' related function. + Improve comments in AXIS. + Fix DIFFRN_FRAME_DATA example. + Remove erroneous DIFFRN_MEASUREMENT example. + Add '_diffrn_measurement_axis.id' to the category key.
Version 0.6.0 (1999-01-14) Remove redundant information for ENC_NONE data. (HJB)
+ After the D5 remove binary section identifier, size and
compression type.
+ Add Control-L to header.
Version 0.5.1 (1999-01-03) Cleanup of typos and syntax errors. (HJB) + Cleanup example details for DIFFRN_SCAN category. + Add missing quote marks for '_diffrn_scan.id' definition.
Version 0.5 (1999-01-01) Modifications for axis definitions and reduction of binary header. (HJB) + Restore '_diffrn_detector.diffrn_id' to DIFFRN_DETECTOR KEY. + Add AXIS category. + Bring in complete DIFFRN_DETECTOR and DIFFRN_MEASUREMENT categories from cif_mm.dic for clarity. + Change '_array_structure.encoding_type' from type code to uline and added X-Binary-Element-Type to MIME header. + Add detector beam centre '_diffrn_detector_element.center[1]' and '_diffrn_detector_element.center[2] '. + Correct item name of '_diffrn_refln.frame_id '. + Replace reference to '_array_intensities.undefined' by '_array_intensities.undefined_value'. + Replace references to '_array_intensity.scaling' with '_array_intensities.scaling'. + Add DIFFRN_SCAN ... categories.
Version 0.4 (1998-08-11) Modifications to the 0.3 imgCIF draft. (HJB)
+ Reflow comment lines over 80 characters and corrected typos.
+ Update examples and descriptions of MIME encoded data.
+ Change name to cbfext98.dic.
Version 0.3 (1998-07-04) Modifications for imgCIF. (HJB) + Add binary type, which is a text field containing a variant on MIME encoded data. + Change type of '_array_data.data' to binary and specify internal structure of raw binary data. + Add '_array_data.binary_id', and make '_diffrn_frame_data.binary_id' and '_array_intensities.binary_id' into pointers to this item.
Version 0.2 (1997-12-02) Modifications to the CBF draft. (JW) + Add category hierarchy for describing frame data developed from discussions at the BNL imgCIF Workshop Oct 1997. The following changes are made in implementing the workshop draft. Category DIFFRN_array_data is renamed to DIFFRN_FRAME_DATA. Category DIFFRN_FRAME_TYPE is renamed to DIFFRN_DETECTOR_ELEMENT . The parent item for '_diffrn_frame_data.array_id' is changed from '_array_structure_list.array_id' to '_array_structure.id'. Item '_diffrn_detector.array_id' is deleted. + Add data item '_diffrn_frame_data.binary_id' to identify data groups within a binary section. The formal identification of the binary section is still fuzzy.
Version 0.1 (1997-01-24) First draft of this dictionary in DDL 2.1 compliant format by John
Westbrook (JW). This version is adapted from the Crystallographic
Binary File (CBF) Format Draft Proposal provided by Andy Hammersley
(AH).
Modifications to the CBF draft. (JW)
+ In this version the array description has been cast in the categories
ARRAY_STRUCTURE and ARRAY_STRUCTURE_LIST. These categories
have been generalized to describe array data of arbitrary dimension.
+ Array data in this description are contained in the category
ARRAY_DATA . This departs from the CBF notion of data existing
in some special comment. In this description, data are handled as an
ordinary data item encapsulated in a character data type. Although
data this manner deviates from CIF conventions, it does not violate
any DDL 2.1 rules. DDL 2.1 regular expressions can be used to define
the binary representation which will permit some level of data
validation. In this version, the placeholder type code "any" has
been used. This translates to a regular expression which will match
any pattern.
It should be noted that DDL 2.1 already supports array data objects
although these have not been used in the current mmCIF dictionary.
It may be possible to use the DDL 2.1 ITEM_STRUCTURE and
ITEM_STRUCTURE_LIST categories to provide the information that is
carried in by the ARRAY_STRUCTURE and ARRAY_STRUCTURE_LIST. By
moving the array structure to the DDL level it would be possible to
define an array type as well as a regular expression defining the
data format.
+ Multiple array sections can be properly handled within a single
datablock.