#!/usr/bin/env bash
# Wenchang Yang (wenchang@princeton.edu)
# Mon Mar  6 11:09:58 EST 2023
##SBATCH --nodes=1                # node count
##SBATCH --ntasks-per-node=1      # number of tasks per node
# 
#SBATCH --ntasks=1               # total number of tasks across all nodes = nodes x ntasks-per-node
#SBATCH --cpus-per-task=1        # cpu-cores per task (>1 if multi-threaded tasks)
#SBATCH --mem-per-cpu=16G         # memory per cpu-core (4G is default)
#SBATCH --time=24:00:00          # total run time limit (HH:MM:SS)
#SBATCH --mail-type=all          # send email when job begins/ends/fails
#SBATCH --mail-user=wenchang@princeton.edu
# 
##SBATCH --array=1-100#%32        # job array with index values 1, 2, ...,; max job # is 32 if specified
##SBATCH --output=slurm-%A.%a.out # stdout file
##SBATCH --error=slurm-%A.%a.err  # stderr file
#set -e #-ve
##env settings
#export PATH=/tigress/wenchang/miniconda3/bin:$PATH
#export PYTHONPATH=/tigress/wenchang/wython
#export PYTHONUNBUFFERED=TRUE # see https://stackoverflow.com/questions/230751/how-to-flush-output-of-print-function
#export OMP_NUM_THREADS=$SLURM_CPUS_PER_TASK #for multi-threaded job
#ii_job=$SLURM_ARRAY_TASK_ID #for job array
#model=FLOR
#model=AM2.5
model=AM2.5C360
#danames="t_surf precip"
danames=precip
#danames=t_surf
#funcnames="trop20mean nino34" #glbmean
#danames=rrvco2
#dsname=atmos_scalar
dsname=atmos_daily
#expnames=LMR2019SST1551_ens_tigercpu_intelmpi_18_540PE
#expnames=amipHadISSTlongChancorr_tigercpu_intelmpi_18_540PE
#expnames=amipHadISSTlong_chancorr_tigercpu_intelmpi_18_1080PE
expnames=amipHadISSTrcp45_tigercpu_intelmpi_18_1080PE
#years="1871:2021"
#ens="1:3"
years="1871:2100"
#ens="1:10"
ens=6
#funcnames=none
#funcnames=fldmean
#funcnames=interp
funcnames=selnearest
#lonlat=256.68,34.39 #103.32W, 34.39N
lonlat=15.31357,-4.32758 #15.31357,-4.32758
lonlat_name=Kinshasa

for daname in $danames; do
    for expname in $expnames; do
        for funcname in $funcnames; do
            for ens in $ens; do
                nohup python -m modelout.getdata daname=$daname model=$model expname=$expname funcname=$funcname lonlat=$lonlat lonlat_name=$lonlat_name\
                    years=$years ens=$ens dsname=$dsname  \
                    >> nohup.out.${daname}.${model}.${expname}.${funcname}.${lonlat}.${ens}.log &
            done
        done
    done
done
