VASP参数设置详解要点.docx
- 文档编号:8016471
- 上传时间:2023-01-28
- 格式:DOCX
- 页数:32
- 大小:46.13KB
VASP参数设置详解要点.docx
《VASP参数设置详解要点.docx》由会员分享,可在线阅读,更多相关《VASP参数设置详解要点.docx(32页珍藏版)》请在冰豆网上搜索。
VASP参数设置详解要点
VASP参数设置详解
计算材料2010-11-3020:
11:
32阅读197评论0字号:
大中小订阅
转自小木虫,略有增减
软件主要功能:
采用周期性边界条件(或超原胞模型)处理原子、分子、团簇、纳米线(或管)、薄膜、晶体、准晶和无定性材料,以及表面体系和固体
l计算材料的结构参数(键长、键角、晶格常数、原子位置等)和构型
l计算材料的状态方程和力学性质(体弹性模量和弹性常数)
l计算材料的电子结构(能级、电荷密度分布、能带、电子态密度和ELF)
l计算材料的光学性质
l计算材料的磁学性质
l计算材料的晶格动力学性质(声子谱等)
l表面体系的模拟(重构、表面态和STM模拟)
l从头分子动力学模拟
l计算材料的激发态(GW准粒子修正)
计算主要的四个参数文件:
INCAR,POSCAR,POTCAR,KPOINTS,下面简要介绍,详细权威的请参照手册
INCAR文件:
该文件控制VASP进行何种性质的计算,并设置了计算方法中一些重要的参数,这些参数主要包括以下几类:
●对所计算的体系进行注释:
SYSTEM
●定义如何输入或构造初始的电荷密度和波函数:
ISTART,ICHARG,INIWAV
●定义电子的优化
–平面波切断动能和缀加电荷时的切断值:
ENCUT,ENAUG
–电子部分优化的方法:
ALGO,IALGO,LDIAG
–电荷密度混合的方法:
IMIX,AMIX,AMIN,BMIX,AMIX_MAG,BMIX_MAG,WC,INIMIX,MIXPRE,MAXMIX
–自洽迭代步数和收敛标准:
NELM,NELMIN,NELMDL,EDIFF
●定义离子或原子的优化
–原子位置优化的方法、移动的步长和步数:
IBRION,NFREE,POTIM,NSW
–分子动力学相关参数:
SMASS,TEBEG,TEEND,POMASS,NBLOCK,KBLOCK,PSTRESS
–离子弛豫收敛标准:
EDIFFG
●定义态密度积分的方法和参数
–smearing方法和参数:
ISMEAR,SIGMA
–计算态密度时能量范围和点数:
EMIN,EMAX,NEDOS
–计算分波态密度的参数:
RWIGS,LORBIT
●其它
–计算精度控制:
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/1for无/有前次计算的WAVECAR(波函数)
0:
begin'fromscratch',根据INIWAV初始化波函数
1:
restartwithconstantenergycut-off,从WAVECAR读取波函数(重定义平面波集)
2:
restartwithconstantbasisset,从WAVECAR读取波函数(平面波集不变)
✍ICHARG:
决定如何建立初始电荷密度。
取值:
0~2,缺省值:
ifISTART=02else0
0:
由初始波函数计算电荷密度
1:
从CHGCAR文件读取电荷密度
2:
使用原子电荷密度的叠加
+10非自洽计算
✍ISPIN:
是否进行spinpolarizedcalculation。
取值:
1,2(1-no,2-yes),缺省值:
2
✍MAGMOM:
在ICHARG=2或在CHGCAR中未包含磁化密度(ICHARG=1)时,指定每个原子的初始磁化时刻。
取值:
实数数组,缺省值:
对ISPIN=2NIONS*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=LowMediumAccurateNormal
ENCUT=ENMINENMAXENMAXENMAX
SingleHigh
ENMAXENMAX*1.3
对于多个元素不同的ENMAX/ENMIN,都取最大值。
该参数非常重要,最好不要手工去设置,除非文献告诉你要用多少,或者经过结果可靠性的验证。
当然,为了测试一下提交的任务,也不妨先设个较小的值。
✍NGX,NGY,NGZ:
控制FFT网格在三个晶矢方向上的格点数量。
✍NGFX,NGFY,NGFZ:
控制第二次更精确的FFT网格的格点数量。
也是两类重要的最好不要去动的参数。
在未指定的情况下将根据PREC的设置从POTCAR中自动读取。
PREC=High/Accurate,基组中向量的2倍值,用来避免wraparounderrors,得到精确解。
PREC=Low/Medium/Normal,基组中向量的3/4倍值(已足够精确到1meV/atom)。
✍LREAL:
决定投射是在实空间还是倒易空间进行。
取值:
.TRUE.(实空间)/.FALSE.(倒易空间),缺省值:
.FALSE.
用于求解赝势的非局域部分用到的一个积分,在倒格空间里采用平面波基组求解,在实空间里则采用积分球求解。
其他还有两个选项:
OorOn,AorAuto。
On和.TRUE.的差别在于是否使用King-Smith算法优化,设为Auto则进行自动选择,推荐使用。
✍ROPT:
在LREAL=AutoorOn时,优化控制每个核周围的积分球内的格点数。
取值:
实数数组
ForLREAL=On
PREC=Low,700pointsintherealspacesphere(ROPT=0.67)
PREC=Med,1000pointsintherealspacesphere(ROPT=1.0)
PREC=High,1500pointsintherealspacesphere(ROPT=1.5)
ForLREAL=Auto
PREC=Low,accuracy10-2(ROPT=0.01)
PREC=Med,accuracy2*10-3(ROPT=0.002)
PREC=Highaccuracy2*10-4(ROPT=2E-4)
✍NELM,NELMINandNELMDL:
控制电子自洽循环步数。
取值:
整数
NELM:
电子自洽循环最大次数。
缺省值:
60
NELMIN:
电子自洽循环最小次数。
缺省值:
2
NELMDL:
弛豫次数。
缺省值:
ifISTART=0,INIWAV=1,andIALGO=8,-5,ifISTART=0,INIWAV=1,andIALGO=48,-12,else0
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-DampedMD,5,6:
有限差分,7,8:
密度函数扰动理论),缺省值:
ifNSW=0/1,-1,else0
这个参数是和ISIF,IALGO/ALGO一起决定怎么算的最重要的参数。
1~3是三种弛豫的方法,根据ISIF决定是否固定离子位置、晶胞大小和形状,在INCAR中必须设置参数POTIM。
0是标准的ab-initioMD,不受ISIF影响,即不改变晶胞大小和形状。
5~8支持HessianMatrix和phononfrequency的计算以及部分固定的MD。
✍POTIM:
IBRION=0时,给出MD每步步长(fs),IBRION=1~3时,给出最小化的度量常量。
取值:
实数,缺省值:
IBRION=0无缺省,必须指定,IBRION=1,2,30.5
✍ISIF:
决定是否计算应力张量以及弛豫中晶胞变化的自由度。
取值:
0~6,缺省值:
ifIBRION=0(MD)0else2
ISIF│calculate│calculate│relax│change│change
│force│stresstensor│ions│cellshape│cellvolume
----┼-------┼-----------┼------┼---------┼---------
0│yes│no│yes│no│no
1│yes│traceonly│yes│no│no
2│yes│yes│yes│no│no
3│yes│yes│yes│yes│yes
4│yes│yes│yes│yes│no
5│yes│yes│no│yes│no
6│yes│yes│no│yes│yes
7│yes│yes│no│no│yes
traceonlymeansthatonlythetotalpressureiscorrect
✍IWAVPR:
决定波函数和/或电荷密度怎样从一个离子配置向下一个离子配置进行推测。
取值:
0~3,10~13(0-无推测,1,11-用原子电荷密度进行简单推测,2,12-二阶推测,3,13-混合前两种方法),缺省值:
ifIBRION=0(MD),1,2(relaxation)2else(静态计算)0
推测结果保存在外部文件TMPCAR中,取值+10则全部使用内存,不保存此文件。
✍ISYM:
决定是否使用对称性。
取值:
-1~3(-1,0-不使用,1,2,3-使用),缺省值:
if使用US-PP1,if使用PAW2
ISYM=2使用一种效率更高也更节省内存的电荷密度对称性,ISYM=3时仅考虑力和应力张量的对称性,而电荷密度是非对称的。
✍SYMPREC:
决定POSCAR文件中给出的位置的精度。
取值:
实数,缺省值:
10-5
✍LCORR:
决定是否对非完全自洽计算中的力进行Harris修正。
取值:
.TRUE./.FALSE.,缺省值:
.TRUE.
✍TEBEG,TEEND:
控制从头分子动力学计算中的起始温度和最终温度(MD有效)。
取值:
实数,缺省值:
TEBEG=0TEEND=TEBEG
注意VASP的温度定义与实际温度有细微的差别,所以TEBEG=T×(N-1)/N,T为实际要求的温度,N为原子数。
✍SMASS:
控制从头MD中的速度。
取值:
-3~0,缺省值:
-3微正则系综(总自由能不变),-2保持初速度不变,-1每NBLOCK步调整速度,来保证动能连续,>=0Nosé算法模拟正则系综
✍NPACO:
成对相关函数的槽数。
取值:
整数,缺省值:
256
✍APACO:
成对相关函数求值中的最大距离(?
)。
取值:
整数,缺省值:
16
简单说就是在不超过APACO的NPACO个距离上求成对相关函数PCF。
✍RWIGS:
给出Wigner-Seitz半径,DOS计算用。
取值:
实数数组,缺省值:
从POTCAR文件中读取
✍NELECT:
总电子数,如果系统不是电中性的就必须设置,所带电荷作为均一的背景电子气考虑。
取值:
实数,缺省值:
-(价电子数),由POSCAR和POTCAR文件自动决定(通常不必给出)。
✍NUPDOWN上下自旋成分间的电子数之差。
取值:
整数,缺省值:
未设置(此时将进行完全弛豫)
✍EMIN,EMAX:
DOS求值的最小/最大能量。
取值:
实数,缺省值:
EMIN=-(lowestKS-eigenvalue-Δ),EMAX=-(highestKS-eigenvalue-Δ)
✍ISMEAR:
决定每个波函数的部分占位fnk如何设置。
取值:
-5|-4|-3|-2|0|N(-5-带有Blochl修正的四面体方法,-4-不带Blochl修正的四面体方法,-3-根据INCAR文件中提供的smearing参数执行循环,-2-从WAVECAR文件中读取,-1-Fermi-smearing,0-Gaussiansmearing,>0-methodofMethfessel-PaxtonorderN,缺省值:
1
采用部分占位波函数,用一个函数来平滑积分,尤其是对于金属体系可减少k点。
✍SIGMA:
决定smearing的宽度(eV)。
取值:
实数,缺省值:
0.2
✍ALGO:
指定电子最小化算法。
取值:
Normal(blockedDavidsonblockiterationscheme)/VeryFast(RMM-DIIS)/Fast(前两个算法的混合)/All(波函数的所有带同时更新)/Damped(dampedvelocityfrictionalgorithm),缺省值:
Normal
✍IALGO:
指定主算法(整数选择算法)。
取值:
8(共轭梯度算法)/38(Davidsonblockiterationscheme)/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:
♦IMIX:
混合的类型,取值:
整数,缺省值:
4
♦AMIX:
线性混合参数。
取值:
实数,缺省值:
0.8(US-PP),0.4(PAW)
♦AMIN:
最小混合参数。
取值:
实数,缺省值:
0.1
♦BMIX:
Kerker混合方案的截断波向量。
取值:
实数,缺省值:
1.0
♦AMIX_MAG:
磁化过程的线性混合参数。
取值:
实数,缺省值:
1.6
♦BMIX_MAG:
磁化过程的Kerker混合方案的截断波向量。
取值:
实数,缺省值:
1.0
♦WC:
Broyden混合方案中每步的加权因子。
取值:
实数,缺省值:
1000.0
♦INIMIX:
Broyden混合方案中的初始混合类型。
取值:
整数,缺省值:
1
♦MIXPRE:
Broyden混合方案中的预处理类型。
取值:
整数,缺省值:
1
♦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(electronlocalizationfunction)。
✍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,在牺牲精度和体系大小之间平衡了。
POTCAR文件
赝势文件,最重要的输入文件之一。
可以理解为分子力学模拟中的力场文件,但包含的信息更多。
VASP将各元素优化的INCAR里的参数也包含在该文件中,作为支持PREC的缺省选择。
通常各元素的POTCAR文件已经包含在VASP软件包中的赝势库里了,用户需要做的是确定自己具体需要哪几种赝势,然后按照POSCAR文件里的顺序,将所选择的POTCAR文件按顺序连接起来就可以了。
如以下命令:
catfile1file2file3>POTCAR
赝势库中的赝势文件可以分为以下几类:
●根据产生方法的不同有Ultra-soft赝势(USPP)和投影扩充波赝势(PAW);
●根据交换关联函数的不同有LDA(localdensityapproximation)和GGA(generalizedgradientapproximation,又可以再分为PW91和PBE);
●根据半芯态的不同元素A的赝势文件还可以分为A,A_sv和A_pv;
●根据选取的不同截断能量(ENMAX)元素A的赝势文件还可以分为A,A_s和A_h。
VASP的赝势文件放在目录~/vasp/potentials下,该目录又包含五个子目录:
pot,pot_GGA,potpaw,potpaw_GGA,potpaw_PBE,其中每个子目录对应一种赝势形式:
pot==>PP,LDA;pot_GGA==>PP,GGA;potpaw==>PAW,LDA;potpaw_GGA==>PAW,GGA,PW91;potpaw_PBE==>PAW,GGA,PBE。
每个目录中每种元素根据截断能量和半芯态的不同还会有多个对应的赝势文件存在。
在具体选取时可以参考各版本同目录下的V_RHFIN和PSCTR文件,这两个文件说明了该版本的赝势是如何生成的。
选好所要使用的赝势之后,进入对应的目录,会看到里面有四个文件:
POTCAR.Z,PSCTR.Z,V_RHFIN.Z和WS_FTP.LOG。
现在需要用到的是第一个,把各元素的该文件解压(zcatPOTCAR.Z>file),然后用cp或mv命令把这些文件移到工作目录里,再用cat命令把它们合并到POTCAR中,就得到了我们需要的POTCAR。
注意要记住这里元素的排列顺序,以后在POSCAR文件中各元素的排列就是按照这个顺序。
POSCAR文件
位置文件。
描述所计算体系的晶胞参数、原子个数及晶胞中原子的位置,以及分子动力学计算时原子的初始速度。
POSCAR文件示例:
Si-fcc
5.43
0.00.500.50
0.500.000.50
0.500.500.00
2
Direct
0.00.000.00
0.250.250.25
POSCAR文件的结构:
第1行:
任意文字注释。
第2行:
晶格常数(?
),也是晶矢的缩放系数,后面所有长度值得自原值除以此值。
a=b=c时取a即可,否则一般取三者最大值,若取负值,则为晶胞体积(?
3)。
第3-5行:
定义晶矢。
第6行:
每种元素的原子个数,特别注意顺序,要与下面的坐标顺序以及POTCAR中的顺序一致。
第7行:
可省略,无需空行。
做动力学时,用于指定是否需要固定部分原子的坐标。
若是,此行以‘S’或者‘s’作为首字母即可。
第8行开始为原子的坐标位置,格式为
optionline
coordinate1ofelement1
coordinate2ofelement1
...
coordinateNofelement1
optionline
coordinate1ofelement2
coordinate2ofelement2
...
coordinateMofelement2
...
其中,optionline指定输入坐标的格式,除了第一个以外,如果后面的输入格式同前,则都可以无空行省略。
optionline可指定的输入坐标格式
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VASP 参数设置 详解 要点