View Categories

常用的 INCAR 参数

本文整合VASP 官方 Wiki 以及全网教程,按用途分类整理常用 INCAR 参数,包括参数作用、默认值、可取值与推荐用法,可作为平时查询和熟悉参数的工具。VASP 官方手册地址:https://www.vasp.at/wiki/index.php/The_VASP_Manual (直接在搜索栏搜索参数名称)。

一、 全局通用参数 #

1.SYSTEM #

  • 参数描述:用于描述此次计算目的、体系、方法等,仅作备注。
  • 默认值:unknown system。
  • 可取值:随意填写,但不要写中文。
  • 推荐用法:可写可不写;当自洽计算填写此参数(如 SYSTEM=XXX)并输出 CHGCAR 后,后续非自洽计算读取这个 CHGCAR 时,计算刚开始会显示 CHGCAR read from XXX。

2.ISTART #

  • 参数描述:决定 VASP 运行计算时是否读取 WAVECAR 文件。
  • 默认值:ISTART = 1(如果存在 WAVECAR 文件);ISTART = 0(不存在 WAVECAR 文件)。
  • 可取值:ISTART = 0 | 1 | 2 | 3。
    • 0:不读取 WAVECAR,根据 INIWAV 的值确定初始化轨道的方法。
    • 1:轨道由 WAVECAR 读取,并重新读取 INCAR 中的截断能和 POSCAR 中的晶格矩阵进行计算;若不存在 WAVECAR 则按 ISTART=0 执行。晶胞大小/形状或截断能发生变化且希望读取 WAVECAR 时建议设 1。
    • 2:轨道由 WAVECAR 读取,即使截断能或晶格矩阵与 WAVECAR 中存储的值不同,平面波也不会更改。
    • 3:与 2 相同,但额外读取 TMPCAR 文件(含时间步长的位置和轨道信息),一般不推荐;若不存在 WAVECAR 或 TMPCAR,计算立即终止。
  • 推荐用法:计算能带结构、态密度时 ISTART=1;其余计算 ISTART=0。注意:若 POSCAR 中晶胞大小/形状或 INCAR 中截断能没有变化,ISTART=1 和 ISTART=2 作用相同。

3.ICHARG #

  • 参数描述:决定 VASP 如何构建初始电荷密度。
  • 默认值:ICHARG = 2(当 ISTART=0 时);ICHARG = 0(其他所有情况)。
  • 可取值:ICHARG = 0 | 1 | 2 | 4 | 5 | 10 | 11 | 12。
    • 0:从初始波函数(WAVECAR)计算电荷密度。适用于续算场景,但若波函数不匹配可能导致收敛问题,不常用。
    • 1:从 CHGCAR 文件读取电荷密度,并外推至新位置。适用于结构微调后的续算,可加速收敛,不常用。
    • 2:使用原子电荷密度的叠加作为初始电荷密度,适用于全新计算,常用!
    • 4:从 POT 文件读取势场(需 LVTOT=.TRUE. 生成),常用于优化有效势(OEP)方法。
    • 5:外部电荷密度更新模式,用于 DFT+DMFT 等自洽计算。
    • 10:ICHARG=0 的非自洽版本(电荷密度保持恒定),常用于 HSE 计算能带结构。
    • 11:ICHARG=1 的非自洽版本,常用于基于 CHGCAR 给定电荷密度计算能带结构和态密度(PBE 能带最常用)。
    • 12:ICHARG=2 的非自洽版本(遵循 Harris-Foulkes 泛函原理)。
  • 推荐用法:绝大多数计算设置 ICHARG = 2;PBE 能带设置 ICHARG = 11;HSE 能带设置 ICHARG = 10。当 ICHARG=11/12 时,强烈建议将 LMAXMIX 设为赝势中最大 l 量子数的两倍(s/p 元素设 2,d 元素设 4,f 元素设 6)。

4.LREAL #

  • 参数描述:确定投影算符是在实空间(real-space)还是倒易空间(reciprocal space)中进行计算。
  • 默认值:LREAL = .FALSE.(官方 Wiki 默认;注意 VASP 5.4.4+ 在特定编译选项下默认可为 Auto,需按所用版本核对)。
  • 可取值:LREAL = .FALSE. | Auto (A) | On (O) | .TRUE.。
    • .FALSE.:倒易空间计算,默认设置,适用于高精度计算,但计算量较大。
    • Auto 或 A:实空间计算,完全自动优化投影算符,推荐使用(大体系)。
    • On 或 O:实空间计算,需手动优化投影算符(不推荐)。
    • .TRUE.:实空间计算,直接使用文件中存储的投影算符(不推荐),可能导致精度下降。
  • 推荐用法:超过 20 个原子的体系直接用 LREAL = Auto;原子数超过 100 时,LREAL = Auto 比 .FALSE. 快很多倍。注意:LREAL=.TRUE. 不能用于 GW(ALGO=GW)和杂化泛函(LHFCALC=.TRUE.)计算,须用 .FALSE.。

5.ENCUT #

  • 参数描述:平面波基组的截断能(单位 eV),影响精度与速度的最重要参数之一。
  • 默认值:ENCUT = POTCAR 文件中最大的 ENMAX。
  • 可取值:任意正实数。单位版本差异:VASP 4.x 中 ENCUT 以 Ry 为单位,VASP 5.x 起以 eV 为单位——同一数值在版本间物理含义完全不同。
  • 推荐用法:强烈建议始终手动指定 ENCUT,否则默认值可能在不同计算中不同,导致总能量无法比较。截断能选取建议自己手动做收敛性测试;”1.3×ENMAX”只是常见经验规则(并非官方强制要求)。用 grep ENMAX POTCAR 抓取所有 ENMAX,取最大值后设置 ENCUT = 1.3 × ENMAX(如最大 ENMAX=400 eV,则 ENCUT=520 eV)。改变 ENCUT 后旧 WAVECAR 不再兼容(触发 ENMAX changed 报错)。

6.ISMEAR #

  • 参数描述:控制轨道部分占据数的设置方法(展宽方法),决定如何处理费米能级附近的电子分布。
  • 默认值:ISMEAR = 1(Methfessel-Paxton 一阶);若仅含 Γ 点(单 k 点),默认使用 -5(四面体法)。官方 Wiki 专门设有警告页《Be careful with the default smearing method (ISMEAR=1)》,提醒默认值并非总是好选择;且默认值描述在版本/文档间存在差异,务必以所用 VASP 版本对应的 wiki 为准。
  • 可取值:ISMEAR = -15 | -14 | -5 | -4 | -3 | -2 | -1 | 0 | 正整数。
    • >0(如 1、2):Methfessel-Paxton 方法,阶数为 ISMEAR 值,展宽由 SIGMA 决定;可能导致绝缘体的部分占据数不物理。
    • 0:高斯展宽方法,展宽由 SIGMA 决定,万能设置。
    • -1:费米展宽方法。
    • -2:从 WAVECAR 读取部分占据数并保持不变。
    • -3:对 SMEARINGS 参数提供的值进行循环计算。
    • -4:无展宽的四面体方法。
    • -5:带 Blöchl 修正的无展宽四面体方法(半导体/绝缘体 DOS 计算推荐,需要较密 k 点网格)。
    • -14:带费米-狄拉克展宽(SIGMA)的四面体方法。
    • -15:带 Blöchl 修正和费米-狄拉克展宽(SIGMA)的四面体方法。
  • 推荐用法:孤立分子/原子体系用 ISMEAR=0; SIGMA=0.01;周期性体系未知类型用 ISMEAR=0; SIGMA=0.03~0.05;半导体/绝缘体用 0 或 -5(DOS 计算用 -5,K 点需 ≥3);金属用 1 或 0(配合小 SIGMA)。四面体方法(-4、-5、-14、-15)需配合 gamma-center 的 K 点模式使用;对需要精确力的弛豫/MD 一般用展宽法更稳妥。

7.SIGMA #

  • 参数描述:决定展宽宽度(单位 eV)。
  • 默认值:SIGMA = 0.2。
  • 可取值:任意正实数(eV),实际常用 0.01–0.2。
  • 推荐用法:SIGMA 和 ISMEAR 一般同时设定(ISMEAR=-5 时不需要写 SIGMA)。金属:ISMEAR=1 或 0, SIGMA=0.1~0.2;非金属:ISMEAR=0, SIGMA=0.05~0.10;孤立分子/原子:ISMEAR=0, SIGMA=0.01。测试标准:OUTCAR 中 entropy T*S 平均到每个原子上要小于 1~2 meV(用 grep 'entropy T' OUTCAR 查看,能量除以原子数后与 0.001 eV 比较)。注意:SIGMA 过大 → 能量/力失真(弛豫时引入类 Pulay 误差),过小 → SCF 收敛慢或振荡。

8.PREC #

  • 参数描述:指定计算的“精度模式”,为 ENCUT、FFT 网格(NGX/NGY/NGZ 及 NGXF/NGYF/NGZF)、实空间投影算子精度(ROPT)等设置默认值。
  • 默认值:PREC = Medium(VASP 4.x);PREC = Normal(VASP 5.x 起)。
  • 可取值:PREC = Low | Medium | High | Normal | Accurate | Single(部分资料另列 VASP 6 的 SingleN)。
    • Low:ENCUT=max(ENMIN)。
    • Medium:ENCUT=max(ENMAX)。
    • Normal:ENCUT=max(ENMAX),双网格(NGXF=2×NGX)。
    • Accurate:ENCUT=max(ENMAX),主网格 2×Gcut,双网格,略微增加内存需求。
    • High:ENCUT=1.3×max(ENMAX),最严格。
    • Single / SingleN:VASP 5/6 的精度选项(单精度网格)。
  • 推荐用法:推荐 PREC=Normal 或 PREC=Accurate。高精度力计算、声子谱、应力张量等建议 Accurate + 增大 ENCUT;有时 ADDGRID=.TRUE. 可进一步提高力的精度。⚠️ 重要提示:① PREC 主要控制 ENCUT 与 FFT 网格,并不直接改变物理精度——真正决定精度的是 ENCUT;② 设置 PREC=Accurate 不意味着完全收敛,ENCUT 收敛性必须单独测试;③ 混合泛函中 Fock 交换网格由独立的 PRECFOCK 控制,勿与 PREC 混淆。

9.ALGO #

  • 参数描述:指定电子最小化算法或选择 GW 计算类型。
  • 默认值:ALGO = Normal(注意:读取电荷密度继续算(ICHARG=1 等)时旧版默认可能退化为 VeryFast)。
  • 可取值:Normal | VeryFast | Fast | Conjugate | All | Damped | Subrot | Eigenval | Exact;GW/RPA 类另有 G0W0 | GW0 | GW | GW0R | scGW0 | scGW | CHI | ACFDT | RPA | BSE | TDHF 等。
    • Normal:Blocked-Davidson 算法(IALGO=38),通用且稳健,适用于大多数情况。
    • VeryFast:RMM-DIIS 算法(IALGO=48),更快但稳定性降低,HSE06 计算不要选。
    • Fast:混合算法,初始 Davidson 后续切换 RMM-DIIS。
    • Conjugate / All:IALGO=58(全带同时更新),DFT+U 难收敛时可加快收敛。
    • Damped / Exact:阻尼算法/精确对角化(小体系)。
    • Eigenval:只做一次对角化、不更新电荷密度(配合 ICHARG=11 做能带/非自洽)。
  • 推荐用法:常规计算推荐 ALGO = Normal;结构优化步骤不收敛时可尝试 Fast 或 VeryFast;金属氧化物 DFT+U 电子步难收敛可用 ALGO = All;含 f 轨道电子(镧系元素)必须设 LMAXMIX=6 确保收敛。注意 ALGO 通过映射到 IALGO 生效,直接设置 IALGO 会覆盖 ALGO。

10.EDIFF #

  • 参数描述:电子自洽迭代的全局收敛判据(单位 eV)。
  • 默认值:EDIFF = 1×10⁻⁴(各版本一致;官方 Wiki 明确提示该默认对多数计算过松)。
  • 可取值:任意正实数。
  • 推荐用法:两步迭代之间的总能变化和能带能量变化都小于 EDIFF 时电子弛豫停止。建议设置 EDIFF = 1×10⁻⁵ ~ 1×10⁻⁶;有限差分计算(如声子谱)可能需要 EDIFF = 1×10⁻⁷。可通过 NWRITE = 2, 3 查看每一步电子迭代的详细信息。注意:EDIFF 只控制电子步收敛,离子步收敛由 EDIFFG 控制;非自洽计算(ICHARG=11)中 EDIFF 不适用。

11.NELM 与 NELMIN #

  • 参数描述:分别设定电子自洽迭代的最大步数和最小步数。
  • 默认值:NELM = 60;NELMIN = 2。
  • 可取值:整数。
  • 推荐用法:通常无需修改 NELM;若自洽循环 40 步内仍未收敛大概率无法收敛,手动设置必须大于 100,否则 VASP 忽略该值。分子动力学(MD)或离子弛豫/结构优化时,建议将 NELMIN 增大到 4~8。

12.ISYM #

  • 参数描述:决定 VASP 处理对称性的方式。
  • 默认值:ISYM = 1(使用超软赝势 USPPs 时);ISYM = 3(杂化泛函 LHFCALC=.TRUE. 时);ISYM = 2(其他情况)。
  • 可取值:ISYM = -1 | 0 | 1 | 2 | 3。
    • 1:使用对称性,但不对电荷密度做对称化(较快)。
    • 2:使用对称性并对称化电荷密度(力更精确,较慢,默认);需要精确力时常用。
    • 3:同 2,并额外检查电荷密度是否对称(杂化泛函默认,检查/调试用)。
    • 0:完全关闭对称性,但假设波函数满足时间反演对称,推荐用于分子动力学(IBRION=0)。
    • -1:完全关闭对称性(含时间反演),适用于自旋轨道耦合(SOC)或强对称性破缺体系。
  • 推荐用法:常规晶体计算用默认 ISYM=2;结构优化/分子动力学中为规避对称性伪影可用 ISYM=0;磁性或 SOC 体系关闭对称性(ISYM=-1)。设 NWRITE=3 可在 OUTCAR 中输出对称操作详情。

二、输出控制参数 #

1.LWAVE #

  • 参数描述:决定波函数是否在 VASP 运行结束时写入 WAVECAR 文件。
  • 默认值:LWAVE = .TRUE.。
  • 可取值:.TRUE. | .FALSE.。
  • 推荐用法:WAVECAR 常占用大量存储空间。结构优化、分子动力学等不需要后续读取 WAVECAR 的任务都写 LWAVE = .FALSE.;只有后续明确会用到 WAVECAR 的场景(如能带续算、后续 ISTART=1)再写 .TRUE.。

2.LCHARG #

  • 参数描述:决定是否写入 CHGCAR 和 CHG 文件。
  • 默认值:LCHARG = .TRUE.。
  • 可取值:.TRUE. | .FALSE.。
  • 推荐用法:结构优化、分子动力学等不需要后续读取 CHGCAR 的任务写 LCHARG = .FALSE.;后续能带、态密度、Bader 电荷分析等需要 CHGCAR 的场景写 .TRUE.。

3.LORBIT #

  • 参数描述:选择将 Kohn-Sham 轨道投影到局域量子数(l,m)的方法,并输出 DOSCAR / PROCAR / PROOUT 文件。
  • 默认值:LORBIT = 0。
  • 可取值:LORBIT = 0 | 1 | 2 | 5 | 10 | 11 | 12(官方取值表,另见 13)。各取值含义(官方表格):
    • 0:简单投影(需要 RWIGS),写 DOSCAR 和 PROCAR。
    • 1:lm 分解的 PROCAR(需要 RWIGS)。
    • 2:lm 分解的 PROCAR + 相位因子(需要 RWIGS)。
    • 5:写 DOSCAR 和 PROOUT(老格式输出,需要 RWIGS)。
    • 10:PAW 投影(忽略 RWIGS),写 DOSCAR 和 PROCAR。
    • 11:PAW + lm 分解的 PROCAR(忽略 RWIGS)。
    • 12:PAW + lm 分解 PROCAR + 相位因子(忽略 RWIGS,不推荐)。
    • 13:lm 分解 PROCAR 变体(忽略 RWIGS)。
  • 推荐用法:画分波态密度(PDOS)常用 LORBIT = 11(PAW + lm 分解);默认 0 为简单投影。设置 LORBIT 后 OUTCAR 会输出总电荷(s/p/d 分轨道)。注意:LORBIT 是后处理步骤,可在收敛计算重启时通过 ALGO=None 添加/更改。

4.LAECHG #

  • 参数描述:控制 VASP 是否显式重构全电子电荷密度并写入文件。
  • 默认值:LAECHG = .FALSE.。
  • 可取值:.TRUE. | .FALSE.。
  • 推荐用法:LAECHG=.TRUE. 时输出 AECCAR0、AECCAR1、AECCAR2 三个文件(芯密度、类原子价密度、自洽价密度),用于 Bader 电荷分析(标准做法为 AECCAR0 + AECCAR2 − AECCAR1)。仅对 PAW 赝势有效,且计算开销(内存与时间)明显增加,不需要时避免开启。

5.LELF #

  • 参数描述:控制是否生成 ELFCAR 文件(电子定域化函数 ELF)。
  • 默认值:LELF = .FALSE.。
  • 可取值:.TRUE. | .FALSE.。
  • 推荐用法:化学成键分析时设 LELF=.TRUE.;注意必须同时在 INCAR 中显式设置 NPAR=1。

6.LVTOT #

  • 参数描述:控制是否将总局域势写入 LOCPOT 文件。
  • 默认值:LVTOT = .FALSE.。
  • 可取值:.TRUE. | .FALSE.。
  • 推荐用法:功函数、静电势分析(如表面真空能级)时设 LVTOT=.TRUE.,同时会写 POT 文件(额外包含 augmentation 部分)。

7.NWRITE #

  • 参数描述:控制输出到 OUTCAR 文件的详细程度(verbosity)。
  • 默认值:NWRITE = 2。
  • 可取值:NWRITE = 0 | 1 | 2 | 3(官方仅定义 0–3;NWRITE = 4 仅用于调试,非常规取值)。
    • 0:最少输出(minimal)。
    • 1:常规输出。
    • 2:更多输出(默认)。
    • 3:debug 调试级输出。
  • 推荐用法:长时分子动力学建议 NWRITE = 0 或 1;短时间计算用 2;出错排查时用 3 获取更多信息(含对称性操作、耗时信息)。

三、结构优化参数 #

1.IBRION #

  • 参数描述:决定计算是做结构优化、分子动力学、声子、过渡态,还是静态计算。
  • 默认值:IBRION=-1(当 NSW=-1 或 0 时,即默认就是单点计算);IBRION=0(其他情况)。
  • 可取值:IBRION = -1 | 0 | 1 | 2 | 3 | 5 | 6 | 7 | 8 | 44(官方允许值仅此 10 个;部分中文资料中的 11/12/40 无官方记载,属二手资料误传,应剔除)。
    • -1:不进行结构更新(静态计算)。
    • 0:分子动力学模拟。
    • 1:结构优化(RMM-DIIS 算法),收敛快,适合大体系。
    • 2:结构优化(共轭梯度法),最稳健、最常用。
    • 3:结构优化(阻尼分子动力学),适合结构差、离基态很远的体系。
    • 5:声子谱计算(有限差分法,不利用对称性)。
    • 6:声子谱计算(有限差分法,利用对称性)。
    • 7:声子谱计算(微扰理论 DFPT,不利用对称性)。
    • 8:声子谱计算(微扰理论 DFPT,利用对称性)。
    • 44:MLFF(机器学习力场)on-the-fly 训练相关(仅 VASP 6.3+ 支持)。
  • 推荐用法:只算能量不动原子 IBRION=-1;结构弛豫找最稳定结构 IBRION=2 或 1;跑分子动力学 IBRION=0。注意:避免在 NSW>0 时设置 IBRION=-1,否则会重复计算同一结构 NSW 次。

2.ISIF #

  • 参数描述:决定是否计算应力张量,以及结构优化中允许改变哪些自由度(原子位置、晶胞形状、晶胞体积)。
  • 默认值:ISIF = 2(当 IBRION=1、2、3 离子弛豫时);ISIF = 0(当 IBRION=0 分子动力学或 IBRION=5、6、7、8 声子计算时;杂化泛函 LHFCALC=.TRUE. 时亦为 0)。
  • 可取值:ISIF = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8(官方自由度表:0 只原子、1 原子+体积、2 原子+形状(体积不变)、3 原子+形状+体积、4 形状+体积、5 只形状、6 只体积、7 只算应力、8 原子+形状(定体积,VASP 6.4.1+))。
    • 0:计算受力,不计算应力;弛豫原子位置,不改变晶胞形状和体积。
    • 1:计算受力 + 体积 trace;弛豫原子位置和体积(形状不变)。
    • 2:计算受力 + 应力;弛豫原子位置和晶胞形状(体积不变),常用默认。
    • 3:计算受力 + 应力;弛豫原子位置、晶胞形状和体积(全弛豫),晶体最常用。
    • 4:计算受力 + 应力;弛豫晶胞形状和体积(原子位置不弛豫)。
    • 5:计算受力 + 应力;只弛豫晶胞形状(原子位置和体积不弛豫)。
    • 6:计算受力 + 应力;只弛豫晶胞体积(原子位置和形状不弛豫)。
    • 7:计算受力 + 应力;什么都不弛豫(只算应力)。
    • 8:计算受力 + 应力;弛豫原子位置和晶胞形状(体积不变)(VASP 6.4.1+)。
  • 推荐用法:表面、分子、吸附体系用 ISIF=0(只动原子);晶体全弛豫用 ISIF=3;MD 用 ISIF=2(体积不变)。涉及体积变化的计算,必须提高截断能 ENCUT = 1.3 × max(ENMAX) 并设置 PREC = High。

3.NSW #

  • 参数描述:设置最大离子步数。
  • 默认值:NSW = 0。
  • 可取值:整数。
  • 推荐用法:当 IBRION=0(分子动力学)时,NSW 表示总步数,必须设置,否则 VASP 启动后立即退出;长时 MD 建议拆分任务,每个 NSW 不超过约 20000 步。当 IBRION≠0(结构优化)时,NSW 定义最大离子弛豫步数,一般设 50~200。

4.EDIFFG #

  • 参数描述:定义离子弛豫循环的收敛判据。
  • 默认值:EDIFFG = EDIFF × 10。
  • 可取值:实数。
  • 推荐用法:正值表示相邻两步离子步总能量变化小于 EDIFFG 时弛豫停止;负值表示所有原子受力模均小于 |EDIFFG| 时弛豫停止(更常用、更推荐),如 EDIFFG=-0.02。警告:EDIFFG 不适用于分子动力学(MD)模拟。

5.POTIM #

  • 参数描述:在分子动力学中设置时间步长,在离子弛豫中设置迭代步长,在声子计算中设置原子位移幅度。
  • 默认值:POTIM = 0.5(IBRION=1、2、3 离子弛豫及 MD);POTIM = 0.015(IBRION=5、6、7、8 有限位移/DFPT 声子,VASP 5.1+);IBRION=0(分子动力学)无默认值,必须手动设置。
  • 可取值:实数。
  • 推荐用法:IBRION=0(AIMD)时 POTIM 为时间步长,单位 fs(如 1、2 fs),必须手动设置,否则 VASP 启动后直接崩溃;IBRION=1、2、3 时 POTIM 作为步长缩放系数(准牛顿法对该参数特别敏感,优化振荡时可减小到 0.1~0.3);IBRION=5、6 时 POTIM 是原子位移幅度(计算 Hessian 矩阵用)。

四、磁性与强关联体系参数 #

1.ISPIN #

  • 参数描述:指定是否进行自旋极化计算。
  • 默认值:ISPIN = 1。
  • 可取值:ISPIN = 0 | 1 | 2(通行用法 1 | 2:1 非自旋极化(默认);2 自旋极化(共线磁性),可结合 MAGMOM 研究铁磁、反铁磁等;0 为 Wiki 记载的非自旋极化写法,行为与 1 相同)。
  • 推荐用法:磁性材料(过渡金属 Fe、Co、Ni 或含 d/f 电子体系)设 ISPIN=2 并合理定义 MAGMOM;非磁性体系用 ISPIN=1 节省资源。注意:ISPIN=2 比 ISPIN=1 多使用将近一倍的内存/显存和时间(显卡加速节点尤其注意);非共线磁性计算(LNONCOLLINEAR=.TRUE.)时 ISPIN 被忽略(VASP 6.5.0+ 同时设置 LNONCOLLINEAR=.TRUE.、ISPIN=2 和 MAGMOM 会报错)。

2.MAGMOM #

  • 参数描述:指定每个原子的初始磁矩(单位 μB)。
  • 默认值:MAGMOM = NIONS × 1.0(ISPIN=2);MAGMOM = 3 × NIONS × 1.0(非共线磁性)。
  • 可取值:实数数组。
  • 推荐用法:反铁磁 Cr 单胞(2 原子)写 MAGMOM = 1.0 -1.0;多原子体系可用换行符 \ 分隔。合理初始磁矩可加速收敛并避免陷入局部极小值,推荐值为实验磁矩的 1.2~1.5 倍。注意:从头计算(ISTART=0)时 MAGMOM 定义初始磁矩并可能降低体系对称性。

3.LDAU #

  • 参数描述:指定是否进行 DFT+U 计算。
  • 默认值:LDAU = .FALSE.。
  • 可取值:.TRUE. | .FALSE.。
  • 推荐用法:强关联体系(过渡金属氧化物、稀土化合物)设 LDAU=.TRUE. 并配合 LDAUTYPE、LDAUL、LDAUU、LDAUJ。注意:DFT+U 计算能带结构时,CHGCAR 中仅保存 l≤LMAXMIX 的占据矩阵信息,必须严格设置 LMAXMIX(d 区元素设 4,f 区元素设 6),否则能带结果与自洽不一致。

4.LDAUTYPE #

  • 参数描述:指定所使用的 DFT+U 具体形式。
  • 默认值:LDAUTYPE = 2。
  • 可取值:LDAUTYPE = 1 | 2 | 3 | 4。
    • 1:Liechtenstein 等人提出的旋转不变性 DFT+U(U 与 J 相互独立、分别起作用)。
    • 2:Dudarev 等人提出的简化旋转不变性 DFT+U(即 U−J 形式,最常用)。
    • 3、4:官方 Wiki 描述较简短,为 1/2 的变体(在交换相互作用 J 的处理上不同),实际极少使用;3和4 的官方表述在不同版本间有差异,使用前以现行 Wiki 为准。
  • 推荐用法:一般用 LDAUTYPE=2;LDAUTYPE=1、2、3 可用于非自旋极化计算(ISPIN=1)。

5.LDAUL #

  • 参数描述:指定需要施加 DFT+U 的角量子数 l。
  • 默认值:LDAUL = NTYP*2(即默认对所有原子种类施加 d 轨道(l=2)的 +U)。注意:LDAUL = -1 表示不加 U。
  • 可取值:整数数组(必须为每一种原子种类指定一个数值)。
    • -1:不加 U(如 O、S 等)。
    • 0:s 轨道(氢、碱金属等主族元素)。
    • 1:p 轨道(氧、氮、卤素等主族元素)。
    • 2:d 轨道(过渡金属 Fe、Mn、Ni 等)。
    • 3:f 轨道(稀土/锕系元素 La、Ce、U 等)。
  • 推荐用法:示例——体系含 Fe(d 轨道加 U)+ O(不加 U):LDAUL = 2 -1(第一个数给 Fe,第二个数给 O)。

6.LDAUU 与 LDAUJ #

  • 参数描述:分别设置有效局域库仑相互作用强度(U)和有效局域交换相互作用强度(J)。
  • 默认值:LDAUU = NTYP*0.0;LDAUJ = NTYP*0.0。
  • 可取值:实数数组(必须为每一种原子类型指定一个数值)。
  • 推荐用法:示例——Fe 加 U=4.0 eV、J=0.0 eV,O 无相互作用:LDAUU = 4.0 0.0;LDAUJ = 0.0 0.0。注意:LDAUTYPE=2 时实际生效的是 U−J=4.0(最常用);总能量依赖于 U、J 参数,不同 U、J 下的总能量无直接可比性。

7.LMAXMIX #

  • 参数描述:控制单中心 PAW 电荷密度参与电荷密度混合并写入 CHGCAR 的最高角量子数 l。
  • 默认值:LMAXMIX = 2。
  • 可取值:整数(l=2 覆盖至 d;l=4 覆盖至 d 的更高分量;l=6 覆盖至 f)。
  • 推荐用法:DFT+U 计算能带结构时 d 区元素设 LMAXMIX = 4、f 区元素设 LMAXMIX = 6(自洽步必须显式设置,否则读 CHGCAR 后处理的能带/DOS 不正确);考虑非共线磁性的 SDFT 计算同样需要提高(d 元素 4,f 元素 6)以实现快速收敛;含 f 轨道电子(镧系元素)必须设 LMAXMIX=6 确保收敛。

8.LNONCOLLINEAR 与 LSORBIT #

  • 参数描述:LNONCOLLINEAR 指定是否考虑非共线磁性;LSORBIT 指定是否考虑自旋轨道耦合(SOC)。
  • 默认值:LNONCOLLINEAR = .FALSE.;LSORBIT = .FALSE.。
  • 可取值:.TRUE. | .FALSE.。
  • 推荐用法:螺旋磁性、拓扑磁性等自旋方向随位置变化的体系开 LNONCOLLINEAR(开启后 MAGMOM 每个原子需 3 个分量);重元素、拓扑材料、磁各向异性计算开 LSORBIT(计算量显著增大)。注意:① 设置 LSORBIT=.TRUE. 会自动启用非共线模式(LNONCOLLINEAR=.TRUE.);② SOC 计算必须配合 SAXIS 定义自旋量子化轴(默认 (0,0,1)),一般需 ISYM=0;③ GGA_COMPAT 的默认值在 VASP 6.1.0 由 .TRUE. 改为 .FALSE.,SOC 相关计算属版本敏感点;④ VASP 6.5.0+ 中若同时设置 LNONCOLLINEAR=.TRUE.、ISPIN=2 和 MAGMOM 会报错。

五、分子动力学与声子参数 #

1.MDALGO #

  • 参数描述:分子动力学算法(系综选择),需 IBRION=0 且 VASP 以 -Dtbdyn 编译。
  • 默认值:MDALGO = 0。
  • 可取值:0 | 1 | 2 | 3 | 4 | 5 | 11 | 21 | 13(4 和 5 为 VASP 6 新增)。
    • 0:标准分子动力学(NVE 系综,配合 SMASS=-3)。
    • 1:Andersen 恒温器(NVT,配 ANDERSEN_PROB);NVE 特殊用法:MDALGO=1 + ANDERSEN_PROB=0.0。
    • 2:Nose-Hoover 恒温器(NVT,配 SMASS)。
    • 3:Langevin 恒温器(NVT 用 ISIF=2;NpT 用 ISIF=3 + Parrinello-Rahman,配 LANGEVIN_GAMMA、LANGEVIN_GAMMA_L、PMASS)。
    • 4:Nose-Hoover chains(NHC,VASP 6 新增,配 NHC_NCHAINS/NHC_PERIOD)。
    • 5:CSVR(velocity-rescaling)恒温器(自 VASP 6.4.3 起,配 CSVR_PERIOD)。
    • 11 / 21:官方定义为 VASP 5.x 的 metadynamics 变体(11=Andersen 系、21=Nose-Hoover 系),不是 NpT;VASP 6 中直接用 1/2。
    • 13:Multiple Andersen thermostats(最多 3 个子系统独立恒温)。
  • 重要更正:官方 Wiki 一贯为 1=Andersen、2=Nose-Hoover、3=Langevin;大量中文博客写”1=Nose-Hoover、2=Andersen”,与官方不符,请以官方为准。NpT 在 VASP 6 中由 ISIF=3 + MDALGO=3 实现。
  • 推荐用法:常用 MDALGO=2(Nose-Hoover,NVT);做 NVE 推荐 MDALGO=1 + ANDERSEN_PROB=0.0(官方 Tip)。配合 TEBEG/TEEND(起始/结束温度,默认 TEBEG=0 K、TEEND=TEBEG)、SMASS(见下)、POTIM(时间步长 fs)、NBLOCK(每隔多少步写一次轨迹)。

2.声子计算相关 #

  • IBRION=5/6/7/8:声子谱计算模式(见 1.5.3),5/6 为有限差分法(POTIM 为位移幅度,VASP 5.1+ 默认 0.015 Å),7/8 为 DFPT 微扰理论。有限差分计算为获得精确结果,EDIFF 可能需要设 1×10⁻⁷。
  • NFREE:声子/弹性常数计算中每个方向的位移数。官方默认值为”IBRION=2 时 1,否则 0″(很多资料误传为 2),做弹性常数/声子时必须显式设置:NFREE=2(中心差分,±POTIM)或 NFREE=4(±POTIM 与 ±2·POTIM,更高精度)。弹性常数:IBRION=6 + ISIF=3。
  • 配合 Phonopy:有限位移法声子计算用 IBRION=8,K 点取 1 1 1,位移用 POTIM 控制。

3.TEBEG / TEEND / SMASS(MD 温度与恒温器) #

  • TEBEG:MD 起始温度(K),默认 0;POSCAR 未提供初速度时按 TEBEG 的 Maxwell-Boltzmann 分布随机初始化。
  • TEEND:MD 结束温度(K),默认 = TEBEG;与 SMASS=-1 配合实现线性升温(T = TEBEG + (TEEND − TEBEG)×NSTEP/NSW)。
  • SMASS:控制 MD 过程中的速度(Nose-Hoover 类恒温器的耦合强度)。默认 -3;可取值 -3 | -2 | -1 | ≥0:
    • -3:NVE 微正则系综(恒能量 MD,官方推荐做法:MDALGO=1 + ANDERSEN_PROB=0.0)。
    • -2:保持初速度恒定(冻结声子、变键长扫描等)。
    • -1:每 NBLOCK 步将速度标定到线性斜坡温度(配合 TEEND)。
    • ≥0:Nosé 正则系综(NVT),SMASS=0 时取对应 40 时间步周期的 Nosé 质量。
  • 注意:SMASS 主要作用于 Nose-Hoover 类恒温器(MDALGO=2 系);Langevin(MDALGO=3)的耦合由 LANGEVIN_GAMMA 控制,不用 SMASS。

六、并行与性能参数 #

1.NCORE #

  • 参数描述:每个轨道由多少个计算核共同处理(共享内存并行),决定并行效率与内存分布。
  • 默认值:NCORE = 1(VASP 5.2.13+ 起可用)。
  • 推荐用法:与 NPAR 的关系:NCORE = 总核数 / KPAR / NPAR;若同时设置 NPAR 与 NCORE,NPAR 优先。推荐 NCORE = 每个节点核数(如 8、16、32,快速网络/大晶胞 12–16),大规模并行机 NCORE ≈ √总核数。避免 NCORE=总核数(仅平面波分布,官方明确通常很慢);NCORE=1(默认)适合小晶胞、慢网络、≤8 核但内存需求大。

2.NPAR #

  • 参数描述:并行处理的能带(band)数。
  • 默认值:NPAR = available ranks(总核数)(官方 Wiki 原文:”Default: NPAR = available ranks”;旧版 VASP 4.5 手册记载默认等于”节点数”)。
  • 推荐用法:官方 Wiki 已明确标注 “This is a legacy tag; use NCORE instead”(NPAR 是遗留标签,请改用 NCORE),并警告”Only use NPAR if you know what you are doing”。一般 NPAR = 总核数开平方(如 64 核用 8);NPAR=1 等价于 NCORE=总核数(仅平面波分布,很慢,避免)。注意:LELF=.TRUE. 时需显式设置 NPAR=1。

3.KPAR #

  • 参数描述:并行处理的 K 点数(VASP 5.3.2+ 起可用)。
  • 默认值:KPAR = 1。
  • 推荐用法:K 点很多时设置(如 2、4);官方建议 KPAR 为总核数的整数因子。K 点以 round-robin 方式分配到 KPAR 组,每组 N=总核数/KPAR 个核共同处理一个 K 点;⚠️ 官方特别注明 k 点间没有额外的数据分布。

4.LPLANE #

  • 参数描述:开启实空间按”平面”(plane-wise)的数据分布,影响 FFT 通信与负载均衡。
  • 默认值:LPLANE = .TRUE.。
  • 推荐用法:.TRUE. 降低 FFT 通信带宽,但大规模并行机上恶化负载均衡。典型组合:快速网络 LPLANE=.TRUE. + NCORE=每节点核数;慢网络(1 Gbit)LPLANE=.TRUE. + NCORE=1;大规模机(Cray/Blue Gene)LPLANE=.FALSE. + NPAR=√总核数。

七、高级与特殊参数 #

1.IVDW(范德华力修正) #

  • 参数描述:指定在 DFT 计算中加入何种范德瓦尔斯(色散)修正方法。
  • 默认值:IVDW = 0(不启用任何范德华色散修正)。已直接核对 VASP 官方 Wiki 页面原文(https://www.vasp.at/wiki/index.php/IVDW):“Default: IVDW = 0 (no correction)”——不存在”VASP 6 默认改为 12″的说法(网上个别资料将”社区推荐 PBE 配 D3-BJ”误传为软件默认,请勿采信)。各版本均需在 INCAR 中显式设置 IVDW 才能开启色散修正。
  • 可取值(官方 Wiki 取值表,截至 VASP 6.x):
    • 0:不加色散修正(默认)。
    • 1 或 10:DFT-D2(Grimme 方法,VASP 5.2.11+)。
    • 11:DFT-D3 + zero damping(零阻尼)(VASP 5.3.4+)。
    • 12:DFT-D3 + Becke-Johnson 阻尼(VASP 5.3.4+;推荐用于大部分体系的显式设置值,非默认)。
    • 13:DFT-D4(VASP 6.2+,外部包)。
    • 15:simple-DFT-D3 库(VASP 6.6.0+)。
    • 3:DFT-ulg(VASP 5.3.5+)。
    • 4:dDsC 色散修正(VASP 5.4.1+)。
    • 2 或 20:Tkatchenko-Scheffler(TS)方法(VASP 5.3.3+)。
    • 21:TS + 迭代 Hirshfeld 划分(TS/HI,VASP 5.3.5+)。
    • 202:MBD@rsSCS 多体色散方法(VASP 5.4.1+)。
    • 263:MBD@rSC/FI(分数离子模型,VASP 6.1.0+)。
    • 14:libMBD 库中的多体色散方法(VASP 6.4.3+,外部包)。
  • 推荐用法:分子晶体、层状材料(石墨烯、MoS2 等)、吸附体系强烈建议显式设置 IVDW=12(D3-BJ),否则层间距、吸附能会严重偏低。注意:旧参数 LVDW=.TRUE.(DFT-D2)已废弃,会被自动映射为 IVDW=1(除非 INCAR 中显式指定 IVDW)。

2.LHFCALC(杂化泛函) #

  • 参数描述:是否开启杂化泛函(如 HSE06)。
  • 默认值:LHFCALC = .FALSE.。
  • 推荐用法:LHFCALC=.TRUE. 配合 HFSCREEN=0.2(HSE06)或 HFSCREEN=0(PBE0)、AEXX=0.25、PRECFOCK(Fock 交换 FFT 精度,建议 High)。设 .TRUE. 后必须同时设置 AEXX、ALDAC、AGGAC 等参数,或直接使用官方”List of hybrid functionals”中的预设组合;需配合足够大的 NBANDS(未占据带要多);与 LREAL、NKRED 等有兼容性限制。计算量大,一般先用 PBE 做结构优化,再用杂化泛函算能带、带隙、态密度。注意:杂化泛函计算默认 ISIF=0。

3.NELECT #

  • 参数描述:手动指定体系总电子数。
  • 默认值:体系价电子总数。
  • 推荐用法:带电体系、缺陷电荷态计算,如 NELECT = 总电子数-1 表示体系带一个正电荷(空穴掺杂),总电子数+1 为电子掺杂。官方警告:”Unless you would like to perform a charged calculation, you should not set this line”(除非做带电计算,否则不要设置此行)。修改 NELECT 改变体系电荷,必须配合背景电荷补偿(如 IDIPOL 偶极修正或均匀背景电荷)才能得到物理上合理的总能;修改量建议不超过总电子数的很小比例,否则收敛困难;与 WAVECAR 重启时要注意电子数一致性。

4.IDIPOL 与 LDIPOL(偶极修正) #

  • 参数描述:偶极修正参数,消除周期性镜像相互作用。
  • 默认值:IDIPOL = 0;LDIPOL = .FALSE.。
  • 可取值:IDIPOL = 1 | 2 | 3 | 4。1/2/3 对应沿第一/二/三个晶格矢量方向计算偶极矩(slab 常用 3,即表面法向,建议配合 DIPOL 指定质心);4 = 全方向偶极矩(孤立分子/团簇用)。
  • 推荐用法:表面、界面、分子吸附等存在净偶极的体系:LDIPOL=.TRUE. 开启;slab 计算通常设 IDIPOL=3 + LDIPOL=.TRUE.,且偶极中心(DIPOL)位置要正确(官方 Tip:slab 计算应设表面法向方向并用 DIPOL 指定 slab 质心);带电体系还会自动计算 monopole 修正(见官方 Electrostatic corrections)。

5.NEDOS #

  • 参数描述:DOSCAR 中 EMIN 与 EMAX 之间态密度能量网格的等距点数。
  • 默认值:NEDOS = 301。
  • 推荐用法:高精度 DOS(费米面附近、带边精细结构)建议增大(如 1000~2000);NEDOS 过大不会提高总能精度,只影响 DOS 曲线分辨率与 DOSCAR 文件大小。

6.LOPTICS 与 NBANDS #

  • 参数描述:LOPTICS 是否计算频率相关的介电矩阵(光学性质);NBANDS 计算能带数(含占据与空带)。
  • 默认值:LOPTICS = .FALSE.;NBANDS 由 VASP 自动确定(根据电子数与并行设置)。
  • 推荐用法:光学性质计算 LOPTICS=.TRUE. 时必须保证 NBANDS 足够大(包含足够多的空带,建议默认的 1.5–2 倍),否则介电函数在高端能量不收敛;金属体系 VASP 6 建议 ALGO=CHI(或配合大幅增加 NBANDS);需与 NEDOS、CSHIFT(展宽)等配合。NBANDS 默认值与并行核数相关,重启/换核数会变化,建议显式固定以保证 WAVECAR 重启的一致性;GW 计算同样需要增大 NBANDS。

7.ADDGRID #

  • 参数描述:为 PAW 增广电荷的求值启用额外的(更密)支持网格,提高力、应力及总能精度。
  • 默认值:.FALSE.(当 PREC=Accurate 时官方文档说明等效自动开启,无需重复设置——中文教程普遍建议手动加 .TRUE. 属过时做法)。
  • 推荐用法:主要影响力的精度(结构优化、声子计算建议开启),对总能影响较小;开启后内存与耗时增加。

8.GGA #

  • 参数描述:交换关联泛函类型。
  • 默认值:由 POTCAR 中的 LEXCH 决定(官方 Wiki 原文:”Default: GGA = The functional specified by LEXCH in the POTCAR”,即默认与赝势匹配;若未显式设置 GGA,则以 POTCAR 的泛函为准)。常见取值:PE(PBE) 为默认推荐的显式设置值。
  • 可取值:PE(PBE)| RP(revPBE)| PS(PBEsol)| AM(AM05)| 91(PW91)| OR(optB88,vdW-DF 用)| BO(Becke88)| MK | RE 等(官方 Wiki 列表)。
  • 推荐用法:常规计算显式设置 GGA=PE(PBE);表面/晶格常数精度要求高可用 PBEsol;吸附能常用 PBE + 范德华修正。注意:① 官方重要提示——VASP 会在 PAW 球内重新计算交换关联能并修正 POTCAR 给出的原子能,因此 POTCAR 文件中的 LEXCH 标签不能被修改,且 GGA 设置应与 POTCAR 的泛函类型一致(混用会造成系统性误差);② vdW-DF 计算须配合 GGA=OR/BO + IVDW=2xx。