#! /usr/bin/ksh

### Diretorios
Eta15="/Sazonal1/CEMIG"
Diario="/Sazonal1/Diario/Eta_15km"

### Scripts e Softwares
dirCaldate="/Sazonal1/bin/caldate.3.0"

for dataRun in `find ${Eta15}/* -prune -type d -name 2014111[3-7]12 -printf '%f\n'`
do
 vetData[${#vetData[@]}]=${dataRun}
 vetM1[${#vetData[@]}]=`caldate.3.0 ${dataRun} +   0d  "yyyymmmld"`
 vetM2[${#vetData[@]}]=`caldate.3.0 ${dataRun} +  30d  "yyyymmmld"`
 vetM3[${#vetData[@]}]=`caldate.3.0 ${dataRun} +  60d  "yyyymmmld"`
 vetM4[${#vetData[@]}]=`caldate.3.0 ${dataRun} +  90d  "yyyymmmld"`
 vetM5[${#vetData[@]}]=`caldate.3.0 ${dataRun} + 120d  "yyyymmmld"`
done

cat <<EOF> Gera_Bin_Diario.gs

lat='-25 -12'
lon='-52 -39'

datas="${vetData[@]}"
datasM1="${vetM1[@]}"
datasM2="${vetM2[@]}"
datasM3="${vetM3[@]}"
datasM4="${vetM4[@]}"
datasM5="${vetM5[@]}"

Cont=1
while (Cont <= ${#vetData[@]})

_data=subwrd(datas,Cont)

'!mkdir -p ${Diario}/'%_data

_dd=substr(_data,7,2)
_diaI=_dd
_hh=substr(_data,9,2)

M1=subwrd(datasM1,Cont)
M2=subwrd(datasM2,Cont)
M3=subwrd(datasM3,Cont)
M4=subwrd(datasM4,Cont)
M5=subwrd(datasM5,Cont)

say ' '

_ldm.1=substr(M1,8,2)
_mes.1=substr(M1,5,3)
_ano.1=substr(M1,1,4)
say _ano.1%' '%_mes.1%' '%_ldm.1

_ldm.2=substr(M2,8,2)
_mes.2=substr(M2,5,3)
_ano.2=substr(M2,1,4)
say _ano.2%' '%_mes.2%' '%_ldm.2

_ldm.3=substr(M3,8,2)
_mes.3=substr(M3,5,3)
_ano.3=substr(M3,1,4)
say _ano.3%' '%_mes.3%' '%_ldm.3

_ldm.4=substr(M4,8,2)
_mes.4=substr(M4,5,3)
_ano.4=substr(M4,1,4)
say _ano.4%' '%_mes.4%' '%_ldm.4

_ldm.5=substr(M5,8,2)
_mes.5=substr(M5,5,3)
_ano.5=substr(M5,1,4)
say _ano.5%' '%_mes.5%' '%_ldm.5

say ''
say ''

***Dados Eta 15km
'open ${Eta15}/'%_data%'/etasa15km'%_data%'.ctl'
  
'q files'
say result

say ''

*'set lat '%lat
*'set lon '%lon

'set gxout fwrite'
'set fwrite ${Diario}/'%_data%'/Eta_15km'%_data%'_Diario.bin'
'q fwrite'
say result

i=1
_tdef=0
while (i<=5)

rc = geraFigura(Prec,1,'*1000',i)

_dd=01
_hh=00

i=i+1
endwhile

'disable fwrite'

rc=write('${Diario}/'%_data%'/Eta_15km'%_data%'_Diario.ctl','DSET ^Eta_15km'%_data%'_Diario.bin')
rc=write('${Diario}/'%_data%'/Eta_15km'%_data%'_Diario.ctl','UNDEF -999000000.000000')
rc=write('${Diario}/'%_data%'/Eta_15km'%_data%'_Diario.ctl','XDEF 320 linear -82.000000 0.150000')
rc=write('${Diario}/'%_data%'/Eta_15km'%_data%'_Diario.ctl','YDEF 273 linear -35.000000 0.150000')
rc=write('${Diario}/'%_data%'/Eta_15km'%_data%'_Diario.ctl','ZDEF 20 levels')
rc=write('${Diario}/'%_data%'/Eta_15km'%_data%'_Diario.ctl','1000 925 900 850 800 750 700 650 600 550')
rc=write('${Diario}/'%_data%'/Eta_15km'%_data%'_Diario.ctl','500 450 400 350 300 250 200 150 100 50')
rc=write('${Diario}/'%_data%'/Eta_15km'%_data%'_Diario.ctl','TDEF '%_tdef%' linear '%_diaI%_mes.1%_ano.1%'  1dy')
rc=write('${Diario}/'%_data%'/Eta_15km'%_data%'_Diario.ctl','VARS 1')
rc=write('${Diario}/'%_data%'/Eta_15km'%_data%'_Diario.ctl','prec    0   99 TOTAL PRECIPITATION [mm/day]')
rc=write('${Diario}/'%_data%'/Eta_15km'%_data%'_Diario.ctl','ENDVARS')
rc=close('${Diario}/'%_data%'/Eta_15km'%_data%'_Diario.ctl')

'reinit'

Cont=Cont+1
endwhile

'quit'

function geraFigura(var,z,fator,i)

* * Eta 15km 

dia=_dd

while (dia<=_ldm.i)

say 'd sum('%var%'.1(z='%z%'),time=00z'%dia%_mes.i%_ano.i%',time=18z'%dia%_mes.i%_ano.i%')'%fator
'd sum('%var%'.1(z='%z%'),time=00z'%dia%_mes.i%_ano.i%',time=18z'%dia%_mes.i%_ano.i%')'%fator

_tdef=_tdef+1
dia=dia+1
endwhile

return

EOF

chmod 775 Gera_Bin_Diario.gs

grads -bpc "run Gera_Bin_Diario.gs"

exit
