#!/bin/bash #PBS -lwalltime=_TIMELIMIT_:00:00 #PBS -S /bin/bash #PBS -lnodes=1:ppn=_NCORES_ #PBS -N _JOBNAME_ ulimit -s unlimited # workdirectory WORKDIR=$PBS_O_WORKDIR #vasp exe VASP="/home/nick/VASP-LIBXC/vasp.5.3.5/vasp-LIBXC" # scratch directory SCRATCH=/scratch/${USER}/${PBS_JOBID} # copy files from one to other scp -r ${WORKDIR}/* ${SCRATCH}/. cd ${SCRATCH} # prepare inputs egrep -v '_nsw_' INCAR_ > INCAR echo " NSW = _SUBSTEPS_ " >> INCAR # run checker in background and determine its pid ./checker >& /dev/null & checkerpid=$! # execute vasp mpirun ${VASP} >> vasp.out # kill checker kill ${checkerpid} # run check.py one last time ./check-CHD3.py # check the number of runs check=0 while [ -e "XDATCAR_${check}" ] do let check++ done # get timing grep Elapsed OUTCAR >> time.dat # update imporant outputs mv POSCAR POSCAR_${check} mv OSZICAR OSZICAR_${check} mv XDATCAR XDATCAR_${check} mv CONTCAR CONTCAR_${check} grep -A 51 "TOTAL-FORCE" OUTCAR > Forces_${check}.dat rm CHG* DO* E* IB* PC* W* vasprun* OUTCAR vdw* #Copy files back scp -r ${SCRATCH}/* ${WORKDIR}/. # clean up rm -r ${SCRATCH}/*