PageRenderTime 39ms CodeModel.GetById 12ms RepoModel.GetById 1ms app.codeStats 0ms

/GabeditSrc240/utils/Gaussian/PBS/submitGaussian

#
Korn Shell | 84 lines | 73 code | 2 blank | 9 comment | 2 complexity | 64d6f87f134c7b0953cc64e258287b4d MD5 | raw file
  1. #!/bin/ksh
  2. ###################################################################
  3. # #
  4. # Script ksh pour lancer un calcul Gaussian en batch #
  5. # Auteur: A-R Allouche allouche@lasim.univ-lyon1.fr #
  6. # LASIM, Villeurbanne #
  7. # Ecriture : September 2004 #
  8. # #
  9. ###################################################################
  10. jobtime=$1 ; [ 0 = $# ] || shift
  11. filename=$1 ; [ 0 = $# ] || shift
  12. if [ -z "$filename" ] || [ -z "$jobtime" ]
  13. then
  14. clear
  15. echo " "
  16. echo "==========================================="
  17. echo " submitGaussian "
  18. echo " Pour toutes questions contacter : "
  19. echo " A.R. Allouche allouche@lasim.univ-lyon1.fr"
  20. echo "==========================================="
  21. echo "vous devez fournir :"
  22. echo " - le temps de calcul( hh:mm:ss)"
  23. echo " - le nom du fichier(y compris l'extension .com)"
  24. echo "-------------------------------------------"
  25. echo "Exemple:"
  26. echo " submitGaussian 2:00:00 h2.com "
  27. echo " fichier de donnees : h2.com"
  28. echo " Temps de calcul(maximum) : 2 heurs"
  29. echo "==========================================="
  30. echo " "
  31. exit 1
  32. fi
  33. filecom=$filename
  34. filename=${filecom%.com}
  35. DEFAULTDIR=`pwd`
  36. g98root=/data/logiciels/Gaussian
  37. if test ! -s "$filecom"
  38. then
  39. echo " "
  40. echo "============================================"
  41. echo "le fichier $filecom est introuvable(ou vide)"
  42. echo "============================================"
  43. echo " "
  44. exit 2
  45. fi
  46. endof=EOF
  47. cat > $filename.pbs <<EOF
  48. #!/bin/sh
  49. #PBS -j oe
  50. #PBS -N $filename
  51. #PBS -l walltime=$jobtime
  52. #PBS -o $filename.pbsout
  53. g98root=/data/logiciels/Gaussian
  54. export g98root
  55. PGI=/data/logiciels/PGI
  56. export PGI
  57. mkdir /tmp/$LOGNAME
  58. mkdir /tmp/$LOGNAME/$filename
  59. GAUSS_SCRDIR=/tmp/$LOGNAME/$filename
  60. export GAUSS_SCRDIR
  61. . /data/logiciels/Gaussian/g98/bsd/g98.profile
  62. cd $DEFAULTDIR
  63. /data/logiciels/Gaussian/g98/g98 "$DEFAULTDIR/$filecom"
  64. EOF
  65. qsub $filename.pbs
  66. echo " "
  67. echo "==================================================================="
  68. echo " "
  69. echo "Un fichier $filename.pbs a ete cree pour lancer le calcul"
  70. echo "Ne pas effacer ce fichier avant la fin du calcul"
  71. echo " "
  72. echo "-------------------------------------------------------------------"
  73. echo " "
  74. echo "pour avoir des informations sur vos job taper : qstat "
  75. echo " "
  76. echo "pour detruire un job taper : qdel num.master0.alin"
  77. echo " num.master0.alin est le Job Id fourni par qstat"
  78. echo " "
  79. echo "==================================================================="
  80. echo " "