Critic2 STM 恒高与恒流图
用实际表面LDOS分别固定扫描高度和目标密度,解释两类图的单位与对比方式。
阅读本篇目录
下载STM完整操作包,解压后进入包目录。包含本集群实际计算的AlAs(110)结构、QE输入与结果、LDOS、8个Critic2条件和5张真实图。原始14原子模型来自官方教学例,已实际重新计算;它采用14Ry教学截断,不是收敛表面研究。
1. 准备实际能窗密度#
已有包内 data/ldos.cube 时可以直接运行;需要从QE生成时先看LDOS准备流程。本例是有限负偏压窗口的实际LDOS,不是全电荷密度。
2. 恒高模式#
bash run.sh 1
bash run.sh 2
head -n 12 work/height0542/in_stm.dat
第一个完整输入:
crystal ../../data/ldos.cube
load ../../data/ldos.cube
reference 1
setfield 1 trilinear
stm height 0.542 cells 1 1
第二个高度:
crystal ../../data/ldos.cube
load ../../data/ldos.cube
reference 1
setfield 1 trilinear
stm height 0.57 cells 1 1
height 0.542表示真空方向的分数坐标z/c=0.542,不是高度0.542Å。对本晶胞,两个绝对z位置约为12.78Å和13.44Å;信号列是该平面LDOS,单位e/bohr³。它可作为与电流成比例的图像信号,不能直接标成安培。

同一真实LDOS在两个固定高度的原生图,颜色采用相同尺度以便比较。
3. 恒流模式#
bash run.sh 3
bash run.sh 4
head -n 12 work/current5e5/in_stm.dat
crystal ../../data/ldos.cube
load ../../data/ldos.cube
reference 1
setfield 1 trilinear
stm current 0.00005 cells 1 1
另一个目标密度:
crystal ../../data/ldos.cube
load ../../data/ldos.cube
reference 1
setfield 1 trilinear
stm current 0.00002 cells 1 1
current后面的数是目标LDOS阈值,采用原子单位,不是安培。程序寻找每个平面位置上达到该阈值的z;信号列此时变成高度,单位Å。

两种目标密度的实际恒流高度图;降低目标密度后,针尖需要离表面更远。
本例目标5×10⁻⁵时,相对自动参考面的高度约0.8782–2.7154Å;它不是绝对z坐标。目标2×10⁻⁵的图在各像素都更高,与真空区LDOS随距离衰减相符。
4. 区分表面参考与绝对坐标#
本版本自动表面参考来自0.01分数坐标分箱,本例为0.52c,约12.258295Å;它不恰好等于最高表面原子的z。需要绝对z时使用已经实际运行的 TOP 0:
bash run.sh 7
head -n 12 work/current-ref0/in_stm.dat
crystal ../../data/ldos.cube
load ../../data/ldos.cube
reference 1
setfield 1 trilinear
stm current 0.00005 top 0 cells 1 1
此时信号列是绝对z,约13.1365–14.9737Å。与默认图相减,每个像素都是同一个约12.258295Å偏移,图形没有改变。更换体系时,应明确参考平面后再比较高度,不要将自动参考直接当作某个原子平面。
5. 检查物理含义再看颜色#
先核对偏压、LDOS来源、坐标和单位,再检查图像;对同一个能窗改变高度/目标阈值,才方便解释距离效应。不同偏压图需要重新从电子结构结果提取对应能窗,不是简单修改颜色。这里的图来自低截断教学模型,不用于认定真实表面原子的实验亮暗顺序。
复现表格与图片#
先从已有结果提取:
bash analyze.sh
ls analysis-reference
ls figures-reference
它读取已有的实际结果,不重新算QE。在另一份新解压目录完整重做时:
bash list.sh
bash run-all.sh
ls qe-work runtime-data work analysis figures
顺序为2个原子PAW生成 → 表面SCF → NSCF → 偏压能窗LDOS → 8个Critic2条件 → 数据提取 → 5张图。结果目录已存在时使用新解压目录;只运行一个编号后,不要对不完整的 work/ 调用整包分析。
QE采用 qe/7.6-8173m CPU构建:oneAPI2024.2的icx/mpiifx、IntelMPI/MKL与OpenMP;本示例1个MPI进程、4个OpenMP线程,MKL单线程。Critic2为 critic2/1.4,内部版本1.4.155,GCC/GFortran13.3、双精度/OpenMP;脚本分别加载模块,避免混用MPI。辅助绘图使用已有NumPy、SciPy和Matplotlib环境。
重算使用账户已分配的CPU资源,包内 run.slurm 遵守CPU分区整节点56核申请规则,程序实际使用上述线程设置;可用 sbatch run.slurm 提交。队列暂不能分配时,先使用已有结果重建表格和图,不把管理/登录节点当作普通生产队列。
返回Critic2专题,QE基础见QE第一次计算。来源:官方STM例子及原始输入、固定Critic2源码、官方命令手册。原始模型参数与实际运行参数一致;图像用于操作参考,正式研究需另外检查赝势、截断、k网格、薄膜厚度和真空。