# Usage: #First entry = run mode (local or parallel on saguaro) #Second entry = number of folders to traverse (should be max # of output folders) currpath=`pwd` dataoutput_path="./matlogs" run_mode=$1 starting_index=$2 ending_index=$3 MAT_FILENAME_ROOT="sag_mat" MAT_OUTPUTNAME_ROOT="sag_out" cp ~/startup_Evol.m . if [ -d $dataoutput_path ]; then # Check if save directory already exists echo Output directory \"${dataoutput_path}\" already exists. Exiting… exit 0 fi mkdir $dataoutput_path for (( c=${starting_index}; c<=${ending_index}; c++ )) do MAT_FILENAME=${MAT_FILENAME_ROOT}${c}"" echo "startup_Evol" > ${MAT_FILENAME}.m echo "make_wrkspc(${c});" >> ${MAT_FILENAME}.m echo "exit" >> ${MAT_FILENAME}.m sleep 1 # "export PATH=$PATH; export TERM=$TERM; cd $currpath; matlab -nodesktop -nodisplay -nosplash -r $MAT_FILENAME > ${MAT_OUTPUTNAME_ROOT}${c}.txt" if [ $run_mode = 1 ]; then octave --eval $MAT_FILENAME > ${MAT_OUTPUTNAME_ROOT}${c}.txt; mv ${MAT_FILENAME}.m ${dataoutput_path}/; mv ${MAT_OUTPUTNAME_ROOT}${c}.txt ${dataoutput_path}/; mv wrkspc_${c}.mat ${dataoutput_path}/ elif [ $run_mode = 5 ]; then echo QSub to saguaro. qsub <<< "export PATH=$PATH; export TERM=$TERM; cd $currpath; use MatlabR2010a; matlab -nodesktop -nodisplay -nosplash -r $MAT_FILENAME > ${MAT_OUTPUTNAME_ROOT}${c}.txt; mv ${MAT_FILENAME}.m ${dataoutput_path}/; mv ${MAT_OUTPUTNAME_ROOT}${c}.txt ${dataoutput_path}/; mv wrkspc_${c}.mat ${dataoutput_path}/" echo qsub <<< "export PATH=$PATH; export TERM=$TERM; cd $currpath; use MatlabR2010a; matlab -nodesktop -nodisplay -nosplash -r $MAT_FILENAME > ${MAT_OUTPUTNAME_ROOT}${c}.txt; mv ${MAT_FILENAME}.m ${dataoutput_path}/; mv ${MAT_OUTPUTNAME_ROOT}${c}.txt ${dataoutput_path}/; mv wrkspc_${c}.mat ${dataoutput_path}/" fi done #currpath=`pwd` #SERVER=dominique.asu.edu #stepsize=21 #startingfile=1 #endfile=21 # # #numfiles=$(($endfile-$startingfile+1)) #overhang=$(($numfiles % $stepsize)) #numprocs=0 # # #for (( c=$startingfile; c<=$(($endfile-$overhang-$stepsize+1)); c+= $stepsize )) #do # echo "Running matlab with: for_range=$c:$(($c+$stepsize-1));" # echo "for_range=$c:$(($c+$stepsize-1));" > rangefile.m # sleep 2 # numprocs=$(($numprocs+1)) # ssh $SERVER "export PATH=$PATH; export TERM=$TERM; cd $currpath; matlab -nodesktop -nodisplay -nosplash -r extract_all_fields > deleteme_$numprocs.out" & # sleep 15 # #done # #if (( $(($numfiles % stepsize)) != 0 )) #then # echo "Running matlab with: for_range=$(($endfile-$overhang+1)):$endfile;" # echo "for_range=$(($endfile-$overhang+1)):$endfile;" > rangefile.m # sleep 2 # numprocs=$(($numprocs+1)) # ssh $SERVER "export PATH=$PATH; export TERM=$TERM; cd $currpath; matlab -nodesktop -nodisplay -nosplash -r extract_all_fields > deleteme_$numprocs.out" & # sleep 15 # #fi