现实生活中经常存在这样的模型:物体在运动的同时,还包含着旋转。换句话说,即其在公转的同时还存在自转现象。例如运动的割草机,其整体在运动,同时其割草部件在告诉旋转。同样的例子还有很多,比如吸尘器、旋转飞行的足球等等。ANSYS FLUENT13.0之后的版本提供了嵌入式滑移网格模型,允许用户对这一现象进行模拟,从而可以替代动网格,因此在某种程度上保证了网格质量,也不会丧失太多的精度。
图1 几何描述
1、几何描述
本例几何描述如图1所示。本计算域为一个封闭系统,其中包含一个十字旋转区域(直径0.1m),其圆心偏离计算域中心区域在x及y方向上均为0.1m。旋转区域fluid-rotor顺时针旋转速度为2rad/s,旋转区域fluid-circle圆心位于计算域中心,其沿逆时针旋转速度为1rad/s。工作流体为液态水,其密度1000kg/m3,粘度0.001kg/m-s。
2、前期UDF准备
本例需要UDF计算fluid-rotor区域圆心坐标。我们这里利用DEFINE_ZONE_MOTION宏。
程序代码如下:
#include "udf.h"
#define PI 3.141592654
DEFINE_ZONE_MOTION(rotor,omega, axis, origin, velocity, time, dtime)
{
real theta0, thetap1, omegac, omegar, radr,ox1, oy1;
omegar = -2.0;
omegac = 1.0;
theta0 = PI/4.;
radr = 0.141435;
thetap1 = omegac*(time+dtime);
*omega = omegar;
ox1 = radr*cos(theta0+thetap1);
oy1 = radr*sin(theta0+thetap1);
origin[0] = ox1;
origin[1] = oy1;
origin[2] = 0.0;
}
程序解释:
1)omegar变量定义为fluid_rotor的旋转角速度,omegac定义为fluid_circle区域的旋转角速度。由右手定则确定旋转方向。
2)theta0为fluid_rotor的初始圆心位置与计算域圆心间的角度。Radr为fluid_rotor中心到计算域中心的距离。由于本例中fluid_rotor为旋转,因此该半径为定值。
3)thetap1为在当前时间步旋转的角度。*omega=omegar,此条语句的作用为将速度矢量赋值给omega以传入求解器。
4)ox1及oy1为计算的当前fluid_rotor圆心位置。并将其值赋值给origin数组。
3、fluent模型设置
导入msh文件,选择瞬态计算,利用standard k-e湍流模型,采用标准壁面函数。
选择材料为water-liquid,修改密度1000kg/m3,粘度0.001kg/m-s。
设置三区域介质为water-liquid。
4、加载UDF
本例udf可以采用解释型,也可以采用编译型。
【define】> 【user-defined…】>【functions】>【interpreted udfs】,弹出设置对话框,如图2所示。选择创建的udf源文件。点击interpret。
图2 解释udf
4、区域设置
Fluid-outer设置介质为water-liquid,其他保持默认。该区域为静止。
Fluid-circle设置如图3所示。
图3 circle区域设置
勾选mesh motion选项,注意relative to cell zone为absolute,设置旋转速度speed为1rad/s。注意此处选择absolute,表示fluid-circle的绝对旋转速度为1rad/s。
Fluid-rotor区域设置如图4所示。
图4 rotor区域设置
与circle区域设置类似,不过选择relative to cell zone为fluid-circle,表示该区域是相对于fluid-circle区域运动的。同时设置zone motion function为rotor。
5、边界条件设置
本例为封闭系统,为简便起见,壁面采用默认设置,即无滑移壁面边界。
本例需要建立两组interface,即fluid-rotor与fluid-circle之间,fluid-circle与fluid-outer之间。如图5所示。
图5 建立interface对
6、其他设置
Solution methods:压力耦合采用coupled方法。其他采用默认选项。
Solution controls:采用默认设置。
初始化:采用默认设置初始化即可。
动画设置:可以录制速度及压力等物理量云图动画。
时间步长:Δt= (0.0349066 rad) /(2 rad/sec) = 0.0174533 sec,我们假定每时间步旋转2°,即0.0249066rad,以最大速度2rad/s进行计算。时间步数取1800,即旋转10圈。如图6所示。
图6 计算设置
8、总结
1)这类公转+自转的问题,既可以使用动网格实现,也可以采用fluent中的嵌入式滑移网格实现。
2)此例中两区域均为旋转运动,对于滑移网格特点,平移运动也可以实现。
3)采用嵌入式滑移网格,避免了网格重构的网格质量损失。
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删