FLUENT动网格技术简介

合集下载

Fluent中的动网格

Fluent中的动网格

Fluent中的动网格动网格是目前求解计算域变化问题的常用方法。

参考Fluent帮助,可以知道动网格技术与一般流动计算设置的主要区别在于网格更新方法和更新域设置。

这里就这两方面问题的一点体会作一简单记录。

一、网格更新方法弹簧近似光滑法将任意两网格节点之间的连线理想地看成一条弹簧,并通过近似弹簧的压缩或拉伸实现网格和计算域的改变。

该方法网格拓扑不变,无需网格的插值处理,对结构化(四边形、六面体)和非结构化(三角形、四面体)网格同样适用。

但不适合于大变形情况,当计算区域变形较大时,变形后的网格质量变差,严重影响计算精度。

动态分层法在运动边界相邻处根据运动规律动态增加或减少网格层数,以此来更新变形区域的网格。

该方法适用于结构化网格,通过设置适当的分层和缩减系数,更新后的网格依然为较为均匀的结构化网格,对计算精度影响较小。

对于运动域具有多自由度和任意变形情况,该方法处理起来非常困难。

网格重生方法在整个网格更新区域内依据设定的最大和最小网格尺寸判断需要进行网格重生的网格,并依据设置的更新频率进行网格重生处理。

该方法适用于非结构化网格,能够较好的应用于任意变形的计算区域处理。

二、更新域设置更新域设置是动网格设置中的一项重要工作,最常用的设置是刚体运动域和变形域,这里针对这两种域的设置注意事项和技巧作一简单介绍。

1、域动网格一般来讲,设置为刚体运动域的区域一般为壁面类边界,通过设置固壁的运动,模拟计算域内物体的运动。

由于固壁边界有时形状较为复杂,壁面附近网格尺度与周围网格尺度存在较大差别,网格更新时变形较大。

在这种情况下,可以设置一个包含固壁运动边界的计算域,通过该计算域的整体运动模拟域内物体的运动,在有的地方将这种方法称为域动网格法。

在域动网格法中,需要设置包含运动物体的内部计算域、内部计算域界面均为刚体运动域。

如下图所示。

2、动态分层法中的分界面在应用动态分层网格更新方法时,当分层界面在计算域内部时,需要采用Split interface(这里称分界面)将运动域运动范围与固定计算域区分开来,以保证动态分层网格处理(如果运动域网格与固定域网格没有分界面,动态分层无法执行)。

Fluent动网格系列篇

Fluent动网格系列篇

不一样那就要另外计算了。 3)这里首先,你已经会怎么会使用fluent计算颗粒在流场中 的运动轨迹了,然后,你跟踪某一个颗粒,观察这个颗粒是 否到达壁面,然后用plot看是否能输出这个颗粒的运动轨迹 ,最后可以根据运动轨迹,确定你需要的坐标位置的速度分
布。
4)关于碰撞角度,这个就困难了,再思考,能否借用fluent 里面现有的参数进行计算。 个人的看法,仅供交流,如有不妥,请多包涵。
7.Fluent软件知多少 Fluent软件经典问题汇总
8.FLUENT动网格专题讨论
9.FLUENT News—Dynamic Mesh.pdf
பைடு நூலகம்10.包含运动边界的多体非定常流场数值模拟方法研究
气温度么?希望大家帮忙解惑,这个问题困扰我好久了
A:这个是不是只设好壁面初始温度,选好壁面材料参数,模 型里都有默认的导热系数吧。如果考虑室外空气对流的影响 ,我觉得就把壁面做出来,把室外的壁面作为模型边界。输
入温度和传热系数属于传热学的第三类边界条件,这样应该
就清楚了不是,温度就是室外空气的温度,或者说是自由流 体的温度对流换热系数指的是壁面和外面的自由流体发生对 流换热时,那个对流换热系数,用这个条件的时候,要输入 壁面的厚度,其实就是间接地算了一次热传导。
A:不同初始化条件下,每次迭代的截断误差可能不同,致使
最终的结果存在不一致性,但一般的话,只要误差没有超过
5%,都还是可以接受的。迭代了多少次?如果迭代次数过少 会进入伪收敛。收敛的标准不仅仅是残差,还要看迭代次数 以及守恒量守恒等指标。
8.急求fluent第二类边界条件的UDF:边界条件如下 u为x方向速度分量,我用的是速度入口,和压力出口,上述 边界条件应该如何UDF?

动网格2

动网格2

本文摘自“工程流体网论坛”/dvbbs/dispbbs.asp?boardid=61&id=1396题记:在学习使用Fluent的时候,有不少朋友需要使用动网格模型(Dynamic Mesh Model),因此,本版推出这个专题,进行大讨论,使大家在使用动网格时尽量少走弯路,更快更好地掌握;也欢迎使用过的版友积极参与讨论指导,谢谢!该专题主要包括以下的主要内容:§一、动网格的相关知识介绍;§二、以NACA0012翼型俯仰振荡实例进行讲解动网格的应用过程;§一、动网格的相关知识介绍有关动网格基础方面的东西,请具体参考FLUENT User’s Guide或FLUENT全攻略的相关章节,这里只给出一些提要性的知识要点。

1、简介动网格模型可以用来模拟流场形状由于边界运动而随时间改变的问题。

边界的运动形式可以是预先定义的运动,即可以在计算前指定其速度或角速度;也可以是预先未做定义的运动,即边界的运动要由前一步的计算结果决定。

网格的更新过程由FLUENT 根据每个迭代步中边界的变化情况自动完成。

在使用动网格模型时,必须首先定义初始网格、边界运动的方式并指定参予运动的区域。

可以用边界型函数或者UDF 定义边界的运动方式。

FLUENT 要求将运动的描述定义在网格面或网格区域上。

如果流场中包含运动与不运动两种区域,则需要将它们组合在初始网格中以对它们进行识别。

那些由于周围区域运动而发生变形的区域必须被组合到各自的初始网格区域中。

不同区域之间的网格不必是正则的,可以在模型设置中用FLUENT 软件提供的非正则或者滑动界面功能将各区域连接起来。

注:一般来讲,在Fluent中使用动网格,基本上都要使用到UDF,所以你最好具备一定的C语言编程基础。

2、动网格更新方法动网格计算中网格的动态变化过程可以用三种模型进行计算,即弹簧近似光滑模型(spring-based smoothing)、动态分层模型(dynamic layering)和局部重划模型(local remeshing)。

Fluent动网格系列篇

Fluent动网格系列篇

A:求解uds不,求解选specified flux就行了。一般来说速度
的第二类边界条件不用特别设置吧
Q:边界条件设置UDS菜单的中,编号为0的标量方程应该是自 定义的第一个标量方程还是动量方程?动量方程的flux在哪 里设置呢?如果需要求解一个自定义的标量方程,那么第二 类边界条件如何编写UDF?还有一个问题,flux给定的是对x 的偏导还是对y的偏导?
散,各位有木有碰到这种情况的?
A:VOF法比较容易发散,且引起发散的原因很多。 1.调小点时间步长、松弛因子。 2、检查求解格式 3、检查网格
4、检查边界条件
2.Fluent风扇用fan模型计算知道PQ曲线 :大家好,在fluent, 没有风扇的结构尺寸,但是厂家给了风扇的PQ曲线,想利用 fluent的Fan模型,设置了PQ曲线,但是计算的流量为0之类
到边界运动的流体力学的问题都可以解决。
咨讯: 1.FLUENT动网格系列:公转&自转
2.FLUENT动网格系列:System Coupling流固耦合
3.FLUENT动网格系列:区域运动
问答:
1.使用vof功能时,为什么经常会发散?无论是结构网格还是非
结构网格,使用vof功能时,基于压力的求解器下,很容易发
却。我在 Gambit中已经把网格划分完毕,先划十节圆柱形电
池,然后通过布尔操作把电池和风扇减去,最后划分剩下的 部分。由于电池在充放电时需要发热,所以需要 给电池加载 生热率,我以前用ANSYS可以直接添加生热率,但是不知道 Fluent该如何处理,网上有人说使用UDF,但是大约看了一下 UDF的介绍,也还不太清楚。有哪位.pdf 网格与CFD求解精度的关系,Fluent公司工程师崔凯的文章。 曾经想整理出版,但是他自己找不到原稿了,翻箱底我竟然 找到了,哈哈哈,分享给需要者。

【ANSYS Fluent培训】15-动网格分析

【ANSYS Fluent培训】15-动网格分析
什么是动网格 (DM) 模型? FLUENT 要求将运动的描述定义在网格面或网格区域上。 如果流场中包含运动与不运动两种区域,则需要将它们组合在 初始网格中以对它们进行识别。 那些由于周围区域运动而发生变形的区域必须被组合到各自的 初始网格区域中。 不同区域之间的网格不必是正则的,可以在模型设置中用 FLUENT软件提供的非正则或者滑动界面功能将各区域连接起 来。
性 表面运动表现出CFD计算中的压力和反作用力 重力和其它力可以加入力的平衡
3.动网格更新方法
Smoothing (弹性光顺) Local Remeshing (几何重构) Layering (铺层法) 混合使用
3.动网格更新方法
Smoothing (弹性光顺)
网格的移动就像相连的弹簧,或者是海绵 连通性并没有改变 当使用独立网格形式时,受相关最小变形的限
Split Factor(分割因子)
Collapse Factor(合并因子)
式中 h min为单元的最小高度,h0 为理想单元高度, a s 为层的 分割因子,在满足上述条件的情况下,就可以对网格单元进行分 割。 式中 a c 为合并因子,在紧邻动边界的网格层高度满足这个条件 时,则将这一层网格与外面一层网格相合并。
弹性系数等于1 时
3.动网格更新方法
Boundary Node Relaxation(边界点松弛因子) 边界点松弛因子用于控制动边界上网格点的移动。当这个值为零时,边界节
点不发生移动;在这个值为1 时,则边界节点的移动计算中不采用松弛格式。在 大多数情况下,这个值应该取为0 到1 之间的一个值,以保证边界节点以合适的 移动量发生移动 Convergence Tolerance(收敛判据) 收敛判据就是网格节点移动计算中,迭代计算的判据 Number of Iterations(迭代次数) 迭代次数是指网格节点移动计算的最大迭代次数

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)。

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)。

Fluent理论手册3—滑移网格及动网格理论

Fluent理论手册3—滑移网格及动网格理论

− 转捩模型
4.7:SST 转捩模型 4.8: − 模型
4.9:雷诺应力模型(RSM) 4.10:分离涡模型(DES) 4.11:大涡模拟模型(LES) 4.12:壁面边界湍流流动的近壁处理
更多关于 ANSYS FLUENT 中湍流模拟的资料, 可以查看用户手册第 12 章: 湍流模拟。
4.1 简介
例如仅有转子作用时如图态近似感兴时必须采动参考系问题也就是说周瞬态类型包子使用旋图322兴趣则可以31采用周期包括旋转323以使32要在位置要使32直线滑移网滑移网格在计算开始一个计算区成网格分在计算中图324分界面上使用瞬态分网格分网格交界线327图322转子网格技术格技术使用两始前将网格文域与其相邻分界的形式一个计算及325上网格并不需分析
湍流流动通过速度场波动进行表征。这些脉动混合诸于动量、能量及组分浓 度等标量方程, 引起传输量的脉动。 由于这些脉动存在于小尺度, 且频率非常高, 因此对其进行直接模拟非常消耗计算资源。
37
图 3.2. .8 3D 圆锥网格交界面 面 对于轴向转子/定子结构,转动 动及静止部 部分对齐于轴 轴线,分界 界面可能为平 平面 形。此面为 为垂直于沿着 着静子至转 转子的旋转轴 轴向的横截 截面。 扇形
33
图 3.2.9 9 3D 平面扇 扇形网格界面 面
3.2.3 滑移网 网格概念
如 3.2 节: :滑移网格 格理论中所讨 讨论,滑移 移网格模型允 允许相邻网 网格相对于其 其他 网格 格滑动。在这 这种情况下 下,网格面不 不需要在网 网格分界面上 上对齐。这 这种条件需要 要对 穿过 过两个非保 保角区域分界 界面的通量 量进行计算。 更多的关于 于 ANSYS FLUENT 中非 中 保角 角界面信息,查看用户 户手册 6.4 节 节:非保角 角网格。

FLUENT动网格教程

FLUENT动网格教程

F L U E N T动网格教程(共17页) -本页仅作为预览文档封面,使用时请删除本页-FLUENT动网格教程摘自&id=1396题记:在学习使用Fluent的时候,有不少朋友需要使用动网格模型(Dynamic Mes h Model),因此,本版推出这个专题,进行大讨论,使大家在使用动网格时尽量少走弯路,更快更好地掌握;也欢迎使用过的版友积极参与讨论指导,谢谢!。

该专题主要包括以下的主要内容:§一、动网格的相关知识介绍;§二、以NACA0012翼型俯仰振荡实例进行讲解动网格的应用过程;§三、与动网格应用有关的参考文献;§四、使用动网格进行计算的一些例子。

§一、动网格的相关知识介绍有关动网格基础方面的东西,请具体参考FLUENT User’s Guide或FLUENT全攻略的相关章节,这里只给出一些提要性的知识要点。

1、简介动网格模型可以用来模拟流场形状由于边界运动而随时间改变的问题。

边界的运动形式可以是预先定义的运动,即可以在计算前指定其速度或角速度;也可以是预先未做定义的运动,即边界的运动要由前一步的计算结果决定。

网格的更新过程由FLU ENT 根据每个迭代步中边界的变化情况自动完成。

在使用动网格模型时,必须首先定义初始网格、边界运动的方式并指定参予运动的区域。

可以用边界型函数或者UDF定义边界的运动方式。

FLUENT 要求将运动的描述定义在网格面或网格区域上。

如果流场中包含运动与不运动两种区域,则需要将它们组合在初始网格中以对它们进行识别。

那些由于周围区域运动而发生变形的区域必须被组合到各自的初始网格区域中。

不同区域之间的网格不必是正则的,可以在模型设置中用FLUENT软件提供的非正则或者滑动界面功能将各区域连接起来。

注:一般来讲,在Fluent中使用动网格,基本上都要使用到UDF,所以你最好具备一定的C语言编程基础。

2、动网格更新方法动网格计算中网格的动态变化过程可以用三种模型进行计算,即弹簧近似光滑模型(spring-based smoothing)、动态分层模型(dynamic layering)局部重划模型(local remeshing)1)弹簧近似光滑模型原则上弹簧光顺模型可以用于任何一种网格体系,但是在非四面体网格区域(二维非三角形),最好在满足下列条件时使用弹簧光顺方法:(1)移动为单方向。

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)。

FLUENT动网格技术简介

FLUENT动网格技术简介

FLUENT动网格简介在固体有限元计算中,网格运动实非什么稀奇事儿。

而且在绝多数固体计算的基本物理量是网格的节点位移,所以,固体计算中,网格节点运动是对的,没有运动反而不正常了。

也可以这么说:正因为计算域内部节点间的相对运动,才导致了内应力的产生。

流体计算与固体完全不同。

其根源在于它们使用的网格类型不同。

当前固体有限元计算采用的是拉格朗日网格,而流体计算则大多数采用的欧拉网格。

如果说把拉格朗日网格中的节点点看作是真实世界的物质原子的话,那么欧拉网格的节点则好比是真实世界中的一个个传感器,它们总是呆在相同的位置,真实的记录着各自位置上的物理量。

正常情况下,欧拉网格系统是这样的:计算域和节点保持位置不变,发生变化的是物理量,网格节点就像一个个布置在计算域中的传感器,记录该位置上的物理量。

这其实是由流体力学研究方法所决定的。

宏观与微观的差异决定了固体力学计算采用拉格朗日网格,流体计算采用欧拉网格。

关于这部分的详细解说,可以参阅任何一本计算流体动力学书籍。

世界是公平的。

有利必有弊。

朗格朗日网格适合计算节点位移,然而对于过大的网格变形却难以处理。

欧拉网格生来可以处理大变形(因为节点不动),然而对于对于节点运动的处理,则是其直接软肋。

然而很不幸的是,现实生活中有太多网格边界运动的实例。

如汽车发动机中的气缸运动、阀门开启与关闭、机翼的运动、飞机投弹等等等等举不胜举。

计算流体动力学计算的基本物理量通常为:速度、温度、压力、组分。

并不计算网格节点位移。

因此要让网格产生运动,通常给节点施加的物理约束是速度。

CFD中的动网格大体分为两类:(1)显式规定的网格节点速度。

配合瞬态时间,即可很方便的得出位移。

当然一些求解器(如FLUENT)也支持稳态动网格,这时候可以直接指定节点位移。

(2)网格节点速度是通过求解得到的。

如6DOF模型基本上都属于此类。

用户将力换算成加速度,然后将其积分成速度。

对于第一类动网格问题,在fluent中通常可以使用profile与UDF进行网格设置,通过规定节点或区域的速度、角速度或位移等方式来显式确定网格的运动,通常大部分的动网格问题都归于此类。

1-1Fluent——网格概述

1-1Fluent——网格概述
EquiAngle Skew)来评价网格质量
max e e min max , 180 e e
max min
* max = largest angle in face or cell * min = smallest angle in face or cell * e = angle for equiangular face or cell
*网格分类
*
结构网格
网格系统中结点 排列有序,邻点间 的关系明确。
贴体网格
把物理平面上的不规则区域变换成计算平面上的规则区域
*
非结构网格
网格系统中节点的位置
无法用一个固定的法则予以
有序地命名。
优 结 构 网 格



1.可以方便准确地处理边界条件 2.计算精度、效率高 3.可以采用许多高效隐式算法和 多重网格法 1.适合于复杂区域的网格划分,特 别对奇性点的处理很简单 2.其随机的数据结构更易于作网格 自适应,以便更好地捕获流场的 物理特性
Quad/ Tri
Type的组合情况
Tri
Scheme type
Map Submap Pave TriPrimitive
Map Pave Wedge
Pave

Quad: Map

Quad: Submap

Quad: Tri-Primitive

Quad: Pave
• Quad/Tri: Map • Quad/Tri: Pave • Quad/Tri: Wedge • Tri: Pave
*
当存在二义性情况时,Gambit会默认使用混合网格 (Tet/Hybrid)和TGrid规则

FLUENT动网格教程

FLUENT动网格教程

FLUENT动网格教程摘自/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语言编程基础。

2、动网格更新方法动网格计算中网格的动态变化过程可以用三种模型进行计算,即弹簧近似光滑模型(spring-based smoothing)、动态分层模型(dynamic layering)局部重划模型(local remeshing)1)弹簧近似光滑模型原则上弹簧光顺模型可以用于任何一种网格体系,但是在非四面体网格区域(二维非三角形),最好在满足下列条件时使用弹簧光顺方法:(1)移动为单方向。

Fluent动网格

Fluent动网格

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) ; }上面这段代码就是设置x轴方向的速度为30米每秒(UDF默认是SI单位制)。

Fluent动网格【3】:DEFINE_CG_MOTION宏

Fluent动网格【3】:DEFINE_CG_MOTION宏

Fluent动⽹格【3】:DEFINE_CG_MOTION宏除了利⽤Profile进⾏运动指定之外,Fluent中还可以使⽤UDF宏来指定部件的运动。

其中⽤于运动指定的宏主要有三个:DEFINE_CG_MOTIONDEFINE_GEOMDEFINE_GRID_MOTION今天主要看第⼀个UDF宏DEFINE_CG_MOTION。

⽤途DEFINE_CG_MOTION宏主要⽤于描述刚体的运动。

所谓“刚体”,指的是在运动过程中部件⼏何形状不会发⽣任何改变,只是其质⼼位置发⽣改变。

在定义刚体的运动时,通常以速度⽅式进⾏显式定义。

形式DEFINE_CG_MOTION宏的结构很简单。

DEFINE_CG_MOTION(name,dt,vel,omega,time,dtime)其中:name:为宏的名称,可以随意定义dt:⼀个指针Dynamic_Thread *dt,存储动⽹格属性,通常不需要⽤户⼲预。

vel:平动速度,为⼀个数组,其中vel[0]为x⽅向速度,vel[1]为y⽅向速度,vel[2]为z⽅向速度。

omega:转动速度,omega[0]为x⽅向⾓速度,omega[1]为y⽅向⾓速度,omega[2]为z⽅向⾓速度。

time:当前时间。

dtime:时间步长。

实例实例1:利⽤DEFINE_CG_MOTION宏定义速度:u x=2sin(3t)可以写成:#include "udf.h"DEFINE_CG_MOTION(velocity,dt,vel,omega,time,dtime){vel[0] = 2* sin(3*time);}很简单,对不对?再来个复杂点的例⼦。

实例2:已知作⽤在部件上的⼒F,计算部件在⼒F作⽤下的运动。

可以采⽤⽜顿第⼆定律:∫t t0dv=∫t t(F/m)dt则速度可写为:v t=v t−Δt+(F/m)Δt 可写UDF宏为:/************************************************************* 1-degree of freedom equation of motion (x-direction)* compiled UDF************************************************************/#include "udf.h"static real v_prev = 0.0;static real time_prev = 0.0;DEFINE_CG_MOTION(piston,dt,vel,omega,time,dtime){Thread *t;face_t f;real NV_VEC(A);real force_x, dv;/* reset velocities */NV_S(vel, =, 0.0);NV_S(omega, =, 0.0);if (!Data_Valid_P())return;/* get the thread pointer for which this motion is defined */t = DT_THREAD(dt);/* compute pressure force on body by looping through all faces */force_x = 0.0;begin_f_loop(f,t){F_AREA(A,f,t);force_x += F_P(f,t) * A[0];}end_f_loop(f,t)/* compute change in velocity, dv = F*dt/mass */dv = dtime * force_x / 50.0;/* motion UDFs can be called multiple times and should not causefalse velocity updates */if (time > (time_prev + EPSILON)){v_prev += dv;time_prev = time;}Message("time = %f, x_vel = %f, x_force = %f\n", time, v_prev, force_x); /* set x-component of velocity */vel[0] = v_prev;}Processing math: 100%。

Fluent动网格全攻略

Fluent动网格全攻略

FLUENT6.1全攻略图10-16 转子定子模型的静压等值线图在显示速度矢量时,同样有绝对速度和相对速度两种形式。

另外需要注意的是,后处理过程不能在交界区中的壁面、内部、周期等类型的边界上建立数据显示面(surface),但是可以在交界面上建立数据显示面,但结果将是单边的,就是只显示交界面一侧的结果。

而且在跨越交接面时,等值线中可能会有细微的不连续。

在画三维填充等值线时,图形中可能会出现一些小缝,但是这些缝只是图形显示问题,与解的连续性无关。

10.6 动网格模型10.6.1 简介动网格模型可以用来模拟流场形状由于边界运动而随时间改变的问题。

边界的运动形式可以是预先定义的运动,即可以在计算前指定其速度或角速度;也可以是预先未做定义的运动,即边界的运动要由前一步的计算结果决定。

网格的更新过程由FLUENT根据每个迭代步中边界的变化情况自动完成。

在使用移动网格模型时,必须首先定义初始网格、边界运动的方式并指定参予运动的区域。

可以用边界型函数或者UDF定义边界的运动方式。

FLUENT要求将运动的描述定义在网格面或网格区域上。

如果流场中包含运动与不运动两种区域,则需要将它们组合在初始网格中以对它们进行识别。

那些由于周围区域运动而发生变形的区域必须被组合到各自的初始网格区域中。

不同区域之间的网格不必是正则21FLUENT6.1全攻略22的,可以在模型设置中用FLUENT 软件提供的非正则或者滑动界面功能将各区域连接起来。

10.6.2 动网格守恒方程在任意一个控制体中,广义标量Φ的积分守恒方程为:()∫∫∫∫∂∂+⋅∇=⋅−+V V Φg V VdV S A d ΦΓA d u u ρΦV ρΦd dt d G G G G (10-7) 式中ρ为流体密度,u G 为速度向量,g u G 移动网格的网格速度,Γ为扩散系数,ΦS 为源项,V ∂代表控制体V 的边界。

方程(10-7)中的时间导数项,可以用一阶后向差分格式写成:()()t V V dV dt d nn V ΔΦ−Φ=Φ+∫ρρρ1 (10-8) 式中n 和n+1代表不同的时间层。

fluent 动网格

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。

15-Fluent_动网格讲解

15-Fluent_动网格讲解
运动区域
Introductory FLUENT Training
© 2007 ANSYS, Inc. All rights reserved.
ANSYS, Inc. Proprietary
Introductory FLUENT Notes FLUENT v6.3 Aug 2008

11-6
ANSYS, Inc. Proprietary
Introductory FLUENT Notes FLUENT v6.3 Aug 2008

建立SRF模型介绍


SRF一般针对单流域,只能是绕着某个特定的坐标点,以恒定的 速度进行旋转。 为什么使用旋转坐标系?


两种动域模型建立方法:

如果域在移动时并没有形状上的改变 (刚性运动), 我们可以在运动坐 标系下解算流体流动方程。

动量方程中可以添加附加的加速度项 动坐标系下,解算的问题变成了定常问题 可以和固定域穿过分界面相结合

如果域在移动的同时还会有形状的改变 (变形), 我们可以用动网格 (DM) 技术解算方程
baffle
rotor
Correct
Wrong!
Wall with baffles not a surface of revolution!
© 2007 ANSYS, Inc. All rights reserved.
11-8
ANSYS, Inc. Proprietary
Introductory FLUENT Notes FLUENT v6.3 Aug 2008
© 2007 ANSYS, Inc. All rights reserved.
11-7
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

FLUENT动网格简介在固体有限元计算中,网格运动实非什么稀奇事儿。

而且在绝多数固体计算的基本物理量是网格的节点位移,所以,固体计算中,网格节点运动是对的,没有运动反而不正常了。

也可以这么说:正因为计算域内部节点间的相对运动,才导致了内应力的产生。

流体计算与固体完全不同。

其根源在于它们使用的网格类型不同。

当前固体有限元计算采用的是拉格朗日网格,而流体计算则大多数采用的欧拉网格。

如果说把拉格朗日网格中的节点点看作是真实世界的物质原子的话,那么欧拉网格的节点则好比是真实世界中的一个个传感器,它们总是呆在相同的位置,真实的记录着各自位置上的物理量。

正常情况下,欧拉网格系统是这样的:计算域和节点保持位置不变,发生变化的是物理量,网格节点就像一个个布置在计算域中的传感器,记录该位置上的物理量。

这其实是由流体力学研究方法所决定的。

宏观与微观的差异决定了固体力学计算采用拉格朗日网格,流体计算采用欧拉网格。

关于这部分的详细解说,可以参阅任何一本计算流体动力学书籍。

世界是公平的。

有利必有弊。

朗格朗日网格适合计算节点位移,然而对于过大的网格变形却难以处理。

欧拉网格生来可以处理大变形(因为节点不动),然而对于对于节点运动的处理,则是其直接软肋。

然而很不幸的是,现实生活中有太多网格边界运动的实例。

如汽车发动机中的气缸运动、阀门开启与关闭、机翼的运动、飞机投弹等等等等举不胜举。

计算流体动力学计算的基本物理量通常为:速度、温度、压力、组分。

并不计算网格节点位移。

因此要让网格产生运动,通常给节点施加的物理约束是速度。

CFD中的动网格大体分为两类:(1)显式规定的网格节点速度。

配合瞬态时间,即可很方便的得出位移。

当然一些求解器(如FLUENT)也支持稳态动网格,这时候可以直接指定节点位移。

(2)网格节点速度是通过求解得到的。

如6DOF模型基本上都属于此类。

用户将力换算成加速度,然后将其积分成速度。

对于第一类动网格问题,在fluent中通常可以使用profile与UDF进行网格设置,通过规定节点或区域的速度、角速度或位移等方式来显式确定网格的运动,通常大部分的动网格问题都归于此类。

而对于第二类问题,通常涉及到力的计算,力在流体中通常是对压力进行积分而来。

将力转换为速度或位移,一般涉及到加速度、转动惯量等物理量的计算。

在fluent中,可以使用6DOF模型进行处理,在CFX中,可以使用刚体模型(13.0以上版本才有)。

在FLUENT中,动网格涉及的内容包括:(1)运动的定义。

主要是PROFILE文件与UDF中的动网格宏。

(2)网格更新。

FLUENT中关于网格更新方法有三种:网格光顺、动态层、网格重构。

需要详细了解这些网格更新方法的运作机理,每个参数所代表的具体含义及设置方法,每种方法的适用范围。

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

在避免负网格的同时,努力提高运动更新后的网格质量。

FLUENT动网格之弹簧光顺与扩散光顺FLUENT中的网格光顺(smoothing)主要采用两种方法:弹簧光顺与扩散光顺。

其中弹簧光顺包含有:弹簧光顺、边界层光顺、拉普拉斯光顺。

扩散光顺分为:基于壁面距离的扩散光顺与基于单元体积的扩散光顺。

一、弹簧/拉普拉斯/边界层光顺1、弹簧光顺需要设置的参数主要有四个参数需要设置:Spring Constant Factor(弹簧常数因子),Boundary Node Relaxation(边界节点松弛),Convergence Tolerance(收敛精度),Number of Iterations(迭代次数)。

如图中橙色框选部分。

2、各参数作用弹簧常数因子:取值范围[0,1]。

可以通过该值来调整弹簧刚度的大小。

该值为0表示弹簧间没有阻尼,边界运动会影响到更多的内部节点。

该参数的默认值为1。

在实际应用中,若发现运动边界附近网格堆积严重,可适当调小此参数,将位移扩散出去。

边界节点松弛:网格位置更新时使用的参数。

取值范围[0,1]。

0表示没有进行网格节点保持不变,1表示不使用松弛处理。

该参数默认为1。

调整该参数可以控制每次网格更新的节点位置。

通常使用默认值即可。

迭代精度:网格节点位移值是通过求解平衡方程得到的。

本参数即控制方程的求解精度。

一般保持默认值。

迭代次数:与迭代精度作用相同。

用于平衡方程的求解控制。

迭代方程如下。

通常该参数保持默认即可。

3、弹簧光顺方法的适应性(译自用户手册)(1)适用于任何变形或运动的单元或面域。

更适用于四面体/三角形网格(2)在非四面体/三角形网格域中,建议在以下一些情况下使用弹簧光顺方法:(a)边界运动在某一方向上具有明显优势(b)运动主要沿运动边界的法向方向。

其它的非四边形/非四面体网格域(尤其是多面体网格域),建议使用扩散光顺方法。

注意:默认情况下,在非四面体/四边形网格上,弹簧光顺方法是关闭的。

用户可以使用TUI命令激活:define > dynamic-mesh > controls > smoothing-paramters > spring-on-all-shapes?二、扩散光顺1、扩散光顺扩散光顺是通过求解扩散方程来获得网格节点的位移的。

只有一个参数需要设置:扩散参数α。

扩散系数是通过扩散参数得到的。

如下两公式求得扩散系数γ。

与,式中的d为壁面正则距离,v为正则体积。

用户可以通过TUI命令设置迭代次数与收敛精度。

通常很少进行设置。

define > dynamic-mesh > controls > smoothing-parameters > max-iter define > dynamic-mesh > controls > smoothing-parameters >relative-convergence-tolerance2、基于壁面距离的网格扩散光顺基于壁面距离的扩散光顺允许用户将边界网格运动扩散至内部节点的规律定义为壁面距离的函数。

减少远离运动边界的扩散能够使这些区域吸收更多的网格运动,同时更好的保持运动壁面附近的网格质量。

用户可以通过调整diffusion parameter来控制网格扩散,该参数的取值范围[0,2]。

该参数默认为0,意味着扩散参数为1,也即整个计算域采用相同程度的扩散。

扩散参数越大,则更多的保持近壁面网格,远离运动边界的位置将吸收更多的网格运动。

对于边界旋转运动,通常将扩散参数设置为1.5默认情况下,fluent使用标准壁面距离。

该方法使用最近的壁面边界进行正则化。

请注意此方法是不包括其它边界类型(如inlet,outlet,symmetry,周期边界等),只使用wall壁面边界。

用户可以使用"generalized“壁面距离,该方法使用一切未声明为变形的边界,而不管边界的类型。

两种方法均使用所有变形网格区域中发现的最大距离进行正则化。

用户可以使用TUI命令设置fluent使用广义边界:define>dynamic-mesh>controls>smoothing-parameters>boundary-distanc e-method3、基于单元体积的网格扩散光顺•允许用户将边界运动扩散至内部区域定义为单元尺寸的函数。

在大网格上减小扩散助于使这些网格吸收更多的网格变形,能更好的保持小体积单元的网格质量。

•与基于壁面距离的网格扩散相同,用户也可通过调整扩散参数来控制扩散系数。

默认扩散参数为0表示采用统一的扩散。

更大的扩散参数将会使更大的体积的网格吸收更多的变形。

•扩散参数取值范围:[0,2]4、扩散光顺方法的适应性•能够应用于任何类型的运动或变形网格。

•扩散光顺方法比弹簧光顺计算开销要大(隐式求解扩散方程。

而弹簧光顺是显式计算节点位移),但是能够得到较好的网格质量(特别是对于非四面体/非三角形网格及多面体网格)。

•更适合于平移运动。

•扩散光顺方法与边界层光顺方法及面区域重构方法不兼容。

FLUENT动网格之几何重构对于三角形或四面体风格区域,通常都会使用到弹簧光顺方法。

然而当边界位移远大于局部网格尺寸时,网格质量会下降甚至会出现退化的网格单元。

这可能会使网格实效(出现负体积网格),并因此导致计算收敛问题。

为什么弹簧光顺方法会导致此类问题?主要原因在于:弹簧光顺方法并不将网格质量作为网格更新的判断因素,而只是单纯的将边界运动作为参数扩散至计算域中。

为了解决此问题,ANSYS FLUENT将这些超出网格偏斜度或尺寸标准的网格收集起来,并在这些网格或面上局部进行网格重构。

若新网格单元质量达到网格质量标准,则进行网格重构,否则,新网格将会被丢弃。

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

网格重构方法适合于以下网格类型:(1)局部网格及局部面重构方法只对区域中的三角形及四面体网格有效。

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

(3)面域重构方法在2D中只用于三角形网格,在3D模型中只用于四面体网格。

并且在3D边界层中能够产生楔形/棱柱形网格。

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

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

网格重构方法主要包含以下几个参数:如下图所示。

(1)minimum length scale:最小网格尺寸,当网格尺寸小于该尺寸时,网格将会被合并。

(2)maximum length scale:最大网格尺寸。

当网格尺寸大于该尺寸时,网格将会分裂。

(3)maximum cell skewness:当网格歪斜度超出设定的尺寸时,网格会进行重构。

(4)maximum face skewness:该参数只在3D模型中有效,与单元歪斜度类似(5)size remeshing interval:设置网格重构间隔,通常时间步有关系。

FLUENT的动网格设置Fluent的动网格设置,主要是通过dynamic mesh面板进行设置。

动网格面板如下图所示。

主要包括两部分内容:(1)Mesh Methods (2) Dynamic Mesh Zones。

另外还包括网格域运动预览及网格运动预览。

整个动网格面板通过勾选Dynamic Mesh选项而激活。

1、Mesh Methods(网格更新方法)该部分主要用于网格或网格域在运动过程中,设置计算域中网格节点位置更新方法。

相关文档
最新文档