#!/bin/sh

#set x

if [ -f fort.01 -a -f fort.112 ]; then
   cat fort.112 fort.01 > fort.dual
fi

#if [ -f fort.01 -a -f fort.1101 -a -f fort.1104 ]; then
#   cat fort.1101 fort.1104 fort.01 > fort.point
#fi

if [ -f fort.01 -a -f fort.1104 ]; then
   cat fort.1104 fort.01 > fort.point
fi

if [ -f fort.110 -a -f fort.111 -a -f fort.112 ]; then
   cat fort.110 fort.111 fort.112 > fort.33
fi

if [ $# -eq 0 ]; then
   FILE="fort.*"
else
   FILE="$*"
fi
cat /dev/null > pic.made

label1="X"
label2=Concentration

n1=`cat fort.1 | awk '{print $1}'`
f1=`cat fort.1 | awk '{print $2}'`
d1=`cat fort.1 | awk '{print $3}'`
n2=`cat fort.1 | awk '{print $4}'`
f2=`cat fort.1 | awk '{print $5}'`
d2=`cat fort.1 | awk '{print $6}'`
n=$n1

bt=`cat fort.2 | awk '{print $1}'`
sigma=`cat fort.2 | awk '{print $2}'`
epsilon=`cat fort.2 | awk '{print $3}'`

x1beg=-3
x1end=3
x2beg=-3
x2end=3

nt=`cat fort.0 | awk '{print $1}'`
at=`cat fort.0 | awk '{print $2}'`
ht=`cat fort.0 | awk '{print $3}'`

for i in $FILE; do
   case $i in
   *.ps|*.eps|*.out) ;;
   *.c|*.cpp|*.f|*.f90) ;;
   *.o|*.h) ;;
   fort.0|fort.1|fort.2) ;;
   xx|pic) ;;
   *)

   title="`echo $i | sed 's/fort\.//g'`"
   echo "pic: $title"
   linecolor=red


   if [ "$i" = "fort.88" -o "$i" = "fort.99" ]; then

       if [ "$i" = "fort.88" ]; then
          cat fort.88 fort.99 > tmp; a2b < tmp n1=2 > $i.bin; nplot=2
       else
          a2b < ${i} n1=2 > $i.bin; nplot=1
       fi

      n=`wc -l $i | awk '{print $1}'`
      label1="Angle (degrees)"
      label2="Distance"
      title="Error (h=1/16: e=$epsilon: s=$sigma)"
      psgraph < $i.bin n=$n nplot=$nplot linecolor=$linecolor \
         linewidth=2,1  d1num=180 d2num=0.05 x2end=0.150 \
         wbox=6.5 hbox=6.5 xbox=1.25 ybox=2.25 \
         titlecolor=blue style=normal \
         title="$title" label1="$label1" label2="$label2" > ${i}.ps

#         linewidth=2,1 mark=0,1 marksize=4,4 \
#         x1beg=$f1 x1end=3  x2beg=0 x2end=0.005 \

   elif [ "$i" = "fort.77" ]; then

      a2b < ${i} n1=2 > $i.bin; nplot=1

      n=`wc -l $i | awk '{print $1}'`
      label1="Angle (degrees)"
      label2="Distance"
      title="Error (h=1/16: e=$epsilon: s=$sigma)"
      psgraph < $i.bin n=$n nplot=$nplot linecolor=$linecolor \
         linewidth=1,1 \
         x1beg=$x1beg x1end=$x1end x2beg=$x2beg x2end=$x2end \
         wbox=6.5 hbox=6.5 xbox=1.25 ybox=2.25 \
         titlecolor=blue style=normal \
         title="$title" label1="$label1" label2="$label2" > ${i}.ps


   elif [ "$i" = "fort.01" -o "$i" = "fort.11" \
          -o "$i" = "fort.22" -o "$i" = "fort.33" \
          -o "$i" = "fort.point" -o "$i" = "fort.dual" ]; then

      title="C(y=0;t=$bt): e=$epsilon: s=$sigma: RK4"
      title="C(y=0;t=$bt): e=$epsilon: s=$sigma: Dual-Mesh"

      linewidth="1.5,2,1"; lineon="1.5,10,1"; lineoff="3,3,0"

      nplot=1
      a2b < ${i} n1=2 > $i.bin

      if [ "$i" = "fort.22" -o "$i" = "fort.dual" -o "$i" = "fort.point" ]; then
         nplot=2
         linewidth="2,1"; lineon="10,1"; lineoff="3,0"
      elif [ "$i" = "fort.33" -o "$i" = "fort.point" ]; then
         nplot=3
      fi

      psgraph < $i.bin n=$n nplot=$nplot linecolor=$linecolor \
         linewidth=$linewidth lineon=$lineon lineoff=$lineoff \
         wbox=6.5 hbox=6.5 xbox=1.25 ybox=2.25 \
         x1beg=$x1beg x1end=$x1end \
         x2end=1.01 \
         titlecolor=blue style=normal \
         title="$title" label1="$label1" label2="$label2" > ${i}.ps

#         mark=1,2,0 marksize=4,4,0 \
#         mark=0,1 marksize=4,4 \
#         x1beg=$f1 x1end=3  x2beg=0 x2end=0.005 \

   else

      a2b < ${i} n1=1 > $i.bin

      label2=Y

      title="C(t=$bt); grid=${n1}X${n2}; s=$sigma; e=$epsilon"
#      title="C(t=$bt); grid=${n1}X${n2}; s=$sigma"

#      psimage < $i.bin n1=$n1 f1=$f1 d1=$d1 f2=$f2 d2=$d2 style=normal \
      pscontour < $i.bin n1=$n1 f1=$f1 d1=$d1 f2=$f2 d2=$d2 style=normal \
         fc=0.1 dc=0.1 nc=21 labelcf=2 labelcper=2 cwidth=1.5 labelcsize=15 \
         x1beg=$x1beg x1end=$x1end x2beg=$x2beg x2end=$x2end \
         wbox=6.5 hbox=6.5 xbox=1.25 ybox=2.25 \
         grid1=dot d1num=1 grid2=dot f2num=$f2 d2num=1 brgb=1.0,0.0,0.0 \
         ccolor=red labelccolor=blue \
         titlecolor=blue axescolor=blue \
         title="$title" label1="$label1" label2="$label2" > $i.ps

#         fc=0.05 dc=0.05 nc=21 labelcf=2 labelcper=2 cwidth=1.5 labelcsize=15 \
#         x1beg=-0.5 x1end=2  x2beg=-1.5 x2end=1 \
#         x1beg=-1 x1end=3  x2beg=-2 x2end=2 \
   fi

#   gv $i.ps

   echo $i.ps >> pic.made
   rm $i.bin

   ;;
   esac

done

