当前位置:文档之家› Fluent 动网格实例具体操作步骤(完整资料).doc

Fluent 动网格实例具体操作步骤(完整资料).doc

Fluent 动网格实例具体操作步骤(完整资料).doc
Fluent 动网格实例具体操作步骤(完整资料).doc

【最新整理,下载后即可编辑】

Fluent 动网格实例具体操作步骤

目录

实例:Profile定义运动 (3)

I、................................................................................................... 参数说明

3

II、 ................................................................................................. 操作步骤4

一、将计算域离散为网格 (4)

二、Fluent操作步骤 (5)

1. 启动Fluent 14.5求解器 (5)

2. 初始设置 (6)

3. 选择湍流模型 (7)

4. 设置流体物性 (8)

5. 设置边界条件 (9)

6. 动网格设置 (11)

7. 设置其它选项 (16)

Fluent 动网格实例具体操作步骤

在Fluent中,动网格模型可以用来模拟由于流域边界运动引起流域形状随时间变化的流动情况,动网格在求解过程中计算网格要重构,例如汽车发动机中的气缸运动、阀门的开启与关闭、机翼的运动、飞机投弹等等。

CFD中的动网格大体分为两类:(1)显式规定的网格节点速度。配合瞬态时间,即可很方便的得出位移。当然一些求解器(如FLUENT)也支持稳态动网格,这时候可以直接指定节点位移。(2)网格节点速度是通过求解得到的。如6DOF模型基本上都属于此类。用户将力换算成加速度,然后将其积分成速度。

在Fluent中,动网格涉及的内容包括:

(1)运动的定义。主要是PROFILE文件与UDF中的动网格宏。

(2)网格更新。FLUENT中关于网格更新方法有三种:网格光顺、动态层、网格重构。需要详细了解这些网格更新方法的运作机理,每个参数所代表的具体含义及设置方法,每种方法的适用范围。

动网格的最在挑战来自于网格更新后的质量,避免负体积是动网格调试的主要目标。在避免负网格的同时,努力提高运动更新后的网格质量。

拉格朗日网格(固体有限元计算)

网格

欧拉网格(流体计算)

实例:Profile定义运动

I、参数说明

本次实例采用的场景来自于流体中高速飞行的物体。如子弹、火箭、导弹等。这里只是为了说明profile在动网格运动定义中的应用,因此为了计算方便不考虑高速问题。问题描述如下图所示:

图1 (1为运动刚体,2为计算域)

图2

计算说明:由于不考虑也没办法考虑刚体的变形,因此在构

建面域的时候,将1中的部分通过布尔运算去除。计算域总长度300mm,其中固体运动最大位移为:

300-40-30-6mm=224mm。

为了防止固体边界与计算域边界发生重叠,我们使运动最大距离为200mm。运动速度v=0.4t,这样可能计算运动完200mm

需要的时间为1s。采取5个时间数据点分别为:0,0.25,0.5,0.75,1s,相对应的速度为:0,0.1,0.2,0.3,0.4 m/s。

profile文件如下:

((moveVelocity transient 5 0)

(time 0 0.25 0.5 0.75 1)

(v_x 0 0.1 0.2 0.3 0.4))

解释:在记事本中按下列格式编写,保存为.txt文本即可。其中,moveVelocity为profile文件名,transient表示瞬态,5为表示所取速度及时间变化点数,这里取5个点;time后所述为所取点的时刻值;x后所述为所取点的x坐标;v_x为所取点的x向速度;所取的五个点组成速度与时间的线性关系,如图2所示。

注意:虽然瞬态profile文件可以在一定程度上定义网格运动,然而其存在着一些缺陷。最主要的一些缺陷存在于以下一些方面:(1)PROFILE无法精确的定义连续的运动。其使用离散的

点值进行插值。如果想获得较为精确的运动定义,势必要定义很多点。

(2)一些情况下无法使用profile。比如稳态动网格。

在FLUENT中定义网格运动,更多的是采用UDF宏,此处不在详细叙述。详细实例可参阅FLUENT UDF手册p182-p188。II、操作步骤

一、将计算域离散为网格

在ICEM CFD中将计算域离散为网格,由于三角形网格非

常适合于2D动网格,因此本例使用三角形网格。若要使用四边形网格,则需要进行滑移面处理。详细的说明将留待以后网格更新的时候进行。同样的,也不进行边界层处理。

简化问题描述,设定四周为wall壁面,中间区域为rigid wall(如图3所示),在动网格中进行设定。全局网格尺寸为2mm,运动边界网格尺寸1mm,

图3 parts 设置

网格单元总数为:19698

节点总数:9845

二、Fluent操作步骤

1.启动Fluent 14.5求解器

双击桌面上的Fluent图标,打开启动对话框,如图4所示,

选择选择2D求解器,勾选双精度选项,点击Fluent 14.5。

图4

2.初始设置

找到并选择网格msh文件,完成将网格文件输入Fluent的操作。检查并修改单位,点击General面板中的Scale确保使用的单位为mm,如下图所示。点击Check检查网格质量,Minimum Volume应大于0。

图5

设置求解器,由于在动网格的应用中,稳态情况比较少见,

下图所示。

图6

3.选择湍流模型

选择k-e湍流模型,如下图所示。

4. 设置流体物性

选择

1) 在Name 栏内输入water 。

2) 在属性栏内输入流体的物理属性如下:

密度 1000 kg /m 3

动力黏度 0.01 kg /(m ?s )

等压比热 4182 J /(kg ?m ^3)

导热系数 0.6 W /(m ?k )

3) 点击4) 点击No;此项操作将使名为water 的流体添加到材料选择列表中,可以在材料列表内查看到,同时保留系统默认的流体air 。

5)点击

图8

5.设置边界条件

设置工作流体为水,即设定Cell Zone Condition将默认域介质设定为water,具体操作如下。

1)在Zone栏内选择Edit,即编辑默认域设定,打开Fluid设

置对话框,如下图所示。

2)在Materials Name下拉列表中选择water。

3)点击

图9

由于本例使用全封闭计算域,所有边界类型为wall,所以Boundary Condition采用默认设置即可。将编辑好的轮廓文件(profile)导入到Fluent中,具体操作如下。

1)单击选择Boundary Condition面板中的

Profile设置对话框,如下图所示。

2)点击,在文件类型中选择All Files,选择profile 文

text的形式。

3)点击Profile设置对话框。

图11

6.动网格设置

6.1Mesh Methods(网格更新方法)

在Dynamic Mesh面板中找到并勾选激

活动网格选项。勾选

相关参数设置位于Smoothing (光顺)标签下,可以设置的参数包括Spring Constant Factor(弹簧弹性系数)、Laplace Node Relaxation(边界点松弛因子)、Convergence Tolerance(迭代精度)和Number of Iterations(迭代次数)。

弹簧常数因子:取值范围[0,1]。可以通过该值来调整弹簧刚度的大小。该值为0表示弹簧间没有阻尼,边界运动会影响到更多的内部节点。该参数的默认值为1。在实际应用中,若发现运动边界附近网格堆积严重,可适当调小此参数,将位移扩散出去。

边界点松弛因子:网格位置更新时使用的参数。取值范围[0,1]。0表示没有进行网格节点保持不变,1表示不使用松弛处理。

该参数默认为1。调整该参数可以控制每次网格更新的节点位置。通常使用默认值即可。

迭代精度:网格节点位移值是通过求解平衡方程得到的。本参数即控制方程的求解精度。一般保持默认值。

迭代次数:与迭代精度作用相同。用于平衡方程的求解控制。迭代方程如下。通常该参数保持默认即可。

扩散光顺方法在此不作详细叙述,只简述其适应的情况:能够应用于任何类型的运动或变形网格;扩散光顺方法比弹簧光顺计算开销要大(隐式求解扩散方程,而弹簧光顺是显式计算节点位移),但是能够得到较好的网格质量(特别是对于非四面体/非三角形网格及多面体网格);更适合于平移运动;扩散光顺方法与边界层光顺方法及面区域重构方法不兼容。

分割因子)和Collapse Factor(合并因子)与

Cell Height相关,定义其乘积下的分割

包含有很多种网格重构方法,主要有以下几种:局部单元重构、局部区域重构、局部面重构(只用于3D)、面域重构、cutcell域重构(仅3D)以及2.5D面重构(3D 中)。网格重构方法适合于以下网格类型:

(1)局部网格及局部面重构方法只对区域中的三角形及四面体网格有效。(例如混合网格区域中,非三角形/四面体网格将会被忽略)

(2)区域重构方法会将其它所有类型网格替换为三角形四面体网格(分别在2D及3D区域中),并且在3D边界层中生成楔形、棱柱形网格。

(3)面域重构方法在2D中只用于三角形网格,在3D模型中只用于四面体网格。并且在3D边界层中能够产生楔形/棱柱形网格。

(4)切割单元区域重构方法能够对所有网格类型有效。

(5)2.5D重构方法只在六面体网格或由三角形拉伸形成的楔形/棱柱型单元上有效。

可以设置的其他参数还包括Maximum Cell Skewness(最大畸变率)、Maximum Cell Volume(最大网格体积)和Minimum Cell Volume(最大网格体积),主要用于确定哪些网格需要被重新划分。Mesh Scale Info用于设定时参考网格内的参数。在缺省设置中,如果重新划分的网格优于原网格,则用新网格代替旧网格;否则,将保持原网格划分不变。如果无论如何都要采用新网格的话,则可以在Options(选项)下面选择Must Improve Skewness (必须改善畸变率)选项。如果Options(选项)下面的Size Function(尺寸函数)被激活,则还可以用网格尺寸分布函数标志需要重新划分的网格。

对于3D模型,还包括in-cylinder、six-dof、Implicit Update 三种选项。其中in-cyliner用于发动机气缸模拟,six-dof主要用于流体作用于刚体,预测刚体运动。implicit update用于设定网格更新方式。默认采用显式方式,勾选此选项可设定网格以隐式方式更新。

6.2动态网格域

在即定义中间刚体壁面为rigid body,具体操作如下。

1)点击

2)在Zone Names下选择rigid wall,在Type中选择Rigid Body。

3)在Meshing Options中,设置Cell Height中的值为1mm。

4)点击Create,并关闭Dynamic Mesh Zones设置对话框。

图11

此动态网格域用于定义网格运动的区域及运动类型。FLUENT中网格运动类型主要有:静止、刚体运动、变形区域、用户自定义域、耦合域(依次)。

静止域在网格运动过程中,区域内节点位置保持不变。虽然说默认情况下不设定区域运动,则该区域为静止,但是一些情况下还是需要显式设定某些区域为静止域,尤其是在一些与刚体域相连的区域处理上。

刚体运动域:这是fluent动网格中最常见的运动类型。通过规定刚体的速度或位移来控制运动。

变形域:由于边界运动导致节点变形。变形域通常与刚体域是相连的。

自定义域:用户可以使用UDF定义自己需要的域

耦合域:节点位移由耦合求解器计算,在流固耦合计算中,耦合面上通常设定为耦合域类型。

6.3网格预览

点击可以设置预览网格运动,具体操作如下。

1)点击

2)

3)设置完成后,点击

图15

注意:在这一步中,需要提醒一下,使用动网格进行正式计算之前,最好养成预览动网格更新的习惯;就是在正式计算前,浏览一下动网格的更新情况,这样可以避免在计算过程中出现动网格更新本身的问题。在预览更新时,很多人都说会出现负体积的警告,更新不成功,出现这样的问题时,最好先把时间步长改的更小点儿试试,一般来讲,排除UDF本身的原因,出现更新出错的原因都与时间步长有关,这需要结合所使用的更新方法多琢磨。在预览动网格前先保存动网格设置,预览后将造成不可逆的计算结果。

7.设置其它选项

对于非定常问题,推荐使用PISO算法。时间步长设置为0.01,计算步数设置为100。Solution面板中的设置此处不在详细叙述。

Fluent动网格专题讨论

Fluent动网格专题讨论(-) 题记:在学习使用Fluent的时候,有不少朋友需要使用动网格模型(Dynamic Mesh Model),因此,本版推出这个专题,进行大讨论,使大家在使用动网格时尽量少走弯路,更快更好地掌握;也欢迎使用过的版友积极参与讨论指导,谢谢! 该专题主要包括以下的主要内容: ##1. 动网格的相关知识介绍; ##2. 以NACA0012翼型俯仰振荡实例进行讲解动网格的应用过程; ##3. 与动网格应用有关的参考文献; ##4. 使用动网格进行计算的一些例子。 ##1. 动网格的相关知识介绍 有关动网格基础方面的东西,请具体参考FLUENT User’s Guide或FLUENT全攻略的相关章节,这里只给出一些提要性的知识要点。 1、简介 动网格模型可以用来模拟流场形状由于边界运动而随时间改变的问题。边界的运动形式可以是预先定义的运动,即可以在计算前指定其速度或角速度;也可以是预先未做定义的运动,即边界的运动要由前一步的计算结果决定。网格的更新过程由FLUENT 根据每个迭代步中边界的变化情况自动完成。在使用动网格模型时,必须首先定义初始网格、边界运动的方式并指定参予运动的区域。可以用边界型函数或者UDF 定义边界的运动方式。FLUENT 要求将运动的描述定义在网格面或网格区域上。如果流场中包含运动与不运动两种区域,则需要将它们组合在初始网格中以对它们进行识别。那些由于周围区域运动而发生变形的区域必须被组合到各自的初始网格区域中。不同区域之间的网格不必是正则的,可以在模型设置中用FLUENT软件提供的非正则或者滑动界面功能将各区域连接起来。 注:一般来讲,在Fluent中使用动网格,基本上都要使用到UDF,所以你最好具备一定的C语言编程基础。 2、动网格更新方法 动网格计算中网格的动态变化过程可以用三种模型进行计算,即弹簧近似光滑模型(spring-based smoothing)、动态分层模型(dynamic layering)和局部重划模型(local remeshing)。 弹簧近似光滑模型 在弹簧近似光滑模型中,网格的边被理想化为节点间相互连接的弹簧。移动前的网格间距相当于边界移动前由弹簧组成的系统处于平衡状态。在网格边界节点发生位移后,会产生与位移成比例的力,力量的大小根据胡克定律计算。边界节点位移形成的力虽然破坏了弹簧系统原有的平衡,但是在外力作用下,弹簧系统经过调整将达到新的平衡,也就是说由弹簧连接在一起的节点,将在新的位置上重新获得力的平衡。从网格划分的角度说,从边界节点的位移出发,采用虎克定律,经过迭代计算,最终可以得到使各节点上的合力等于零的、新的网格节点位置,这就是弹簧光顺法的核心思想。 原则上弹簧光顺模型可以用于任何一种网格体系,但是在非四面体网格区域(二维非三角形),最好在满足下列条件时使用弹簧光顺方法: (1)移动为单方向。 (2)移动方向垂直于边界。 如果两个条件不满足,可能使网格畸变率增大。另外,在系统缺省设置中,只有四面体网格(三维)和三角形网格(二维)可以使用弹簧光顺法,如果想在其他网格类型中激活该模型,需要在dynamic-mesh-menu 下使用文字命令spring-on-all-shapes?,然后激活该选项即可。 动态层模型 对于棱柱型网格区域(六面体和或者楔形),可以应用动态层模型。动态层模型的中心思想是根据紧邻运动边界网格层高度的变化,添加或者减少动态层,即在边界发生运动时,如果紧邻边界的网格层高度增大到一定程度,就将其划分为两个网格层;如果网格层高度降低到一定程度,就将紧邻边界的两个网格层合并为一个层: 如果网格层j扩大,单元高度的变化有一临界值:

FLUENT动网格讲解分析

题记:在学习使用Fluent的时候,有不少朋友需要使用动网格模型(Dynamic Mesh Model),因此,本版推出这个专题,进行大讨论,使大家在使用动网格时尽量少走弯路,更快更好地掌握;也欢迎使用过的版友积极参与讨论指导,谢谢! 该专题主要包括以下的主要内容: ##1.动网格的相关知识介绍; ##2.以NACA0012翼型俯仰振荡实例进行讲解动网格的应用过程; ##3. 与动网格应用有关的参考文献; ##4. 使用动网格进行计算的一些例子。 ##1.动网格的相关知识介绍 有关动网格基础方面的东西,请具体参考FLUENT User’s Guide或FLUENT全攻略的相关章节,这里只给出一些提要性的知识要点。 1、简介 动网格模型可以用来模拟流场形状由于边界运动而随时间改变的问题。边界的运动形式可以是预先定义的运动,即可以在计算前指定其速度或角速度;也可以是预先未做定义的运动,即边界的运动要由前一步的计算结果决定。网格的更新过程由FLUENT 根据每个迭代步中边界的变化情况自动完成。在使用动网格模型时,必须首先定义初始网格、边界运动的方式并指定参予运动的区域。可以用边界型函数或者UDF 定义边界的运动方式。FLUENT 要求将运动的描述定义在网格面或网格区域上。如果流场中包含运动与不运动两种区域,则需要将它们组合在初始网格中以对它们进行识别。那些由于周围区域运动而发生变形的区域必须被组合到各自的初始网格区域中。不同区域之间的网格不必是正则的,可以在模型设置中用FLUENT软件提供的非正则或者滑动界面功能将各区域连接起来。 注:一般来讲,在Fluent中使用动网格,基本上都要使用到UDF,所以你最好具备一定的C 语言编程基础。 2、动网格更新方法 动网格计算中网格的动态变化过程可以用三种模型进行计算,即弹簧近似光滑模型(spring-based smoothing)、动态分层模型(dynamic layering)和局部重划模型(local remeshing)。 弹簧近似光滑模型 在弹簧近似光滑模型中,网格的边被理想化为节点间相互连接的弹簧。移动前的网格间距相当于边界移动前由弹簧组成的系统处于平衡状态。在网格边界节点发生位移后,会产生与位移成比例的力,力量的大小根据胡克定律计算。边界节点位移形成的力虽然破坏了弹簧系统原有的平衡,但是在外力作用下,弹簧系统经过调整将达到新的平衡,也就是说由弹簧连接在一起的节点,将在新的位置上重新获得力的平衡。从网格划分的角度说,从边界节点的位移出发,采用虎克定律,经过迭代计算,最终可以得到使各节点上的合力等于零的、新的网格节点位置,这就是弹簧光顺法的核心思想。 原则上弹簧光顺模型可以用于任何一种网格体系,但是在非四面体网格区域(二维非三角形),最好在满足下列条件时使用弹簧光顺方法: (1)移动为单方向。 (2)移动方向垂直于边界。 如果两个条件不满足,可能使网格畸变率增大。另外,在系统缺省设置中,只有四面体网格 (三维)和三角形网格(二维)可以使用弹簧光顺法, 需要在dynamic-mesh-menu 下使用文字命令spring-on-all-shapes?,然后激活该选项即

FLUENT 动网格教程

FLUENT动网格教程 摘自https://www.doczj.com/doc/4818235550.html,/dvbbs/dispbbs.asp?boardid=61&id=1396题记:在学习使用Fluent的时候,有不少朋友需要使用动网格模型(Dynamic Me sh Model),因此,本版推出这个专题,进行大讨论,使大家在使用动网格时尽量少走弯路,更快更好地掌握;也欢迎使用过的版友积极参与讨论指导,谢谢!。 该专题主要包括以下的主要内容: §一、动网格的相关知识介绍; §二、以NACA0012翼型俯仰振荡实例进行讲解动网格的应用过程; §三、与动网格应用有关的参考文献; §四、使用动网格进行计算的一些例子。 §一、动网格的相关知识介绍 有关动网格基础方面的东西,请具体参考FLUENT User’s Guide或FLUENT全攻略的相关章节,这里只给出一些提要性的知识要点。 1、简介 动网格模型可以用来模拟流场形状由于边界运动而随时间改变的问题。边界的运动形式可以是预先定义的运动,即可以在计算前指定其速度或角速度;也可以是预先未做定义的运动,即边界的运动要由前一步的计算结果决定。网格的更新过程由FLUE NT 根据每个迭代步中边界的变化情况自动完成。在使用动网格模型时,必须首先定义初始网格、边界运动的方式并指定参予运动的区域。可以用边界型函数或者UDF定义边界的运动方式。FLUENT 要求将运动的描述定义在网格面或网格区域上。如果流场中包含运动与不运动两种区域,则需要将它们组合在初始网格中以对它们进行识别。那些由于周围区域运动而发生变形的区域必须被组合到各自的初始网格区域中。不同区域之间的网格不必是正则的,可以在模型设置中用FLUENT软件提供的非正则或者滑动界面功能将各区域连接起来。 注:一般来讲,在Fluent中使用动网格,基本上都要使用到UDF,所以你最好具备一定的C语言编程基础。

FLUENT算例 (5)搅拌桨底部十字挡板的流场分析

搅拌桨底部十字挡板的流场分析搅拌设备在各个行业运用的十分广泛,搅拌就是为了更够更快速更高效的将物质与介质充分混合,发生充分的反应,而搅拌中存在着许多不利于混合的情况,比如液体旋流。为了解决这个问题,之前很多人提出在罐体的侧壁上增加挡板,可以抵消大部分旋流,然后大部分都是研究侧挡板的,对于底部挡板的研究十分少,本文就在椭圆底部挡板增加十字型挡板,对罐体中进行流场分析。 1.Gambit建模 首先用Gambit建模图形如下: 图1:Gambit建立的模型 分为两个区域,里面的圆柱为动区域,外面包着的大圆柱设为静区域,静区域划分网格大,划分粗糙,内部动区域划分网格小,划分精细。边界条件主要设置了轴,搅拌桨,底部挡板,上层液面。以下就是fluent进行数值模拟。 2.fluent数值模拟 2.1导入case文件

2.2对网格进行检查 Minimum volume的数值大于0即可。 图2网格检查2.3调节比例 单位选择mm单位。 图3比例调节2.4定义求解器参数 设置如图4所示

图4设置求解器参数2.5设置能量线 图5能量线 2.6设置粘度模型,选择k-e模型 k-e模型对该模型模拟十分实用。

图6粘度模型2.7定义材料 介质选择液体水。 2.8定义操作条件

由于存在着终于,建模时的方向向上,所以在Z轴增加一个重力加速度。 图8操作条件 2.9定义边界条件 在边界设置重,动区域如图所示,将材料设成水,motion type设成moving reference frame (相对滑动),转速设为10rad/s,单位可在Define中的set unit中的angular-velocity设置。而在在轴的设置中,如上图所示,将wall motion设成moving wall,motion设成Absolute,速度设成-10,由于轴跟动区域速度是相对的,所以设成反的。

ICEM CFD动网格学习

FLUENT动网格教程 该专题主要包括以下的主要内容: §一、动网格的相关知识介绍; §二、以NACA0012翼型俯仰振荡实例进行讲解动网格的应用过程; §三、与动网格应用有关的参考文献; §四、使用动网格进行计算的一些例子。 §一、动网格的相关知识介绍 有关动网格基础方面的东西,请具体参考FLUENT User’s Guide或FLUENT全攻略的相关章节,这里只给出一些提要性的知识要点。 1、简介 动网格模型可以用来模拟流场形状由于边界运动而随时间改变的问题。边界的运动形式可以是预先定义的运动,即可以在计算前指定其速度或角速度;也可以是预先未做定义的运动,即边界的运动要由前一步的计算结果决定。网格的更新过程由FLUE NT 根据每个迭代步中边界的变化情况自动完成。在使用动网格模型时,必须首先定义初始网格、边界运动的方式并指定参予运动的区域。可以用边界型函数或者UDF定义边界的运动方式。FLUENT 要求将运动的描述定义在网格面或网格区域上。如果流场中包含运动与不运动两种区域,则需要将它们组合在初始网格中以对它们进行识别。那些由于周围区域运动而发生变形的区域必须被组合到各自的初始网格区域中。不同区域之间的网格不必是正则的,可以在模型设置中用FLUENT软件提供的非正则或者滑动界面功能将各区域连接起来。 注:一般来讲,在Fluent中使用动网格,基本上都要使用到UDF,所以你最好具备一定的C语言编程基础。 2、动网格更新方法 动网格计算中网格的动态变化过程可以用三种模型进行计算,即 弹簧近似光滑模型(spring-based smoothing)、 动态分层模型(dynamic layering) 局部重划模型(local remeshing)

Fluent动网格----layering个一个简单实例(作者Snow)

Fluent动网格----layering个一个简单实例我这几天看了点动网格技术方面的东西,在学习过程中发现这方面的例子很少,自己也走了一些弯路。现在还好,弄明白了一些,能够应付现在我的工作。为了让更多学习者快速了解动网格,我打算尽量把我学习心得在这里和大家分享,这里给出一个layering的一个简单例子。 1.Gambit画网格 本例很简单,在Gambit里画一个10*10的矩形,网格间隔为1,也就是有100个网格,具体见下图。都学动网格的人了,不至于这个不会做! 这里需要注意一个问题:设置边界条件的时候,一定要把要移动的边单独设定,本例中一右边界作为移动的边,设成wall就可以,这里再后面需要制定。 2.编写UDF #include "udf.h" #include "unsteady.h" #include "stdio.h" #include "stdlib.h" /************************************************************/ real current_time = 0.0 ; Domain * domain ; Thread * thread ; real NV_VEC( origin ),NV_VEC( force ),NV_VEC( moment ) ; /************************************************************/ DEFINE_CG_MOTION(throttle,dt,vel,omega,time,dtime) { current_time = CURRENT_TIME ; vel[0] = 30; Message("time=%f omega=%f\n",current_time) ; }

FLUENT动网格技术简介

FLUENT动网格简介 在固体有限元计算中,网格运动实非什么稀奇事儿。而且在绝多数固体计算的基本物理量是网格的节点位移,所以,固体计算中,网格节点运动是对的,没有运动反而不正常了。也可以这么说:正因为计算域内部节点间的相对运动,才导致了内应力的产生。 流体计算与固体完全不同。其根源在于它们使用的网格类型不同。当前固体有限元计算采用的是拉格朗日网格,而流体计算则大多数采用的欧拉网格。如果说把拉格朗日网格中的节点点看作是真实世界的物质原子的话,那么欧拉网格的节点则好比是真实世界中的一个个传感器,它们总是呆在相同的位置,真实的记录着各自位置上的物理量。正常情况下,欧拉网格系统是这样的:计算域和节点保持位置不变,发生变化的是物理量,网格节点就像一个个布置在计算域中的传感器,记录该位置上的物理量。这其实是由流体力学研究方法所决定的。宏观与微观的差异决定了固体力学计算采用拉格朗日网格,流体计算采用欧拉网格。关于这部分的详细解说,可以参阅任何一本计算流体动力学书籍。 世界是公平的。有利必有弊。朗格朗日网格适合计算节点位移,然而对于过大的网格变形却难以处理。欧拉网格生来可以处理大变形(因为节点不动),然而对于对于节点运动的处理,则是其直接软肋。然而很不幸的是,现实生活中有太多网格边界运动的实例。如汽车发动机中的气缸运动、阀门开启与关闭、机翼的运动、飞机投弹等等等等举不胜举。 计算流体动力学计算的基本物理量通常为:速度、温度、压力、组分。并不计算网格节点位移。因此要让网格产生运动,通常给节点施加的物理约束是速度。CFD中的动网格大体分为两类:(1)显式规定的网格节点速度。配合瞬态时间,即可很方便的得出位移。当然一些求解器(如FLUENT)也支持稳态动网格,这时候可以直接指定节点位移。(2)网格节点速度是通过求解得到的。如6DOF 模型基本上都属于此类。用户将力换算成加速度,然后将其积分成速度。 对于第一类动网格问题,在fluent中通常可以使用profile与UDF进行网格设置,通过规定节点或区域的速度、角速度或位移等方式来显式确定网格的运动,通常大部分的动网格问题都归于此类。而对于第二类问题,通常涉及到力的计算,力在流体中通常是对压力进行积分而来。将力转换为速度或位移,一般涉及到加

FLUENT动网格需要的常用宏

FLUENT动网格需要的常用宏 虽然瞬态PROFILE文件可以在一定程度上定义网格运动,然而其存在着一些缺陷。最主要的一些缺陷存在于以下一些方面: (1)PROFILE无法精确的定义连续的运动。其使用离散的点值进行插值。如果 想获得较为精确的运动定义,势必要定义很多点。 (2)一些情况下无法使用profile。比如稳态动网格。 在FLUENT中定义网格运动,更多的是采用UDF宏。fluent中与动网格有关的UDF 宏一共有5个,其中四个用于常规的网格运动定义,一个用于6DOF模型。这些宏分别为: DEFINE_CG_MOTION、DEFINE_DYNAMIC_ZONE_PROPERTY、DEFINE_GEOM、 DEFINE_GRID_MOTION、DEFINE_SDOF_PROPERTIES 注意:动网格宏只能为编译型UDF。 1、DEFINE_CG_MOTION 最常用的运动网格宏。用户可以使用该宏定义每一时间步上的线速度或角速度来指定fluent中某一特定区域的运动。 DEFINE_CG_MOTION(name,de,vel,omega,time,dtime) 参数说明: name:UDF的名字。体现在fluent中表现为可选择的函数列表。 Dynamic_Thread *dt:存储了用户所指定的动网格属性和结构指针。 real vel[]:线速度。vel[0]为x方向速度,vel[1]为y方向速度,vel[2]为z 方向速度 real omega[]:角速度。与线速度定义相同。 real time:当前时间。 real dtime:时间步长。 函数返回值为:void 从函数的参数类型,配合c语言的参数调用方式可知,vel,omega为数值类型,属于传入类型。因此只需在函数体中显式定义vel与omega即可将速度传入fluent求解器。time与dtime是用于定义速度的。详细实例可参看fluent udf 文档p182。

Fluent中的动网格

Fluent中的动网格 动网格是目前求解计算域变化问题的常用方法。参考Fluent帮助,可以知道动网格技术与一般流动计算设置的主要区别在于网格更新方法和更新域设置。这里就这两方面问题的一点体会作一简单记录。 一、网格更新方法 弹簧近似光滑法将任意两网格节点之间的连线理想地看成一条弹簧,并通过近似弹簧的压缩或拉伸实现网格和计算域的改变。该方法网格拓扑不变,无需网格的插值处理,对结构化(四边形、六面体)和非结构化(三角形、四面体)网格同样适用。但不适合于大变形情况,当计算区域变形较大时,变形后的网格质量变差,严重影响计算精度。 动态分层法在运动边界相邻处根据运动规律动态增加或减少网格层数,以此来更新变形区域的网格。该方法适用于结构化网格,通过设置适当的分层和缩减系数,更新后的网格依然为较为均匀的结构化网格,对计算精度影响较小。对于运动域具有多自由度和任意变形情况,该方法处理起来非常困难。 网格重生方法在整个网格更新区域内依据设定的最大和最小网格尺寸判断需要进行网格重生的网格,并依据设置的更新频率进行网格重生处理。该方法适用于非结构化网格,能够较好的应用于任意变形的计算区域处理。 二、更新域设置 更新域设置是动网格设置中的一项重要工作,最常用的设置是刚体运动域和变形域,这里针对这两种域的设置注意事项和技巧作一简单介绍。 1、域动网格 一般来讲,设置为刚体运动域的区域一般为壁面类边界,通过设置固壁的运动,模拟计算域内物体的运动。 由于固壁边界有时形状较为复杂,壁面附近网格尺度与周围网格尺度存在较大差别,网格更新时变形较大。在这种情况下,可以设置一个包含固壁运动边界的计算域,通过该计算域的整体运动模拟域内物体的运动,在有的地方将这种方法称为域动网格法。在域动网格法中,需要设置包含运动物体的内部计算域、内部计算域界面均为刚体运动域。如下图所示。

Fluent-动网格实例具体操作步骤

目录 实例:Profile定义运动 (2) I、参数说明 (2) II、操作步骤 (3) 一、将计算域离散为网格 (3) 二、Fluent操作步骤 (4) 1.启动Fluent 14.5求解器 (4) 2.初始设置 (4) 3.选择湍流模型 (5) 4.设置流体物性 (6) 5.设置边界条件 (7) 6.动网格设置 (8) 7.设置其它选项 (12)

在Fluent中,动网格模型可以用来模拟由于流域边界运动引起流域形状随时间变化的流动情况,动网格在求解过程中计算网格要重构,例如汽车发动机中的气缸运动、阀门的开启与关闭、机翼的运动、飞机投弹等等。 CFD中的动网格大体分为两类:(1)显式规定的网格节点速度。配合瞬态时间,即可很方便的得出位移。当然一些求解器(如FLUENT)也支持稳态动网格,这时候可以直接指定节点位移。(2)网格节点速度是通过求解得到的。如6DOF模型基本上都属于此类。用户将力换算成加速度,然后将其积分成速度。 在Fluent中,动网格涉及的内容包括: (1)运动的定义。主要是PROFILE文件与UDF中的动网格宏。 (2)网格更新。FLUENT中关于网格更新方法有三种:网格光顺、动态层、网格重构。需要详细了解这些网格更新方法的运作机理,每个参数所代表的具体含义及设置方法,每种方法的适用范围。 动网格的最在挑战来自于网格更新后的质量,避免负体积是动网格调试的主要目标。在避免负网格的同时,努力提高运动更新后的网格质量。 拉格朗日网格(固体有限元计算) 网格 欧拉网格(流体计算) 实例:Profile定义运动 I、参数说明 本次实例采用的场景来自于流体中高速飞行的物体。如子弹、火箭、导弹等。这里只是为了说明profile在动网格运动定义中的应用,因此为了计算方便不考虑高速问题。问题描述如下图所示: 图 1 (1为运动刚体,2为计算域)

Fluent 动网格实例具体操作步骤(完整资料).doc

【最新整理,下载后即可编辑】 Fluent 动网格实例具体操作步骤 目录 实例:Profile定义运动 (3) I、................................................................................................... 参数说明 3 II、 ................................................................................................. 操作步骤4 一、将计算域离散为网格 (4) 二、Fluent操作步骤 (5) 1. 启动Fluent 14.5求解器 (5) 2. 初始设置 (6) 3. 选择湍流模型 (7) 4. 设置流体物性 (8) 5. 设置边界条件 (9) 6. 动网格设置 (11) 7. 设置其它选项 (16)

Fluent 动网格实例具体操作步骤 在Fluent中,动网格模型可以用来模拟由于流域边界运动引起流域形状随时间变化的流动情况,动网格在求解过程中计算网格要重构,例如汽车发动机中的气缸运动、阀门的开启与关闭、机翼的运动、飞机投弹等等。 CFD中的动网格大体分为两类:(1)显式规定的网格节点速度。配合瞬态时间,即可很方便的得出位移。当然一些求解器(如FLUENT)也支持稳态动网格,这时候可以直接指定节点位移。(2)网格节点速度是通过求解得到的。如6DOF模型基本上都属于此类。用户将力换算成加速度,然后将其积分成速度。 在Fluent中,动网格涉及的内容包括: (1)运动的定义。主要是PROFILE文件与UDF中的动网格宏。 (2)网格更新。FLUENT中关于网格更新方法有三种:网格光顺、动态层、网格重构。需要详细了解这些网格更新方法的运作机理,每个参数所代表的具体含义及设置方法,每种方法的适用范围。

Fluent动网格的应用过程

Fluent动网格的应用过程 一、简介 动网格模型可以用来模拟流场形状由于边界运动而随时间改变的问题。网格的更新过程由FLUENT根据每个迭代步中边界的变化情况自动完成。FLUENT要求将运动的描述定义在网格面或网格区域上。如果流场中包含运动与不运动两种区域,则需要将它们组合在初始网格中以对它们进行识别。 二、动网格更新方法 动网格计算中网格的动态变化过程可以用三种模型进行计算,即弹簧近似光滑模型、动态分层模型和局部重划模型。 1、弹簧近似光滑模型 在弹簧近似光滑模型中,网格的边被理想化为节点间相互连接的弹簧。移动前的网格间距相当于边界移动前由弹簧组成的系统处于平衡状态。在网格边界节点发生位移后,会产生与位移成比例的力,力量的大小根据胡克定律计算。边界节点位移形成的力虽然破坏了弹簧系统原有的平衡,但是在外力作用下,弹簧系统经过调整将达到新的平衡,也就是说由弹簧连接在一起的节点,将在新的位置上重新获得力的平衡。从网格划分的角度说,从边界节点的位移出发,采用虎克定律,经过迭代计算,最终可以得到使各节点上的合力等于零的、新的网格节点位置,这就是弹簧光顺法的核心思想。 2、动态分层模型 对于棱柱型网格区域(六面体和或者楔形),可以应用动态层模

型。动态层模型的中心思想是根据紧邻运动边界网格层高度的变化,添加或者减少动态层,即在边界发生运动时,如果紧邻边界的网格层高度增大到一定程度,就将其划分为两个网格层;如果网格层高度降低到一定程度,就将紧邻边界的两个网格层合并为一个层。 3、局部重划模型 在使用非结构网格的区域上一般采用弹簧光顺模型进行动网格 划分,但是如果运动边界的位移远远大于网格尺寸,则采用弹簧光顺模型可能导致网格质量下降,甚至出现体积为负值的网格,或因网格畸变过大导致计算不收敛。为了解决这个问题,FLUENT 在计算过程中将畸变率过大,或尺寸变化过于剧烈的网格集中在一起进行局部网格的重新划分,如果重新划分后的网格可以满足畸变率要求和尺寸要求,则用新的网格代替原来的网格,如果新的网格仍然无法满足要求,则放弃重新划分的结果。 三、动网格问题的建立 设置动网格问题的步骤如下: (1)在Solver(求解器)面板中选择非定常流(unsteady)计算。 (2)设定边界条件,即设定壁面运动速度。 (3)激活动网格模型,并设定相应参数,菜单操作如下: Define -> Dynamic Mesh -> Parameters... (4)指定移动网格区域的运动参数,菜单操作如下: Define -> Dynamic Mesh -> Zones...

FLUENT动网格专题讨论

动网格专题讨论 题记:在学习使用Fluent的时候,有不少朋友需要使用动网格模型(Dynamic Mesh Model),因此,本版推出这个专题,进行大讨论,使大家在使用动网格时尽量少走弯路,更快更好地掌握;也欢迎使用过的版友积极参与讨论指导,谢谢! 该专题主要包括以下的主要内容: ##1.动网格的相关知识介绍; ##2.以NACA0012翼型俯仰振荡实例进行讲解动网格的应用过程; ##3. 与动网格应用有关的参考文献; ##4. 使用动网格进行计算的一些例子。 ##1.动网格的相关知识介绍 有关动网格基础方面的东西,请具体参考FLUENT User’s Guide或FLUENT全攻略的相关章节,这里只给出一些提要性的知识要点。 1、简介 动网格模型可以用来模拟流场形状由于边界运动而随时间改变的问题。边界的运动形式可以是预先定义的运动,即可以在计算前指定其速度或角速度;也可以是预先未做定义的运动,即边界的运动要由前一步的计算结果决定。网格的更新过程由FLUENT 根据每个迭代步中边界的变化情况自动完成。在使用动网格模型时,必须首先定义初始网格、边界运动的方式并指定参予运动的区域。可以用边界型函数或者UDF 定义边界的运动方式。FLUENT 要求将运动的描述定义在网格面或网格区域上。如果流场中包含运动与不运动两种区域,则需要将它们组合在初始网格中以对它们进行识别。那些由于周围区域运动而发生变形的区域必须被组合到各自的初始网格区域中。不同区域之间的网格不必是正则的,可以在模型设置中用FLUENT软件提供的非正则或者滑动界面功能将各区域连接起来。 注:一般来讲,在Fluent中使用动网格,基本上都要使用到UDF,所以你最好具备一定的C 语言编程基础。 2、动网格更新方法 动网格计算中网格的动态变化过程可以用三种模型进行计算,即弹簧近似光滑模型(spring-based smoothing)、动态分层模型(dynamic layering)和局部重划模型(local remeshing)。 弹簧近似光滑模型 在弹簧近似光滑模型中,网格的边被理想化为节点间相互连接的弹簧。移动前的网格间距相当于边界移动前由弹簧组成的系统处于平衡状态。在网格边界节点发生位移后,会产生与位移成比例的力,力量的大小根据胡克定律计算。边界节点位移形成的力虽然破坏了弹簧系统原有的平衡,但是在外力作用下,弹簧系统经过调整将达到新的平衡,也就是说由弹簧连接在一起的节点,将在新的位置上重新获得力的平衡。从网格划分的角度说,从边界节点的位移出发,采用虎克定律,经过迭代计算,最终可以得到使各节点上的合力等于零的、新的网格节点位置,这就是弹簧光顺法的核心思想。 原则上弹簧光顺模型可以用于任何一种网格体系,但是在非四面体网格区域(二维非三角形),最好在满足下列条件时使用弹簧光顺方法: (1)移动为单方向。 (2)移动方向垂直于边界。 如果两个条件不满足,可能使网格畸变率增大。另外,在系统缺省设置中,只有四面体网格

FLUENT实例-搅拌桨-动网格

搅拌桨底部十字挡板流场分析 动网格实例教程 搅拌设备在各个行业运用的十分广泛,搅拌就是为了更够更快速更高效的将物质与介质充分混合,发生充分的反应,而搅拌中存在着许多不利于混合的情况,比如液体旋流。为了解决这个问题,之前很多人提出在罐体的侧壁上增加挡板,可以抵消大部分旋流,然后大部分都是研究侧挡板的,对于底部挡板的研究十分少,本文就在椭圆底部挡板增加十字型挡板,对罐体中进行流场分析。 1.Gambit建模 首先用Gambit建模图形如下: 图1:Gambit建立的模型 分为两个区域,里面的圆柱为动区域,外面包着的大圆柱设为静区域,静区域划分网格大,划分粗糙,内部动区域划分网格小,划分精细。边界条件主要设置了轴,搅拌桨,底部挡板,上层液面。以下就是fluent进行数值模拟。 2.fluent数值模拟

2.1导入case文件 2.2对网格进行检查 Minimum volume的数值大于0即可。 图2网格检查2.3调节比例 单位选择mm单位。 图3比例调节2.4定义求解器参数 设置如图4所示

图4设置求解器参数2.5设置能量线 图5能量线 2.6设置粘度模型,选择k-e模型 k-e模型对该模型模拟十分实用。

图6粘度模型2.7定义材料 介质选择液体水。 2.8定义操作条件

由于存在着终于,建模时的方向向上,所以在Z轴增加一个重力加速度。 图8操作条件 2.9定义边界条件 在边界设置重,动区域如图所示,将材料设成水,motion type设成moving reference frame (相对滑动),转速设为10rad/s,单位可在Define中的set unit中的angular-velocity设置。而在在轴的设置中,如上图所示,将wall motion设成moving wall,motion设成Absolute,速度设成-10,由于轴跟动区域速度是相对的,所以设成反的。

ICEMCFD与FLUENT培训

ICEMCFD与FLUENT培训 软件介绍: ICEM CFD是目前CFD 分析中最常用的专业的网格前处理软件,功能强大,是STAR-CD、STAR-CCM+、FLUENT和CFX等主流计算流体力学软件标准配置的网格前处理工具。另外ICEM CFD也可以作为有限元分析软件(如:Ansys、Nastran、Abaqus、LS-Dyna 等)的网格前处理工具。ICEM CFD是目前市场上最强大的六面体结构化网格生成工具。 ANSYS FLUENT是目前全球通用的商用CFD 软件,用来模拟从不可压缩到高度可压缩范围内的复杂流动。由于采用了多种求解方法和多重网格加速收敛技术,因而FLUENT 能达到最佳的收敛速度和求解精度。灵活的非结构化网格和基于解的自适应网格技术及成熟的物理模型,使FLUENT在转捩与湍流、传热与相变、化学反应与燃烧、多相流、旋转机械、动/变形网格、噪声、材料加工、燃料电池等方面有广泛应用。ANSYS FLUENT在国防、航空航天、机器制造、汽车、船泊、兵器、电子、铁道、石油天然气、材料工程等行业都有着广泛的应用。 培训目的: 通过本次培训,学员将系统地掌握ICEM CFD 中几何功能、网格功能以及网格编辑功能,使学员能够使用强大的前处理工具ICEM CFD 解决自己的一些CAE前处理问题。 同时帮助学员系统地学习计算流体力学(Computational Fluid Dynamics-CFD)知识与当前最流行的CFD软件ANSYS-FLUENT的使用。掌握CFD分析的基本过程与原理,在最短的时间掌握应用FLUENT软件对流体流动、湍流、传热、多相流等物理现象进行分析。使得学员在培训后,面对企业所需解决的工程问题,能够独立地对其进行分析,正确地确立解决问题的思路,然后合理应用CFD软件对其进行求解,并对分析结果进行恰当的分析,真正地帮助企业进行产品的设计与开发。 课程简介:

Fluent动网格实例具体操作步骤

目录 实例: Profile 定义运动 (2) I、参数说明 (2) II、操作步骤 (3) 一、将计算域离散为网格 (3) 二、 Fluent 操作步骤 (4) 1. 启动Fluent 14.5 求解器 (4) 2. 初始设置 (4) 3. 选择湍流模型 (5) 4. 设置流体物性 (6) 5. 设置边界条件 (7) 6. 动网格设置 (8) 7. 设置其它选项 (12)

在Flue nt中,动网格模型可以用来模拟由于流域边界运动引起流域形状随时间变化的 流动情况,动网格在求解过程中计算网格要重构,例如汽车发动机中的气缸运动、阀门的开启与关闭、机翼的运动、飞机投弹等等。 CFD中的动网格大体分为两类:(1)显式规定的网格节点速度。配合瞬态时间,即可很方便的得出位移。当然一些求解器(如FLUENT )也支持稳态动网格,这时候可以直接 指定节点位移。(2)网格节点速度是通过求解得到的。如6DOF模型基本上都属于此类。用 户将力换算成加速度,然后将其积分成速度。 在Flue nt中,动网格涉及的内容包括: (1)运动的定义。主要是PROFILE文件与UDF中的动网格宏。 (2)网格更新。FLUENT中关于网格更新方法有三种:网格光顺、动态层、网格重构。需要详细了解这些网格更新方法的运作机理,每个参数所代表的具体含义及设置 方法,每种方法的适用范围。 动网格的最在挑战来自于网格更新后的质量,避免负体积是动网格调试的主要目标。在避免负网格的同时,努力提高运动更新后的网格质量。 拉格朗日网格(固体有限元计算) 网格 欧拉网格(流体计算) 实例:Profile定义运动 I、参数说明 本次实例采用的场景来自于流体中高速飞行的物体。如子弹、火箭、导弹等。这里只是 为了说明profile在动网格运动定义中的应用,因此为了计算方便不考虑高速问题。问题描述如下图所示: 图1 (1为运动刚体,2为计算域)

fluent 动网格

Remeshing方法中的一些参数设定:Remeshing中的参数Minimum length scale和Maximum Length Scale,这两个参数你可以参考mesh scale info中的值,仅是参考,因为mesh scale info中的值是整个网格的评价值,设置的时候看一下动网格附近的网格和整个网格区域的大小比较,然后确定这两个参数,一般来讲,动网格附近的网格较密,这些值都比整体的小,所以在设置时通常设置为比mesh scale info中的Minimum length scale大一点,比Maximum Length Scale小一点。 以上是一般来讲的设置思路。下面是我在NACA0012翼型动网格例子中的设置: Remeshing中的参数设定: 为了得到较好的网格更新,本例在使用局部网格重新划分方法时,使用尺寸函数,也就是Remeshing+Must Improve Skewness+Size Function的策略。 将Minimum Length Scale及Maximum Length Scale均设置为0,为了使所有的区域都被标记重新划分; Maximum Cell Skewness(最大单元畸变),参考Mesh Scale Info…中的参考值0.51,将其设定为0.4,以保证更新后的单元质量; Size Remesh Interval(依照尺寸标准重新划分的间隔),将这个值设定为1,在FLUENT,不满足最大网格畸变的网格在每个时间步都会被标记,而后重新划分,而不满足最小,最大及尺寸函数的网格,只有在Current Time=(Size Remesh Interval)*delta t的时候,才根据这些尺寸的标准标记不合格的单元进行重新划分,为了保证每步的更新质量,将其修改为1,就是每个时间都根据尺寸的标准标记及更新网格。 Size Function Resolution(尺寸函数分辨率),保持默认的3; Size Function Variation(尺寸函数变量):建议使用一个小值,在0.1到0.5之间,本例将其设置为0.3;Size Function Rate(尺寸函数变化率),保持默认的0.3。 动网格(dynamic mesh)是CFD中专有的概念。由于当前流体计算多采用欧拉坐标系,该坐标系区别于拉格朗日坐标系的一个最直观特点是:计算过程中网格保持静止。因此,在CFD计算中应用动网格,具有其特别的难处。 1、动网格控制方式 最主要的困难在于边界运动后的网格质量控制。由于边界的运动,不可避免的导致网格变形。我们知道,求解器对于网格质量的容忍是有限度的。当网格扭曲过大引起网格质量的急剧下降,可能导致计算发散、形成负网格,进而终止计算。因此,在边界运动过程中,对网格质量进行控制尤为重要。在fluent软件中动网格主要有三种控制方式:smoothing,layering,remeshing。其中layering主要应用与四边形网格及六面体网格,remeshing主要应用于三角形网格及四面体网格等费结构网格中,至于smoothing方法则在各类网格中均可应用。 layering方法应用于结构网格也是有条件限制的:边界运动最好是沿着某单一方向。如若是旋转,最好还是采用非结构网格配合remeshing方式。 非结构网格是最适合应用动网格模型的,但是网格质量不好控制,通常需要仔细调节。结构网格采用layering 方法,能够很好的控制网格质量,但是几何适应性差。具体采用何种网格类型以及何种控制方式,还是要

fluent三种动网格的实现

FLUENT三种动边界控制实现方法Post By:2008-6-30 18:34:00 1) void DEFINE_CG_MOTION (UDFname,Dynamic_Thread * dt,r eal vel[ ], real omega[ ], real time,real dtime)。 此函数接口用于控制刚体的运动,用户把刚体质心运动速度和角速度分别赋值给vel和omega, FLUENT根据它们的值来自动计算出边界下一步的位置,从而实现动边界的控制; 刚体质心的位置可以在函数接口界面对话框中定义。Dynamic Zones中的dwall就是要控制的动边界,Motion U DF/Profile中的stc1sta010a0ph0就是UDFname,从中可看出它已被制定成用于控制dwall,理论上FLUEN T可以通过这种方式实现无穷多个动边界的控制; C.G.Location用于设定初始位置的质心,C.G.Orientation用于设定刚体的初始角度。一般适用于刚体本身不变形的运动。 2) void DEFINE_GEOM(char name,Domain * d,Dynamic_Thread * dt,real * position)。 此函数接口用于控制变形体的边界运动, position就是运动边界上某网格节点的位置值,用户可以通过对其赋值达到控制效果, position [0]对应边界节点的x坐标, position [1]对应y 坐标, position [2]对应z坐标; FL UENT自动遍历所有的边界节点,因此适用于有规律的可以用函数描述的运动边界。 3) void DEFINE_ GRID_MOTION(name,d,dt,time,dtime)。 此函数接口也用于控制形体的边界运动。主要用于更加复杂的控制,用

FLUENT动网格之弹性光顺

FLUENT动网格之弹性光顺 上次讲到,光顺方法计算网格节点位移并不是依赖于网格质量。因此,仅使用光顺方法,只能处理一些小变形的情况。倘若变形量过大,则会造成网格质量降低,轻则影响收敛,重则出现负网格,导致计算出错。 1、问题描述 边长120mm的正方形空腔,内有一个边长30mm的正方形固体。研究固体以角速度1rad/s旋转时对内部流场的扰动。 1、网格方案 由于四边形网格在刚体变形时会发生较大的扭曲,不太适合于使用弹簧光顺方法,因此本例中使用三角形网格。使用全局尺寸2mm,生成网格如下图所示。 2、指定运动 可以使用profile文件或DEFINE_CG_MOTION宏来定义运动。我们这里利用udf 宏来定义运动。 UDF宏文件如下:

#include “udf.h” DEFINE_CG_MOTION(RotationVel , dt , vel , omega , time , dtime) { omega[2] = 1; } omega[2]表示z方向的角速度。本例中以恒定的角速度旋转。 将内部四条边定义为rigid body。并把赋予运动速度。 3、动网格参数 勾选Dynamic Mesh选项,激活动网格。本例只考虑网格光顺,因此只勾选Smoothing。(说明:通常动网格应用中不会只使用一种网格更新方法,此处只是考虑光顺,所以才会这样。正常情况下本例应当使用到网格重构)。 点击setting…按键进行smoothing设置面板。如右下图所示。 采用弹簧光顺需要设置的参数一共有四个:弹簧常数因子、边界节点松弛、收敛精度及迭代次数。 通常需要设置的参数为弹簧常数因子及边界节点松弛,其它两个参数采用默认即可。 (1)弹簧常数因子:该参数取值范围[0,1],取值越大表示阻尼越大,也表示边界运动对内部网格的影响越小。 (2)边界节点松弛:取值范围[0,1],1表示无松弛,0表示禁止节点位移。 这里先将两参数取中间值0.5。

相关主题
文本预览
相关文档 最新文档