量子化学课题组VASP经典学习教程.docx
- 文档编号:9349093
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:37
- 大小:443.07KB
量子化学课题组VASP经典学习教程.docx
《量子化学课题组VASP经典学习教程.docx》由会员分享,可在线阅读,更多相关《量子化学课题组VASP经典学习教程.docx(37页珍藏版)》请在冰豆网上搜索。
量子化学课题组VASP经典学习教程
VASP学习教程
太原理工大学量子化学课题组
2012/5/25太原
目录
第一章Linux命令1
1.1常用命令1
1.1.1浏览目录1
1.1.2浏览文件1
1.1.3目录操作1
1.1.4文件操作1
1.1.5系统信息1
第二章SSH软件使用2
2.1软件界面2
2.2SSHtransfer的应用3
2.2.1文件传输3
2.2.2简单应用3
第三章VASP的四个输入文件3
3.1INCAR3
3.2KPOINTS4
3.3POSCAR4
3.4POTCAR5
第四章实例5
4.1模型的构建5
4.2VASP计算8
4.2.1参数测试8
4.2.2晶胞优化(Cu)13
4.2.3Cu(100)表面的能量2
4.2.4吸附分子CO、H、CHO的结构优化2
4.2.5CO吸附于Cu100表面H位4
4.2.6H吸附于Cu100表面H位5
4.2.7CHO吸附于Cu100表面B位6
4.2.8CO和H共吸附于Cu100表面7
4.2.9过渡态计算8
第一章Linux命令
1.1常用命令
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软件使用
2.1软件界面
SSH界面
SSHtransfer
2.2SSHtransfer的应用
2.2.1文件传输
从本地文件中,把所需的计算文件直接拖到服务器中。
一般就是VASP计算的四个文件INCAR,KPOINTS,POSCAR,POTCAR。
2.2.2简单应用
在右侧文件夹中可以直接构建文件夹,删除文件,修改文件。
从SSH要cd到某个文件夹下时,可先从SSHtransfer进入,直接复制路径栏,可快速进入。
第三章VASP的四个输入文件
3.1INCAR
SYSTEM=name
ENCUT=400
PREC=Medium
EDIFF=5E-4
EDIFFG=-0.1
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=0.1
IBRION=2!
1DIIS,2CG,5频率,3过渡态
ISIF=2!
2结构优化,3晶胞优化
NSW=200!
离子运动步数
POTIM=0.05!
步长
NELMIN=4!
最小迭代次数
NELM=200!
最多迭代次数
LWAVE=.FALSE.!
不输出波函数
LCHARG=.FALSE.!
不输出密度函数
3.2KPOINTS
对于表面
surface
0
M
551
000
对于分子和原子
atomormolcular
1
Rec
0001
3.3POSCAR
CH4在Co100表面Top位的吸附!
(名称)
1.0
5.01200008390.00000000000.0000000000
0.00000000005.01200008390.0000000000
0.00000000000.000000000015.3159999847
CoHC
1641
S
Direct
0.0000000000.0000000000.108070001TTT
0.0000000000.0000000000.333149999TTT
0.2500000000.2500000000.000000000FFF
0.2500100140.2500000000.225119993TTT
0.5000000000.0000000000.108060002TTT
0.5000000000.0000000000.333149999TTT
0.7500000000.2500000000.000000000FFF
0.7499899860.2500000000.225119993TTT
0.0000000000.5000000000.108070001TTT
0.0000000000.5000000000.333139986TTT
0.2500000000.7500000000.000000000FFF
0.2500100140.7500000000.225130007TTT
0.5000000000.5000000000.108070001TTT
0.5000000000.5000000000.333149999TTT
0.7500000000.7500000000.000000000FFF
0.7499899860.7500000000.225119993TTT
0.5000799890.5014299750.451510012TTT
0.2928200070.5022199750.546630025TTT
0.6018900280.6809200050.546850026TTT
0.6020900010.3238700030.547209978TTT
0.4992400110.5021299720.523060024TTT
3.4POTCAR
从赝势库中找到所需元素的赝势文件,命名规则为:
POTCAR-C(元素)。
把这几个文件放到一个文件夹下,按照前面POSCAR中的元素顺序合并在一起。
命令为:
catPOTCAR-CoPOTCAR-HPOTCAR-C>POTCAR
第四章实例
CO+H-CHOCu(100)
4.1模型的构建
过程:
首先通过MS构建好所需模型,导出为*.cif格式;导入到Vesta程序中,输出为*.vasp。
根据前面所讲的POSCAR格式修改,得到所需文件。
图解:
1.创建MS文件:
2.导入Cu晶胞
3.导出为Cif格式
打开File---export,保存类型为*.cif,保存在指定位置。
4.通过Vesta导出为*.vasp
直接把Cu.cif拖到vesta程序中,打开File---ExportData...,保存类型为*.vasp,保存在指定位置。
5.用写字板打开Cu.vasp
根据所需要求修改Cu.vasp,这里不需要修改。
在吸附表面时则需要固定,见3.3。
CIFfile
1.0
3.61470007900.00000000000.0000000000
0.00000000003.61470007900.0000000000
0.00000000000.00000000003.6147000790
Cu
4
Direct
0.0000000000.0000000000.000000000
0.0000000000.5000000000.500000000
0.5000000000.0000000000.500000000
0.5000000000.5000000000.000000000
4.2VASP计算
4.2.1参数测试(VASP)参数设置这里给出了赝势、ENCUF、K点、SIMGA一共四个参数。
是都要验证吗?
还是只要验证其中一些?
一、检验赝势的好坏:
赝势的好坏这里是特意举例铜原子的吧?
还是算铜的晶胞时只用算一下一个铜原子的就行?
(一)方法:
对单个原子进行计算;
(二)要求:
1、对称性和自旋极化均采用默认值;
2、ENCUT要足够大;
3、原胞的大小要足够大,一般设置为15Å足矣,对某些元素还可以取得更小一些。
(三)以计算单个Cu原子为例:
1、INCAR文件:
SYSTEM=Cuatom
ENCUT=450.00eV
NELMDL=5
ISMEAR=0
SIGMA=0.1
2、POSCAR文件:
atom
10.00
1.000.000.00
0.001.000.00
0.000.001.00
Cu
1
Direct
0.50.50.5
3、KPOINTS文件:
Automatic
0
Gamma
111
000
4、POTCAR文件:
(略)
(四)计算任务执行方法:
输入:
mpirun-np4vasp>log&
(五)赝势好的判断标准:
计算得到的OUTCAR文件中的“energywithoutentropy”能量值在-0.001~-0.01eV之间。
命令:
grep'energywithoutentropy'OUTCAR|tail-1
计算结果为:
二、筛选合适的ENCUT大小:
(一)输入文件:
1、用脚本程序optencut.sh代替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
1.0
3.61470007900.00000000000.0000000000
0.00000000003.61470007900.0000000000
0.00000000000.00000000003.6147000790
Cu
4
Direct
0.0000000000.0000000000.000000000
0.0000000000.5000000000.500000000
0.5000000000.0000000000.500000000
0.5000000000.5000000000.000000000
3、KPOINTS文件:
A
0
M
888
0.00.00.0
4、POTCAR文件:
(略)
(二)计算任务执行方法:
输入:
dos2unixoptencut.sh
bashoptencut.sh
(三)判别标准:
计算完成后得到comment文件,它列出了在每个ENCUT时计算得到的相应的总能,只要总能变化在0.001eV左右就足够了。
三、选择合适的k点数目:
(一)输入文件:
1、INCAR文件:
SYSTEM=Cu
ENCUT=450.00eV
ISTART=0;ICHARG=2
ISMEAR=-5
PREC=Accurate
2、POSCAR文件:
Cu
1.0
3.61470007900.00000000000.0000000000
0.00000000003.61470007900.0000000000
0.00000000000.00000000003.6147000790
Cu
4
Direct
0.0000000000.0000000000.000000000
0.0000000000.5000000000.500000000
0.5000000000.0000000000.500000000
0.5000000000.5000000000.000000000
3、用脚本程序optkpoints.sh代替KPOINTS文件:
rmWAVECAR
foriin678910
do
cat>KPOINTS<
Automaticgeneration
0
Monkhorst-pack
$i$i$i
0.00.00.0
!
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文件:
(略)
(二)计算任务执行方法:
输入:
dos2unixoptkpoints.sh
bashoptkpoints.sh
(三)判别标准:
计算完成后得到comment文件,它列出了在k点数目与总能的对应值,只要总能变化在0.001eV左右就非常足够了。
四、优化选择合适的SIGMA值(展宽σ值):
(一)为什么要优化SIGMA值?
若展宽σ太小,则计算难以收敛;若展宽σ太大,则会产生多余的熵(entropy),因此必须选择合适的σ值。
(Toolargesmearing-parametersmightresultinawrongtotalenergy,smallsmearingparametersrequirealargek-pointmesh.)
(二)ISMEAR和SIGMA:
1、ISMEAR和SIGMA这两个关键词要联合起来使用,前者用来指定smearing的方法,后者用来指定smearing的展宽——σ值。
2、ISMEAR和SIGMA的默认值分别为1和0.2。
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、σ值一般在0.1~0.3eV范围内。
5、ISMEAR取值的一些经验:
(1)一般说来,无论是对何种体系,进行何种性质的计算,采用ISMEAR=0并选择一个合适的SIGMA值,都能得到合理的结果。
(2)在进行静态计算(能量单点计算,norelaxationinmetals)或态密度计算且k点数目大于4时,取ISMEAR=-5。
(3)当原胞较大而k点数目较小(小于4个)时,取ISMEAR=0,并选择一个合适的SIGMA值。
(Ifthecellistoolarge(orifyouuseonlyasingleortwok-points)useISMEAR=0incombinationwithasmallSIGMA=0.05)
(4)对半导体或绝缘体,不论是静态还是结构优化计算,都取ISMEAR=-5。
(Mind:
AvoidtouseISMEAR>0forsemiconductorsandinsulators,sinceitmightcauseproblems.ForinsulatorsuseISMEAR=0orISMEAR=-5.)
(5)对金属体系(forrelaxationsinmetals),取ISMEAR=1或2,并选择一个合适的SIGMA值。
(三)当采用ISMEAR=0或N时,如何优化选择合适的SIGMA值?
1、用脚本程序optsigma.sh代替INCAR文件:
rmWAVECAR
foriin0.100.120.140.160.180.200.220.240.260.280.30
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
1.0
3.61470007900.00000000000.0000000000
0.00000000003.61470007900.0000000000
0.00000000000.00000000003.6147000790
Cu
4
Direct
0.0000000000.0000000000.000000000
0.0000000000.5000000000.500000000
0.5000000000.0000000000.500000000
0.5000000000.5000000000.000000000
3、KPOINTS文件:
A
0
M
999
0.00.00.0
4、POTCAR文件:
(略)
(四)计算任务执行方法:
输入:
dos2unixoptsigma.sh
bashoptsigma.sh
(五)判断标准:
熵(entropy)越小越好,选择entropyT*SEENTRO值中最小的那个所对应的SIGMA。
(SIGMAshouldbeaslargeaspossiblekeepingthedifferencebetweenthefreeenergyandthetotalenergy(i.e.theterm'entropyT*S')intheOUTCARfilenegligible(1meV/atom).)
(五)注意:
1、当k点的数目发生变化后,要重新优化选择SIGMA值。
4.2.2晶胞优化(Cu)
INCAR
SYSTEM=name
ENCUT=400
PREC=Medium
EDIFF=5E-6
EDIFFG=-0.01
GGA=91
ISYM=1
LREAL=.FALSE.
ISTART=0
ICHARG=2
INIWAV=1
ISMEAR=2
SIGMA=0.1
IBRION=2
ISIF=3
NSW=200
POTIM=0.5
NELMIN=4
NELM=200
NELMDL=-5
ALGO=F
LWAVE=.FALSE.
LCHARG=.FALSE.
POSCAR
Cu
1.0
3.61470007900.00000000000.0000000000
0.00000000003.61470007900.0000000000
0.00000000000.00000000003.6147000790
Cu
4
Direct
0.0000000000.0000000000.000000000
0.0000000000.5000000000.500000000
0.5000000000.0000000000.500000000
0.5000000000.5000000000.000000000
KPOINTS
Cucell
0
M
888
000
POTCAR(略)
命令:
mpirun–np8vasp>log&
计算结果:
查看CONTCAR,获取晶胞参数a=b=c=3.629误差=0.4%
注:
优化后的结构为CONTCAR,导出保存为***.vasp,通过Vesta打开输出为.cif格式的文件,可用MS打开。
4.2.3Cu(100)表面的能量
从MS构建模型,直到获得POSCAR。
INCAR
SYSTEM=Cu100
ENCUT=400
PREC=Medium
EDIFF=5E-6
EDIFFG=-0.01
GGA=91
LREAL=.FALSE.
ISTART=0
ICHARG=2
ISMEAR=2
SIGMA=0.1
IBRION=2
ISIF=2
NSW=200
POTIM=0.5
NELMIN=4
NELM=200
LWAVE=.FALSE.
LCHARG=.FALSE.
POSCAR
CIFfile
1.0
5.11199998860.0000000000
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 量子 化学 课题组 VASP 经典 学习 教程