#!/bin/ksh -x

#Functions
ReplaceLine()
{
#!/bin/ksh -x
vi $1 << end
/${2}/
:C
${3}
:w!
:q
end
}
InsertLine_vi()
{
#!/bin/ksh -x
vi $1 << end
:$2
:o
:options template
:w!
:q
end
}

Change_vi()
{
#!/bin/ksh -x
vi $1 << end
:%s/${2}/$3
:w!
:q
end
}

# VARIAVEIS

ARQIN=$1
ARQOUT=`echo ${ARQIN}|awk '{print tolower($1)}'`
TEMPL=`echo ${ARQOUT}|cut -d+ -f1` 
fct=$2
DIR_Y=`echo ${Run_Date}|cut -c 1-4`
DIR_M=`${Eta_home}/util/caldate.3.0 ${Run_Date} + 0d 'mmm'`
DIR_D=`echo ${Run_Date}|cut -c 7-8`
#export GADDIR=/usr/local/grads/dat
#export GAUDFT=/usr/local/grads/udf/udft
export BINDIR=${Eta_binctl}
export GRBDIR=${Eta_grbctl}/${Res}km/${Run_Date}
export WRKDIR=${Eta_run}

cd ${WRKDIR}

mkdir -p ${GRBDIR}


#rm -f LL40Ganl*
pwd
ln -s ${BINDIR}/${ARQIN}* .    

${Eta_run}/lats4d -i ${ARQIN}.ctl -o ${ARQIN} -center "cptec" -format "grads_grib" -ftype ctl -table "cptec.table" -v -q

#
# fixing grib header
#
${Eta_run}/fixgrb ${ARQOUT}.grb

if ((${fct}==0000)) ; then
  cp ${WRKDIR}/${ARQOUT}.ctl ${WRKDIR}/${TEMPL}.ctl
cat > head${Run_Date}.ctl << EOF
dset ^${TEMPL}+%y4%m2%d2%h2.grb
options template little_endian
EOF
nlinhas=`wc -l ${WRKDIR}/${TEMPL}.ctl|awk '{print $1}'`
echo "nlinhas= "${nlinhas}
let nlinhas=${nlinhas}-2
tail -${nlinhas} ${WRKDIR}/${TEMPL}.ctl >> head${Run_Date}.ctl
mv -f ${WRKDIR}/head${Run_Date}.ctl ${WRKDIR}/${TEMPL}.ctl
let NArqs=${Fct}/${IntFct}
let NArqs=${NArqs}+1
Change_vi ${WRKDIR}/${TEMPL}.ctl ${ARQOUT}.gmp ${TEMPL}.gmp
Change_vi ${WRKDIR}/${TEMPL}.ctl 'tdef 1' 'tdef '${NArqs}
Change_vi ${WRKDIR}/${TEMPL}.ctl '6hr' ${IntFct}'hr'
mv ${WRKDIR}/${TEMPL}.ctl    ${GRBDIR}/.
chmod 755 ${GRBDIR}/${TEMPL}.ctl
mv ${WRKDIR}/${TEMPL}.gmp    ${GRBDIR}/.
chmod 755 ${GRBDIR}/${TEMPL}.gmp 
fi
rm -f ${WRKDIR}/${ARQIN}*  
mv ${WRKDIR}/${ARQOUT}*.ctl  ${GRBDIR}/.
chmod 755 ${GRBDIR}/${ARQOUT}*.ctl 
mv ${WRKDIR}/${ARQOUT}*.gmp  ${GRBDIR}/.
chmod 755 ${GRBDIR}/${ARQOUT}*.gmp
mv ${WRKDIR}/${ARQOUT}*.grb  ${GRBDIR}/.
chmod 755 ${GRBDIR}/${ARQOUT}*.grb 
#
/usr/local/grads/bin/gribmap -i ${GRBDIR}/${TEMPL}.ctl



