
Year=${1}
Mon=${2}
Day=${3}
Date=${Year}-${Mon}-${Day}
#Des=/home/tanpv/Data/S2S/S2S_Ope_4Giang/${Year}${Mon}${Day}
Dpreset=/home/tanpv/Data/S2S/S2S_Ope_4Giang/Ope
Des=${Dpreset}

TP_file=LH_SH_OLR_TP_cf               # 47 timeslices from 00UTC = 46 timesteps, daily
Tem_File=TX_TM_cf                     # 184 timeslices from 06UTC (Max, Min cua 6 gio truoc)

if [ "$#" -ne 3 ]; then
  echo "Error: You must provide exactly 3 arguments."
  echo "Usage: $0 yyyy mm dd"
  exit 1
fi

#cat > ${Dpreset}/Date_fcs.txt << EOF
#${Year}-${Mon}-${Day}
#EOF

mkdir -p tmp                # Working directory
rm -f tmp/*
mkdir -p ${Des}             # Destination directory
rm -f ${Des}/*

fname=${TP_file}_${Date}.nc
cdo -f nc -b F32 sub -seltimestep,2/47 ${fname} -seltimestep,1/46 ${fname} tmp.nc             # Daily data
cdo expr,'sshf=-sshf/86400; slhf=-slhf/86400; ttr=-ttr/86400; tp=tp' tmp.nc tmp1.nc           # Convert to W m^-2
ncatted -a units,sshf,m,c,"W m-2" -a units,slhf,m,c,"W m-2" -a units,ttr,m,c,"W m-2" tmp1.nc  # Unit correction
cdo invertlat tmp1.nc tmp2.nc                                                                 # Invert latitude
mv tmp2.nc ${Des}/${fname}
rm -f tmp.nc tmp1.nc
#
fname=${Tem_File}_${Date}.nc
cdo timselmax,4 -selvar,mx2t6 $fname tx.nc                                                    # Daily Tmax
cdo timselmin,4 -selvar,mn2t6 $fname tm.nc                                                    # Daily Tmin
cdo merge tx.nc tm.nc txm.nc                                                                  # Merge to one file 
cdo expr,'mx2t6=mx2t6-273.15; mn2t6=mn2t6-273.15' txm.nc txm1.nc                              # Convert to C degree
ncatted -a units,mx2t6,m,c,"C" -a units,mn2t6,m,c,"C" txm1.nc                                 # Unit correction
cdo invertlat txm1.nc txm2.nc                                                                 # Invert latitude
mv txm2.nc ${Des}/${fname}
rm -f tx.nc tm.nc txm.nc txm1.nc



#cdo -f nc -b F32 sub -seltimestep,2/47 $fname -seltimestep,1/46 $fname tmp/tp_daily.nc    # Calculate Daily values
#cdo runmean,7 -selvar,tp tmp/tp_daily.nc tmp/tp_tmp.nc                                    # Weekly running mean of Prec
#cdo remapbil,grid_VN_0.10.dat tmp/tp_tmp.nc tmp/tp.nc                                     # Remap to 0.1 
#cdo ifthen Mask_VN_0.10_Corrected.nc tmp/tp.nc ${Des}/${TP_out}_${Date}.nc 

#fname=${Tem_File}_${Date}.nc
#cdo timselmax,4 -selvar,mx2t6 $fname tmp/tx.nc                          # Daily Maximum
#cdo runmax,7 -selvar,mx2t6 tmp/tx.nc tmp/txx.nc                         # Weekly Maximum

#cdo timselmin,4 -selvar,mn2t6 $fname tmp/tm.nc                          # Daily Minimum
#cdo runmin,7 -selvar,mn2t6 tmp/tm.nc tmp/tmm.nc                         # Weekly Minimum
#cdo merge tmp/txx.nc tmp/tmm.nc tmp/txm.nc 
#cdo remapbil,grid_VN_0.10.dat tmp/txm.nc tmp/txm_tmp.nc 
#cdo ifthen Mask_VN_0.10_Corrected.nc tmp/txm_tmp.nc ${Des}/${Tem_out}_${Date}.nc

#rm -f tmp/*

# Tinh daily values tu tong tich luy tu dau den cuoi:
# cdo -f nc -b F32 sub -seltimestep,2/47 LH_SH_OLR_TP_cf_2017-03-01.nc -seltimestep,1/46 LH_SH_OLR_TP_cf_2017-03-01.nc ttt.nc

# Tinh trung binh truot 7 ngay tu daily values
# cdo runmean,7 -selvar,tp ttt.nc tp.nc

# Tinh Daily Maximum temp tu 6-hourly data:
# cdo timselmax,4 -selvar,mx2t6 TX_TM_cf_2005-03-18.nc tx.nc

# Tinh Daily Minimum temp tu 6-hourly data:
# cdo timselmin,4 -selvar,mn2t6 TX_TM_cf_2005-03-18.nc tm.nc

# Merge 2 file:
# cdo merge in1.nc in2.nc out.nc


