计算化学公社

 找回密码 Forget password
 注册 Register
Views: 17488|回复 Reply: 6
打印 Print 上一主题 Last thread 下一主题 Next thread

[VASP] 单机编译vasp 5.4.1

[复制链接 Copy URL]

98

帖子

1

威望

2834

eV
积分
2952

Level 5 (御坂)

最近重新安装vasp5.4.1,发现都写的很复杂,包括需要专门安装FFT等,实际上利用intel自带的MKL库,也能顺利编译。前提条件,系统中已经安装intel和openmpi等,并设置好环境变量。我的系统中intel和openmpi版本分别是2011_sp1.10.319和openmpi-1.6.2,将系统自带的Makefile.include.linux.intel稍作修改即可,参考http://cms.mpi.univie.ac.at/wiki/index.php/Installing_VASP。特别注意,BLACS处不修改的话,也能编译,但是运行时出错。

操作步骤如下:
(1)在同一文件夹中解压vasp5.4.1和vasp 5.lib;
(2)进入vasp.5.4.1中,修改Makefile.include.linux.intel改名为makefile.include,并按照如下修改其内容;
(3)make all 即可得到三个不同的版本vasp_std, vasp_gam, vasp_tcl


# Precompiler options
CPP_OPTIONS= -DMPI -DHOST=\"IFC91_ompi\" -DIFC \
              -DCACHE_SIZE=4000 -DPGF90 -Davoidalloc \
              -DMPI_BLOCK=8000 -DscaLAPACK -Duse_collective \
              -DnoAugXCmeta -Duse_bse_te \
              -Duse_shmem -Dtbdyn

CPP        = fpp -f_com=no -free -w0  $*$(FUFFIX) $*$(SUFFIX) $(CPP_OPTIONS)

FC         = mpiifort                                                                                                      此处需要修改为:mpif90
FCL        = mpiifort -mkl                                                                                             此处需要修改为:mpif90 -mkl

FREE       = -free -names lowercase

FFLAGS     = -assume byterecl
OFLAG      = -O2
OFLAG_IN   = $(OFLAG)
DEBUG      = -O0

MKL_PATH   = $(MKLROOT)/lib/intel64
BLAS       =
LAPACK     =
BLACS      = -lmkl_blacs_intelmpi_lp64                                                                  此处需要修改为:-lmkl_blacs_openmpi_lp64
SCALAPACK  = $(MKL_PATH)/libmkl_scalapack_lp64.a $(BLACS)

OBJECTS    = fftmpiw.o fftmpi_map.o fftw3d.o fft3dlib.o \
              $(MKLROOT)/interfaces/fftw3xf/libfftw3xf_intel.a
INCS       =-I$(MKLROOT)/include/fftw

LLIBS      = $(SCALAPACK) $(LAPACK) $(BLAS)

OBJECTS_O1 += fft3dfurth.o fftw3d.o fftmpi.o fftmpiw.o
OBJECTS_O2 += fft3dlib.o

# For what used to be vasp.5.lib
CPP_LIB    = $(CPP)
FC_LIB     = $(FC)
CC_LIB     = icc
CFLAGS_LIB = -O
FFLAGS_LIB = -O1
FREE_LIB   = $(FREE)

OBJECTS_LIB= linpack_double.o getshmem.o

# Normally no need to change this
SRCDIR     = ../../src
BINDIR     = ../../bin

makefile.include

1.24 KB, 下载次数 Times of downloads: 32

评分 Rate

参与人数
Participants 2
eV +10 收起 理由
Reason
小书童 + 5 谢谢分享
sobereva + 5

查看全部评分 View all ratings

81

帖子

0

威望

593

eV
积分
674

Level 4 (黑子)

2#
发表于 Post on 2017-5-24 18:12:18 | 只看该作者 Only view this author
楼主厉害,请教一下:初学者如何学习vasp。现在提交input文件,Input文件用什么编写,如何提交到服务器都不会,这些看什么资料啊

98

帖子

1

威望

2834

eV
积分
2952

Level 5 (御坂)

3#
 楼主 Author| 发表于 Post on 2017-5-24 18:17:08 | 只看该作者 Only view this author
网上搜搜,应该有很多教程的

6万

帖子

99

威望

5万

eV
积分
120159

管理员

公社社长

4#
发表于 Post on 2017-5-25 02:32:20 | 只看该作者 Only view this author
hopedream 发表于 2017-5-24 18:12
楼主厉害,请教一下:初学者如何学习vasp。现在提交input文件,Input文件用什么编写,如何提交到服务器都不 ...

用任何程序都不要脱离手册
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办极高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入北京科音微信公众号获取北京科音培训的最新消息,并避免错过网上有价值的计算化学文章!
欢迎加入人气极高、专业性特别强的理论与计算化学综合交流群思想家公社QQ群(群号见此链接),合计达一万多人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大、极为流行的量子化学波函数分析程序)
Google Scholar:https://scholar.google.com/citations?user=tiKE0qkAAAAJ
ResearchGate:https://www.researchgate.net/profile/Tian_Lu

81

帖子

0

威望

593

eV
积分
674

Level 4 (黑子)

5#
发表于 Post on 2017-5-26 16:01:15 | 只看该作者 Only view this author
sobereva 发表于 2017-5-25 02:32
用任何程序都不要脱离手册

好的,谢谢社长!

81

帖子

0

威望

593

eV
积分
674

Level 4 (黑子)

6#
发表于 Post on 2017-5-26 16:01:26 | 只看该作者 Only view this author
lindlar 发表于 2017-5-24 18:17
网上搜搜,应该有很多教程的

好的,谢谢!

11

帖子

0

威望

33

eV
积分
44

Level 2 能力者

7#
发表于 Post on 2017-8-18 17:05:06 | 只看该作者 Only view this author
楼主,请问我在学校服务器编译时候出现这个
make[1]: Entering directory `/public/home/houxh5697/LUKE/vasp/vasp.5.4.1/build/std'
makefile:52: Extraneous text after `else' directive
makefile:59: Extraneous text after `else' directive
makefile:59: *** only one `else' per conditional.  Stop.
make[1]: Leaving directory `/public/home/houxh5697/LUKE/vasp/vasp.5.4.1/build/std'
make: *** [std] Error 2
是怎么一回事?

本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2025-8-16 11:02 , Processed in 0.188785 second(s), 24 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list