您的当前位置:首页正文

VASP单机操作流程(以Ni111表面为例)

2020-11-19 来源:易榕旅网


VASP单机操作流程(以Ni111表面为例)

一, 将生成的POSCAR文件和VASP自带的相关元素的赝势文件POTCAR导入或者是复制到工作目录。

打开终端,编辑K点文件KPOINTS(在此使用自动生成的方法)。

Cat >KPOINTS<>A

>0

>7 7 1

>0 0 0

>!

保存退出。

二,优化截断能:

优化过程的脚本为:

#!/bash/sh

for i in 200 250 300 350 400 450 500 550 600

do

cat >INCAR<SYSTEM=Ni(111)

ENCUT=$i

ISTART=0

ICHARG=2

ISMEAR=-5

NELM=100

EDIFF=1E-4

NGX=18

NGY=18

NGZ=162

SIGMA=0.05

PREC=A

!

echo \"ENCUT=$i\"

time mpirun -np 2 vaspmpi

cp OUTCAR OUTCAR$i

E=`grep \"TOTEN\" OUTCAR | tail -1| cut -c32-42`(这样只输出截断能的数值)

echo $i $E >>Etot.dat

done

保存退出。

输入命令:sh EN.sh 点击Enter键运行VASP。进行截断能的优化。

(进行并行VASP运算前要先输入命令:mpd &; VASP的并行命令为:mpirun –np 2 vaspmpi )

使用命令:cat Etot.dat 来显示计算结果。

例如:

200 -35.941564

250 -36.653335

300 -36.667632

350 -36.627027

400 -36.617354

450 -36.611490

500 -36.614625

550 -36.619412

600 -36.616586

根据要求,我选择400eV的截断能。

三, 优化K点:

复制EN.sh ,只是为了方便使用它的格式。

Cp EN.sh KY.sh(自定义文件名)

优化过程的脚本为:

#!/bash/sh

for i in 5 7 9 11 13 15 17 19

do

cat >KPOINTS<A

0

G

$i $i $i

0.0 0.0 0.0

!

echo \"KPOINTS=$i\"

time mpirun -np 2 vaspmpi

cp OUTCAR OUTCAR$i

E=`grep \"TOTEN\" OUTCAR | tail -1| cut -c32-42`

echo $i $E >>Etot.dat

done

保存退出。

输入命令:sh KY.sh 点击Enter键运行vasp进行K点的优化。

计算完成后,输入命令:cat Etot.dat 查看结果。如同截断能的优化一样,根据要求选择合适的K点。(在此我选择17)

四, 优化晶格常数:

在优化晶格常数时,是对比例系数的优化,不能使用绝对值。一般在试验值的左右各取一些值,根据要求选择最合适的晶格常数。计算过程和上两步类似。

Cp En . sh POS . sh (为方便使用格式)

计算用脚本程序为:

#!/bash/sh

for i in 0.92 0.94 0.96 0.98 1.00 1.02 1.04 1.06 1.08 1.10

do

c=`echo \"scale=6;12.821/$i\"|bc`

cat >POSCAR<Ni

$i

1.7619999647140503 0.0000000000000000

0.0000000000000000 -1.7619999647140503

12.8215026855468750 12.8215026855468750 ……(此部分内容省略)

……(此部分内容省略)

-1.7619999647140503 1.7619999647140503

$c

……(此部分内容省略)

!

echo \"POSCAR=$i\"

time mpirun -np 2 vaspmpi

cp OUTCAR OUTCAR$i

E=`grep \"TOTEN\" OUTCAR | tail -1| cut -c32-42`

echo $i $E >>Etot.dat

done

保存退出。

输入命令:sh POS . sh 点击Enter键运行VASP,进行晶格常数的优化。

根据计算结果,选择对应能量值最低的晶格常数即可。用计算所得的晶格常数代替原有POSCAR文件中的晶格常数。

五,迟豫计算(relax):

编辑INCAR文件(在原有基础上加上离子步)

输入命令:vi INCAR进入编辑模式

SYSTEM=Ni(111)

ENCUT=400

ISTART=0

ICHARG=2

ISMEAR=0

SIGMA=0.05

PREC=A

NELM=100

EDIFF=1E-4

NGX=18

NGY=18

NGZ=162

NSW=100

IBRION=1

ISIF=2

EDIFFG=-0.02 (保存退出)

编辑KPOINTS文件(采用优化后的K点)

输入命令:vi KPOINTS进入编辑模式

A

0

G

17 17 1

0.0 0.0 0.0

(保存退出)

编辑POSCAR文件(采用优化后的晶格常数)

将CONTACAR文件的内容复制到POSCAR文件中,原因是CONTCAR文件中包含有结构优化的信息。

输入命令:cp CONTCAR POSCAR

另外根据需要固定几个原子层

Ni(111)

1.00000000000000

1.7619999647140503 -1.7619999647140503 0.0000000000000000 1.7619999647140503 12.8215026855468750 12.8215026855468750 Ni

7

Selective dynamics

Direct

0.0000000000000007 -0.0000000000000003 0.0000000000000000

-1.7619999647140503

11.6554540000000006

-0.0000000000000001

T T T

0.0000000000000002 -0.0000000000000002 0.2748507787801908 T T T

-0.0000000000000002 0.0000000000000001 0.5497015575603815 T T T

0.6666666666666666 F F F

0.6666666666666664 T T T

0.3333333333333339 F F F

0.3333333333333333 T T T

(其它内容省略)

(保存退出)

建立relax文件夹:mkdir 0.3333333333333328 0.3333333333333331 0.6666666666666666 0.6666666666666666 relax

0.1832338525201271 0.4580846313003180 0.0916169262600635 0.3664677050402544

将CHG CHGCAR WAVECAR INCAR POSCAR KPOINTS POTCAR复制到该文件夹:

Cp CHG CHGCAR WAVECAR INCAR POSCAR KPOINTS POTCAR relax

则在relax文件夹下运行命令;

Mpirun -np 2 vaspmpi 进行迟豫计算

六, 静态自洽计算(scf):

建立文件夹scf:

输入命令:Mkdir scf

将POTCAR KPOINTS INCAR拷贝到scf文件夹中。

将CONTCAR改为POSCAR

在scf文件夹下对相关文件进行编辑。

编辑INCAR文件,去掉迟豫计算的参数设置(也就是关闭离子步)。另外还要控制输出电荷密度和波函数。

输入命令:vi INCAR

SYSTEM=Ni(111)

ENCUT=400

ISTART=0

ICHARG=2

ISMEAR=0

SIGMA=0.05

PREC=A

NELM=100

EDIFF=1E-6(提高精度)

NGX=18

NGY=18

NGZ=162

LCHARG=.T.(输出电荷密度)

LWAVE=.T.(输出波函数)

LVTOT=.T.

(保存退出)

在scf文件夹下输入命令:mpirun -np 2 vaspmpi进行迟豫计算。

七, 态密度计算(dos):

建立dos文件夹,输入命令:mkdir dos

将KPOINTS INCAR POSCAR POTCAR CHG CHGCAR WAVECAR复制到dos文件夹中,

输入命令:cp KPOINTS INCAR POSCAR POTCAR CHG CHGCAR WAVECAR dos

(INCAR是迟豫计算后的文件,POSCAR是晶格常数优化计算后的文件,KPOINTS是K点优化计算后的文件)

编辑INCAR文件,输入命令:vi INCAR

修改以下两个参数:

ISTART=1

IVHARG=11

增加以下两个参数:

LROBIT=11

NPARA=1(控制并行计算)

在进行态密度计算时,K点可以不用改变。

在dos文件夹下,输入命令:mpirun -np 2 vaspmpi运行vasp进行态密度的计算。

八, 能带计算(bands):

建立bands文件夹,输入命令:mkdir bands

将KPOINTS INCAR POSCAR POTCAR CHG CHGCAR WAVECAR复制到bands文件夹中,

输入命令:cp KPOINTS INCAR POSCAR POTCAR CHG CHGCAR WAVECAR bands

(INCAR是迟豫计算后的文件,POSCAR是晶格常数优化计算后的文件)

编辑INCAR文件,输入命令:vi INCAR

将dos计算中的

LROBIT=11

NPARA=1

两项关闭或者是删除

编辑KPOINTS文件(在计算能带时常使用line—mode模式)

输入命令:vi KPOINTS

例如:

A

20

L

rec

0.0 0.0 0.0 G

0.5 0.0 0.0 X

0.5 0.0 0.0X

0.3333 0.3333 0.0W

0.3333 0.3333 0.0W

0.0 0.0 0.0G

(存退出)

在bands文件夹下输入命令:mpirun

2 vaspmpi 运行vasp进行能带计算。 -np

因篇幅问题不能全部显示,请点此查看更多更全内容