#! /bin/tcsh


set DIR = $1

set PAN = $2

set MHC = $3


foreach a ( `cat list1` )

set pseudo = `cat /usr/cbs/bio/src/netMHCcons-1.1/data/training.pseudo | gawk -v a=$a '$1 == a' | args 2`

if ( -e $PAN/$pseudo.pred.gz ) then

gunzip -c $PAN/$pseudo.pred.gz | xC | args 3,5 | gawk '{printf( "%s %f\n", $1,$2)}' > $DIR/MHC_Pan/$$.pan

else 

echo Error. File $pseudo.pred.gz does not exist >> $DIR/MHC_Pan/tmp.out

exit

endif


if ( -e $MHC/$a.pred ) then

cat $MHC/$a.pred | gawk '{printf( "%s %f\n", $1,$2)}' > $DIR/MHC_Pan/$$.netmhc

else


echo  Error. File $MHC/$a.pred does not exist >> $DIR/MHC_Pan/tmp.out

exit

endif

paste $DIR/MHC_Pan/$$.netmhc $DIR/MHC_Pan/$$.pan | gawk '$1 == $3' | gawk '{print $1,($2+$4)/2}' > $DIR/MHC_Pan/$a.pred

endif

end

#rm -f $DIR/MHC_Pan/$$.*


foreach a ( `cat list1` )

if ( ! -e $DIR/MHC_Pan/$a.thr && -e $DIR/MHC_Pan/$a.pred ) then

touch $DIR/MHC_Pan/$a.thr

cat $DIR/MHC_Pan/$a.pred | sort -nrk2 > $DIR/MHC_Pan/$$.sort

echo $a `wc $DIR/MHC_Pan/$$.sort | args 1` >> $DIR/MHC_Pan/tmp.out

foreach f ( 0.01 0.025 0.05 0.075 0.1 0.125 0.15 0.175 0.2 0.25 0.3 0.4 0.5 0.8 1.0 1.5 2 3 4 5 6 7 8 9 10 15 16 32 50 )

set N = `echo $f | gawk '{print ($1*200000)/100}' `

set line = `cat $DIR/MHC_Pan/$$.sort | head -$N | tail -1`

echo $a $f $line >> $DIR/MHC_Pan/$a.thr

end

#rm -f $DIR/MHC_Pan/$$.sort

else

echo "Error." File $DIR/MHC_Pan/$a.pred "does not exist" >> $DIR/MHC_Pan/tmp.out

endif

end

#rm $DIR/MHC_Pan/*.pred

#rm $DIR/NetMHC/*.pred











