搜档网
当前位置:搜档网 › vasp 安装心得

vasp 安装心得

vasp 安装心得
vasp 安装心得

VASP5.2安装心得

2014-05-07 来源:小木虫作者: yysskk

花了五天时间终于学会怎么装VASP了,在此写下心得体会,供后人参考。个人觉得最难的一步就是makefile文件,网上流传着各种各样的版本,每个人都说自己编译成功了,却又各不相同,也说不清为什么,给新手极大的困扰。在此会详细介绍makefile的文件结构。其余大部分内容都是参考前人的,就不一一注明出处了。

一、系统、编译程序及准备工作

我用的是centos6.5+icc2011+ifort2011+openmpi1.6.5

1.1编译器安装

系统安装不说了,网上教程多得是。Icc和ifort可以申请免费非商业版本,icc和ifort都各自带了一个MKL,使用的时候别搞混了。装2011的时候会缺组件,用yum都可以免费下载。装编译器的时候会要求关闭selinux,按照给出的步骤关闭即可。之后会说系统不兼容,但是可以继续装,默认安装路径是在/opt下面。装完之后会有提示,把安装目录

/bin/ifortvars.sh 写到环境变量中,注意32/64位系统的参数不一样。C语言编译器建议用icc,毕竟是intel出品,针对自家cpu肯定有大量优化,效率上高于gcc是肯定的。这是装完之后的提示:

For csh/tcsh:

$ source install-dir/bin/compilervars.csh intel64

For bash:

$ source install-dir/bin/compilervars.sh intel64

To invoke the installed compilers:

For C++: icpc

For C: icc

For Fortran: ifort

之后重启或者重新登录,输入

# which icc

/opt/intel/composer_xe_2011_sp1.10.319/bin/intel64/icc

# which ifort

/opt/intel/composer_xe_2011_sp1.9.293/bin/intel64/ifort

能找到路径说明安装对了,然后再开始下一步,安装openmpi

1.2 openmpi安装

我在这里吃过很大的亏,所以单独拿出来讲。Openmpi开源,网上自己下载。解压后进入文件夹,输入./configure CC=icc CXX=icpc F77=ifort FC=ifort(参考了

CentOS5.2+mkl 10.1.0.015+openmpi 1.3.2+ifort 11.0.074编译vasp5.2)icc是C语言编译,icpc是C++编译,ifort是Fortran编译,输入./configure –help会有说明,这里要与VASP使用相同的编译器,不加参数的话就会调用gcc编译去了。强烈建议安装在默认目录,我第一次装没装在默认目录,之后运行需要手动加一大堆参数。之后按次序输入make,make install,安装完成,加入环境参数。

这里要加入三个环境参数:

export PATH=/usr/local/bin:$PATH

export LD_LIBRARY_PATH=/usr/local/lib/openmpi:$LD_LIBRARY_PATH

export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

具体路径找自己的,其中少了第三个路径的话可以编译文件,但是运行编译后的文件会说找

不到库函数。

强烈建议安装完成之后进入解压文件夹(不是安装目录)下的example文件夹中测试程序,输入make之后会自动编译,完成之后输入mpirun –np 8 hello_f90,如果安装正确,会出现:

Hello, world, I am 0 of 8

Hello, world, I am 1 of 8

Hello, world, I am 2 of 8

Hello, world, I am 3 of 8

Hello, world, I am 4 of 8

Hello, world, I am 5 of 8

Hello, world, I am 6 of 8

Hello, world, I am 7 of 8

8是我服务器的cpu数量。我在网上看到很多人没有经过这一步测试就直接去编译VASP,结果两个软件的错误都堆在了一起,到底哪一步错了都不知道。

这里还有一个严重的错误是提示找不到mpivars.sh文件,我曾经用

ubuntu12.04+icc2013+ifort2013编译到了这一步,最后不得不放弃,换成了

centos+2011版编译器,小木虫上的人都说是2013版有问题。其实是缺少了MPI runtime 这个运行组件,这个不用注册可以直接在intel官网上下载安装(/opt/intel目录下会多出一个impi文件夹),然后把目录添加进环境变量就行了。2013版应该也能编译,当时是不知道是缺这个组件就直接重装系统了。

最后就进军VASP了

二、VASP.lib及其它库函数编译

Lib编译非常简单,参考(CentOS5.2+mkl 10.1.0.015+openmpi 1.3.2+ifort 11.0.074编译vasp5.2)把编译器路径改一下就行

CPP = /opt/intel/cce/10.1.018/bin/icc -E -P -C $*.F >$*.f

CC= /opt/intel/cce/10.1.018/bin/icc

FC= /opt/intel/Compiler/11.0/074/bin/intel64/ifort

然后make就编译完成了,会有一个警告提示,不用管。

之后编译MKL和GotoBLAS, GotoBLAL可免费下载(或者完全只用MKL也行),MKL 编译还是参考那篇文章,进入

/opt/intel/mkl/10.1.0.015/interfaces/fftw3xf

make libem64t compiler=intel

完成之后在该目录下得到一个新文件和文件夹,然后编译GotoBLAS,解压后进入文件夹,make(这个不能像上面一样加参数,没研究过怎么改编译器),最后成功会有提示,默认gcc编译。里面有一个测试文件夹,我进去之后make提示说缺少文件,不过不影响后面VASP的编译,前提是编译完GotoBLAS后有正常结束提示,会显示用的编译器和其它信息。

还有一个bug是对于某些CPU编译会出错,此时要用命令make TARGET=NEHALEM,而且必须联网,编译过程中会下载文件。

完成这些工作之后就能进行最后一步VASP主程序编译了。

三、VASP主程序编译

个人觉得最难的一步莫过于编辑makefile文件,第一次看的时候就像看天书一样,虽然作者给了很多注释,但依然搞不清什么地方该注释,什么地方要取消注释。尤其是网上流行的各个makefile文件版本都不相同,让人十分困惑。

makefile文件非常简单,把注释都拿掉了之后就变成:

.SUFFIXES: .inc .f .f90 .F(*)

SUFFIX=.f90(*)

FC=/opt/intel/composer_xe_2011_sp1.9.293/bin/intel64/ifort

FCL=$(FC)

CPP_ = ./preprocess <$*.F | /usr/bin/cpp -P –C -traditional > $*$(SUFFIX) (*)CPP = $(CPP_) -DHOST=\"LinuxIFC\" \

-DCACHE_SIZE=12000 -DPGF90 -Davoidalloc \

-DRPROMU_DGEMV -DRACCMU_DGEMV

FFLAGS = -FR -assume byterecl -heap-arrays 64(*)

OFLAG=-O2 -ip(*)

OFLAG_HIGH = $(OFLAG) (*)

OBJ_HIGH =(*)

OBJ_NOOPT =(*)

DEBUG = -FR -O0(*)

INLINE = $(OFLAG) (*)

BLAS=

LAPACK=

LIB = -L../vasp.5.lib -ldmy \

../vasp.5.lib/linpack_double.o $(LAPACK) \

$(BLAS)

FFT3D =

-----------------------------------------------------------------

#mpi

-------------------------------------------------------------------

FC=/usr/local/bin/mpif90

FCL=$(FC)

CPP = $(CPP_) -DMPI -DHOST=\"LinuxIFC\" -DIFC \

-DCACHE_SIZE=8000 -DPGF90 -Davoidalloc -DNGZhalf \

-DMPI_BLOCK=8000 -DRPROMU_DGEMV -DRACCMU_DGEMV

BLAS=

LAPACK=

SCA=

LIB = -L../vasp.5.lib -ldmy \

../vasp.5.lib/linpack_double.o $(LAPACK) \

$(SCA) $(LAPACK) $(BLAS)

FFT3D =

这份文件可以分为两部分,前半部分有大量的注释,有很多参数路径之类的需要手动调整。后半部分是编译文件的部分,调用各种程序来编译VASP,而我们关心的只是文件的前半部分。以上列出的是文件前半部分不带注释的内容,我标了(*)的地方,在文件的前半部分中是唯一的,必须要写的。不带(*)的地方,可以分为两部分,每个部分都一模一样,分别是:

FC=

FCL=

CPP=

BLAS=

LAPACK=

SCA=

LIB=

FFT3D =

可以对照着一份完整的makefile文件看一下,FC=FCL是指定的编译程序,串行是ifort,并行是mpif90.cpp是可带参数的相当于gcc的命令,貌似用来预处理?BLAS、LAPACK 是相应库函数的路径,最终都会被包含在LIB路径下面(注意到LIB=最后有$(LAPACK)$(BLAS)),还有就是独立的FFT3D。整个makefile的前半部分就是在选择参数和路径,用于后半部分的文件编译。带(*)的部分是必须有的,可以认为是基本参数。其余部分很明显是并行和串行编译的命令,编译的时候选其中一组就行。这一部分实际上就传递了四个变量而已,分别是编译器FC,预处理命令CPP,库函数路径LIB和FFT3D,注意到串行和并行的FFT3D文件是不一样的。BLAS、LAPACK已经被包括在了LIB中,makefile文件的后半部分是没有这两个变量的。所以这份文件就非常好理解了,串行和并行有各自独立的四个变量,调试好带(*)的基本参数,选好串行或者并行编译,其余部分注释掉就OK。

现在更改库文件之类的操作就很好理解了,我使用GotoBLAS编译的,只要把相应字段的路径改成MKL的,就是MKL编译。(5.2版本作者还推荐GotoBLAS,但是5.3版本就推荐全部改用MKL库文件)

很多人虽然编译出来了,但是没有很好的理解这份文件,注释的地方十分混乱。甚至我看过一份makefile文件,把串行和并行的字段全都取消了注释,虽然最后也能成功编译,但是

显然有运气成分。这里特别感谢chuanghua304给的makefile文件,我就是参考他的文件才首次编译成功的。

至于编译时附带的参数在这里就不讨论了。我不是搞编程的,参数怎么添加,如何优化完全不懂。我是看了几个版本的makefile文件,大家怎么加参数,我也怎么加参数。

最后说一点感想,这五天装机器学到的东西实在太多了。之前只是勉强会一点啊linux的基本操作,经过了这几天的折磨,熟练了linux的操作,学会了怎么装各种程序,以及出错了怎么解决。Linux出错真的非常恶心人,错误千奇百怪,经常还是因为环境变量设置不正确造成的。还有就是出错了一定要google,百度非常不靠谱。openmpi缺少mpivars.sh的错误就没一个中文答案是对的,反而有很多英文论坛给出了正确的解决方法。还有最终重要的一点就是要学会自己思考,每一步都要想为什么这么做才能有提高。老是跟着这些教程帖子,亦步亦趋,就算装上了也不会有什么收获。

最后感谢一下mywai520,jerkwin,liliangfang,chuanghua304,mengfc的指导,第一次编译错误的时候完全摸不着头脑,都想放弃了。是以上几位指出了我的文件路径设置有误,才最终安装成功。

vasp 安装心得

VASP5.2安装心得 2014-05-07 来源:小木虫作者: yysskk 花了五天时间终于学会怎么装VASP了,在此写下心得体会,供后人参考。个人觉得最难的一步就是makefile文件,网上流传着各种各样的版本,每个人都说自己编译成功了,却又各不相同,也说不清为什么,给新手极大的困扰。在此会详细介绍makefile的文件结构。其余大部分内容都是参考前人的,就不一一注明出处了。 一、系统、编译程序及准备工作 我用的是centos6.5+icc2011+ifort2011+openmpi1.6.5 1.1编译器安装 系统安装不说了,网上教程多得是。Icc和ifort可以申请免费非商业版本,icc和ifort都各自带了一个MKL,使用的时候别搞混了。装2011的时候会缺组件,用yum都可以免费下载。装编译器的时候会要求关闭selinux,按照给出的步骤关闭即可。之后会说系统不兼容,但是可以继续装,默认安装路径是在/opt下面。装完之后会有提示,把安装目录 /bin/ifortvars.sh 写到环境变量中,注意32/64位系统的参数不一样。C语言编译器建议用icc,毕竟是intel出品,针对自家cpu肯定有大量优化,效率上高于gcc是肯定的。这是装完之后的提示: For csh/tcsh: $ source install-dir/bin/compilervars.csh intel64 For bash: $ source install-dir/bin/compilervars.sh intel64 To invoke the installed compilers:

vasp并行总结 安装

一、安装vasp前的软件要求: ①C++编译器用intel的(l_cprof_p_11.1.07) ②Fortran编译器用intel的ifort11(l_cprof_p_11.1.072) ③l_mpi_p_3.2.011 ④MKL 有非商业版本可以免费下载,本来要用l_mkl_p_10.2.5.035的,但发现ifort11里/home/bjwang/intel/Compiler/11.1/072/mkl就有,这里免装,在.bashrc里把ifort11下mkl的路径包括进去。 附完整安装后的.bashrc source /home/bjwang/intel/Compiler/11.1/072/bin/intel64/ifortvars_intel64.sh---ifort source /home/bjwang/intel/Compiler/11.1/073/bin/intel64/iccvars_intel64.sh ---c++ export LD_LIBRARY_PATH=/home/bjwang/intel/Compiler/11.1/072/ifort/mkl/lib/em64t/:$LD_LIBRA RY_PATH ------ifort中包含的mkl source /home/bjwang/intel/impi/3.2.0.011/bin64/mpivars.sh --------l_mpi 请确认mpi、C++、Fortran编译器都已正确安装,并设定好相关的PATH路径和 LD_LIBRARY_PATH路径,具体参见新浪博客的其它相关内容。 示意如下:

VASP使用总结

VASP计算的理论及实践总结 一、赝势的选取 二、收敛测试 1、VASP测试截断能和K 点 2、MS测试 三、结构弛豫 四、VASP的使用流程(计算性质) 1、VASP的四个输入文件的设置 2、输出文件的查看及指令 3、计算单电能 (1) 测试截断能 (2) 测试K点 4、进行结构优化 5、计算弹性常数 6、一些常用指令

一、赝势的选取 VASP赝势库中分为:PP和PAW两种势,PP又分为SP(标准)和USPP(超软)。 交换关联函数分为:LDA(局域密度近似)和GGA(广义梯度近似)。GGA 又分为PW91和PBE。 在VASP中,其中pot ,pot-gga是属于超软势(使用较少)。Paw, paw-pbe ,和paw-gga是属于PAW。采用较多的是PAW-pbe 和PAW-gga。 此外vasp 中的赝势分为几种,包扩标准赝势(没有下标的)、还有硬(harder)赝势(_h)、软(softer)赝势(_s), 所谓的硬(难以赝化),就是指该元素原子的截断动能比较大,假想的势能与实际比较接近,计算得到的结果准确,但比较耗时,难以收敛。软(容易赝化),表示该元素原子的截断动能比较小,赝势模型比较粗糙,但相对简单,可以使计算很快收敛(比如VASP开发的超软赝势)。即硬的赝势精度高,但计算耗时。软的精度低,容易收敛,但节省计算时间。 另一种情况:如Gd_3,这是把f电子放入核内处理,对于Gd来说,f电子恰好半满。所以把f电子作为价电子处理的赝势还是蛮好的(类似还有Lu,全满)。(相对其他的4f元素来说,至于把f电子作为芯内处理,是以前对4f元素的通用做法。计算结果挺好) 常用的做法是:用两种赝势测试一下对自己所关心的问题的影响情况。在影响不大的情况下,选用不含4f电子的赝势(即后缀是3),一来减少计算量,二来避免DFT对4f电子的处理。 【1.赝势的选择: vasp的赝势文件放在目录~/vasp/potentials 下,可以看到该目录又包含五个子目录pot pot_GGA potpaw potpaw_GGA potpaw_PBE ,其中每一个子目录对应一种赝势形式。

最新VASP磁性计算总结篇

以下是从VASP在线说明书整理出来的非线性磁矩和自旋轨道耦合的计算说明。非线性磁矩计算: 1)计算非磁性基态产生WAVECAR和CHGCAR文件。 2)然后INCAR中加上 ISPIN=2 ICHARG=1 或11 !读取WAVECAR和CHGCAR文件 LNONCOLLINEAR=.TRUE. MAGMOM= 注意:①对于非线性磁矩计算,要在x, y 和z方向分别加上磁矩,如MAGMOM = 1 0 0 0 1 0 !表示第一个原子在x方向,第二个原子的y 方向有磁矩 ②在任何时候,指定MAGMOM值的前提是ICHARG=2(没有WAVECAR和CHGCAR 文件)或者ICHARG=1 或11(有WAVECAR和CHGCAR文件),但是前一步的计算是非磁性的(ISPIN=1)。 磁各向异性能(自旋轨道耦合)计算: 注意:LSORBIT=.TRUE. 会自动打开LNONCOLLINEAR= .TRUE.选项,且自旋轨道计算只适用于PAW赝势,不适于超软赝势。 自旋轨道耦合效应就意味着能量对磁矩的方向存在依赖,即存在磁各向异性能(MAE),所以要定义初始磁矩的方向。如下: LSORBIT = .TRUE. SAXIS = s_x s_y s_z(quantisation axis for spin) 默认值:SAXIS=(0+,0,1),即x方向有正的无限小的磁矩,Z方向有磁矩。 要使初始的磁矩方向平行于选定方向,有以下两种方法: MAGMOM = x y z ! local magnetic moment in x,y,z SAXIS = 0 0 1 ! quantisation axis parallel to z or MAGMOM = 0 0 total_magnetic_moment ! local magnetic moment parallel to SAXIS (注意每个原子分别指定) SAXIS = x y z !quantisation axis parallel to vector (x,y,z),如 0 0 1 两种方法原则上应该是等价的,但是实际上第二种方法更精确。第二种方法允许读取已存在的WAVECAR(来自线性或者非磁性计算)文件,并且继续另一个自旋方向的计算(改变SAXIS 值而MAGMOM保持不变)。当读取一个非线性磁矩计算的WAVECAR时,自旋方向会指定平行于SAXIS。

vaspkit.014安装使用说明

vaspkit-0.14 修正版发布 安装下载指南 1、下载网址: https://www.sodocs.net/doc/1b12513257.html,/downloads221/sourcecode/unix_linux/detail1038949.html (免费的) 2、利用xshell将软件包拷到系统中,建立文件夹vaspkit。 3、在gunzip vaspkit-0.14.tar.gz等到vaspkit-0.14.tar,再tar –xvf vaspkit-0.14.tar得到文件 夹vaspkit-0.14。 4、进入vaspkit-0.14文件夹,cat INSTALL,发现 Just do one thing: make Then you will get vaspkit program.然后退出,在vaspkit-0.14目录下输入make命令,得到vaspkit 可执行文件。 5、再将vaspkit文件分别拷到需要进行计算的文件下进行计算即可,输入./vasokit出现如下的运行页面。按照需要输入不同的数字即可。 相信很多人都为vasp计算结果的处理感到很头痛,网上虽然有很多处理vasp计算结果的软件或者脚本,不过要么只针对于某一个问题,要么使用不太友好。为此,我弄了一个软件包,把结构可视化,提取态密度,能带,电荷,自旋密度等数据等功能整合到一个软件包里,方便大家的使用。由于时间有限,我只花了两天时间做得,所以vaspkit工具包比较粗糙,而且有很多bug, 目前只实现最基本的功能。由于vaspkit 目前处于测试阶段,要不断的更新,所以不上传到论坛了。感兴趣的朋友可以到下载。希望大家能提出宝贵的意见以及需要增加的功能。同时,我们希望对vaspkit感兴趣的朋友一起加入并不断地增加功能,让vaspkit能成为一个很强大的数据处理工具。在此,特别感谢论坛版主csfn, foxhunter, 语过添情以及蓝等朋友的支持。 当前版本:0.14 . 1,修正若干bug; 2,增加输出xsf格式结构文件; 3,增加输出DOS积分; 4,增加提取指定原子指定轨道的能带数据. 主要功能有: 1,把POSCAR 或者CONTCAR转化为cif或xsf格式。 2,提取电荷,自旋密度,使用vesta软件可视化。 3,提取总,投影态密度数据; 4,提取总,投影能带数据。 期待增加功能: 1,增加计算差分电荷数据; 2,xsf格式电荷密度。 文件输出格式: 1,结构可视化文件输出文件为poscar.cif 或contcar.cif, 用MS, VESTA或其它可视化软件软件打开;2,总态密度输出文件为tdos.dat, 偏态密度文件为pdos.dat, 使用origin或gnuplot绘制。 3,能带数据输出文件名为band-x.dat . 同样使用origin或gnuplot绘制。 4,电荷和自旋密度输出文件名分别为chgden.dat 和spnden.dat, 用VESTA打开。注意同时把OUTCAR

VASP安装说明(简单易懂)

VASP安装说明(简单易懂) 1.安装linux 由于不熟悉linux的操作,所以很多问题无法解决,所以直接在windows下面安装了虚拟机然后安装linux操作系统。 (1) 虚拟机的安装 我所使用的是VMware,安装过程同普通的windows下软件的安装。下载地址:www.https://www.sodocs.net/doc/1b12513257.html,或者www.https://www.sodocs.net/doc/1b12513257.html, (2) VMware配置linux,过程如下: a)选择File菜单下的“New Virtual Machine”出现新虚拟机向导后单击“下一步” 选择“Typical”典型安装。 b)再单击“下一步”,在选择操作系统界面的“Guest Operation System”中选择 “Linux”,然后单击Version对应的下拉菜单选择具体的Linux版本,此处我选择的是“Red Hat Linux”。 c)单击“下一步”进入安装目录选择界面。该界面上面的文本框是系统的名字,保持默认值即 可,下面的文本框需要选择虚拟机操作系统的安装位置。 d)根据需要选择好后,单击“下一步”按钮,出现设置虚拟机内存大小的界面。Linux9.O对 内存的要求是:文本模式至少需要64MB;图形化模式至少需要

128MB,推荐使用192MB。我选 择的是192MB。 e)单击“下一步”按钮进入网络连接方式选择界面。VMware有四种网络设置方式,一般来说, Bridged方式使虚拟机就像网络内一台独立的计算机一样,最为方便好用(四种连网方式的区 别可参考VMware的有关资料)。此处我选择Brided方式。 f)单击“下一步”按钮进入虚拟磁盘的设置界面。这里有三种方式(Create a new virtual disk、Use an existing virtual disk、Use a physical disk)可供选 择、建议初学者选择“Create a new Virtual disk”,其含义是新建一个虚拟磁盘,该 虚拟磁盘只是主机下的一个独立文件。 g)在“下一步”中设置磁盘大小。在此、我们采用默认的4GB。 h)单击“下一步”进入文件存放路径选择界面。 在此界面可单击Browse按钮进行设置。此处我们使用默认值,单击“完成”按钮。 至此,完成一个虚拟机的配置。 (2) VMware下linux的安装 安装前需做好准备工作:购买一套Red Hat Linux 9.0的安装盘,共三张。或下载Red Hat Linux 9.0安装所需要的三个

CTI平台软件安装说明

CTI平台软件安装说明

目录 1 安装SFU (5) 1.1安装文件释放 (5) 1.2 安装过程 (6) 1.2.1 安装执行 (6) 1.2.2 填写用户信息 (6) 1.2.3 软件协议签订 (7) 1.2.4 安装方式选择 (7) 1.2.5 组件选择 (8) 1.2.6 安全设置 (8) 1.2.7 映射方式选择 (9) 1.2.8 映射文件选择 (9) 1.2.9 安装目录选择 (10) 1.2.10 安装过程 (10) 1.2.11 安装完成 (11) 1.3 配置过程 (11) 1.3.1 检查启动服务 (11) 1.3.2 Configuration配置 (11) 1.3.3 Maps配置 (12) 1.3.4 保存配置 (14) 1.4 安装完成 (15) 2配置SFU (15) 2.1设置SFU服务器共享目录 (15) 2.2设置windows访问权限 (16) 2.3创建座席录音子目录 (18) 2.3.1 检查子目录的windows权限 (19) 2.4设置rt-sc的nfs共享路径 (19) 2.5检查sfu服务器nfs共享是否生效 (20) 2.5.1 通过交换机来检查 (20) 2.5.2 通过vasp来检查 (21) 3 SFU服务器上安装JDK、TOMCAT (21) 3.1 安装JDK (21) 3.2 安装TOMCA T (21) 4安装ccmp (23) 4.1 SFU服务器上安装ccmp (23) 4.2 CCMP配置 (23) 4.3 配置数据库IP地址 (23) 4.4 配置录音路径 (23) 5 安装vasptools (24) 5.1 SFU服务器上安装vasptools (24) 5.2 V ASPTOOLS配置 (24) 5.3 系统管理配置 (25) 6安装PCMPlayer (25)

VASP遇到小总结问题

VASP 计算的过程遇到的问题 01、第一原理计算的一些心得 (1)第一性原理其实是包括基于密度泛函的从头算和基于Hartree-Fock自洽计算的从头算,前者以电子密度作为基本变量(霍亨伯格-科洪定理),通过求解Kohn-Sham方程,迭代自洽得到体系的基态电子密度,然后求体系的基态性质;后者则通过自洽求解Hartree-Fock方程,获得体系的波函数,求基态性质; 评述:K-S方程的计算水平达到了H-F水平,同时还考虑了电子间的交换关联作用。 (2)关于DFT中密度泛函的Functional,其实是交换关联泛函 包括LDA,GGA,杂化泛函等等 一般LDA为局域密度近似,在空间某点用均匀电子气密度作为交换关联泛函的唯一变量,多数为参数化的CA-PZ方案; GGA为广义梯度近似,不仅将电子密度作为交换关联泛函的变量,也考虑了密度的梯度为变量,包括PBE,PW,RPBE等方案,BL YP泛函也属于GGA; 此外还有一些杂化泛函,B3L YP等。 (3)关于赝势 在处理计算体系中原子的电子态时,有两种方法,一种是考虑所有电子,叫做全电子法,比如WIEN2K中的FLAPW方法(线性缀加平面波);此外还有一种方法是只考虑价电子,而把芯电子和原子核构成离子实放在一起考虑,即赝势法,一般赝势法是选取一个截断半径,截断半径以内,波函数变化较平滑,和真实的不同,截断半径以外则和真实情况相同,而且赝势法得到的能量本征值和全电子法应该相同。 赝势包括模守恒和超软,模守恒较硬,一般需要较大的截断能,超软势则可以用较小的截断能即可。另外,模守恒势的散射特性和全电子相同,因此一般红外,拉曼等光谱的计算需要用模守恒势。 赝势的测试标准应是赝势与全电子法计算结果的匹配度,而不是赝势与实验结果的匹配度,因为和实验结果的匹配可能是偶然的。 (4)关于收敛测试 (a)Ecut,也就是截断能,一般情况下,总能相对于不同Ecut做计算,当Ecut增大时总能变化不明显了即可;然而,在需要考虑体系应力时,还需对应力进行收敛测试,而且应力相对于Ecut的收敛要比总能更为苛刻,也就是某个截断能下总能已经收敛了,但应力未必收敛。 (b)K-point,即K网格,一般金属需要较大的K网格,采用超晶胞时可以选用相对较小的K网格,但实际上还是要经过测试。 (5)关于磁性 一般何时考虑自旋呢?举例子,例如BaTiO3中,Ba、Ti和O分别为+2,+4和-2价,离子全部为各个轨道满壳层的结构,就不必考虑自旋了;对于BaMnO3中,由于Mn+3价时d 轨道还有电子,但未满,因此需考虑Mn的自旋,至于Ba和O则不必考虑。其实设定自旋就是给定一个原子磁矩的初始值,只在刚开始计算时作为初始值使用,具体的可参照磁性物理。 (6)关于几何优化 包括很多种了,比如晶格常数和原子位置同时优化,只优化原子位置,只优化晶格常数,还有晶格常数和原子位置分开优化等等。

vasp编译

(1)准备 1. sudo apt-get install g++ sudo apt-get install build-essential sudo apt-get install gcc-multilib sudo apt-get install libstdc++5 sudo apt-get install openjdk-6-jre-headless sudo apt-get install ia32-libs sudo apt-get install lib32stdc++6 sudo apt-get install libc6-dev-i386 sudo apt-get install g++-multilib sudo apt-get install gfrotran 1 2 3 tar -2. xzvf xxx #xxx 指压缩包的名称 cd 解压后目录 ./install.sh ##########安装过程很简单,安装提示就行######## 安装完成后,修改环境变量 1 vi ~/.bashrc 在末尾添加 source /opt/intel/bin/compilervars.sh intel64 (64位版本) source /opt/intel/bin/compilervars.sh ia32 (32位版本) 1 source ~/.bashrc 4. 编译mpi 首先下载mpich2的安装文件 1 2 3 4 5 6 tar mpich2压缩包 cd 文件夹 ./configure --prefix=安装目录 f77=ifort f90=ifort fc=ifort make make install vi ~/.bashrc 笔者安装目录在/opt/mpich2,也可以放在其他文件夹中,注意执行make install 用户需要有写入权限 在文件最后写入如下代码 1 2 3 4 #mpi2 start PATH=/usr/local/mpich2-1.2.1p1/bin:$PATH export PATH #mpi2 end 再source 一下 1 source ~/.bashrc 5.编译fftw

vasp常见问题

最近在学vasp,这篇文章是百度文库找到的,看了不错,转载一把。另外附上vasp程序,linux中下载后无须安装即可使用。单机中可能会出现内存溢出问题,可以放机群上使用。 01、第一原理计算的一些心得 (1)第一性原理其实是包括基于密度泛函的从头算和基于Hartree-Fock自洽计算的从头算,前者以电子密度作为基本变量(霍亨伯格-科洪定理),通过求解Kohn-Sham方程,迭代自洽得到体系的基态电子密度,然后求体系的基态性质;后者则通过自洽求解Hartree-Fock方程,获得体系的波函数,求基态性质;评述:K-S方程的计算水平达到了H-F 水平,同时还考虑了电子间的交换关联作用。 (2)关于DFT中密度泛函的Functional,其实是交换关联泛函,包括LDA,GGA,杂化泛函等等一般LDA为局域密度近似,在空间某点用均匀电子气密度作为交换关联泛函的唯一变量,多数为参数化的CA-PZ方案;GGA为广义梯度近似,不仅将电子密度作为交换关联泛函的变量,也考虑了密度的梯度为变量,包括PBE,PW,RPBE等方案,BL YP泛函也属于GGA;此外还有一些杂化泛函,B3L YP等。(3)关于赝势在处理计算体系中原子的电子态时,有两种方法,一种是考虑所有电子,叫做全电子法,比如WIEN2K中的FLAPW方法(线性缀加平面波);此外还有一种方法是只考虑价电子,而把芯电子和原子核构成离子实放在一起考虑,即赝势法。 一般赝势法是选取一个截断半径,截断半径以内,波函数变化较平滑,和真实的不同,截断半径以外则和真实情况相同,而且赝势法得到的能量本征值和全电子法应该相同。赝势包括模守恒和超软,模守恒较硬,一般需要较大的截断能,超软势则可以用较小的截断能即可。另外,模守恒势的散射特性和全电子相同,因此一般红外,拉曼等光谱的计算需要用模守恒势。 赝势的测试标准应是赝势与全电子法计算结果的匹配度,而不是赝势与实验结果的匹配度,因为和实验结果的匹配可能是偶然的。(4)关于收敛测试(a)Ecut,也就是截断能,一般情况下,总能相对于不同Ecut做计算,当Ecut增大时总能变化不明显了即可;然而,在需要考虑体系应力时,还需对应力进行收敛测试,而且应力相对于Ecut的收敛要比总能更为苛刻,也就是某个截断能下总能已经收敛了,但应力未必收敛。(b)K-point,即K网格,一般金属需要较大的K网格,采用超晶胞时可以选用相对较小的K网格,但实际上还是要经过测试。(5)关于磁性一般何时考虑自旋呢?举例子,例如BaTiO3中,Ba、Ti和O分别为+2,+4和-2价,离子全部为各个轨道满壳层的结构,就不必考虑自旋了;对于BaMnO3中,由于Mn+3价时d轨道还有电子,但未满,因此需考虑Mn的自旋,至于Ba和O则不必考虑。其实设定自旋就是给定一个原子磁矩的初始值,只在刚开始计算时作为初始值使用,具体的可参照磁性物理。(6)关于几何优化包括很多种了,比如晶格常数和原子位置同时优化,只优化原子位置,只优化晶格常数,还有晶格常数和原子位置分开优化等等。在PRL一篇文章中见到过只优化原子位置,晶格常数用实验值的例子(PRL 100, 186402 (2008));也见到过晶格常数先优化,之后固定晶格常数优化原子位置的情况;更多的情况则是Full geometry optimization。 一般情况下,也有不优化几何结构直接计算电子结构的,但是对于缺陷形成能的计算则往往要优化。(7)关于软件软件大致分为基于平面波的软件,如CASTEP、PWSCF 和ABINIT等等,计算量大概和体系原子数目的三次方相关;还有基于原子轨道线性组合的软件(LCAO),比如openmx,siesta,dmol等,计算量和体系原子数目相关,一般可模拟较多原子数目的体系。 V ASP是使用赝势和平面波基组,进行从头量子力学分子动力学计算的软件包,它基于CASTEP1989版开发。V AMP/V ASP中的方法基于有限温度下的局域密度近似(用自由能作

VASP5.3.5并行版详细安装教程

vasp5.3.5安装教程 制作者:甄江苏(湘潭大学材料科学与工程学院)1.安装Intel编译器: 。。。。。。。。 然后添加环境变量,在/etc/profile文件中最下面插入: source /opt/intel/composer_xe_2015.2.164/bin/ifortvars.sh intel64 source /opt/intel/composer_xe_2015.2.164/mkl/bin/mklvars.sh intel64 然后在终端执行: [root]# source /etc/profile 这里提供的安装包会把其他的Intel的组件包括并行编译器也安装上,但是后面不用它的mpirun这个命令,而是用mpich的mpirun命令,所以进入/opt/intel/composer_xe_2015.2.164/文件夹,把文件夹mpirt改名,让它的路径失效,比如改成mpirt11111。 此外,安装完后后,最好把licence文件放到安装目录里,Intel编译器指定的license 存放目录之一是/opt/intel/composer_xe_2015.2.164/license/这个文件夹,这个文件夹要自己新建,然后把license文件拷贝进去即可,不然的话,对于共享此软件的其他节点来说,会找不到license。 然后进入/opt/intel/composer_xe_2015.2.164/mkl/interfaces/fftw3xf/文件夹,执行:[root]# make libintel64 将会生成一个名为libfftw3xf_intel.a的静态库文件,用于后面vasp的链接。 2.安装openmpi:(openmpi总是出问题,无法多节点并行,原因不明,所以建 议用后面的mpich) 进入openmpi解压目录,执行: [root]# ./configure --prefix=/opt/openmpi CC=icc CXX=icpc F77=ifort FC=ifort [root]# make all install 然后添加环境变量,在/etc/profile中添加: export PATH=$PATH:/opt/openmpi/bin export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/openmpi/lib export MANPATH=$MANPATH:/opt/openmpi/share/man

VASP5.4编译过程说明

V ASP5.4编译 1.编译器安装:parallel_studio_xe_2011_sp1_update2_intel64.tgz 解压安装即可,./install.sh:安装中使用的激活码为L3FN-2VRGKX7K 安装完设置环境变量: For csh/tcsh: $ source install-dir/bin/compilervars.csh intel64 For bash: $ source install-dir/bin/compilervars.sh intel64 测试是否成功:which icc /opt/intel/composer_xe_2011_sp1.9.293/bin/intel64/icc which ifort /opt/intel/composer_xe_2011_sp1.9.293/bin/intel64/ifort 2.安装openmpi:openmpi-1.4.5.tar.gz 解压,然后输入./configure CC=icc CXX=icpc F77=ifort FC=ifort 指定编译器之后依次执行make,make install 安装完成后,加入如下三个环境变量: export PATH=/usr/local/bin:$PATH export LD_LIBRARY_PATH=/usr/local/lib/openmpi:$LD_LIBRARY_PATH export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH 具体路径找自己的,其中少了第三个路径的话可以编译文件,但是运行编译后的文件会说找不到库函数。建议安装完成之后进入解压文件夹(不是安装目录)下的example文件夹中测试程序,输入make之后会自动编译,完成之后输入mpirun –np 8 hello_f90,如果安装正确,会出现: Hello, world, I am 0 of 8 Hello, world, I am 1 of 8 Hello, world, I am 2 of 8 Hello, world, I am 3 of 8 Hello, world, I am 4 of 8 Hello, world, I am 5 of 8 Hello, world, I am 6 of 8

VASP+FROPHO 计算晶体材料声子谱及热性能

V ASP+FROPHO 计算晶体材料声子谱及热性能梁超平(liangchaoping@https://www.sodocs.net/doc/1b12513257.html,), May. 2010 作者简介:梁超平,中南大学粉末冶金研究院07级硕士研究生,师从龚浩然教授,主要研究方向为计算材料学算法编程及材料跨尺度计算模拟。 目录 一、编译fropho (1) 二、一个简单的算例:BCC Zr的声子谱以及声子态密度 (2) 简介 Fropho是一个使用Fortran语言编写用于实现晶体声子分析程序。它目前提供了V ASP 、 Wien2K 的接口用来计算原子受力,通过分析原子受力得到力常数矩阵。从而根据力常数矩阵进行材料的声子谱及热性能分析。其主要功能有: 计算声子色散谱; 计算声子态密度,包括分立态密度; 声子热力学性质,包括自由能,热容量,焓。 接下来简要介绍程序的编译,通过一个简单的算例来介绍它的使用方法。 一、编译fropho 1. 编译Fropho需要lapack数学库文件。因此首先从https://www.sodocs.net/doc/1b12513257.html, 下载lapack-3. 2.gz; 2. 使用sftp上传至远程服务器; 3. 解压缩lapack-3.2.gz; @node64:~> tar -zxvf lapack-3.2.gz 4. 进入lapack-3.2,将make.inc.example 拷贝成make.inc

@node64:~/lapack-3.2> cp make.inc.example make.inc 5. 修改make.inc和Makefile 将make.inc第22和26行改为ifort或者pgf90编译器,这样运算速度更快,这里的编 译器要跟后面编译fropho一致。然后将Makefile第11行注释掉,打开第12行 6. 使用make lib 安装数学库,转好后在当前目录产生lapack_LINUX.a、blas_LINUX.a 和tmglib_LINUX.a。 @node64:~/lapack-3.2> make lib 7. 安装fropho 从https://www.sodocs.net/doc/1b12513257.html,/ 下载fropho-1.3.3.tar.gz 8. 解压缩; @node64:~/fropho> tar -zxvf fropho-1.3.3.tar.gz 9. 进入fropho-1.3.3并configure设置好相应的编译器和链接数学库,链接这两个数学库 的顺序不能错,不然不能使用; @node64:~/fropho/fropho-1.3.3> ./configure --prefix=where do you want to install fropho FC=ifort LIBS= "/your lapack-3.2 direction/lapack-3.2/liblapack.a your lapack-3.2 direction/lapack-3.2/libblas.a" 10. 然后make; @node64:~/fropho/fropho-1.3.3>make @node64:~/fropho/fropho-1.3.3>make install 11. 编译rubytools,进入rubyTools目录; @node64:~/fropho/fropho-1.3.3/rubyTools> ./makeTools.sh 12. 大功告成,安装圆满完成了。 二、一个简单的算例:BCC Zr的声子谱以及声子态密度 1.首先准备好优化的Zr POSCAR文件,以及INPHON。 INPHON的内容为(注:由于程序编写原因INPHON的格式必须严格固定,=号两端必 须有空格) NDIM = 3 3 3 #超晶胞尺寸 LSUPER = .TRUE. #控制是否产生超晶胞

VASP并行版本安装

VASP install (1) yum install gcc-c++ [aaa@localhost]yum install gcc-c++ ●gcc, g++ and gfortran is required by some packages. (2) intel C&fortran ipcc&ifort [aaa@localhost]tar zxvf parallel_studio_xe_2013_update2.tgz [aaa@localhost]cd parallel_studio_xe_2013_update2 [aaa@localhost]./install.sh Figure 1. (a) screen-shot during installing of intel fortran. Setting .bashrc enviroment Figure 1. (b) .bashrc environment setting for intel fortran. ●.bashrc setting: must add in .bashrc in either root or common users (3) Installing openmpi (3.1) [aaa@localhost] ./configure CC=icc CXX=g++ F77=ifort FC=ifort --prefix=/home/aaa/programs/openmpi (3.2) [aaa@localhost] make all (3.3) [aaa@localhost] make install Figure 2. bashrc environment setting for openmpi.

vasp.5.2编译过程

Vasp.5.2编译 ⒈正常安装ifort编辑器(如vasp.4.6安装过程) 修改环境变量 # .bashrc # User specific aliases and functions # Source global definitions if [ -f /etc/bashrc ]; then . /etc/bashrc #IFORT=/home/usr1/intel/ PATH="/home/usr1/intel/fce/9.0/bin":${PATH} PATH="/home/usr1/intel/idbe/9.0/bin":${PATH} export PATH MANPATH="/home/usr1/intel/fce/9.0/man":${MANPATH} MANPATH="/home/usr1/intel/idbe/9.0/man":${MANPATH} export MANPATH LD_LIBRARY_PATH="/home/usr1/intel/fce/9.0/lib":${LD_LIBRARY_PATH} export LD_LIBRARY_PATH # INTEL_LICENSE_FILE="/home/usr1/intel/licenses":$INTEL_LICENSE_FILE export INTEL_LICENSE_FILE # fi ⒉安装mkl ⑴过程如vasp.4.6的过程 ⑵编译mkl的FFTW函数库:进入到opt/intel/mkl/xxxx/interfaces/fftw3xf(默认安装)的路径,在root权限下在终端键入make libem64t compiler=intel。 加入环境变量

CHGCAR--vasp手册

CHGCAR £le This £le contains the lattice vectors, atomic coordinates, the total charge density multiplied by the volume (r) ¤V cell on the £ne FFT-grid (NG(X,Y,Z)F), and the PAW one-center occupancies. CHGCAR can be used to restart VASP from an existing charge density, for visualisation the CHG £le should be used, since the PAW-one centre occupancies are dif£cult to parse. It is possible to avoid that the CHGCAR is written by setting LCHARG = .FALSE. in the INCAR £le (see section 7.45). In VASP, the density is written using the following commands in Fortran: WRITE(IU,FORM) (((C(NX,NY,NZ),NX=1,NGXC),NY=1,NGYZ),NZ=1,NGZC) The x index is the fastest index, and the z index the slowest index. The £le can be read format-free, because at least in new versions, it is guaranteed that spaces separate each number. Please do not forget to divide by the volume before visualizing the £le! For spinpolarized calculations, two sets of data can be found in the CHGCAR £le. The £rst set contains the total charge density (spin up plus spin down), the second one the magnetization density (spin up minus spin down). For non collinear calculations the CHGCAR £le contains the total charge density and the magnetisation density in the x, y and z direction in this order. For dynamic simulation (IBRION=0), the charge density on the £le is the predicted charge density for the next step: i.e. it is compatible with CONTCAR, but incompatible with the last positions in the OUTCAR £le. This allows the CHGCAR and the CONTCAR £le to be used consistently for a molecular dynamics continuation job. For static calculations and relaxations (IBRION=-1,1,2) the written charge density is the selfconsistent charge density for the last step and might be used e.g. for accurate band-structure calculations (see section 10.3). Mind: Since the charge density written to the £le CHGCAR is not the selfconsistent chargedensity for the positions on the CONTCAR £le, do not perform a bandstructure calculation (ICHARG=11) directly after a dynamic simulation (IBRION=0) (see section 10.3). Band decomposed charge density (parameters) 分波电荷密度计算 VASP can calculate the partial (band decomposed) charge density部分(分波)电荷密度 according to parameters specified in the file INCAR. It must be noted, that the densities calculated by VASP (including the band decomposed charge density) are always symmetrized对称的 using the space group空间群 and point group symmetry determined by VASP. 根据设置INCAR中的参数,VASP可以计算分波电荷密度,算分波电荷密度通常考虑空间群和点群对称性。 In some cases (calculation of charge from selected k-points) this can lead to undesired results for the band decomposed charge density. In this case, the symmetry needs to be switched off for the groundstate and successive band decomposed charge density calculations.

相关主题