~反馈调试中,如使用中遇到问题,敬请上报到drivener@163.com,再次感谢。
~二、VaspCZ软件安装1. 安装和卸载代码下载:
git clone https://github.com/zhangzhengde0225/VaspCZ.git
或者访问github VaspCZ 网址下载,下载后解压:unzip VaspCZ.zip
进入安装程序目录:cd VaspCZ
默认VaspCZ安装配置为:python3 install.py
输入快捷键运行程序:vcz
程序界面如图:出现程序界面,说明安装成功。如更新版本,安装前请先卸载:python3 uninstall.py
2. 错误提示(1) 权限不足如果安装时提示:PermissionError: [Errno 13] Permission denied: 'VaspCZ'
请使用管理员账号用以下命令安装。sudo python3 install.py
如无管理员账号,请给当前用户安装独立的python后再安装VaspCZ源码安装用户独立python3教程(2) 缺少python库VaspCZ运行需要的库有:numpy
如果提示:ModuleNotFoundError: No module named 'numpy'
使用pip3安装相应库即可:pip3 install numpy
三、VaspCZ软件使用和示例本章主要描述软件部分的使用方法和示例,Python API接口部分仅描述功能,接口详细信息参见API说明文档。1. VaspCZ 软件部分 (主程序)软件部分提供了Linux字符串用户界面,用于在超算平台中快捷提交任务和检查结果。包含三个模块:结构优化和静态计算(OS)模块、过渡态计算(NEB)模块和截断能K点测试(Test)模块。成功安装后输入快捷键即可进入用户界面:vcz输入模块对应的选项即可进入相应模块。
(1) Opt and Sta 模块该模块提供了用于快捷进行结构优化(Optimization)计算和静态(Static)计算的功能。用户界面:包含功能:cd /home/zhangzd/bin/VaspCZ/examples/
OS模块下1.1-1.7功能示例:进入1.1-1.7cd 1.1-1.7
该文件夹为空文件夹。输入:vcz
1
而后输入1-7数字可以执行相应功能1.1 产生Vasp输入文件(示例)会在该目录下产生Vasp的5个输入文件的示例:INCAR、POSCAR、POTCAR、KPOINTS和Vasp.sh注意:生成Vasp.sh文件需要配置:Vasp.sh为PBS系统提交任务的脚本,因不同平台的脚本内容会有所不同,请将适合该平台的脚本正确拷贝到安装目录下,默认为:用户根目录,目录结构如下所示:用户根目录(或配置的Vasp.sh路径)
|
| Vasp.sh
| ...(files)
1.2 修改INCAR为静态计算的INCAR在当前路径的结构优化INCAR上修改为静态计算的INCAR。修改项目:SYSTEM=Static
IBRION=-1
NSW=1
# EDIFFG=-0.01
1.3 产生POTCAR输入元素列表和贋势类型产生POTCAR。默认产生适配当前目录下的POSCAR内的元素的POTCAR,默认贋势类型为PBE。注意:将从安装VaspCZ时配置的贋势路径下读取数据,默认为用户根目录。使用该功能请将贋势文件夹命名为PseudoPotential并按如下目录安装。用户根目录(或配置贋势安装路径)
|
+---PseudoPotential
|
+---PBE
| |
| +---H
| +---He
| +---...(dirs)
|
+---PW91
+---LDA
+---US_LDA_GGA
+---...(dirs)
1.4 产生KPOINTS输入网格和方法产生KPOINTS文件。默认网格为:5 5 5。默认方法为:Monkhorst 。与Vasp官网一致,方法可只输入开头的字母如:M,可选方法有:M(Monkhorst),A(Auto)1.5 产生Vasp.sh输入任务所需节点数、核数和任务名产生提交任务脚本Vasp.sh。默认:节点数:1 核数:12 任务名:jobname注意:将从VaspCZ安装时候配置的Vasp.sh路径下读取数据,默认为用户根目录。使用该功能前请正确安装Vasp.sh。1.6 保留Vasp输入文件删除其他所有文件和文件夹,仅保留Vasp的5个输入文件(INCAR、POSCAR、POTCAR、KPOINTS和Vasp.sh),用于计算出现问题,重新算。选择该功能后可输入文件名添加需要额外保留的文件。1.7 前检查并提交任务准备好输入文件后,进行前检查,检查INCAR、POSCAR和POTCAR是否匹配,检查通过后将打印检查信息,并提示是否提交任务。OS模块下1.8功能示例:退出1.1-1.7并进入1.8cd ..
cd 1.8
该文件夹为计算好的Fe-Te体系不同情形下的结构优化结果。输入运行1.8功能:vcz
1
8
1.8 检查结果检查当前目录及所有子目录下的结构优化和静态计算的结果,如OUTCAR或者log中有错误(ERROR)或警告(WARNING)或提示所在位置。输出如图所示:检查所有路径计算是否完成,输出当前路径、完成状态、离子步数和电子步数。检查完后,输出当前路径、能量、离子步数、磁矩、POSCAR和CONTCAR原子之间的距离、原子最大受力。(2) NEB 模块该模块提供了便捷的NEB方法计算过渡态的功能。用户界面:包含功能:NEB计算目录
| ...(files)
+---ini
| | ...(files)
| +---Opt
| | ...(files)
+---fin
| ...(files)
+---Opt
| ...(files)
在准备进行过渡态计算的目录下,创建文件夹ini和fin分别代表初态和末态,在它们之下再分别创建Opt文件夹。计算步骤如下:1、ini/Opt/下进行初态的结构优化。2、fin/Opt/下进行末态的结构优化。3、ini/下在结构优化完成后进行静态计算以获得更准确的能量。4、fin/下在结构优化完成后末态静态计算。5、当前路径下在两个静态计算完成后进行过渡态计算。6、如需,过渡态完成后当前路径下进行振动分析。NEB模块功能示例:进入到VaspCZ安装目录examples文件夹下:cd /home/zhangzd/bin/VaspCZ/examples
2.1 一键结构优化到静态计算如前过渡态的一般过程所示,结构优化完成后,自动进行初末态的静态计算。进入2.1:cd 2.1
该文件夹下包含一般性的过渡态计算结构,且ini/Opt和fin/Opt下计算已完成。(可用OS模块的1.8功能检查结果)调用vcz,选择功能2.1:vcz
2
1
此时:选择1为当前文件夹下的静态计算到结构优化,选择2为一键提交ini/和fin/文件下下的静态计算。输入节点数、核数和文件名提交任务。默认为:cd 2.2
该文件夹下包含一般性的过渡态计算结构,且ini/Opt、fin/Opt、ini/和fin/下计算已完成。(可用OS模块的1.8功能检查结果)输入vcz调用程序选择功能2.2即可实现自动提交过渡态计算任务。输入节点数、核数和文件名提交任务。默认参数为:cd 2.3
该文件夹下包含已经计算好的过渡态文件。(可用NEB模块的2.8功能检查结果)调用vcz,并选择功能2.3输入任务节点数、核数和是否包含末态振动提交任务。默认参数为:cd 2.6-2.9
vcz
2
6
输出如图所示:第一列为离子步,第二到四列为插入态IMAGE01、IMAGE02和IMAGE03在对应离子步下该结构中原子所受的最大力,第五列为前面的二到四列之和。如数据所示,第8步时所有插入态原子最大受力小于0.01 eV/Å,达到INCAR中的收敛要求。该功能用于检查过渡态计算不收敛时较为合理的结构。例:假如INCAR中设置NSW=100,计算达100步未收敛,通常第100步并非合理的结构。借助此功能可找到最大受力和最小的步数,将该步的结构取出进行进一步分析和计算。2.7 检查过渡态各态原子距离NEB计算完成或NEB计算生成插入态后,检查每个态之间原子的距离和。例如:进入examples/2.6-2.9文件夹,调用vcz 2.7功能:cd 2.6-2.9
vcz
2
7
选择需要检查的结构,默认为POS,代表POSCAR,可选为CONT,代表CONTCAR。输出如图所示:第一列是POSCAR或CONTCAR,第二列是IMAGE,第三列是原子距离和。其值来自于vtst工具,如第一行的值为:dist.pl 00/POSCAR 01/POSCAR
计算前检查POSCAR,用于确保插入过渡态准备,线性插入时各态距离和应相等。计算后检查CONTCAR,用于查看过渡态中是否有某个态弛豫到不可预测的结构导致过渡态不收敛。2.8 检查过渡态计算结果NEB计算完成后或计算中,检查当前目录及所有子目录下的NEB计算结果(忽略静态计算和结构优化),如OUTCAR或者log中有错误(ERROR)或警告(WARNING)或提示所在位置,检查完成后输出结果。例如:进入examples/2.6-2.9文件夹,调用vcz 2.8功能:cd 2.6-2.9
vcz
2
8
输出如图所示:每一个有NEB计算的路径都会输出计算结果。第一列为不同的IMAGE,第二列为原子最大受力,第三列为该IMAGE总能,第四列为以IMAGE00作为参考原点是的能量差,最大能量差即为势垒,对应的IMAGE为鞍点。如数据所示,该扩散过程(fcc Fe的自扩散)的扩散势垒为1.39 eV.2.9 检查过渡态振动分析结果NEB振动分析结束后,检查当前目录及所有子目录下的原子振动频率(尝试频率)结果并计算有效频率。例如:进入examples/2.6-2.9文件夹,调用vcz 2.9功能:cd 2.6-2.9
vcz
2
9
输出如图所示:如数据所示,[True, True, False] 说明该子目录下包含初态和鞍点态振动分析,不包含末态。第一个1f 2f 3f为迁移原子在初态结构中三个方向的振动,振动频率分别为6.59, 6.17和4.99 THz。第二个1f 2f 3f为迁移原子在鞍点态结构中三个方向的振动,振动频率分别为6.92, 4.67和5.81 THz,其中f/i表示第三个方向上为虚频。该扩散过程原子的有效频率为:初态三个振动之积比鞍点态两个振动之积(排除虚频),结果为: 6.28 THz。本例是fcc Fe的自扩散,扩散前后结构等价,初态和末态相同,因此无需算末态振动。通常体系中对称性不高,如有2个以上缺陷时,初态和末态是不等价的,此时反向方扩散的势垒就是以末态能量为原点时鞍点的能量,对应的有效频率为末态三个振动之积比鞍点态两个振动之积(排除虚频)。(在NEB模块2.3功能中输入参数包含末态时,2.9功能会自动计算反方向扩散的有效频率。)(3) Test 模块通常,一个体系在大规模进行计算和分析之前,需要进行截断能测试和K点测试确定合适的ENCUT设置和KPOINS设置。该模块提供了快捷的Vasp截断能测试和K点测试功能。用户界面:包含功能:cd /home/zhangzd/bin/VaspCZ/examples
3.1 截断能测试做截断能测试的目的是选取一个合适的截断能,截断能决定了Vasp计算过程中被作为贋势处理的电子波函数的范围。截断能太小,计算得到的体系总能不可信,截断能太大,计算中迭代需要花费大量资源。准备好输入文件(INCAR,POSCAR,POTCAR,KPOINTS和Vasp.sh)后,输入参数即可快捷提交截断能测试任务。例如:进入examples/3.1文件夹,调用vcz 3.1功能:cd 3.1
vcz
3
1
输入参数有:任务名前缀、节点数、核数和截断能列表。默认参数为:cd 3.2
vcz
3
2
输入参数有:任务名前缀、节点数、核数和K点列表。默认参数为:import VaspCZ.zzdlib as zzd
此处只列出各模块功能,详细接口说明见API文档(1) shell模块(图片来源网络,侵删)
0 评论