Lammps的安装

Lammps版本升级较快,各种版本安装过程大致相同,可根据不同版本微调。

一、lammps非并行安装(单机版)

1、解压lammps数据包: 

gunzip lamps.tar.gz

tar xvf lamps.tar

为方便可以将解压得到的lammps重命名

mv lammps-1May10  lmp

 

2、cd ~/lmp/src/STUBS

make clean

make

 

3、cd  ~/lmp/src/MAKE

vi Makefile.serial 

出现的当前部分,需修改部分已用红色标出(如果机器安装了g++4则无需修改):

# g++ = RedHat Linux box, g++4, gfortran, no MPI,no FFT
       SHELL = /bin/sh
       # ---------------------------------------------------------------------
       # compiler/linker settings
       # specify flags and libraries needed for your compiler
       CC =                      g++4        g++4该为g++
       CCFLAGS =          -g -O
       DEPFLAGS =        -M
       LINK =                   g++4         g++4该为g++
       LINKFLAGS =       -g -O
       LIB =           
       ARCHIVE =           ar
       ARFLAGS =          -rc
       SIZE =                   size
       # --------------------------------------------------------------------

 

存档,退出。

 

4、cd ~/lmp/src

make clean-all

make serial

 

linux开始编译,完成后在当前/src下生成lmp_serial的可执行文件(绿色)

可运行。(运行方法:./lmp_serial<in.lmp)

 

二、lammps并行安装

1、解压lammps数据包: 

gunzip lamps.tar.gz

tar xvf lamps.tar

为方便可以将解压得到的lammps重命名

mv lammps-1May10  lmp

 

2、并行安装需要fftw、mpich库,较新的版本又添加了可选择库jpeg 库。

通常的并行计算linux机器都会安装fftw和mpich库(jpeg库可不用选择),若没有安装,可按附录中的方法自行安装。

假如以上库都已经安装,下面进入lammps的并行安装过程(以Makefile.g++为例):

cd ~/lmp/src/MAKE

vi Makefile.g++

需要修改的部分如下(红色标出):

 

第一部分:

# g++ = RedHat Linux box, g++4, MPICH2, FFTW

SHELL = /bin/sh

# ---------------------------------------------------------------------

# compiler/linker settings

# specify flags and libraries needed for your compiler

CC =                 g++4        g++4改为mpic++

CCFLAGS =      -g -O # -Wunused

DEPFLAGS =    -M

LINK =               g++4        g++4改为mpic++

LINKFLAGS =    -g -O
       LIB =           
       ARCHIVE = ar
       ARFLAGS = -rc
       SIZE =  size

# ---------------------------------------------------------------------

 

第二部分:

# MPI library, REQUIRED
       # see discussion in doc/Section_start.html#2_2 (step 5)
       # can point to dummy MPI library in src/STUBS as in Makefile.serial
       # INC = path for mpi.h, MPI compiler settings
       # PATH = path for MPI library
       # LIB = name of MPI library

MPI_INC =       -I/opt/mpich/include    -DMPICH_SKIP_MPICXX    #安装的mpich的mpi.h头文件的路径,需核对改成自己的路径

MPI_PATH =   -L/opt/mpich/lib                                                       #安装的mpich的mpich.a库的路径,需核对改成自己的路径

MPI_LIB =       -lmpich -lpthread

 

第三部分:

# FFT library, can be -DFFT_NONE if not using PPPM from KSPACE package

# INC = -DFFT_FFTW, -DFFT_INTEL, -DFFT_NONE, etc, FFT compiler settings

# PATH = path for FFT library

# LIB = name of FFT library

FFT_INC =       -I/opt/fftw/include    -DFFT_FFTW

FFT_PATH =   -L/opt/fftw/lib

FFT_LIB =       -lfftw

 

(第四部分可选:新版本中有jpeg库的调用,建议不调用,即把下处注释掉;如果调用,方法同上述两个库的调用类同

# LAMMPS ifdef options, see doc/Section_start.html

LMP_INC = -DLAMMPS_GZIP   # -DLAMMPS_JPEG 

 

3、关于各种package的选择与安装(可选,非必须):

(1)添加或者删除某个/些package采用这些命令(含义见manual):

make yes-***, make no-***, make yes-standard, make no-standard, make yes-user, make no-user, make yes-all, make no-all"

如果有添加或删除package的动作,则自动修改src/Makefile.package文件,并在编译时候调用。

(2)几个特殊的package的安装如下:poems, meam, reax

cd ~/lmp/lib/poems

make –f Makefile.g++

cd ~/lmp/lib/meam

make –f Makefile.gfortran   (安装meam)

cd /mnt/lmp/lib/reax

make –f Makefile.gfortran

注意,meam和reax这两个package的源文件是用Fortran写的。为避免两种代码之间的调用不出现麻烦,需要修改Makefile中的

meam_SYSLIB,reax_SYSLIB,meam_SYSPATH,reax_SYSPATH等几行,如下:

# additional system libraries needed by LAMMPS package libraries

# these settings are IGNORED if the corresponding LAMMPS package

#   (e.g. gpu, meam) is NOT included in the LAMMPS build

# SYSLIB = names of libraries

# SYSPATH = paths of libraries

gpu_SYSLIB =         -lcudart

meam_SYSLIB =      -lifcore -lsvml -lompstub -limf -lmeam –lgfortran

reax_SYSLIB =         -lifcore -lsvml -lompstub -limf -lreax –lgfortran

user-atc_SYSLIB =  -lblas -llapack

gpu_SYSPATH =     -L/usr/local/cuda/lib64

meam_SYSPATH =  -L/opt/lmp/lib/meam    #核对修改为自己的路径

reax_SYSPATH =     -L/opt/lmp/lib/reax

user-atc_SYSPATH =  

(4)如要添加USER-ATC,则编译LAMMPS之前到/lib/atc/目录中编译该package,并修改相应的Makefile文件中的user-atc_SYSLIB和

user-atc_SYSPATH两行。

(5)如果要添加GPU,则需要系统安装NVIDIA Cuda相关工具,并在/lib/gpu/目录中编译,同时需要修改Makefile文件中的gpu_SYSLIB

和gpu_SYSPATH两行(manual 2.8)。

 

4、  cd ~/lmp/src

make clean-all

make g++    

lammps开始安装,最后在当前目录下可生成lmp_g++的可执行文件(绿色)。

可运行。

 

附录:1、fftw的安装(记得下载fftw-2.1.5版本)

gunzip fftw-2.1.5.tar.gz

tar xvf fftw-2.1.5.tar

cd ~/fftw-2.1.5

./configure -prefix=/opt/fftw -enable -float

make

make install   (fftw-2.1.5即安装在/opt/fftw下)

 

2、mpich的安装

gunzip mpich2-1.3.1.tar.gz

tar xvf mpich2-1.3.1.tar

cd ~/mpich2-1.3.1

./configure -prefix=/opt/mpich

make

make install   (mpich即安装在/opt/mpich下)

 

然后配置环境变量

cd

vi  .bashrc

开始编译为

expot  PATH=/opt/mpich/bin:$PATH

export LD_LIBRARY_PATH=/opt/mpich/lib:/opt/fftw/lib:$LD_LIBRARY_PATH

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值