[案例分析]Fluent中动网格负体积成因分析与解决办法——以圆柱俯仰震荡为例

有不少同学在使用Fluent中的动网格功能时,在网格变形过程中遇到了负体积的问题,这里以一个二维圆柱振荡的例子来解释负体积原因,并给出解决的办法。

1、实例介绍

一个直径为D=0.5m的二维圆柱实现上下振荡,振荡的运动规律下式所示

[案例分析]Fluent中动网格负体积成因分析与解决办法——以圆柱俯仰震荡为例的图1[案例分析]Fluent中动网格负体积成因分析与解决办法——以圆柱俯仰震荡为例的图2[案例分析]Fluent中动网格负体积成因分析与解决办法——以圆柱俯仰震荡为例的图3

其中振荡的幅值为0.5D,f为振荡频率,f=5Hz

首先建立网格,之后我们使用Fluent中的动网格功能来实现这一实例。

2、 网格生成

为了方便显示网格变形过程中的负体积情况,这里建立一个很粗糙的网格(如图 1所示),第一层网格高度比较大,这样比较方便看到变形中的负体积情况,当然,本文的目的就是如此,请各位搞学术的同学要认真处理自己的模型。

图1 建立的圆柱网格

3、编写运动程序

这个振荡的程序很简单,用UDF来控制运动的速度即可,编写的程序如图 2所示。

图2 控制程序

4、动网格及动区域设置

这里使用Fluent19.2版本进行演示,由于老版本在动网格部分的设置有所改变,因此以下将简单那介绍Fluent 15.0版本的操作过程。

由于我们的主要目的是看负体积的过程及原因,这里已经complied好了UDF,并将中间的圆柱设置为rigidbody来实现上下的振荡。

动网格Dynamic mesh methods我们先试用Smoothing中的弹簧光顺Spring来进行,这在Fluent中算是一类很经典的很常用的方法啦。动网格的默认设置如图 3所示,默认的,不进行改变,注意这里面的Elements中有三个选项,默认是“All”,意味着弹簧变形对于所有类型的网格单元(二维:三角形、四边形;三维:四面体、六面体)都打开了,当然,你也可以改变。

图3 动网格设置

动区域设置如图 4所示,wall即为中间的这个圆柱,然后这个centerof gravity location指重心位置,一般在旋转运动中会使用到,这里我们不动它。剩下的Mesh options和Solver options我们都不动它们,下面初始化之后,直接进行动网格预览,预览前记得保存case,不然报错了可就不能动啦。

图4 动区域设置

5、预览动网格运动

频率f=5Hz,周期就是T=0.2s,我们给一个时间步长为T/100,来看看动网格更新的过程。嗯,出现了负体积了。出现了负体积了之后,这个软件里面的时间就变成了预览之后的真实时间,必须从新导入之前保存的case data才能重新进行尝试。

6、负体积的成因

由上面的视频可以发现,在圆柱运动的过程中,圆柱上方的网格被挤压的越来越厉害,当圆柱挤压的程度导致某一些网格线相互重叠交叉,负体积就会出现了,通俗点说就是网格变形的速度跟不上部件移动的速度,导致网格塌陷出现负体积。如图 5所示,变形后的网格滋到了旁边的网格里面去了(随手一画的)。

图5 网格变形出现负体积示意

此外,如果网格质量不好,也就是说,本来他质量不怎么好,网格就存在缺陷,存在相互交叉的可能,然后一变形,马上就坏掉了,因此,网格质量也是一个负体积的原因,要尤其关注生成一套质量高的网格。

7、解决办法

1)       首先找到负体积的位置

找到负体积出现在哪里,找到病灶,才能治病。有些模型比较简单,肉眼可见的地方去放大,比如我们这个模型,肯定是在圆柱边界上方。图 6为圆柱上方的负体积位置,白色的壁面和绿色的网格先出现了重叠,导致了负体积。

图6 圆柱上方的负体积位置

对于复杂模型,肉眼不可见就需要通过软件来标记(mark)负体积的位置,这样操作:19.2的版本中,GUI找到这样的设置:Setting updomain>Adapt>Mark/Adapt cells>Iso value adaption,打开如下窗口,在Iso-values of中找到Mesh,下面选择Cell Volume,然后点Compute,看看当前的网格体积都是什么范围,这里显示的是一个负数到正数的范围,说明有负体积的网格,然后在Iso–Min中输入负体积最小值,Iso-Max输入0,点击Mark就可以标记负体积的网格了。

图7

然后在Adapt的窗口下面选择ManageAdaption Registers,出来的窗口中选择刚刚的Isovalue0点击Display就出来了。当然,如果再看不清楚,那就点击右下角的Options把你需要的网格也Draw出来。图 9为被标记的负体积网格单元。

图8

图9 标记的负体积单元

2)       网格变形方法导致的负体积

特别是在老版本中,这个问题比较常见,不合适的网格变形方法会导致负体积的出现,如在15.0版本中,默认的Spring弹簧光顺是不支持我们图中的四边形网格的,需要通过特别的TUI命令打开,但是在这个19.2版本中又支持了,但是能,可以看到,我们这个变形效果并不是很好。

针对这种问题。可以尝试使用较大的弹簧光顺因子或者换用另外两种光顺方法,比如,这里我们使用对较大变形效果比较好的扩散光顺。扩散光顺因子在这个高版本中的范围是[0,3],不再是之前在老版本中的[0,2]了,哈哈,各位同学自己试一下哟。对于较大的变形,使用较大的光顺因子来光顺。比如我们这里使用2(如图 10),来看看新的效果。嗯,很棒。

图10 扩散光顺设置

扩散光顺网格变形,凑合看一下啦

当然,第三个线弹性光顺也可以使用,具体的区别请参考流沙老师的博客

3)       部件运动速度过快导致的负体积

这个问题请思考上面的负体积成因就可以理解了,如果部件在一个时间步长内运动速度过快,那就超过了网格扩散的速度,也有可能导致负体积,这种情况下,需要把时间步长调小,特别是对于网格尺寸越来越小的时候,要尤其注意这个情况。

 

4)       网格质量导致的负体积

这个的话,请好好调整网格质量吧,可以利用Fluent中的mesh>repairimprovement>repair的TUI命令来进行改善,也可利用他自己的Improve来改善网格质量。

本文转自梨梨梨梨不开博客,感谢原作者。如有侵权请立即联系删除。

Ansys.Fluent动网格负体积俯仰运动

[案例分析]Fluent中动网格负体积成因分析与解决办法——以圆柱俯仰震荡为例的评论1条

[案例分析]Fluent中动网格负体积成因分析与解决办法——以圆柱俯仰震荡为例的相关案例教程

射流雾化ANSYS CFD仿真应用 01 ANSYS CFD 雾化仿真应用 单个液滴破碎过程CFD仿真(袋破裂模式) ∆ HP喷嘴喷雾的仿真与测量结果对比 德尔福·汽车系统工程师使用ANSYS Fluent准确描述喷嘴流动力学和破碎过程特征。通过ANSYS CFD仿真让工程师能够更好的理解喷嘴内部几何参数相互复杂作用,实现从参数化优化过程到基于知识优化过程的过渡,实现开发出更好的产品目标。 应用场
本教程的目的是准确地模拟在300千瓦BERL燃烧室的燃烧过程。这类问题可以通过物质输运模型或非预混燃烧模型来模拟。在本教程中,将使用非预混燃烧模型来建立和解决天然气燃烧问题。 1 启动FLUENT并导入网格 (1)在Windows系统下执行“开始”→“所有程序”→ANSYS 19.1→Fluid Dynamics→FLUENT 19.1命令,启动FLUENT 19.1。 (2)在FLUENT La
1.Q:Fluent Meshing划分体网格时出现重叠节点错误 问题描述:面网格调整好后,划分体网格出现这种错误,如图所示: A:尝试合并这些节点。菜单栏boundary->merge boundary或者输入命令/boundary/merge-duplicates 。 2. Q:Fluent Meshing如何提高poly网格质量? 问题描述:在画网格的过程中,遇到这样的问题,skewness
1. 网格自适应技术概述 Fluent中的网格自适应技术可以允许我们根据数据计算结果来修改网格梳密布置或网格走向。 1.1 优点 运用自适应法完善网格,在网格中如果你需要可以增加网格单元,这样使你更精确地计算流场的特性。当你正确地用了网格自适应方法,那得到的网格对流体计算是最优的,因为这方法能确定哪里加入了有更多网格单元。 1.2 使用准则 表面网格必须足够的好来为表征一些重要的几何特征。 初始网
很多同学要研究的问题涉及到相变,如蒸发冷凝问题。对于冷凝,当温度低于当前蒸汽压力对应的饱和温度时就会发生凝结。对于蒸发,蒸发可以在任何温度下进行。Fluent自带有蒸发冷凝模型,确切点说,Fluent自带的相变模型更适用于沸腾和冷凝,其饱和温度是一个定值,当然可以通过UDF使饱和温度改变来模拟蒸发问题。 本例用一个简单的例子来简要描述Fluent蒸发冷凝模型的使用方法。 1 模型描述 本例的模型较
博士/设计工程师
影响力
粉丝
内容
获赞
收藏
    项目客服
    培训客服
    1 5