#!/bin/bash

#set variable

set expout='AquaControl'
set model='cam3'

set year1='0016'
set year2='0045'

set model_type='*'
set freq='h0'

###################################################################
# 2D Fields
####################################################################

# ts
ncrcat -O -v TS ${model_type}.cam2.${freq}.00* \
        temp.nc
cdo -O -chname,TS,ts temp.nc \
        ts_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,ts,o,c,surface_temperature ts_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# psl
ncrcat -O -v PSL ${model_type}.cam2.${freq}.00* \
        temp.nc
cdo -O -chname,PSL,psl temp.nc \
        psl_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,psl,o,c,air_pressure_at_sea_level psl_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# ps
ncrcat -O -v PS ${model_type}.cam2.${freq}.00* \
        temp.nc
cdo -O -chname,PS,ps temp.nc \
        ps_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,ps,o,c,surface_air_pressure ps_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# pr
ncrcat -O -v PRECC,PRECL ${model_type}.cam2.${freq}.00* \
        temp.nc
ncap2 -O -s "PRECT=PRECC+PRECL" -v temp.nc temp.nc
cdo -O -chname,PRECT,pr temp.nc \
        pr_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,pr,o,c,precipitation_flux pr_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# prsn
ncrcat -O -v PRECSC,PRECSL ${model_type}.cam2.${freq}.00* \
        temp.nc
ncap2 -O -s "PRECST=PRECSC+PRECSL" -v temp.nc temp.nc
cdo -O -chname,PRECST,prsn temp.nc \
 	prsn_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,prsn,o,c,snowfall_flux prsn_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# prc
ncrcat -O -v PRECC ${model_type}.cam2.${freq}.00* \
        temp.nc
cdo -O -chname,PRECC,prc temp.nc \
 	prc_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,prc,o,c,convective_precipitation_flux prc_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# tauu
ncrcat -O -v TAUX ${model_type}.cam2.${freq}.00* \
        temp.nc
cdo -O -chname,TAUX,tauu temp.nc \
 	tauu_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,tauu,o,c,surface_downward_eastward_stress tauu_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# tauv
ncrcat -O -v TAUY ${model_type}.cam2.${freq}.00* \
        temp.nc
cdo -O -chname,TAUY,tauv temp.nc \
 	tauv_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,tauv,o,c,surface_downward_northward_stress tauv_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# hfls
ncrcat -O -v LHFLX ${model_type}.cam2.${freq}.00* \
        temp.nc
cdo -O -chname,LHFLX,hfls temp.nc \
 	hfls_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,hfls,o,c,surface_upward_latent_heat_flux hfls_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# hfss
ncrcat -O -v SHFLX ${model_type}.cam2.${freq}.00* \
        temp.nc
cdo -O -chname,SHFLX,hfss temp.nc \
 	hfss_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,hfss,o,c,surface_upward_sensible_heat_flux hfss_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

#rlds
ncrcat -O -v FLDS ${model_type}.cam2.${freq}.00* \
        temp.nc
cdo -O -chname,FLDS,rlds temp.nc \
        rlds_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,rlds,o,c,surface_downwelling_longwave_flux_in_air rlds_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

#rlus
ncrcat -O -v FLDS,FLNS ${model_type}.cam2.${freq}.00* \
        temp.nc
ncap2 -O -s "FLUS=FLDS+FLNS" -v temp.nc temp.nc
cdo -O -chname,FLUS,rlus temp.nc \
        rlus_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,rlus,o,c,surface_upwelling_longwave_flux_in_air rlus_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

#rsds
ncrcat -O -v FSDS ${model_type}.cam2.${freq}.00* \
        temp.nc
cdo -O -chname,FSDS,rsds temp.nc \
        rsds_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,rsds,o,c,surface_downwelling_shortwave_flux_in_air rsds_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

#rsus
ncrcat -O -v FSDS,FSNS ${model_type}.cam2.${freq}.00* \
        temp.nc
ncap2 -O -s "FSUS=FSDS-FSNS" -v temp.nc temp.nc
cdo -O -chname,FSUS,rsus temp.nc \
        rsus_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,rsus,o,c,surface_upwelling_shortwave_flux_in_air rsus_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

#rsdscs
ncrcat -O -v FSDSC ${model_type}.cam2.${freq}.00* \
        temp.nc
cdo -O -chname,FSDSC,rsdscs temp.nc \
        rsdscs_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc 
ncatted -O -a long_name,rsdscs,o,c,surface_downwelling_shortwave_flux_in_air_assuming_clear_sky rsdscs_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

#rsuscs
ncrcat -O -v FSDSC,FSNSC ${model_type}.cam2.${freq}.00* \
        temp.nc
ncap2 -O -s "FSUSC=FSDSC-FSNSC" -v temp.nc temp.nc
cdo -O -chname,FSUSC,rsuscs temp.nc \
        rsuscs_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,rsuscs,o,c,surface_upwelling_shortwave_flux_in_air_assuming_clear_sky rsuscs_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

#rldscs
ncrcat -O -v FLDSC ${model_type}.cam2.${freq}.00* \
        temp.nc
cdo -O -chname,FLDSC,rldscs temp.nc \
        rldscs_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,rldscs,o,c,surface_downwelling_longwave_flux_in_air_assuming_clear_sky rldscs_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# rsdt 
ncrcat -O -v SOLIN ${model_type}.cam2.${freq}.00* \
        temp.nc
cdo -O -chname,SOLIN,rsdt temp.nc \
        rsdt_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,rsdt,o,c,toa_incoming_shortwave_flux rsdt_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# rsut 
ncrcat -O -v SOLIN,FSNT ${model_type}.cam2.${freq}.00* \
        temp.nc
ncap2 -O -s "FSTOA=SOLIN-FSNT" -v temp.nc temp.nc
cdo -O -chname,FSTOA,rsut temp.nc \
        rsut_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,rsut,o,c,toa_outgoing_shortwave_flux rsut_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# rsutcs
ncrcat -O -v SOLIN,FSNTC ${model_type}.cam2.${freq}.00* \
        temp.nc
ncap2 -O -s "FSTOAC=SOLIN-FSNTC" -v temp.nc temp.nc
cdo -O -chname,FSTOAC,rsutcs temp.nc \
        rsutcs_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,rsutcs,o,c,toa_outgoing_shortwave_flux_assuming_clear_sky rsutcs_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# rlut
ncrcat -O -v FLUT ${model_type}.cam2.${freq}.00* \
        temp.nc
cdo -O -chname,FLUT,rlut temp.nc \
        rlut_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,rlut,o,c,toa_outgoing_longwave_flux rlut_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# rlutcs
ncrcat -O -v FLUTC ${model_type}.cam2.${freq}.00* \
        temp.nc
cdo -O -chname,FLUTC,rlutcs temp.nc \
        rlutcs_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,rlutcs,o,c,toa_outgoing_longwave_flux_assuming_clear_sky rlutcs_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# prw
ncrcat -O -v TMQ ${model_type}.cam2.${freq}.00* \
        temp.nc
cdo -O -chname,TMQ,prw temp.nc \
 	prw_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,prw,o,c,atmosphere_water_vapor_content prw_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# clt
ncrcat -O -v CLDTOT ${model_type}.cam2.${freq}.00* \
        temp.nc
cdo -O -chname,CLDTOT,clt temp.nc \
 	clt_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,clt,o,c,cloud_area_fraction clt_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

## clwvi
#ncrcat -O -v CLDLIQ ${model_type}.cam2.${freq}.00* \
#        temp.nc
#cdo -O -chname,CLDLIQ,clwvi temp.nc \ 
# 	clwvi_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
#ncatted -O -a long_name,clwvi,o,c,atmosphere_cloud_condensed_water_content clwvi_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

## clivi
#ncrcat -O -v CLDICE ${model_type}.cam2.${freq}.00* \
#        temp.nc
#cdo -O -chname,CLDICE,clivi temp.nc \ 
# 	clivi_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc      
#ncatted -O -a long_name,clivi,o,c,atmosphere_cloud_ice_content clivi_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc


###################################################################
# 3D Fields
####################################################################

# cl
ncrcat -O -v CLOUD,PS,PHIS,hyai,hybi,hyam,hybm ${model_type}.cam2.${freq}.00* sigma_temp.nc
ncap2 -O -s "hyai=hyai*100000;hyam=hyam*100000;" sigma_temp.nc sigma_temp.nc
cdo -O -chname,PS,sp -chname,PHIS,geosp -chname,CLOUD,cl sigma_temp.nc input.nc
cdo ml2pl,100000,92500,85000,70000,60000,50000,40000,30000,25000,20000,15000,10000,7000,5000,3000,2000,1000 input.nc \
        cl_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncks -O -x -v geosp,sp cl_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc cl_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,cl,o,c,cloud_area_fraction_in_atmosphere_layer cl_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# clw
ncrcat -O -v CLDLIQ,PS,PHIS,hyai,hybi,hyam,hybm ${model_type}.cam2.${freq}.00* sigma_temp.nc
ncap2 -O -s "hyai=hyai*100000;hyam=hyam*100000;" sigma_temp.nc sigma_temp.nc
cdo -O -chname,PS,sp -chname,PHIS,geosp -chname,CLDLIQ,clw sigma_temp.nc input.nc
cdo ml2pl,100000,92500,85000,70000,60000,50000,40000,30000,25000,20000,15000,10000,7000,5000,3000,2000,1000 input.nc \
        clw_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncks -O -x -v geosp,sp clw_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc clw_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,clw,o,c,mass_fraction_of_cloud_liquid_water_in_air clw_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# cli
ncrcat -O -v CLDICE,PS,PHIS,hyai,hybi,hyam,hybm ${model_type}.cam2.${freq}.00* sigma_temp.nc
ncap2 -O -s "hyai=hyai*100000;hyam=hyam*100000;" sigma_temp.nc sigma_temp.nc
cdo -O -chname,PS,sp -chname,PHIS,geosp -chname,CLDICE,cli sigma_temp.nc input.nc
cdo ml2pl,100000,92500,85000,70000,60000,50000,40000,30000,25000,20000,15000,10000,7000,5000,3000,2000,1000 input.nc \
        cli_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncks -O -x -v geosp,sp cli_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc cli_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,cli,o,c,mass_fraction_of_cloud_ice_in_air cli_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# ta
ncrcat -O -v T,PS,PHIS,hyai,hybi,hyam,hybm ${model_type}.cam2.${freq}.00* sigma_temp.nc
ncap2 -O -s "hyai=hyai*100000;hyam=hyam*100000;" sigma_temp.nc sigma_temp.nc
cdo -O -chname,PS,sp -chname,PHIS,geosp -chname,T,ta sigma_temp.nc input.nc
cdo ml2pl,100000,92500,85000,70000,60000,50000,40000,30000,25000,20000,15000,10000,7000,5000,3000,2000,1000 input.nc \
        ta_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncks -O -x -v geosp,sp ta_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc ta_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,ta,o,c,air_temperature ta_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# ua
ncrcat -O -v U,PS,PHIS,hyai,hybi,hyam,hybm ${model_type}.cam2.${freq}.00* sigma_temp.nc
ncap2 -O -s "hyai=hyai*100000;hyam=hyam*100000;" sigma_temp.nc sigma_temp.nc
cdo -O -chname,PS,sp -chname,PHIS,geosp -chname,U,ua sigma_temp.nc input.nc
cdo ml2pl,100000,92500,85000,70000,60000,50000,40000,30000,25000,20000,15000,10000,7000,5000,3000,2000,1000 input.nc \
        ua_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncks -O -x -v geosp,sp ua_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc ua_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,ua,o,c,eastward_wind ua_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# va
ncrcat -O -v V,PS,PHIS,hyai,hybi,hyam,hybm ${model_type}.cam2.${freq}.00* sigma_temp.nc
ncap2 -O -s "hyai=hyai*100000;hyam=hyam*100000;" sigma_temp.nc sigma_temp.nc
cdo -O -chname,PS,sp -chname,PHIS,geosp -chname,V,va sigma_temp.nc input.nc
cdo ml2pl,100000,92500,85000,70000,60000,50000,40000,30000,25000,20000,15000,10000,7000,5000,3000,2000,1000 input.nc \
        va_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncks -O -x -v geosp,sp va_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc va_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,va,o,c,northward_wind va_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# hus 
ncrcat -O -v Q,PS,PHIS,hyai,hybi,hyam,hybm ${model_type}.cam2.${freq}.00* sigma_temp.nc
ncap2 -O -s "hyai=hyai*100000;hyam=hyam*100000;" sigma_temp.nc sigma_temp.nc
cdo -O -chname,PS,sp -chname,PHIS,geosp -chname,Q,hus sigma_temp.nc input.nc
cdo ml2pl,100000,92500,85000,70000,60000,50000,40000,30000,25000,20000,15000,10000,7000,5000,3000,2000,1000 input.nc \
        hus_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncks -O -x -v geosp,sp hus_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc hus_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,hus,o,c,specific_humidity hus_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# hur 
ncrcat -O -v RELHUM,PS,PHIS,hyai,hybi,hyam,hybm ${model_type}.cam2.${freq}.00* sigma_temp.nc
ncap2 -O -s "hyai=hyai*100000;hyam=hyam*100000;" sigma_temp.nc sigma_temp.nc
cdo -O -chname,PS,sp -chname,PHIS,geosp -chname,RELHUM,hur sigma_temp.nc input.nc
cdo ml2pl,100000,92500,85000,70000,60000,50000,40000,30000,25000,20000,15000,10000,7000,5000,3000,2000,1000 input.nc \
        hur_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncks -O -x -v geosp,sp hur_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc hur_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,hur,o,c,relative_humidity hur_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# wap 
ncrcat -O -v OMEGA,PS,PHIS,hyai,hybi,hyam,hybm ${model_type}.cam2.${freq}.00* sigma_temp.nc
ncap2 -O -s "hyai=hyai*100000;hyam=hyam*100000;" sigma_temp.nc sigma_temp.nc
cdo -O -chname,PS,sp -chname,PHIS,geosp -chname,OMEGA,wap sigma_temp.nc input.nc
cdo ml2pl,100000,92500,85000,70000,60000,50000,40000,30000,25000,20000,15000,10000,7000,5000,3000,2000,1000 input.nc \
        wap_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncks -O -x -v geosp,sp wap_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc wap_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,wap,o,c,lagrangian_tendency_of_air_pressure wap_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

# zg 
ncrcat -O -v Z3,PS,PHIS,hyai,hybi,hyam,hybm ${model_type}.cam2.${freq}.00* sigma_temp.nc
ncap2 -O -s "hyai=hyai*100000;hyam=hyam*100000;" sigma_temp.nc sigma_temp.nc
cdo -O -chname,PS,sp -chname,PHIS,geosp -chname,Z3,zg sigma_temp.nc input.nc
cdo ml2pl,100000,92500,85000,70000,60000,50000,40000,30000,25000,20000,15000,10000,7000,5000,3000,2000,1000 input.nc \
        zg_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncks -O -x -v geosp,sp zg_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc zg_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc
ncatted -O -a long_name,zg,o,c,geopotential_height zg_Amon_${model}_${expout}_r1i1p1_${year1}01-${year2}12.nc

