2018版lammps安装教程
Ubuntu下安装单机并行lammps 2018版
网上前辈们写的帖子大多需要修改Makefile.g++文件,修改方式复杂且易出错,最新版的lammps已经不再提供此文件。从源头上弄清楚Makefile.ubuntu文件的意义,减少了对fftw和openmpi路径的修改,从而避免的犯错的重灾区。
笔者所用操作系统为Ubuntu16.04,Ubuntu下安装LAMMPS并行版需要安装必要的依赖包,(重复安装无影响)。
1. sudo su (输入密码后继续)
2. apt-get install gcc
3. apt-get install g++
4. apt-get install gfortran
准备安装包
fftw-3.3.7.tar.gz
lammps-stable.tar.gz (解压后为lammps-16Mar18)
openmpi-3.0.0.tar.gz
选择fftw3和openmpi的原因是最新版lammps解压后/lammps/src/MAKE/MACHINES/Makefile.ubuntu中包含以下注释:
# ubuntu = Ubuntu Linux box, g++, openmpi, FFTW3
准备工作:在 /home 文件夹下建立三个文件夹,分别命名为 fftw,openmpi,lammps(可自定义),将相应安装包分别解压到这三个文件夹中,操作与Windows中无异(如果新装的ububtu中无法直接打开压缩包,可以使用 tar xvzf 命令,这个教程很简单,网上一大堆)。接下来就是安装fftw和openmpi。
1 安装fftw
在/lammps/src/MAKE/OPTIONS路径下有Makefile.fftw文件,通过查看以下内容可知lammps默认fftw调用路径为/usr/local,为了后续编译lammps方便,将fftw安装到此路径下。
FFT_INC = -DFFT_FFTW3 -I/usr/local/include
FFT_PATH = -L/usr/local/lib
FFT_LIB = -lfftw3
输入指令:
1. cd fftw
2. sudo ./configure --prefix=/usr/local --enable-float
3. sudo make -j4 (-j4 意为调用4核编译,具体核数看电脑情况)
4. sudo make install
5. cd
2 安装openmpi
在\lammps\src\MAKE\OPTIONS路径下有Makefile.g++_openmpi_link文件,通过查看以下内容可知lammps默认openmpi调用路径为/usr/local。
MPI_INC = -DMPICH_SKIP_MPICXX -DOMPI_SKIP_MPICXX=1 -I/usr/local/include
MPI_PATH = -L/usr/local/lib
MPI_LIB = -lmpi -lmpi_cxx
输入指令:
1. cd openmpi
2. sudo ./configure --prefix=/usr/local
3. sudo make -j4 (-j4 意为调用4核编译,具体核数看电脑情况)
4. sudo make install
5. cd
3 安装lammps
/lammps/src/MAKE/MACHINES文件下将Makefile.ubuntu剪切到/lammps/src/MAKE文件夹下,这样该文件夹就包括Makefile.mpi、Makefile.serial、Makefile.ubuntu三个编译文件。打开Makefile.ubuntu文件,将划线部分删除。
LMP_INC = -DLAMMPS_GZIP -DLAMMPS_JPEG -DLAMMPS_PNG -DLAMMPS_FFMPEG
(由于lammps运行过程中不需要图片支持,因而将关于图片这几行删除)
JPG_INC =
JPG_PATH =
JPG_LIB = -ljpeg -lpng
不需要修改openmpi和fftw的路径文件,因为之前两步的安装已经为这一步打好了基础。修改完成后保存就行。
输入指令:
1. cd
2. cd lammps/src
3. sudo make ubuntu -j4 (-j4 意为调用4核编译,具体核数看电脑情况)
成功的话会生成lmp_ubuntu(会有一个带锁的标志,在/lammps/src目录下)
4 测试一下
到lammps/examples/shear文件夹中,在in.shear文件中寻找下面这一行,并将前面的#删掉:
#dump 1 all atom 100 dump.shear
输入指令:
1. cd lammps/examples/shear
2. /usr/local/bin/mpirun -np 3 /home/yi/lammps/src/lmp_ubuntu < in.shear
(路径自定义后需要修改路径;3是调用核心数,可自定义;yi是用户名,需自行修改;顺利的话可以生成dump.shear文件。)
如果认为每次需要写这么复杂的路径,可简化操作,需要设置环境变量,在桌面下打开终端输入gedit .bashrc,在最后面 fi 下面添加下面两行,
export PATH=/usr/local /bin:$PATH
export LD_LIBRARY_PATH=/usr/local/lib:/home/**(用户名)/lammps/src:$LD_LIBRARY_PATH
右上角保存后终端输入命令source .bashrc即可。
此时若想运行lammps进行计算,指令可简化为:
1. cd lammps/examples/shear
2. mpirun -np 3 lmp_ubuntu < in.shear
5 使用VMD可视化
进入VMD网站,下载压缩包,根据要求注册完毕。我选的是1.93版本,照惯例先解压到自定义的vmd文件夹中,运行代码:
1. cd vmd
2. sudo ./configure LINUXAMD64
3. cd src
4. sudo make install –j4 (-j4 意为调用4核编译,具体核数看电脑情况)
安装成功以后直接在命令行里输入vmd就可以将程序调出来,选择New Molecule,然后导入我们之前计算得到的dump.shear文件,记得在Determine file type一栏选择LAMMPS trajectory选项,选择Load,得到剪切的构型,拖动main对话框下面的滑动条就可以看到体系的剪切行为,大功告成!