#! /bin/sh Pr="-" MP=false style=large N="" while [ $# -gt 0 ]; do case $1 in [0-9]*) N=$1; shift ;; -mp) shift; MP=true ;; -sm*) shift; style=small ;; -m*d*) shift; style=medium ;; -l*g*) shift; style=large ;; *) echo "Bad arg: $1."; exit ;; esac done case $style in small) Ns="25 50" Ks="2 4" EvenKs="2 4" Gs="2.0 2.2" Ps="0.0 0.2" ;; medium) Ns="25 50 100" Ks="1 2 3 4" EvenKs="2 4 6" Gs="2.0 2.2 2.5" Ps="0.0 0.05 0.1 0.2" ;; large) Ns="25 50 100 250 500 1000 2000" Ks="1 2 3 4 8" EvenKs="2 4 6 8 10" Gs="1.8 2.0 2.2 2.5 3.0" Ps="0.0 0.05 0.1 0.2 0.3 0.5" ;; esac if [ "$N" != "" ]; then Ns=$N; fi echo "dostats: style=$style MP=$MP" echo "Ns=$Ns" echo "Ks=$Ks" echo "EvenKs=$EvenKs" echo "Gs=$Gs" echo "Ps=$Ps" TF (){ if [ $1 = "true" ]; then echo "$2" ; else echo "$3" ; fi; } plrun (){ R=$1 TD=$2 C=$3 if [ $MP = true ]; then nice ./run -p -d data $Pr$N $K $G $R $TD $C & else ./run -p -d data $Pr$N $K $G $R $TD $C fi } barun (){ N0=$1 if [ $MP = true ]; then nice ./run -b -d data $Pr$N $K $N0 & else ./run -b -d data $Pr$N $K $N0 fi } swrun (){ incrEdgs=$1 if [ $MP = true ]; then nice ./run -s -d data $Pr$N $K $P $incrEdgs & else ./run -s -d data $Pr$N $K $P $incrEdgs fi } plstats (){ echo "<< Running PL Stats for N=$N G=$G K=$K >>" plrun true true true plrun true true false plrun true false true plrun true false false plrun false true true plrun false true false plrun false false true plrun false false false } bastats (){ echo "<< Running Bag Stats for N=$N K=$K >>" Ktimes2=`expr $K \* 2` Kplus1=`expr $K + 1` Kplus1times2=`expr $Kplus1 \* 2` barun $K barun $Ktimes2 } swstats (){ echo "<< Running SmW Stats for N=$N P=$P K=$K >>" swrun true swrun false } if [ ! -d data ]; then mkdir data; fi for N in $Ns ; do for K in $EvenKs ; do for P in $Ps ; do swstats done done for K in $Ks ; do bastats for G in $Gs ; do plstats done done done