git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@6724 f3b2605a-c512-4ea7-a41b-209d697bcdaa

This commit is contained in:
sjplimp
2011-08-18 15:03:14 +00:00
parent 031010c078
commit 0cfaaee5d5
16 changed files with 226 additions and 29 deletions

View File

@ -1,7 +1,9 @@
# Depend.sh = Install/unInstall files from dependent packages # Depend.sh = Install/unInstall files for dependent packages
# only Install/unInstall if dependent package is already installed # only Install/unInstall if dependent package is already installed
# all packages with dependencies should be listed here
# install dependent child files when parent files installed # install dependent child files when parent files installed
# uninstall dependent child files when parent files uninstalled # uninstall dependent child files when parent files uninstalled
# decisions on individual files are made by package Install.sh scripts
if (test $1 = 1) then if (test $1 = 1) then

View File

@ -1,5 +1,5 @@
# Install/unInstall package files in LAMMPS # Install/unInstall package files in LAMMPS
# edit Makefile.package to include/exclude GPU info # edit 2 Makefile.package files to include/exclude GPU info
# do not install child files if parent does not exist # do not install child files if parent does not exist
if (test $1 = 1) then if (test $1 = 1) then
@ -12,6 +12,11 @@ if (test $1 = 1) then
sed -i -e 's|^PKG_SYSLIB =[ \t]*|&$(gpu_SYSLIB) |' ../Makefile.package sed -i -e 's|^PKG_SYSLIB =[ \t]*|&$(gpu_SYSLIB) |' ../Makefile.package
sed -i -e 's|^PKG_SYSPATH =[ \t]*|&$(gpu_SYSPATH) |' ../Makefile.package sed -i -e 's|^PKG_SYSPATH =[ \t]*|&$(gpu_SYSPATH) |' ../Makefile.package
fi fi
if (test -e ../Makefile.package.settings) then
sed -i -e '/^include.*gpu.*$/d' ../Makefile.package.settings
sed -i '4 i include ..\/..\/lib\/gpu\/Makefile.lammps' ../Makefile.package.settings
fi
if (test -e ../pair_gayberne.cpp) then if (test -e ../pair_gayberne.cpp) then
cp pair_gayberne_gpu.cpp .. cp pair_gayberne_gpu.cpp ..
@ -90,6 +95,10 @@ elif (test $1 = 0) then
sed -i -e 's/[^ \t]*gpu[^ \t]* //' ../Makefile.package sed -i -e 's/[^ \t]*gpu[^ \t]* //' ../Makefile.package
fi fi
if (test -e ../Makefile.package.settings) then
sed -i -e '/^include.*gpu.*$/d' ../Makefile.package.settings
fi
rm -f ../pppm_gpu.cpp rm -f ../pppm_gpu.cpp
rm -f ../pair_gayberne_gpu.cpp rm -f ../pair_gayberne_gpu.cpp
rm -f ../pair_resquared_gpu.cpp rm -f ../pair_resquared_gpu.cpp

View File

@ -1,5 +1,5 @@
# Install/unInstall package files in LAMMPS # Install/unInstall package files in LAMMPS
# edit Makefile.package to include/exclude MEAM info # edit 2 Makefile.package files to include/exclude GPU info
if (test $1 = 1) then if (test $1 = 1) then
@ -13,6 +13,11 @@ if (test $1 = 1) then
sed -i -e 's|^PKG_SYSPATH =[ \t]*|&$(meam_SYSPATH) |' ../Makefile.package sed -i -e 's|^PKG_SYSPATH =[ \t]*|&$(meam_SYSPATH) |' ../Makefile.package
fi fi
if (test -e ../Makefile.package.settings) then
sed -i -e '/^include.*meam.*$/d' ../Makefile.package.settings
sed -i '4 i include ..\/..\/lib\/meam\/Makefile.lammps' ../Makefile.package.settings
fi
cp pair_meam.cpp .. cp pair_meam.cpp ..
cp pair_meam.h .. cp pair_meam.h ..
@ -23,6 +28,10 @@ elif (test $1 = 0) then
sed -i -e 's/[^ \t]*meam[^ \t]* //' ../Makefile.package sed -i -e 's/[^ \t]*meam[^ \t]* //' ../Makefile.package
fi fi
if (test -e ../Makefile.package.settings) then
sed -i -e '/^include.*meam.*$/d' ../Makefile.package.settings
fi
rm -f ../pair_meam.cpp rm -f ../pair_meam.cpp
rm -f ../pair_meam.h rm -f ../pair_meam.h

View File

@ -68,7 +68,7 @@ help:
@cp -p *.cpp *.h Obj_$@ @cp -p *.cpp *.h Obj_$@
@cp MAKE/Makefile.$@ Obj_$@/Makefile @cp MAKE/Makefile.$@ Obj_$@/Makefile
@if [ ! -e Makefile.package ]; then make package-regenerate; fi @if [ ! -e Makefile.package ]; then make package-regenerate; fi
@cp Makefile.package Obj_$@ @cp Makefile.package Makefile.package.settings Obj_$@
@cd Obj_$@; \ @cd Obj_$@; \
$(MAKE) $(MFLAGS) "OBJ = $(OBJ)" "INC = $(INC)" "EXE = ../$(EXE)" ../$(EXE) $(MAKE) $(MFLAGS) "OBJ = $(OBJ)" "INC = $(INC)" "EXE = ../$(EXE)" ../$(EXE)
@if [ -d Obj_$@ ]; then cd Obj_$@; rm -f $(SRC) $(INC) Makefile*; fi @if [ -d Obj_$@ ]; then cd Obj_$@; rm -f $(SRC) $(INC) Makefile*; fi
@ -190,6 +190,7 @@ package-overwrite:
package-regenerate: package-regenerate:
@cp Makefile.package.empty Makefile.package @cp Makefile.package.empty Makefile.package
@cp Makefile.package.settings.empty Makefile.package.settings
@for p in $(PACKAGEUC); do $(SHELL) Package.sh $$p regenerate; done @for p in $(PACKAGEUC); do $(SHELL) Package.sh $$p regenerate; done
@for p in $(PACKUSERUC); do $(SHELL) Package.sh $$p regenerate; done @for p in $(PACKUSERUC); do $(SHELL) Package.sh $$p regenerate; done
@ -197,4 +198,3 @@ package-diff:
@for p in $(PACKAGEUC); do $(SHELL) Package.sh $$p diff; done @for p in $(PACKAGEUC); do $(SHELL) Package.sh $$p diff; done
@echo '' @echo ''
@for p in $(PACKUSERUC); do $(SHELL) Package.sh $$p diff; done @for p in $(PACKUSERUC); do $(SHELL) Package.sh $$p diff; done

View File

@ -5,6 +5,6 @@ PKG_INC =
PKG_PATH = PKG_PATH =
PKG_LIB = PKG_LIB =
PKG_SYSINC = PKG_SYSINC =
PKG_SYSLIB = PKG_SYSLIB =
PKG_SYSPATH = PKG_SYSPATH =

View File

@ -0,0 +1,4 @@
# Makefile settings generated by libraries used by specific LAMMPS packages
# this file is auto-edited when those packages are included/excluded

View File

@ -0,0 +1,4 @@
# Makefile settings generated by libraries used by specific LAMMPS packages
# this file is auto-edited when those packages are included/excluded

View File

@ -1,5 +1,5 @@
# Install/unInstall package files in LAMMPS # Install/unInstall package files in LAMMPS
# edit Makefile.package to include/exclude POEMS info # edit 2 Makefile.package files to include/exclude POEMS info
if (test $1 = 1) then if (test $1 = 1) then
@ -10,6 +10,11 @@ if (test $1 = 1) then
sed -i -e 's|^PKG_LIB =[ \t]*|&-lpoems |' ../Makefile.package sed -i -e 's|^PKG_LIB =[ \t]*|&-lpoems |' ../Makefile.package
fi fi
if (test -e ../Makefile.package.settings) then
sed -i -e '/^include.*poems.*$/d' ../Makefile.package.settings
sed -i '4 i include ..\/..\/lib\/poems\/Makefile.lammps' ../Makefile.package.settings
fi
cp fix_poems.cpp .. cp fix_poems.cpp ..
cp fix_poems.h .. cp fix_poems.h ..
@ -20,6 +25,10 @@ elif (test $1 = 0) then
sed -i -e 's/[^ \t]*poems[^ \t]* //' ../Makefile.package sed -i -e 's/[^ \t]*poems[^ \t]* //' ../Makefile.package
fi fi
if (test -e ../Makefile.package.settings) then
sed -i -e '/^include.*poems.*$/d' ../Makefile.package.settings
fi
rm -f ../fix_poems.cpp rm -f ../fix_poems.cpp
rm -f ../fix_poems.h rm -f ../fix_poems.h

View File

@ -1,5 +1,5 @@
# Install/unInstall package files in LAMMPS # Install/unInstall package files in LAMMPS
# edit Makefile.package to include/exclude REAX info # edit 2 Makefile.package files to include/exclude REAX info
if (test $1 = 1) then if (test $1 = 1) then
@ -13,6 +13,11 @@ if (test $1 = 1) then
sed -i -e 's|^PKG_SYSPATH =[ \t]*|&$(reax_SYSPATH) |' ../Makefile.package sed -i -e 's|^PKG_SYSPATH =[ \t]*|&$(reax_SYSPATH) |' ../Makefile.package
fi fi
if (test -e ../Makefile.package.settings) then
sed -i -e '/^include.*reax.*$/d' ../Makefile.package.settings
sed -i '4 i include ..\/..\/lib\/reax\/Makefile.lammps' ../Makefile.package.settings
fi
cp pair_reax.cpp .. cp pair_reax.cpp ..
cp pair_reax.h .. cp pair_reax.h ..
cp pair_reax_fortran.h .. cp pair_reax_fortran.h ..
@ -26,6 +31,10 @@ elif (test $1 = 0) then
sed -i -e 's/[^ \t]*reax[^ \t]* //' ../Makefile.package sed -i -e 's/[^ \t]*reax[^ \t]* //' ../Makefile.package
fi fi
if (test -e ../Makefile.package.settings) then
sed -i -e '/^include.*reax.*$/d' ../Makefile.package.settings
fi
rm -f ../pair_reax.cpp rm -f ../pair_reax.cpp
rm -f ../pair_reax.h rm -f ../pair_reax.h
rm -f ../pair_reax_fortran.h rm -f ../pair_reax_fortran.h

View File

@ -1,5 +1,5 @@
# Install/unInstall package files in LAMMPS # Install/unInstall package files in LAMMPS
# edit Makefile.package to include/exclude ATC info # edit 2 Makefile.package files to include/exclude ATC info
if (test $1 = 1) then if (test $1 = 1) then
@ -13,6 +13,11 @@ if (test $1 = 1) then
sed -i -e 's|^PKG_SYSPATH =[ \t]*|&$(user-atc_SYSPATH) |' ../Makefile.package sed -i -e 's|^PKG_SYSPATH =[ \t]*|&$(user-atc_SYSPATH) |' ../Makefile.package
fi fi
if (test -e ../Makefile.package.settings) then
sed -i -e '/^include.*atc.*$/d' ../Makefile.package.settings
sed -i '4 i include ..\/..\/lib\/atc\/Makefile.lammps' ../Makefile.package.settings
fi
cp fix_atc.h .. cp fix_atc.h ..
cp fix_atc.cpp .. cp fix_atc.cpp ..
@ -22,6 +27,10 @@ elif (test $1 = 0) then
sed -i -e 's/[^ \t]*atc[^ \t]* //' ../Makefile.package sed -i -e 's/[^ \t]*atc[^ \t]* //' ../Makefile.package
fi fi
if (test -e ../Makefile.package.settings) then
sed -i -e '/^include.*atc.*$/d' ../Makefile.package.settings
fi
rm -f ../fix_atc.h rm -f ../fix_atc.h
rm -f ../fix_atc.cpp rm -f ../fix_atc.cpp

View File

@ -1,5 +1,5 @@
# Install/unInstall package files in LAMMPS # Install/unInstall package files in LAMMPS
# edit Makefile.package to include/exclude ATC library # edit 2 Makefile.package files to include/exclude AWPMD info
if (test $1 = 1) then if (test $1 = 1) then
@ -12,6 +12,11 @@ if (test $1 = 1) then
sed -i -e 's|^PKG_SYSLIB =[ \t]*|&$(user-awpmd_SYSLIB) |' ../Makefile.package sed -i -e 's|^PKG_SYSLIB =[ \t]*|&$(user-awpmd_SYSLIB) |' ../Makefile.package
fi fi
if (test -e ../Makefile.package.settings) then
sed -i -e '/^include.*awpmd.*$/d' ../Makefile.package.settings
sed -i '4 i include ..\/..\/lib\/awpmd\/Makefile.lammps' ../Makefile.package.settings
fi
cp atom_vec_wavepacket.cpp .. cp atom_vec_wavepacket.cpp ..
cp fix_nve_awpmd.cpp .. cp fix_nve_awpmd.cpp ..
cp pair_awpmd_cut.cpp .. cp pair_awpmd_cut.cpp ..
@ -26,6 +31,10 @@ elif (test $1 = 0) then
sed -i -e 's/[^ \t]*awpmd[^ \t]* //g' ../Makefile.package sed -i -e 's/[^ \t]*awpmd[^ \t]* //g' ../Makefile.package
fi fi
if (test -e ../Makefile.package.settings) then
sed -i -e '/^include.*awpmd.*$/d' ../Makefile.package.settings
fi
rm -f ../atom_vec_wavepacket.cpp rm -f ../atom_vec_wavepacket.cpp
rm -f ../fix_nve_awpmd.cpp rm -f ../fix_nve_awpmd.cpp
rm -f ../pair_awpmd_cut.cpp rm -f ../pair_awpmd_cut.cpp

View File

@ -1,26 +1,26 @@
# Install/unInstall package files in LAMMPS # Install/unInstall package files in LAMMPS
# edit Makefile.package to include/exclude CUDA library # edit Makefile.package to include/exclude CUDA library
# do not copy child files if parent does not exist # do not install child files if parent does not exist
if (test $1 = 1) then if (test $1 = 1) then
if (test ! -e ../Makefile.package) then if (test -e ../Makefile.package) then
cp ../Makefile.package.empty ../Makefile.package sed -i -e 's/[^ \t]*cuda[^ \t]* //g' ../Makefile.package
sed -i -e 's/[^ \t]*CUDA[^ \t]* //g' ../Makefile.package
sed -i -e 's|^PKG_INC =[ \t]*|&-I..\/..\/lib\/cuda -DLMP_USER_CUDA |' ../Makefile.package
sed -i -e 's|^PKG_PATH =[ \t]*|&-L..\/..\/lib\/cuda |' ../Makefile.package
sed -i -e 's|^PKG_LIB =[ \t]*|&-llammpscuda |' ../Makefile.package
sed -i -e 's|^PKG_SYSINC =[ \t]*|&$(user-cuda_SYSINC) |' ../Makefile.package
sed -i -e 's|^PKG_SYSLIB =[ \t]*|&$(user-cuda_SYSLIB) |' ../Makefile.package
sed -i -e 's|^PKG_SYSPATH =[ \t]*|&$(user-cuda_SYSPATH) |' ../Makefile.package
fi fi
sed -i -e '/^include.*cuda.*$/d' ../Makefile.package if (test -e ../Makefile.package.include) then
sed -i -e 's/[^ \t]*cuda[^ \t]* //g' ../Makefile.package sed -i -e '/^include.*cuda.*$/d' ../Makefile.package.settings
sed -i -e 's/[^ \t]*CUDA[^ \t]* //g' ../Makefile.package sed -i '4 i include ..\/..\/lib\/cuda\/Makefile.lammps' ../Makefile.package.settings
sed -i -e 's/[^ \t]*lrt[^ \t]* //g' ../Makefile.package fi
sed -i '4 i include ..\/..\/lib\/cuda\/Makefile.common' ../Makefile.package
sed -i -e 's|^PKG_INC =[ \t]*|&-I..\/..\/lib\/cuda -DLMP_USER_CUDA |' ../Makefile.package # force rebuild of files with LMP_USER_CUDA switch
sed -i -e 's|^PKG_PATH =[ \t]*|&-L..\/..\/lib\/cuda |' ../Makefile.package
sed -i -e 's|^PKG_LIB =[ \t]*|&-llammpscuda |' ../Makefile.package
sed -i -e 's|^PKG_SYSINC =[ \t]*|&-I$(CUDA_INSTALL_PATH)\/include |' ../Makefile.package
sed -i -e 's|^PKG_SYSPATH =[ \t]*|&-L$(CUDA_INSTALL_PATH)\/lib64 -L$(CUDA_INSTALL_PATH)\/lib $(CUDA_USRLIB_CONDITIONAL) |' ../Makefile.package
sed -i -e 's|^PKG_SYSLIB =[ \t]*|&-lcuda -lcudart -lrt |' ../Makefile.package
# force rebuild of dependencies since adding -DLMP_USER_CUDA switch
touch ../accelerator_cuda.h touch ../accelerator_cuda.h
@ -204,13 +204,15 @@ if (test $1 = 1) then
elif (test $1 = 0) then elif (test $1 = 0) then
if (test -e ../Makefile.package) then if (test -e ../Makefile.package) then
sed -i -e '/^include.*cuda.*$/d' ../Makefile.package
sed -i -e 's/[^ \t]*cuda[^ \t]* //g' ../Makefile.package sed -i -e 's/[^ \t]*cuda[^ \t]* //g' ../Makefile.package
sed -i -e 's/[^ \t]*CUDA[^ \t]* //g' ../Makefile.package sed -i -e 's/[^ \t]*CUDA[^ \t]* //g' ../Makefile.package
sed -i -e 's/[^ \t]*lrt[^ \t]* //g' ../Makefile.package
fi fi
# force rebuild of dependencies since removing -DLMP_USER_CUDA switch if (test -e ../Makefile.package.settings) then
sed -i -e '/^include.*cuda.*$/d' ../Makefile.package.settings
fi
# force rebuild of files with LMP_USER_CUDA switch
touch ../accelerator_cuda.h touch ../accelerator_cuda.h

View File

@ -122,3 +122,20 @@ void Error::message(char *str, int logflag)
if (screen) fprintf(screen,"%s\n",str); if (screen) fprintf(screen,"%s\n",str);
if (logflag && logfile) fprintf(logfile,"%s\n",str); if (logflag && logfile) fprintf(logfile,"%s\n",str);
} }
/* ----------------------------------------------------------------------
called by all procs in one world
close all output, screen, and log files in world
------------------------------------------------------------------------- */
void Error::done()
{
MPI_Barrier(world);
if (output) delete output;
if (screen && screen != stdout) fclose(screen);
if (logfile) fclose(logfile);
MPI_Finalize();
exit(1);
}

View File

@ -29,6 +29,7 @@ class Error : protected Pointers {
void one(const char *); void one(const char *);
void warning(const char *, int = 1); void warning(const char *, int = 1);
void message(char *, int = 1); void message(char *, int = 1);
void done();
}; };
} }

View File

@ -58,6 +58,7 @@ LAMMPS::LAMMPS(int narg, char **arg, MPI_Comm communicator)
int partscreenflag = 0; int partscreenflag = 0;
int partlogflag = 0; int partlogflag = 0;
int cudaflag = -1; int cudaflag = -1;
int helpflag = 0;
suffix = NULL; suffix = NULL;
suffix_enable = 0; suffix_enable = 0;
@ -124,6 +125,11 @@ LAMMPS::LAMMPS(int narg, char **arg, MPI_Comm communicator)
strcpy(suffix,arg[iarg+1]); strcpy(suffix,arg[iarg+1]);
suffix_enable = 1; suffix_enable = 1;
iarg += 2; iarg += 2;
} else if (strcmp(arg[iarg],"-help") == 0 ||
strcmp(arg[iarg],"-h") == 0) {
if (iarg+1 > narg) error->universe_all("Invalid command-line argument");
helpflag = 1;
iarg += 1;
} else error->universe_all("Invalid command-line argument"); } else error->universe_all("Invalid command-line argument");
} }
@ -347,6 +353,13 @@ LAMMPS::LAMMPS(int narg, char **arg, MPI_Comm communicator)
// allocate top-level classes // allocate top-level classes
create(); create();
// if helpflag set, print help and exit
if (helpflag) {
if (me == 0) print_styles();
error->done();
}
} }
/* ---------------------------------------------------------------------- /* ----------------------------------------------------------------------
@ -455,3 +468,101 @@ void LAMMPS::destroy()
// since fixes delete callbacks in atom // since fixes delete callbacks in atom
delete timer; delete timer;
} }
/* ----------------------------------------------------------------------
for each style, print name of all child classes build into executable
------------------------------------------------------------------------- */
void LAMMPS::print_styles()
{
printf("Pair styles:\n");
#define PAIR_CLASS
#define PairStyle(key,Class) printf(" %s",#key);
#include "style_pair.h"
#undef PAIR_CLASS
printf("\n");
printf("Bond styles:\n");
#define BOND_CLASS
#define BondStyle(key,Class) printf(" %s",#key);
#include "style_bond.h"
#undef BOND_CLASS
printf("\n");
printf("Angle styles:\n");
#define ANGLE_CLASS
#define AngleStyle(key,Class) printf(" %s",#key);
#include "style_angle.h"
#undef ANGLE_CLASS
printf("\n");
printf("Dihedral styles:\n");
#define DIHEDRAL_CLASS
#define DihedralStyle(key,Class) printf(" %s",#key);
#include "style_dihedral.h"
#undef DIHEDRAL_CLASS
printf("\n");
printf("Improper styles:\n");
#define IMPROPER_CLASS
#define ImproperStyle(key,Class) printf(" %s",#key);
#include "style_improper.h"
#undef IMPROPER_CLASS
printf("\n");
printf("Fix styles:\n");
#define FIX_CLASS
#define FixStyle(key,Class) printf(" %s",#key);
#include "style_fix.h"
#undef FIX_CLASS
printf("\n");
printf("Fix styles:\n");
#define COMPUTE_CLASS
#define ComputeStyle(key,Class) printf(" %s",#key);
#include "style_compute.h"
#undef COMPUTE_CLASS
printf("\n");
printf("Commands:\n");
#define COMMAND_CLASS
#define CommandStyle(key,Class) printf(" %s",#key);
#include "style_command.h"
#undef COMMAND_CLASS
printf("\n");
printf("Region styles:\n");
#define REGION_CLASS
#define RegionStyle(key,Class) printf(" %s",#key);
#include "style_region.h"
#undef REGION_CLASS
printf("\n");
printf("Dump styles:\n");
#define DUMP_CLASS
#define DumpStyle(key,Class) printf(" %s",#key);
#include "style_dump.h"
#undef DUMP_CLASS
printf("\n");
}

View File

@ -51,6 +51,8 @@ class LAMMPS {
void create(); void create();
void init(); void init();
void destroy(); void destroy();
void print_styles();
}; };
} }