Lammps安装

Lammps安装

https://zhuanlan.zhihu.com/p/36457551

Ubuntu下安装单机并行lammps 2018版

网上前辈们写的帖子大多需要修改Makefile.g++文件,修改方式复杂且易出错,最新版的lammps已经不再提供此文件。从源头上弄清楚Makefile.ubuntu文件的意义,减少了对fftw和openmpi路径的修改,从而避免的犯错的重灾区。

笔者所用操作系统为Ubuntu16.04,Ubuntu下安装LAMMPS并行版需要安装必要的依赖包,(重复安装无影响)。

如果ubuntu18.04LTS是minimal安装,装完之后先更新,源选择cn99最快。不然会少包。

openmpi官网被墙,你懂的。

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。

真的是/home么?

Lammps应该是解压到/home/**(用户名)/这个目录下才对

不然下面环境脚本错了

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-shared

(-float是单精度

3.     

(没有make的时候:

su root
apt-get install make

这里有坑,有的源没有,可以换阿里云

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 -j19

(-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  /etc/profile

,在最后面 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

David_Li

我还没有学会写个人说明!

暂无评论

相关推荐

穷人的ALL in One 系统的搭建(伪

因为接下来的某些需要以及个人心曲爱好,打算搭建一个ALL_in_One平台(,即通过虚拟化技术,将所有的需求都放在一台x86架构的电脑上。(arm的虚拟化没了解过))那么先说需求(可根据钱包鼓不鼓动态变化233)