记录软件使用过程命令。。。。。。
目录
Linux命令记录
-
安装paraview
sudo apt install paraview # 安装
sudo apt-get remove paraview # 卸载
-
创建RUN目录
终端输入“run”即可快捷进入run目录:
mkdir -p $FOAM_RUN
-
解压文件
tar 命令:
-z : 使用 gzip 来压缩和解压文件
-v : --verbose 详细的列出处理的文件
-f : --file=ARCHIVE 使用档案文件或设备,这个选项通常是必选的
-c : --create 创建一个新的归档(压缩包)
-x : 从压缩包中解出文件
通常使用:
tar -xvf filename
OpenFOAM计算命令:
-
并行计算命令Parallelisation :
OpenFOAM使用了一种称为域分解的方法,其中mesh的子部分和变量运行在独立的cpu(处理器、核心、线程、……)上,通过MPI进行通信。为了能够并行运行,域需要首先将其分割成连接的块(每个处理器一个)。这是使用解压Par完成的,它在“system/decomposeParDict”的设置:
numberOfSubdomains 8;
//method scotch;
method hierarchical;
hierarchicalCoeffs
{
n ( 2 2 2 );
delta 0.001;
order xyz;
}
manualCoeffs
{
dataFile "";
}
//distributed no;
//roots ( );
// ************************************************************************* //
在这里,我们用一个被称为“hierarchical”的算法分解为8个子域。hierarchicalCoeffffs{. . . } 称为子字典。这里的配置是:
将几何形状分成8个部分,x方向2,y方向2,z方向2,首先分割x,y,最后z方向,允许单元分布的最大相对公差为0.001。其他的方法和参数也被注释掉了。将子域的计数调整为可用cpu核的数量,相应地更改n并运行模拟,例如4x并行,如下:
$ decomposePar
$ mpirun -np 4 simpleFoam > log.parallel &
$ foamLog log.parallel
$ wmUnset
$ gnuplot
gnuplot> plot ’UzFinalRes_0’ with lines
在模拟结束时运行foamLog来更新x-y文件。使用wmUnset gnuplot命令来绘制残差曲线。
通过并行运行可以获得多少速度在很大程度上取决于网格的大小。如果每个cpu核心低于20 000个单元,子域之间的通信开销通常会通过更高的核心计数而消耗性能提高。YMMV,所以试着通过做基准测试来找到你的系统的局限性。注意:由于舍入错误,OpenFOAM的并行运行将产生与串行运行略有不同的结果。
-
并行计算后处理
对于并行运行,在Paraview中的后处理需要将案例类型设置为“Decomposed Case”。另一种方法,有时更合适,是重建已被分割成处理器目录的字段,并将它们转换为由Paraview有效读取的本地VTK格式。VTK目录中的VTK文件可以直接在副视图中打开。试一试:
$ reconstructPar
$ foamToVTK
-
后处理使用函数:
可使用“postPreocess”命令,-help 查询详细介绍,例如计算涡量:
$ postProcess -func vorticity
-
OpenFOAM 残差结果可视化
OpenFOAM不自带残差绘制命令,借助Gnuplot。以cavity算例输出的log.icoFOAM日志文件为例。新建文件,命名为Residuals(文件名任意),键入如下内容。
set title "Residuals"
set ylabel 'Residual'
set xlabel 'Iteration'
set logscale y //y轴设置为对数坐标
plot "<cat log.icoFoam | grep 'Solving for Ux' |cut -d' ' -f9 |tr -d ','"title 'Ux' with lines,\
"<cat log.icoFoam | grep 'Solving for Uy' |cut -d' ' -f9 |tr -d ','"title 'Uy' with lines
pause 1 //暂停时间,s,防止连续读取而增加CPU负载
reread //重复读取数据,否则不会更新
新建terminal窗口,使用gnuplot画残差曲线。新建窗口可方便关掉不影响openfoam运行。在算例目录下执行:
gnuplot Residuals.txt