VTST专题

VTST 表面迁移的端点准备

从Al(100)小例学习固定底层、分别优化初末态并准备NEB输入。

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

NEB 用一组结构连接初态和末态,再优化中间路径。先把两个端点优化好,比直接对两个未收敛结构插值更可靠。本例用 Al 吸附原子在 Al(100) 表面两个相邻 hollow 位点之间的直接跳跃,演示固定底层、优化表层及吸附原子的操作。

初态、路径最高点和末态的实际结构

1. 获取示例,先看参考结果#

下载完整输入、短命令脚本和参考数据。解压后进入文件夹:

unzip vtst-neb-wave275.zip
cd vtst-neb-wave275
bash run.sh

run.sh 只读参考 CSV 生成 preview-figures/,不提交计算。压缩包实际下载文件名可能带校验后缀,解压时使用你下载到的文件名;解压后的目录名固定。

需要自己计算时,以普通集群账号执行:

bash submit.sh
bash results.sh

默认是 P100 单卡;V100 16G 可用 bash submit.sh v100。这条提交命令依次完成两个端点优化、普通 NEB、CI-NEB、路径方向的两次静态检查以及原生 VTST 提取。不需要手动为每一步重新排队。运行进度和作业号在 work/p100/;提交后可以用 squeue -u "$USER" 查看。

2. 模型里哪些原子固定#

12 个 Al 构成 2×2、三层表面,再加一个吸附 Al,共 13 原子。底部两层 8 原子固定,表面 4 原子和吸附原子可以移动。晶胞固定,真空层约 9 Å。它是便于操作的小算例;更厚 slab、更大横向尺寸、真空和 k 点收敛需要针对自己的体系另做。

初态 POSCAR 完整如下。末态使用同一个晶胞和同一原子顺序,仅把吸附原子放在相邻 hollow 位置;不要把初末态分别排序。

Al
 1.0000000000000000
     5.7275649276110352    0.0000000000000000    0.0000000000000000
     0.0000000000000000    5.7275649276110352    0.0000000000000000
     0.0000000000000000    0.0000000000000000   24.1499999999999986
 Al 
  13
Selective dynamics
Direct
  0.0000000000000000  0.0000000000000000  0.3726708074534161   F   F   F
  0.5000000000000000  0.0000000000000000  0.3726708074534161   F   F   F
  0.0000000000000000  0.5000000000000000  0.3726708074534161   F   F   F
  0.5000000000000000  0.5000000000000000  0.3726708074534161   F   F   F
  0.2500000000000000  0.2500000000000000  0.4565217391304347   F   F   F
  0.7500000000000001  0.2500000000000000  0.4565217391304347   F   F   F
  0.2500000000000000  0.7500000000000001  0.4565217391304347   F   F   F
  0.7500000000000001  0.7500000000000001  0.4565217391304347   F   F   F
  0.0000000000000000  0.0000000000000000  0.5403726708074533   T   T   T
  0.5000000000000000  0.0000000000000000  0.5403726708074533   T   T   T
  0.0000000000000000  0.5000000000000000  0.5403726708074533   T   T   T
  0.5000000000000000  0.5000000000000000  0.5403726708074533   T   T   T
  0.2500000000000000  0.2500000000000000  0.6273291925465838   T   T   T

Selective dynamics 后,F F F 固定该原子三个坐标,T T T 允许三个坐标移动。Direct 的坐标是晶格分数坐标,不是 Å。

cat inputs/start/POSCAR
cat inputs/end/POSCAR
diff -u inputs/start/POSCAR inputs/end/POSCAR

3. 两个端点分别优化#

两个端点的设置相同,下面是初态完整 INCAR:

SYSTEM=Al100-hollow-start
ENCUT=450
PREC=Accurate
EDIFF=1E-6
EDIFFG=-0.02
ISPIN=1
ISMEAR=0
SIGMA=0.1
NBANDS=48
LREAL=.FALSE.
LASPH=.TRUE.
ISYM=0
ISIF=2
IBRION=2
NSW=140
NELM=150
ALGO=Normal
LWAVE=.FALSE.
LCHARG=.FALSE.

ISIF=2 固定晶胞、只优化允许移动的原子。EDIFF=1E-6 是电子步收敛阈值;EDIFFG=-0.02 用力作为离子优化停止条件。固定原子上的非零受力不用于判断自由原子的优化收敛。

KPOINTS:

Small teaching Gamma mesh
0
Gamma
2 2 1
0 0 0

表面法向只采样 1 个 k 点。金属体系的展宽会影响 F 和 E0;比较各点时必须使用相同的势、截断能、k 点、展宽和晶胞。这里只用一个较小的教学网格,不把数值当作已收敛的材料扩散参数。

module load vasp/6.6.1-p100-vtst vtstscripts/1040
mkdir -p my-start
cp inputs/start/{INCAR,POSCAR,KPOINTS} my-start/
cp /public/software/vasp/potcar/version64/PBE/Al/POTCAR my-start/

赝势只在本人有授权的环境中使用,下载包不包含 POTCAR。以上是手动准备输入的例子;执行 bash submit.sh 时程序会在 work/ 自动完成这些步骤,不要再对同一目录重复运行。

4. 确认端点,再进入路径计算#

grep 'reached required accuracy' work/p100/dft/start/OUTCAR
grep 'reached required accuracy' work/p100/dft/end/OUTCAR
tail -n 8 work/p100/dft/start/OSZICAR
tail -n 8 work/p100/dft/end/OSZICAR

本集群例子中,两个端点最大自由原子力约 0.0072 eV/Å,且等价 hollow 的 E0 相差远小于 1 meV。初末态应是不同构型;如果优化后都跑到同一位置,不能继续把它们当作迁移端点。

下一步看 普通 NEB 与 CI-NEB。

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

查看配图

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

100%查看原图 ↗