#这条代码运行后,会在每个张量元的应变计算后,把超算脚本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
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。