OpenFOAM使用手册(中文翻译版)(2)

2019-03-23 14:54

}

在手册其他部分:

为清楚起见并节省空间,文件头,包括寬显线及FoamFile子目录,将会在引用实例文件时全部省去。

文件首先指定块顶点坐标,然后通过顶点标号和单元个数定义块(此处仅有一个),最后,它定义边界块。建议用户查阅5.3节了解blockMeshDict文件中输入项的含义。

在blockMeshDict文件上运行blockMesh生成网格。在这个实例目录中,做到这一点,只需在终端输入:

blockMesh

终端窗口产生blockMesh运行状态报告。任何blockMeshDict文件的错误都会被blockMesh挑出来,所产生的错误信息直接引导用户到文件中产生问题的所在行。在该阶段不应该有错误。

2.1.2 边界和初始条件

完成网格生成,用户可以看看为这个案例设置的初始场文件。案例设置开始时间t = 0 s,所以初始流场

数据被设置在cavity目录下面的名字为0的子文件夹里。文件夹0里包括两个文件,p和U。每个压力(p)和速度(U)的初始值和边界条件都必须设置。让我们来检验下文件p:

17 dimensions [0 2 -2 0 0 0 0]; 18

19 internalField uniform 0; 20

21 boundaryField 22 {

23 movingWall 24 {

25 type zeroGradient; 26 } 27

28 fixedWalls 29 {

30 type zeroGradient; 31 } 32

33 frontAndBack 34 {

35 type empty;

//空边界条件,说明求解是二维流动,这个在openFOAM是独有的,如果遇到该类边界,该边界不参与方程//离散,也就是什么都不做。

36 }

37 } 38

39// ************************************************************************* //

流场数据文件有3个主要的输入:

dimensions:指定流场尺度(单位的指数),这里的运动学压力,即m2s-2(0 2 -2 0 0 0 0 )(见第4.2.6节获取更多信息);

internalField:其内部文件数据可以是统一的,由单一值确定;不均匀时,流场所有值必须指定(详细信息见 4.2.8节 );

boundaryField:边界的流场数据,包括边界条件和及所有边界块的数据(详细信息见4.2.8节)。

对于这个腔体例子,边界仅由壁面组成,分为两种边界:(1)fixedWall:固定墙包括侧墙和低墙(2) movingWall :移动墙的顶盖。作为壁面,两者的P文件都是 zeroGradient边界条件,即“压力垂直梯度为零”。frontAndBack代表二维情况下的前后两个块,因此必须设置为empty。 该实例中,正如大多数我们遇到的情况一样,初始场被设置为是均匀的。在这里,压

力是运动学上的压力,作为一种不可压缩的情况,其绝对值是不相关,因此为方便起见设置为uniform 0。(为什么跟绝对值不相关?)

用户可用同样的方式检测0 / U文件中的速度场。dimensions为对速度所期望的因次,内部流场初始化为uniform zero ,在这个例子里速度场必须由由3个矢量表示,即均匀的(0 0 0)见第4.2.5节获取更多信息)。

对frontAndBack块,速度边界流场要求相同的边界条件。其他方向都是墙:固定墙需要假定无滑移条件,因此fixedValue 条件其值为统一(0 0 0)。顶面以1米每秒的速度沿x方向移动,因此也需要fixedValue条件,但为统一(1 0 0)值。

2.1.1.3物理特性

实例的物理属性存储在后缀为.....Properties的文件里,放在Dictionaries目录树。对于这个icoFoam例子,唯一必须指定的运动粘度是存储在transportProperties目录中。用户可以检查运动粘度是否正确设置,通过打开transportProperties目录来查看或编辑的入口。运动粘度的关键字是nu,在方程中用同音的希腊字母ν代表。最初,例子运行时雷诺数为10,其中雷诺数

定义为:

式中,d和1U1分别为特征长度和特征速度,ν为运动粘度。此处d=0.1m,1U1=1m/s,所以Re=10时,ν=0.01m2 s?1 。因此正确的动力粘度文件入口指定为:

2.1.1.4 control

与时间控制、解数据的读取与存储相关的输入数据都是从controlDict目录读入的。读者应看看这个文件;作为实例控制文件,他放在system目录中。

运行的开始/结束时刻及时间步长必须设置。 4.3节详细介绍了OpenFOAM提供的度够灵活的时间控制。在这个教程我们设置开始运行时刻从t=0开始,这意味着of需要从文件夹0读取流场数据,更多案例文件结构信息见4.1小节。因此我们设置startFrom关键词为startTime 并指定关键词startTime 为0。

对于结束时间,我们希望获得流动绕空腔循环(即稳定)时的稳态解。一般而言,层流中,流体通过该区域10次才能达到稳态。在这个例子里,流动没有通过该区域,因为这里没有进口也没有出口。取而代之,设盖子穿过腔体10次为结束时间,即1s;事实上,事后发现0.5s就足够了,因此应采用该值。指定stopAt关键词为endTime,并赋值0.5

现在我们需要设置时间步长,由关键词 deltaT 代表。运行icoFoam时为达到瞬时精确及数值稳定,要求Courant 数小于1。对于一个单元Courant 数定义如下:

δ t是时

间步长,|U|是通过单元的速度大小,δ x是该速度方向上的单元尺寸。流速在穿过区域时是变化的,必须确保任何地方的Co<1。因此我们以最糟的状况选择δ t的取值:Co的最大值必须与大尺度流速和小的单元尺度联合的效果相一致。这里,这个整个区域的单元尺寸固定,所以Co的最大值发生在紧挨着盖子的地方,这里速度接近1米每秒。单元尺寸为:

因此为了达到全部区域内Co<=1,时间步长deltaT 的设置必须小于等于:

作为模拟进程,我们希望能写下每隔一段时间的结果,这样我们就能在后处理包里查看结果。关键词writeControl表示设置输出结果时刻的一些可选项。这里我们选择timeStep 选项:每隔n次时间步长输出一次结果,n值由关键词writeInterval指定。假设我们要设置在时刻0.1, 0.2,. . . , 0.5 s输出结果,时间步长是0.005s,因此是每20次步长输出一次结果,故给writeInterval赋值20。

Of会根据当前时间创建一个新的目录,例如0.1s,在每个时刻输出一系列的数据,在4.1章节有具体介绍。在icoFoam求解器输出的每个流场信息U 和 p放在时间目录里。对于这个例子,在controlDict中的输入如下:

2.1.1.5 离散和线性求解器设置

用户可以在system目录下 fvSchemes文件中指定选择有限体积离散法。用户线性方程求解器规范、限差和其他算法控制。用户可以自由的查看这些库类,但是在它们的入口函数中我们目前只需要fvSolution中PISO 目录下的pRefCell 和pRefValue。在封闭系统如腔体内,用的是相对压力:是压力范围而不是绝对值。在这种情况下,求解器在pRefCell 单元中通过pRefValue 设置一个相对值,在该实例中都设为0。改变其中任何一个的值都会改变绝对压力场只改变绝对压力场,而不会改变相对压力场或速度场。

2.1.2查看网格

在实例运行前,最好查看一下网格以检查是否有错。网格在OpenFOAM 提供的后处理工具paraFoam中查看,通过在终端在案例目录下

(ying@ying-desktop:~$ cd /home/ying/RUN/tutorials/incompressible/icoFoam/cavity回车)输入: paraFoam 来启动paraFoam后处理。

也可以通过另一个目录位置执行:

paraFoam -case $FOAM RUN/tutorials/incompressible/icoFoam/cavity

从而打开了ParaView窗口如图6.1所示。在Pipeline Browser,用户可以看到ParaView已经打开了cavity案例模块:cavity.OpenFOAM 。在点击Apply按钮前, 用户需要从Region Status 和面板上选择一些几何结构。因为该案例很小, 通过检查Region Status 面板标题相邻的box可以很容易地选择所有的数据,这可以

自动检查各个面板中的所有独立部件。然后用户可以点击Apply按钮将几何结构加载到ParaView中。6.1.5.1节中介绍了一些常用设置,请查阅该章节中的相关设置。

之后用户应该打开Display面板,其控制着所选模块的可视化重现。在Display面板中,用户应该做如下工作,如图2.3所示:(1)设置Color为Solid Color ;(2)点击Set Solid Color 选择适当的颜色,如黑色(对于白色背景);(3)在Style面板,从Representation 菜单选择Wireframe 。背景颜色可以在顶部菜单面板的Edit中选择View Settings... 来设置。

尤其是第一次启动ParaView,必须如6.1.5节描述的一样操作。特殊的,由于这是一个2D的情况,要求在Edit菜单中选择View Settings窗口,在General 面板必须选择Use Parallel Projection 。在Annotation 窗口Orientation Axes可以勾选或不宣,或通过鼠标拖曳来移动。

2.1.3 运行应用程序

正如一切UNIX/Linux可执行软件,OpenFOAM应用程序可以按以下两种方式


OpenFOAM使用手册(中文翻译版)(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:团队管理的一些经验

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: