(7 min 30 s reading) 真没想过这个问题能成日经问答了……


涉及到的视频有:《能量校正 Calibration | XAFS 数据处理》《Athena新手教程 | 同步辐射吸收谱(XAS)数据处理》《E0, Edge Energy & 吸收边 | XAFS数据处理参数讨论》

目前收到被问最多的问题,今天来仔细讲下。最初这个问题是从 Athena 的教程里面引出:在加载原始数据到 Athena 后,到 Calibration 窗口进行校正。在已经看过 Athena 新手教程到基础上,我们来进一步了解这个“校正”这个操作。

先说明的是,这一个概念完全可以类比 XPS 里面的数据处理。在早前教程里面没有过多涉及这个问题是因为这个点跟实验操作相关性很大,在没有做过相关实验的前提下,理解起来会有难度。

需要留意的是,在这里我指的未知样品是你测得的透射谱 ln(I0/I1) 和荧光谱 (If/I0),它可能是你真的正儿八经不知道这个样品是什么,需要你去拟合。比如一个 Fe 负载在 CeO2 载体上的催化剂;也可能是你会拿来做线性拟合之类已知样品,比如你要拟合含铁样品 XANES,你会测得 Fe2O3,FeO,Fe3O4 云云,在这篇文展里面也归属于未知样品。或者可以理解为是放在 I0 之后,I1 (or It) 之前的样品均在该文算作未知样品。以及标准样品(reference spectra)是指用来校正的样品,通常是利用未知样品之后的光 (I1 or It)再打过一个标准样品,得到一张透射谱 ln(I1/I2)。这里说它标准,是因为我知道其准确的 E0 数值。



做 Calibration 的原因

这完全是出于实验硬件的原因,简单来说负责调整入射能量值的 monochromator 是有一点误差,会导致显示的数值不是正确的能量数值。比如测量铁片的 K-edge,扫出来它的 E0 (也就是一阶微分 XANES 中的第一个峰)是 7112.58 eV ,但是上网一查 Fe foil 的 E0 是 7,112.00 eV。这就是我们需要去校正铁片样品数据的时候了。由于只跟能量值相关,相当于是 μ\mu(E) 整个平移零点几个 eV 值,就把整张图数平移回去就好。

如何知道误差值

那么知道 Calibration 的根本原因后,下一个问题是如何知道能量值跟真实距离相差了多少?

由于每次测量硬件都会有所区别,不能用不同批次采集得到的数据来相互校正。像是利用网上的数据或是去年采的数据来校正这个月的数据,这都是大忌。正确的做法是:每次扫未知样品时候,都会在未知样品之后放一个标准样品,利用穿过样品的透射光,在扫描未知样品 XAFS 谱图时也可以同时获得一张标准样品的谱图。因为未知和标准样品使用的均是来源于同一入射光源,两个样品的能量值与真实能量值的误差是可以可以认作一样的(标准样品误差了多少,未知样品误差值也是这个值)。

既然如此,我们就需要标准样品来确定误差值。常见的选择就是对应元素单质,比如我测 Fe2O3,那么就使用 Fe foil。标准样品的选择绝不仅仅限于相同元素单质,因为有不少元素单质不容易获得或者是其他原因,所以选择元素对应的化合物非常常见。比如我也可以在测 Fe2O3 时,我也可以用 Fe3O4 来作为标准样品进行校正,as long as 我知道 Fe3O4 的 E0 是多少(可以从文献或者是其他地方知道)。我甚至可以用 monochromator 上面的 glitch 来校正(因为 glitch 的出现是由于缺陷导致的,这个值是不受实验条件影响)。总的来说这个选择很灵活。

一个比较特殊的例子:硫的标准样品是一个难点,因为硫单质存在多项的情况,能量值 (E0) 很模糊。在一次讨论中,Ritimukta Sarangi (beamline scientist at SSRL) 是推荐使用硫代硫酸钠 (Sodium Thiosulfate):

In my experience, it is best to stay away from sulfate which has a hugely intense peak subject to self absorption. At SSRL, we advice users to choose Sodium Thiosulfate with the low lying and sharp S-S sigma star peak at 2472.02 eV and Tetraphenyl phosphonium bromide at 2146.96 eV for Phosphorus (see Scott's paper at: J. Synchrotron Rad. http://journals.iucr.org/s (2018). 25 http://journals.iucr.org/s/contents/backissues.html, 529-536)

使用标准样品校正 (reference spectra) 的必要性

有人问过:我可以不校正嘛?我的答案是:必须校正。在计划实验一开始就会注意标准样品的选择,硬件上面的误差是常有翻车出现,哪怕是现在大部分同步辐射光源的质量已经相当不错的情况下,同时采得标准样品的谱图是一种双层保险。在做完实验后处理数据才发现能量误差太大但也没有取得标准谱图,那个时候数据已经失去了可靠性,于事无补。所以一定要在做实验的时候用上标准样品。

使用标准样品校正的另一个动机是帮助我在比较从不同时间段的实验中取得的数据。因为每次实验的能量偏移数值是有区别的,如果要比较未知样品的谱图,先确保各自标准样品已经校正好。甚至是要确保标准样品是完整的,毕竟见过不少标准样品变质导致能量改变,做了几年之后才发现导致所有数据没法比较的事故。



分情况举例

1. 同一个样品多次连续扫描

加载原始数据的时候把未知样品对应的标准样品一起加载进去。(参考 Athena 新手教程

通常是先校正一个标准样品的谱图(Calibration),然后把剩下的标准样品谱图跟已经校正后的对齐(Alignment)。

2. 对比 A 样品和 B 样品 (常见于展示 XANES)

把情况 1 的操作对各自 A 和 B 样品做好后,merge 得到各自的图像。

把 A 和 B 样品以及对应的标准样品加载在一起,先比较标准样品(A 和 B 都用的同一个标准样品)。确认标准样品的谱图 (reference spectra) 是一样的,包括形状还有能量值。这是为了确保标准样品的consistency。有时候会发现标准样品是有变化,如果看到了标准样品变质,必须立刻换掉。(参考能量校正 Calibration

3. 软线低能样品,比如氧硫磷一类

因为能量极低的时候光线无法穿过样品,所以标准样品的谱图无从谈起。能做的是单独先测标准样品,然后再测未知样品。处理数据的时候,只能分开处理。(参考能量校正 Calibration

先校正标准样品,知道误差值有多大。再把同样的差值用到未知样品上,手动校正。

这种做法只限于低能软线,比如氧硫磷这样的(< 3000 eV)。过渡元素的测量仍然遵循情况 1 和 2。只可能在自己没有同步采得标准样品不得已情况下,可以参考这样的操作。(仍然不建议,风险太大,有 manipulate data 的嫌疑)





感谢你的阅读。