Indexing and integration

From cctbx_xfel
Revision as of 19:51, 27 September 2013 by Hattne (talk | contribs) (Skeleton in place.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Data processing for "diffract-before-destroy" experiments is a serial, two-step procedure. In the first step, the image is

In practice, indexing and integration for "diffract-before-destroy" experiments is a two-step procedure. The first step consists of hitfinding. The purpose of hit-finding is merely to avoid spending further computational resources on images that quickly can be determined to be blank.

Indexing and integration are tightly coupled; it is impossible to integrate an image without an indexing solution.

For historical reasons, hit-findinding and indexing/integration are implemented in the same module, mod_hitfind. On instance of mod_hitfind is configured for hit-finding, while another is configured for indexing and integration.

What action the module takes depends

pyana section

For historical reasons, hit-finding and indexing/integration are both implemented in the same analysis module, called mod_hitfind. To chain the two functions together, pyana must be configured to pass each event through two different instances of the same module. The two instances are differentiated by their name following the colon. In the example below, the first instance is called hitfind, and the second is index.

[pyana]
modules = my_ana_pkg.mod_hitfind:hitfind \
          my_ana_pkg.mod_hitfind:index

Any instance of an analysis module can signal pyana to skip further processing of the event. In the case above, the hitfind instance of mod_hitfind would signal pyana to skip the event if it determines that the image associated with the event is not a hit. In that case, the second instance, index, will never see the event. Otherwise, the event is fed to the second instance, which will attempt indexing and integration on the associated image.

The pyana-section of the processing configuration used for this part of the tutorial has one more feature.

[pyana]
modules = my_ana_pkg.mod_hitfind:hitfind \
          my_ana_pkg.mod_dump:hit        \
          my_ana_pkg.mod_hitfind:index   \
          my_ana_pkg.mod_dump:indexed

Each instance of mod_hitfind is followed by an instance of mod_dump. mod_dump is a simple module that just outputs the image associated with the event to the file system. In the above configuration, images are written to disk if they are determined to be hits, and then written again—possibly using a different name—if indexing and integration succeeds.


Hit-finding

Indexing and integration

The result of successfully indexing an image is essentially a model of crystal–beam interaction. The model not only describes how the crystal is oriented with respect to the direction of the X-ray pulse, but also it's degree of imperfection (i.e. mosaicity), and qualities of the illuminating pulse (e.g. bandwidth). The model