Ex01 VASP基本输入文件的准备(壹)

基本的输入文件,指的是VASP计算必不可少的输入文件,对新手来说先记住这四个文件的名字:INCAR,KPOINTS,POSCAR,POTCAR。具体是干嘛用的?不懂的话不要紧,后面我们会结合例子,慢慢介绍这几个文件的准备工作。

基本概念

准备输入文件, 脑子里要有下面几个概念:

  • Rubbish in,Rubbish out! 程序只负责算,对错由你决定!错误主要有3类:

    • 模型错误:也就是建模这一块出错了,主要对应的是POSCAR;
    • 计算参数:INCAR,KPOINTS,POTCAR
    • 提交任务的脚本或者命令出错。
  • 遇到不懂的参数: (思考 + 看官网)! (思考 + 看官网)! (思考 + 看官网)!

  • 重要的话说三遍,尽量不要去看网上那些乱七八糟的教程。如果英语不好,那么这是一个锻炼你阅读能力的好机会。通过查阅官网解决问题,可以保证你的血统纯正,进而提高你的杀伤力。
  • 所有的输入文件都只是文本而已。这句话的意思是:所有的输入文件都可以通过文本编辑器打开,比如:
    • Linux下面可以用Vim
    • Windows下用Notepad++
    • 杜绝使用Windows自带的文本编辑器:记事本,写字板。
  • 所有的输入文本没有尾缀,Windows用户可能习惯了带各种各样尾缀的文件,但是vasp里面的输入文件,没有尾缀且都是文本。 比如你使用Notepad++这个文本编辑器写了一个输入文件,直接并保存成 INCAR就可以了。如果不小心保存成了 INCAR.txt,那么直接将尾缀.txt删除即可。
  • 再次强调:对于Windows用户,本书中指的文本编辑器是:Notepad++。免费的软件,大家自己下载并安装。 请不要用写字板,记事本等编辑VASP的输入文件。如果你不听话,还是喜欢用它们,那么:
    • 出错,自己负责,有时候你会死的很惨,折腾很久可能都找不到哪里出错了;
    • 出错,自己检查有没有在提交任务前运行:dos2linux 这个命令转换下格式
  • 一步一步按照本书的练习进行操作,有问题,先记下来,如果后面没有得到解答,去《序言》找联系方式咨询大师兄。

VASP输入和输出文件

  • 有了上面的概念,我们就可以准备输入文件了。下面是官网列出VASP的输入和输出文件,in 代表输入,out代表输出。先声明一下:大家不要被下面这么多文件吓傻了,脑子里有个印象就行,很多文件可能穷奇你一生的计算都用不到,而且你以后会花很多时间在删这些乱七八糟的文件上面。对于新手的话,大家先简单过目一下即可。可以理解为,从未开过车的你,一下子钻到车里,首先要做的就是熟悉车内部的环境,具体什么功能、怎么回事,后面慢慢摸索。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    INCAR      in    **
    STOPCAR in
    stout out
    POTCAR in **
    KPOINTS in **
    IBZKPT out
    POSCAR in **
    CONTCAR out
    CHGCAR in/out
    CHG out
    WAVECAR in/out
    TMPCAR in/out
    EIGENVAL out
    DOSCAR out
    PROCAR out
    OSZICAR out
    PCDAT out
    XDATCAR out
    LOCPOT out
    ELFCAR out
    PROOUT out
  • 对于VASP计算来说,前面这一大堆中的 INCAR , KPOINTS, POSCAR 和POTCAR 是必不可少的输入文件,必须有!

    • INCAR 告诉VASP算什么,怎么算。
    • KPOINTS 包含计算的K点信息(K点是什么,这个问题很抽象,脑子里先记住,计算的时候必须有这个东西)。
    • POSCAR是计算模型结构的文字描述,也就是各个原子在xyz方向的坐标信息。
    • POTCAR对应的是计算过程中每个原子的平面波基组,描述体系中对应的原子核和电子的相关信息。
    • 提交任务的脚本或者命令,需要你自己准备,没有在列表里面。

注意

最新版的VASP中可以在INCAR中设置KPOINTS。但在涉及到计算能带的特殊K点时候,INCAR中就不可以直接设置了。所以,在本书中,KPOINTS是认为必须有的。请不要再纠结这个问题,也不要专门找我争论这个问题。如果你认为可以没有,那就是可以没有。至少本书中,我们会介绍KPOINTS文件的准备工作。

这一节,我们主要通过VASP官网中O原子的计算实例,来学习INCAR的文件准备工作。记住前面我们说的话,INCAR是纯文本。Windows用户,不要用记事本或者写字板打开。推荐使用Notepad++

简单说明

INCAR主要是告诉VASP我们要算什么以及计算的细节,INCAR准备的原则是:越简单越好不知道的,不理解的就不往里面放。 下面是给新手们的一些建议:

  • INCAR 中有很多参数,改变参数来控制计算细节,从而得到我们期望的结果。所以,记住:Rubbish in, Rubbish out。自己算什么,心里要有数。

  • 网上很多人发INCAR的教程,列了一堆参数进去,甚至长达两页,有些连默认值也放在里面了,恨不得把所有参数全部放进去。不过,请记住:那些令人眼花缭乱的只是唬人装逼用的,在实际计算中会严重拖你的后腿,占了那么多行,修改起来也费劲。

  • 熟知各个参数的数值意义,以及在不同计算任务中的设置至关重要。

  • 有人会说,那么多参数,怎么能记得过来? 放心,完全可以的。

    • 一方面,对于特定的体系,所需要的参数不同。如果你的课题比较稳定,那么你应该不会接触太多的参数。比如你专注于体系的能带结构,那么算过渡态的参数你就不会需要。

    • 另一方面,这些计算参数又不是一天两天能记住的,是一个长期积累的过程。随着时间的增长和个人经验的增加,自然而然地就记住了。

INCAR 的输入工作

打开编辑器,把下面几行挨个输入进去: (#以及后面的就不要输入了)

1
2
3
SYSTEM = O atom       # 氧元素符号,不是零!
ISMEAR = 0 # 是零,不是氧元素符号,对于分子或者原子,用0.
SIGMA = 0.01 # 对于分子或者原子,用0.01

INCAR的注意事项:

  • #后面写的是汉语,是给大家展示用的。 大家在写INCAR的时候,最好不要把汉语写进去,有可能会出错!
  • #号后面的内容对计算不会造成影响,主要作为注释用,解释这个参数干嘛用的,可以不用输入;

  • 每个参数后面跟着等号 =

  • 等号(=)前后可以有空格,也可以没有。ISMEAR=0ISMEAR = 0 是一样的,

  • 写INCAR的时候,不要使用 tab,用空格替换tab;

  • 官网有些旧的文件可能用的不是 # 号,而是 !, ! 可能会出错。最好的办法就是记住参数是干嘛用的,# 和 ! 都不写。

INCAR的详解

SYSTEM

SYSTEM 后面是该计算的说明。你的这个任务算的是什么,目的是什么,体系是什么?等等,这些都可以随便写在里面,随便的意思就是可以任意写。

  • SYSTEM = O atom 和 SYSTEM = I LOVE BigBro 和 SYSTEM = VASP, 除了多出几个字符外,对计算没有什么影响。
  • 情诗,骂人的话也可以写在 = 后面。但不建议大家在这一行里写一堆乱七八糟的东西,另外还是得避免把中文写在这里;
  • 当然,这一行有或者没有,对计算结果不会有任何影响,看着不爽也可以直接删除。

ISMEAR

ISMEAR这一项,目前需要记住的是:

  • 1)不同的值对应的是不同的展宽方法
  • 2)对于分子,原子的计算用0

下面是VASP官网的一些解释,新手暂时看不懂不要紧,把需要记住的这两条死死记住就可以了。

  • 对于半导体和绝缘体体系,ISMEAR的值取绝对不能大于0, 一般用0;
  • 对所有体系,如果想获取更加精确能量的时候用-5,但这时候如果K点数目小于3,程序则会罢工;
  • K 点少,半导体或者绝缘体,那么只能用 ISMEAR = 0;
  • 在DOS能带计算中,使用ISMEAR= -5 用于获取精确的信息。
  • 对于金属来说,ISMEAR的取值一般为>=0 的数值(0,1,2);
  • 保守地说,ISMEAR = 0 (Gaussian Smearing) 可以满足大部分的体系(金属,导体,半导体,分子);
  • 如果不知道怎么取ISMEAR,直接用0是一个很保险的做法。也可以测试不同的值对计算的影响,但是新手的话,即使测试完了,也不知道根据什么去判断对结果的影响。

SIGMA:

SIGMA的取值和ISMEAR息息相关,也就是和ISMEAR这个参数同时出现,设定。下面是一些基本的介绍:

  • 如果用了ISMEAR = -5; SIGMA的值可以忽略,也可以不管。(对于所有体系都适用);

  • 对于金属: ISMEAR = 1 或者0,非金属: ISMEAR= 0 的时候,一般取 SIGMA = 0.10 即可,默认值是0.20。不放心的话,用0.05。

  • 对于气体分子,原子体系(也就是你把分子或者原子放到一个box里面):死死记住下面组合就可以了, ISMEAR = 0; SIGMA = 0.01。

不过很多人都不放心,为了保险想测试一番。标准是: SIGMA的取值要保证OUTCAR 中的 entropy T*S 这一项,平均到每个原子上,要小于 1-2 meV。检查的时候可以用这个命令:

1
grep 'entropy T'  OUTCAR 

注意1:这里有两个单引号,不要输入的时候漏掉。

用这个命令,得出的能量除以体系中原子的数目(也就是平均到每个原子上),然后再和 0.001 eV 比较。如果小于,SIGMA取值OK,如果大于,再换个小点的数值进行测试。

注意2:这里的说的entropy,是因为ISMEAR展宽这个计算方法引入的,跟我们物理化学书里面的entropy完全是两码事。后面我们会介绍如何通过频率分析计算物理化学里面的Entropy。千万别把这个数值当成频率所对应的entropy。

INCAR的保存

输入完上面的几行,我们就可以保存INCAR文件了。这里需要注意的是:INCAR后面没有尾缀,所以:INCAR.txt是错误的。为避免这个问题:

  • Notepad++ 保存的时候,文件名为: INCAR,保存类型选择 Alltypes (.)。

  • 用Vim的筒子们直接将前面的内容保存成INCAR即可。

  • 将INCAR.txt 通过mv命令重命名为INCAR。

    1
    mv INCAR.txt INCAR -f

前面说了很多,对新手,可能会犯晕。不过不用担心,只要记住关键三点,我们就圆满完成本节的任务

  • INCAR是纯文本没有尾缀;

  • 算原子或者分子时:ISMEAR = 0, SIGMA = 0.01

  • Windows用户请使用Notepad++作为文本编辑器,不要使用自带的记事本或者写字板,如果使用了,计算前务必要通过dos2unix转换一下格式:

    1
    dos2unix INCAR 

上一节,我们学习了INCAR的简单准备工作。这一节,我们学习另外一个输入文件的写法:KPOINTS

简单说明

KPOINTS文件在计算中的作用,一方面决定了计算的精度,同时也影响计算所需要的时间。精度高,时间长,精度低,时间短。所以:合理设置KPOINTS文件,可以保证我们使用最少的时间,来获取准确可靠的结果。

KPOINTS的输入和保存

打开编辑器,把下面几行输入进去:

1
2
3
4
5
K-POINTS      #  第一行随便写都行,但不能没有
0 # 零,格子自动生成
Gamma # gamma点centered
1 1 1 # 1*1*1格子
0 0 0 # S1 S2 S3, 一般保持 0 0 0 不变。

详解:

  • 该KPOINTS 文件里面,共有5行,#号以及后面的不用输入;

  • 同INCAR的注释一样,不要在每一行后面使用 ! 来进行注释,要使用 #,且最好不要写中文。

  • 第一行:可以随便写内容,但不能没有;

  • 第二行:数字0,不是字母O,0 在这里表示的是自动生成K点。你可能注意到了,0前面有个空格,不过没关系,对计算不影响,可以删掉,也可以再加一个空格,后面的同样如此。 但是避免用tab输入,VASP有时候不识别tab键输入的空白部分,导致计算出错;

  • 第三行:VASP只认第一个字母,大小写均可。在这里Gamma和gamma,Gorge,gorge效果是一样的,当然这一行也可以直接写字母G或者g。

    • G表示的是以gamma点为中心生成网格。
    • 另外一种是原始的Monkhorst-Pack 网格,两者的区别是 M 或者 m 在 G的基础上在三个方向上平移了1/(2N)个单位。
    • G,也叫 gamma centered Monkhorst-Pack Grid;所以,gamma centered 只是MP网格的一种特殊情况。
  • 第四行,在xyz三个方向上生成对应数目的K点,本例是111;

    • 对于原子或者分子的计算,K点取一个gamma点就够了(1 1 1),也就是这个KPOINTS文件可以用于绝大多数的原子或者分子计算,不用再修改;
    • 但如果你要用ISMEAR = -5 来计算能量,那么就需要把 1 1 1 改成 2 2 2或者3 3 3。
  • 第五行,一般都写成 0 0 0 ,不用动即可;

  • 按照前面INCAR的方式保存文件,名字为KPOINTS。

KPOINTS的建议

K点在VASP计算中非常重要,大师兄给的一个建议是:

  • 一直用gamma centered,也就是第三行保持G不变。因为M平移之后,网格的对称性和晶胞的对称性会出现不匹配的情况,从而导致计算出错,尤其是对于六角晶系hexagonal的结构,必须用gamma centered!这一点,vasp官网说的很明确;其他的建议后续慢慢展开讨论。

  • 如非六角晶系的计算,如果已经设置的M算起来了,继续用M算就行,没必要改成G再重新算一遍;

  • 前面看不懂,没事。记住这一点,本节就圆满完成任务:气体分子,原子计算的时候,使用gamma点即可。

这一节,我们学习VASP计算中模型的文件:POSCAR

简单说明

POSCAR 里面包含了你要进行计算的模型结构信息。也就是你要研究的对象。POSCAR有自己固定的格式,每一行都有特定的含义,认真掌握这些,对于搭建模型非常有帮助。对于本节的例子:O原子的计算中,我们要把O原子放到一个格子里面,格子大小为:8 $\times$ 8 $\times$ 8 $\AA{^3}$。那么POSCAR应该这样写。

POSCAR的输入

1
2
3
4
5
6
7
8
9
O atom in a box 
1.0 # universal scaling parameters
8.0 0.0 0.0 # lattice vector a(1)
0.0 8.0 0.0 # lattice vector a(2)
0.0 0.0 8.0 # lattice vector a(3)
O # O element, not zero
1 # number of atoms
Cartesian # positions in cartesian coordinates
0 0 0 #

详解:

  • 第一行:同样随便写,但不能不写;

  • 第二行:Scale factor,称为缩放系数,这里是1.0;

  • 第三到五行:是组成格子的三条边的坐标信息;从原点出发,在xyz轴上分别取8$\AA$。这个很容易理解;

  • 第六行:体系中的元素,这里我们算的是氧原子,所以写:O,即氧的元素符号。需要注意的有以下几点:

    • vasp4.xx版本里面没有这一行,不过现在几乎没人用4.X的版本了;
    • O的符号和数字0容易混淆,一定要注意;
    • 第一个元素符号要顶格写,前面不要有空格,有可能会出错;
    • 如果计算文件夹里面,已经有与结构相一致的POTCAR,那么POSCAR里面即使删了这一行有不会影响计算,VASP会读取POTCAR中的元素信息,但输出文件CONTCAR中会把该行自动加上。(新手跳过)
  • 第七行:与第六行中元素相对应的原子数目,这里我们只有1个氧原子,所以写成1;

  • 第八行:体系中原子的坐标系,可以为笛卡尔坐标,也可以为分数坐标系。注意的有以下几点:

    • 这一行同KPOINTS的第三行一样,即只认第一个字母;
    • C或者c代表笛卡尔坐标, D或者d代表分数坐标系;
    • VASP输出文件CONTCAR里面采用的是分数坐标系。
  • 第九行:体系中原子的坐标信息。这里我们把O原子放到了原点(0.0 0.0 0.0)的位置,大家也可以随便放一个位置,比如:(4.0 5.0 6.0),(1.1 2.5 6.5)都是可以的。由于周期性的存在,不管你怎么放,相邻两个格子之间氧原子的距离都是一样的。

  • 写完之后,和INCAR,KPOINTS文件一样,直接保存成POSCAR即可。
两点说明
  • 第二行中的Scale factor还可以写成其他的数字,例如:写成2.0,则后面的格子以及原子坐标相关的数值都要除以2。一般来说,写成1.0即可,这样比较直观,清晰;

  • 笛卡尔和分数坐标系的区别是从原子的坐标行开始的(这个例子里面是第8行),即坐标前面的都保持完全一致。 也就是说,如果想从笛卡尔转换成分数坐标,我们只需将Cartesian改成Direct,然后修改后面的原子坐标,而Cartesian行前面的部分保持不变。

本节重点:

  • 学会写O原子在格子里面这个模型的POSCAR;
  • 知道每一行所代表的含义。

这一节,我们学习VASP计算中的赝势文件:POTCAR

简单说明

如果组里安装了VASP,则在某个目录下,一定会有对应的一套对应的赝势文件,本书默认大家已经知道去哪里找,不讨论从哪里下载POTCAR(小窍门:一般各个VASP相关的QQ群中,都会有打包的POTCAR文件)。在该目录下, 一般来说,会有LDA,PBE,和PW91这三个文件夹,主流的计算一般都是用PBE。当你进入PBE的文件夹后,就会找到各个元素所对应的POTCAR文件了。

POTCAR中各项的含义

POTCAR中有很多信息,对于大部分的参数,本人也是只认识字母,不知具体含义,所以只能介绍一下在实际计算中会用到的一些参数。我们用Fe的POTCAR中前面的几行作为一个例子,简单介绍一下。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
PAW_PBE Fe 06Sep2000
8.00000000000000000
parameters from PSCTR are:
VRHFIN =Fe: d7 s1
LEXCH = PE
EATOM = 594.4687 eV, 43.6922 Ry

TITEL = PAW_PBE Fe 06Sep2000
LULTRA = F use ultrasoft PP ?
IUNSCR = 1 unscreen: 0-lin 1-nonlin 2-no
RPACOR = 2.000 partial core radius
POMASS = 55.847; ZVAL = 8.000 mass and valenz
RCORE = 2.300 outmost cutoff radius
RWIGS = 2.460; RWIGS = 1.302 wigner-seitz radius (au A)
ENMAX = 267.883; ENMIN = 200.912 eV
RCLOC = 1.701 cutoff for local pot
LCOR = T correct aug charges
LPAW = T paw PP
EAUG = 511.368
DEXC = -.022
RMAX = 2.817 core radius for proj-oper
RAUG = 1.300 factor for augmentation sphere
RDEP = 2.442 radius for radial grids
QCUT = -4.437; QGAM = 8.874 optimization parameters

依个人的学习经验,VRHFIN, LEXCH,TITEL,ZVAL,ENMAX是用到最多的几个参数。

  • VRHFIN 用来看元素的价电子排布,如果你元素周期表倒背如流,可以忽略这个参数;
  • LEXCH 表示这个POTCAR对应的是GGA-PBE泛函;如果INCAR中不设定泛函,则默认通过这个参数来设定。
  • TITEL 就不用说了,指的是哪个元素,以及POTCAR发布的时间;
  • ZVAL 指的是实际上POTCAR中价电子的数目,尤其是做Bader电荷分析的时候,极其重要。
  • ENMAX 代表默认的截断能。与INCAR中的ENCUT这个参数相关。

当然,如果你进入文件夹,使用ls命令后,会发现:即使对于同一个元素来说,也可能会有很多不同的情况。比如:

  • 与GW 计算的对应的POTCAR,则标注为:Fe_GW 这样。(GW计算本人没接触过,这里就没有办法继续下去了);
  • 根据价电子的处理方式,分成了诸如:Fe,Fe_pv,Fe_sv的这样的情况。v是valence的缩写。pv代表把内层的p电子作为价电子来处理。sv代表则是把更内层的s电子也作为价电子来处理。具体到自己体系中的元素,可以结合元素周期表,以及ZVAL关键词所对应的价电子数目,来进行推断。
  • 此时,我们就需要学习一个非常有用的Linux命令了: grep。 下面是我们使用grep命令,来获取所有与Fe相关POTCAR的价电子信息。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
$ ls Fe*
Fe:
POTCAR PSCTR

Fe_GW:
POTCAR PSCTR

Fe_pv:
POTCAR PSCTR

Fe_sv:
POTCAR PSCTR

Fe_sv_GW:
POTCAR PSCTR

$ grep ZVAL Fe*/POTCAR
Fe/POTCAR: POMASS = 55.847; ZVAL = 8.000 mass and valenz
Fe_GW/POTCAR: POMASS = 55.847; ZVAL = 8.000 mass and valenz
Fe_pv/POTCAR: POMASS = 55.847; ZVAL = 14.000 mass and valenz
Fe_sv/POTCAR: POMASS = 55.847; ZVAL = 16.000 mass and valenz
Fe_sv_GW/POTCAR: POMASS = 55.847; ZVAL = 16.000 mass and valenz
  • 还有把内层d轨道考虑到价电子层里面去的,比如:Ge_d。
  • 某些元素,还有一些以 _h, _s 结尾的,应该是 hard和soft的缩写。带h的POTCAR中截断能比普通的要高出很多。带s的截断能要小很多。这里我们就可以通过grep 结合 ENMAX来查看一下:
1
2
3
4
5
6
7
$ grep ENMAX Ge*/POTCAR
Ge/POTCAR: ENMAX = 173.807; ENMIN = 130.355 eV
Ge_d/POTCAR: ENMAX = 310.294; ENMIN = 232.720 eV
Ge_d_GW/POTCAR: ENMAX = 375.434; ENMIN = 281.576 eV
Ge_GW/POTCAR: ENMAX = 173.807; ENMIN = 130.355 eV
Ge_h/POTCAR: ENMAX = 410.425; ENMIN = 307.818 eV
Ge_sv_GW/POTCAR: ENMAX = 410.425; ENMIN = 307.818 eV

POTCAR的选择

既然对于同一个元素,存在那么多的POTCAR类型,计算的时候我们改怎么选择呢?这里大师兄只能给的建议是:如果没有特别的需求,直接采用VASP官网推荐的即可。参考链接:

https://cms.mpi.univie.ac.at/vasp/vasp/Recommended_PAW_potentials_DFT_calculations_using_vasp_5_2.html

我们在计算的时候,根据体系中的元素,将这些元素的POTCAR结合起来,组成一个新的POTCAR,这个结合的步骤,我们需要用到Linux的另一个命令:cat。比如VASP官网的例子,体系中含有Al, C,H三种元素。

1
cat ~/pot/Al/POTCAR ~/pot/C/POTCAR ~/pot/H/POTCAR >POTCAR

通过这一行命令就可以把Al,C,H各自的POTCAR结合在一起。OUTCAR中的元素顺序一定要和POSCAR保持一致,否则计算会出错,为了避免计算出错,还有一些高级的方法,这个在后面会慢慢讲解。

本节讲的是O原子的计算,官网推荐的氧原子POTCAR,默认的截断能是400,价层有6个原子。直接把O这个文件夹中的POTCAR直接复制到INCAR所在的目录即可。

POTCAR检查常用的Linux命令:

查看POTCAR中的元素:

1
grep  TIT POTCAR

查看POTCAR的截断能:

1
grep  ENMAX POTCAR

查看POTCAR中元素的价电子数目:

1
grep  ZVAL POTCAR

举一反三,只要找到了关键词,我们就可以通过grep命令来进行查看。

总结:

这一节,我们简单介绍了一下POTCAR中的内容,选取规则,以及通过grep命令和关键词进行查看。如果你能独立完成下面的几点,就圆满完成了本节的学习:

  • VRHFIN, LEXCH,TITEL,ZVAL,ENMAX 这几个参数的大体意思;
  • 初步了解:Fe_sv,Fe_pv, Ge_d, Ge_gw,C_s, C_h 这些标记的含义;
  • 查看VASP官网,了解VASP推荐的POTCAR;
  • 使用grep来获取POTCAR中有价值的信息。

通过本节(Ex01)的学习,大家初步了解VASP四个主要输入文件的是怎么制作的,一些简单参数的含义,以及每个文件所对应的格式和细节。本节我们分成了很多小节,每节内容都很多,但对新手来说,信息量可能有些大。但不需要一次性全部掌握,因为在后面的学习中,我们会逐渐深入。自己在课题进行的过程中,也会加深自己的理解。但书中要求掌握的部分,必须要牢牢记住。

本书的名字为:The Hard Way。意思是,学习VASP并不是一蹴而就的,需要一个长时间的积累过程。所以,新手切勿急躁,很多内容看不懂不要紧,务必要静下心来浏览一遍,自己跟着说明亲自去实践,切不可复制粘贴。 本节所讲解的东西,都务必去VASP官网找对应的说明,认真阅读,反复思考。养成潜心学习官网教程的良好习惯,从而远离网络上那些错误的信息。尤其是对于新手来说,很多都不懂的时候,没有自己的主见,别人一说就被牵着鼻子走了。

相关的参考资料:

  1. Vim使用练习:自己搜资料学习,百度里面很多,学会怎么输入,保存。
  2. VASP文件: http://cms.mpi.univie.ac.at/vasp/guide/node50.html

  3. INCAR: http://cms.mpi.univie.ac.at/vasp/guide/node91.html

  4. KPOINTS1: http://cms.mpi.univie.ac.at/vasp/guide/node55.html

  5. KPOINTS2: https://cms.mpi.univie.ac.at/vasp/vasp/Automatic_k_mesh_generation.html

  6. POSCAR1: http://cms.mpi.univie.ac.at/vasp/guide/node59.html
  7. POSCAR2: https://cms.mpi.univie.ac.at/vasp/vasp/POSCAR_file.html
  8. POTCAR1: http://cms.mpi.univie.ac.at/vasp/guide/node54.html
  9. POTCAR2: https://cms.mpi.univie.ac.at/vasp/vasp/Recommended_PAW_potentials_DFT_calculations_using_vasp_5_2.html
  10. ISMEAR1: http://cms.mpi.univie.ac.at/vasp/guide/node124.html
  11. ISMEAR2: http://cms.mpi.univie.ac.at/vasp/vasp/Number_k_points_method_smearing.html