初学vaspWord格式文档下载.docx
《初学vaspWord格式文档下载.docx》由会员分享,可在线阅读,更多相关《初学vaspWord格式文档下载.docx(17页珍藏版)》请在冰点文库上搜索。
![初学vaspWord格式文档下载.docx](https://file1.bingdoc.com/fileroot1/2023-5/1/916ff79c-05b9-4f3b-b3d5-5a1c5318e084/916ff79c-05b9-4f3b-b3d5-5a1c5318e0841.gif)
ok那么实际上VASP的计算就是利用以上定理,通过T算符的变换,将实空间(r空间)和动
量空间(k空间)联系起来,利用晶格的周期性简化计算,所以在后面的讨论中将常出现
band,k-points,projectorsinrealspace等概念。
[Lasteditedbyzzgybon2008-1-27at14:
39]
POSCAR=position+CAR
第1行:
任意文字注释
第2行:
晶格常数,单位A,后面所有的长度值得自原值除以此值
a=b=c时取a即可,否则个人习惯取三者最大
若取负值,则为晶胞体积,单位A3
第3-5行:
定义晶矢参见《固体量子化学——材料化学的理论基础》赵成大
如对于正交晶体a=20.022b=19.899c=13.383α=β=γ=90
可以这样定义
20.022
1.000000.000000.00000
0.000000.993860.00000
0.000000.000000.66841
又如对于面心立方晶体a=b=c=3.57α=β=γ=90
可以定义如下
3.57
0.00.50.5
(1/2(b+c))
0.50.00.5
(1/2(a+c))
0.50.50.0
(1/2(a+b))
第6行:
每种元素的原子数,特别注意顺序,要与下面的坐标顺序以及POTCAR中
的顺序一致
第7行:
可省略,无需空行。
做动力学时,是否需要固定部分离子的坐标。
若是,此行以'
S'
或者'
s'
首字即可。
第8行开始为离子的坐标,格式为
optionline
coordinate1ofelement1
coordinate2ofelement1
...
coordinateNofelement1
coordinate1ofelement2
coordinate2ofelement2
coordinateMofelement2
其中,optionline指定输入坐标的格式,除了第一个以外,如果后面的输入格式同前,
则都可以无空行省略。
optionline可指定的输入坐标格式有两种
'
D'
or'
d'
fordirectmode
C'
c'
K'
k'
forcartesianmode
顾名思义,前者是定义在三个晶矢方向上的坐标
R=R1×
x+R2×
y+R3×
zR1,R2,R3为前面的晶矢,x,y,z为输入的三个坐标,R为坐标位矢
而后者只是简单的将直角坐标除以前面第二行定义的晶胞常数
两者可以混用,但不推荐。
如果第7行设定了S(SelectiveDynamic),则可以用以下形式定义各坐标是否可以移动
Selectivedynamics
Cartesian
0.000.000.00TTF
0.250.250.25FFF
40]
如前所述
TheBlochtheoremchangestheproblemofcalculatinganinfinitenumberof
electronicwavefucntionstooneofcalculatingafinitenumberof
wavefunctionsataninfinitenumberofk-points.(参见CASTEP的帮助文档,他和
VASP是亲兄弟)。
所以呢,一般来说,k点越密越多,计算精度也越高,当然计算成本也越高。
嗯,对于k点的需求,金属>
>
半导体,绝缘体,不过呢,很多时候主要还是受硬件限制
简约化可以使k点的数目大大下降。
对于原子数较多的体系的计算,就需要谨慎的尝试
k点数目,在避免或者预先评估wrap-arounderror的前提下尽量减少k点数目。
另一个问题是k空间网格(k-pointsgrid)的位置和形状,
是否包括Г点(Gamma点,也可理解为原点)?
(一般不包括的话很可能会带来误差,尤其
是使用了tetrahedron方法的时候。
暂时还不知道不包括的好处,为了减少k点?
)
方形?
线形?
还是长方形?
或者奇形怪状?
:
后文另述。
那么现在来看看KPOINTSfile的结构:
Line1:
commentline注释行noproblem
Line2:
k点总数或者'
0'
自动生成网格(Automatick-meshgeneration)
如果是前者,给出k点总数,又分两种情况
M.全手动Enteringallk-pointsexplicitly
Line3:
输入格式标识。
直角坐标(Cartesian)或者倒格坐标(Reciprocal)
同样的'
cCkK'
forCartesian,其他首字母则自动切换到Reciprocal
Line4-n:
逐个k点的描述。
格式为xyzW。
xyz是三个坐标,W是权重。
所有k点的权
重相互之间的比例对了就行,VASP会自动归一的
注意C坐标和R坐标的定义
C:
k=(2π/a)(xyz)R:
k=x*b1+y*b2+z*b3b1-3为倒格基矢
(这里我们看到xyz只是代表了坐标的顺序,与坐标轴无关)
比如一些常用的高对称性点的C和R坐标:
Point
Cartesiancoordinates
Reciprocalcoordinates
(unitsof2pi/a)
(unitsofb1,b2,b3)
------------------------------------------------------
G
(
0
)
X
1
(1/21/2
W
(1/2
(1/23/41/4
K
(3/43/4
(3/83/83/4
L
(1/21/21/2)
(1/21/21/2
输入示例:
Examplefile
4
0.0
1.
0.5
2.
4.
一般如非必要,可以先用自动模式生成k点,VASP会自动生成一个简约化后的k点矩阵,
存于IBZKPTfile,可以直接复制里面的数据到KPOINTSfile来用,其实这也是这个输入
法的主要用途,为了减少重复自动生成格点的时间。
另一个用途是为了做精确的DOS(Densityofstatus)的计算,由于这类计算所需k点数极
大,通过全手动尽可能的优化k点也就必需了。
L.半手动/线形模式Stringsofk-pointsforbandstructurecalculations
看到啦,对于能带结构的计算,同前面的理由,需要精确的选取k点,在指定的高对称性
方向上生成指定数目的k点。
指定两点间生成的k点数不同于全自动的总k点数
Line2.5:
'
L'
forLine-mode表示是线形模式
同前。
CorR
每行描述一个点格式为xyz。
每两行的点连成一线,在两点间生成指定数
目的k点。
每两行两行之间以空行区分(不空的话,VASP可能也认得出,没试过)
比如:
10
!
10intersections
Line-mode
rec
gamma
0.50.50
X
0.50.750.25
W
ok,那么更常用的方法是让VASP自动生成网格
0!
numberofk-points=0->
automaticgenerationscheme
(!
后面字符为注释)
AforfullyautomaticorGforГ/GammaorMforMonkhorst-Pack
若都不是这些首字母,则自动切换为高级模式。
Amode全自动模式,可以看作以Г点为圆心以l为半径做圆,当然各晶格矢不同时,相
应的圆就拉成了椭圆,来确保三个倒格矢方向上覆盖的k点数为l
Line4:
length(l)
Usefulvaluesforthelengthvarybetween10(largegapinsulators)and
100(d-metals).
进一步的做法是分别指定三个倒格矢方向上的格点数N1,N2,N3。
Gmode
Line4:
N1N2N3
Line5:
s1s2s3偏移原点的位矢一般设成000啦。
以及Monkhorst-Pack法,生成的格点不包括Г点,从Г点周围1/2长度处开始取点。
Mmode
s1s2s3同上
所谓的高级模式,就是用C坐标或者R坐标直接输入新的基矢
如
c
c
0.2500
0.2500
00.250
00.250
000.25
000.25
0.00.00.0
0.50.50.5
分别等价于
g
m
444
444
000
000
因为存在这种等价关系,所以一般也没有必要使用高级模式
好啦,就这些。
最后提醒一点,VASP的帮助文档特别提醒,对于六方晶系,不要用M来自
动生成格点,而要用G。
关于tetrahedra方法,帮助文档说用于全手动模式,可选。
具体设定原文如下:
Inthiscase,thenextlinemuststartwith'
T'
or'
t'
signalingthatthis
connectionlistissupplied.Onthenextlineafterthis'
controlline'
one
mustenterthenumberoftetrahedraandthevolumeweightforasingle
tetrahedron(alltetrahedramusthavethesamevolume).Thevolumeweight
issimplytheratiobetweenthetetrahedronvolumeandthevolumeofthe
(total)Brillouinzone.Thenalistwiththe(symmetrydegeneration)weight
andthefourcornerpointsofeachtetrahedronfollows(fourintegerswhich
representtheindicestothepointsinthek-pointlistgivenabove,1
correspondstothefirstentryinthelist).Warning:
Incontrasttothe
weightingfactorsforeachk-pointyoumustprovidethecorrect'
volume
weight'
and(symmetrydegeneration)weightforeachtetrahedron-no
internalrenormalizationwillbedonebyVASP!
示例:
Tetrahedra
0.183********3333
6
1234
具体请参见帮助文档8.4节
41]
POTCAR赝势文件
可以理解为分子力学模拟中的力场文件但包括的信息更多
VASP4.6将各元素优化的INCAR里的参数也包括在这里了,作为支持PREC的缺省选择
通常各元素的POTCAR已经包括在软件包里了
我们只需要按照POSCAR里的顺序,将各元素的POTCAR按顺序连接起来就可以了
如以下命令:
catfile1file2file3>
POTCAR
软件包自带的绝大多数赝势是超软赝势(US-PP)了,但不少元素有两个版本,如何
选取呢?
一个简单的办法是看后缀
标准的没有后缀_h硬一点_s软一点
_pv,_sv,_d就是说semi-core的p,s或者d也当做价态处理了
如果是数字的话,表示的可能是不同的半径截距
也可以参考各版本同目录下的V_RHFINfile,PSCTRfile
这两个文件告知该版本的赝势是如何生成的。
V_RHFINfile
Sc:
6pd2s1
8
21.
.002000
44.95590125.
.25E-05.300
200FCA12.00000
.7
1.0
.0
.5-320.88472.0000
2.0
.5
-34.42172.0000
1.5
-28.23666.0000
3.0
-3.79442.0000
-2.25916.0000
2.5
-.11132.0000
4.0
-.26991.0000
-.1000
.0000
第一行是注释行给出基本的信息
第二行是最重要的控制行
.002000
200FCA12.00000
J
Z
XION
N
AM
H
DELRVR
PHI
NC1|CHQCOR
|
GREEN
J-轨道数
Z-原子序数
XION-离子化程度一般设为0N-格点数
AM-原子质量
H-决定格点间距
DELRVR-自洽收敛标准
PHI-线性拟合参数NC1-最大自洽循环次数GREEN-是否存在初始的势
CH-交换相关能(XC)类型
Slater-XC
HLHedinLundquist(1971)
CACeperlyandAlderparameterizedbyJ.PerdewandZunger
WIWignerinterpolation
PBPerdew-Becke
PWPerdew-Wang86
LMLangreth-Mehl-Hu
91Perdew-Wang91
QCOR-非价键电子数(coreelectrons)
第三行开始是每个轨道的具体参数,依次为
nlj(=l±
1/2)原子轨道能占有率
PSCTRfileofLDA/H1.25
TITEL
=USH
LULTRA=
T
useultrasoftPP?
RWIGS
=
0.57
nndistance!
Wigner-Seitzradius
RCLOC
.65
NE
100
LCOR
.TRUE.
QCUT
-1
RMAX
=3.0!
coreradiusforproj-oper
Description
l
E
TYPRCUT
TYP
RCUT(cutoffradius)
15
0.80
23
1.25
15
-0.2
最重要的地方上面已经用颜色标出来啦:
说明一下,TYP是指赝势的类型,RCUT是半径截距,TYP可取的值如下:
正则
1BHS
2TM
3VAN
6XNC
7RRKJwavefunctionpossiblywithnode
15RRKJwavefunctionstrictlynonode
非正则+8
最后一个问题是LDAorGGA。
貌似没有定论目前。
这个最好是两个一起做做看啦。
或者看文献别人验证过哪个数据好。
其实据说目前最好的是PAW(P.E.Blochl,Phys.Rev.B50,17953(1994).,Phys.Rev.B59,
1758(1999).),PP已经落伍了,不过好像我们用的VASP不带这个,就不展开讨论了。
42]
INCAR是决定howtodo的文件
限于能力,只对部分最基本的一些参数(>
没有这个标志的参数都是可以不出现的)
详细说明,在这里只是简单介绍这些参数的设置,详细的问题在后文具体示例中展开。
部分可能会干扰VASP运行的参数在这里被刻意隐去了,需要的同学还是请查看VASP自带
的帮助文档原文。
参数列表如下:
SYSTEMnameofSystem
任务的名字***
NWRITEverbositywrite-flag(howmuchiswritten)
输出内容详细程度0-3缺省2
如果是做长时间动力学计算的话最好选0或1(首末步/每步核运动输出)
据说也可以结合shell的tail或grep命令手动输出
ISTARTstartjob:
restart选项0-3缺省0/1for无/有前次计算的WAVECAR(波函数)
1'
restartwithconstantenergycut-off'
2'
restartwithconstantbasiss