(计算前的)验证一、检验赝势的好坏:(一)方法:对单个原子进行计算;(二)要求:1、对称性和自旋极化均采用默认值;2、ENCUT要足够大;3、原胞的大小要足够大,一般设置为15Å足矣,对某些元素还可以取得更小一些。(三)以计算单个Fe原子为例:1、INCAR文件:SYSTEM=FeatomENCUT=450.00eVNELMDL=5!makefivedelaystillchargemixing,详细意义见注释一ISMEAR=0SIGMA=0.12、POSCAR文件:atom15.001.000.000.000.001.000.000.000.001.001Direct0003、KPOINTS文件:(详细解释见注释二。)Automatic0Gamma1110004、POTCAR文件:(略)注释一:关键词“NELMDL”:A)此关键词的用途:指定计算开始时电子非自洽迭代的步数(即NELMDLgivesthenumberofnon-selfconsistentstepsatthebeginning),目的是makecalculationsfaster。“非自洽”指的是保持chargedensity不变,由于ChargedensityisusedtosetuptheHamiltonian,所以“非自洽”也指保持初始的哈密顿量不变。B)默认值(defaultvalue):NELMDL=-5(当ISTART=0,INIWAV=1,andIALGO=8时)NELMDL=-12(当ISTART=0,INIWAV=1,andIALGO=48时)NELMDL=0(其他情况下)NELMDLmightbepositiveornegative.Apositivenumbermeansthatadelayisappliedaftereachionicmovement--ingeneralnotaconvenientoption.(在每次核运动之后)Anegativevalueresultsinadelayonlyforthestart-configuration.(只在第一步核运动之前)C)关键词“NELMDL”为什么可以减少计算所需的时间?ChargedensityisusedtosetuptheHamiltonian,thenthewavefunctionsareoptimizediterativelysothattheygetclosertotheexactwavefunctionsofthisHamiltonian.Fromtheoptimizedwavefunctionsanewchargedensityiscalculated,whichisthenmixedwiththeoldinput-chargedensity.Abriefflowchartisgivenbelow.(参自ManualP105页)一般情况下,theinitialguessedwavefunctions是比较离谱的,在前NELMDL次非自洽迭代过程中保持chargedensity不变、保持初始的哈密顿量不变,只对wavefunctions进行优化,在得到一个与theexactwavefunctionsofinitialHamiltonian较为接近的wavefunctions后,再开始同时优化chargedensity。这样一来,计算时间要比一开始就同时优化chargedensity和wavefunctions短得多。注释二:为什么这里只需要一个k点?Foratomsandmolecules,theBlochtheoremdoesnotapply,hencethereisnoneedtousemorethanonesinglek-point.Whenmorek-pointsareused,onlytheinteractionbetweentheatoms(whichshouldbezero)isdescribedmoreaccurately.(三)计算任务执行方法:输入:vasp(四)赝势好的判断标准:计算得到的OUTCAR文件中的“energywithoutentropy”能量值在0.001~0.01eV之间。二、筛选合适的ENCUT大小:(一)输入文件:1、用脚本程序optencut.sh代替INCAR文件:rmWAVECARforiin100150200250300350400450500550600docatINCAR!SYSTEM=bccFeENCUT=$iISTART=0;ICHARG=2ISMEAR=-5PREC=Accurate!echoENCUT=$ieV;timevaspE=$(grepTOTENOUTCAR|tail-1|awk'{printf%12.6f\n,$5}')echo$i$Ecommentdone2、POSCAR文件:bccFe2.8661.000.000.000.001.000.000.000.001.002Direct0000.50.50.53、KPOINTS文件:Automaticgeneration0Monkhorst-Pack9990.00.00.04、POTCAR文件:(略)(二)计算任务执行方法:输入:dos2unixoptencut.shbashoptencut.sh(三)判别标准:计算完成后得到comment文件,它列出了在每个ENCUT时计算得到的相应的总能,只要总能变化在0.001eV左右就足够了。三、选择合适的k点数目:(一)输入文件:1、INCAR文件:SYSTEM=bccFeENCUT=450.00eVISTART=0;ICHARG=2ISMEAR=-5PREC=Accurate2、POSCAR文件:bccFe2.8661.000.000.000.001.000.000.000.001.002Direct0000.50.50.53、用脚本程序optkpoints.sh代替KPOINTS文件:rmWAVECARforiin579111315docatKPOINTS!Automaticgeneration0Monkhorst-pack$i$i$i0.00.00.0!echokmesh=$ix$ix$i;timevaspE=$(grepTOTENOUTCAR|tail-1|awk'{printf%12.6f\n,$5}')KP=$(grepirreducibleOUTCAR|tail-1|awk'{printf%5i\n,$2}')echo$i$KP$Ecommentdone4、POTCAR文件:(略)(二)计算任务执行方法:输入:dos2unixoptkpoints.shbashoptkpoints.sh(三)判别标准:计算完成后得到comment文件,它列出了在k点数目与总能的对应值,只要总能变化在0.001eV左右就非常足够了。四、优化选择合适的SIGMA值(展宽σ值):(一)为什么要优化SIGMA值?若展宽σ太小,则计算难以收敛;若展宽σ太大,则会产生多余的熵(entropy),因此必须选择合适的σ值。(Toolargesmearing-parametersmightresultinawrongtotalenergy,smallsmearingparametersrequirealargek-pointmesh.)(二)ISMEAR和SIGMA:1、ISMEAR和SIGMA这两个关键词要联合起来使用,前者用来指定smearing的方法,后者用来指定smearing的展宽——σ值。2、ISMEAR和SIGMA的默认值分别为1和0.2。3、ISMEAR可能的取值为-5,-4,-3,-2,-1,0,N(N表示正整数):ISMEAR=-5,表示采用Blochl修正的四面体方法;ISMEAR=-4,表示采用四面体方法,但是没有Blochl修正;ISMEAR=-1,表示采用Fermi-Diracsmearing方法;ISMEAR=0,表示采用Gaussiansmearing方法;ISMEAR=N,表示采用Methfessel-Paxtonsmearing方法,其中N是表示此方法中的阶数,一般情况下N取1或2,但是Inmostcasesandleadstoverysimilarresults。4、σ值一般在0.1~0.3eV范围内。5、ISMEAR取值的一些经验:(1)一般说来,无论是对何种体系,进行何种性质的计算,采用ISMEAR=0并选择一个合适的SIGMA值,都能得到合理的结果。(2)在进行静态计算(能量单点计算,norelaxationinmetals)或态密度计算且k点数目大于4时,取ISMEAR=-5。(3)当原胞较大而k点数目较小(小于4个)时,取ISMEAR=0,并选择一个合适的SIGMA值。(ifthecellistoolarge(orifyouuseonlyasingleortwok-points)useISMEAR=0incombinationwithasmallSIGMA=0.05)(4)对半导体或绝缘体,不论是静态还是结构优化计算,都取ISMEAR=-5。(Mind:AvoidtouseISMEAR0forsemiconductorsandinsulators,sinceitmightcauseproblems.ForinsulatorsuseISMEAR=0orISMEAR=-5.)(5)对金属体系(forrelaxationsinmetals),取ISMEAR=1或2,并选择一个合适的SIGMA值。(三)当采用ISMEAR=0或N时,如何优化选择合适的SIGMA值?(以bccFe为例)1、用脚本程序optsigma.sh代替INCAR文件:rmWAVECARforiin0.100.120.140.160.180.200.220.240.260.280.30docatINCAR!SYSTEM=bccFeENCUT=450GGA=91ISTART=0;ICHARG=2ISMEAR=0;SIGMA=$iPREC=Accurate!echoSIGMA=$ieV;timevaspTS=$(grepEENTROOUTCAR|tail-1|awk'{printf%12.6f\n,$5}')echo$i$TScommentdone2、POSCAR文件:bccFe2.8661.000.000.000.001.000.000.000.001.002Direct0000.50.50.53、KPOINTS文件:Automaticgeneration0Monkhorst-Pack9990.00.00.04、POTCAR文件:(略)(四)计算任务执行方法:输入:dos2unixoptsigma.shbashoptsigma.sh(五)判断标准:熵(entropy)越小越好,选择entropyT*SEENTRO值中最小的那个所对应的SIGMA。(SIGMAshouldbeaslargeaspossiblekeepingthedifferencebetweenthefreeenergyandthetotalenergy(i.e.theterm'entropyT*S')intheOUTCARfilenegligible(1meV/atom).)(五)注意:1、当k点的数目发生变化后,要重新优化选择SIGMA值。