#!/bin/bash

## Just run code in recipes, use it carefully
## example: use cdo to make cache file. Since cdo is quicker than ncl.
#;DIAG_NORCPM; RUNTHESECODES: echo '    no codes run here.'

#file list
cases='TBI_NUG_Ano TBI_NUG_FF TBI_N2_Ano_w2 TBI_N2_FF_w2'
seasons='_' ## no seasons, whole year (monthly)
seasons='_ _DJF_ _MAM_ _JJA_ _SON_'
p1='1980-2000'
p2='2000-2020'
p12='1980-2020'

for s in $seasons ; do
for p in $p12 $p1 $p2 ; do
fns=''
for c in $cases ; do
    cc=$(echo $c|sed 's/TBI_//')
    fn="../../${c}/21_prec/${cc}_PRECT_ensmean${s}${p}.nc"
      dst=$(basename $fn)
    if [ -f "$fn" ]; then
        cp -u "$fn" "$dst" && fns="$fns $dst" ## || true
    elif [ -f "${cc}_PRECT_ensmean${s}${p12}.nc" ]; then
        yb=$(echo $p | cut -d- -f1)
        ye=$(echo $p | cut -d- -f2)
        cdo -O -selyear,$yb/$ye  "${cc}_PRECT_ensmean${s}${p12}.nc" "$dst" &&  fns="$fns $dst"
    else
        echo "$fn is not available"
    fi
done ## for c in $cases
#
## regrid N2_* to NUG_*
if [ -f "TBI_N2_FF_w2_PRECT_ensmean${s}${p}.nc" ] ;then
    ncremap -d "TBI_NUG_FF_PRECT_ensmean${s}${p}.nc" "TBI_N2_FF_w2_PRECT_ensmean${s}${p}.nc" tmp.nc && mv tmp.nc "TBI_N2_FF_w2_PRECT_ensmean${s}${p}.nc"
    ncremap -d "TBI_NUG_FF_PRECT_ensmean${s}${p}.nc" "TBI_N2_Ano_w2_PRECT_ensmean${s}${p}.nc" tmp.nc && mv tmp.nc "TBI_N2_Ano_w2_PRECT_ensmean${s}${p}.nc"
fi
if [ ! -z "$fns" ]; then
    test -f "superensmean_PRECT${s}${p}.nc" || ncea $fns -o "superensmean_PRECT${s}${p}.nc"
fi
done ## for p in $p1 $p2 $p12
done ## for s in $seasons

for s in $seasons ; do
    if [ ! -f "superensmean_dPRECT${s}P2-P1.nc" ] && [ "$s" != "_DJF_" ] ;then
        ncbo --op_typ=- "superensmean_PRECT${s}${p2}.nc" "superensmean_PRECT${s}${p1}.nc" "superensmean_dPRECT${s}P2-P1.nc"
    fi
done

## fetch regridded GPCP data, need fix the hard coded
ln -sf ../../TBI_NUG_FF/21_prec/gpcp*.nc .
cdo -O -selyear,1980/2000  "gpcp_prec_atm_grid_JJA_1980-2020.nc" "gpcp_prec_atm_grid_JJA_1980-2000.nc"
cdo -O -selyear,2000/2020  "gpcp_prec_atm_grid_JJA_1980-2020.nc" "gpcp_prec_atm_grid_JJA_2000-2020.nc"
cdo -O -selyear,1980/2000  "gpcp_prec_atm_grid_DJF_1980-2020.nc" "gpcp_prec_atm_grid_DJF_1980-2000.nc"
cdo -O -selyear,2000/2020  "gpcp_prec_atm_grid_DJF_1980-2020.nc" "gpcp_prec_atm_grid_DJF_2000-2020.nc"
cdo -O -selyear,1980/2000  "gpcp_prec_atm_grid_MAM_1980-2020.nc" "gpcp_prec_atm_grid_MAM_1980-2000.nc"
cdo -O -selyear,2000/2020  "gpcp_prec_atm_grid_MAM_1980-2020.nc" "gpcp_prec_atm_grid_MAM_2000-2020.nc"
cdo -O -selyear,1980/2000  "gpcp_prec_atm_grid_SON_1980-2020.nc" "gpcp_prec_atm_grid_SON_1980-2000.nc"
cdo -O -selyear,2000/2020  "gpcp_prec_atm_grid_SON_1980-2020.nc" "gpcp_prec_atm_grid_SON_2000-2020.nc"
## fetch Atl3 SST time series
ln -sf ../../TBI_NUG_FF/01_sst_regional-cor/sst_ensmean_Atl3_ts_JJA.nc .


