-
Notifications
You must be signed in to change notification settings - Fork 6
Release Notes for CIF Powder Dictionary 2.5.0
This release of the CIF powder dictionary fully utilises new CIF standards in order to spread data over multiple data blocks. New categories and data names allow much more detail to be provided about calibration of intensity, wavelength, and position, as well as describing Quantitative Phase Analysis (QPA), experimental geometry, and preferred orientation. A complete list of changes since version 2.4.1 (released in 2021) is available here.
Accurate QPA relies on precise calibration. New category PD_QPA_CALIB_FACTOR records the calibration factor for a particular
phase used in calibration, and PD_QPA_INTENSITY_FACTOR records the (often software-dependent) calibration factor for each
particular combination of phase and histogram.
PD_QPA_EXTERNAL_STD holds information about the external standard used for determining the diffractometer K constant, and
PD_QPA_INTERNAL_STD covers details about any internal standard used in QPA, including information like crystallinity and
additional mass. PD_QPA_OVERALL is provided in order to identify which QPA approach was adopted, and any further details.
As a result of the more fine-grained approach to calibrations described below, the original PD_CALIB, PD_CALIB_OFFSET, and
PD_CALIB_STD categories have been deprecated.
Category PD_CALIB_DETECTED_INTENSITY covers calibration of detector response when there are multiple detectors.
In contrast, PD_CALIB_INCIDENT_INTENSITY records the incident beam intensity for the instrument as a whole, suitable for
normalisation of diffractograms to one another. This should not be confused with the values recorded during step scanning in _pd_meas.counts_monitor, which is used to normalise individual points in a diffractogram to one another.
Wavelength calibration can now be described by specifying the the diffractogram
(_diffrn_radiation_wavelength.diffractogram.id)
and phase (_diffrn_radiation_wavelength.phase_id) used for wavelength calibration.
Rather than create a category for every possible independent measurement coordinate, category
PD_CALIB_XCOORD contains data names
for both nominal and actual values of 2θ, d-spacing, Q, time of flight, incident energy, and detected energy. Corrections to
the relevant coordinate are specified by tabulating the relevant actual and nominal values. Where measurements are denominated as
channels, the nominal channel can be linked to the relevant actual coordinate (typically time of flight).
A particular calibration can be assigned an identifier, allowing multiple calibrations to be specified (e.g. if there are multiple detectors).
Two approaches to describing preferred orientation may now be captured using data names from the self-explanatory categories PD_PREF_ORIENT_MARCH_DOLLASE and PD_PREF_ORIENT_SPHERICAL_HARMONICS. Category PD_PREF_ORIENT is available for
describing anything not covered by the more specific categories.
The imgCIF dictionary describes how blobs of binary data are interpreted as data from 2D (or more) detectors
oriented in a specified experimental geometry. Data names have been added to the powder dictionary that specify which imgCIF scan
(_diffrn_scan.id) and detector (_diffrn_detector.id) a given diffractogram is derived from, allowing raw 2D powder
diffraction data to be explicitly referenced in experimental data sets reporting powder diffraction results.
As part of this work, a distinction has been drawn between "channels" and "detectors". A channel, as used when
tabulating data with _pd_meas.channel, refers to a separate intensity-measuring device whose identifier (typically a
number) can be converted to a physical quantity (such as angle or wavelength) following measurement. A detector,
identified with _pd_instr_detector.id, should be used for all other intensity-measuring devices, including those
defined by core CIF in DIFFRN_DETECTOR.
In the new multi-block paradigm, data blocks belonging together are given identical values of _audit_dataset.id. Relationships between
items in those blocks are described by assigning identifiers for each instance of an item, and then using those identifiers where
necessary to create the relationship.
In the following example description, identifiers are bolded. The fragment below states that diffractogram PEAKYPLOT was collected on instrument
Cu_workhorse, which used a radiation source
labelled Cu_tube. The list of wavelengths from Cu_tube is given in the diffrn_radiation_wavelength loop. The _diffrn_radiation_wavelength.radiation_id key data name, defined in the dictionary but not usually required to be
explicitly stated as it can be deduced, ensures that the list of wavelengths is associated with Cu_tube in a machine-readable
manner.
_pd_diffractogram.id PEAKYPLOT
_pd_diffractogram.instr_id Cu_workhorse
_pd_instr.id Cu_workhorse
_pd_instr.radiation_id Cu_tube
_diffrn_radiation.id Cu_tube
loop_
_diffrn_radiation_wavelength.id
_diffrn_radiation_wavelength.value
_diffrn_radiation_wavelength.wt
1 1.534753 0.0159
2 1.540596 0.5691
3 1.541058 0.0762
4 1.544410 0.2517
5 1.544721 0.0871
The latest version creates many such identifiers and data names referring to those identifiers, covering phases, diffractograms, peaks, calibrations, instruments, detectors, specimens, materials, and specimen preparation. Identifiers only need to be explicitly provided where more than one of the item identified is present in the dataset.
In keeping with the move to the new multi-block approach, PD_BLOCK and PD_BLOCK_DIFFRACTOGRAM have been deprecated. _audit_dataset.id, _audit.block_id from the core dictionary and the new _pd_diffractogram.id from the powder dictionary may be used instead to achieve the same goals.
The PD_MEAS_INFO_AUTHOR and PD_PROC_INFO_AUTHOR categories have been deprecated, as the core dictionary now offers the same functionality via AUDIT_AUTHOR and AUDIT_AUTHOR_ROLE. As noted above, PD_CALIB, PD_CALIB_OFFSET, and PD_CALIB_STD categories have also been deprecated as more fine-grained calibration specifications are now available.
_pd_instr_detector.circle_radius has been added to specify the detector circle (also known as the "goniometer circle") for instruments
where this is well-defined.