技术文章
TECHNICAL ARTICLES
更新时间:2026-05-28
点击次数:22
应用分享-晶体日记(二十九)
APEX6随写-从得到正确的晶胞到得到想要的晶胞
布鲁克X射线部门 张振义
晶胞也许在很多同学的眼里,就是点一下。可能因为暗箱操作太多,大多数同学都没有把这一步当回事。
然而单晶XRD的绝大部分隐蔽的问题都在这里,而这里也恰好是用到了晶体学本身主要的步骤。所以这一步远没有同学们想的那么简单。
当然重申一点:定晶胞不是什么看指标化率,就去决定这个晶体能不能收,能不能解。这是很扯的传统。
一、定晶胞的逻辑
定晶胞的逻辑是:从衍射点的倒空间的排布反推晶胞参数。意思是你给的衍射点不对,那就不可能得到正确的晶胞。遇到稍微复杂的晶体,操作用于Index的衍射点就成了重要的操作步骤。
当然如果你实在不愿去懂里面的逻辑,那就直接Auto模式吧,剩余的部分可以不用看。APEX6自动的设置很多,只不过不全是自动。怎么用决定权在你自己。
二、APEX6可操纵的衍射点
APEX6(之前的版本其实相同) 有哪些方式可以操纵衍射点?
1、Harvest
Harvest 里其实有不少功能。高质量的晶体,怎么操作差别都不大;但晶体学的世界,从来都充满了不完备。遇到复杂晶体,第一步就必须把好关,否则只会徒增后续麻烦。
1,如果遇到衍射各向异性,起始衍射图质量可能很差,无论如何也定不出有效晶胞。这时可以更换起始衍射图,甚至用多次不同角度的 harvest,去挑选衍射点排布好的那一组。
2,如果衍射图上很多点很弱,为了获得准确的衍射信息,可以调整小的信噪比 Min I/σ(I)。这一步对超结构或孪晶的晶胞计算影响很大。当然,对某些特殊结构,也可以适当提高 Min I/σ(I),但绝不能为了 “刷高指标化率" 而自欺欺人。
3,对于无机小晶胞晶体,为了得到更准确的晶胞参数,应尽可能采集更多衍射点。这里是 “轮数 × 每轮衍射图张数" 的关系。但如果晶体没粘稳,甚至出现曲线排列的衍射点,轮数越多,引入的麻烦反而越大。
4,如果衍射图上出现粉末环、冰环,或名的散射信号干扰,可以设定 excluded shells(分辨率屏蔽区间)。注意这里是复数 shells,意味着可以添加多个区间。比如粉末环盖住了 1.2–1.3 Å 和 2.2–2.3 Å,就可以把这两段都设为排除区域。
5,如果做的是高压实验,可以通过观察 Mask 范围,判断高压 DAC 在积分时应设置的角度。
6,如果探测器上有明显噪点,比如宇宙射线、非衍射点噪声,或是同步辐射数据,可以用 save reflections that only span images 排除掉随机出现的假信号。
7,如果晶体本身就有问题,比如非周期性衍射点过多、存在明显孪晶,想定出一个 “正确" 的晶胞,自然要用到 RLATT 里的衍射点手动编辑。
APEX 6提供了诸多的选择工具和分组方法。这里的逻辑如同英语一样十分之简单。个人喜欢Lattice Plane Selection,也有老师喜欢 Lattice Selection。但达到的目的都一样,拆分出自己认为是单独晶体的衍射点。
当然还有更高级的通过Periodic (Modula)Coordinates坐标系的方法。
2、Index
拿到用于定晶胞的衍射点只是第一步,下一步才是运算(Index)。Indexing 本质上是 “暗箱操作",但遇到复杂情况时,我们依然可以通过参数调整,得到想要的晶胞。
1,同步辐射的数据经常会出现beamcenter或者旋转roll angle不对的情况,那么我们就可以调整实际的beamcenter和roll angle。
2,对于Indexing特别的难的情况,比如超大的晶胞,孪晶之类,超乱的混合晶体之类的。 Least Squares是个很好的方法,设定目标检索的范围。
衍射点对了,定晶胞就不会有什么太大的困难,剩下的只是单纯的运算。
Indexing 给出的晶胞参数是初晶胞,并不涉及晶系和 Bravais 格子的判断。只靠几何外形去定对称性,很容易出错 —— 因为外形对称不表示内部结构对称,这种情况在小分子里其实并不少见。结尾的判断,只有在数据还原和结构解析阶段才能真正敲定。
3、Bravais Lattice
Bravais 格子的选择并不简单,但一旦确定了类型,就可以直接选定。对于存在复杂赝对称性的情况,同一晶系下可能有不同的 a/b/c 轴设定,选错了,对后续数据还原同样没有帮助。APEX6 在这方面提供了更多选项。
4、Transformation
当然你还遇到软件给出的晶胞参数排序or角度不是你想要的情况,这时如果你知道自己在做什么就可以很方便地的对晶胞参数进行操纵。放大,缩小,换顺序,转角度都可以在transformation里进行修改。
当然晶胞对不对,还是要看衍射点的。衍射点不符合,你做出一个再漂亮的晶胞也没有用。
三、定晶胞的隐藏方法
定晶胞还有一个隐藏方法:CELL_NOW。它和 Least Squares 思路基本一致,只是多了 domain 相关功能。如今 APEX6 已经把 Domain 找孪晶晶胞的功能做成了 GUI,CELL_NOW 用得少了,但它内部仍有更多可调参数,适合深度调试。
总而言之,面对复杂数据时,只要清楚自己在做什么、知道该怎么做,数据才能被妥善处理。不是点一下不行就说数据不行。
-转载于《布鲁克X射线部门》公众号
扫一扫,关注公众号
服务电话:
021-34685181
上海市松江区千帆路288弄G60科创云廊3号楼602室
wei.zhu@shuyunsh.com