做晶体结构解析即Data processing通常用的软件有HKL和XDS。本文主要介绍一下如何使用DIALS进行衍射数据的处理。因为有时候如果XDS等软件解析不出来或者有问题,可以利用DIALS重新处理,能起到一个备选方案或者比较的作用,大致思路和流程基本上是一样的。
##第一步数据导入:Import
$dials.import data_path/data #可以是.cbf格式文件,如果线站为SSRF的10U2,则可能需要再指定一下轴:axes=0,1,0
输出文件为imported.expt,可通过dials.image_viewer进行查看:
$dials.image_viewer imported.expt ##通常用Adxv查看可能会更方便一点
##第二步 Find Spots:
$dials.find_spots imported.expt nproc=40 ##nproc为可选项,主要是用来设置进程数,根据服务器实际情况来定,我一般设置为40
输出文件为strong.refl,输出的log信息末尾中可通过“*”评估点强弱的均一性,若需要删除一些点强度波动比较大的Images,可以在上一步导入数据时,加上image_range的选项: image_range=1,500 (e.g.), 然后重新Find spots;若数据有很多冰环,此步可考虑通过ice_rings.filter选项来过滤掉冰环的影响:ice_rings.filter=True (默认为False)
##第三步 Index:
$dials.index imported.expt strong.refl
输出文件为index.expt和index.refl。输出的log信息中,主要关注rmsd,一般在0.2或0.3左右,%index一般大于80%,Metric fit 一般小于0.1。
##第四步 Refine:
$dials.refine index.expt index.refl ##log信息中同样关注rmsd,一般不高于1
输出文件为refined.expt和refined.refl
##第五步积分 Integrate:
$dials.integrate refined.expt refined.refl nproc=40 ##默认用P1空间群去做积分。此处也可以设置一下进程数
##第六步输出用于CCP4进行Aimless,即做scale 和 merge 的mtz文件:
$dials.export integrate.expt integrate.refl mtz.hklout=integrate.mtz ##integrate.mtz文件即为设置的输出文件
###参考官网Tutorials:
https://dials.github.io/documentation/tutorials/index.html#