VASPBERRY专题

VASPBERRY:用标准VASP准备WAVEDER

以单层hBN为例,准备完整k网格和两步光学输入,说明WAVEDER与完整速度矩阵的区别。

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

标准 VASP 的 LOPTICS 可以生成 WAVEDER,其中保存带间波函数导数信息。VASPBERRY 1.6.3 提供标准 VASP 5.4.4 的读取路径,适合这里的静态绝缘体占据—空带响应。它不等于包含所有带内、简并块和全部自旋算符的通用完整速度矩阵。

本例是两个原子的平面单层 hBN,面内晶格常数2.5 Å,垂直晶胞15 Å,固定结构不优化;完整Gamma 6×6×1网格,16条标量能带,4条占据带。采用PBE PAW、ENCUT=500 eV、EDIFF=1E-6。集群实际使用VASP 5.4.4标准版,加载oneAPI 2023.2环境。这里演示计算流程,不把小网格结果当作材料收敛值。

下载输入、实际参考数据与脚本

下载后解压,进入资料目录:

unzip vaspberry-hBN-WAVEDER-wave661-*.zip
cd vaspberry-hBN-WAVEDER
bash results.sh
bash plot.sh

下载文件名带内容校验前缀,上面的通配符可直接匹配。reference-data/ 是已经实际计算的参考表,figures/reference.png 是重绘图;这两个读取与绘图命令不执行新的科学计算。

1. 先准备结构和输入#

下面是本例真实输入。晶胞第三维是二维体系的周期真空方向;结构文件的元素顺序为B、N,拼接POTCAR也要遵循同样顺序。

POSCAR:

hBN2 fixed planar monolayer
1.0
2.5 0 0
-1.25 2.1650635094610966 0
0 0 15
B N
1 1
Direct
0 0 .5
.3333333333333333 .6666666666666667 .5

KPOINTS:

full6x6Gamma optical source
36
Reciprocal
0.000000000000000 0.000000000000000 0.000000000000000 1
0.166666666666667 0.000000000000000 0.000000000000000 1
0.333333333333333 0.000000000000000 0.000000000000000 1
0.500000000000000 0.000000000000000 0.000000000000000 1
0.666666666666667 0.000000000000000 0.000000000000000 1
0.833333333333333 0.000000000000000 0.000000000000000 1
0.000000000000000 0.166666666666667 0.000000000000000 1
0.166666666666667 0.166666666666667 0.000000000000000 1
0.333333333333333 0.166666666666667 0.000000000000000 1
0.500000000000000 0.166666666666667 0.000000000000000 1
0.666666666666667 0.166666666666667 0.000000000000000 1
0.833333333333333 0.166666666666667 0.000000000000000 1
0.000000000000000 0.333333333333333 0.000000000000000 1
0.166666666666667 0.333333333333333 0.000000000000000 1
0.333333333333333 0.333333333333333 0.000000000000000 1
0.500000000000000 0.333333333333333 0.000000000000000 1
0.666666666666667 0.333333333333333 0.000000000000000 1
0.833333333333333 0.333333333333333 0.000000000000000 1
0.000000000000000 0.500000000000000 0.000000000000000 1
0.166666666666667 0.500000000000000 0.000000000000000 1
0.333333333333333 0.500000000000000 0.000000000000000 1
0.500000000000000 0.500000000000000 0.000000000000000 1
0.666666666666667 0.500000000000000 0.000000000000000 1
0.833333333333333 0.500000000000000 0.000000000000000 1
0.000000000000000 0.666666666666667 0.000000000000000 1
0.166666666666667 0.666666666666667 0.000000000000000 1
0.333333333333333 0.666666666666667 0.000000000000000 1
0.500000000000000 0.666666666666667 0.000000000000000 1
0.666666666666667 0.666666666666667 0.000000000000000 1
0.833333333333333 0.666666666666667 0.000000000000000 1
0.000000000000000 0.833333333333333 0.000000000000000 1
0.166666666666667 0.833333333333333 0.000000000000000 1
0.333333333333333 0.833333333333333 0.000000000000000 1
0.500000000000000 0.833333333333333 0.000000000000000 1
0.666666666666667 0.833333333333333 0.000000000000000 1
0.833333333333333 0.833333333333333 0.000000000000000 1

INCAR.optics:

SYSTEM = hBN2 standard PAW optical matrices
ENCUT = 500
PREC = Accurate
EDIFF = 1E-6
NELM = 120
ALGO = Normal
ISMEAR = 0
SIGMA = 0.05
IBRION = -1
NSW = 0
ISYM = -1
ISPIN = 1
NBANDS = 16
LREAL = .FALSE.
LASPH = .TRUE.
LOPTICS = .TRUE.
NEDOS = 151
CSHIFT = 0.1
LWAVE = .TRUE.
LCHARG = .FALSE.
LPEAD = .FALSE.
LNABLA = .FALSE.
ISTART = 1
ICHARG = 0

KPOINTS明确列出全部36点,不能用高对称路径或不可约点表代替。ISYM=-1避免自动约化;LOPTICS=.TRUE.输出导数;LPEAD=.FALSE.、LNABLA=.FALSE.采用本读取器支持的标准路径。16带是教学设置,实际光谱还应检查空带数量、截断能与网格。

2. 电子自洽,再光学续算#

bash prepare.sh
sbatch job-vasp.slurm
squeue -u "$USER"

prepare.sh从集群已授权的PBE势库按B、N顺序建立本地POTCAR,附件不分发势文件。job-vasp.slurm先以INCAR.scf在scf/完成自洽,再把同一结构的WAVECAR传给optics/,使用上面的INCAR.optics继续计算。前一步没有ISTART=1;第二步才设置ISTART=1, ICHARG=0,不能在没有波函数时直接从第二步启动。

grep 'aborting loop because EDIFF is reached' scf/OUTCAR
grep 'aborting loop because EDIFF is reached' optics/OUTCAR
ls -lh optics/WAVECAR optics/WAVEDER optics/OUTCAR

实际第一步19次电子迭代,续算2次,均达到1E-6;采样价带顶−4.0015064903 eV、导带底0.6672314926 eV,间隙4.6687379829 eV,能量零点保留原VASP定义。标准版WAVEDER不是HDF5文件,也不要把其他版本的二进制直接改名使用。

提交脚本按cpu-8173m整节点56核编写:56个MPI进程、每进程1线程。参考数值来自本集群已完成的同一输入计算;计算并行资源本身不构成不同节点性能对照。

实际hBN结构、完整网格及WAVEDER导出的曲率

3. 接着提取响应#

计算结束后阅读WAVEDER的Hall与圆偏振跃迁实操,再运行资料包中的后处理脚本。不要把其他目录的OUTCAR、WAVEDER和WAVECAR混在一起。

参考:VASP WAVEDER、LOPTICS、LPEAD。独立粒子光学不包含激子与完整局域场效应;简并态和占据—占据矩阵的可用范围也与完整算符导出不同。

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

查看配图

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

100%查看原图 ↗