OpenFOAM 所需的基本 PBS 脚本

写一个脚本文件,存在你所要运行的 case 文件夹,假设该文件名为 A.job

#!/bin/bash -l

#PBS -l nodes=1:ppn=6,walltime=720:00:00 

. $HOME/foam/foam-extend-3.1/etc/bashrc

cd $PBS_O_WORKDIR

mpirun -np 6 icoFoam  -parallel > ./log

说明:

  • #!/bin/bash -l 表示 bash 环境
  • #PBS -l nodes=1:ppn=6,walltime=720:00:00 这一行是 PBS 基本设置,也是必须有的,nodes 后面跟节点数,ppn 后面跟每个节点进程数,总进程数为 nodes X ppn,walltime 指的是申请的计算时间,hour:min:sec,
  • . $HOME/foam/foam-extend-3.1/etc/bashrc 执行 foam 的环境变量设置,必须有,因为 pbs 是在后台运行,可以根据你的版本来定
  • cd $PBS_O_WORKDIR 切换到命令提交当时所在的工作目录,也可以换成别的目录
  • mpirun -np 6 icoFoam -parallel > ./log openfoam 并行运算命令,mpirun 并行运算命令,-np 后面跟进程数,icoFoam 是 foam 的计算命令,-parallel 指并行计算(如果只有 mpirun 是不能进行并行计算的),> ./log 是输出到本目录的 log 文件

在 case 所在的目录,提交排队计算

qsub A.job
1 Like

文件的拓展名应该是.sh吧。

这个随便定,没有规定,自己可以区分就行。提交的时候写全名。

linux下文件没有后缀(或者说linux不关心后缀)