| 查看: 5325 | 回复: 26 | ||||
| 【奖励】 本帖被评价11次,作者zzgyb增加金币 11 个 | ||||
| 当前主题已经存档。 | ||||
| 当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖 | ||||
[资源]
初学VASP(一) what's it?
|
||||
|
首先介绍参考文档 ftp://10.76.120.7/pub/软件使用介绍/VASP.pdf http://cms.mpi.univie.ac.at/vasp/vasp/vasp.html VASP = Vienna Ab-initio Simulation Package VASP is a complex package for performing ab-initio quantum-mechanical molecular dynamics (MD) simulations using pseudopotentials (如超软赝势US-PP) or the projector-augmented wave (PAW) method and a plane wave basis set. The approach implemented in VASP is based on the (finite-temperature) local-density approximation with the free energy as variational quantity and an exact evaluation of the instantaneous electronic ground state at each MD time step. 它的好处主要包括 基组小适于第一行元素和过渡金属, 大体系计算快(<4000价电子), 适于平行计算(Unix/Linux) 其他特性还包括自动对称性分析、加速收敛算法另文涉及。 一个简单的VASP作业主要涉及四个输入文件: INCAR(作业细节) POSCAR(体系坐标) POTCAR(赝势) KPONITS(k空间描述) [ Last edited by wuli8 on 2009-6-13 at 21:28 ] |
» 收录本帖的淘帖专辑推荐
我的淘贴 | VASP资料 |
» 猜你喜欢
求国际会议网站
已经有1人回复
求取一些关于纳米材料和纳米技术相关的英文PPT。
已经有0人回复
物理学I论文润色/翻译怎么收费?
已经有182人回复
【复旦大学】二维材料方向招收2026年博士研究生1名
已经有0人回复
北京纳米能源与系统研究所 王中林院士/曹南颖研究员课题组2026级硕/博/博后招生
已经有10人回复
荷兰Utrecht University超快太赫兹光谱王海教授课题招收2026 CSC博士生
已经有19人回复
反铁磁体中的磁性切换:两种不同的机制已成功可视化
已经有0人回复
26申博推荐:南京航空航天大学国际前沿院光学方向招收博士生!
已经有0人回复
求标准粉末衍射卡号 ICDD 01-076-1802
已经有0人回复
初学VASP(六) 最重要的INCAR参数
|
INCAR是决定how to do 的文件 限于能力,只对部分最基本的一些参数(>,没有这个标志的参数都是可以不出现的) 详细说明,在这里只是简单介绍这些参数的设置,详细的问题在后文具体示例中展开。 部分可能会干扰VASP运行的参数在这里被刻意隐去了,需要的同学还是请查看VASP自带 的帮助文档原文。 参数列表如下: >SYSTEM name of System 任务的名字 *** >NWRITE verbosity write-flag (how much is written) 输出内容详细程度 0-3 缺省2 如果是做长时间动力学计算的话 最好选0或1(首末步/每步核运动输出) 据说也可以结合shell的tail或grep命令手动输出 >ISTART startjob: restart选项 0-3 缺省0/1 for 无/有 前次计算的WAVECAR(波函数) 1 'restart with constant energy cut-off' 2 'restart with constant basis set' 3 'full restart including wave function and charge prediction' ICHARG charge: 1-file 2-atom 10-const Default:if ISTART=0 2 else 0 ISPIN spin polarized calculation (2-yes 1-no) default 2 MAGMOM initial mag moment / atom Default NIONS*1 INIWAV initial electr wf. : 0-lowe 1-rand Default 1 only used for start jobs (ISTART=0) IDIPOL calculate monopole/dipole and quadrupole corrections 1-3 只计算第一/二/三晶矢方向 适于slab的计算 4 全部计算 尤其适于就算孤立分子 >PREC precession: medium, high or low(VASP.4.5+ also: normal, accurate) Default: Medium VASP4.5+采用了优化的accurate来替代high,所以一般不推荐使用 high。不过high可以确保'绝对收敛',作为参考值有时也是必要的。 同样受推荐的是normal,作为日常计算选项,可惜的是说明文档提供的信息不足。 受PREC影响的参数有四类:ENCUT; NGX,NGY,NGZ; NGXF, NGYF, NGZF; ROPT 如果设置了PREC,这些参数就都不需要出现了 当然直接设置相应的参数也是同样效果的,这里不展开了,随后详释 >ENCUT energy cutoff in eV : default taken from POTCAR-file important! 重要到几乎最好不要手工去设置 除非文献告诉你要用多少,或者经过结果可靠性的验证 当然,为了测试一下提交的任务,也不妨先设个较小的值 附加说明: 当且仅当POTCAR里头没有设置ENCUT时(其实貌似没有才是常态),才受PREC设置影 响从POTCAR里找出相应的ENMAX/ENMIN值来设置。 PREC= Low Medium Accurate High ENCUT= ENMIN ENMAX ENMAX 130%ENMAX 对于多个元素的POTCAR不同的ENMAX/ENMIN,都取最大值 >NGX,NGY,NGZ: FFT mesh for wavefunctions >NGFX, NGFY, NGFZ: FFT mesh for charges 也是两类重要的最好不要去动的参数,PREC设置将从POTCAR中自动读取。 PREC=High,Accurate 2倍值,用来避免wrap around errors得到精确解 PREC=Low,Medium,Normal 3/4 也已经足够精确到 1 meV/atom >LREAL: Default= .FALSE. 赝势的非局域部分用到的一个积分在倒格空间或者实空间都可以求值。这个选项就 是决定是在哪个空间里求。在倒格空间里,采用平面波基组求解,在实空间里,采用积 分球求解。 缺省是.FALSE,即不在实空间求。但效率会低一些。 其他选项是 O or On,A or Auto 和.True.。 On和.TRUE.的差别在于是否使用King-Smith算法优化,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 1e-2 ( ROPT=0.01) PREC= Med accuracy 2e-3 ( ROPT=0.002) PREC= High accuracy 2e-4 ( ROPT=2E-4) >NELM, NELMIN and NELMDL nr. of electronic steps Default 最大电子自洽循环次数 NELM = 60 最小次数 NELMIN = 2 弛豫次数 NELMDL = -5 if ISTART=0, INIWAV=1, and IALGO=8 -12 if ISTART=0, INIWAV=1, and IALGO=48 0 else 如果初始的波函数采取随机赋值,即ISTART=0, INIWAV=1,那么很可能开始的值比较离 谱,那么在第一步核运动循环之前采用NELMDL(负值)步的非自洽(保留初始的H)步计算将 减少计算所需的时间。 如果NELMDL取正值,将在每次核运动之后附加指定次数的弛豫步,目前不知道可以干嘛 >EDIFF 电子SC循环的收敛精度 缺省:1e-4 注意,即使EDIFF=0,NELM步也会执行 >EDIFFG 核运动的收敛精度 缺省:EDIFF*10 (总能量) EDIFFG<0 则在所有的力都小于EDIFFG时停止 EDIFFG=0 则在NSW步后停止 此参数不支持MD,仅用于Relax >NSW 指定核运动步数 缺省: 0 NBLOCK and KBLOCK inner block; outer block Default NBLOCK = 1 KBLOCK = NSW >IBRION ionic relaxation: -1-Fixed 0-MD 1-quasi-New 2-CG 3-Damp 5-freq Default if NSW=0 or 1 IBRION=-1 else IBRION=0 这个参数是和ISIF;IALGO/ALGO一起决定怎么算的最重要的参数 1-3 是三种Relax的方法,受ISIF决定是否固定核位置、晶胞大小和形状 0 是标准的ab-initio MD,不受ISIF影响,即不改变晶胞大小和形状 5 大概是和0差不多吧?支持Hessian和Freq(仅Г点)的计算以及部分固定的MD 详细的要在示例中具体情况具体分析了。 >ISIF calculate stress and what to relax Default if IBRION=0 (MD) 0 else 2 ISIF│calculate │ calculate │relax │ change │ change │ force │stress tensor │ions │ cell shape │cell volume ──┼─────┼───────┼───┼──────┼────── 0 │ yes │ no │yes │ no │no 1 │ yes │ trace only │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 Trace only means that only the total pressure IWAVPR prediction of wf.: 0-non 1-charg 2-wave 3-comb Default if IBRION=0 (MD) 2 if IBRION=1,2 (relaxation) 1 else (static calculation) 0 以上选项保存TMPCAR +10 则全部使用内存,不保存此文件 IWAVPR determines how wave functions and/or charge density are extrapolated from one ionic configuration to the next configuration. >ISYM symmetry: 0-nonsym 1-usesym 是否使用对称性 Default 1 SYMPREC determines precision of the positions in POSCAR file. Default 1e-5 LCORR Harris-correction to forces. Default .TRUE. >POTIM time-step for ion-motion (fs) Default IBRION=0 (MD) no default,必须指定,MD每步步长 IBRION=1,2,3 (relaxation) 0.5 最小化的'scaling constant',尤其是IBRION=1 >TEBEG, TEEND temperature during run (MD有效) Default: TEBEG = 0 TEEND = TEBEG 注意VASP的温度定义与实际温度有细微的差别,所以 TEBEG=T×(N-1)/N T为实际温度,N为原子数 SMASS 控制MD中的速度模拟方法 default -3 微正则系综(总自由能不变) -2 保持初速度不变 -1 每NBLOCK步调整速度,来保证动能连续 >=0 Nosé算法模拟正则系综,(不懂-,-) NPACO and APACO NPACO : number of slots for pair correlation (PC) function. Default 256 APACO : maximum distance for the evaluation of PC function in A. Default 16 简单说就是在不超过APACO的NPACO个距离上求成对相关函PCF RWIGS Wigner-Seitz半径 DOS计算用 >NELECT 总电子数 如果系统不是电中性的就必须设置,所带电荷作为均一的背景电子气考虑 NUPDOWN default不考虑电子自旋态改变的可能 EMIN, EMAX energy-range for DOSCAR file >ISMEAR part. occupancies: -5 tet with Blochl -4-tet -1-fermi 0-gaus >0 MP 采用所谓部分占有波函数,用一个函数来平滑积分,尤其是对于金属体系可减少k点 Default ISMEAR = 1 如果在KPOINTS里使用了tetrahedra方法 推荐ISMEAR=5 SIGMA determines the width of the smearing in eV Default SIGMA = 0.2 >ALGO algorithm: Normal (Davidson) | Fast (mixed)| Very_Fast (RMM-DIIS) >IALGO algorithm: use only 48 (RMM-DIIS) or 38(Davidson) or 8(CG) Default IALGO = 38 for VASP4.5 算法是最重要的参数之一。一般VASP推荐使用的是以上三种算法,一般来说8/38是初期 比较快收敛,在接近平衡时采用48较快,在初期或MD时使用48可能会遇到不收敛的情况 。也可以使用ALGO参数来替代IALGO,设置Fast,VASP会先用38,再自动切换到48。 各种算法只要收敛,结果应该一致。 另一个可能有用的选项是-1。不进行实际的计算,只对重要的步骤做计算测试,并将测 试得到的各部分耗时输出在OUTPUT里。 VOSKOWN use VWN interpolation 算法,default 0 不用,如果使用了PW91或者需要计 算磁性质,不妨设为1 用 mixing tag & MAXMIX IMIX = type of mixing AMIX = linear mixing parameter AMIN = minimal mixing parameter BMIX = cutoff wave vector for Kerker mixing scheme AMIX_MAG = linear mixing parameter for magnetization BMIX_MAG = cutoff wave vector for Kerker mixing scheme for mag. WC = weight factor for each step in Broyden mixing scheme INIMIX = type of initial mixing in Broyden mixing scheme MIXPRE = type of preconditioning in Broyden mixing scheme MAXMIX = maximum number steps stored in Broyden mixer Default for US-PP non-magnetic IMIX = 4 AMIX = 0.8 BMIX = 1.0 WC = 1000. INIMIX = 1 MIXPRE = 1 MAXMIX = -45 值得注意的是,在MD或者Relax的时候,设置MAXMIX(>0,一般约3倍的电子SC步数),可能 会大大减少核运动步数。 但是同时会增加对内存的要求。 LWAVE,LCHARG and LVTOT create WAVECAR/CHGCAR/LOCPOT LELF create ELFCAR LORBIT create PROOUT 输出文件的选项 NPAR 并行计算band的节点数,每一个节点计算一个band当然可以提高并行效率,减少通 讯量,不过貌似现在硬件的主要限制还是内存,而这个选项的使用可能会大幅增加内存 的需求 >NBANDS 总能带数。 之所以把它放在最后,是因为它对于解决内存需求的重要性。计算需要大量的 能带(空带),至少要1个空带(否则VASP会给出警告)。一般NBANDS=NELECT/2+NIONS/2 以上可得到较精确的结果,如果内存不够就只好减少NBANDS,在牺牲精度和体系大小之 间平衡了。 最后提示一下大多数参数的首字母代表了参数的性质 I 初始化 L 逻辑开关 E 能量 N 数目 T 温度 便于记忆 ![]() [ Last edited by zzgyb on 2008-1-27 at 14:43 ] |
6楼2008-01-27 14:38:13
初学VASP(二) 布里赫定理
|
本文简单介绍点能带理论的基础知识 以利于后文讨论 布里赫(F.Bloch) 参考书:《固体能带理论》谢希德 陆栋 主编 Bloch定理 周期性势场的单电子薛定谔方程的非简并解和适当选择组合系数的简并解同时 是平移算符T(Rl)的属于本征值exp(ik·Rl)的本征函数 数学表示: T(Rl)ψn(k,r) = ψn(k,r+Rl) = exp(ik·Rl)·ψn(k,r) ψn(k,r)称为Bloch函数,用它描写的电子也称为布里赫电子 推论一: 晶格电子可用通过晶格周期性调幅的平面波表示。由此我们知道k的物理意义 波矢 推论二: 若Km·Rl = 2nπ,即Km为倒格矢,那么 ψn(k,r) = ψn(k+Km,r) 所以我们将k值限定在一个包括所有不等价k的区域求解薛定谔方程,这个区域称为 布里渊区(Brillouin,没错,就是量化课上CI方法中最重要的基石Brillouin定理的那位 )在布里渊区,对于每个n,En(k)是一个k的连续、可区分(非简并情况)的函数,称为能带 ,所有的能带称为能带结构。 ok 那么实际上VASP的计算就是利用以上定理,通过T算符的变换,将实空间(r空间)和动 量空间(k空间)联系起来,利用晶格的周期性简化计算,所以在后面的讨论中将常出现 band,k-points,projectors in real space等概念。 [ Last edited by zzgyb on 2008-1-27 at 14:39 ] |
2楼2008-01-27 14:37:26
初学VASP(三) 描述原子坐标
|
POSCAR = position + CAR 第1行:任意文字注释 第2行:晶格常数,单位A,后面所有的长度值得自原值除以此值 a=b=c时取a即可,否则个人习惯取三者最大 若取负值,则为晶胞体积,单位A3 第3-5行:定义晶矢 参见《固体量子化学——材料化学的理论基础》赵成大 如 对于正交晶体 a=20.022 b=19.899 c=13.383 α=β=γ=90 可以这样定义 20.022 1.00000 0.00000 0.00000 0.00000 0.99386 0.00000 0.00000 0.00000 0.66841 又如 对于面心立方晶体 a=b=c=3.57 α=β=γ=90 可以定义如下 3.57 0.0 0.5 0.5 (1/2(b+c)) 0.5 0.0 0.5 (1/2(a+c)) 0.5 0.5 0.0 (1/2(a+b)) 第6行:每种元素的原子数,特别注意顺序,要与下面的坐标顺序以及POTCAR中 的顺序一致 第7行:可省略,无需空行。 做动力学时,是否需要固定部分离子的坐标。若是,此行以'S'或者's'首字即可。 第8行开始为离子的坐标,格式为 option line coordinate1 of element1 coordinate2 of element1 ... coordinateN of element1 option line coordinate1 of element2 coordinate2 of element2 ... coordinateM of element2 ... 其中,option line指定输入坐标的格式,除了第一个以外,如果后面的输入格式同前, 则都可以无空行省略。 option line可指定的输入坐标格式有两种 'D'or'd' for direct mode 'C'or'c'or'K'or'k' for cartesian mode 顾名思义,前者是定义在三个晶矢方向上的坐标 R=R1×x+R2×y+R3×z R1,R2,R3为前面的晶矢,x,y,z为输入的三个坐标,R为坐标位矢 而后者只是简单的将直角坐标除以前面第二行定义的晶胞常数 两者可以混用,但不推荐。 如果第7行设定了S(Selective Dynamic),则可以用以下形式定义各坐标是否可以移动 Selective dynamics Cartesian 0.00 0.00 0.00 T T F 0.25 0.25 0.25 F F F [ Last edited by zzgyb on 2008-1-27 at 14:40 ] |
3楼2008-01-27 14:37:44
初学VASP(四) k点的选择
|
如前所述 The Bloch theorem changes the problem of calculating an infinite number of electronic wavefucntions to one of calculating a finite number of wavefunctions at an infinite number of k-points. (参见CASTEP的帮助文档,他和 VASP是亲兄弟)。 所以呢,一般来说,k点越密越多,计算精度也越高,当然计算成本也越高。 嗯,对于k点的需求,金属>>半导体,绝缘体,不过呢,很多时候主要还是受硬件限制 简约化可以使k点的数目大大下降。对于原子数较多的体系的计算,就需要谨慎的尝试 k点数目,在避免或者预先评估wrap-around error的前提下尽量减少k点数目。 另一个问题是k空间网格(k-points grid)的位置和形状, 是否包括Г点(Gamma点,也可理解为原点)?(一般不包括的话很可能会带来误差,尤其 是使用了tetrahedron方法的时候。暂时还不知道不包括的好处,为了减少k点?) 方形?线形?还是长方形?或者奇形怪状? :) 后文另述。那么现在来看看KPOINTS file的结构: Line1: comment line 注释行 no problem Line2: k点总数 或者 '0'自动生成网格(Automatic k-mesh generation) 如果是前者,给出k点总数,又分两种情况 M.全手动 Entering all k-points explicitly Line3: 输入格式标识。直角坐标 (Cartesian)或者 倒格坐标(Reciprocal) 同样的 'cCkK' for Cartesian,其他首字母则自动切换到 Reciprocal Line4-n: 逐个k点的描述。 格式为 x y z W。 xyz是三个坐标,W是权重。所有k点的权 重相互之间的比例对了就行,VASP会自动归一的 注意C坐标和R坐标的定义 C: k=(2π/a)(x y z) R: k=x*b1+y*b2+z*b3 b1-3为倒格基矢 (这里我们看到xyz只是代表了坐标的顺序,与坐标轴无关) 比如一些常用的高对称性点的C和R坐标: Point Cartesian coordinates Reciprocal coordinates (units of 2pi/a) (units of b1,b2,b3) ------------------------------------------------------ G ( 0 0 0 ) ( 0 0 0 ) X ( 0 0 1 ) ( 1/2 1/2 0 ) W ( 1/2 0 1 ) ( 1/2 3/4 1/4 ) K ( 3/4 3/4 0 ) ( 3/8 3/8 3/4 ) L ( 1/2 1/2 1/2 ) ( 1/2 1/2 1/2 ) 输入示例: Example file 4 Cartesian 0.0 0.0 0.0 1. 0.0 0.0 0.5 1. 0.0 0.5 0.5 2. 0.5 0.5 0.5 4. 一般如非必要,可以先用自动模式生成k点,VASP会自动生成一个简约化后的k点矩阵, 存于IBZKPT file,可以直接复制里面的数据到KPOINTS file来用,其实这也是这个输入 法的主要用途,为了减少重复自动生成格点的时间。 另一个用途是为了做精确的DOS(Density of status)的计算,由于这类计算所需k点数极 大,通过全手动尽可能的优化k点也就必需了。 L.半手动/线形模式 Strings of k-points for bandstructure calculations 看到啦,对于能带结构的计算,同前面的理由,需要精确的选取k点,在指定的高对称性 方向上生成指定数目的k点。 Line2: 指定两点间生成的k点数 不同于全自动的总k点数 Line2.5: 'L' for Line-mode 表示是线形模式 Line3: 输入格式标识。同前。C or R Line4-n: 每行描述一个点 格式为 x y z。每两行的点连成一线,在两点间生成指定数 目的k点。每两行两行之间以空行区分(不空的话,VASP可能也认得出,没试过) 比如: 10 ! 10 intersections Line-mode rec 0 0 0 ! gamma 0.5 0.5 0 ! X 0.5 0.5 0 ! X 0.5 0.75 0.25 ! W ok,那么更常用的方法是让VASP自动生成网格 Line2: 0 !number of k-points = 0 ->automatic generation scheme (!后面字符为注释) Line3: A for fully automatic or G for Г/Gamma or M for Monkhorst-Pack 若都不是这些首字母,则自动切换为高级模式。 A mode 全自动模式,可以看作以Г点为圆心以l为半径做圆,当然各晶格矢不同时,相 应的圆就拉成了椭圆,来确保三个倒格矢方向上覆盖的k点数为l Line4:length (l) Useful values for the length vary between 10 (large gap insulators) and 100 (d-metals). 进一步的做法是分别指定三个倒格矢方向上的格点数N1,N2,N3。G mode Line4: N1 N2 N3 Line5: s1 s2 s3 偏移原点的位矢 一般设成 0 0 0 啦。 以及Monkhorst-Pack法,生成的格点不包括Г点,从Г点周围1/2长度处开始取点。 M mode Line4: N1 N2 N3 Line5: s1 s2 s3 同上 所谓的高级模式,就是用C坐标或者R坐标直接输入新的基矢 如 c c 0.25 0 0 0.25 0 0 0 0.25 0 0 0.25 0 0 0 0.25 0 0 0.25 0.0 0.0 0.0 0.5 0.5 0.5 分别等价于 g m 4 4 4 4 4 4 0 0 0 0 0 0 因为存在这种等价关系,所以一般也没有必要使用高级模式 好啦,就这些。最后提醒一点,VASP的帮助文档特别提醒,对于六方晶系,不要用M来自 动生成格点,而要用G。 关于tetrahedra方法,帮助文档说用于全手动模式,可选。具体设定原文如下: In this case, the next line must start with 'T' or 't' signaling that this connection list is supplied. On the next line after this 'control line' one must enter the number of tetrahedra and the volume weight for a single tetrahedron (all tetrahedra must have the same volume). The volume weight is simply the ratio between the tetrahedron volume and the volume of the (total) Brillouin zone. Then a list with the (symmetry degeneration) weight and the four corner points of each tetrahedron follows (four integers which represent the indices to the points in the k-point list given above, 1 corresponds to the first entry in the list). Warning: In contrast to the weighting factors for each k-point you must provide the correct 'volume weight' and (symmetry degeneration) weight for each tetrahedron - no internal renormalization will be done by VASP! 示例: Example file 4 Cartesian 0.0 0.0 0.0 1. 0.0 0.0 0.5 1. 0.0 0.5 0.5 2. 0.5 0.5 0.5 4. Tetrahedra 1 0.183333333333333 6 1 2 3 4 具体请参见帮助文档8.4节 [ Last edited by zzgyb on 2008-1-27 at 14:41 ] |
4楼2008-01-27 14:37:53













回复此楼
