24小时热门版块排行榜    

查看: 1779  |  回复: 2
【奖励】 本帖被评价2次,作者Bessel增加金币 1.6
本帖产生 1 个 模拟EPI ,点击这里进行查看

Bessel

木虫 (正式写手)


[资源] 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++可执行文件,编辑就算是结束了。可以把lmp_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

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xufund

至尊木虫 (知名作家)


★★★★★ 五星级,优秀推荐

下去学习。谢谢
2楼2011-07-07 22:06:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gxw0218

银虫 (著名写手)


★★★★★ 五星级,优秀推荐

不错,学习学习。
3楼2012-01-18 15:14:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 Bessel 的主题更新
☆ 无星级 ★ 一星级 ★★★ 三星级 ★★★★★ 五星级
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[博后之家] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 DpSrDtM079iu 2026-08-22 5/250 2026-08-23 04:07 by OEbVnUOu01ol
[硕博家园] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 2JOx3r2CYEgw 2026-08-22 4/200 2026-08-23 03:55 by OEbVnUOu01ol
[硕博家园] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 QTy3jDtz1uLt 2026-08-21 11/550 2026-08-23 02:55 by OEbVnUOu01ol
[考博] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 DpSrDtM079iu 2026-08-22 3/150 2026-08-23 00:55 by OEbVnUOu01ol
[基金申请] 2026国自然函评费到账 +11 羊腰板 2026-08-21 11/550 2026-08-22 22:03 by lsbin3733
[基金申请] 范进中举一文的中心思想 +3 zjuhero 2026-08-22 4/200 2026-08-22 20:02 by mycsru
[基金申请] 什么时候开奖? +7 CrisMessi 2026-08-18 8/400 2026-08-22 18:29 by 淀粉搬运工
[基金申请] filecode,4个jtjc了 +13 ziyangfang 2026-08-19 16/800 2026-08-22 17:08 by WH3796
[基金申请] 今天基金会出结果吗?20260819 +16 kkkl_v 2026-08-19 17/850 2026-08-22 16:12 by 阿布Abu
[基金申请] 时间戳今天,20号变了 +5 archvillain 2026-08-20 5/250 2026-08-22 06:12 by hui_daxiao
[基金申请] 今日不放榜?网传国自然预计 8 月 27 日可查结果 +16 医学老男孩 2026-08-20 20/1000 2026-08-21 21:13 by Ldrop2023
[基金申请] 看来今天不会放榜了? +8 chengyan1220 2026-08-21 11/550 2026-08-21 17:52 by dcqxinyang
[基金申请] 感觉是下周放榜了 +7 angus9576 2026-08-17 12/600 2026-08-21 13:38 by weiyin
[基金申请] 我面上完蛋了 +7 且听虎啸 2026-08-20 8/400 2026-08-21 12:31 by 酷酷墨镜
[基金申请] 应该是下周三26日公布了吧? +4 哈哈蛤? 2026-08-21 4/200 2026-08-21 10:58 by Vivilian
[论文投稿] 投稿咨询 +5 wwm09 2026-08-17 7/350 2026-08-21 10:11 by 期刊论文帮手
[基金申请] 时间戳变了,能看出什么问题? +18 基诺咪客 2026-08-17 23/1150 2026-08-20 17:19 by Godzela
[基金申请] 重要消息,中午系统在维护 +11 yuleib84 2026-08-18 12/600 2026-08-20 11:09 by xskun
[基金申请] 朋友圈看到的 +6 wangzilk 2026-08-18 8/400 2026-08-19 10:55 by Haru815
[基金申请] 今天维护系统维护 祝所有人 高中 +8 gjjjzhong 2026-08-18 9/450 2026-08-18 13:01 by 家与远方
信息提示
请填处理意见