vasp的参数
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
转载]VASP参数设置详解
已有 1283 次阅读 2011-9-15 14:26 |个人分类:vasp|系统分类:科研笔记
转自小木虫,略有增减
软件主要功能:
采用周期性边界条件(或超原胞模型)处理原子、分子、团簇、纳米线(或管)、薄膜、晶体、准晶和无定性材料,以及表面体系和固体
l 计算材料的结构参数(键长、键角、晶格常数、原子位置等)和构型
l 计算材料的状态方程和力学性质(体弹性模量和弹性常数)
l 计算材料的电子结构(能级、电荷密度分布、能带、电子态密度和ELF)
l 计算材料的光学性质
l 计算材料的磁学性质
l 计算材料的晶格动力学性质(声子谱等)
l 表面体系的模拟(重构、表面态和STM模拟)
l 从头分子动力学模拟
l 计算材料的激发态(GW准粒子修正)
计算主要的四个参数文件:INCAR ,POSCAR,POTCAR ,KPOINTS,下面简要介绍,详细权威的请参照手册
INCAR文件:
该文件控制VASP进行何种性质的计算,并设置了计算方法中一些重要的参数,这些参数主要包括以下几类:
l 对所计算的体系进行注释:SYSTEM
l 定义如何输入或构造初始的电荷密度和波函数:ISTART,ICHARG,INIWAV
l 定义电子的优化
– 平面波切断动能和缀加电荷时的切断值:ENCUT,ENAUG
– 电子部分优化的方法:ALGO,IALGO,LDIAG
– 电荷密度混合的方法:IMIX,AMIX,AMIN,BMIX,AMIX_MAG,BMIX_MAG,WC,INIMIX,MIXPRE,MAXMIX
– 自洽迭代步数和收敛标准:NELM,NELMIN,NELMDL,EDIFF
l 定义离子或原子的优化
– 原子位置优化的方法、移动的步长和步数:IBRION,NFREE,POTIM,NSW
– 分子动力学相关参数:SMASS,TEBEG,TEEND,POMASS,NBLOCK,KBLOCK,PSTRESS
– 离子弛豫收敛标准:EDIFFG
l 定义态密度积分的方法和参数
– smearing方法和参数:ISMEAR,SIGMA
– 计算态密度时能量范围和点数:EMIN,EMAX,NEDOS
– 计算分波态密度的参数:RWIGS,LORBIT
l 其它
– 计算精度控制:PREC
– 磁性计算:ISPIN,MAGMOM,NUPDOWN
– 交换关联函数:GGA,VOSKOWN
– 计算ELF和总的局域势:LELF,LVTOT
– 结构优化参数:ISIF
– 等等。
主要参数说明如下:
? SYSTEM:该输入文件所要执行的任务的名字。取值:字符串,缺省值:SYSTEM
? NWRITE:输出内容详细程度。取值:0~4,缺省值:2
如果是做长时间动力学计算的话,最好选0或1(首末步/每步核运动输出),短时运算用2,选3则会在出错的时候给出说明信息。
? ISTART:决定是否读取WAVECAR文件。取值:0~2,缺省0/1 for 无/有 前次计算的WAVECAR(波函数)
0:begin 'from scratch',根据INIWAV初始化波函数
1:restart with constant energy cut-off,从WAVECAR读取波函数(重定义平面波集)
2:restart with consta
nt basis set,从WAVECAR读取波函数(平面波集不变)
? ICHARG:决定如何建立初始电荷密度。取值:0~2,缺省值: if ISTART=0 2 else 0
0:由初始波函数计算电荷密度
1:从CHGCAR文件读取电荷密度
2:使用原子电荷密度的叠加
+10 非自洽计算
? ISPIN:是否进行spin polarized calculation。取值:1,2(1-no,2-yes),缺省值:2
? MAGMOM:在ICHARG=2或在CHGCAR中未包含磁化密度(ICHARG=1)时,指定每个原子的初始磁化时刻。取值:实数数组,缺省值: 对ISPIN=2 NIONS*1.0,对非共线型磁化体系 3*NIONS*1.0
? INIWAV 如何设置初始波函数,只在ISTART=0时使用。取值:0,1(0-最低动能的平面波,1-随机数),缺省值:1。
? IDIPOL 控制计算单极、偶极和四极修正。取值:1~4。
1~3 只计算第一/二/三晶矢方向,适于厚板(slab)的计算
4 所有方向都计算,适于计算孤立分子
? PREC 进动(precession)。取值:low/medium/high/normal/ accurate/single),缺省值: Normal(VASP.4.X);Medium(VASP.5.X)
VASP4.5+采用了优化的accurate来替代high,所以一般不推荐使用high。不过high可以确保“绝对收敛”,作为参考值有时也是必要的。同样受推荐的是normal,适于作为日常计算选项。
受PREC影响的参数有四类:ENCUT;NGX,NGY,NGZ;NGXF,NGYF,NGZF;ROPT。如果设置了PREC,这些参数就都不需要出现了,当然直接设置相应的参数也有同样效果。具体影响效果见p53~54。
? ENCUT 平面波基组的截断能量(eV)。取值:实数,缺省值:受PREC设置影响,从POTCAR文件中找出相应的ENMAX/ENMIN值来设置。
PREC = Low Medium Accurate Normal
ENCUT = ENMIN ENMAX ENMAX ENMAX
Single High
ENMAX ENMAX*1.3
对于多个元素不同的ENMAX/ENMIN,都取最大值。
该参数非常重要,最好不要手工去设置,除非文献告诉你要用多少,或者经过结果可靠性的验证。当然,为了测试一下提交的任务,也不妨先设个较小的值。
? NGX,NGY,NGZ:控制FFT网格在三个晶矢方向上的格点数量。
? NGFX,NGFY,NGFZ:控制第二次更精确的FFT网格的格点数量。
也是两类重要的最好不要去动的参数。在未指定的情况下将根据PREC的设置从POTCAR中自动读取。
PREC=High/Accurate,基组中向量的2倍值,用来避免wrap around errors,得到精确解。
PREC=Low/Medium/Normal,基组中向量的3/4倍值(已足够精确到 1 meV/atom)。
? LREAL: 决定投射是在实空间还是倒易空间进行。取值:.TRUE.(实空间)/.FALSE.(倒易空间),缺省值:.FALSE.
用于求解赝势的非局域部分用到的一个积分,在倒格空间里采用平面波基组求解,在实空间里则采用积分球求解。
其他还有两个选项:O or On,A or Auto。
On和.TRUE.的差别在于是否使用King-S
mith算法优化,设为Auto则进行自动选择,推荐使用。
? ROPT: 在LREAL=Auto or On时,优化控制每个核周围的积分球内的格点数。取值:实数数组
For LREAL=On
PREC=Low, 700 points in the real space sphere (ROPT=0.67)
PREC=Med, 1000 points in the real space sphere (ROPT=1.0)
PREC=High, 1500 points in the real space sphere (ROPT=1.5)
For LREAL=Auto
PREC=Low, accuracy 10-2 (ROPT=0.01)
PREC=Med, accuracy 2*10-3 (ROPT=0.002)
PREC=High accuracy 2*10-4 (ROPT=2E-4)
? NELM, NELMIN and NELMDL:控制电子自洽循环步数。取值:整数
NELM:电子自洽循环最大次数。缺省值:60
NELMIN:电子自洽循环最小次数。缺省值:2
NELMDL:弛豫次数。缺省值:if ISTART=0, INIWAV=1, and IALGO=8,-5,if ISTART=0, INIWAV=1, and IALGO=48,-12,else 0
NELMDL可以取负值。如果初始波函数采用随机赋值,即ISTART=0,INIWAV=1,那么很可能开始的值比较离谱,那么在第一步核运动循环之前采用NELMDL(负值)步的非自洽(保留初始的H)步计算将减少计算所需的时间。
? EDIFF:指定电子自洽循环的全局中断条件,用于控制收敛精度。取值:实数,缺省值:10-4
注意,即使EDIFF=0,NELM步电子自洽循环也会执行。
? EDIFFG:指定离子弛豫循环的中断条件,用于控制核运动的收敛精度。取值,实数,缺省值:10*EDIFF
EDIFFG>0 在两个离子步的总自由能之差小于EDIFFG时停止
EDIFFG<0 在所有的力都小于EDIFFG时停止。
EDIFFG=0 在NSW步弛豫后停止
此参数不支持MD,仅用于弛豫。
? NSW:给出最大离子步数。 取值:整数,缺省值:0。
? NBLOCK,KBLOCK:取值:整数,缺省值:NBLOCK = 1,KBLOCK = NSW
在NBLOCK离子步后对成对相关函数和DOS进行计算,并且把离子配置写入XDATCAR文件。
在KBLOCK*NBLOCK步主循环后平均的成对相关函数和DOS被写入PCDAT和DOSCAR文件。
? IBRION:决定离子怎样更新和运动。取值:-1~3,5~8(-1-无更新,0-MD,1-RMM-DIIS,2-共轭梯度算法,3-Damped MD,5,6:有限差分,7,8:密度函数扰动理论),缺省值:if NSW=0/1,-1,else 0
这个参数是和ISIF, IALGO/ALGO一起决定怎么算的最重要的参数。
1~3 是三种弛豫的方法,根据ISIF决定是否固定离子位置、晶胞大小和形状,在INCAR中必须设置参数POTIM。
0 是标准的ab-initio MD,不受ISIF影响,即不改变晶胞大小和形状。
5~8支持Hessian Matrix和phonon frequency的计算以及部分固定的MD。
? POTIM:IBRION=0时,给出MD每步步长(fs),IBRION=1~3时,给出最小化的度量常量。取值:实数,缺省值:IBRION=0 无缺省,必须指定,IBRION=1,2,3 0.5
? ISIF:决定是否计算应力张量以及弛豫中晶胞变化的自由度。取值:0~6,缺省值:if IBRION=0(MD) 0 trace only means that only the total pressure is correct
? IWAVPR:决定波函数和/或电荷密度怎样从一个离子配置向下一个离子配置进行推测。取值:0~3,10~13(0-无推测,1,11-用原子电荷密度进行简单推测,2,12-二阶推测,3,13-混合前两种方法),缺省值:if IBRION=0(MD),1,2(relaxation) 2 else(静态计算) 0
推测结果保存在外部文件TMPCAR中,取值+10则全部使用内存,不保存此文件。
? ISYM:决定是否使用对称性。取值:-1~3(-1,0-不使用,1,2,3-使用),缺省值:if 使用US-PP 1,if 使用PAW 2
ISYM=2使用一种效率更高也更节省内存的电荷密度对称性,ISYM=3时仅考虑力和应力张量的对称性,而电荷密度是非对称的。
? SYMPREC:决定POSCAR 文件中给出的位置的精度。取值:实数,缺省值:10-5
? LCORR:决定是否对非完全自洽计算中的力进行Harris修正。取值:.TRUE./.FALSE.,缺省值:.TRUE.
? TEBEG, TEEND:控制从头分子动力学计算中的起始温度和最终温度(MD有效)。取值:实数,缺省值:TEBEG = 0 TEEND = TEBEG
注意VASP的温度定义与实际温度有细微的差别,所以TEBEG=T×(N-1)/N,T为实际要求的温度,N为原子数。
? SMASS:控制从头MD中的速度。取值:-3~0,缺省值:-3 微正则系综(总自由能不变),-2 保持初速度不变,-1 每NBLOCK步调整速度,来保证动能连续,>=0 Nosé算法模拟正则系综
? NPACO:成对相关函数的槽数。取值:整数,缺省值:256
? APACO:成对相关函数求值中的最大距离(?)。取值:整数,缺省值:16
简单说就是在不超过APACO的NPACO个距离上求成对相关函数PCF。
? RWIGS:给出Wigner-Seitz半径,DOS计算用。取值:实数数组,缺省值:从POTCAR文件中读取
? NELECT:总电子数,如果系统不是电中性的就必须设置,所带电荷作为均一的背景电子气考虑。取值:实数,缺省值:-(价电子数),由POSCAR和POTCAR文件自动决定(通常不必给出)。
? NUPDOWN 上下自旋成分间的电子数之差。取值:整数,缺省值:未设置(此时将进行完全弛豫)
? EMIN, EMAX:DOS求值的最小/最大能量。取值:实数,缺省值:EMIN = - (lowest KS-eigenvalue - Δ),EMAX = - (highest KS-eigenvalue - Δ)
? ISMEAR:决定每个波函数的部分占位fnk如何设置。取值:-5 | -4 | -3 | -2 | 0 | N(-5-带有Blochl修正的四面体方法, -4-不带Blochl修正的四面体方法, -3-根据INCAR文件中提供的smearing参数执行循环,-2-从WAVECAR文件中读取, -1-Fermi-smearing, 0-Gaussian smearing, >0-method of Methfessel-Paxton order N,缺省值:1
采用部分占位波函数,用一个函数来平滑积分,尤其是对于金属体系可减少k点。
? SIGMA:决定smearing的宽度(eV)。取值:实数,缺省值:0.2
? ALGO:指定电子最小化算法。取值:Normal(blocke
d Davidson block iteration scheme)/VeryFast(RMM-DIIS)/Fast (前两个算法的混合)/All(波函数的所有带同时更新)/ Damped(damped velocity friction algorithm),缺省值: Normal
? IALGO:指定主算法(整数选择算法)。取值:8(共轭梯度算法)/38(Davidson block iteration scheme)/48(RMM-DIIS),缺省值:38
算法是最重要的参数之一。一般VASP推荐使用的是以上三种算法,一般来说8/38是初期比较快收敛,在接近平衡时采用48较快,在初期或MD时使用48可能会遇到不收敛的情况。也可以使用ALGO参数来替代IALGO,设置Fast,VASP会先用38,再自动切换到48。各种算法只要收敛,结果应该一致。
另一个可能有用的选项是-1。不进行实际的计算,只对重要的步骤做计算测试,并将测试得到的各部分耗时输出到OUTPUT中。
? VOSKOWN:决定是否使用VWN插值算法。取值:0(不使用)/1(使用),缺省值:0
如果使用了PW91泛函或需要计算磁性质时可以设为1使用。
? Mixing-tags:
w IMIX:混合的类型,取值:整数,缺省值:4
w AMIX:线性混合参数。取值:实数,缺省值:0.8(US-PP),0.4(PAW)
w AMIN:最小混合参数。取值:实数,缺省值:0.1
w BMIX:Kerker混合方案的截断波向量。取值:实数,缺省值:1.0
w AMIX_MAG:磁化过程的线性混合参数。取值:实数,缺省值:1.6
w BMIX_MAG:磁化过程的Kerker混合方案的截断波向量。取值:实数,缺省值:1.0
w WC:Broyden混合方案中每步的加权因子。取值:实数,缺省值:1000.0
w INIMIX:Broyden混合方案中的初始混合类型。取值:整数,缺省值:1
w MIXPRE:Broyden混合方案中的预处理类型。取值:整数,缺省值:1
w MAXMIX:Broyden混合器中存储的最大步数。取值:整数,缺省值:-45
值得注意的是,在MD或者弛豫的时候,设置MAXMIX(>0,一般约3倍的电子SC步数)可能会大大减少核运动步数,但同时也会增加对内存的要求。
? LWAVE,LCHARG:决定是否把波函数(或电荷密度)写入外部文件WAVECAR(或CHGCAR和CHG)中。取值:.TRUE./.FALSE.,缺省值:.TRUE.
? LVTOT:决定是否把总局域势写入外部文件LOCPOT中。取值:.TRUE./.FALSE.,缺省值:. FALSE.
? LELF:决定是否创建ELFCAR文件。取值:.TRUE./.FALSE.,缺省值:. FALSE.
ELFCAR用于保存ELF(electron localization function)。
? LORBIT:和适当的RWIGS一起决定是否创建PROCAR或PROOUT文件。取值:0 | 1 | 2 | 5 | 10 | 11 | 12,缺省值:0(创建DOSCAR和PROCAR文件)
? NPAR:用于控制VASP切换到带间并行模式。取值:整数,缺省值:总节点数。
每一个节点计算一个带,可以提高并行效率,减少通讯量,但可能会大幅增加内存的需求。
? NBANDS:给出计算中实际的总能带数。取值:整数,缺省
值:NELECT/2+NIONS/2(非自旋),0.6*NELECT + NMAG(自旋)
NBANDS的取值应使计算中包含相当数量的空带。因为计算需要大量的空带,至少要求1个空带(否则VASP会给出警告)。
NBANDS对于解决内存需求非常重要。一般NBANDS在NELECT/2+NIONS/2以上可以得到较为精确的结果,但如果内存不够就只能减少NBANDS,在牺牲精度和体系大小之间平衡了