Hefei-NAMD专题

Hefei-NAMD:LiH 实际轨迹与波函数准备

从拉伸LiH的真实VASP动力学出发,说明完整输入、Slurm提交、快照静态计算及复数WAVECAR准备。

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

本篇用 LiH 小分子演示“真实原子轨迹→每帧波函数→非绝热耦合”的准备过程。它与H₂ 外场驱动不同:这里的耦合来自实际 VASP 波函数随核运动的变化,没有人为放大耦合。

初态把 Li–H 键拉长到 2.8 Å、速度设为零,再运行基态 NVE。它是明确准备的非平衡运动小例,不是平衡温度下的材料载流子实验模型。

1. 下载,先看实际轨迹#

下载完整输入、NAC、原生传播、CSV 和绘图脚本,保存为 example.zip:

python3 -m zipfile -e example.zip .
cd hefei-LiH-actual-nonadiabatic
module load ase/3.29.0
bash read.sh
bash plot.sh

这些命令默认读取已有结果,不重新运行 VASP。包内不包含 POTCAR 和 WAVECAR;原子坐标、能级、耦合与布居数据可直接查看。

真实LiH轨迹、能隙、耦合与结构

2. POSCAR 与 KPOINTS#

cat inputs/md/POSCAR
cat inputs/md/KPOINTS

POSCAR:

LiH stretched bond 2.8 A
1.0
12 0 0
0 12 0
0 0 12
Li H
1 1
Direct
0.5 0.5 0.383333333333333
0.5 0.5 0.616666666666667

Cartesian
0 0 0
0 0 0

末尾是零初速度,不是第二组原子坐标。12 Å 立方盒用于这个分子演示,正式计算自己的体系仍需检查盒子和周期镜像。

Gamma
0
Gamma
1 1 1
0 0 0

势函数顺序是 Li_sv、H,与 POSCAR 一致;本例共有 4 个价电子,非自旋极化下基态占满两个能带。

3. 完整 INCAR#

ENCUT = 600
PREC = Accurate
EDIFF = 1E-6
NSW = 40
IBRION = 0
POTIM = 0.5
SMASS = -3
TEBEG = 0
TEEND = 0
ISIF = 2
ISMEAR = 0
SIGMA = 0.05
ISPIN = 1
ISYM = 0
NBANDS = 12
LREAL = .FALSE.
LASPH = .TRUE.
LWAVE = .TRUE.
LCHARG = .FALSE.
NELM = 150
ALGO = Normal
ISTART = 0
ICHARG = 2

IBRION=0 运行分子动力学,SMASS=-3 为本例 NVE 设置;固定晶胞。电子收敛用 1E-6。40 步、0.5 fs 的输入请求对应约 20 fs 的短运动,本次实际保存 40 个计算结构,按初始结构为 0 fs 标记,最后一帧为 19.5 fs。

参考计算从已有收敛波函数启动;下载模板为了能够独立准备新任务,首次使用 ISTART=0/ICHARG=2 从原子电荷开始。两者不改变这里所说明的物理设置;新运行应检查自己的实际收敛结果。

4. 自己运行真实 MD#

集群 GPU 版本采用 VASP 6.6.1、NVHPC 25.3 及其 MPI 环境、MKL 2023.2。参考 MD 在 P100 上完成,快照静态计算使用 P100 和 V100 16G;没有使用 V100 32G。

默认模板使用 vasp/6.6.1-p100 和 gpu-8p100-hs,每卡 1 MPI、1 CPU。具有相应资源权限时,在算例根目录运行:

bash md.sh
squeue -u "$USER"

md.sh 建立独立 work-md/,从当前有权读取的势函数目录按 Li_sv、H 顺序生成 POTCAR 并提交 Slurm。可用 VASP_PP_PBE 指定自己的 PBE 势函数目录。等待任务完成后:

tail -5 work-md/OSZICAR
grep 'General timing and accounting' work-md/OUTCAR

5. 为什么还要每帧做静态计算#

一次 VASP 动力学只保留末态 WAVECAR,不能把这一份文件复制几十次当作波函数轨迹。需要从真实 MD 的每个几何快照生成独立静态波函数。

bash labels.sh
squeue -u "$USER"

脚本从 work-md/vasprun.xml 提取 40 个实际结构,在 work-labels/snapshots/ 建立静态输入,再提交一张 P100 的顺序计算作业。NSW=0、IBRION=-1,其余电子方法、盒子、K 点、势函数不变。

参考数据中首帧已有完全相同结构的独立静态结果,所以复用一次、补算其余 39 帧;下载模板面向新的独立运行,会计算自己产生的 40 帧,避免依赖参考数据的私有波函数。

cat work-labels/snapshots/01/INCAR
cat work-labels/snapshots/01/POSCAR
ls work-labels/snapshots/01/WAVECAR

必须使用 vasp_std 产生标准复数 WAVECAR。即使只有 Γ 点,也不要在这个流程里随意换成 vasp_gam 的专用存储格式。本例原生提取器使用单自旋、单 K 点、RTAG=45200 的标准复数文件;多 K 点、SOC、自旋极化或不同格式应先按相应接口准备,不能直接套用这份双态脚本。

6. 下一步#

接着阅读相位对齐、NAC 提取与布居传播。新的 MD、标签和电子传播都用独立工作目录;每一步等待上一步作业完成再执行,不把尚未写完的文件交给下游程序。

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

查看配图

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

100%查看原图 ↗