Thursday, 25 February 2016

Processing Eiger data

Starting with a standard Eiger example data set from DECTRIS FTP site:

insu_with_bs_master.h5
insu_with_bs_data_000001.h5
...
insu_with_bs_data_000037.h5

Broadly we can ignore the 000 files and just run from the master file - everything else will come out by magic (or by HDF5 references). First import the data into DIALS - this just reads the master file and tries to make sense of it:

dials.import insu_with_bs_master.h5

Finding spots etc. works exactly as normal however sometimes there are some unmasked "test" pixels which should be taken into account via the hot pixel mask:

dials.find_spots datablock.json nproc=20 write_hot_mask=true spotfinder.filter.min_spot_size=3

These are the same as the usual commands:

dials.index datablock.json strong.pickle space_group=I23
dials.refine indexed.pickle experiments.json use_all_reflections=true \
scan_varying=true

But for integration pass in the mask:

dials.integrate refined_experiments.json refined.pickle nproc=20 \
mask=hot_mask_0.pickle

Now everything else is as per normal:

dials.export integrated.pickle integrated_experiments.json \
mtz.hklout=integrated.mtz

pointless hklin integrated.mtz hklout sorted.mtz 

aimless hklin sorted.mtz hklout scaled.mtz << eof
anomalous on
resolution 1.4
eof


Starting from scaled.mtz can phase by S-SAD with SHELX C/D/E which suggests this is about right, feedback welcome - dials-support@lists.sourceforge.net