Critic2专题

Critic2 STM:先生成真实LDOS

从实际QE表面计算开始,按赝势、SCF、NSCF和偏压能窗顺序准备STM输入。

更新于 2026-10-30约 9 分钟阅读按任务与环境选择适用配置
阅读本篇目录

下载STM完整操作包,解压后进入包目录。包含本集群实际计算的AlAs(110)结构、QE输入与结果、LDOS、8个Critic2条件和5张真实图。原始14原子模型来自官方教学例,已实际重新计算;它采用14Ry教学截断,不是收敛表面研究。

1. STM需要什么密度#

这里采用Tersoff–Hamann近似:一定偏压窗口内的局域态密度与隧穿信号相关。先算电子结构,再提取这个窗口的LDOS,最后画恒高或恒流图。不能直接拿总电子密度CHGCAR或任意正数网格当作相同物理含义的STM输入。

实际14原子AlAs(110)固定几何与有限偏压LDOS的平面平均;没有在本组重新做结构优化。

实际14原子AlAs(110)固定几何与有限偏压LDOS的平面平均;没有在本组重新做结构优化。

配套数据由QE7.6实际完成:B86BPBE/PAW、14Ry波函数截断,SCF6×2×1 k网格,NSCF12×4×1,34条能带。截断14Ry沿用官方小例子以跑通流程,电子收敛阈值不等于平面波截断已经收敛。

2. 最短的操作路线#

只想学习Critic2时,直接使用包内已经得到的 data/ldos.cube,进入恒高与恒流图。需要从QE完整重算时,在新目录执行 bash run-all.sh 即可。

下面把同一套上游命令展开,便于换成自己的结构。先在新工作目录放入输入文件:

mkdir my-qe
cp inputs/qe/* my-qe/
cd my-qe
module purge
module load qe/7.6-8173m
export OMP_NUM_THREADS=4
export MKL_NUM_THREADS=1

以下五个程序调用均已在本示例实际执行,不能跳过SCF而直接对空目录做NSCF/PP。

3. 先生成Al与As的PAW文件#

ld1.x -in al.in > al.out
ld1.x -in as.in > as.out
ls al.UPF as.UPF

Al输入:

 &input
   title='Al',
   zed=13.0,
   rel=1,
   config='[Ne] 3s2 3p1 3d-2.0 4f-2.0',
   iswitch=3,
   dft='B86BPBE'
 /
 &inputp
   lpaw=.true.,
   pseudotype=3,
   file_pseudopw='al.UPF',
   author='ADC',
   lloc=2,
   which_augfun='PSQ',
   rmatch_augfun=1.8,
   nlcc=.true.,
   tm=.true.
 /
5
3S  1  0  2.00  0.00  2.00  2.10  0.0
3S  1  0  0.00  6.00  1.40  2.10  0.0
3P  2  1  1.00  0.00  2.00  2.10  0.0
3P  2  1  0.00  6.00  1.40  2.10  0.0
3D  3  2 -2.00 -0.30  1.90  1.90  0.0

As输入:

 &input
   title='As',
   zed=33.,
   rel=1,
   config='[Ar] 3d10.0 4s2.0 4p3.0 4d-2.0',
   iswitch=3,
   dft='B86BPBE'
 /
 &inputp
   lpaw=.true.,
   pseudotype=3,
   file_pseudopw='as.UPF',
   author='ADC',
   lloc=2,
   which_augfun ='PSQ',
   rmatch_augfun= 1.6,
   nlcc=.true.,
   new_core_ps=.true.,
   rcore=1.6,
   tm=.true.
 /
5
4S  1  0  2.00  0.00  1.70  1.80  0.0
4S  1  0  0.00  0.40  1.70  1.80  0.0
4P  2  1  3.00  0.00  1.90  2.00  0.0
4P  2  1  0.00  0.40  1.90  2.00  0.0
4D  3  2 -2.00  0.50  2.00  2.00  0.0

分别生成价电子数3和5的PAW赝势,与后续B86BPBE计算一致。这里只复现官方教学赝势生成输入,不表示一份自建赝势已经适合所有压力、键合环境或高精度性质。ld1.x关注原子测试结束与正确生成的UPF;pw.x和pp.x则应看到 JOB DONE。

4. 固定表面几何做SCF#

pw.x -in alas110re.scf.in > scf.out
grep -n 'convergence\|total energy\|JOB DONE' scf.out
&control
 calculation = 'scf'
 restart_mode='from_scratch',
 title='AlAs 110 surface slab, relaxed (central plane fixed)'
 pseudo_dir = '.',
 outdir='.',
 prefix='AlAs110'
/
&system
 ibrav=8, 
 celldm(1)=7.424621202,
 celldm(2)=1.414213576,
 celldm(3)=6.00000,
 nat=14,
 ntyp=2,
 ecutwfc=14.0,
/
&electrons
 mixing_mode='plain',
 mixing_beta=0.7,
 conv_thr=1.0d-6,
/
ATOMIC_SPECIES
Al 26.98 al.UPF
As 74.92 as.UPF

ATOMIC_POSITIONS
As  0.000000000  -0.044777195  -0.058158722
Al  0.500000000   0.251460333   0.113525468
As  0.500000000   0.712279009   0.504183885
Al  0.000000000   1.067633546   0.480460620
As  0.000000000  -0.003937059   0.995826731
Al  0.500000000   0.351400965   1.004220212
As  0.000000000  -0.003937059   2.004173269
Al  0.500000000   0.351400965   1.995779788
As  0.500000000   0.712279009   2.495816115
Al  0.000000000   1.067633546   2.519539380
As  0.000000000  -0.044777195   3.058158722
Al  0.500000000   0.251460333   2.886474532
As  0.500000000   0.707106800   1.500000000
Al  0.000000000   1.060660200   1.500000000

K_POINTS automatic
 6 2 1 0 0 0

conv_thr=1e-6单位为Ry。原子位置采用输入默认的alat单位,不能把上面的坐标当作Å;更换自己的体系时,建议明确写出坐标单位并与数值对应。本例电子数56,实际SCF总能为−1516.18623291Ry,最后估计电子收敛误差约4×10⁻⁸Ry;这不构成截断或表面模型的收敛证明。

5. 在同一个目录继续NSCF#

pw.x -in alas110re.nscf.in > nscf.out
grep -n 'Fermi energy\|JOB DONE' nscf.out
&control
 calculation = 'nscf'
 restart_mode='from_scratch',
 title='AlAs 110 surface slab, relaxed (central plane fixed)'
 pseudo_dir = '.',
 outdir='.',
 prefix='AlAs110'
/
&system
 ibrav=8, 
 celldm(1)=7.424621202,
 celldm(2)=1.414213576,
 celldm(3)=6.00000,
 nat=14,
 ntyp=2,
 ecutwfc=14.0,
 occupations='smearing',
 smearing='gaussian',
 degauss=0.01,
 nbnd=34,
/
&electrons
 mixing_mode='plain',
 mixing_beta=0.7,
 conv_thr=1.0d-6,
/
ATOMIC_SPECIES
Al  26.98  al.UPF
As  74.92  as.UPF

ATOMIC_POSITIONS
As  0.000000000  -0.044777195  -0.058158722
Al  0.500000000   0.251460333   0.113525468
As  0.500000000   0.712279009   0.504183885
Al  0.000000000   1.067633546   0.480460620
As  0.000000000  -0.003937059   0.995826731
Al  0.500000000   0.351400965   1.004220212
As  0.000000000  -0.003937059   2.004173269
Al  0.500000000   0.351400965   1.995779788
As  0.500000000   0.712279009   2.495816115
Al  0.000000000   1.067633546   2.519539380
As  0.000000000  -0.044777195   3.058158722
Al  0.500000000   0.251460333   2.886474532
As  0.500000000   0.707106800   1.500000000
Al  0.000000000   1.060660200   1.500000000

K_POINTS automatic
 12 4 1 0 0 0

prefix与 outdir保持一致,继续使用刚得到的 AlAs110.save。这里增加能带数、采用高斯展宽并加密k网格,实际得到21个不可约k点。它不是一条高对称能带路径。

6. 提取偏压窗口LDOS#

pp.x -in alas110re.stm.in > ldos.out
grep -n 'plot_num\|Sample bias\|JOB DONE' ldos.out
head -n 8 ldos.cube
&inputpp
 prefix ='AlAs110'
 outdir='.',
 sample_bias=-0.0735d0,
 plot_num=5,
/
&plot
 iflag=3
 output_format=6
 fileout='ldos.cube'
/

plot_num=5用于该STM能窗密度,sample_bias=-0.0735Ry对应费米能级以下约1eV,实际约−1.000018eV。output_format=6写CUBE;同一文件包含结构与标量网格,可交给Critic2。

从实际NSCF XML读取的能级与所取偏压窗口,横轴是不可约k点编号,不是高对称路径。

从实际NSCF XML读取的能级与所取偏压窗口,横轴是不可约k点编号,不是高对称路径。

本例CUBE网格18×25×108,场积分约4.25916;这是有限能窗LDOS,不应要求它等于整个体系的56个价电子。后续操作见恒高与恒流图。

复现表格与图片#

先从已有结果提取:

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网格、薄膜厚度和真空。

需要根据你的体系选择资源?联系讨论计算需求。实际可用软件与权限,以当前账户和运行环境为准。

查看配图

放大后可滚动查看细节,按 Esc 关闭。

100%查看原图 ↗