-
Notifications
You must be signed in to change notification settings - Fork 2
Processing MPCCD images by DIALS
MPCCD supports in DIALS is under development. This documents is for developers and experts!
First, read excellent documentation "Processing XFEL data with cctbx.xfel and DIALS" in Computational Crystallography Newsletter 2016, July. Here, I discuss SACLA specific issues.
I assume you have built the latest version of DIALS and CCTBX from the respository. In addition, the following patches must be applied. I am waiting for these patches to be reviewed and merged.
- https://github.com/dials/dials/issues/240
- https://github.com/dials/dials/issues/236
- https://github.com/dials/dials/issues/227
- https://github.com/dials/dials/issues/226
- https://gist.github.com/biochem-fan/fec354238323ea539ce1 (replace the file in modules/cctbx_project/dxtbx/format/)
Import one of the images and run spot finding.
dials.import run266711-0.h5
dials.find_spots datablock.json min_spot_size=2 d_max=13
Inspect spot finding results.
dials.image_viewer datablock.json strong.pickle
If the result is unsatisfactory, tweak gain
, min_spot_size
(try 1, 2, 3) and global_threshold
. Theoretically the gain
is 10, because the Cheetah pipeline normalizes 1 photon to be 10 counts in the output. Also check the resolution of the beam stop shadow.
Prepare index.phil
as follows:
# input.reference_geometry = ../refined_geometry.json
# you can use 14 cores in the serial queue
mp.nproc = 14
# get more info
verbosity = 3
indexing {
known_symmetry {
space_group = P43212
unit_cell = 78.9 78.9 38.1 90 90 90
}
method = real_space_grid_search
# sometimes fft1d works better
# method = fft1d
# needs to be sufficiently high
refinement_protocol.d_min_start = 2.0
# dramatically increases accepted spots in real_space_grid_search
index_assignment.method = local
optimise_initial_basis_vectors = True
}
spotfinder {
filter.min_spot_size = 2
# mask the beam stop
filter.d_max = 13
}
refinement {
parameterisation {
# not sure which is better. The default is False
spherical_relp_model = True
beam.fix = all
detector.fix_list = Dist,Tau1
auto_reduction {
action = fix
min_nref_per_parameter = 1
}
crystal {
unit_cell {
restraints {
tie_to_target {
values = 78.9,78.9,38.1,90,90,90
sigmas = 1,1,1,0,0,0
apply_to_all = True
}
}
}
}
}
}
integration {
integrator = stills
profile.fitting = False
background {
algorithm = simple
simple {
model.algorithm = linear2d
outlier.algorithm = tukey
}
}
}
profile {
gaussian_rs {
min_spots.overall = 0
}
}