C/C++教程

lammps 在Ubuntu 16.04LTS服务器并行安装—— ATC 扩展包的安装

本文主要是介绍lammps 在Ubuntu 16.04LTS服务器并行安装—— ATC 扩展包的安装,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

本文来源:“分子动力学”公众号

原文链接:https://mp.weixin.qq.com/s/box3_u5LpB9GtQlevt1DDQ

假装所有的依赖包都没有安装,那么在root权限下输入下面的命令:apt-get install gccapt-get install g++apt-get install mpi-default-apt-get install libfftw3apt-get install gfortran即可把这些包都安装好。

解压缩 lammps源程序: tar -xvf lammps-stable.tar.gz

首先进入 lammps-11Aug17/lib/linalg 目录:

cd lammps-11Aug17/lib/linalg/

运行命令:make -f Makefile.gfortran

即可生成 liblinalg.a 文件,以备后用。

在 lammps-11Aug17/src 目录内预编译:

make lib-atcmake lib-atc args="-m mpi"

编译成功在最后都会显示:Build was successful编译成功后,会在目录lammps-11Aug17/lib/atc 内生成两个文件:libatc.a 和 Makefile.lammps这个Makefile.lammps 里面有 ATC 所需要的信息。

cd lammps-11Aug17/src/MAKE/MACHINES

把Makefile.ubuntu复制到 src/MAKE 目录下:cp Makefile.ubuntu …/

可以看到此时 lammps-11Aug17/src/MAKE目录下有下面三个Makefile文件:Makefile.mpi Makefile.serial Makefile.ubuntu

把lammps-11Aug17/lib/atc/Makefile.lammps 的信息添加到 Makefile.ubuntu 内

如下:

Settings that the LAMMPS build will import when this package library is used

user-atc_SYSINC =user-atc_SYSLIB = -llinalg -lgfortranuser-atc_SYSPATH = -L…/…/lib/linalg$(LIBOBJDIR)

同时,的ubuntu服务器不需要输出图片,因此在目录 lammps-11Aug17/src/MAKE 内的Makefile.ubuntu 里把 jpg 有关的行都注释掉,否则后面的安装会出问题。如下,灰色背景的部分删掉:############################################################################## LAMMPS ifdef settings# see possible settings in Section 2.2 (step 4) of manualLMP_INC = -DLAMMPS_GZIP -DLAMMPS_JPEG -DLAMMPS_PNG-DLAMMPS_FFMPEG

*******************************************************************************************# LIB = name(s) of JPEG library and/or PNG library

JPG_INC =JPG_PATH =JPG_LIB = -ljpeg -lpng

*******************************************************************************************EXTRA_INC = (LMPINC)(LMPINC)(PKG_INC) (MPIINC)(MPIINC)(FFT_INC) $(JPG_INC) $(PKG_SYSINC)EXTRA_PATH = (PKGPATH)(PKGPATH)(MPI_PATH) $(FFT_PATH) $(JPG_PATH) $(PKG_SYSPATH)

EXTRA_LIB = (PKGLIB)(PKGLIB)(MPI_LIB) $(FFT_LIB) $(JPG_LIB) $(PKG_SYSLIB)EXTRA_CPP_DEPENDS = $(PKG_CPP_DEPENDS)EXTRA_LINK_DEPENDS = $(PKG_LINK_DEPENDS)

#############################################################################

到lammps-11Aug17/src/目录下执行:

make package-status查看有哪些包是yes态和no态;yes表示安装,no表示不安装。用make yes-包名或make no-包名, 加载/取消你安装的包。选择自己必要的包就行了,特别注意,选择了需要的包,也得跟自己的电脑支持情况对应。我的选择有:make no-REAXmake no-GPUmake no-MEAMmake no-USER-SMDmake yes-KSPACEmake yes-MOLECULEmake yes-RIGIDmake yes-USER-REAXCmake yes-USER-MISC

make yes-USER-ATC

再查看是否yes了make package-status

make ubuntu

命令,等待安装,经过漫长的安装过程之后,屏幕提示生成 lmp_ubuntu ,即安装好了。此文件在目录lammps-11Aug17/src 内。

并把lmp_ubuntu复制到目录:/usr/local/bin 内cp lmp_ubuntu /usr/local/bin

安装完成后设置环境变量sudo vim /etc/profile

#在文件最下面加入如下内容export PATH=/usr/local/bin:$PATH

#保存关闭文件后执行:source /etc/profile

那么并行版的lammps就安装好了,安装目录在/usr/local/bin在其他目录下可以直接输入 lmp_ubuntu 的后续命令了。

which lmp_ubuntu结果显示:/usr/local/bin/lmp_ubuntu

成功了。

这篇关于lammps 在Ubuntu 16.04LTS服务器并行安装—— ATC 扩展包的安装的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!