Table Of Contents

Previous topic

Command line interface

Next topic



This executable handles all steps of the diffraction processing, indicated by different modes or commands, as described in more detail below. It is run from the top-level directory that contains the diffraction patterns in individual subdirectories.

NOTE: Prior to the extraction, a manual lattice verification step is recommended using the giplt_diff_manager.



Iterate over all image sub-directories and run the particular processing step indicated by MODE if one of the following is true:

  • that step hasn’t been run yet (the resulting data files are not present)
  • its input files are newer than its result files, or the input parameters in info.xml are newer than the output parameters.
  • the processing step is forced with -f (see below)

If a required input files is missing, or an empty file named ignore is present in the image directory, that particular directory will always be skipped, irrespective if one or more of the above conditions holds.

Info Files

All modes will retrieve their options from either the top-level project.xml or the image specific info.xml files (in the image directory), under the top-level tag DiffProcessing. If an option appears twice, the one in info.xml takes precedence. Most modes also record their main results within info.xml, under the top-level tag DiffProcessingResults.

The item required by all modes is DiffProcessing/ImageMask in project.xml, which defines the regular expression mask to identify the image directories. Only those directories that match this mask will be traversed during processing.

General options

-v N or --verbosity=N
set verbosity level to N (usually 0-5)
-i MASK or --image-mask=MASK
use only image(s) that fit(s) MASK
-f or --force
force re-processing of the particular step, even if the data files already exist (combine with -i to restrict this to some directories, otherwise all image directories will be re-processed)

Diffraction Processing Steps

A single diffraction pattern is processed in various sequential steps. These are applied with the various commands, listed here in order of logical usage:

  1. init: setup directory
  2. mask: beamstop mask handling
  3. origin: determine origin
  4. search: determine lattice
  5. manual lattice verification step with giplt_diff_manager
  6. extract: extract reflections
  7. integrate: integrate reflections
  8. tilt: determine tilt geometry

All general options apply, but some steps have additional options given below.


Syntax: iplt_diff [GENERAL OPTIONS] init

Creates info.xml file in all image directories and fills it with default options. If info.xml already exists, this step will be skipped, unless -f is used; in this case, the default options will be written into the existing file, leaving the rest of the content untouched.


Syntax: iplt_diff [GENERAL OPTIONS] mask

Searches beamstop mask in diffraction pattern, based on the polygon definition in project.xml.

Output: diff_mask.log and mask shift in info.xml


Syntax: iplt_diff [GENERAL OPTIONS] [--fast_origin] origin

Determines the origin, i.e. the location of the (0,0) reflection. The --fast_origin option uses a reduced set of background values to speed up the algorithm, but may deliver less reliable results. NOTE: This algorithm is currently borked, please expect wrong identification of the origin, you can fix this during the manual lattice verification step.

Output: diff_ori.log and origin in info.xml

manual lattice verification step

Use giplt_diff_manager to convert initial lattices into verified ones.


Syntax: iplt_diff [GENERAL OPTIONS] [--assume-verified-lattice] [--ignore-refined-lattice] extract

Runs the main reflection extraction routine, based on a manually verified lattice or previously refined lattice. If neither a verified or refined lattice is present, or the initial lattice is newer than these two, the extraction will not be run. This can be overruled with the --assume-verified-lattice option, which will accept the initial lattice as the verified one (not recommended). As the name suggests, --ignore-refined-lattice will cause the extract routine to ignore a refined lattice and always use the verified one instead.

Input: diffraction pattern as IMGID.tif file in IMGID directory and VerifiedLattice or RefinedLattice in info.xml

Output: IMGID_ext.mtz diff_extract.log, and refined lattice in info.xml


Syntax: iplt_diff [GENERAL OPTIONS] integrate

Converts the information collected during the extract run into iobs and sigiobs, i.e. integrates the peak intensities.

Output: IMGID_int.mtz and diff_integrate.log


Syntax: iplt_diff [GENERAL OPTIONS] tilt

Determines the reciprocal z values for each reflection, either based on a tilt geometry calculated from the unit cell and the refined lattice.

Input: IMGID_int.mtz

Output: IMGID_tilt.mtz diff_tilt.log and InitialTiltGeometry in info.xml