#!/bin/bash

#==========================================
# Configure environmentvariables
#==========================================
BaseDir0=`pwd`

if [ -e $DataRoot/scripts/.bashrc-local ]; then
	source $DataRoot/scripts/.bashrc-local
else
	echo 
	echo *** ERROR: Can not find [$DataRoot/scripts/.bashrc-local]
	echo
	exit
fi
if [ -e $BaseDir0/vasp_config.sh ]; then
	source $BaseDir0/vasp_config.sh
else
	echo 
	echo *** ERROR: Can not find [$BaseDir0/vasp_config.sh]
	echo
	exit
fi
if [ -e $BaseDir0/vasp_params.sh ]; then
	source $BaseDir0/vasp_params.sh
else
	echo 
	echo *** ERROR: Can not find [$BaseDir0/vasp_params.sh]
	echo
	exit
fi

cd $BaseDir0
export BaseDir=$BaseDir0

source $BaseDir0/vasp-info


#==========================================
# Clean logs and job file of previous run
#==========================================
if [ -e $JOB_NAME.e* ]; then
 rm $JOB_NAME.e*
fi

if [ -e $JOB_NAME.o* ]; then
 rm $JOB_NAME.o*
fi

if [ -e job ]; then
 rm job
fi


#==========================================
# Create job file
#==========================================
cat <<- EOS >> job
#!/bin/sh

export HostName=`hostname`
export BaseDir=`pwd`

export PATH=$PATH

export AccountName=$AccountName
export HomeDirName=$HomeDirName
export RealHomeDir=$RealHomeDir
export WorkHomeDir=$WorkHomeDir
export BinRoot=$BinRoot
export DataRoot=$HDRoot

export MYBINDIR=$MYBINDIR
export MYAPPROOT=$MYAPPROOT
export MYAPPDIR=$MYAPPDIR

export ProgramsDir=$ProgramsDir
export TkProgramsDir=$TkProgramsDir
export TkProgramsBinDir=$TkProgramsBinDir
export TkDatabasesDir=$TkDatabasesDir

export PERL_LOCAL_LIB_ROOT="$PERL_LOCAL_LIB_ROOT"
export PERL5LIB="$PERL5LIB"
export PERL5PATH="$PERL5PATH"

export PYTHONPATH=$PYTHONPATH

export TkPerlDir=$TkPerlDir

export TkPythonDir=$TkPythonDir
export PythonVASPDir=$PythonVASPDir

export TEE=$TEE
export PerlPath=$PerlPath
export PythonPath=$PythonPath

export MyAppDir=$MyAppDir
export BaderDir=$BaderDir
export LDDir=$LDDir
export RamanSCDir=$RamanSCDir
export BaderCMD=$BaderCMD
export EnergyPath=$EnergyPath

export VASPDir=$VASPDir
export VASPScriptDir=$VASPScriptDir
export CMD="$CMD"
export MakeCIFCMD="$MakeCIFCMD"
export MakeXSFCMD="$MakeXSFCMD"
export VASPFSCMD="$VASPFSCMD"
export VASPLDCMD="$VASPLDCMD"

export INPUT_FILE=$INPUT_FILE

export BIN_DIR=$BIN_DIR
export BIN=$BIN

export LOG=$LOG

export NODE_TYPE=$NODE_TYPE
export NUM_NODE=$NUM_NODE
export NUM_CPU=$NUM_CPU
export TOTAL_PROC=$TOTAL_PROC

export GROUP=$GROUP
export MAIL_TYPE=$MAIL_TYPE
export MAIL_ADDR=$MAIL_ADDR

export VASPRunCMD="$VASPRunCMD"

mv vasp.log vasp.log.prev

#$ -cwd
#$ -l $NODE_TYPE=$NUM_NODE
#$ -l h_rt=$TIME
#$ -N $JOB_NAME
#$ -m $MAIL_TYPE
#$ -M $MAIL_ADDR

. /etc/profile.d/modules.sh
module load intel intel-mpi/19.0.117 fftw cuda
#module load intel/18.0.1.163 intel-mpi/18.1.163 fftw/3.3.8 cuda/9.2.148

$QSubRunCMD > $LOG

EOS

#=====================================
# Submit job
#=====================================
chmod 755 job
#exit

  qsub -g $GROUP job
#  qsub -g tga-MCES01 job5
#  qsub -g tga-MCES01 job7
#  qsub -N $JOB_NAME -l walltime=$TIME  job


#=====================================
# End
#=====================================
echo
