#!/bin/bash
set -euax

EXPNAM=$1 CDATE=$2 COMROT=${3:-$STMP/$USER} ARCDIR=${4:-$COMROT/archive} TMPDIR=${5:-$STMP/$USER/tmpdir}

ACCOUNT=${ACCOUNT:-nems}
CUE2RUN=${CUE2RUN:-batch}
KEEPDATA=${KEEPDATA:-NO}

[[ $CUE2RUN == batch ]] && PART=orion
[[ $CUE2RUN == debug ]] && PART=debug

vday=$(echo $CDATE | cut -c1-8)
vcyc=$(echo $CDATE | cut -c9-10)

echo -------------------------------------------------------------------------------------------------------------------
echo Starting the runfits for:
echo -------------------------------------------------------------------------------------------------------------------
echo "EXPNAM    " $EXPNAM       # argument 1 - experiment name    - required  (can be prod in which case COMROT is moot)
echo "CDATE     " $CDATE        # argument 2 - date of validation - required 
echo "COMROT    " $COMROT       # argument 3 - COMROT directory   - optional - defaults to /stmp/$USER
echo "ARCDIR    " $ARCDIR       # argument 4 - ARCDIR directory   - optional - defaults to $COMROT/archive 
echo "TMPDIR    " $TMPDIR       # argument 5 - TMPDIR directory   - optional - defaults to /stmp/$USER/tmpdir
echo "ACCOUNT   " $ACCOUNT      # inherited  - project code       - required - defaults to nothing  
echo "KEEPDATA  " $KEEPDATA     # inherited  - retain rundir      - optional - defaults to NO (rmdir)
echo -------------------------------------------------------------------------------------------------------------------

fitdir=$(dirname $0); fitdir=$(cd $fitdir; pwd)
LOGDIR=${LOGDIR:-$COMROT/logs/$CDATE}

set -euax          

vrfytmpdiris=$TMPDIR
unset TMPDIR

cat<<EOF | sbatch
#!/bin/bash
#SBATCH --job-name=FITS.$EXPNAM.$CDATE --time=20:00
#SBATCH --nodes=1 --ntasks=3
#SBATCH --output=$LOGDIR/FITS.$EXPNAM.$CDATE.$$
#SBATCH --account=$ACCOUNT
#SBATCH --partition=$PART 
#SBATCH --qos $CUE2RUN

set -euax

set +x
 module purge
 module load intel/2020.2
 module load impi/2020.2
 module load netcdf/4.7.4
 module list
set -x

export OMP_NUM_THREADS=${FITOMP:-1}
export MPIRUN="srun --export=ALL -n 3"

export CDATE=$CDATE
export EXP=$EXPNAM
export COMPONENT=${COMPONENT:-atmos}
export COMIN=$ROTDIR
export KEEPDATA=$KEEPDATA

export fitdir=$fitdir
export ARCDIR=$ARCDIR
export TMPDIR=$vrfytmpdiris
export ACPROFit=${ACPROFit:-YES}
export NEMS=${NEMS:-YES}

time $fitdir/runfits $EXPNAM $CDATE $COMROT

EOF
