| 3 | 1/1 | 返回列表 |
| 查看: 1657 | 回復: 2 | |||||
| 【獎勵】 本帖被評價2次,作者Bessel增加金幣 1.6 個 | |||||
| 本帖產(chǎn)生 1 個 模擬EPI ,點擊這里進行查看 | |||||
[資源]
LAMMPS使用初體驗,Debian 6.0
|
|||||
|
我是在Debian 6.0下編譯安裝的, 也在Ubuntu 10.04下編譯通過。首先介紹一下并行編譯的過程,然后以L-J相互作用勢的液體為例,給出了in文件的寫法。歡迎大家補充。 第一部分,安裝 《1》首先安裝所有依賴的包: sudo aptitude install mpich-bin libmpich1.0gf libmpich1.0-dev fftw2 fftw-dev libjpeg62 libjpeg62-dev libblas-dev liblapack-dev gfortran gcc make build-essential autoconf automake1.9 cvs subversion libsdl-dev libgl1-mesa-dev fakeroot libnss3-dev gdb libglib2.0-0 libglib-perl dh-make cdbs debhelper kernel-package lsb-release module-assistant 《2》取消SSH的密碼步驟 $ ssh-keygen -t dsa #中間提示輸入密碼,直接回車,會在生成文件~/.ssh/id_dsa.pub $ cat id_dsa.pub >> authorized_keys 這樣在運行mpirun的時候就不會有密碼輸入提示了 《3》下載lammps最新的安裝包 http://lammps.sandia.gov/ 《4》開始編譯安裝 (1) go to ~/lammps/src: 運行如下命令: make yes-all make no-gpu make no-user-atc (2) go to ~/lammps/lib/meam 運行如下命令: make -f Makefile.gfortran (3) go to ~/lammps/lib/poems 運行如下命令: make -f Makefile.g++ (4) go to ~/lammps/lib/reax make -f Makefile.gfortran (5) go to ~/lammps/lib/awpmd <5.1> go to ~/lammps/lib/awpmd/ivutils/include 在 logexc.h文件開頭補上 #include <5.2> go to the ~/lammps/lib/awpmd 修改 Makefile.openmpi文件, 把mpic++改為g++,修改完的樣子應該是: # include any MPI settings needed for the ATC library to build with # the same MPI library that LAMMPS is built with CC = g++ ...... 修改完之后,運行 make -f Makefile.openmpi (6) go to ~/lammps/src/MAKE 修改Makefile.g++文件,下面是修改之后的文件: # g++ = RedHat Linux box, g++4, gfortran, MPICH2, FFTW SHELL = /bin/sh # --------------------------------------------------------------------- # compiler/linker settings # specify flags and libraries needed for your compiler CC = g++ CCFLAGS = -g -O DEPFLAGS = -M LINK = g++ LINKFLAGS = -g -O LIB = ARCHIVE = ar ARFLAGS = -rc SIZE = size # --------------------------------------------------------------------- # LAMMPS-specific settings # specify settings for LAMMPS features you will use # LAMMPS ifdef options, see doc/Section_start.html LMP_INC = -DLAMMPS_GZIP -DLAMMPS_JPEG # MPI library, can be src/STUBS dummy lib # INC = path for mpi.h, MPI compiler settings # PATH = path for MPI library # LIB = name of MPI library MPI_INC = -I/usr/lib/mpich/include MPI_PATH = -I/usr/lib/mpich/lib MPI_LIB = /usr/lib/mpich/lib/libmpich.a # FFT library, can be -DFFT_NONE if not using PPPM from KSPACE package # INC = -DFFT_FFTW, -DFFT_INTEL, -DFFT_NONE, etc, FFT compiler settings # PATH = path for FFT library # LIB = name of FFT library FFT_INC = -I/usr/include -DFFT_FFTW FFT_PATH = -I/usr/lib FFT_LIB = /usr/lib/libfftw.a # JPEG library, only needed if -DLAMMPS_JPEG listed with LMP_INC # INC = path for jpeglib.h # PATH = path for JPEG library # LIB = name of JPEG library JPG_INC = -I/usr/include JPG_PATH = -I/usr/lib JPG_LIB = /usr/lib/libjpeg.a # additional system settings needed by LAMMPS package libraries # these settings are IGNORED if the corresponding LAMMPS package # (e.g. gpu, meam) is NOT included in the LAMMPS build # SYSINC = settings to compile with # SYSLIB = libraries to link with # SYSPATH = paths to libraries gpu_SYSINC = meam_SYSINC = reax_SYSINC = user-atc_SYSINC = user-awpmd_SYSINC = gpu_SYSLIB = -lcudart -lcuda meam_SYSLIB = -lgfortran reax_SYSLIB = -lgfortran user-atc_SYSLIB = -lblas -llapack user-awpmd_SYSLIB = -lblas -llapack gpu_SYSPATH = -L/usr/local/cuda/lib64 meam_SYSPATH = reax_SYSPATH = user-atc_SYSPATH = user-awpmd_SYSPATH = # --------------------------------------------------------------------- # build rules and dependencies # no need to edit this section include Makefile.package EXTRA_INC = $(LMP_INC) $(PKG_INC) $(MPI_INC) $(FFT_INC) $(JPG_INC) (PKG_SYSINC) EXTRA_PATH = $(PKG_PATH) $(MPI_PATH) $(FFT_PATH) $(JPG_PATH) $(PKG_SYSPATH) EXTRA_LIB = $(PKG_LIB) $(MPI_LIB) $(FFT_LIB) $(JPG_LIB) $(PKG_SYSLIB) # Link target $(EXE): $(OBJ) $(LINK) $(LINKFLAGS) $(EXTRA_PATH) $(OBJ) $(EXTRA_LIB) (LIB) -o $(EXE) $(SIZE) $(EXE) # Library target lib: $(OBJ) $(ARCHIVE) $(ARFLAGS) $(EXE) $(OBJ) # Compilation rules %.o:%.cpp $(CC) $(CCFLAGS) $(EXTRA_INC) -c $< %.d:%.cpp $(CC) $(CCFLAGS) $(EXTRA_INC) $(DEPFLAGS) $< > $@ # Individual dependencies DEPENDS = $(OBJ:.o=.d) include $(DEPENDS) (7) go to src 運行命令: make g++ 最后在src文件夾下找到lmp_g++可執(zhí)行文件,編輯就算是結(jié)束了?梢园裭mp_g++放到/usr/local/bin文件夾下,以后用著方便。 (8)L-J液體的in文件 in.lj, 具體命令的介紹可以參考lammps manual # LJ system with NVE ensemble units lj atom_style atomic lattice fcc 0.8442 region box block 0 5 0 5 0 5 create_box 1 box create_atoms 1 box mass 1 1.0 velocity all create 3.0 825577 dist gaussian pair_style lj/cut 2.5 pair_coeff * * 1.0 1.0 2.5 neighbor 0.3 bin neigh_modify every 20 delay 0 check no fix 1 all nve timestep 0.005 thermo 1000 run 10000 clear (9)最后運行mpirun –np 2 /usr/local/bin/lmp_g++ |
資源收集 | condensed matter physics |
| 3 | 1/1 | 返回列表 |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研]
|
pk3725069 2026-03-19 | 16/800 |
|
|---|---|---|---|---|
|
[考研] 269求調(diào)劑 +4 | 我想讀研11 2026-03-23 | 4/200 |
|
|
[考研] 材料專碩英一數(shù)二306 +8 | z1z2z3879 2026-03-18 | 8/400 |
|
|
[考研] 一志愿南航材料專317分求調(diào)劑 +3 | 炸呀炸呀炸薯條 2026-03-23 | 3/150 |
|
|
[考研] 生物學一志愿985,分數(shù)349求調(diào)劑 +6 | zxts12 2026-03-21 | 9/450 |
|
|
[考研] 一志愿西安交通大學材料工程專業(yè) 282分求調(diào)劑 +11 | 楓橋ZL 2026-03-18 | 13/650 |
|
|
[考研] 289材料與化工(085600)B區(qū)求調(diào)劑 +3 | 這么名字咋樣 2026-03-22 | 4/200 |
|
|
[考研] 324求調(diào)劑 +6 | lucky呀呀呀鴨 2026-03-20 | 6/300 |
|
|
[考研] 考研調(diào)劑 +4 | 來好運來來來 2026-03-21 | 4/200 |
|
|
[考研] 285求調(diào)劑 +6 | ytter 2026-03-22 | 6/300 |
|
|
[考研] 材料學碩333求調(diào)劑 +3 | 北道巷 2026-03-18 | 3/150 |
|
|
[考研] 302求調(diào)劑 +12 | 呼呼呼。。。。 2026-03-17 | 12/600 |
|
|
[考研] 279求調(diào)劑 +5 | 紅衣隱官 2026-03-21 | 5/250 |
|
|
[考研] 265求調(diào)劑 +3 | Jack?k?y 2026-03-17 | 3/150 |
|
|
[考研] 一志愿華中科技大學,080502,354分求調(diào)劑 +5 | 守候夕陽CF 2026-03-18 | 5/250 |
|
|
[考研] 一志愿 西北大學 ,070300化學學碩,總分287,雙非一本,求調(diào)劑。 +3 | 晨昏線與星海 2026-03-18 | 3/150 |
|
|
[考研] 317求調(diào)劑 +5 | 申子申申 2026-03-19 | 9/450 |
|
|
[考研] 求調(diào)劑 +3 | eation27 2026-03-20 | 3/150 |
|
|
[考研]
|
不想起名字112 2026-03-19 | 3/150 |
|
|
[考研] 收復試調(diào)劑生 +4 | 雨后秋荷 2026-03-18 | 4/200 |
|