软件截图示意图
粒径实际TEM和软件计算结果
软件背景
在材料科学研究中,X 射线衍射(XRD) 是最常用、最基础的结构表征手段之一。通过 XRD 可以获得晶体结构信息,并进一步推导出晶粒尺寸以及缺陷特征。然而,传统的 XRD 数据处理往往依赖人工拟合和参数调节,这不仅耗时繁琐,而且容易引入主观性偏差。在实际科研中,JADE 等常见分析软件虽然可以进行衍射峰拟合,但其在纳米粒子粒径分布表征方面存在明显局限:
-
拟合过程主观性较强,结果依赖于用户的操作经验;
-
拟合所用的形因子自由度过高,难以得到物理上合理且稳定的粒径分布特征;
-
结果往往只能提供平均尺寸,无法清晰反映粒径分布的整体形貌。
为了获取纳米粒子的粒径分布,研究人员通常会借助动态光散射(DLS)或小角散射(SAXS)等表征手段。然而,这些方法也并非完美:
-
DLS 对粒径分布的假设模型依赖较大,且容易受到溶剂或大颗粒信号的干扰;
-
SAXS 虽能提供分布信息,但实验条件要求高,数据解释依赖复杂的散射模型。
基于此,我尝试寻找一种更直接、普适且基于现有实验数据的方法。为此,在今年年初我开发了一款 基于 Python 的图形化 XRD 数据分析软件。它集成了自动峰拟合、多进程加速、正则化 NNLS 算法以及粒径分布计算功能,能够在常规 XRD 数据的基础上,高效、直观地获得纳米粒子的粒径分布信息,从而为科研人员提供一种全新的解决思路。
软件的主要功能
-
TXT 文件导入:一键读取实验数据。
-
自动背景扣除:程序会在峰左右区域自动拟合背景并扣除。
-
粒径分布计算:基于 Scherrer 方程改进算法,输出粒径分布曲线。
-
多进程并行计算:充分利用 CPU 资源,提高计算效率。
-
交互式界面:通过拖拽设置起始/结束角度和峰位中心。
-
拟合结果分解:显示不同粒径峰的贡献比例。
-
结果导出:一键保存为 CSV 文件,包括粒径分布和拟合曲线数据。
- 支持多种 X 射线源:如 Cu、Co、Fe、Mo。
使用方法
1、导入数据
点击「📂 导入TXT文件」,选择包含 XRD 数据的文本文件(至少包含 2θ 和强度两列,首行文字任意),可参考如下的示例文件。
注:对于测试得到的RAW格式文件,可用JADE软件打开后导出生成txt文件,你的XRD数据总不能太烂吧?就算是依托答辩也是可以拟合的。信噪比最好比较高,即测试的时候单点测试停留时间建议延长(这是最主要的),如何提高XRD信噪比,可参考这个:进阶之旅 | 如何提升粉末衍射检测灵敏度
2、设置参数
在左侧面板调节分析范围(起始角度、结束角度、峰位中心)。(可以通过左侧面板调节,也可以通过鼠标按住右侧蓝线和红线分别调节。其中蓝色线所夹范围为你要拟合的角度范围,红色线是具有一定宽度的,只要保证在移动红色线过程中该宽度可以覆盖住你认为的中心位即可)
设定晶粒尺寸范围(最小/最大粒径)。(默认最大粒径为50nm,该软件对2-50nm颗粒计算速度较快且准确,可根据实际调整最大粒径,存在粒径越大运算速度越慢)
选择合适的平滑因子(alpha)。(默认为最小值,最小值下运算速度较快,alpha值越小越充分拟合但很可能过拟合,alpha越大其拟合颗粒公差越大)
选择 X 射线源(默认 Cu-Kα)。
3、开始计算
点击「⚙️ 计算」,程序将自动执行多进程拟合,并在右侧窗口显示:
左下角:拟合曲线与各粒径峰分解结果。
右下角:归一化后的晶粒尺寸分布。(左上角可以点移动按钮然后按住鼠标右键放大缩小,还可以保存图片)
顶部:完整数据的预览与选区范围。
4、保存结果
点击「💾 保存结果」,即可导出粒径分布和拟合曲线为 CSV 文件(拟合的多种粒径曲线在粒径分布数据下面,往下翻),便于后续处理与论文绘图。
5、中途终止
如果计算时间较长,可点击「⏹ 停止计算」来中止任务。
软件优势
- 高效:Numba 加速 + 多进程并行,计算更快。
- 智能:自动背景拟合与峰检测,减少人工干预。
- 直观:图形化界面 + 动态拖拽设置,轻松上手。
- 可靠:正则化 NNLS 确保分布合理,不会产生负值或不物理的结果。
- 可扩展:支持多种 X 射线源,满足不同实验条件。
注:该版本为未加速版,针对大颗粒大平滑因子计算速度较慢
注:该版本为加速版,闪电般的速度!家人们,针对大颗粒大平滑因子计算速度是上一个免费版本的3倍以上!
20250827版本更新:提高运算速度
20250819版本更新:优化算法逻辑,提高可信度
20250818版本更新:图形界面化,操作方便
20250616版本更新:修复边界峰问题,修复百分比问题
20250526版本更新:更改图呈现方式,新增每种粒径范围的颗粒峰图显示
20250515版本更新:新增Kα2贡献,提高拟合精度,新增尺寸组成比例
