赞
踩
VASP是备受专业技术人员认可的DFT计算软件,每年发表论文超过1万篇,至2022年底,文章总量已超过11万篇。其计算结果不仅可以验证实验,更能够预测实验结果,指导实验路线。
本文为华算科技朱老师技术团队的Cilver老师和Ravi老师制作的《VASP官方入门手册》第三篇:VASP软件安装、编译及维护。本教程将详细介绍VASP软件及其计算方法,帮助大家快速入门VASP计算,搞定顶刊技能!
3 安装 VASP3.1
如何获取 VASP 软件包
VASP 不属于公共共享软件,只有在签订许可合同后才能获取。请将问题发送到 Doris Vogtenhuber (Doris.Vogtenhuber@univie.ac.at)。询问内容应包含对短期研究目的的简短描述(少于半页)。
3.2 安装 VASP
安装 VASP 需要基本的 UNIX 知识。用户应熟悉 UNIX 环境中的 tar、gzip 以及 make 命令。
VASP 要求在计算机上安装 BLAS 软件包。该软件包可从许多公共服务器上获取,例如 http://math-atlas.sourceforge.net,但如果可能的话,应使用机器供应商提供的优化 BLAS 软件包(见第 3.7 节)。
• 1. 从以下网址的下载门户获取源代码和赝势数据库:
www.vasp.at
安装 VASP,请为其创建一个目录。我们建议使用以下目录
˜/VASP/src
从您在下载门户网站上的账户的下载区域获取文件:vasp.X和vasp.X.lib的源代码分别存储在相应的VASP版本(VASP46和VASP5)的src和lib中。
vasp.X.tar.gz vasp.X.lib.tar.gz
赝势存储在 Potentials 子文件夹 LDA、PBE 和 PW91 下。
potUSPP XC type.tar.gz 文件包含 LDA、PW91 和 PBE 各交换相关类型 XC _type的超软赝势,potpaw XC type.tar.gz 文件包含 XC_type的投影缀加波(PAW)赝势。
这些文件应该在单独的目录中解压(分别为USPP和PAW赝势的每个XC_type创建一个目录),例如使用以下命令解压:
cd ˜/VASP
mkdir potUSPP_LDA
mkdir potUSPP_PW91
mkdir potPAW_LDA
mkdir potPAW.52_LDA
mkdir potPAW_PBE
mkdir potPAW.52_PBE
mkdir potPAW_PW91
将赝势的.tar.gz文件复制到相应的目录中,并通过以下方式解压.tar.gz文件:
tar -zxvf potXX.tar.gz
这将生成约 80 个目录,所有目录都包含一个文件 POTCAR.Z。
可以通过目录名称(如 Al、Si、Fe 等)识别生成势函数文件的元素。更多详情,请参阅第 10 节。
• 2. VASP的安装:在从下载门户获取vasp.X.tar.gz和vasp.X.lib.tar.gz文件之后,安装的步骤如下所示:
首先,使用gunzip解压缩*.gz文件:
gunzip vasp.X.tar.gz
gunzip vasp.X.lib.tar.gz
然后,使用tar命令解压缩vasp.*.tar文件,例如:
tar -xvf vasp.X.tar
tar -xvf vasp.X.lib.tar
每个代码发布版本X都会创建两个目录:
vasp.X.lib/ vasp.X.X/
进入vasp.X.lib目录,并将正确的makefile.machine文件复制到Makefile:
cd vasp.4.lib
cp makefile.machine Makefile
您可以从提供的 makefile 列表中选择 makefile.machine:
makefile.cray makefile.dec makefile.hp makefile.linux_abs makefile.linux_alpha makefile.linux_ifc_P4 makefile.linux_ifc_ath makefile.linux_pg
括号中的值表示VASP编译和执行出现问题的可能性:++ 表示没有问题;+ 表示通常没有问题;0 表示目前未知;- 表示不太可能。键入 make命令
编译完成后应该不会报错,但可能会出现警告。转到 vasp.X.x 目录。将相应的 makefile.machine 复制到 Makefile。现在检查 Makefile 中的前 10-20 行,查看是否有其他提示,如果有,请务必遵守这些提示,否则可执行文件可能无法正常运行。如果Makefile建议使用较低的优化精度编译某些例程,通常可以通过在 Makefile 末尾插入几行来实现。例如:
radial.o : radial.F
$(CPP)
$(F77) $(FFLAGS) -O1 $(INCS) -c $*$(SUFFIX)
最后,再次键入make
编译完成后,应该不会再出现报错(尽管可能会出现大量警告)。如果在编译过程中遇到问题,请首先确认是否完全遵循了 Makefile 中的指南操作。如果依旧存在问题,请键入以下命令(bash 或 ksh)生成错误报告:
make clean make >bugreport 2>&1
如果您使用 csh 或 tcsh,请键入:
make clean make >& bugreport
请将 Makefile、错误报告、确切的操作系统版本和确切的编译器版本(参见第 3.6 节)发送给我们。目前,我们只能解决下列平台的问题,因为我们无法访问其他操作系统:
makefile.dec makefile.linux_alpha makefile.linux_ifc_P4 makefile.linux_ifc_ath makefile.linux_pg makefile.rs6000 makefile.sp2
关于Sun平台的错误报告并不太有用,由于 Fortran 90 编译器的问题,vasp 无法在 Sun 机器上稳定运行。我们希望能得到解决该问题的建议。
注意:VASP makefile 假设机器上安装了优化的 BLAS 软件包。如果使用标准 makefile,则链接以下BLAS库:
libessl.a IBM RS6000, SP2, SP3 and SP4
libcxml.a True 64 Unix, and Alpha Linux
libblas.a SGI
libveclib.a HP
libsci.a CRAY C90
libmkl_p4 Intel P4, mkl performance library
通常这些软件包会在以" BLAS="开头的行或以"LIB="开头的行中进行指定。
如果您无法访问这些经过优化的 BLAS 库,可以从 http://math-atlas.sourceforge.net 下载基于 ATLAS 的 BLAS。在这种情况下(对于大多数 linux makefile 而言),必须对 Makefile 中的 BLAS 行进行手动优化。其他与 BLAS 相关的提示将在第 3.7 节和某些 makefile 中讨论。
下一步:创建一个工作目录,将 bench*.tar.gz 文件复制到该目录,并解压 benchmark.tar 文件。
gunzip <benchmark.tar.gz | tar -xvf -
然后输入以下命令 directory_where_VASP_resides/vasp
屏幕上将显示以下结果(VASP.4.5 及更新版本):
VASP.4.4.4 24.Feb 2000
POSCAR found : 1 types and 8 ionsWARNING: mass on POTCAR and INCAR are incompatible
typ 1 Mass 63.5500000000000 63.5460000000000
-----------------------------------------------------------------------------
| this differs from previous releases, where T was 2*E(kin)/(3 NIONS). |
| The new definition is more consistent |
| |
-----------------------------------------------------------------------------
file io ok, starting setup
WARNING: wrap around errors must be expected prediction of wavefunctions initialized entering main loop
N E dE d eps ncg rms rms(c)
CG : 1 -0.88871893E+04 -0.88872E+04 -0.15902E+04 96 0.914E+02
CG : 2 -0.90140943E+04 -0.12691E+03 -0.93377E+02 126 0.142E+02
CG : 3 -0.90288324E+04 -0.14738E+02 -0.49449E+01 112 0.293E+01 0.175E+01
CG : 4 -0.90228639E+04 0.59686E+01 -0.28031E+01 100 0.264E+01 0.373E+00
CG : 5 -0.90228253E+04 0.38602E-01 -0.64323E-01 100 0.337E+00 0.141E+00
CG : 6 -0.90227973E+04 0.28000E-01 -0.90047E-02 99 0.131E+00 0.643E-01
CG : 7 -0.90227865E+04 0.10730E-01 -0.31225E-02 98 0.677E-01 0.180E-01
CG : 8 -0.90227861E+04 0.43257E-03 -0.13932E-03 98 0.169E-01 0.800E-02
CG : 9 -0.90227859E+04 0.23479E-03 -0.47878E-04 62 0.814E-02 0.362E-02
CG : 10 -0.90227858E+04 0.41776E-04 -0.10154E-04 51 0.514E-02
1.T= 2080. E= -.90209042E+04 F= -.90227859E+04 E0= -.90220337E+04
EK= 0.18817E+01 SP= 0.00E+00 SK= 0.57E-05
bond charge predicted
N E dE d eps ncg rms rms(c)
CG : 1 -0.90226970E+04 -0.90227E+04 -0.32511E+00 96 0.935E+00
CG : 2 -0.90226997E+04 -0.27335E-02 -0.26667E-02 109 0.957E-01
CG : 3 -0.90226998E+04 -0.23857E-04 -0.23704E-04 57 0.741E-02 0.455E-01
CG : 4 -0.90226994E+04 0.34907E-03 -0.15696E-03 97 0.150E-01 0.121E-01
CG : 5 -0.90226992E+04 0.22898E-03 -0.54745E-04 75 0.915E-02 0.327E-02
CG : 6 -0.90226992E+04 0.13733E-04 -0.50646E-05 49 0.395E-02
1.T= 1984. E= -.90209039E+04 F= -.90226992E+04 E0= -.90219455E+04EK= 0.17948E+01 SP= 0.42E-03 SK= 0.37E-04
完整的输出结果可在文件 OSZICAR.ref 4.4.3 中找到。
如果输出正确,可以转到 bench.Hg.tar(这是一个显示机器性能的小基准)。
gunzip <bench.Hg.tar.gz | tar -xvf -directory_where_VASP_resides/vasp # this command will take 4-60 minutes
grep LOOP+ OUTCAR
基准测试需要 50 MBytes,耗时 4-60 分钟。最好在机器空闲时运行测试,但如果机器不处于空闲状态,结果也是可用的。请注意,LOOP+ 的最后一个典型值显示在第 3.8 节中。运行产生的输出结果可以在 tar 文件中的 OSZICAR.ref 文件(版本 VASP.4.4.3)中找到。
3.3 编译和维护 VASP
VASP位于两个目录中。vasp.4.lib 目录中的文件很少变化,但在支持新机器时可能会进行较大的改动。vasp.4.x 目录中包含 VASP 代码,每次更新都会发生变化。
vasp.4.x 目录中还有一些实用程序和维护程序,例如:
> makeparam工具. 这些文件不会自动创建,必须手动编译,例如在vasp.4.X目录中键入以下命令:
> make makeparam
3.4 更新 VASP
连接服务器并获取最新的 vasp.4.X.X.tar.gz 文件。使用uncompress或 gunzip 解压缩 *.Z of *.gz 文件。使用以下命令解压缩vasp.*.tar文件:
tar -xvf vasp.X.X.X.tar
注意:确保已删除或重命名旧的 vasp.4.X 目录。将最新版本解压缩到现有的 vasp.4.x 目录中通常会在编译时出现问题。需要按上述步骤进行。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。