diff --git a/src/MAKE/Makefile.tunnison b/src/MAKE/Makefile.tunnison new file mode 100644 index 0000000000..c9d02aedbf --- /dev/null +++ b/src/MAKE/Makefile.tunnison @@ -0,0 +1,104 @@ +# tunnison - 64-bit dual-core Linux cluster, mpic++, OpenMPI-1.1, FFTW2 + +SHELL = /bin/sh +.IGNORE: + +# this Makefile builds LAMMPS for Tunnison with OpenMPI +# to invoke this Makefile, you need these modules loaded: +# compilers/intel-11.1-f064-c064 +# misc/env-openmpi-1.4 +# mpi/openmpi-1.4.1_mx_intel-11.1-f064-c064 +# libraries/fftw-2.1.5 +# you can determine which modules are loaded by typing: +# module list + +# --------------------------------------------------------------------- +# compiler/linker settings +# specify flags and libraries needed for your compiler + +CC = mpic++ +CCFLAGS = -O2 \ + -funroll-loops -fstrict-aliasing -W -Wno-uninitialized +DEPFLAGS = -M +LINK = mpic++ +LINKFLAGS = -O +LIB = -lstdc++ +ARCHIVE = ar +ARFLAGS = -rcsv +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 + +# 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 = +MPI_PATH = +MPI_LIB = + +# 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 = -DFFT_FFTW -I$(FFTW_INCLUDE) +FFT_PATH = -L$(FFTW_LIB) +FFT_LIB = -lfftw + +# additional system libraries 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 +# SYSLIB = names of libraries +# SYSPATH = paths of libraries + +gpu_SYSLIB = -lcudart +meam_SYSLIB = -lifcore -lsvml -lompstub -limf +reax_SYSLIB = -lifcore -lsvml -lompstub -limf +user-atc_SYSLIB = -llapack + +gpu_SYSPATH = -L/usr/local/cuda/lib64 +meam_SYSPATH = -L/opt/intel/fce/10.0.023/lib +reax_SYSPATH = -L/opt/intel/fce/10.0.023/lib +user-atc_SYSPATH = + +# --------------------------------------------------------------------- +# build rules and dependencies +# no need to edit this section + +include Makefile.package + +EXTRA_INC = $(LMP_INC) $(PKG_INC) $(MPI_INC) $(FFT_INC) +EXTRA_PATH = $(PKG_PATH) $(MPI_PATH) $(FFT_PATH) $(PKG_SYSPATH) +EXTRA_LIB = $(PKG_LIB) $(MPI_LIB) $(FFT_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) diff --git a/src/replicate.cpp b/src/replicate.cpp index 856bb90d6e..d3494e5b53 100644 --- a/src/replicate.cpp +++ b/src/replicate.cpp @@ -202,6 +202,17 @@ void Replicate::command(int narg, char **arg) } } + if (atom->shape) { + for (int itype = 1; itype <= atom->ntypes; itype++) { + atom->shape_setflag[itype] = old->shape_setflag[itype]; + if (atom->shape_setflag[itype]) { + atom->shape[itype][0] = old->shape[itype][0]; + atom->shape[itype][1] = old->shape[itype][1]; + atom->shape[itype][2] = old->shape[itype][2]; + } + } + } + if (atom->dipole) { for (int itype = 1; itype <= atom->ntypes; itype++) { atom->dipole_setflag[itype] = old->dipole_setflag[itype];