qsub批量提交计算任务

  #这条代码运行后,会在每个张量元的应变计算后,把超算脚本sub_vasp复制到下一文件夹,继续张量元的计算
  #!/bin/bash
  root_path=`pwd`
  #记录当前文件夹位置并定义到变量 path中,称为初始目录
  for cij in `ls -F | grep /$`
  #ls -F| grep /$ 命令为返回当前文件夹中所有子目录
  #将所有子目录添加到变量cij中,并准备进行for循环
  do
  cd ${root_path}/$cij
  for s in strain_*
  #将cij代表的子目录中所有strain文件夹添加到变量s中
  do
  cd ${root_path}/$cij/$s
  echo `pwd`
      cp ../../sub_vasp ./
  #   cp CONTCAR POSCAR
      qsub sub_vasp
  # 上面两行vasp.job 替换为 超算运算的脚本文件名
  # Add here your vasp_submit_job_script     把这一行替换为提交运算的命令
  done
  done

或者如下:

for i in C11 C11_C12_C22 C11_C13_C33  C22  C22_C23_C13 C33 C44 C55 C66  
#i为由独立弹性常数所命名的上级文件夹名称
do 
cd $i
for k in strain_0.000  strain_-0.005  strain_+0.005  strain_-0.010  strain_+0.010  strain_-0.015  strain_+0.015
#k 为单独应变命名的文件的名称,可根据需要灵活改写
do
cd $k
mpirun -np 24 vasp|tee runlog
#vasp的执行命令,请根据实际计算环境和需要进行改写
cd ..
echo $i-$k
echo $i-$k
done
cd  ..
done

转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。