LAMMPS是一種經典的分子動力學仿真代碼,設計用於在並行計算機上高效運行。它是由美國能源部下屬的桑迪亞國家實驗室(Sandia National Laboratories)開發的。它是一個開源代碼,根據GNU公共許可證(GPL)的條款自由分發。html
Github官網:https://github.com/lammps/lammps/tree/stablec++
所需編譯器套件:Intel Parallel Studio XE 2019git
從github上下載源碼(可能較慢,可用迅雷等工具加速):github
進入lammps項目目錄並新建一個build文件夾(參考教程):bash
cd lammps mkdir build cd build
~/lammps_setup/cmake-3.9.0-Linux-x86_64/bin/
export MPI_ROOT=/public/software/mpich export PATH=$MPI_ROOT/bin:$PATH export MPI_DIR=/public/software/mpich
配置好INTEL編譯器環境(能夠善用which icc、whereis icc等命令查找本機已經安裝了的INTEL在哪裏):composer
source /public/software/intel/composer_xe_2011_sp1.7.256/bin/iccvars.sh intel64 source /public/software/intel/composer_xe_2011_sp1.7.256/bin/ifortvars.sh intel64
運行cmake並附帶配置的選項,注意intel編譯器路徑選擇和c編譯器修改(不要使用gcc,使用icc):工具
cmake -DBUILD_MPI=yes -DBUILD_OMP=yes -DMPI_C_COMPILER=/public/software/intel/composer_xe_2011_sp1.7.256/bin/intel64/icc -DMPI_CXX_COMPILER=/public/software/intel/composer_xe_2011_sp1.7.256/bin/intel64/icpc ../cmake
source /public/software/intel/composer_xe_2011_sp1.7.256/bin/iccvars.sh intel64 source /public/software/intel/composer_xe_2011_sp1.7.256/bin/ifortvars.sh intel64 cmake -DBUILD_MPI=yes -DBUILD_OMP=yes -DMPI_C_COMPILER=/public/software/mpi/openmpi-16-intel/bin/mpicc -DMPI_CXX_COMPILER=/public/software/mpi/openmpi-16-intel/bin/mpicxx -DFFMPEG_EXECUTABLE=~/lammps_setup/ffmpeg-4.2-amd64-static/ffmpeg -DWITH_FFMPEG=yes -DCMAKE_CXX_COMPILER=/public/software/intel/composer_xe_2011_sp1.7.256/bin/intel64/icpc -DCMAKE_C_COMPILER=/public/software/intel/composer_xe_2011_sp1.7.256/bin/intel64/icc ../cmake
添加附加包(標準附加包列表):假設咱們須要添加MOLECULE包,則應該在cmake命令後添加以下參數gitlab
-DPKG_MOLECULE
咱們能夠看到,格式是 -DPKG_包名。下面提供內部包一鍵安裝便捷代碼:ui
-DPKG_COMPRESS=yes -DPKG_PYTHON=yes -DPKG_ASPHERE=yes -DPKG_BODY=yes -DPKG_CLASS2=yes -DPKG_COLLOID=yes -DPKG_CORESHELL=yes -DPKG_DIPOLE=yes -DPKG_GRANULAR=yes -DPKG_KSPACE=yes -DPKG_MANYBODY=yes -DPKG_MC=yes -DPKG_MISC=yes -DPKG_MOLECULE=yes -DPKG_MPIIO=yes -DPKG_OPT=yes -DPKG_PERI=yes -DPKG_QEQ=yes -DPKG_REPLICA=yes -DPKG_RIGID=yes -DPKG_SHOCK=yes -DPKG_SNAP=yes -DPKG_SPIN=yes -DPKG_SRD=yes -DPKG_MESSAGE=yes -DPKG_POEMS=yes
附加包須要高版本nvcc等依賴的單獨列在下面:spa
-DPKG_GPU=yes -DPKG_KOKKOS=yes
mpirun -N 24 ~/software/lmp -in npteq200ps-16.in纔是正確的,必須-in來調用in文件。
便捷命令:
mpic++ -show