OpenFOAM求解算例过程

更新时间:2024-05-26 02:27:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

2、 求解实例的步骤:

1) 导入网格。将Fluent中生成的网格文件.msh导入到OpenFoam中需要执行fluentMeshToFoam命令。通过该命令导入的网格由于软件转换的不足,需要使用者在执行前检查导入网格的边界条件是否正确,只有在网格边界条件正确的情况下才能执行计算命令。 2) 检查网格。命令为checkMesh 3) 设置相应的物性参数,如在case1/constant/transportProperties路径下设定运动粘度(nu)。 4) 设定初始条件,如在case1/0/p路径下设定初始状态下的压力场。

5) 对计算时间和输入/输出数据的控制。如在case1/system/controlDict路径下设定相应的起始/终止时间,一定的时间步,输出的格式或精度,输出的时间间隔等。

6) 设定各个求解量的离散格式,如在case1/system/fvSchemes路径下设定时间的离散格式为欧拉格式,即:ddtSchemes {default Euler}。

7) 设定求解器,求解方法,以及松弛因子等,如在case1/system/fvSolution路径下设定求解方法为PISO方法。

8) 执行求解命令,如icoFaom –case case1。

9) 导出数据。如果导出网格数据用foamMeshToFluent命令,如果导出计算结果数据用foamDataToFluent命令。

10) 用Fluent等软件查看计算结果。 3、并行求解实例

1)在需要并行求解的例子目录下面创建decomposeParDict文件,对其中包含的内容进行设置。

注:在decomposeParDict文件中包含的内容有:需要的并行处理器的个数;分割数据的方法,包括simple(按照xyz的顺序,对各个方向的分块数进行设定),hierarchical(对各个方向的分块数进行设定,各方向的顺序可以更改),metis(按照各个处理器需要分配的比重进行分配),manual(手动进行人工分配,需包含分配的文件);分散后的数据是否需要分配在不同的磁盘,如果需要则应该写明分配磁盘的路径。 2)执行分散命令,如decomposePar –case case1

3)执行并行运算命令,其格式为:mpirun --hostfile -np -parallel > log &

4)对计算后的结果进行重组,如reconstructPar –case case1

4、controDict文件中各个选项包含的内容: controlDict firstTime startFrom (控制计算startTime 的开始时间) latestTime stopAt (控制计算结endTime 束的时间) 所有时间目录中最早的时间步 Time control startFrom startTime连用表示计算开始 所有时间目录中最近的时间步 stopAt endTime连用表示就算的结束时 writeNow noWriteNow nextWrite 当前时间步完成时结束计算并且写数 当前时间步完成时结束计算但不写数 按计划的下一个时间步完成时结束计 deltaT 计算的时间步 timeStep runTime 每个写的时间间隔(writeInterval)需 每个写的时间间隔(writeInterval)需 adjustableRunTime writeControl (控制输出 文件的时间) cpuTime clockTime writeInterval purgeWrite 用在时间步是自动调节的情况下的每间隔(writeInterval)需要的时间 每个写的时间间隔(writeInterval)需要时间 每个写的时间间隔(writeInterval)需间 Data writing 和writeControl连用标量,表示写的间隔 用整数来表示对时间目录数量进行限制 十进制形式 二进制形式 ascii writeFormat (输出数据 的格式) binary writePrecision 与writeFormat连用,用整数表示输出的精度 输出的数据不进行压缩 输出的数据进行压缩 ±m.dddddd uncompressed writeCompression (定义数据 文件的是否压缩) compressed timeFormat (选择时间fixed 目录的名字的格式)

scientific general

±m.dddddd±xx

指数在-4~4之间用fixed格式,之外

timePrecision 与timeFormat连用,用整数表示时间的精度 raw

原ASCII格式列

数据采用gunplot格式

数据采用Grace/xmgr格式

数据采用jPlot格式

gnuplot

graphFormat (采用一种 软件输出图形数据)

xmgr

jplot

yes

runTimeModifiable (OpenFoam是 否是在每个时间步的开始读入各个目录) no libs functions

Dat reading

OpenFoam在每个时间步的开始读入各

OpenFoam不是在每个时间步的开始录

Run-time loadable functionality

增加的库的列表在运行时间开始下载

函数的列表在运行时间开始下载

5、fvShemes中包含的内容: fvSchemes linear Centred schemes cubicCorrection midPiont upwind interpolationSchemes (值的点对点的Upwinded convection schemes 差值) linearUpwind skewLinear QUICK limitedLinear TVD schemes vanLeer MUSCL limitedCubic NVD shemes corrected uncorrected snGradSchemes (网格法向梯度limited∮ 项的离散格式) bounded fourth Gauss gradSchemes (梯度的离散格leastSquares 式) fourth limited Gauss corrected Gauss uncorrected laplacianSchemes (拉普拉斯算子Gauss 的离散格式) SFCD Gamma∮ 式) Gauss linearUpwind Gauss QUICK Gauss TVD schemes Gauss SFCD Gauss NVD schemes

本文来源:https://www.bwwdw.com/article/nt87.html

Top