#!/bin/tcsh
#PBS -l ncpus=16,nodes=4:dualcore:ppn=4
#PBS -k eo 
#PBS -V                 
#PBS -N diamond

set NPROC   = 16
set NPOOL   = 16
set MPIRUN  = /home/software/ompi/1.3.2-pgi/bin/mpirun

######## Do not edit below this line #########

setenv LD_LIBRARY_PATH /home/software/ompi/1.3.2-pgi/lib/:${LD_LIBRARY_PATH}:/usr/local/lib64

set ESPDIR  = $PBS_O_WORKDIR/../../../..
set EPWDIR  = $ESPDIR/EPW

set PW      = "$MPIRUN  $ESPDIR/bin/pw.x -npool $NPOOL"
set PH      = "$MPIRUN  $ESPDIR/bin/ph.x -npool $NPOOL"
set PDIR    = $EPWDIR/examples/diamond/pp
set JDIR_   = $EPWDIR/examples/diamond/phonons
set QLIST   = ${JDIR_}/qlist.dat

set TDIR_   = ${JDIR_}/tmp
mkdir $TDIR_

set NQ      = `wc $QLIST`
set NQ      = `calc $NQ[1] - 1`

set IQ = 0
while ( $IQ < $NQ )

   set IQ = `calc $IQ + 1`
   set IL = `calc $IQ + 1`
   set LINE = `head -${IL} $QLIST | tail -1`
   set Q1 = $LINE[6]
   set Q2 = $LINE[7]
   set Q3 = $LINE[8]

   set JDIR = ${TDIR_}/q_${IQ}
   set TDIR = ${JDIR}/tmp

   mkdir $JDIR
   mkdir $TDIR
 
   cat ${JDIR_}/inp/nscf.in | sed -e "s/XQ1/$Q1/g"    \
                            | sed -e "s/XQ2/$Q2/g"    \
                            | sed -e "s/XQ3/$Q3/g"    \
                            > $TDIR/nscf.in
   cat ${JDIR_}/inp/ph.in   | sed -e "s/XQ1/$Q1/g"    \
                            | sed -e "s/XQ2/$Q2/g"    \
                            | sed -e "s/XQ3/$Q3/g"    \
                            > $TDIR/ph.in
   cd $TDIR
   cp $PDIR/* ./

   $PW < ${JDIR_}/inp/scf.in > $JDIR/scf.out
   $PW < nscf.in > $JDIR/nscf.out 
   $PH < ph.in   > $JDIR/ph.out 

   if ( $IQ < 10 ) then
     set LABEL = 0${IQ}
   else
     set LABEL = ${IQ}
   endif

   cp diam.dyn     ${JDIR_}/save/diam.dyn_q${LABEL}
   cp diam.dvscf01 ${JDIR_}/save/diam.dvscf_q${LABEL}
   cp $JDIR/ph.out ${JDIR_}/save/ph.out_q${LABEL}

   cd $JDIR_
   rm  $TDIR/*wf*
   rm  $TDIR/*bar*
   rm -r $JDIR

end 


exit