文档详情

VASP软件包介绍

桔****
实名认证
店铺
PPT
1.70MB
约96页
文档ID:592601970
VASP软件包介绍_第1页
1/96

VASP软件包介绍1 Outlines1. VASP 介绍2. 关键词详解3. 输入和输出文件4. 基础性质计算 2 1.VASP介绍•1.1 VASP是什么?•1.2 VASP的组成部分•1.3 VASP的计算功能3 1.1 VASP是什么?Ø采用采用平面波平面波赝势(或或缀加投影波加投影波)方法方法进行从行从头的分子的分子动力学模力学模拟的的软件包Ø基于基于(有限温度下的,有限温度下的,对电子气而言子气而言)局域密度近似,自局域密度近似,自由能作由能作为电子气密度的泛函子气密度的泛函Ø在每个在每个MD时间步步长内精确求解内精确求解电子气的瞬子气的瞬时基基态4 1.2 VASP 的组成部分•Fortran语言编写的主要代码vasp.4.x.tar.gz和数学库文件vasp.4.lib.tar.gz•元素周期表中绝大部分元素的超软赝势(LDA和GGA)和缀加投影波势(LDA, GGA和PBE)•一些用来处理计算数据的script和tools•另外还有VASP组自己开发的p4vasp(图形界面的软件专门用来处理计算数据vasprun.xml,可以免费下载)和vaspview(图形界面的软件,可视化ELF函数和电荷密度)5 1.3 VASP的计算功能•采用周期性边界条件(或超原胞模型)处理原子、分子、团簇、纳米线(或管)、薄膜、晶体、准晶和无定性材料,以及表面体系和固体•计算材料的结构参数(键长,键角,晶格常数,原子位置等)和构型•计算材料的状态方程和力学性质(体弹性模量和弹性常数)•计算材料的电子结构(能级、电荷密度分布、能带、电子态密度和ELF)•计算材料的光学性质•计算材料的磁学性质•计算材料的晶格动力学性质(声子谱等)•表面体系的模拟(重构、表面态和STM模拟)•从头分子动力学模拟•计算材料的激发态(GW准粒子修正)等等6 2. 关键词详解•VASP通过对INCAR中关键词赋值确定计算内容•2.1 初始参数•2.2 电子的优化•2.3 原子弛豫•2.4 态密度积分和参数•2.5 其他•2.6关键词的总结7 2.1 初始参数•SYSTEM: 注释所计算的体系,以示说明。

•NWRITE: 默认值为2,可赋予值为0| 1 | 2 |3 |4决定OUTCAR中输出内容的详细程度•ISTART: 如果计算目录中有WAVECAR文件,则默认值为1,否则为0可赋予值为0| 1 | 2 | 3 决定是否读入WAVECAR:Ø0: 开始新的计算,按INIWAV初始化波函数Ø1: 接着计算,通常用在测试ENCUT的收敛性以及计算结合能曲线(也就是体积和总能的关系)Ø2: 接着计算,通常用在希望保持基矢不变的计算中Ø3: 接着计算,读入上一次计算得到的电荷密度和波函数,不推荐用•ICHARG: 如果ISTART=0,则默认值为2,否则为0可赋予值为0 | 1 | 2决定了如何构造初始的电荷密度Ø0: 从初始的波函数构造Ø1:读入CHGCAR读入,并同原子密度进行线性插值Ø2: 构造原子密度Ø11: 读入自洽的CHGCAR,并进行能带计算或态密度的非自洽计算Ø12: 非自洽的原子密度计算8 2.1 初始参数•INIWAV: 默认值为1,可赋予值为0 | 1只在开始新的计算(也就是ISTART=0)中有效决定了如何初始化波函数Ø0: 采用”jellium 波函数”Ø1: 对波函数赋予随机数•ISTART 和ICHARG•这两个关键词分别定义了如何构建初始的波函数和电荷密度、读入上一次的波函数和电荷密度。

VASP 的manual • 上讲了多种情况,这里推荐的做法是:在进行能带结构、电子态密度等性质的计算时,设置ISTART = 1,• ICHARG = 11;其他的情况,一般都设置ISTART = 0,•ICHARG = 2如果由于断电或其他情况,程序停止运行了,但是又想接着计算,此时在INCAR 设置•ISTART = 1,ICHARG = 1,其他的参数不变,文件也不用动9 2.2 电子的优化•1. 自洽迭代步数和收敛标准:NELM ,NELMIN ,NELMDL ,• EDIFF.•2. 平面波切断动能和缀加电荷时的切断值 :ENCUT , • ENAUG•3. 电荷密度混合方法 :IMIX ,AMIX ,AMIN,BMIX,AMIX-M• AG,BMIX-MAG.WC,INIMIX,MIXPRE,MAXMIX.•4. 电子部分优化的方法 :ALGO ,IALGO,LDIAG.•电子优化需要设置的参数有EDIFF 和ENCUT ,其他参数使用默认由于NELM的默认是60,如果无法自洽收敛,需要设置电荷电荷密度混合方法电子部分优化得参数可以选设,如IALGO. 10 1. 自洽迭代步数和收敛标准•NELM: 允许电子自洽迭代的最大步数。

默认值为60如果超过了40步还没有收敛的话,推荐对IALGO、LDIAG和混合参数进行手动设置到合理的值•NELMIN: 电子自洽迭代的最小步数默认值为2通常不需手动设置,在有些情况可以赋予更大数•NELMDL: 在一开始计算时初始化的过程中电子非自洽迭代的步数当ISTART=0, INIWAV=1和 IALGO=8时默认值为-5当ISTART=0, INIWAV=1和IALGO=48(vasp4.4版本中)时默认值为-12其他情况下为0•EDIFF: EDIFF是电子结构部分自洽迭代循环时,判断是否自洽了的条件上次和当前两次迭代中总能和本征值的变化都小于EDIFF时,则电子结构部分迭代循环停止如果EDIFF=0时,则进行NELM步迭代后停止迭代默认值为1E-4,一般情况下没有必要设置更小的值11 1. 自洽迭代步数和收敛标准•分析:在量子力学中,我们知道,一个体系可以通过一组波函数来描述在VASP中,体系是通过一组平面波来描述首先对一个体系,任意构造出初始的波函数,可以知道刚开始构造的初始波函数描述体系并不准确,即构造出电荷密度函数,也就知道了哈密顿量通过求解薛定谔方程,可以得到第二组波函数。

显然第二组波函数描述比第一组更精确在该过程中计算总能量的变化量从第一组波函数到第二组波函数的过程即一次自洽迭代依次重复下去,当前后两次总能量之差小于EDIFF时,自洽迭代停止如下一张中dE小于EDIFF时,自洽停止•非自洽迭代:在开始计算过程中,前面-NELMDL次迭代,波函数随迭代结果改变,电荷密度函数并不改变这样可以计算速度加快12 1. 自洽迭代步数和收敛标准•输出在屏幕上的数据输出在屏幕上的数据•vasp.4.6.25 17Sep03 complex• POSCAR found : 1 types and 1 ions• LDA part: xc-table for Ceperly-Alder, standard interpolation• POSCAR, INCAR and KPOINTS ok, starting setup• WARNING: wrap around errors must be expected• FFT: planning ... 1• reading WAVECAR• entering main loop• N E dE d eps ncg rms rms(c)•DAV: 1 0.389589563746E+01 0.38959E+01 -0.17519E+02 10 0.991E+01•DAV: 2 0.290759302658E+00 -0.36051E+01 -0.36051E+01 20 0.130E+01•DAV: 3 -0.895110055623E-01 -0.38027E+00 -0.34433E+00 15 0.506E+00•DAV: 4 -0.1E+00 -0.17282E-01 -0.15649E-01 10 0.856E-01•DAV: 5 -0.1E+00 -0.15034E-03 -0.15024E-03 10 0.110E-01 0.431E-03•DAV: 6 -0.1E+00 -0.66060E-05 -0.36632E-05 10 0.188E-02• 1 F= -.10694959E+00 E0= -.53948205E-01 d E =-.106003E+00• writing wavefunctions•N:迭代次数:迭代次数 E:总能:总能 dE:总能的变化:总能的变化 d eps:本征值的变化:本征值的变化•ncg: HΨ的优化步数的优化步数 Rms:总的残差矢量:总的残差矢量 Rms(c): 电荷密度残差矢量电荷密度残差矢量13 2. 平面波切断动能和缀加电荷时的切断值•ENCUT: 确定平面波的切断动能,默认值从POTCAR中读入•Cut-off energy for plane wave basis set in eV.All plane-waves with a kinetic energy smaller than are included in the basis set: i.e.•ENAUG: 确定缀加电荷的切断值,默认值从POTCAR中读入•Kinetic energy cut-off for the augmentation charges. This line determines NGXF, NGYF and NGZF 14 3. 电荷密度混合方法 15 3. 电荷密度混合方法 •一般采用它们的默认值,除非在电子迭代很难一般采用它们的默认值,除非在电子迭代很难收敛的情况,才去手动设置收敛的情况,才去手动设置AMIX 和和BMIX等参等参数值数值 ,比如,比如AMIX=0.2,BMIX=0.000116 4. 电子部分优化的方法 •ALGO: (用在4.5以后的版本中) 确定电子优化的算法:ØNormal: 则IALGO=38(也就是blocked Davidson方法)ØVery_Fast: 则IALGO=48(RMM-DIIS算法)ØFast: 上面两种算法混着使用•IALGO:具体确定电子优化采用何种算法。

对4.5以上的版本,默认值为38•LDIAG:确定是否进行子空间对角化默认值为.TRUE.•在INCAR中加入 IALGO =48 可以计算速度快17 2.3 原子弛豫•1.原子如何移动以及步长,步数和弛豫收敛条件 : IBRION ,NFREE ,ISIF ,POTIM ,NSW ,EDIFFG.•2.分子动力学相关参数 : SMASS ,TEBEG ,TEEND , POMASS ,NBLOCK• ,KBLOCK ,PSTRESS ,NSW, POTIM.18 1.原子如何移动以及步长和步数 •IBRION: 决定了原子如何移动或迟豫如果NSW=0或1,则默认值为-1,否则为0可赋予值为-1| 0 | 1 | 2 | 3 | 5IBRION=0表示进行分子动力学模拟为-1表示原子不移动为其他值设置结构优化的方法Ø-1:原子位置不移动Ø 0: 标准的分子动力学模拟采用Verlet算法来积分原子的牛顿运动方程通过POTIM来控制时间步长(单位是fs)SMASS控制系综的设置Ø1: 采用准牛顿算法来优化原子的位置Ø2: 采用共轭梯度算法来优化原子的位置Ø3: 采用最速下降算法来优化原子的位置Ø5: 用来计算Hessian矩阵和体系的振动频率•NFREE: 相当于设置的自由度。

当IBRION=5,NFREE=2或4决定了原子的移动,推荐设置为2该参数在计算频率和进行选择性原子弛豫时需要设置19 1.原子如何移动以及步长和步数 •ISIF:决定了是否计算应力以及如何对结构进行优化当IBRION=0时,默认值为0,否则为2可赋予值为0| 1 | 2 | 3 | 4 | 5| 6| 7|ISIFISIF计算离子所计算离子所计算离子所计算离子所受的力受的力受的力受的力计算原胞的计算原胞的计算原胞的计算原胞的stress stress tensortensor离子位置驰离子位置驰离子位置驰离子位置驰豫豫豫豫改变原胞的改变原胞的改变原胞的改变原胞的形状形状形状形状改变原胞的改变原胞的改变原胞的改变原胞的体积体积体积体积0 0是是是是否否否否是是是是否否否否否否否否1 1是是是是trace onlytrace only是是是是否否否否否否否否2 2是是是是是是是是是是是是否否否否否否否否3 3是是是是是是是是是是是是是是是是是是是是4 4是是是是是是是是是是是是是是是是否否否否5 5是是是是是是是是否否否否是是是是否否否否6 6是是是是是是是是否否否否是是是是是是是是7 7是是是是是是是是否否否否否否否否是是是是20 1.原子如何移动以及步长和步数 •Trace only表示仅有总压力是正确的,总压力也是在OUTCAR文件中这一行“external pressure= ... kB”给出的。

•出的在对原胞的体积或形状进行优化时,ENCUT 要略取的大一些(比如取为1.3 * ENCUT 的默认值或者设置•1.3 * ENCUT 的默认值或者设置PREC = High)以消除Pulay Stress 导致的误差21 1.原子如何移动以及步长和步数 •POTIM: 当IBRION= 1, 2或3时,是力的一个缩放常数(相当于确定原子每步移动的大小),默认值为0.5当IBRION=0时,是MD的时间步长,无默认值,必须手动设置•NSW: 原子迟豫的最大步数和分子动力学的步数默认值为0在每一步内,电子进行自洽计算,并精确计算原子所受的H-F力和和应力•EDIFFG: 原子迟豫收敛的标准默认值为EDIFF*10如果它的值为正的,则表示前后两次的总自由能之差小于EDIFFG,原子停止迟豫如果为负的,则原子所受的最大的力小于EDIFFG的绝对值,原子停止迟豫EDIFFG也可以是0,则表示原子弛豫NSW步后就停止EDIFFG在分子动力学中不起作用•分析:上面几个参数联合控制原子的弛豫原子弛豫使原所构造的体系达到VASP计算所要求的平衡状态在结构优化过程中要求 进行体系原子弛豫22 2.分子动力学相关参数 •SMASS: 确定分子动力学中原子的速度。

默认值为-3可赋予值为-3 | -2 | -1 |0Ø-3: 微正则系综(总的自由能守恒)Ø-2: 保持初始速度不变,计算体系总能随原子位置的变化情况Ø-1: 在每NBLOCK步之后对初始速度进行缩放Ø0或>0,正则系综,对温度进行Nose调控•TEBEG: 分子动力学模拟时的初始温度默认值为0当POSCAR中没有设置初始温度时,原子的初始速度按Maxwell-Boltzmann分布由TEBEG确定•TEEND :分子动力学模拟时的末态稳定默认值为TEBEG23 2.分子动力学相关参数 •POMASS: 每类原子的质量•NBLOCK: 默认值为1原子每迟豫NBLOCK步后,将计算对关联函数、态密度以及输出原子迟豫后的位置(XDATCAR) 如果SMASS=-1,它将控制原子的动能在每多少步后进行缩放•KBLOCK :默认值为NSW每KBLOCK*NBLOCK 步后,将输出对关联函数和态密度对关联函数输入到PCDAT文件 ,态密度输入到DOS文件•PSTRESS :设置加到体系的应力张量上的应力大少•上面参数可以进行分子动力学计算24 2.4 态密度积分和参数•1. smearing方法和参数:ISMEAR, SIGMA•2. 计算态密度时能量范围和点数:EMIN, EMAX, NEDOS•3. 计算分波态密度的参数:RWIGS, LORBIT 25 1. smearing方法和参数•ISMEAR和 SIGMA:确定smearing的方法和展宽的参数。

默认值为1和0.2ISMEAR可赋予值为: -5 | -4 | -3 | -2 | -1 | 0 |N,它决定了如何确定每个波函数的占有数:Ø-1: fermi smearing方法Ø0: Gaussian smearing 方法Ø1—N:Methfessel-Paxton N阶smearing方法Ø-2: 在INCAR中通过FERWE和FERD0关键词手动设置Ø-3: 采用一个循环的计算来确定smearing的参数,在每一步中的searming设置通过SMEARINGS = smearing1 smearing2 smearing3…..来设置此时IBRION= -1, NSW设置为SMEARINGS的值的个数Ø-4: 没有Blöch修正的四面体方法Ø-5: 带Blöch修正的四面体方法26 1. smearing方法和参数1.进行任何的静态计算或态密度计算,且K点数目大于4时,取 ISMEAR=-52. 当原胞较大而K点数目较少(小于4个)时,取ISMEAR=0,并取一个合适的SIGMA值3.对半导体或绝缘体的计算(无论是静态或结构优化),取ISMEAR=-5; 当结构呈现金属性时,取ISMEAR=1和2,以及设这一个合适的SIGMA值。

大多数情况下,1和2给出的结果很相似4.进行能带结构计算,ISMEAR和SIGMA 用默认值就好5.无论是对何种体系,进行何种性质的计算,采用ISMEAR=0,并选择一个合适的SIGMA都能得到合理的结果6.在计算大体系的总能和DOS时,建议采用blochl校正的四面体方法,即ISMEAR=-5.但是这个方法没有对电子的部分占据进行变分计算,所以对金属的力的计算误差较大,而对半导体的影响不大金属的弛豫计算可采用Methfessel-Paxton方法27 2. 计算态密度时能量范围和点数•EMIN和EMAX: 计算态密度时的能量窗口(或能量范围)•NEDOS 和上面的EMIN 和EMAX 可以参阅输出文件DOS•RWIGS: 每类原子的Wigner Seitz 半径,无默认值,需手动设置•LORBIT: 同RWIGS一起设置,决定了PROCAR或PROOUT文件是否输出也就是对每个能带的波函数进行spd和site分解或投影默认值为.FALSE.也就是0•下表给出了VASP4.6版本LORBIT含义•10,,11或或12只是针对采用只是针对采用PAW势的计算势的计算28 2. 计算态密度时能量范围和点数•Wigner Seitz 半径,用在计算分波态密度以及每根能带对应的波函数按spd 和位置投影时。

RWIGS = 1.2 1.5 … …•按POSCAR 文件中每类原子的顺序相应地给出尽管在VASP 的manual 中给出了一个总的原则:调整RWIGS的•值,并计算后,检查在OUTCAR 文件中,每类原子的Wigner Seitz 球的体积之和应略接近与原胞的体积• 当体系中有多类原子时,一般很难调整,通常就直接取•POTCAR 文件中以Å 为单位的RWIGS 值29 2.5 其他•1.计算精度控制和对称性:PREC ,ISYM ,•SYMPREC .•2.磁性计算:ISPIN, MAGMOM, NUPDOWN•3.交换关联函数:GGA, VOSKOWN,NAPCO,APACO.•4.逻辑参数和体系参数30 1.计算精度控制和对称性•PREC: 是控制计算精度最重要的一个参数,它决定了ENCUT、FFT 网格大小、和ROPT 的默认值可能的取值为Low, Medium, High, Normal, Accurate它的默认值为Medium (后两个只能在4.5 以上版本中才起作用)在一般的计算时推荐:4.5 版本中用Normal,4.4 版本中用Medium当要提高力和Stress tensor 的计算精度时,可以采用High 或Accurate,并手动设置ENCUT 的值。

•ISYM:确定是否根据体系的对称性进行计算采用PAW势时,默认值为2若采用的超软赝势,则为1为0则表示不考虑体系的对称性进行计算•SYMPREC: 确定了POSCAR中位置坐标所需要的精度以供考虑体系的对称性默认值为10-5•一般情况下,INCAR中都需要是指PREC31 2.磁性计算:ISPIN, MAGMOM, NUPDOWN•ISPIN: 确定是否进行自旋极化的计算默认值为1,表示不进行自旋极化的计算为2表示自旋极化的计算•MAGMOM: 每类原子的初始磁距,默认值为Nion*1• NUPDOWN: 体系自旋向上和向下的电子数之差体系自旋向上和向下的电子数之差32 3.交换关联函数•GGA: 根据赝势设置GGA交换关联的函数形式可赋予值为PE | PB | LM | 91 | PW | RP•VOSKOWN: 确定交换关联函数的关联部分是否采用Vosko-Wilk-Nusair内插方法默认值为0一般用在自旋极化GGA的计算中,设置为1•NPACO : 对关联函数输出的数据的点数,默认值为256•APACO : 在计算对关联函数时确定在多大范围内计算出来默认值为1633 3.交换关联函数•分析:GGA关键词表示交换关联函数采用广义梯度近似。

当GGA=91时表示采用Perdew-Wang91交换关联函数;当GGA=PE,表示采用Perdew-Burke-Ernzerhof交换关联函数(只能用在4.5以上版本)GGA的选择一定要与赝势的选择一致也就是说在采用LDA赝势时,不能定义GGA,另外采用PW91的赝势时,不能定义GGA=PE等等VOSKOWN是表示在处理交换关联函数时,采用何种内插公式当VOSKOWN=1时采用Vosko Wilk and Nusair 提出的内插公式,它一般是来处理GGA中的交换关联函数的•因此在采用PW91的GGA时,应设这VOSKOWN=1.其他情况下,可以不必设置VOSKOWN,而由程序采用默认值•NAPCO和APACO一般情况下采用默认值34 4.逻辑参数和体系参数•LREAL: 确定投影算法是否在实空间或倒空间计算默认值为.FALSE. ,可设置的值为.FALSE. | .TRUE. | On | Auto |•LCORR: 决定是否对应力和原子力进行Harris修正默认值为.TRUE.•LDIAG:确定是否进行子空间对角化默认值为.TRUE.•LWAVE: 确定是否在WAVECAR文件中输出波函数,默认值为.TRUE.。

•LCHARG : 确定是否在CHGCAR和CHG中输出电荷密度,默认值为.TRUE.•LVTOT :确定是否把总的局域势输出到LOCPOT文件中默认值为.FALSE.•LELF:确定是否把电子局域函数输出到ELFCAR文件中默认值为.FALSE.35 4.逻辑参数和体系参数•POMASS: 每类原子的质量•ZVAL: 每类原子的价电子数•NELECT: 体系的总电子数通常不必设置体系的总电子数通常不必设置36 2.6关键词的总结•1.初始参数:SYSTEM,ISTART,ICHARG,INIWAV,NWRITE.•2.电子迭代:NELM,NELMDL,NELMIN,EDIFF动能切断值:ENCUT, ENAUG电子部分优化方法:ALGO,IALGO, LDIAG电荷密度混合方法:IMIX ,AMIX ,AMIN,BMIX,•AMIX-MAG,BMIX-MAG,WC,INIMIX,MIXPRE,MAXMIX.•3.原子弛豫:IBRION ,NFREE ,ISIF ,POTIM ,NSW ,EDIFFG分子动力学:SMASS ,TEBEG ,TEEND , POMASS ,NBLOCK ,KBLOCK ,PSTRESS ,POTIM,NSW.•4.smearing方法和参数:ISMEAR, SIGMA 。

计算态密度时能量范围和点数:EMIN, EMAX, NEDOS计算分波态密度的参数:RWIGS, LORBIT 37 2.6关键词的总结•5.计算精度控制和对称性:PREC ,ISYM ,SYMPREC .磁性计算:ISPIN, MAGMOM, NUPDOWN交换关联函数:GGA,VOSKOWN,NPACO,APACO. 逻辑参数: LREAL,•LCORR,LDIAG,LWAVE,LCHARG,LVTOT,LELF.体系参数:POMASS,ZVAL,NELECT.• 38 3.输入和输出文件Ø输入文件输入文件ØINCAR :文件文件控制了控制了VASP进行何种性质的计算进行何种性质的计算ØPOSCAR :文件描述了所计算的体系的晶胞参数(包括基矢或平文件描述了所计算的体系的晶胞参数(包括基矢或平Ø移矢量,晶格常数,原子位置等信息)移矢量,晶格常数,原子位置等信息)ØKPOINTS :描述了不可约布里渊区中描述了不可约布里渊区中k 点取样,即点取样,即k 点设置ØPOTCAR :文件包含了体系中各类元素的赝势文件包含了体系中各类元素的赝势Ø输出文件输出文件ØOUTCAR :最主要的输出文件最主要的输出文件ØDOSCAR : 电子态密度文件电子态密度文件ØEIGENVAL :本征值文件本征值文件ØOSZICAR :每次迭代或原子迟豫每次迭代或原子迟豫(或或MD)的信息的信息ØCHG和和CHGCAR :电荷密度文件电荷密度文件ØWAVECAR :波函数文件波函数文件39 3.输入和输出文件Ø输出文件输出文件(续续)ØCONTCAR :原子迟豫或原子迟豫或MD后的体系结构文件后的体系结构文件ØIBZKPT :布里渊区中的布里渊区中的k点点ØPCDAT :对关联函数对关联函数ØXDATCAR :在在MD时时, 原子位置变化的跟踪文件原子位置变化的跟踪文件ØPROCAR和和PROOUT : 波函数投影或分解的文件波函数投影或分解的文件ØLOCPOT :总的局域势总的局域势ØELFCAR :电子局域函数电子局域函数40 输入文件INCAR•一般要设置的关键词:SYSTEM, ENCUT, ISTART, ICHARG, PREC, ISMEAR, SIGMA。

针对•计算不同的性质,再另外增加相应的关键词•设置计算的精度PREC•设置是做什么计算•设置交换关联函数GGA和VOSKOWN•设置优化的算法和收敛标准EDIFF和EDIFFG•设置MD的步长、温度、时间•设置每个波函数或电子的占有数(也就是 smearing方法及相关的参数)等等ISMEA和SIGMA•自由格式•共100多个关键词,一般都有合适的默认值通常需设置的有10个左右即使INCAR文件无任何内容也可以进行计算41 输入文件INCAR实例•静态计算静态计算(计算总能和自洽的电荷密度计算总能和自洽的电荷密度)•懒:删掉计算目录下的懒:删掉计算目录下的WAVECAR,,INCAR中不作任何设置中不作任何设置•推荐:自己手动设置推荐:自己手动设置ENCUT, TITLE, ISTART, ICHARG, ISMEAR, EDIFF, PREC等等•SYSTEM = Silicon 设置标题,以说明所计算的体系设置标题,以说明所计算的体系•ENCUT = 350 设置平面波切断动能设置平面波切断动能(不采用默认值不采用默认值)•ISTART = 0 说明这次计算是一次全新的计算说明这次计算是一次全新的计算•ICHARG = 2 按体系中的原子构造初始的原子密度按体系中的原子构造初始的原子密度•ISMEAR = -5 采用四面体方法采用四面体方法•EDIFF = 1E-5 电子迭代的收敛标准是电子迭代的收敛标准是1E-5•PREC = Accurate 精度为精度为Accurate• 可以在一行设置多个关键词的值,但是每个关键值之间用分号可以在一行设置多个关键词的值,但是每个关键值之间用分号(;)隔开。

隔开如如ISMEAR= 0; SIGMA= 0.2• 当想不用当想不用INCAR中某个关键词的值时,在该行前面加上井号中某个关键词的值时,在该行前面加上井号(#)注释掉,注释掉,如如#ISMEAR=0; SIGMA = 0.2• 42 输入文件POSCAR•描述了体系的结构文件: 原(或晶)胞的基矢, 原子的位置, 原子是否移动,原子的初始速度等)•分数坐标和卡笛尔坐标例子例子:Cubic SiC3.570.0 0.5 0.50.5 0.0 0.50.5 0.5 0.0 1 1Direct 0.00 0.00 0.000.25 0.25 0.25设置体系的名称置体系的名称晶格常数或晶格常数或缩放系数放系数原原(或晶或晶)胞的基矢胞的基矢每每类原子的个数原子的个数确定按何种坐确定按何种坐标来写原子位置来写原子位置第一第一类原子的第一个坐原子的第一个坐标第二第二类原子的第一坐原子的第一坐标Cubic SiC3.570.0 0.5 0.50.5 0.0 0.50.5 0.5 0.0 1 1Cartesian 0.00 0.00 0.000.25 0.25 0.25☺第七行以字母第七行以字母D开开头表示下面的是分数坐表示下面的是分数坐标,如果是以,如果是以C或或K开开头表示下面的表示下面的坐坐标是卡笛是卡笛尔坐坐标。

43 输入文件POSCAR•对原子位置进行选择性的迟豫(Selective dynamic)•例子例子:•Cubic SiC•3.57•0.0 0.5 0.5•0.5 0.0 0.5•0.5 0.5 0.0• 1 1•Selective dynamic 表示对体系中的原子进行限制性的表示对体系中的原子进行限制性的 •Direct 迟豫或优化,这一行以字母迟豫或优化,这一行以字母S开头•0.000 0.000 0.000 F F F 固定第一类原子的位置,固定第一类原子的位置,•0.248 0.248 0.248 T T T 对第二类原子的位置进行优化对第二类原子的位置进行优化☺如何写出具有复杂结构的晶体的如何写出具有复杂结构的晶体的POSCAR::a) 查到该晶体的晶格常数、空间群查到该晶体的晶格常数、空间群和乌科夫和乌科夫(Wyckoff)坐标坐标; b)用用Material Studio中中Crystal builder或其他的晶体或其他的晶体学软件画出晶体,并得到各个原子的坐标学软件画出晶体,并得到各个原子的坐标;或或c)根据空间群国际表写出各等价位根据空间群国际表写出各等价位置置; d)晶体数据库晶体数据库44 输入文件KPOINTS•设置布里渊区k点取样或k点的坐标,计算能带时k点的高对称线•设置方式:手动输入所有的k点,按Monkhorst-Pack方法自动产生•格式:普通,四面体,M-P网格,Line模式•卡笛尔坐标系和倒格子坐标系45 输入文件KPOINTS(普通格式)•按按普通格式普通格式手动输入各个手动输入各个k点点(推荐用在计算能带时推荐用在计算能带时)•k-points entered manually 标题或注释行,无特别意义标题或注释行,无特别意义•5 K点的数目点的数目•Reciprocal 以字母以字母R开头表示开头表示k点是按倒格子坐标系点是按倒格子坐标系•0.500 0.000 0.500 1.00 前三个数是前三个数是k点的坐标,最后一个数是相应点的坐标,最后一个数是相应k•0.475 0.000 0.475 1.00 点的权重点的权重(下面共下面共5个个k点点)•0.450 0.000 0.450 1.00•0.425 0.000 0.425 1.00 如果是以卡笛尔坐标系来写k点•0.400 0.000 0.400 1.00 坐标,则第三行以字母C开头。

•按按四面体格式四面体格式手动输入各个手动输入各个k点点(复杂,不推荐用复杂,不推荐用)•Example file 标题或注释行,无特别意义•4 K点的数目•Cartesian 以字母C开头表示k点是按卡笛尔坐标系•0.0 0.0 0.0 1. 前三个数是k点的坐标,最后一个数是相应k点的坐标(下面共4个k点)•0.0 0.0 0.5 1. •0.0 0.5 0.5 2. •0.5 0.5 0.5 4. •Tetrahedra 当smearing方面采用的是四面体方法时,以字母T开头表示下面的是描述各个四面体的信息•1 0.3333 四面体的个数,每个四面体的体积权重•6 1 2 3 4 每个四面体顶角的权重,每个四面体顶角k点坐标的序号•当当Smearing时不采用四面体方法,则时不采用四面体方法,则Tetrahedra后面的内容不起作用后面的内容不起作用• 46 输入文件KPOINTS(LINE模式)•按按Line模式模式手动输入各个高对称手动输入各个高对称k点点(用在计算能带中,用在计算能带中,4.6以以上版本支持上版本支持)•k along high symmetry lines 标题或注释行,无特别意义标题或注释行,无特别意义•10 每对高对称点之间产生每对高对称点之间产生10个个k点点•Line-mode 以字母以字母L开头表示按开头表示按line模式产生模式产生k点点•Rec 以字母以字母R开头表示开头表示k点按倒格子坐标系点按倒格子坐标系•0.00 0.00 0.00 ! gamma 每对高对称点的坐标。

共三对,表明沿着每对高对称点的坐标共三对,表明沿着•0.50 0.50 0.00 ! X Gamma  X  W  Gamma计算能带)计算能带)•0.50 0.50 0.00 ! X •0.50 0.75 0.25 ! W• 如果是以卡笛尔坐标系来写k点•0.50 0.75 0.25 ! W 坐标,则第四行以字母C开头•0.00 0.00 0.00 ! gamma ☺如何写出各种布拉菲格子对应的倒格子中的高对称点标记和坐标:如何写出各种布拉菲格子对应的倒格子中的高对称点标记和坐标:a)查空间群国际查空间群国际表表; b)用用xcrysden软件画出布里渊区,并选取高对称点软件画出布里渊区,并选取高对称点47 输入文件KPOINTS(自动模式)•按按Monkhorst-Pack网格方法自动产生k点 Ø完全自动的方式 (1)•Automatic mesh 标题或注释行,无特别意义标题或注释行,无特别意义•0 0表示自动产生表示自动产生k点点•Auto 以字母以字母A开头表示完全自动以开头表示完全自动以Γ点为中心产生点为中心产生k点点•10 长度,间接确定了沿倒格子各方向上网格点长度,间接确定了沿倒格子各方向上网格点的数目的数目48 输入文件KPOINTS(自动模式)Ø完全自动的方式 (2)Ø按按Monkhorst-Pack网格方法自动产生k点•Automatic mesh 标题或注释行,无特别意义标题或注释行,无特别意义 第三行也可以字母第三行也可以字母M开开•0 0表示自动产生表示自动产生k点点 头,则不以头,则不以Γ点为点为中心中心•Gamma 以字母以字母G开头表示按开头表示按M-P方法以方法以Γ点为中心自动产生点为中心自动产生k点点•10 10 10 确定沿倒格子各方向上网格点的数目确定沿倒格子各方向上网格点的数目•0.0 0.0 0.0 对所按网格分割产生的对所按网格分割产生的k点进行平移的量(这里不平点进行平移的量(这里不平移移49 输入文件KPOINTS(自动模式)•完全自动的方式 (3)•按按Monkhorst-Pack网格方法自动产生k点•Automatic mesh 标题或注释行,无特别意义标题或注释行,无特别意义•0 0表示自动产生表示自动产生k点点•Monkhorst-Pack 以字母以字母M开头表示按开头表示按M-P方法自动产生方法自动产生k点点•10 10 10 确定沿倒格子各方向上网格点的数目确定沿倒格子各方向上网格点的数目•0.5 0.5 0.5 对所按网格分割产生的对所按网格分割产生的k点进行平移的量(这里不平移)点进行平移的量(这里不平移)如果第三行以字母G开头,则以Γ点为中心产生k点50 输入文件KPOINTS•推荐推荐1.对六角晶系的结构,强烈推荐采用以对六角晶系的结构,强烈推荐采用以Γ为中心按为中心按M-P网格产生网格产生k点点2. K点网格大小点网格大小N1, N2, N3按倒格子基矢的长度进行合适的选取按倒格子基矢的长度进行合适的选取3.一般选取一般选取N1, N2和和N3为奇数,以便产生的为奇数,以便产生的k点包含了点包含了Γ点点 4.设置不同的设置不同的N1,N2和和N3,看它们对总能的影响,以确定能保证一定计,看它们对总能的影响,以确定能保证一定计算精度的算精度的k点数目点数目5.一般来说,一般来说,k 点越密越多,计算精度也越高,当然计算成本也越高。

点越密越多,计算精度也越高,当然计算成本也越高嗯,对于嗯,对于 k 点的需求,金属点的需求,金属>>半导体,绝缘体,不过呢,很多时候主要半导体,绝缘体,不过呢,很多时候主要还是受硬件限制,简约化可以使还是受硬件限制,简约化可以使k 点的数目大大下降对于原子数较点的数目大大下降对于原子数较多的体系的计算多的体系的计算.就需要谨慎的尝试就需要谨慎的尝试k 点数目,在避免或者预先评估点数目,在避免或者预先评估wrap-around error 的前提下尽量减少的前提下尽量减少k 点数目 51 输入文件POTCAR•赝势的分类赝势的分类•按方法:超软赝势和缀加投影波按方法:超软赝势和缀加投影波(PAW)势势•按交换关联函数按交换关联函数: LDA和和GGA(又再细分为又再细分为PW91和和PBE)•按是否处理了按是否处理了semi-core态:态:A, A_sv, A_pv和和A_d (A为元素为元素的名称的名称)•按赝势文件中按赝势文件中ENMAX的大小的大小:A, A_s和和A_h•操作操作•按按POSCAR文件中,每类原子的顺序把各类原子相应的赝势文件中,每类原子的顺序把各类原子相应的赝势合并到同一个文件合并到同一个文件(POTCAR)中。

比如在中比如在POSCAR中原子坐中原子坐标按标按Si, O的顺序写出给原子的坐标,则到赝势库目录中使用的顺序写出给原子的坐标,则到赝势库目录中使用下面的命令下面的命令: zcat Si/POTCAR.Z >POTCAR zcat O/POTCAR.Z >>POTCAR•每类原子的赝势类型每类原子的赝势类型(PAW或超软或超软)一致一致•每类原子的赝势类型每类原子的赝势类型(交换关联交换关联)要与要与INCAR中交换关联设置一中交换关联设置一致致52 输入文件POTCAR PAW_GGA Si 05Jan2001 4.000000 parameters from PSCTR are: VRHFIN =Si: s2p2 LEXCH = 91 EATOM = 103.3076 eV, 7.5929 Ry TITEL = PAW_GGA Si 05Jan2001 LULTRA = F use ultrasoft PP ? IUNSCR = 1 unscreen: 0-lin 1-nonlin 2-no RPACOR = 1.500 partial core radius POMASS = 28.085; ZVAL = 4.000 mass and valenz RCORE = 1.900 outmost cutoff radius RWIGS = 2.480; RWIGS = 1.312 wigner-seitz radius (au A) ENMAX = 245.435; ENMIN = 184.076 eV ICORE = 2 local potential LCOR = T correct aug charges LPAW = T paw PP EAUG = 322.069 DEXC = -.001 RMAX = 2.943 core radius for proj-oper RAUG = 1.300 factor for augmentation sphere RDEP = 1.993 core radius for depl-charge QCUT = -4.247; QGAM = 8.494 optimization parameters…………………………….Ø产生赝势的一些控制参数产生赝势的一些控制参数Ø势的局域部分势的局域部分Ø芯电荷芯电荷Ø原子的赝电荷密度原子的赝电荷密度Ø势的非局域部分势的非局域部分(在实和倒在实和倒空间的空间的)Ø全电子波函数全电子波函数Ø赝波函数赝波函数Ø赝化的芯电电荷密度赝化的芯电电荷密度Ø共共1702行行53 输出文件OUTCAR查看所计算体系的费米能级,使用下面的命令grep 'Fermi' OUTCAR | tail -1得到的结果为BZINTS: Fermi energy: 6.171330; 20.000000 electrons上一行中第一个数就是体系的费米能级,第二个数就是体系的总价电子数。

注释:对半导体的体系,VASP取价带顶作为费米能级对呈现金属性的体系,费米能级就是该体系的真实(具有物理意义的)费米能级查看所计算体系的倒格子基矢在采用vi对OUTCAR编辑时,用下面的命令来查找g/reciprocal lattice vectors 或 g/recip查看所计算体系中原子的受力情况在采用vi对OUTCAR编辑时,用下面的命令来查找g/TOTAL-FORCE原子所受的力的单位是eV/angstrom54 输出文件OUTCAR查看所计算体系的费米能级,使用下面的命令grep 'Fermi' OUTCAR | tail -1得到的结果为BZINTS: Fermi energy: 6.171330; 20.000000 electrons上一行中第一个数就是体系的费米能级,第二个数就是体系的总价电子数注释:对半导体的体系,VASP取价带顶作为费米能级对呈现金属性的体系,费米能级就是该体系的真实(具有物理意义的)费米能级查看所计算体系的倒格子基矢在采用vi对OUTCAR编辑时,用下面的命令来查找g/reciprocal lattice vectors 或 g/recip查看所计算体系中原子的受力情况在采用vi对OUTCAR编辑时,用下面的命令来查找g/TOTAL-FORCE原子所受的力的单位是eV/angstrom55 输出文件OUTCAR56 输出文件DOS如图对非自旋极化的,非自旋极化的,设置了置了RWIGS和和LORBIT=1或或2,,11或或12(只只对PAW)2 2 1 0 0.1891678E+02 0.3768172E-09 0.3768172E-09 0.3768172E-09 0.5000000E-15 1.000D-004 CAR LaN 7.84401537 -16.51100092 301 1.85674053 1.00000000 -16.511 0.0000E+00 0.0000E+00 -16.430 0.0000E+00 0.0000E+00 ……………….EminEmax在在Emin和和Emax之之间的点的数目的点的数目费米能米能级能量能量态密度密度态密度密度积分分值先是先是总的的态密度密度301行,接着是各个原子的球行,接着是各个原子的球谐函数投影或分解的函数投影或分解的态密度密度(每个原子的也是每个原子的也是301行行).即即energy s py pz px dxy dyz dz2 dxz dx2 tot对自旋极化的情况,自旋极化的情况,设置了置了RWIGS和和LORBIT,可以同,可以同类推:推:Energy s(up) s(down), ………………………这些可以数据可以按各个原子取出,画分波些可以数据可以按各个原子取出,画分波态密度,或者直接通密度,或者直接通过p4vasp来来显示。

示57 输出文件DOS•DOSCAR给出了体系的电子态密度给出了体系的电子态密度(单位为单位为Sates/eV.unit cell)和态密和态密度积分的值度积分的值(也就是电子数也就是电子数)•在计算时,需在在计算时,需在INCAR文件中设置了文件中设置了RWIGS以及以及LORBIT(可选的可选的)只只设置了置了RWIGS的的值: 对非自旋极化非自旋极化2 2 1 0 0.1891678E+02 0.3768172E-09 0.3768172E-09 0.3768172E-09 0.5000000E-15 1.000D-004 CAR LaN 7.84401537 -16.51100092 301 1.85674053 1.00000000 -16.511 0.0000E+00 0.0000E+00 -16.430 0.0000E+00 0.0000E+00 ……………….EminEmax在在Emin和和Emax之之间的点的数目的点的数目费米能米能级能量能量态密度密度态密度密度积分分值先是先是总的的态密度密度301行,接着是各个原子的行,接着是各个原子的s, p, d投影或分解的投影或分解的态密度密度(每个原子每个原子的也是的也是301行行).即即energy s-DOS p-DOS d-DOS对自旋极化的情况,只自旋极化的情况,只设置了置了RWIGS::energy DOS(up) DOS(dwn) integrated DOS(up) integrated DOS(dwn)energy s-DOS(up) s-DOS(down) p-DOS(up) p-DOS(dwn) d-DOS(up) DODOS(dwn)58 输出文件CHG和CHGCAR•电荷密度文件,两者的格式、内容一荷密度文件,两者的格式、内容一样。

给出了原胞基矢和原子位出了原胞基矢和原子位置,以及置,以及电荷密度荷密度ρ(r)*V的的值等等. 当当LCHARG=.FALSE.时,,CHG*文文件中无数据件中无数据LaN 5.329 0.000000 0.500000 0.500000 0.500000 0.000000 0.500000 这一部分的数据和一部分的数据和POSCAR的相同的相同 0.500000 0.500000 0.000000 1 1Direct 0.000000 0.000000 0.000000 0.500000 0.500000 0.500000 56 56 56 FFT 3维网格的网格的值 0.48995073152E+02 0.49141986100E+02 0.49542734834E+02 0.50083226401E+02 0.50592000474E+02 0.50865422427E+02 0.50697616547E+02 0.49910660506E+02 0.48380553212E+02 0.46055231054E+02 0.42962328993E+02 0.39206114637E+02 0.34954657491E+02 0.30419549263E+02 0.25831206134E+02……………………电荷密度的荷密度的值,按下面的格式写出来的:,按下面的格式写出来的:59 输出文件CHG和CHGCAR•分析:此文件的头9 行给出的体系的晶格参数,与POSCAR 中的内容基本相同,在11 行中三个整数分别 是NGX, NGY, NGZ 的值,它们表示在三个基矢方向上,对所计算的原胞进行分割,得到NGX * NGY * NGZ个点,所计算原胞中的电荷密度用一个三维矩阵A(NGX, NGY, NGZ)来存贮。

•这两个文件在每步迭代过程中都会被更新(除了在INCAR 文件中有设置ICHGAR=11 或12外)经过迭代后得到•的自洽的CHG 和CHGCAR 可以用来画图分析面电荷密度分布(如何做,在后面会详细介绍)在后面步骤中能•带结构和态密度时,所读入的电荷密度文件CHG•和CHGCAR 必须是经过迭代自洽得到的文件 60 输出文件EIGENVALUE•静态或迟豫计算时,在计算最后输出的所有k点的Kohn-Sham本征值•在MD计算时,输出的是与CONTCAR中的原子结构一致的预测波函数 2 2 1 1 0.1891678E+02 0.3768172E-09 0.3768172E-09 0.3768172E-09 0.5000000E-15 1.000D-004 CAR LaN 14 91 11 0.5000000E+00 0.0000000E+00 0.5000000E+00 0.1098901E-01 1 -13.8002 2 -12.9600 3 -12.9600 4 -10.1199 5 1.7010 6 1.7010 7 1.8603 8 1.8640 9 5.4661 10 5.5390 11 5.6691………………………….K点的数目点的数目能能带的条数的条数K点的坐点的坐标(按倒格子坐按倒格子坐标系系)K点点权重重序号序号 本征本征值61 输出文件PROCAR当在INCAR中合适地设置了LORBIT后,输出所有带按每原子spd投影分解并给出波函数的特征。

PROCAR lm decomposed# of k-points: 1 # of bands: 307 # of ions: 96 k-point 1 : 0.00000000 0.00000000 0.00000000 weight = 1.00000000band 1 # energy -15.86021571 # occ. 2.00000000ion s py pz px dxy dyz dz2 dxz dx2 tot 1 0.004 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.004 2 0.004 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.004 3 0.004 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.004 4 0.004 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.004 5 0.004 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.004 6 0.004 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.004………………………………………62 输出文件LOCPOT和ELFCAR•它们的数据格式与CHGCAR的相同。

•当在INCAR中设置了LVTOT=.TRUE.,输出LOCPOT对表面体系的计算,分析该文件,可以得到功函数•当在INCAR中设置了LELF=.TRUE.,输出ELFCAR用vaspview可以可视化它,用来分析原子之间的键63 使用习惯•在计算前,要明确采用的是何种赝势;平面波切断动能多大;k 点网格多小;当采用Gaussian-,Fermi-smearing 方法或Methfessel-Paxton smearing 方法时,SIGMA 多大;计算所选取的精度PREC;采取何种交换关联函数•另外,在每步计算完后,要学会文件(INCAR, KPOINTS, POSCAR, OUTCAR 以及其他的与所计算的性质相关的文件DOSCAR, EIGENVAL)比如静态计算完后得到自洽的电荷密度,可以建立目录scf,然后把INCAR, KPOINTS, POSCAR, OUTCAR, CHGCAR, CHG 保存下来,这可以采用下面的命令来完成:•mkdir scf•tar czvf chg.tgz CHG*•cp INCAR KPOINTS POSCAR OUTCAR chg.tgz scf/.•提示:由于CHGCAR 的文件比较大,压缩后保存以减少磁盘空间。

当要用到时,把chg.tgz解压就可以用了64 使用习惯•计算完能带结构,可以建立目录band,然后把INCAR, KPOINTS, POSCAR, OUTCAR,EIGENVAL, syml 文件保存下来,通过下面的命令来完成:•mkdir band•cp INCAR KPOINTS POSCAR OUTCAR EIGENVAL syml band/.•然后进入到目录band 下面用pbnd.x 程序来处理EIGENVAL•比如计算电子态密度,可以建立目录dos,然后把INCAR, KPOINTS, POSCAR, OUTCAR,DOSCAR 文件保存下来,通过下面的命令来完成:•mkdir dos•cp INCAR KPOINTS POSCAR OUTCAR DOSCAR dos/.•然后进入目录dos 下面用split_dos 小程序来处理分割DOSCAR65 基础性质计算•1.检验赝势好坏•2.结婚能修正•3.结构参数优化• 1.简单优化• 2.复杂优化• 3.一次优化•4.ENCUT 优化•5.SIGMA优化•6.K点优化•7.Si的电荷密度计算•8.Si的DOS•9.Si的能带结构66 单个原子计算•单个原子的计算有两个目的:•1) 检验赝势的好坏;•2) 对称性被破坏后自旋极化情况下的原子基态能量,对结合能进行修正。

•对 1)的情况,在VASP 的赝势库,由于VASP 是商业化的软件,这些元素的赝势都是经过检验过一般情况下,只要切断动能ENCUT 足够大,以及计算单个原子的原胞的晶格常数足够大,得到的能量值应该在1meV~10meV 之间,也就是VASP 计算得到的单个原子的能量与原子的参考组态时的能量之差在VASP 所计算得到的总能都是扣去了计算原子的参考组态时得到的能量,也就是POTCAR 中EATOM 的值67 检验赝势的好坏•以计算1 个Al 的情况为例:•POSCAR 的内容为: INCAR 的内容为:•atom SYSTEM = Al: atom•15.00 ENCUT = 250.00 eV•1.00000 .00000 .00000 NELMDL = 5•.00000 1.00000 .00000 ISMEAR = 0; SIGMA=0.1•.00000 .00000 1.00000•1•Direct•0 0 068 检验赝势的好坏•KPOINTS 的内容为:•Automatic•0•Gamma•1 1 1•0 0 0•计算后得到查看OUTCAR 文件中的“energy without entropy”之后的能量值。

这个值一般要在1meV~10meV 之间原胞的大小对所有的元素,取15Å 是足够的,对某些元素还可以取的更小些69 结合能修正•以计算单个原子Al 的为例进行说明:•SYSTEM = Al: atom•ENCUT = 250•ISYM = 0 ! no symmetry•ISPIN = 2 ! allow for spin polarisation•VOSKOWN = 1 ! this is important, in particular for GGA•ISMEAR = 0 ! Gaussian smearing, otherwise negative occupancies•SIGMA = 0.1 ! intermid. smearing width•AMIX = 0.2 ! mixing set manually•BMIX = 0.0001•NELM = 20 ! 20 electronic steps•ICHARG = 1•连续计算两次,查看OUTCAR 文件中的“energy without entropy”之后的能量值,这个值就是用来修正体材料的结合能的•原胞的大小,与1)情况中的相同。

上面INCAR 中的内容从第3 行起后面的设置,可以用在计算其他原子的情况中70 结构参数(晶格常数和原子位置参数)的优化根据要优化的晶胞参数的复杂性可以分为以下几类:•1) 简单的情况:只要优化一个参数即晶格常数a,•2) 复杂的情况:含两个以上的参数,比如四角或六角晶系(a,c),正交晶系(a,b,c);以及含有原子位置参数需要优化•3)一次优化71 简单优化•计算fcc 结构Al 的晶格常数为例进行说•SYSTEM = Al-fcc Automatic generation •ENCUT = 250 0•ISTART = 0; ICHARG = 2 Monhkorst-Pack•ISMEAR = -5 9 9 9•PREC = Accurate 0.0 0.0 0.0•准备好POSCAR 文件,以晶格常数实验值aexp 为基础,在aexp 左右计算10 个点得到Volume-Etotal 的数据。

这个可以通过脚本程序run_a0 来完成72 简单优化•#!/bin/sh•rm WAVECAR•for i in 3.80 3.85 3.90 3.95 4.00 4.05 4.10 4.15 4.20 4.25 4.30•do•cat > POSCAR <>EtVo.dat•done73 简单优化•得到的EtVo.dat 文件,其内容如下:•13.7200 -4.094976•14.2700 -4.137590•14.8300 -4.163643•15.4100 -4.176403•16.0000 -4.176731•16.6100 -4.166067•17.2300 -4.145942•17.8700 -4.117937•18.5200 -4.083448•19.1900 -4.043300•19.8800 -3.998039•其中第一列数据是体积,单位为Å3,第二列数据是能量,单位为eV。

•d) 采用二次拟合得到晶格常数74 二次拟合图像75 复杂优化•以计算六角结构Mg 的晶格参数为例进行说明•a) 以实验的晶格结构参数为基础,做好POSCAR,先确定好ENCUT,k-mesh 大小,SIGMA的值,准备一个名为INCAR.relax和INCAR.static 的文件,其内容大致如下:•INCAR.relax INCAR.static•SYSTEM = Mg-hex SYSTEM = Mg-hex•ENCUT = 250 ENCUT = 250•ISTART = 0; ICHARG = 2 ISTART = 0;ICHARG = 2 •ISMEAR = 1; SIGMA = 0.2 ISMEAR = -5•NSW = 60; IBRION = 2 PREC = Accurate•ISIF = 5•POTIM = 0.2•EDIFF = 1E-5; EDIFFG = -1E-3•PREC = Accurate76 复杂优化•其中POSCAR 的内容如下:•Auto generation•0•Gamma•9 9 7•0.0 0.0 0.0b) 先进行一次体积保持不变的离子驰豫的计算(通过ISIF 来设置,此时ISIF 可能的取值为2,4 或5)ISIF 的选择根据所要优化的结构参数的来进行选择,见上一部分对ISIF 的说明。

其中“改变原胞的形状”,也就是调整原胞中c/a 和b/a 的值c) 再把优化得到的CONTCAR 拷贝成POSCAR,进行一次静态的计算d) 对a 的值取10 个左右的点,每个点重复上面两步,得到静态计算下的Volume-Etot 关系这三步可以通过运行脚本程序run_cell 来进行,其中run_cell 的内容如下:77 复杂优化•#!/bin/sh•rm WAVECAR•for i in 2.81 2.91 3.01 3.11 3.21 3.31 3.41 3.51 3.61 3.71•do•cat > POSCAR <>EtVo.dat•done78 复杂优化•在run_cell 运行完后,得到EtVo.dat 文件。

•e) 采用状态方程拟合得到平衡状态下的体积,体弹性模量•f) 在该体积下,重复上面b)和c)步,得到平衡状态下的其他晶胞参数这一步也就是:在得到了E(V)曲线后,通过状态方程拟合得到平衡状态下的体积,计算出上面脚本中变量•$i 的值,并改变$i 的循环值,再运行run_cell 计算一次,得到其他的结构参数c 和位置u.79 一次优化•另外一种对体系的结构参数进行一次性型的计算(这种方法一般是用来估计的,计算得到较合理,但是精度不高)这通过设置ISIF 来进行的还是以计算六角结构Mg 为例:•计算时的INCAR 文件为:SYSTEM = Mg-hexENCUT = 250ISTART = 0; ICHARG = 2ISMEAR = 1; SIGMA = 0.2NSW = 60; IBRION = 2ISIF = 3POTIM = 0.2EDIFF = 1E-6; EDIFFG = -1E-3PREC = Accurate80 一次优化•注释:此时可以把EDIFF 和EDIFFG 的精度提高一些以得到更准确的晶格参数•KPOINTS 与前面的相同POSCAR 的内容为:•Mg-hex•3.21•0.0 -1.0 0.0•0.8660254037844 0.5 0.0•0.0 0.0 1.6230529595•2•Direct•0.6666666666666667 0.3333333333333333 0.750•0.3333333333333333 0.6666666666666667 0.250•最后计算完后,得到的CONTCAR 文件就包含优化后的晶格参数。

•这样也可以比较采用这两种方法得到的晶格参数究竟差多少81 ENCUT优化•用来确定ENCUT 的脚本程序为run_ecut,其内容为:•#!/bin/sh•rm WAVECAR•for i in 150 200 250 300 350 400•do•cat > INCAR <>comment•doneAutomatic generation0Monhkorst-Pack9 9 90.0 0.0 0.0Si-Diamond5.4300.0 0.5 0.50.5 0.0 0.50.5 0.5 0.02Direct0.0 0.0 0.00.25 0.25 0.2582 ENCUT优化•计算完成后得到comment 文件,它列出了在每个ENCUT 时计算得到相应的总能。

内容如下:•150 -11.900655•200 -11.938864•250 -11.944599•300 -11.945248•350 -11.945503•400 -11.945622•总能变化在0.001eV 左右就足够了在这个例子中,因此,选择ENCUT = 250 eV•注意循环的第一个值,一般取POTCAR 中ENMAX(如果有多个ENMAX,则用其中最大的一个),循环的间隔一般取为50 eV•另外在对体系的变体积的结构优化时,最好保证ENCUT 是ENMAX 的1.3 倍,以便得到一个合理的精度但是采用以上方法经过优化•得到的ENCUT 一般可以满足此条件83 SIGMA优化 •以 fcc 结构Al,采用LDA、USPP 为例来进行说明•用来确定SIGMA 的脚本程序为run_sigma,其内容为:•#!/bin/sh•rm WAVECAR•for i in 0.10 0.12 0.14 0.16 0.18 0.20 0.22 0.24 0.26 0.28 0.30•do•cat > INCAR <>comment•doneAl-fcc5.4300.0 0.5 0.50.5 0.0 0.50.5 0.5 0.02Direct0.0 0.0 0.00.25 0.25 0.2584 SIGMA优化•计算完后得到comment 文件,其内容为:•0.10 -0.003426•0.12 -0.004408 KPOINTS文件•0.14 -0.005645 Automatic generation•0.16 -0.007127 0•0.18 -0.008833 Monhkorst-Pack•0.20 -0.010763 9 9 9•0.22 -0.012928 0.0 0.0 0.0•0.24 -0.015336•0.26 -0.017988•0.28 -0.020878•0.30 -0.023999•选择entropy T*S EENTRO 值中最小的那个所对应的SIGMA。

此例子中,则选择SIGMA =0.1当ISMEAR = 1 或2 时,也可以按这个例•子来进行另外,当k 点数目变化后,此SIGMA值也会要再进行优化85 k 点优化•以fcc 结构Al 的计算为例进行说明:•这个优化的过程可以用下面的脚本程序run_k 来完成:•#!/bin/sh•rm WAVECAR•for i in 5 7 9 11 13 15•do•cat > KPOINTS <>comment•done86 k 点数目或k-mesh 大小的优化•INCAR 以一般做静态计算时的情况来设置。

•SYSTEM = Al-fcc•ENCUT = 250•ISTART = 0 ; ICHARG = 2•ISMEAR = -5•PREC = Accurate•计算完后得到k 点数目与能量的对应值,总能变化在0.001eV 左右就非常足够了,然后由此•来选择合适的k 点数目87 Si能带结构和DOS•结构优化INCAR.relax•SYSTEM=Si-Diamond•ISTART=0;ICHARG=2•ISMEAR=0•SIGMA=0.10•EDIFF=1E-4•IBRION=2;ISIF=3•NSW=60•EDIFFG=-1E-3•PREC=Accurate•静态计算INCAR.static•SYSTEM=Si-Diamond•ISTART=0•ICHARG=2•ENCUT=500•ISMEAR=-5•PREC=Accurate88 Si能带结构和DOS•非自洽迭代INCAR.dos•SYSTEM=Si-Diamond•ISTART=1•ICHARG=11•ENCUT=500•ISMEAR=-5•SIGMA=0.10•PREC=Accurate一般计算 KPOINTS.static•Automatic generation•0•Monhkorst-Pack•11 11 11•0 0 089 KPOINTS文件文件一般计算 KPOINTS.dos•Automatic generation•0•Monhkorst-Pack•21 21 21•0 0 0能带计算 KPOINTS.dos•10•line-mode•rec•0.5 0.5 0.5 L•0.0 0.0 0.0 G•0.0 0.0 0.0 G•0.5 0.0 0.5 X•0.5 0.0 0.5 X•0.625 0.25 0.625•0.625 0.25 0.625•0.75 0.25 0.5•0.75 0.25 0.5•0.5 0.5 0.5 L90 电荷密度计算电荷密度计算•1.步骤• 1. 结构优化 • INCAR.relax和 KPOINTS.static• 2.静态计算 • INCAR.static和KPOINTS.static• 把CONTCAR复制到POSCAR 91 电荷密度计算电荷密度计算92 能带结构能带结构•步骤• 1.结构优化• INCAR.relax• 2.静态计算• INCAR.static和KPOINTS.static• 3.非弛豫计算• INCAR.dos 和KPOINTS.static93 能带结构能带结构 (教案图像)(教案图像)94 DOS 计算计算•步骤• 1.结构优化• INCAR.relax• 2.静态计算• INCAR.static和KPOINTS.static• 3.非弛豫计算• INCAR.dos 和KPOINTS.dos95 DOS 计算计算96 。

下载提示
相似文档
正为您匹配相似的精品文档