
VASP四大输入文件详解POSCAR、POTCAR、KPOINTS、INCAR前言VASPVienna Ab initio Simulation Package是材料计算领域最常用的第一性原理软件之一。学会VASP第一步就是理解它的四大输入文件。这篇文章将逐一剖析每个文件的作用、格式和常见配置。一、VASP计算的整体流程在深入文件之前先理解VASP的工作流程输入文件 → VASP计算 → 输出文件 ↓ POSCAR结构 POTCAR赝势 KPOINTSk点 INCAR参数VASP读取这四个文件进行自洽计算输出能量、能带、电荷密度等结果。二、POSCAR晶体结构文件2.1 基本格式POSCAR描述的是晶胞的几何信息。标准格式注释行可选 晶格常数缩放因子 第一行晶格向量 第二行晶格向量 第三行晶格矢量 元素符号VASP 5.2 每种元素的原子数 坐标类型Selective Dynamics可选 原子坐标2.2 实例Si晶胞Silicon diamond structure 5.43 0.5 0.5 0.0 0.0 0.5 0.5 0.5 0.0 0.5 Si 2 Direct 0.00 0.00 0.00 0.25 0.25 0.25逐行解释第1行注释可以是任意文字第2行缩放因子5.43 Å对于Si这是晶格常数第3-5行晶格向量这里是FCC基矢第6行元素符号VASP 5.2之后版本需要第7行每个元素的原子数这里是2个Si第8行坐标类型Direct分数坐标Cartesian笛卡尔坐标第9-10行原子坐标2.3 Direct vs CartesianDirect分数坐标以晶格矢量为基数值在0-1之间Cartesian笛卡尔坐标以Å为单位真实空间坐标转换公式rcartrdirect⋅a1rdirect⋅a2rdirect⋅a3\mathbf{r}_{cart} \mathbf{r}_{direct} \cdot \mathbf{a}_1 \mathbf{r}_{direct} \cdot \mathbf{a}_2 \mathbf{r}_{direct} \cdot \mathbf{a}_3rcartrdirect⋅a1rdirect⋅a2rdirect⋅a32.4 Selective Dynamics如果你想固定某些原子比如表面计算固定底层原子Selective Dynamics Direct 0.00 0.00 0.00 F F F 0.25 0.25 0.25 T T TT表示该方向可以移动F表示固定。三、POTCAR赝势文件3.1 什么是赝势真实的原子核附近电子波函数振荡剧烈需要很大的平面波基组才能描述。赝势的思想是把芯电子和原子核一起等效为一个赝原子核只显式计算价电子。3.2 如何生成POTCARVASP提供了标准赝势库用cat命令合并cat/path/to/POTCAR/Si/POTCARPOTCAR# 或者多元素cat/path/to/POTCAR/Ga/POTCAR /path/to/POTCAR/As/POTCARPOTCAR关键POTCAR中元素的顺序必须与POSCAR一致3.3 POTCAR包含的信息打开POTCAR可以看到赝势类型PAW、USPP等泛函类型PBE、LDA等价电子数截断能建议值ENMAX3.4 检查POTCARgrepENMAX POTCAR输出每个元素的截断能建议值。四、KPOINTS布里渊区采样4.1 k点的作用布里渊区积分需要离散采样k点网格决定了采样密度。网格越密结果越精确计算量越大。4.2 常用格式Monkhorst-Pack网格K-Points 0 Monkhorst-Pack 4 4 4 0 0 0解释第1行注释第2行0表示自动生成第3行生成方法Monkhorst-Pack是最常用的第4行k点网格4×4×4第5行偏移量通常设为04.3 k点密度如何选择经验规则金属需要密集k点如8×8×8或更高半导体/绝缘体可以用较稀疏网格如4×4×4大超胞k点可以更少如2×2×2或Γ点收敛性测试逐步增加k点密度观察能量变化。当能量变化1 meV/atom时认为收敛。4.4 能带计算的KPOINTS能带计算需要沿高对称路径采样Line-mode 10 Line 0.0 0.0 0.0 Γ 0.5 0.0 0.0 X 0.5 0.5 0.0 M 0.0 0.0 0.0 Γ五、INCAR计算参数控制INCAR是最复杂的输入文件控制计算类型、收敛标准、泛函选择等。5.1 基本参数# 系统描述SYSTEMSi calculation# 计算类型ENCUT400# 平面波截断能eVPRECAccurate# 精度设置EDIFF1E-6# 电子步收敛标准EDIFFG-0.01# 离子步收敛标准负值表示力IBRION2# 离子优化算法2CGISIF3# 应力张量优化3优化晶胞形状和体积NSW100# 最大离子步数ISMEAR0# 展宽方法0高斯SIGMA0.05# 展宽宽度eV5.2 关键参数详解ENCUT截断能决定平面波基组大小建议取POTCAR中ENMAX的1.3-1.5倍太小结果不准确太大计算量增大精度提升有限ISMEAR展宽方法0高斯展宽半导体、绝缘体1Methfessel-Paxton金属-5四面体法能带、DOS计算ISIF优化自由度2固定晶胞形状和体积只优化原子位置3优化原子位置和晶胞4优化原子位置和晶胞形状固定体积7只优化晶胞形状和体积固定原子IBRION离子步算法-1不进行离子步单点能计算0分子动力学1RMM-DIIS快速但可能不稳定2共轭梯度法稳健推荐3Damped MD5.3 常见计算场景配置单点能计算ENCUT400PRECAccurate EDIFF1E-6 IBRION-1结构优化ENCUT400PRECAccurate EDIFF1E-6 EDIFFG-0.01IBRION2ISIF3NSW100能带计算ICHARG11# 从CHGCAR读取电荷密度ISMEAR0SIGMA0.01LORBIT11# 输出投影能带六、文件间的关联四个文件不是独立的需要互相匹配文件关联POSCAR ↔ POTCAR元素顺序必须一致POSCAR ↔ KPOINTSk点密度应与晶胞大小匹配POTCAR ↔ INCARENCUT ≥ ENMAXINCAR ↔ KPOINTSISMEAR设置应与k点密度匹配七、常见错误与调试7.1 POSCAR错误对称性问题检查ISYM参数原子重叠检查坐标是否正确晶格矢量为0检查缩放因子7.2 POTCAR错误元素顺序不匹配最常见错误截断能过低提高ENCUT7.3 KPOINTS错误k点过少能量不收敛金属展宽过大SIGMA值需调整7.4 INCAR错误参数冲突如ICHARG11但无CHGCAR收敛标准过松结果不可靠收敛标准过紧计算永远不收敛八、实用工具推荐VESTA可视化POSCAR检查结构是否正确。VASPKIT自动生成KPOINTS、转换文件格式。pymatgenPython库可编程处理VASP文件。写在最后四大输入文件是VASP计算的基础理解它们的格式和参数含义是进行可靠计算的前提。建议新手用简单体系Si、GaAs练手对照文献检查参数设置做收敛性测试养成记录参数的习惯下一篇文章我们将深入能带结构计算的细节。参考文献Kresse, G., Furthmüller, J. (1996).Physical Review B, 54(16), 11169.VASP Manual: https://www.vasp.at/wiki/