3. DFT计算输入文件参数解析与合理设置

DFT计算输入文件参数解析与合理设置 学习卡片

案例任务:为纤锌矿 ZnO 编写一份可运行的 VASP 输入文件

本例选取纤锌矿结构 ZnO(六方,空间群 P6₃mc,a=b=3.25 Å,c=5.21 Å,c/a≈1.603)作为具体材料体系。目标是产出一套完整的 VASP 输入文件(INCAR、POSCAR、KPOINTS、POTCAR),并对截断能 ENCUT、k 点网格、交换关联泛函 GGA、自洽收敛标准 EDIFF 等关键参数逐项说明物理意义与设置依据。纤锌矿 ZnO 的带隙实验值约 3.37 eV,Zn 3d 电子与 O 2p 存在强杂化,因此参数选择需兼顾 d 电子处理与收敛性。

四类输入文件的分工与依赖关系

VASP 一次自洽计算需要四个文件协同工作:POSCAR 提供几何结构,POTCAR 提供各元素的赝势与价电子配置,KPOINTS 定义倒空间采样密度,INCAR 控制算法与收敛判据。四者缺一不可,且 POTCAR 的元素顺序必须与 POSCAR 中原子种类顺序严格一致,否则会静默地给出错误结果。

VASP 输入文件依赖关系与关键参数流向 POSCAR 晶格常数 a, c 原子坐标 (分数) 元素顺序: Zn, O 决定晶胞体积与对称性 POTCAR Zn_d: 12 价电子 O_s: 6 价电子 PAW_PBE 方法 顺序须与 POSCAR 一致 KPOINTS Monkhorst-Pack 网格 9×9×6 含 Γ 点偏移 决定倒空间采样密度 INCAR ENCUT = 500 eV EDIFF = 1E-6 eV GGA = PE, ISMEAR=0 控制算法与收敛判据 OUTCAR / OSZICAR 总能量 E₀ 力与应力 收敛步数 判断计算是否可信 结构→体积 价电子数 自洽求解 关键参数设置依据(ZnO 纤锌矿) ENCUT:取 POTCAR 中最大 ENMAX 的 1.3 倍,Zn_d 约 327 eV → 500 eV 留足余量 KPOINTS:六方晶格 c 轴较长,9×9×6 使各方向 k 点间距接近,兼顾精度与耗时 EDIFF:1E-6 eV 保证总能量收敛到 meV 量级,为后续体积优化提供可靠基准

INCAR 关键参数逐项解析

下面给出针对 ZnO 的 INCAR 完整内容,并逐项说明设置依据。所有数值均为教学示例参数,实际使用时应结合收敛性测试确认。

SYSTEM = ZnO wurtzite
ENCUT  = 500        ! 平面波截断能 (eV)
EDIFF  = 1E-6       ! 电子自洽收敛标准 (eV)
EDIFFG = -0.01      ! 离子弛豫力收敛标准 (eV/Å),负值表示力判据
ISMEAR = 0          ! 高斯展宽,适合半导体
SIGMA  = 0.05       ! 展宽宽度 (eV)
GGA    = PE         ! PBE 交换关联泛函
PREC   = Accurate   ! 精度等级
LREAL  = .FALSE.    ! 倒空间投影,小体系推荐
NELM   = 100        ! 最大电子自洽步数
IBRION = 2          ! 共轭梯度离子弛豫
NSW    = 50         ! 最大离子步数
LWAVE  = .FALSE.    ! 不写 WAVECAR 节省磁盘
LCHARG = .FALSE.    ! 不写 CHGCAR
参数取值物理意义设置依据
ENCUT500 eV平面波基组的动能截断,决定基组完备性POTCAR 中 Zn_d 的 ENMAX≈327 eV,取 1.3~1.5 倍留余量
EDIFF1E-6 eV两次电子步之间总能量的收敛阈值需低于目标精度一个量级,meV 级能量差要求 1E-6
KPOINTS9×9×6倒空间 Monkhorst-Pack 网格密度c/a≈1.603,c 方向倒格矢较短,故 kz 取较小值使间距均衡
GGAPE (PBE)交换关联泛函形式PBE 对 ZnO 晶格常数和体模量描述较好,且与 PAW 赝势配套
ISMEAR0费米面展宽方式ZnO 为半导体,高斯展宽避免占据数跳变
SIGMA0.05 eV展宽宽度半导体取 0.05 即可,过大将影响能量精度

POSCAR 与 KPOINTS 的对应写法

POSCAR 中元素顺序为 Zn 在前、O 在后,因此 POTCAR 必须按 cat POTCAR_Zn POTCAR_O > POTCAR 的顺序拼接。KPOINTS 采用自动网格模式,第三行给出各方向的分割数:

ZnO wurtzite
1.0
   3.2500000000   0.0000000000   0.0000000000
  -1.6250000000   2.8145830000   0.0000000000
   0.0000000000   0.0000000000   5.2100000000
Zn  O
2  2
Direct
   0.333333333   0.666666667   0.000000000
   0.666666667   0.333333333   0.500000000
   0.333333333   0.666666667   0.382000000
   0.666666667   0.333333333   0.882000000
Automatic mesh
0
Gamma
9  9  6
0  0  0
六方晶格中 a 与 c 不等,k 点网格应使三个方向的倒空间间距大致相等。若 c/a 明显偏离理想值,可先按 N_i ≈ N_a · (a_i / a_ref) 估算,再通过收敛测试微调。

运行与结果判读

将四个文件放入同一目录后执行 mpirun -np 8 vasp_std > vasp.log。计算结束后检查 OSZICAR 最后一行是否出现 reached required accuracy,以及 OUTCAR 中 Total energy 是否稳定。若未收敛,优先检查 ENCUT 是否过低、SIGMA 是否过大或 NELM 是否不足。

POTCAR 元素顺序与 POSCAR 不一致时,VASP 不会报错,但会得到完全错误的能量。务必用 grep VRHFIN POTCAR 核对元素顺序与价电子配置。

可直接使用的参数速查表

检查项合格标准异常处理
ENCUT 与 ENMAX 关系ENCUT ≥ 1.3 × max(ENMAX)提高 ENCUT 至 520~550 eV 重算
k 点间距各方向倒空间间距差异 < 20%调整网格使间距均衡
电子自洽OSZICAR 出现 reached required accuracy增大 NELM 或调整混合参数
POTCAR 顺序与 POSCAR 元素行完全一致重新按顺序拼接 POTCAR
总能量稳定性最后 5 步能量波动 < 1E-5 eV收紧 EDIFF 至 1E-7 重算