#! /bin/bash

#...

MARGIN='10'
NCORE='100'
REF_FRAME='94'
EGRESS_PWR='EGRESS_PWR_X_T_9.0-11.0mHz.fits'
EGRESS_PWR_FACT='0.2'
REFLOC='466 465'
MAG='4'

NCAN=`echo $NCORE $MARGIN | awk '{print $1 + 2*$2}'`
rm -f CANVAS.fits
blank_frame $NCAN $NCAN 255.0 CANVAS.fits

CORE_CENT=`echo $NCORE | awk '{print 0.5*$1;}'`
CAN_CENT=`echo $NCAN   | awk '{print 0.5*$1;}'`

rm -f CORE.fits
blank_frame $NCORE $NCORE 0.0 CORE.fits

COR_CENT=`echo $NCORE | awk '{print 0.5*$1;}'`

#......

EGRESS_PWR_FRAMENAME=`echo $REF_FRAME | awk '{
    printf("FRAME.%04d.fits", $1);
}'`

rm -f $EGRESS_PWR_FRAMENAME
unstack $EGRESS_PWR $REF_FRAME FRAME

#......

rm -f INSET.fits
map_image CORE.fits $EGRESS_PWR_FRAMENAME $COR_CENT $COR_CENT \
    $REFLOC 1.0 1.0 0.0 -s INSET.fits

rm -f NORM_INSET.fits
mon_op INSET.fits times $EGRESS_PWR_FACT -o NORM_INSET.fits

rm -f EFRAME.fits
map_image CANVAS.fits NORM_INSET.fits $CAN_CENT $CAN_CENT \
    $CORE_CENT $CORE_CENT 1.0 1.0 0.0 -s EFRAME.fits

rm -f FIGFRAME01.fits
expand_data EFRAME.fits 4 4 FIGFRAME01.fits

#......

rm -f SUM.fits
mon_op MASK_C1.fits times 150 -o SUM.fits

rm -f ADD.fits
mon_op MASK_C2.fits times 200 -o ADD.fits
rm -f SUMMER.fits
bin_op SUM.fits plus ADD.fits -o SUMMER.fits
rm -f SUM.fits
mv SUMMER.fits SUM.fits

rm -f ADD.fits
mon_op MASK_EE.fits times  30 -o ADD.fits
rm -f SUMMER.fits
bin_op SUM.fits plus ADD.fits -o SUMMER.fits
rm -f SUM.fits
mv SUMMER.fits SUM.fits

rm -f ADD.fits
mon_op MASK_SE.fits times  60 -o ADD.fits
rm -f SUMMER.fits
bin_op SUM.fits plus ADD.fits -o SUMMER.fits
rm -f SUM.fits
mv SUMMER.fits SUM.fits

rm -f ADD.fits
mon_op MASK_NW.fits times  90 -o ADD.fits
rm -f SUMMER.fits
bin_op SUM.fits plus ADD.fits -o SUMMER.fits
rm -f SUM.fits
mv SUMMER.fits SUM.fits

rm -f MASKS.fits
mv SUM.fits MASKS.fits


#......

rm -f INSET.fits
map_image CORE.fits MASKS.fits $COR_CENT $COR_CENT \
    $REFLOC 1.0 1.0 0.0 -s INSET.fits

#ds9 INSET.fits

rm -f EFRAME.fits
map_image CANVAS.fits INSET.fits $CAN_CENT $CAN_CENT \
    $CORE_CENT $CORE_CENT 1.0 1.0 0.0 -s EFRAME.fits

#ds9 EFRAME.fits

rm -f FIGFRAME02.fits
expand_data EFRAME.fits 4 4 FIGFRAME02.fits

#ds9 FIGFRAME01.fits -scale limits 0.0 255.0 \
#    FIGFRAME02.fits -scale limits 0.0 255.0

#......

rm -f IDL_INSTRUCTS.txt
echo '.run idl_progs' > IDL_INSTRUCTS.txt
echo '.run FIG00.pro' >> IDL_INSTRUCTS.txt
echo 'exit' >> IDL_INSTRUCTS.txt

MAG_NCAN=`echo $MAG $NCAN | awk '{print $1*$2;}'`


#......

rm -f FIG00.pro
echo 'setps, height = 12.0, hspan = '$MAG_NCAN', vspan = '$MAG_NCAN \
     > FIG00.pro
echo 'loadct, 0' >> FIG00.pro
echo 'read_fits, "FIGFRAME01.fits", data' >> FIG00.pro
echo 'tvscl, data' >> FIG00.pro
echo 'xyouts, 240, 20, "Egression Power", $' >> FIG00.pro
echo 'alignment = 0.5, charsize = 1.5, charthick = 2.5' >> FIG00.pro
echo 'closeps' >> FIG00.pro
echo 'end' >> FIG00.pro

rm -f idl.ps
idl IDL_INSTRUCTS.txt

rm -f FRAME01.eps
mv idl.ps FRAME01.eps

#......

rm -f FIG00.pro
echo 'setps, height = 12.0, hspan = '$MAG_NCAN', vspan = '$MAG_NCAN \
     > FIG00.pro

# Modify the prism colortable so that the color of the maximum value
# (255.0) is white (255, 255, 255) (instead of the original black).

echo 'common colors, r_orig, g_orig, b_orig, r_curr, g_curr, b_curr' \
     >> FIG00.pro
echo 'loadct, 6' >> FIG00.pro
echo 'r_curr[255] = 255' >> FIG00.pro
echo 'g_curr[255] = 255' >> FIG00.pro
echo 'b_curr[255] = 255' >> FIG00.pro
echo 'r_curr[0]   = 255' >> FIG00.pro
echo 'g_curr[0]   = 255' >> FIG00.pro
echo 'b_curr[0]   = 255' >> FIG00.pro
echo 'tvlct, r_curr, g_curr, b_curr' >> FIG00.pro

#...

echo 'read_fits, "FIGFRAME02.fits", data' >> FIG00.pro
echo 'tvscl, data' >> FIG00.pro
echo 'xyouts, 240, 20, "Regions Sampled", $' >> FIG00.pro
echo 'alignment = 0.5, charsize = 1.5, charthick = 2.5, $' >> FIG00.pro
echo 'color = 1' >> FIG00.pro

echo 'xyouts, 212, 300, "EE", $' >> FIG00.pro
echo 'orientation = 90, color = 1, $' >> FIG00.pro
echo 'charsize = 1.5, charthick = 2.5' >> FIG00.pro
echo 'plots, [212, 212] - 5, [300, 250], color = 1' >> FIG00.pro

echo 'xyouts, 271, 170, "SE", $' >> FIG00.pro
echo 'orientation = 90, color = 1, $' >> FIG00.pro
echo 'charsize = 1.5, charthick = 2.5' >> FIG00.pro
echo 'plots, [271, 271] - 7, [195, 235], color = 1' >> FIG00.pro

echo 'xyouts, 278, 300, "NW", $' >> FIG00.pro
echo 'orientation = 90, color = 1, $' >> FIG00.pro
echo 'charsize = 1.5, charthick = 2.5' >> FIG00.pro
echo 'plots, [278, 278] - 5, [300, 250], color = 1' >> FIG00.pro

echo 'xyouts, 250, 300, "C2", $' >> FIG00.pro
echo 'orientation = 90, color = 1, $' >> FIG00.pro
echo 'charsize = 1.5, charthick = 2.5' >> FIG00.pro
echo 'plots, [250, 250] - 5, [300, 250], color = 1' >> FIG00.pro

echo 'xyouts, 233, 170, "C1", $' >> FIG00.pro
echo 'orientation = 90, color = 1, $' >> FIG00.pro
echo 'charsize = 1.5, charthick = 2.5' >> FIG00.pro
echo 'plots, [233, 233] - 7, [195, 240], color = 1' >> FIG00.pro



echo 'loadct, 0' >> FIG00.pro
echo 'end' >> FIG00.pro

rm -f idl.ps
idl IDL_INSTRUCTS.txt

rm -f FRAME02.eps
mv idl.ps FRAME02.eps




#open FRAME02.eps

#......

rm -f FRAME01.gif
convert FRAME01.eps FRAME01.gif
rm -f FRAME02.gif
convert FRAME02.eps FRAME02.gif

rm -f FLICK01.gif
convert -delay 200 -loop 10 FRAME0[12].gif FLICK01.gif

animate FLICK01.gif
