美文网首页Lammps
ubuntu下lammps的安装

ubuntu下lammps的安装

作者: xukang919 | 来源:发表于2019-04-18 13:48 被阅读0次

    ---------ubuntu下lammps的安装----------
    1、前提条件
    2、安装lammps

    2-1 安装fftw
    2-2 安装mpich
    2-3 安装lammps

    3、配置环境

    ---------ubuntu下lammps的安装----------

    1、前提条件

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

    1.  sudo apt-get install gcc
      
    2.  sudo apt-get install g++
      
    3.  sudo apt-get install gfortran
      
    4.  sudo apt-get install make
      

    注意: 如果ubuntu的apt-get无法正常使用请
    sudo apt-get update

    准备安装包
    fftw-3.3.8.tar.gz http://www.fftw.org/download.html
    lammps-stable.tar.gz (解压后为lammps-22Aug18) https://lammps.sandia.gov/download.html
    mpich-3.2.1.tar.gz http://www.mpich.org/downloads/

    准备工作:在 /home/xukang/ 文件夹下建立文件夹/lammps,将相应安装包分别解压这个文件夹中.
    创建fftw3和mpich3文件夹用来安装

    接下来就是安装fftw和mpich。

    2、安装lammps

    2-1 安装fftw

    输入指令:

    $ cd ~/lammps/fftw-3.3.8 
    $ sudo ./configure --prefix=/home/xukang/lammps/fftw --enbale-shared=yes 
    $ sudo make
    $ make install
    

    /lammps/lammps-22Aug18/src/MAKE/OPTIONS路径下有Makefile.fftw文件,
    通过查看以下内容可知lammps默认fftw调用路径为/usr/local

    FFT_INC =            -DFFT_FFTW3 -I/usr/local/include
    FFT_PATH =      -L/usr/local/lib
    FFT_LIB =        -lfftw3
    

    2-2 安装mpich

    输入指令:

    1.        cd /home/xukang/lammps/mpich-3.2.1
    2.        sudo ./configure --prefix=/home/xukang/lammps/mpich
    3.        sudo make   
    4.        sudo make install
    

    /lammps/lammps-22Aug18/src/MAKE/OPTIONS路径下有Makefile.g++_mpich_link文件,
    通过查看以下内容可知lammps默认mpich调用路径为/usr/local

    MPI_INC = -DMPICH_SKIP_MPICXX -DOMPI_SKIP_MPICXX=1 -I/usr/local/include
    MPI_PATH = -L/usr/local/lib
    MPI_LIB =   -lmpi -lmpl -lpthread
    

    2-3 安装lammps

    1、串行的安装

    $ cd ~/lammps/lammps-22Aug18/src/STUBS,
    $ sudo make
    $ cd ~/lammps/lammps-22Aug18/src/MAKE
    

    该文件夹包括Makefile.mpi、Makefile.serial两个编译文件。
    Makefile.serial用来串行,Makefile.mpi用来并行

    打开Makefile.serial文件,配置fftw的路径即可
    /lammps/lammps-22Aug18/src/MAKE/OPTIONS路径下有Makefile.fftw文件,
    通过查看以下内容可知lammps默认fftw调用路径为/usr/local

    FFT_INC =            -DFFT_FFTW3 -I/usr/local/include
    FFT_PATH =      -L/usr/local/lib
    FFT_LIB =        -lfftw3
    

    但这里要将/usr/local/ 改成你的fftw所在路径

    2、并行的安装

    打开Makefile.mpi文件,配置mpich和fftw的路径
    首先将下面部分注释掉。

    LMP_INC =   -DLAMMPS_GZIP -DLAMMPS_MEMALIGN=64
    

    (由于lammps运行过程中不需要图片支持,因而将关于图片这几行斜线部分删除)

    还要需要修改mpich和fftw的路径文件,
    fftw与串行一样
    mpich与串行类似
    /lammps/lammps-22Aug18/src/MAKE/OPTIONS路径下有Makefile.g++_mpich_link文件,
    通过查看以下内容可知lammps默认mpich调用路径为/usr/local

    MPI_INC = -DMPICH_SKIP_MPICXX -DOMPI_SKIP_MPICXX=1 -I/usr/local/include
    MPI_PATH = -L/usr/local/lib
    MPI_LIB =   -lmpi -lmpl -lpthread
    

    但这里要将/usr/local/改成你的mpich所在路径
    修改完成后保存就行。

    3、接下来编译 LAMMPS 的库文件,我这里根据我自己的需求,选择编译了部分库 文件
    lib目录下
    输入指令:

    $  cd meam
    $  sudo make -f Makefile.gfortran
    
    $ cd poems
    $ sudo make -f Makefile.g++
    
    $ cd reax
    $ sudo  make -f Makefile.gfortran
    
    

    LAMMPS 是通过各个模块来实现分子动力学模拟里面不同的功能的,但每 一个具体的任务并不是需要用到 LAMMPS 所有的功能,我们可以选择安 装一些常用的模块,等遇到特别的需求时再来安装额外的模块。每一个模 块实现的具体功能,也通过查阅 LAMMPS 使用手册来获知。
    在 src 目录下运行 make yes-all
    这个命令告诉电脑,我要准备安装所有的模块了,然后再用排除法,告诉电 脑,哪些模块是不要安装的,比如我一般用不到 user-atc 模块,那么就 make no-user-atc。我也一般用不到 kim,kokkos,voronoi, user-qmmm, gpu, user-cuda, 当然,
    我用不到不代表你们用不到,要根据实际情况来判断。

    src目录下

    $   cd lammps/lammps-22Aug18/src/
    
    $   make package-status
    $   make yes-meam
    $   make yes-poems
    $   make yes-reax
    
    

    4、接着make生成lmp_mpi和lmp_serial的文件

    $   sudo make mpi 
    $   sudo make serial
    

    成功的话会生成lmp_mpi和lmp_serial的文件。

    5、测试一下
    /home/xukang/lammps/lammps-22Aug18/examples/min文件夹中

    串行
    $/home/xukang/lammps/lammps-22Aug18/src/lmp_serial <in.min

    并行
    $ /usr/local/bin/mpirun -np 3 /home/xukang/lammps/lammps-22Aug18/src/lmp_mpi < in.min

    3、配置环境

    此外我们可以设置环境变量,简化命令。
    $ vi .bashrc
    在最后一行加入

    export PATH="$PATH:/home/xukang/lammps/lammps-22Aug18/src:/home/xukang/lammps/mpich3/bin:/home/xukang/lammps/fftw/bin"
    export LD_LIBRARY_PATH=/home/xukang/lammps/fftw/lib:/home/xukang/lammps/mpich/lib:/home/**(用户名)/lammps/lammps-22Aug18/src:$LD_LIBRARY_PATH
    

    $ source .bashrc使得环境生效

    再次测试一下
    /home/xukang/lammps/lammps-22Aug18/examples/min文件夹中
    串行
    $ lmp_serial <in.min

    然而并行出错了

    /home/xukang/lammps/lammps-22Aug18/src/lmp_mpi: error while loading shared libraries: libmpi.so.12: cannot open shared object file: No such file or directory
    

    输入ldd ~/lammps/lammps-22Aug18/src/lmp_mpi

    发现libmpi.so.12 => not found
    应该是libmpi.so.12不在你的LD_LIBRARY_PATH路径下

    相关文章

      网友评论

        本文标题:ubuntu下lammps的安装

        本文链接:https://www.haomeiwen.com/subject/osgzwqtx.html