Added plog and pscreen options
git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@6420 f3b2605a-c512-4ea7-a41b-209d697bcdaa
This commit is contained in:
11
src/Makefile
11
src/Makefile
@ -52,6 +52,7 @@ help:
|
||||
@echo ''
|
||||
@echo 'make package-update replace src files with package files'
|
||||
@echo 'make package-overwrite replace package files with src files'
|
||||
@echo 'make package-diff diff src files against package files'
|
||||
@echo ''
|
||||
@echo 'make machine build LAMMPS where machine is one of:'
|
||||
@echo ''
|
||||
@ -126,6 +127,7 @@ package:
|
||||
@echo ''
|
||||
@echo 'make package-update replace src files with package files'
|
||||
@echo 'make package-overwrite replace package files with src files'
|
||||
@echo 'make package-diff diff src files against package file'
|
||||
|
||||
yes-all:
|
||||
@for p in $(PACKALL); do $(MAKE) yes-$$p; done
|
||||
@ -161,10 +163,11 @@ no-%:
|
||||
cd $(NODIR); $(SHELL) Install.sh 0; cd ..; $(SHELL) Depend.sh 0; \
|
||||
fi;
|
||||
|
||||
# status = list differences between src and package files
|
||||
# status = list src files that differ from package files
|
||||
# update = replace src files with newer package files
|
||||
# overwrite = overwrite package files with newer src files
|
||||
# regenerate = regenerate Makefile.package from Makefile.package.empty
|
||||
# diff = show differences between src and package files
|
||||
|
||||
package-status:
|
||||
@for p in $(PACKAGEUC); do $(SHELL) Package.sh $$p status; done
|
||||
@ -185,3 +188,9 @@ package-regenerate:
|
||||
@cp Makefile.package.empty Makefile.package
|
||||
@for p in $(PACKAGEUC); do $(SHELL) Package.sh $$p regenerate; done
|
||||
@for p in $(PACKUSERUC); do $(SHELL) Package.sh $$p regenerate; done
|
||||
|
||||
package-diff:
|
||||
@for p in $(PACKAGEUC); do $(SHELL) Package.sh $$p diff; done
|
||||
@echo ''
|
||||
@for p in $(PACKUSERUC); do $(SHELL) Package.sh $$p diff; done
|
||||
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
# Package.sh = package management, called from Makefile
|
||||
# Syntax: sh Package.sh DIR status/update/overwrite/regenerate
|
||||
# Syntax: sh Package.sh DIR status/update/overwrite/regenerate/diff
|
||||
|
||||
# style used to translate dir name to package name
|
||||
|
||||
@ -79,7 +79,7 @@ elif (test $2 = "overwrite") then
|
||||
echo " $1 package is not installed, no action"
|
||||
fi
|
||||
|
||||
# regenernate Makefile.package from Makefile.package.empty
|
||||
# regenenate Makefile.package from Makefile.package.empty
|
||||
# if installed:
|
||||
# re-install so Install.sh will edit Makefile.pacakge
|
||||
|
||||
@ -87,4 +87,28 @@ elif (test $2 = "regenerate") then
|
||||
if (test $installed = 1) then
|
||||
/bin/sh Install.sh 1
|
||||
fi
|
||||
|
||||
# diff
|
||||
# if installed:
|
||||
# show any differences between src files and package files
|
||||
|
||||
elif (test $2 = "diff") then
|
||||
if (test $installed = 1) then
|
||||
echo "Installed YES: package $1"
|
||||
for file in *.cpp *.h; do
|
||||
if (test ! -e ../$file) then
|
||||
echo "************************************************************************"
|
||||
echo " src/$file does not exist"
|
||||
echo "************************************************************************"
|
||||
elif (test "`diff --brief $file ../$file`" != "") then
|
||||
echo "************************************************************************"
|
||||
echo "diff $1/$file src/$file "
|
||||
echo "************************************************************************"
|
||||
diff $file ../$file
|
||||
fi
|
||||
done
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
|
||||
|
||||
@ -55,6 +55,8 @@ LAMMPS::LAMMPS(int narg, char **arg, MPI_Comm communicator)
|
||||
int inflag = 0;
|
||||
int screenflag = 0;
|
||||
int logflag = 0;
|
||||
int partscreenflag = 0;
|
||||
int partlogflag = 0;
|
||||
int cudaflag = -1;
|
||||
suffix = NULL;
|
||||
suffix_enable = 0;
|
||||
@ -94,6 +96,18 @@ LAMMPS::LAMMPS(int narg, char **arg, MPI_Comm communicator)
|
||||
strcmp(arg[iarg],"-e") == 0) {
|
||||
if (iarg+2 > narg) error->universe_all("Invalid command-line argument");
|
||||
iarg += 2;
|
||||
} else if (strcmp(arg[iarg],"-pscreen") == 0 ||
|
||||
strcmp(arg[iarg],"-ps") == 0) {
|
||||
if (iarg+2 > narg)
|
||||
error->universe_all("Invalid command-line argument");
|
||||
partscreenflag = iarg + 1;
|
||||
iarg += 2;
|
||||
} else if (strcmp(arg[iarg],"-plog") == 0 ||
|
||||
strcmp(arg[iarg],"-pl") == 0) {
|
||||
if (iarg+2 > narg)
|
||||
error->universe_all("Invalid command-line argument");
|
||||
partlogflag = iarg + 1;
|
||||
iarg += 2;
|
||||
} else if (strcmp(arg[iarg],"-cuda") == 0 ||
|
||||
strcmp(arg[iarg],"-c") == 0) {
|
||||
if (iarg+2 > narg) error->universe_all("Invalid command-line argument");
|
||||
@ -127,6 +141,16 @@ LAMMPS::LAMMPS(int narg, char **arg, MPI_Comm communicator)
|
||||
if (universe->existflag && inflag == 0)
|
||||
error->universe_all("Must use -in switch with multiple partitions");
|
||||
|
||||
// if no partition command-line switch, cannot use -pscreen option
|
||||
|
||||
if (universe->existflag == 0 && partscreenflag)
|
||||
error->universe_all("Can only use -pscreen with multiple partitions");
|
||||
|
||||
// if no partition command-line switch, cannot use -plog option
|
||||
|
||||
if (universe->existflag == 0 && partlogflag)
|
||||
error->universe_all("Can only use -plog with multiple partitions");
|
||||
|
||||
// set universe screen and logfile
|
||||
|
||||
if (universe->me == 0) {
|
||||
@ -194,7 +218,8 @@ LAMMPS::LAMMPS(int narg, char **arg, MPI_Comm communicator)
|
||||
MPI_Comm_split(universe->uworld,universe->iworld,0,&world);
|
||||
MPI_Comm_rank(world,&me);
|
||||
|
||||
if (me == 0) {
|
||||
if (me == 0)
|
||||
if (partscreenflag == 0)
|
||||
if (screenflag == 0) {
|
||||
char str[32];
|
||||
sprintf(str,"screen.%d",universe->iworld);
|
||||
@ -208,9 +233,17 @@ LAMMPS::LAMMPS(int narg, char **arg, MPI_Comm communicator)
|
||||
screen = fopen(str,"w");
|
||||
if (screen == NULL) error->one("Cannot open screen file");
|
||||
}
|
||||
else if (strcmp(arg[partscreenflag],"none") == 0)
|
||||
screen = NULL;
|
||||
else {
|
||||
char str[128];
|
||||
sprintf(str,"%s.%d",arg[partscreenflag],universe->iworld);
|
||||
screen = fopen(str,"w");
|
||||
if (screen == NULL) error->one("Cannot open screen file");
|
||||
} else screen = NULL;
|
||||
|
||||
if (me == 0) {
|
||||
if (me == 0)
|
||||
if (partlogflag == 0)
|
||||
if (logflag == 0) {
|
||||
char str[32];
|
||||
sprintf(str,"log.lammps.%d",universe->iworld);
|
||||
@ -224,6 +257,13 @@ LAMMPS::LAMMPS(int narg, char **arg, MPI_Comm communicator)
|
||||
logfile = fopen(str,"w");
|
||||
if (logfile == NULL) error->one("Cannot open logfile");
|
||||
}
|
||||
else if (strcmp(arg[partlogflag],"none") == 0)
|
||||
logfile = NULL;
|
||||
else {
|
||||
char str[128];
|
||||
sprintf(str,"%s.%d",arg[partlogflag],universe->iworld);
|
||||
logfile = fopen(str,"w");
|
||||
if (logfile == NULL) error->one("Cannot open logfile");
|
||||
} else logfile = NULL;
|
||||
|
||||
if (me == 0) {
|
||||
|
||||
Reference in New Issue
Block a user