20世纪以来发展的单晶X-ray衍射技术,无疑对晶体分子结构的分析非常重要且非常有效。该项研究技术将会持续贯穿于现今的21世纪,特别是在中子光源、同步光源建立后,单晶衍射技术也将赢来新的契机。然而,单晶衍射在样品的选择上有要求,需要合适的尺寸、较好的品质,这同时也是培养质量好的单晶的重要难点。随着仪器设备的发展,计算机运行速度的加快以及数据分析方法的持续开发,使得我们能够通过收集高质量的粉末XRD衍射数据去解出精确的单晶结构。

1977年,Malmros和Thomas-Young将H.M.Rietveld提出的全光谱粉末衍射图谱的最小二乘拟合结构校正方法(Rietveld方法)引入到粉末XRD衍射分析中,并得到了迅速的发展。Rietveld方法对结构修正时初始模型的选取具有重要意义。用适当的初始模型对一些简单物质进行修正就足够了。然而,对于一些具有新结构或复杂结构的物质,根据经验选择合适的初始结构模型是基本不可能的。由于现代计算机运算速度的极大提高,单晶分析方法也被应用于粉末XRD衍射。将单晶分析方法与Rietveld方法相结合,可以有效地解决粉末衍射分析单晶材料结构的问题。这种方法也称为从头算方法。近年来,利用这种方法和同步/中子粉末衍射数据,解决了许多复杂的结构问题,如下面的例子所示:

【过程详解】

首先,收集了高质量的粉末衍射数据。通过查阅已发表的期刊论文,可以看出用同步辐射光源或中子衍射获得的XRD数据可以有效地解决精确的结构问题。当然,一些研究人员也可以利用实验室光源采集的XRD数据,获得合理、准确的结构。不同的样品具有不同的衍射质量。一般认为:

1. 数据采集

① 应采用步进扫描方式,步长不超过0.02°,主峰相对衍射强度大于1万,半高宽FWHM是步长的3-5倍以下较理想。(有些有机分子在空气中不太稳定,可适当控制扫描范围不低于60°,测样时间在30min内完成);

② 样品颗粒最好控制在10um左右(350-400目)或以下,理想的粒径大小为1~5um ,粒径不能太小,太多较小的纳米粒子易造成峰的宽化,而一颗大粒径的就能出现择优取向的问题,这在制样时都得注意;

③ 未知全新结构的样品的结晶性或者纯度要高,可采用重结晶的方式提高结晶度和纯度。

根据文献记录和个人溶液结构经验,使用实验室光源采集数据时,推荐以下样品条件:

总之,个体根据自己的样本质量和实际实验环境选择合适的样本测量条件。样本质量越好,采集的数据越好,求解的结构越可靠,误差越小。实验室收集的数据分辨率相对较低。如果有试验条件,则在放线前对试样进行压制,使试验表面平整光滑。尝试采集大角度数据,提高阶跃扫描的停留时间。这些对于使用实验室光源测量的XRD数据来解决新结构问题尤为重要。

2. 数据处理

第一步指标化,也就是根据衍射峰对应的晶面间距解晶格参数,从而进一步确定晶面指数(hkl),指标化的方程在数学上是多解的,人们通常用品质因子(FOM, Figure of Merit)来判断指标化结果的可靠性。现今开发的多种指标化程序,例如AUTOX, BH, CSD, DICVOL, ED, FZON, ITO, LATTPARM, POWDER, PROSZKI, TAK, TREOR, UNITCELL以及McMaille等,手动和自动寻峰指标的都有,其中最为流行的为Dicovel, Treor90和ITO。Dicvol是通过二分原理实现穷举过程的指标化程序,对输入的数据要求也很高,不能含有过多杂质峰。Treor采用试差法为原理的程序包,也能对低对称性晶系求解,速度比Dicvol快,但不能保证结果的准确性。

ITO是一个自动指标化程序包,主要用于正交晶系以及更低对称性的结构的求解过程。我在一些常见的精修相关软件如fullprof、cmpr等软件中能够看到可以附带运用这些子程序。我国中物院也研发了一款PowderX软件,功能强大,其中就包含了Treor90程序。对于指标化比较复杂的晶系所花费的时间较久,可用超级计算平台能较快得到满意结果。

ITO是一个自动标引程序包,主要用于正交晶系和低对称结构的求解过程。我可以看到,这些子程序可以在一些常见的精化相关软件中使用,如fullprof、CMPR等。中国物理研究院还开发了功能强大的PowderX软件,包括Treor90程序。复杂晶体系统的指数化需要很长的时间,利用超级计算平台可以快速得到满意的结果。

第二步确定空间群,先利用程序进行峰型拟合提取衍射强度I,如中科院“十五”信息化建设重大专项项目资助完成的FPPF程序,在采用Pawley、Le Bail等方法分峰获得独立结构因子F,根据消光规律确定空间群,从而进一步可解得初始结构。其遵循的原理如下公式所示:

在建立空间群的过程中,可能存在多个结构。当有多个解决方案时,有必要考虑各种适当的结构,工作量会成倍增加。

第三步计算筛选可能的最优结构模型,在解结构确定模型过程中有Direct method, Direct space method (Monte Carlo method),Grid Search, Patterson method, Charge Flipping, Simulated annealing, Parallel computing, Genetic Algorithm等一些算法。Direct method会经历数据还原归一化、确定并推算相角,傅里叶变换计算E图并在E图中寻峰,再利用相关函数进行坐标修正,对简单的结构无机结构,该方法能较快算得较好结果,该算法对数据的要求也比较高。而对于复杂的无机和有机结构,可推荐用Direct-space算法等其他算法,该算法会去搜索试验结果中的最小误差结构,也就是下图所有搜索超曲面中的最小超曲面

对于不同未知结构的材料,采用适当的方法计算可能的模型,可以快速得到准确的结果。对于一些结构复杂的大分子物质,溶液过程耗时较长,可以利用超级计算机平台进行计算。中科院网络信息结构中心将优化后的getstructure程序集成到申腾6800超级计算平台中。该程序利用遗传算法和正空间信息在大范围内寻找合适的解,适用于复杂无机和有机材料的结构求解。同时,在求解初始模型的过程中,要确定复杂的结构需要用到很多算法,这就需要对各种算法的相关原理和使用方法有一定的了解。

第四步结构精修,无论是单晶衍射数据还是粉末衍射数据。都会运用精修程序进行对结构进一步精解,一些程序或者软件所搭配的Rietveld精修方法被认为是有效的确认以及修正结构的有效方法。现在比较流行的软件Fullprf, Gsas, Topas等都拥有Rietveld精修方法的程序。

在解完初结构后,也可用一些程序或者算法对结构进行几何优化,如Mopac优化,DFT-D优化。最后,也可对所解的结构去模拟理论XRD模型,进一步与试验结果比对。

3. 结论

对于粉末XRD要解决未知结构的材料,关键还在于收集高质量的数据,确定材料的结构(例如苯的结构是C6H6,而不是简单的CH),以及胞格结构单元的数目。然后,我们了解了一些固体物理相关的晶体学知识和粉末衍射知识,了解了分析结构过程的步骤和不同算法的原理。最后,我们使用各种合适的软件来求解精确的结构。

免责声明:部分文章整合自网络,因内容庞杂无法联系到全部作者,如有侵权,请联系删除,我们会在第一时间予以答复,万分感谢。

关于粉末XRD,今天就分享到这里。如果内容对你有帮助,希望大家不要吝啬点个赞哦,我们会继续给大家输出更多优质内容~

最后,祝大家科研顺利!如果你想了解更多关于粉末XRD的知识,可以扫码关注下哦~

粉末XRD解单晶详细的测试条件及分析方法相关推荐

  1. NLP:Transformer的架构详解之详细攻略(持续更新)

    NLP:Transformer的架构详解之详细攻略(持续更新) 目录 Transformer的架构详解 1. Encoder 1.1.Positional Encoding-数据预处理的部分 1.2. ...

  2. NLP:Transformer的简介(优缺点)、架构详解之详细攻略

    NLP:Transformer的简介(优缺点).架构详解之详细攻略 目录 Transformer的简介(优缺点).架构详解之详细攻略 1.Transformer的简介 (1).Transforme的四 ...

  3. Python之pandas:pandas中to_csv()、read_csv()函数的index、index_col(不将索引列写入)参数详解之详细攻略

    Python之pandas:pandas中to_csv().read_csv()函数的index.index_col(不将索引列写入)参数详解之详细攻略 目录 pandas中to_csv().read ...

  4. Python之pandas:pandas中缺失值与空值处理的简介及常用函数(drop()、dropna()、isna()、isnull()、fillna())函数详解之详细攻略

    Python之pandas:pandas中缺失值与空值处理的简介及常用函数(drop().dropna().isna().isnull().fillna())函数详解之详细攻略 目录 pandas中缺 ...

  5. android Json解析详解(详细代码)

    android Json解析详解(详细代码)   JSON的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当 ...

  6. Computer:字符编码(ASCII编码/GBK编码/BASE64编码/UTF-8编码)的简介、案例应用(python中的编码格式及常见编码问题详解)之详细攻略

    Computer:字符编码(ASCII编码/GBK编码/BASE64编码/UTF-8编码)的简介.案例应用(python中的编码格式及常见编码问题详解)之详细攻略 目录 符串编码(ASCII编码/GB ...

  7. ML之shap:分析基于shap库生成的力图、鸟瞰图、散点图等可视化图的坐标与内容详解之详细攻略

    ML之shap:分析基于shap库生成的力图.鸟瞰图.散点图等可视化图的坐标与内容详解之详细攻略 目录 一.力图可视化 1.单个样本力图可视化

  8. Java 泛型详解(超详细的java泛型方法解析)

    Java 泛型详解(超详细的java泛型方法解析) 1. 什么是泛型 泛型:是一种把明确类型的工作推迟到创建对象或者调用方法的时候才去明确的特殊的类型.也就是说在泛型使用过程中,操作的数据类型被指定为 ...

  9. python网格交易法详解_什么是网格交易法?网格交易法的详细步骤及举例分析

    什么是网格交易法?网格交易法的详细步骤及举例分析 我们先来说一下什么是网格交易法,所谓的网格交易法,就是设定价值中枢,通过档位买入模式对我们要投资的个股进行机械化的操作,当股价下跌的时候我们分批买入, ...

最新文章

  1. win7为什么打开桌面上的计算机很卡很慢,windows7很卡怎么处理_windows7系统卡慢的解决方法...
  2. mysql触发器trigger
  3. 雅克比迭代法求方程组的解(Python实现)
  4. java MD5加密
  5. RAID简介与示例演示
  6. Docker部署Elasticsearch集群
  7. linux下找不到libc 库,Linux-覆盖libc open()库函数
  8. 最大子矩阵问题悬线法 学习小结
  9. Appium之开发计算器自动化测试脚本Demo
  10. go语言打印errors类型变量
  11. PPC手机QQ2008 最新版下载
  12. 用于 3d 渲染应用程序的常见物体 IOR(折射率)值
  13. 在EXCEL中玩扫雷
  14. 大数据导论(二:大数据的架构)
  15. vscode折叠/展开所有区域代码快捷键 注释快捷键
  16. 汽车数据流分析常采用哪些方法?
  17. 用链接法实现散列表构造和查找
  18. 攻防世界_mobil_app1
  19. 严格模式和标准模式的区别(附严格模式实战实例)
  20. Mac下手动安装Tex/Latex Package

热门文章

  1. 哈希密码_哈希生日和密码
  2. 爆款app们是如何做主动拉新和被动拉新的?
  3. 银河麒麟桌面操作系统V10上安装使用redis及图形界面管理工具RDM(RedisDesktopManager)
  4. 对于防DDOS攻击和双机热备的理解
  5. linux查看网卡驱动,Linux操作系统查看网卡驱动,你需要学习了
  6. 单向拉伸试验有限元模拟(ABAQUS)
  7. 哔哩哔哩用户数据采集及数据分析
  8. 四阶巴特沃斯高通滤波器
  9. 基于深度学习的胃癌IHC图像淋巴细胞自动检测
  10. nodejs实现微信支付