ALCHEMI 模拟¶
ALCHEMI(Atom Location by CHannelling-Enhanced MIcroanalysis,沟道增强微分析定位法) 通过在沿系统反射列倾转晶体的同时测量特征 X 射线产额,并读取其取向依赖性,来确定掺杂原子占据哪个位点。ReciPro 的 ALCHEMI 模拟器由晶体结构与一组位点假设正向计算摇摆曲线(电离产额随取向的变化)。
这是 Preview 功能。 v1 仅进行一维正向计算;对实验数据的拟合与 2D 图(2D-HARECXS)尚未实现(相应选项卡已隐藏)。据作者所知,目前没有其他公开可用的 ALCHEMI 正向模拟器。 由于没有可供交叉核对的实现,请先阅读适用范围与已知限制,再将结果用于定量分析。
打开方式:衍射模拟器 的 选项 菜单 → ALCHEMI 模拟器...
GUI 条件:Wave Length = Electron(晶体、加速电压与取向取自上级衍射模拟器)
窗口左侧为设置(扫描、厚度、计算、电离通道、位点假设),右侧为结果(曲线选项卡)。
计算的内容¶
对每个入射取向,用布洛赫波法求解晶体内部的波场;对每一对位点 \(s\) 与电离通道 \(c\),将电离产额解析地积分到厚度 \(t\)。
电离矩阵 \(\mu\) 仅取决于两个反射之差 \(G = \mathbf{g}_h - \mathbf{g}_g\)。
- \(\sigma_c\):电离总截面,采用 Bote–Salvat 模型
- \(F_c(s)\):归一化电离形状因子,来自自建 DHFS 表(与束流相互作用和 STEM-EDX 相同的数据基础)
- \(e^{-M_a(G)}\):德拜–沃勒因子(支持各向异性 ADP)
这相当于 ICSC(Oxley & Allen 2003)的局域形状因子近似。未使用双动量 MDFF。
非沟道成分¶
因热漫散射吸收而脱离相干布洛赫场的电子,会以方向随机化的电子形式走完剩余厚度,并在那里同样产生电离。
在计算框中取消勾选包含非沟道成分会去掉该项。在典型厚度下它占总产额的数十个百分点,省略后位点衬度会显得比实际更强。
输出量¶
一次量是每个入射电子产生的内壳空穴数。未应用向 X 射线光子的转换(荧光产额与线分支)、样品内的 X 射线自吸收,以及探测器效率与立体角。
⚠ 空穴数不是计数值。 与实测 EDX 强度之间还隔着 ReciPro 不执行的三个环节——原子过程、样品与仪器。
- 空穴 → 光子:壳层的荧光产额与线分支
- 光子 → 离开样品的光子:X 射线自吸收,取决于光子产生的深度与取出角
- 光子 → 计数值:探测器效率、立体角与谱的处理
其中第 2 项尤其无法事后靠给成品曲线乘一个吸收因子补回来——需要先把产额按深度分解。因此,要把这些曲线与实测强度、k 因子或成分比较,上述各环节必须在 ReciPro 之外完成。
请注意其中哪些能在归一化后留存。第 1 与第 3 项,以及可当作常数处理的吸收,都是与取向无关的乘性因子,因此即使两条谱线能量相差很大,也会在 ICP(扫描平均)归一化中消去。自吸收一般不会:沟道效应会改变空穴产生的深度分布,于是被吸收的比例本身沿扫描变化,从而在归一化后仍然留存。选择能量相近的谱线,正是针对这部分残余。
左侧面板:设置¶
摇摆扫描¶
| 项目 | 说明 | 默认值 |
|---|---|---|
| 反射列 g = ( h k l ) | 要扫描的系统反射列,用其倒易点阵矢量 \(\mathbf{g} = h\mathbf{a}^* + k\mathbf{b}^* + l\mathbf{c}^*\) 的反射指数 \((h\,k\,l)\) 给出(不是方向指数 \([u\,v\,w]\))。倾转轴取为同时垂直于束流与该 \(\mathbf{g}\),因此扫描会带着该反射列通过其 Bragg 条件 | (1 0 0) |
| 范围 ± | 倾转扫描的半宽(mrad)。超过约 10 mrad 后固定并集基组不再有保证,超过 30 mrad 则在 v1 的保证范围之外 | 8 mrad |
| 点数 | 扫描点数(3–1001) | 101 |
下一行显示所选反射列的 Bragg 角 \(\theta_B\)、扫描宽度相当于多少个 \(\theta_B\),以及倾转步长——运行前即可知道扫描实际覆盖多远。
⚠ 默认的 ±8 mrad 只是便于起步的取值,并非文献上的最优值。 Jones (2002) 的综述并未给出以 mrad 表示的摇摆扫描宽度数值;上表所列的上限也是 v1 数值计算的界限,而非推荐值。请改用 \(\theta_B\) 为单位来判断扫描范围(表下那一行即显示此值),并使想要比较的动力学特征落在扫描范围之内。
⚠ 文献中「照明可放宽到约 Bragg 角」的说法——Jones 针对优化后的系统反射列条件给出——指的是入射锥的会聚半角,即下方计算栏中的角展宽。它不是推荐的摇摆扫描半宽。两者是不同的量,不可混为一谈。
厚度¶
给出起点、终点与步长(nm)。所有厚度在一次运行中一起算出,结果用曲线下方的厚度框切换(微调按钮在已算出的厚度间逐级切换;键入的值会对齐到最近的厚度)。若起点与终点只给出一个厚度,则没有可切换的对象,该框将被禁用。
位点衬度在薄样品与厚样品之间变化剧烈,甚至可能反号,因此在下结论前请检查多个厚度。厚度选择器就放在曲线正下方正是出于此因。
计算¶
| 项目 | 说明 | 默认值 |
|---|---|---|
| 最大波数 | 每个取向的布洛赫波数上限(1–1600)。整个扫描的并集会更大 | 120 |
| 求解器 | 本征值问题的计算引擎:本机(Eigen C++)或托管(.NET)。在本机求解器不可用的环境中,选择被固定为托管 | 本机 |
| 包含非沟道成分 | 是否加上上述 \(Y_\text{dech}\) | 开 |
| 角展宽 | 将曲线与入射束的角展宽做卷积:无 或 Gaussian(半高全宽,mrad)。这是取向轴上的后处理,在显示归一化之前应用 | 无 |
1600 波的上限与电离形状因子的收录范围 \(s \le 16\ \text{Å}^{-1}\) 是配套的。 实测表明即使 1600 波,基组所需的 \(s\) 也只有约 10.5 Å⁻¹,因此只要遵守该上限就不会用尽收录范围。实际达到的数值显示在图下方基组诊断框的第一行。
电离通道¶
待电离的元素与壳层列表。每行读作 元素 (Z) 壳层 吸收边能量 U = 过电压,需要注意的情形会在末尾加括号标注。
- 无法激发(入射能量低于吸收边)或超出收录范围的通道会连同原因一起列出,且无法勾选
- 过电压 \(U = E_0/E_\text{边}\) 低于 1.2 的通道带有注意标记,因为该处截面的可靠性较低
位点假设¶
分别计算产额的原子位点列表,显示为 标签 元素 (x, y, z) ×多重度 Occ 占有率。
⚠ 在示踪近似下,通道与位点的组合是自由的。 把掺杂元素的电离通道与主体位点的几何(位置、ADP、占有率)配对,正是本功能的预期用法;若仅限元素相同的组合反而是错的。程序会计算所勾选通道与位点的全部组合。
计算 / 停止¶
计算开始扫描。进度在状态栏分五个阶段显示(正在解析电离数据 → 正在构建并集基组 → 正在构建电离矩阵 → 正在计算取向 → 正在检验扩展基组),停止可随时中断。
右侧面板:曲线选项卡¶
计算完成后,每个「位点 × 通道」组合绘制一条曲线。图例为 位点标签 / 通道。
| 项目 | 说明 |
|---|---|
| 厚度 | 选择显示的厚度;微调按钮在已算出的厚度间逐级切换,键入的值会对齐到最近的厚度(不会重新计算) |
| 归一化 | 扫描平均 (ICP) = 除以整个扫描的平均值(ALCHEMI 通常使用的量)/ 最大值 = 1 / 原始值 (每电子) |
| X 轴 | 在 mrad 与 θ_B(以所扫反射列的 Bragg 角为单位)之间切换 |
| Bragg 条件 | 在 \(\theta = n\,\theta_B\) 处画竖线 |
| 导出 CSV | 将全部取向、厚度、位点与通道的原始曲线写入 CSV 文件(见下) |
⚠ 归一化只是显示上的变换。 保存的量始终是每个入射电子产生的空穴数,而最大值 = 1 仅供显示,不能作为 ICP 的基准。
衬度与相关¶
曲线下方只读诊断框(其余内容可滚动查看;文本可选中复制)的末尾几行按系列给出衬度 \((\max-\min)/\text{mean}\) 以及相对于首个系列的相关系数 \(r\)。这是一目了然地判断哪个位点起作用的摘要:\(r\) 接近 \(+1\) 的两个系列取向依赖性相同,也就是说这组数据无法区分这两个位点。
基组诊断¶
诊断框的开头几行给出基组的状态,每项一行。
basis 347 (184 + 163) F(s) ≤ 6.20 Å⁻¹ expanded-basis 6.7e-3
⚠ 拟合适用性未评估(v1 不保证定量占有率拟合)
⚠ Experimental:仅与 multislice 程序对比验证(beta-AlCo [001], 250 keV)
- basis N(仅中心 + 并集追加):扫描全部取向上反射的真实并集的条数
- F(s) ≤ … Å⁻¹:基组实际要求的形状因子自变量最大值
- expanded-basis:用 1.25 倍基组重解扫描中心与两端时的最大相对差。它是收敛误差的代理量
- 拟合适用性:v1 一律报告未评估。该诊断有三个已知缺陷——分母是整个张量的最大值、分子是绝对产额, 以及当 1.25 倍基组实际上并未增大时会轻易通过——因此把结果判为「可用」会朝着危险的方向出错
- Experimental:由于只对 β-AlCo 做过定量核对,每次运行都会带上该标记并注明已验证范围
⚠ v1 不保证定量的占有率拟合。 原始诊断值仍会显示,且越小越好,但请把它当作参考而非合格标记。另请注意,它是针对绝对产额定义的,因此只看 ICP(除以扫描平均)时它偏保守。
在以下情形还会在诊断框中以单独的行(各以 ⚠ 开头)追加警告。
- 加速电压低于 80 kV:该电压下形状因子表无法保证 \(s\) 到 \(16\ \text{Å}^{-1}\)。只要基组所需的 \(s\) 仍在保证范围内,计算本身依然正确,因此这是告知而非拒绝
- 形状因子截断:当保证范围之外的 \(F(s)\) 被截断为零时,会以数值给出相应的误差上界 \(|F| \le \varepsilon\)。不会静默外推
CSV 导出¶
导出 CSV 会写出长格式表格,并在其前面加上 # key: value 形式的表头(下面为节选)。表头的设计使得仅凭该文件就能说明重现所需的条件。
# generator: ReciPro ALCHEMI, ver 4.947 (2026-08-09)
# model: LocalFormFactor (local form-factor approximation; NOT the two-momentum MDFF)
# quantity: IonizationVacanciesGenerated (PerIncidentElectron)
# crystal: MgAl2O4 (spinel) / F d -3 m
# cell_nm: a 0.808000 b 0.808000 c 0.808000 alpha 90.0000 beta 90.0000 gamma 90.0000 deg
# accelerating_voltage_kV: 200.000
# scan_row_hkl: 1 0 0
# theta_B_mrad: 1.552030
# thicknesses_nm: 10.0000 20.0000 ... 100.0000
# angular_spread: Gaussian1D FWHM 1.0000 mrad (kernel renormalized at the scan ends)
# processing_order: forward yield -> angular spread convolution -> (display normalization, NOT applied to these columns)
# basis: 202 beams (120 centre-only + 82 added by the union), hash 1F3A...
# expanded_basis_max_rel_diff: 9.500e-004
# fit_eligibility: NotEvaluated (v1 does not certify quantitative occupancy fits; raw diagnostic AcceptedForFit=True at tolerance 3e-3)
# occupancy_coupling: Tracer (dilute limit; site responses may be combined linearly). VCA is not implemented
# verification: Experimental. Quantitatively verified only for beta-AlCo [001] at 250 keV (Al-K / Co-K / Co-L). ...
# not_modelled: X-ray self-absorption, detector efficiency and solid angle, fluorescence yield and line branching, background, specimen thickness distribution, specimen bending
# channel[Al-K]: edge 1.5596 keV, sigma 1.95e-007 nm2, sigma_source ... , F(s)_source ... (tabulated to s = 16.0 A^-1), not truncated
# site[AlM]: atom indices 0, occupancy from the crystal
# conventions: tilt is the signed rotation about the axis perpendicular to both the beam and g(scan_row_hkl), positive toward +g; angles in mrad; lengths in nm; ...
tilt_mrad,thickness_nm,site,channel,dynamic,dechannelled,total,dynamic_conv,dechannelled_conv,total_conv
dynamic / dechannelled / total 分开保存,因此可以事后评估非沟道成分的贡献。*_conv 列仅在启用角展宽时出现,内含卷积后的曲线;这样同一个文件既有可复现的原始结果,也有用于与实验比较的结果。数值为原始值(每入射电子),不经过显示归一化;小数点始终为句点。
适用范围与已知限制¶
「可以计算」与「已定量验证」是两回事。本节说明后者。
不提供笼统的 ±% 精度——需要分开的三件事¶
ReciPro 有意不给出「位点占有率可定到 ±N %」这类笼统精度。Jones (2002) 的综述同样没有报告普适的占有率误差;以这种形式发表的数值属于某个体系在某种流程下的测量结果,既不是方法的属性,更不是本模拟器的性能指标。
判断结果时,请把下面三件事分开。
精密度 (precision):数值的可重复程度——计数统计、回归返回的误差、重复之间的离散。拟合残差小或相关系数接近 1,本身并不能说明模型正确。在 Jones 讨论的例子中,给拟合加入一个自由常数改善了 precision,但并未证明 accuracy 变好。
模型偏差 (model bias):正向计算本身的系统误差——非沟道项不含位点相关性、局域形状因子近似、未计入厚度分布与弯曲(均见下文)。这类「缺失的物理」不会因为增加计数或增加扫描点数而减小。(增大基组是另一回事:那减小的是数值截断误差,基组诊断会单独显示。)
独立核对 (independent checks):与不共享同一前提的对象取得一致,这有两个层次。与独立表述的实现相比较(代码对代码)检验的是表述与编码,这里所做的正是这一层(针对一个体系)。与实验的比较——即用现实检验物理本身——尚未进行。
已定量验证的范围¶
仅 β-AlCo [001]、250 keV 的 Al-K / Co-K / Co-L 通道。 与动力学表述完全独立的多层法 + 冻结声子计算(py_multislice)比较:
- Al 位点(轻原子柱):相对于 ICP 调制的 RMS 残差在所有厚度下 ≤3.2 %,\(t \ge 10\) nm 时 ≤0.6 %
- Co 位点(重原子柱):\(t \le 4\) nm 时 ≤3 %,但 \(t \gtrsim 10\) nm 时为 6–17 %
其他任何体系、元素、壳层或电压都属于「可以计算」,而非「已定量验证」。
尚未与实验数据进行比对。 上述比较是程序之间的比较,厚度范围为 \(t\) = 2–30 nm。下一节中 10–19 个百分点这一数值是用于分离差异原因的诊断量,并非模拟器所施加的修正;应用该修正后得到的一致性也不作为验证结果。
已知系统误差——非沟道项不含位点相关性¶
v1 的非沟道项是与取向无关的常数,因此它对 ICP 的唯一作用是把曲线拉向 1。实际上,部分热散射电子会重新进入沟道,且由于是强散射体,会优先返回重原子柱。在上述比较中,该贡献的有效量在重原子柱上被低估了 10–19 个百分点。
→ 对于轻的或弱散射的位点,或 \(t \lesssim 5\) nm 的情形,与独立实现的一致性为 1–3 %。对于 \(t \gtrsim 10\) nm 的重原子柱,存在相当于 ICP 调制 6–17 % 的系统误差。 具有位点相关性的再注入模型推迟到 v1.1 之后。
正向模型中未包含的内容¶
仅靠角展宽卷积并不能重现实验。 以下各项均未包含。
- 样品的厚度分布与弯曲
- X 射线自吸收
- 探测器效率与立体角
- 本底(轫致辐射、重叠谱线)
入射束的角展宽(会聚半角、漂移)已经建模——见「计算」框中的角展宽——但与之卷积并不能替代上述任何一项。
低能谱线——局域近似最弱之处¶
v1 的电离矩阵只是单一矢量 \(G = \mathbf{g}_h - \mathbf{g}_g\) 的函数(局域形状因子近似)。ICSC 指出,该近似适用于特征辐射能量高于约 3–4 keV 的强束缚内壳层(Oxley & Allen 2003, p. 941)。
⚠ 这个数值是经验性、依赖模型的参考线,而非硬性 cutoff;ReciPro 不会据此拒绝计算。 低于该值的谱线照常计算,而且往往正是关心的对象:Al-K 为 1.49 keV、Co-L 为 0.79 keV,二者都在上文代码间比较所用的 β-AlCo 组中。
该数值标示的是:把问题约化到单一矢量 \(G\) 开始变得不够用的位置。电离并非发生在原子核上:其概率在离核有限距离处取极大,且所需能量越低该距离越大。请注意这一近似保留了什么、舍弃了什么——\(F_c(|G|/2)\) 依赖于动量,因此有限的相互作用范围仍被保留;被舍弃的是对两个动量转移各自的依赖,也就是完整 MDFF 所具有的非局域结构。随着非局域性增大,正是这一被舍弃的结构开始起作用。
仅凭谱线能量无法保证结果:壳层的空间尺度、取向、厚度以及基组实际要求的倒易矢量都会起作用。请把 3–4 keV 当作「需要更仔细审视」的提示,而不是合格标记。如果可以选择,比较能量相近的谱线会使二者的非局域性偏差更接近;Jones (2002) 正是把这一点列为实务上的第一步,第二步则是相对晶带轴优先选用系统反射列——后者正是 v1 所计算的几何(晶带轴沟道效应更强,但所需的非局域性修正更大)。
⚠ 发射能量低的谱线还最容易受到 X 射线自吸收的影响——不过影响多大取决于样品的组成及其吸收边、路径长度与取出角,并非只由发射能量决定。这是另一个误差来源,模型中完全没有包含(见上文输出量),并且与局域近似是否成立无关地扰乱与实验的比较。
模型前提¶
- 仅限示踪近似:位点响应的线性叠加只在掺杂原子不扰动弹性波场的稀薄极限下成立。有限浓度的 VCA 不在 v1 范围内
- 局域形状因子近似:\(\mu\) 仅是 \(G = \mathbf{g}_h - \mathbf{g}_g\) 的函数,而非双动量 MDFF(OAR 1999 的 Model A)。对轻元素 K 壳层与低能吸收边,该近似最弱(见上)
- 是空穴而非 X 射线光子:未乘以荧光产额与线分支
- 加速电压下限为 80 kV:这是能保证 \(s = 16\ \text{Å}^{-1}\) 的最低电压,并非拒绝阈值
另请参阅¶
- 衍射模拟器(概述)
- CBED 模拟
- 动力学计算(共用内核)
- STEM 模拟 — 使用同一电离数据基础的 STEM-EDX
- 束流相互作用 — 截面与吸收边数据
