#!/bin/bash
if [ $# -lt 1 ] ; then
	echo "Script calls matlab and supplies parameters";
	exit 1
else
	echo "Initiating Overnight Loan Matching Algorithm";
	echo "Code written by Mark Rempel";
fi
script=$1
inputfile=$2
paramList=$3
outputfile=$4
paramfile=$(cat $paramList)
. ./$paramList # read the parameters listed in paramList by line
Seed=${Seed:-192654}
params="$(echo -e "${paramfile}" | tr -d '[[:space:]]')" # remove whitespace between parameters
cmd1="addpath('KNN');lvtsdatafile='$inputfile';$params;Nchunks;" # NOTE: matlab will crash if whitespace is included within this cmd, (unless you load the relevant module below:
lvtsdatafile2="${inputfile%.csv}"
lvtsdatafile2=$lvtsdatafile2.mat
cmd2="rng(Seed);lvts=R_recv_matrix(lvtsdatafile);lvtsdatafile='$lvtsdatafile2';save(lvtsdatafile,'lvts');run('$script');save('$outputfile.mat','Loans','LOANS');dlmwrite('$outputfile.csv',Loans,'precision',14,'delimiter',',');exit;" # NOTE: matlab will crash if whitespace is included within this cmd, (unless you load the relevant module below):
                        #. /usr/share/modules/init/bash
                        #modules load matlab/R2014a
cmd1="$(echo -e "${cmd1}" | tr -d '[[:space:]]')"
cmd2="$(echo -e "${cmd2}" | tr -d '[[:space:]]')"
echo "Parameters loaded in: "
echo $cmd1
cmds="$cmd1;$cmd2"
matlab -nosplash -nodesktop -nodisplay -r $cmds
