#!/bin/bash
#SBATCH -o %x.e%j
#SBATCH -e %x.e%j.err
#SBATCH -t 24:00:00
#SBATCH -N 1        ## --nodes=
#SBATCH -c 64       ## --cpus-per-task=
#SBATCH --ntasks-per-node=1
#SBATCH --mem=0     ## max 770000 MB

#ulimit -s unlimited
#ulimit -t unlimited

echo 'JOB_NAME' $SLURM_JOB_NAME
echo 'JOB_ID' $SLURM_JOB_ID
echo 'JOB_CPUS_PER_NODE' $SLURM_JOB_CPUS_PER_NODE
hostname
date

export g16root=/otter/u/dsa/bin/gaussian
source $g16root/g16/bsd/g16.profile

export GAUSS_PDEF=${SLURM_CPUS_PER_TASK}
export GAUSS_SCRDIR=/otter/ptmp/$SLURM_JOB_USER/$SLURM_JOB_ID
echo 'GAUSS_PDEF' $GAUSS_PDEF
echo 'GAUSS_SCRDIR' $GAUSS_SCRDIR

export LOCAL_DIR=~/gaussian

mkdir -p $GAUSS_SCRDIR
rsync -a $LOCAL_DIR/$SLURM_JOB_NAME.* $GAUSS_SCRDIR
rsync -a ~/bin/readdump $GAUSS_SCRDIR
cd $GAUSS_SCRDIR

g16 < $SLURM_JOB_NAME.gau >> $SLURM_JOB_NAME.out

./readdump $SLURM_JOB_NAME.rwf $SLURM_JOB_NAME.evl evl
./readdump $SLURM_JOB_NAME.rwf $SLURM_JOB_NAME.evc evc
./readdump $SLURM_JOB_NAME.rwf $SLURM_JOB_NAME.s1e s1e

rsync -a $GAUSS_SCRDIR/$SLURM_JOB_NAME.out $LOCAL_DIR
rsync -a $GAUSS_SCRDIR/$SLURM_JOB_NAME.evl $LOCAL_DIR
rsync -a $GAUSS_SCRDIR/$SLURM_JOB_NAME.evc $LOCAL_DIR
rsync -a $GAUSS_SCRDIR/$SLURM_JOB_NAME.s1e $LOCAL_DIR
rm -rf $GAUSS_SCRDIR
date
if [[ ! -s ~/$SLURM_JOB_NAME.e$SLURM_JOB_ID.err ]]; then rm -f ~/$SLURM_JOB_NAME.e$SLURM_JOB_ID.err; fi
