Fluidmach 发表于 2015-11-2 23:17

6DOF实例1:设置过程

对于被动型动网格计算问题,可以采用6DOF动网格模型解决。利用该模型时,需要确定计算模型中运动部件的质量、三方向转动惯量及惯性矩、重心坐标。因此在几何模型创建过程中,尽量使这些值容易获取(比如将重心位置放置在坐标原点),当然这不是必须的,在CAD建模软件中都包含了这些物理量的查询。

图 1 旋转体几何
如图1所示的几何体,在受到图中流动方向的流体作用下,若轴向旋转自由度未被约束,则会产生旋转位移。本次实例几何如图1所示。
在建立流体计算域之前,需要利用CAD软件获取几何的特征物理量,我们这里使用Solidworks实现此功能。
1、获取几何属性
利用solidworks载入几何体,进入【评估】>【质量属性】,选择几何体进行计算,如图2所示。

图 2 质量属性
在计算几何质量属性对话框中,可以点击【选项】按钮,设置材料参数,如图3所示。

图 3 几何参数
从图2可以看出,该几何体的重心(0,0,25.19),Z方向惯性矩IZZ=324047.793g*mm^2,由于我们的几何体约束了X,Y,Z三方向移动自由度,X,Y方向的旋转自由度,因此只需要Z方向的惯性矩。需要注意的是,这里的单位是mm,而UDF中必须全部为国际单位制,需要做单位转换。
2、计算域模型
在workbench中的DM中创建计算域模型。主要是利用DM中方便的布尔运算功能。建立的计算域如图4所示。

图 4 计算域模型
为计算域边界命名,分别命名内部区域面、入口面、出口面、圆柱面边界为:WallRotation、VelocityInlet、Outlet、wallCylinder。
计算域建立完毕后即进行网格的划分,这里不详细描述。
3、UDF宏的编写
利用文本编辑器编写UDF宏文件。如下:
#include "udf.h"
DEFINE_SDOF_PROPERTIES(rotate,prop,dt,time,dtime)
{
    prop = 845.154E-3;
    prop= 336179E-9;
    prop = 336179E-9;
    prop= 324047.793E-9;
    prop=TRUE;
    prop=TRUE;
    prop=TRUE;
    prop=TRUE;
    prop=TRUE;
    printf("\nstage: updated 6dof properties");   
}
4、进入FLUENT中设置
在FLUENT中主要包括动网格参数的设置。
其他设置:瞬态计算、标准K-E湍流模型、标准壁面函数、工作介质为water、入口5m/s,出口静压为0。
动网格设置:
(1)、激活sixDOF
如图5所示,进入Dynamic Mesh面板,激活Dynamic Mesh,勾选Remeshing选项及SixDOF项。

图 5
(2)、动网格参数设置
进入mesh methods下的settings按钮,进入动网格参数设置。图6、图7分别为smoothing与Remeshing的设置。

图6 smoothing面板

图7 remeshing面板
6DOF中的settings设置对话框如图8所示,这里我们不考虑重力影响,设置三方向重力加速度为0。同时勾选write motion history项,记录保存运动中几何姿态。

图 8 6DOF设置
(3)、编译加载UDF宏
利用菜单【Define】>【user defined】>【function】>【Complied】编译宏。

图 9 编译及加载宏文件
(4)、设置动网格区域
动网格设置面板中,点击【Create/Edit…】按钮定义动网格区域。需要设置的区域如图10所示的红色框选部分。

图10 运动区域设置
同时注意设置meshing Options标签页下的网格高度。

5、需要注意的问题
3D动网格问题,首先要注意的是负体积问题。前面说过,由于运动状态由受力状态控制,在计算之前是未知的,所有调整动网格参数比较困难。不过仔细耐心的修正还是可以解决的。
其次,关于这类被动运动问题,一些模型较为简单的几何体,实际上是可以化被动为主动,只是计算壁面受力,运动状态通过受力状态用UDF确定。比如此例,我们可以在计算过程中通过宏计算出每次迭代加载在重心上的力和力矩,然后通过力学公式确定几何体的运动状态。这样被动运动问题就变为人为定义运动状态的主动动网格问题。

这次几何有点复杂,计算时间比较长,不过主要用于演示6DOF模型的定义。下次使用简单的模型进行演示。
页: [1]
查看完整版本: 6DOF实例1:设置过程