VASP经典学习教程有用.docx
《VASP经典学习教程有用.docx》由会员分享,可在线阅读,更多相关《VASP经典学习教程有用.docx(35页珍藏版)》请在冰豆网上搜索。
VASP经典学习教程有用
VASP学习教程
太原理工大学量子化学课题组
2012/5/25太原
第一章Linux命令
常用命令
1.1.1浏览目录
cd:
进入某个目录。
如:
cd/home/songluzhi/vasp/CH4
cd..上一层目录;cd/根目录;
ls:
显示目录下的文件。
注:
输入目录名时,可只输入前3个字母,按Tab键补全。
1.1.2浏览文件
cat:
显示文件内容。
如:
catINCAR
如果文件较大,可用:
catINCAR|more(可以按上下键查看)
合并文件:
catAB>C(A和B的内容合并,A在前,B在后)
1.1.3目录操作
mkdir:
建立目录;rmdir:
删除目录。
如:
mkdirT-CH3-Rh111
1.1.4文件操作
rm:
删除文件;vi:
编辑文件;cp:
拷贝文件
mv:
移动文件;pwd:
显示当前路径。
如:
rmINCARrma*(删除以a开头的所有文件)
rm-rfabc(强制删除文件abc)
tar:
解压缩文件。
压缩文件rar
1.1.5系统信息
df:
分区占用大小。
如:
df-h
du:
各级目录的大小。
top:
运行的任务。
psax:
查看详细任务。
kill:
杀死任务。
如:
kill12058(杀死PID为12058的任务)
注:
PID为top命令的第一列数字。
第二章SSH软件使用
软件界面
SSH界面
SSHtransfer
SSHtransfer的应用
2.2.1文件传输
从本地文件中,把所需的计算文件直接拖到服务器中。
一般就是VASP计算的四个文件INCAR,KPOINTS,POSCAR,POTCAR。
2.2.2简单应用
在右侧文件夹中可以直接构建文件夹,删除文件,修改文件。
从SSH要cd到某个文件夹下时,可先从SSHtransfer进入,直接复制路径栏,可快速进入。
第三章VASP的四个输入文件
INCAR
SYSTEM=name
ENCUT=400
PREC=Medium
EDIFF=5E-4
EDIFFG=
GGA=91
VOSKWN=1!
磁性计算
ISYM=0!
对称0无1有
LREAL=.FALSE.!
倒空间
ISPIN=2!
2磁性计算1不进行
ISTART=0!
0初次计算,1再次计算
ICHARG=2!
2构造原子密度
ISMEAR=2!
-5半导体;DOS静态计算0;原胞较大,k点小于4,单个原子,小分子;12金属体系。
SIGMA=
IBRION=2!
1DIIS,2CG,5频率,3过渡态
ISIF=2!
2结构优化,3晶胞优化
NSW=200!
离子运动步数
POTIM=!
步长
NELMIN=4!
最小迭代次数
NELM=200!
最多迭代次数
LWAVE=.FALSE.!
不输出波函数
LCHARG=.FALSE.!
不输出密度函数
KPOINTS
对于表面
surface
0
M
551
000
对于分子和原子
atomormolcular
1
Rec
0001
POSCAR
CH4在Co100表面Top位的吸附!
(名称)
CoHC
1641
S
Direct
TTT
TTT
0.000000000FFF
TTT
TTT
TTT
0.000000000FFF
TTT
TTT
TTT
0.000000000FFF
TTT
TTT
TTT
0.000000000FFF
TTT
TTT
TTT
TTT
TTT
TTT
POTCAR
从赝势库中找到所需元素的赝势文件,命名规则为:
POTCAR-C(元素)。
把这几个文件放到一个文件夹下,按照前面POSCAR中的元素顺序合并在一起。
命令为:
catPOTCAR-CoPOTCAR-HPOTCAR-C>POTCAR
第四章实例
CO+H-CHOCu(100)
模型的构建
过程:
首先通过MS构建好所需模型,导出为*.cif格式;导入到Vesta程序中,输出为*.vasp。
根据前面所讲的POSCAR格式修改,得到所需文件。
图解:
1.创建MS文件:
2.导入Cu晶胞
3.导出为Cif格式
打开File---export,保存类型为*.cif,保存在指定位置。
4.通过Vesta导出为*.vasp
直接把拖到vesta程序中,打开File---ExportData...,保存类型为*.vasp,保存在指定位置。
5.用写字板打开
根据所需要求修改,这里不需要修改。
在吸附表面时则需要固定,见。
CIFfile
Cu
4
Direct
VASP计算
4.2.1参数测试(VASP)参数设置这里给出了赝势、ENCUF、K点、SIMGA一共四个参数。
是都要验证吗还是只要验证其中一些
一、检验赝势的好坏:
赝势的好坏这里是特意举例铜原子的吧还是算铜的晶胞时只用算一下一个铜原子的就行
(一)方法:
对单个原子进行计算;
(二)要求:
1、对称性和自旋极化均采用默认值;
2、ENCUT要足够大;
3、原胞的大小要足够大,一般设置为15Å足矣,对某些元素还可以取得更小一些。
(三)以计算单个Cu原子为例:
1、INCAR文件:
SYSTEM=Cuatom
ENCUT=eV
NELMDL=5
ISMEAR=0
SIGMA=
2、POSCAR文件:
atom
Cu
1
Direct
3、KPOINTS文件:
Automatic
0
Gamma
111
000
4、POTCAR文件:
(略)
(四)计算任务执行方法:
输入:
mpirun-np4vasp>log&
(五)赝势好的判断标准:
计算得到的OUTCAR文件中的“energywithoutentropy”能量值在~eV之间。
命令:
grep'energywithoutentropy'OUTCAR|tail-1
计算结果为:
二、筛选合适的ENCUT大小:
(一)输入文件:
1、用脚本程序代替INCAR文件:
rmWAVECAR
foriin300350400450500
do
cat>INCAR<
SYSTEM=Cu
ENCUT=$i
GGA=91
ISTART=0;ICHARG=2
ISMEAR=-5
PREC=Accurate
!
echo"ENCUT=$ieV";timempirun-np2vasp>log&
E=$(grep"TOTEN"OUTCAR|tail-1|awk'{printf"%12.6f\n",$5}')
echo$i$E>>comment
done
注:
每个任务2核,5个截断能,共要10核。
2、POSCAR文件:
Cucell
Cu
4
Direct
3、KPOINTS文件:
A
0
M
888
4、POTCAR文件:
(略)
(二)计算任务执行方法:
输入:
dos2unix
bash
(三)判别标准:
计算完成后得到comment文件,它列出了在每个ENCUT时计算得到的相应的总能,只要总能变化在eV左右就足够了。
三、选择合适的k点数目:
(一)输入文件:
1、INCAR文件:
SYSTEM=Cu
ENCUT=eV
ISTART=0;ICHARG=2
ISMEAR=-5
PREC=Accurate
2、POSCAR文件:
Cu
Cu
4
Direct
3、用脚本程序代替KPOINTS文件:
rmWAVECAR
foriin678910
do
cat>KPOINTS<
Automaticgeneration
0
Monkhorst-pack
$i$i$i
!
echo"kmesh=$ix$ix$i";timempirun-np8vasp>log&
E=$(grep"TOTEN"OUTCAR|tail-1|awk'{printf"%12.6f\n",$5}')
KP=$(grep"irreducible"OUTCAR|tail-1|awk'{printf"%5i\n",$2}')
echo$i$KP$E>>comment
done
4、POTCAR文件:
(略)
(二)计算任务执行方法:
输入:
dos2unix
bash
(三)判别标准:
计算完成后得到comment文件,它列出了在k点数目与总能的对应值,只要总能变化在eV左右就非常足够了。
四、优化选择合适的SIGMA值(展宽σ值):
(一)为什么要优化SIGMA值
若展宽σ太小,则计算难以收敛;若展宽σ太大,则会产生多余的熵(entropy),因此必须选择合适的σ值。
(Toolargesmearing-parametersmightresultinawrongtotalenergy,smallsmearingparametersrequirealargek-pointmesh.)
(二)ISMEAR和SIGMA:
1、ISMEAR和SIGMA这两个关键词要联合起来使用,前者用来指定smearing的方法,后者用来指定smearing的展宽——σ值。
2、ISMEAR和SIGMA的默认值分别为1和。
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,但是Inmostcases
and
leadstoverysimilarresults。
4、σ值一般在~eV范围内。
5、ISMEAR取值的一些经验:
(1)一般说来,无论是对何种体系,进行何种性质的计算,采用ISMEAR=0并选择一个合适的SIGMA值,都能得到合理的结果。
(2)在进行静态计算(能量单点计算,norelaxationinmetals)或态密度计算且k点数目大于4时,取ISMEAR=-5。
(3)当原胞较大而k点数目较小(小于4个)时,取ISMEAR=0,并选择一个合适的SIGMA值。
(Ifthecellistoolarge(orifyouuseonlyasingleortwok-points)useISMEAR=0incombinationwithasmallSIGMA=
(4)对半导体或绝缘体,不论是静态还是结构优化计算,都取ISMEAR=-5。
(Mind:
AvoidtouseISMEAR>0forsemiconductorsandinsulators,sinceitmightcauseproblems.ForinsulatorsuseISMEAR=0orISMEAR=-5.)
(5)对金属体系(forrelaxationsinmetals),取ISMEAR=1或2,并选择一个合适的SIGMA值。
(三)当采用ISMEAR=0或N时,如何优化选择合适的SIGMA值
1、用脚本程序代替INCAR文件:
rmWAVECAR
foriin
do
cat>INCAR<
SYSTEM=bccFe
ENCUT=450
GGA=91
ISTART=0;ICHARG=2
ISMEAR=0;SIGMA=$i
PREC=Accurate
!
echo"SIGMA=$ieV";timevasp
TS=$(grep"EENTRO"OUTCAR|tail-1|awk'{printf"%12.6f\n",$5}')
echo$i$TS>>comment
done
2、POSCAR文件:
Cu
Cu
4
Direct
3、KPOINTS文件:
A
0
M
999
4、POTCAR文件:
(略)
(四)计算任务执行方法:
输入:
dos2unix
bash
(五)判断标准:
熵(entropy)越小越好,选择entropyT*SEENTRO值中最小的那个所对应的SIGMA。
(SIGMAshouldbeaslargeaspossiblekeepingthedifferencebetweenthefreeenergyandthetotalenergy.theterm'entropyT*S')intheOUTCARfilenegligible(1meV/atom).)
(五)注意:
1、当k点的数目发生变化后,要重新优化选择SIGMA值。
4.2.2晶胞优化(Cu)
INCAR
SYSTEM=name
ENCUT=400
PREC=Medium
EDIFF=5E-6
EDIFFG=
GGA=91
ISYM=1
LREAL=.FALSE.
ISTART=0
ICHARG=2
INIWAV=1
ISMEAR=2
SIGMA=
IBRION=2
ISIF=3
NSW=200
POTIM=
NELMIN=4
NELM=200
NELMDL=-5
ALGO=F
LWAVE=.FALSE.
LCHARG=.FALSE.
POSCAR
Cu
Cu
4
Direct
KPOINTS
Cucell
0
M
888
000
POTCAR(略)
命令:
mpirun–np8vasp>log&
计算结果:
查看CONTCAR,获取晶胞参数a=b=c=误差=%
注:
优化后的结构为CONTCAR,导出保存为***.vasp,通过Vesta打开输出为.cif格式的文件,可用MS打开。
4.2.3Cu(100)表面的能量
从MS构建模型,直到获得POSCAR。
INCAR
SYSTEM=Cu100
ENCUT=400
PREC=Medium
EDIFF=5E-6
EDIFFG=
GGA=91
LREAL=.FALSE.
ISTART=0
ICHARG=2
ISMEAR=2
SIGMA=
IBRION=2
ISIF=2
NSW=200
POTIM=
NELMIN=4
NELM=200
LWAVE=.FALSE.
LCHARG=.FALSE.
POSCAR
CIFfile
Cu
16
S
Direct
TTT
TTT
0.000000000FFF
TTT
TTT
TTT
0.000000000FFF
TTT
TTT
TTT
0.000000000FFF
TTT
TTT
TTT
0.000000000FFF
TTT
KPOINTS(略)5x5x2
POTCAR(略)
命令:
mpirun–np8vasp>log&
grep'energywithoutentropy'OUTCAR|tail-1
计算结果:
ECu100=eV
4.2.4吸附分子CO、H、CHO的结构优化
CO的结构优化:
INACAR
SYSTEM=name
ENCUT=400
PREC=Medium
EDIFF=5E-6
EDIFFG=
GGA=91
ISYM=0
LREAL=.FALSE.
ISTART=0
ICHARG=2
ISMEAR=0
SIGMA=
IBRION=2
ISIF=2
NSW=200
POTIM=
NELMIN=4
NELM=200
LWAVE=.FALSE.
LCHARG=.FALSE.
KPOINTS
CO
1
R
0001
POSCAR
CIFfile
CO
11
Direct
POTCAR(略)
命令:
mpirun–np8vasp>log&
grep'energywithoutentropy'OUTCAR|tail-1
计算结果:
C-O键长:
ÅECO=eV
CHO的优化:
POSCAR
CHO
COH
111
Direct
其他同上,POTCAR顺序C-O-H。
命令:
mpirun–np8vasp>log&
grep'energywithoutentropy'OUTCAR|tail-1
计算结果:
ECHO=
H的能量:
POSCAR
CIFfile
H
1
Direct
命令:
mpirun–np8vasp>log&
grepTOTENOUTCAR|tail-1注:
单原子能量。
计算结果:
EH=eV
4.2.5CO吸附于Cu100表面H位
INCAR
SYSTEM=name
ENCUT=400
PREC=Medium
EDIFF=5E-6
EDIFFG=
GGA=91
ISYM=0
LREAL=.FALSE.
ISTART=0
ICHARG=2
ISMEAR=2
SIGMA=
IBRION=2
ISIF=2
NSW=200
POTIM=
NELMIN=4
NELM=200
LWAVE=.FALSE.
LCHARG=.FALSE.
KPOINTS552
POSCAR
CO-H-Cu100
CuCO
1611
S
Direct
TTT
TTT
0.000000000FFF
TTT
TTT
TTT
0.000000000FFF
TTT
TTT
TTT
0.000000000FFF
TTT
TTT
TTT
0.000000000FFF
TTT
TTT
TTT
POTCAR
按照Cu-C-O的顺序合并。
命令:
mpirun–np8vasp>log&
grep'energywithoutentropy'OUTCAR|tail-1
计算结果:
E总=eVEads=eV
4.2.6H吸附于Cu100表面H位
INCAR(同4.2.5)
KPOINTS(552)
POSCAR
H-H-Cu100
CuH
161
S
Direct
TTT
TTT
0.000000000FFF
TTT
TTT
TTT
0.000000000FFF
TTT
TTT
TTT
0.000000000FFF
TTT
TTT
TTT
0.000000000FFF
TTT
TTT
POTCAR
按照Cu-H的顺序合并。
命令:
mpirun–np8vasp>log&
grep'energywithoutentropy'OUTCAR|tail-1
计算结果:
E总=eVEads=eV=kJ/mol
4.2.7CHO吸附于Cu100表面B位
INCAR(同4.2.5)
KPOINTS(552)
POSCAR
CHO-B-Cu100
CuCOH
16111
S
Direct
TTT
TTT
0.000000000FFF
TTT
TTT
TTT
0.000000000FFF
TTT
TTT
TTT
0.000000000FFF
TTT
TTT
TTT
0.000000000FFF
TTT
TTT
TTT
TTT
POTCAR
按照Cu-C-H-O的顺序合并。
命令:
mpirun–np8vasp>log&
grep'energywithoutentropy'OUTCAR|tail-1
计算结果:
E总=eVEads=eV
4.2.8CO和H共吸附于Cu100表面
INCAR(同4.2.5)
KPOINTS(552)
POSCAR
CO&HH-HCu100
CuCOH
16111
S
Direct
TTT
TTT
0.000000000FFF
TTT
TTT
TTT
0.000000000FFF
TTT
TTT
TTT