#!/bin/bash

MYNAME="ldas_add2rc"
if [[ $# -ne 2 ]]; then 
   echo " "
   echo " NAME "
   echo " "
   echo "  $MYNAME  - reconcile GEOSldas and AGCM configurations in weakly-coupled LADAS "
   echo " "
   echo " SYNOPSIS  "
   echo " "
   echo "  $MYNAME  FVHOME  LDHOME"
   echo " "
   echo " where"
   echo "   FVHOME  -  location of  ADAS experiment "
   echo "   LDHOME  -  location of  LDAS experiment "
   echo " "
   echo " DESCRIPTION"
   echo " "
   echo "    This procedure inserts select GEOSldas resource parameters into AGCM.rc and " 
   echo "    verifies consistency between LDAS.rc and AGCM.rc for other resource parameters "
   echo " "
   echo "   $MYNAME should be run after fvsetup and ldas_setup  "
   exit 0
fi

FVHOME="$1" 
LDHOME="$2" 

# ----------------------------------------------------------------
# extract the following parameters from LDAS.rc and add to AGCM.rc

cd $FVHOME/run
cp AGCM.rc.tmpl  AGCM.rc.tmpl.original 

list="LANDASSIM_DT LANDASSIM_T0 "
  for var in $list
do
    grep $var $LDHOME/run/LDAS.rc >> add.txt
done

sed -i '/LDAS_INCR/r add.txt' AGCM.rc.tmpl

echo " The following land parameters are added to AGCM.rc: " 
for var in $list
do
echo "$(grep $var add.txt)"
done

# add same resource parameters into AGCM.rc for atm ens
mv add.txt $FVHOME/run/atmens/. 
cd $FVHOME/run/atmens/ 
cp AGCM.rc.tmpl AGCM.rc.tmpl.original 

sed -i '/LDAS_INCR/r add.txt' AGCM.rc.tmpl

rm -rf add.txt

# ------------------------------------------------------------------------
# check consistency of the following parameter between LDAS.rc and AGCM.rc

clist=" Z0_FORMULATION:.*  LAND_PARAMS:.*  LSM_CHOICE:.* "
  for var in $clist 
do 
Lset="$(grep $var $LDHOME/run/LDAS.rc)"
Aset="$(grep $var $FVHOME/run/AGCM.rc.tmpl)"
lv="$(echo $Lset | cut -d " " -f 2)"
av="$(echo $Aset | cut -d " " -f 2)"
if [ "$lv" != "$av" ]; then
echo " " 
echo "Please repeat setup such that the following parameter values are consistent in AGCM.rc and LDAS.rc:"
echo "in AGCM.rc: $Aset "  
echo "in LDAS.rc: $Lset "
echo " " 
fi 
done   

