【小白的CFD之旅】22 好网格与坏网格
网格的作用如此重要,以至于小白纠结了很久。小白知道网格划分过程很大程度上受制于计算资源的限制,但小白还是不太明白,如果计算资源非常充足,不用顾忌资源限制的情况下,如何判断生成的网格好坏?如何确定自己生成的网格是否合乎要求?如何利用软件来判断网格是否满足要求?
在食堂的餐桌上,小白向小牛师兄询问这些问题。
“在我的眼中,网格和美女一样,只有漂亮的和不漂亮的区别,没有好与坏。”小牛师兄看着不远处一群饭都堵不住嘴巴在那叽叽喳喳的女生,慢悠悠的说。小牛师兄虽然学术搞得不错,可是快奔三的人仍然是光荣的单身狗一条,因此看到漂亮女生总能发表一些与众不同的看法。
“怎么说呢,对于网格好坏,我的做法是用肉眼观察,看着舒服的网格可能是好的,一眼看过去感觉不舒服的,肯定是有问题的不好的网格”。小牛师兄继续补充道。
“有没有科学点的判断方法呢?肉眼观察也太忽悠人了吧!”小白说。
网格疏密
“嘿嘿,的确忽悠了点,那我们就来说点儿正紧的。我们都知道,一般情况下好的网格要根据流场分布来进行布置,那么在流场计算之前就要预估物理量的分布。”小牛师兄补充道。
“都没计算,怎么判断流场分布呢?”小白问。
“在计算之前,需要根据流体力学理论判断流场分布,比如说流体流经障碍物的时候,在障碍物的上游及下游必定会出现较大的扰动,物理量变化极为剧烈,因此在这些区域需要布置更多的网格。”小牛师兄说。
“网格的疏密跟流场物理量梯度直接相关,那么哪些区域流场梯度大呢?”小白问。
“一般来说,这些区域流场梯度大:(1)障碍物上下游附近区域。(2)边界层区域。大梯度的区域都和边界扰动有关。”
“还有种情况需耍加密网格,那就是你需要提高某区域内计算精度时,此时需要提高此区域网格的密度。”
“说到网格疏密,就不得不提网格增长率。一套好的网格是有疏密分布的,那么在粗网格向密网格过渡时,存在一个增长率。CFD网格要求这个增长率不能太大,一般在1.1~1.3之间。”
网格形状
“除了网格疏密需要关注外,还需要关注网格形状,你觉得什么形状的网格是最好的?”小牛师兄问。
“我也不是很明确,很多资料上建议使用四边形和六面体,也有资料上说直接使用三角形和四面体,还有资料说要使用混合网格,也看到有资料说笛卡尔网格是一种发展趋势。众说纷纭,我都被搞迷糊了。”小白说道。
“先来说现在常用的网格形状。目前比较常用的网格形状主要有:三角形、四边形、四面体、六面体、五面体、三棱柱,有些求解器还支持多面体和六边形网格。”小牛师兄说道。
“这些形状是谁规定的呢?有没有球形和圆形的网格?”小白很好奇。
“网格的形状是由求解器决定的,或者更准确的说是由求解器的离散算法所决定。具体的以后有时间再具体探讨,今天要说的是:我们能够使用什么网格形状取决于求解器,像Fluent支持使用多面体网格,而CFX则不支持这种类型的网格。还有笛卡尔网格,很多EFD软件都支持,但支持此类型的CFD求解器并不多。当然如果是自己开发求解器的话,则完全可以开发支持任意形状网格的离散算法。”小牛师兄这样说。
“话虽然可以这样说,但实际上操作性并不强。因为选用网格类型需要考虑两个主要问题:(1)离散精度;(2)几何适应性。而这两方面却是相互矛盾的,某种网格离散精度高,其几何适应性往往不好。”
“再说点儿实际的,都在说四边形和六面体网格好,你觉得它们为什么好?”小牛师兄问。
“我也说不好,是不是离散精度比较高?好多复杂的几何都很难生成六面体网格,我猜它们的几何适应性肯定不会太好。”小白说。
“是的,四边形和六面体网格的离散精度好。这主要得益于其正交性好及相邻结点数较多。具体来讲,完美的四边形网格,其网格边具有完美的正交性(夹角90度),而完美的三角形网格夹角为60度,正交性会影响插值精度和计算收敛性。再说相邻结点数,四边形网格拥有四个相邻结点,六面体网格有六个相邻结点,而三角形网格及四面体网格相邻节点数分别为3个和4个。理论上讲,相邻节点数越多,插值精度越高。因此通常在网格数量相当的情况下,四边形和六面体网格拥有比三角形和四面体网格更高的精度。”小牛师兄解释道。
“有利就有弊,四边形和六面体网格也有其不利的方面,最典型的是几何适应性。对于复杂的几何模型,生成四边形网格或六面体网格常常需要花费极大的时间开销,有时甚至无法生成。”
“还有一种情况不适合使用四边形和六面体网格,那就是当流动与网格流向不一致的时候,此时使用四边形或六面体网格可能会造成较大的伪扩散,严重影响计算精度”
“实际上对于复杂的工程模型,往往同时存在多种类型的计算网格,常见的做法是:分割计算域几何,在简单区域或精度要求高的区域生成四边形或六面体网格,而在复杂区域或精度要求不高的区域生成三角形或四面体网格,不同类型网格之间采用五面体网格进行过度。”小牛师兄总结道。
其他的一些问题
“除了这些问题,划分网格的过程中还有什么其他的问题需要注意呢?”小白问。
“其实还有很多问题需要注意,比如边界层网格,这个我们后面再来探讨。”小牛师兄说。
“关于网格,你只需要记住一点就够了:漂亮的网格才是好网格!”
小白的总结
- 一套好的网格,一定是看起来赏心悦目的
- 好的网格,一定是疏密有间的,要根据流场分布来布置网格
- 四边形和六面体网格拥有好的计算精度和收敛性,但几何适应性不好,对于复杂的模型通常采用混合网格结构
郑重申明
- 本系列根据真实经历改编,如有雷同实属巧合,请勿人肉
- 转载请务必保证文字完整
对系列感兴趣的朋友可微信扫描下方二维码,关注微信公众号第一时间接收文章更新。
【小白的CFD之旅】22 好网格与坏网格的更多相关文章
- 【小白的CFD之旅】小结及预告
这是小白系列的索引,后续会继续更新. 已更新的部分 01 引子02 江小白03 老蓝04 任务05 补充基础06 流体力学基础07 CFD常识08 CFD速成之道09 初识FLUENT10 敲门实例1 ...
- 【小白的CFD之旅】13 敲门实例【续3】
接上文[小白的CFD之旅]12 敲门实例[续2] 4 Results4.1 计算监测图形4.2 Graphics4.2.1 壁面温度分布4.2.2 创建截面4.2.3 显示截面物理量4.2.4 Pat ...
- 【小白的CFD之旅】12 敲门实例【续2】
接上文[小白的CFD之旅]敲门实例[续] 主要内容 3 Solution3.1 Solution Methods3.2 Solution Controls3.3 Monitors3.4 Report ...
- 【小白的CFD之旅】11 敲门实例【续】
主要内容: 接上文[小白的CFD之旅]10 敲门实例 2.4 Materials设置2.5 Cell Zone Conditions2.6 Boundary Conditons2.7 Dynamic ...
- 【小白的CFD之旅】01 引子
小白的CFD之旅 写在前面 CFD是计算流体力学的英文简称,是计算机辅助工程(CAE)的主要分支,目前广泛应用与科学研究.工程设计中.这是一门综合了数学.计算机及流体力学的综合学科,涉及到众多的专业理 ...
- 《小白的CFD之旅》招募写手
<小白的CFD之旅>系列招募写手. 由于工作繁忙,<小白的CFD之旅>系列更新缓慢,现招募志愿者写手.这是一个分享平台,欢迎各位愿意分享自己CFD学习经历的朋友们. <小 ...
- 【小白的CFD之旅】19 来自计算网格的困惑
经过一年的忙碌,终于又到了寒假时间,小白又满状态复活了. 这一年小白学了很多的课程,但是一年下来,小白却感觉脑袋里没留下什么东西,貌似什么东西都在考完试的那一刹那全还回给老师了.这一年学习之余,小白仍 ...
- 【小白的CFD之旅】21 网格划分软件的选择
但是怎样才能获得流体计算网格呢?“工欲善其事必先利其器”,画网格该用什么器呢?小白决定找黄师姐请教一番. 小白找到黄师姐的时候,黄师姐正在电脑上忙着. “黄师姐,我发现网格划分软件有好多种,究竟哪种才 ...
- 【小白的CFD之旅】16 流程
那天听了小牛师兄关于CFD应用的四种境界的说法后,小白发现自己连第一种境界都算不上,自己对于CFD还只是停留在做了少数几个案例的基础上,可以说是对其一无所知.不过小白不是那种遇到挫折就退缩的人,他决定 ...
随机推荐
- DHCP 服务测试
DHCP三个端口: 服务端:UDP 67 客户端:UDP 68 DHCPv6 客户端:UDP 546,这是需要特别开启的 DHCP failover 服务,用来做双机热备的. 实验一.DHCP服务器基 ...
- Python是解释性语言吗? 直到看到有 python py、pyc、pyo、pyd 文件
py是源文件,pyc是源文件编译后的文件,pyo是源文件优化编译后的文件,pyd是其他语言写的python库 1. Python是一门解释型语言? Python是一门解释性语言,我就这样一直相信下去, ...
- Android游戏开发基本知识
Android游戏开发 手机游戏被业内人士称为继短信之后的又一座金矿.Android虽然基于Java,但是其虚拟机是基于寄存器的,速度得到了很大的提升,这为Android平台上开发游戏提供了坚强的后盾 ...
- 怎样查看SSL证书的有效期?自动续期是否生效?
前面一篇教程教大家如何能够把网站的 HTTPS 的 SSL 证书自动续期.料神米课的学员动手能力都很强,已经很多都成功把证书续期了.但怎么看证书续期是否成功了呢? 使用火狐 firefox 浏览器就可 ...
- uitableview 和UISearchBar 下拉提示结合使用
自定cell的代码 餐厅的实体和餐厅对应控件的frame #import <Foundation/Foundation.h> @class RestaurantFrame; @interf ...
- MATLAB 的 cell 大法(单元格数组)
MATLAB 的 cell,称单元格数组 or 元胞数组:使用频率特别高,甚至比 struct 结构体还高. MATLAB文档给出的 cell 官方定义: A cell array is a coll ...
- [项目实施失败讨论Case] “凭心而论,在这家公司很敬业的工作了3年多,老板最后给我下的评语,大家都看看吧,千万别和我走同一条路!”(摘自csdn)
[Case] “凭心而论,在这家公司很敬业的工作了3年多,老板最后给我下的评语,大家都看看吧,千万别和我走同一条路!”(摘自csdn) 原文:http://community.csdn.net/Exp ...
- ROS学习(五)—— 编译ROS Package
提前准备: 记得事先source你的环境配置(setup)文件,在Ubuntu中的操作指令如下. source /opt/ros/kinetic/setup.bash 一.使用catkin_make ...
- 技术的正宗与野路子 c#, AOP动态代理实现动态权限控制(一) 探索基于.NET下实现一句话木马之asmx篇 asp.net core 系列 9 环境(Development、Staging 、Production)
黄衫女子的武功似乎与周芷若乃是一路,飘忽灵动,变幻无方,但举手抬足之间却是正而不邪,如说周芷若形似鬼魅,那黄衫女子便是态拟神仙. 这段描写出自<倚天屠龙记>第三十八回. “九阴神抓”本是& ...
- jquery ajax context
function yflib_roomList(tpl) { var target = $(".roomList > li"); var _this = null; $(&q ...