经过一年的忙碌,终于又到了寒假时间,小白又满状态复活了。
这一年小白学了很多的课程,但是一年下来,小白却感觉脑袋里没留下什么东西,貌似什么东西都在考完试的那一刹那全还回给老师了。这一年学习之余,小白仍然坚持着做案例,做大量不同的案例,虽然有一些案例做起来并没有太大的作用,但是至少可以熟练软件操作过程。

最近小白对于网格产生了一些困惑,正巧的是中午在食堂吃饭的时候碰到了小牛师兄,这一学期忙着上课,有一阵子没见着小牛师兄了。
“嘿,师兄,好久不见了耶”,小白上去打招呼。
“是啊小白,最近忙些啥子呢?”小牛师兄的眼神永远那么犀利的盯着面前的那盘红烧肉。
“上课啊,考试啊,整天学这些基础理论也不知道后面用不用得到。唉呀妈呀终于结束了,终于可以安心做点事儿了。”小白很无奈的说。
“哈哈,这不是都学完了嘛,以后就会知道有没有用了。对了,最近还在学CFD么?老蓝还等着你接班呢,嘿嘿”。小牛师兄说。
“开什么玩笑哦,接班?接谁的班?我还没入门呢,就我学的那点儿假把式,估计还得半年,等研二了再说吧。”小白心里有点发虚。

“不开玩笑了,说真的,到底学怎样了?估计没那么多时间留给你学习了,最近有新的项目来了,急需人手,我建议你跟老蓝商量进组学习吧,这样比较快。”小牛师兄放下筷子说道。
“恩,其实软件操作、计算流程都掌握得差不多了,但是总觉得缺点什么,遇到新的问题也还是把握不住。就最近来说吧,就对于计算网格比较困惑,你说在计算的过程中,到底是网格质量重要还是网格数量重要?"小白问道。

“怎么会有这种问题呢,当然都重要啊”,小牛师兄说。
“那总有个优先级吧,比如说在为一个新的计算准备模型的时候,我是要优先考虑网格质量还是网格数量?虽然说很多时候网格数量多了网格质量也跟着变好,但是我那破电脑实在无法承受太多的计算网格,稍多一点就死机啊。那网格数量少了,计算结果还有用么?”小白问。

“其实很多时候,人们往往走入一个误区,他们认为网格数量多就意味着计算精度的提高。但其实并非是这样,对于变化梯度小的区域,你网格数量的增加对于计算精度的贡献其实并不明显,反而对于就计算时间的影响是显而易见的。而网格质量,则在很大程度上会影响计算的精度以及计算收敛过程,要知道收敛过程是直接影响计算时间的,我个人的观点,网格质量要比网格数量重要。高质量的计算网格,哪怕网格数量少点儿,但肯定不会影响计算趋势,但如果网格质量很差,则出现错误计算结果的概率可就比较大了。”小牛师兄说。

“嗯,懂了,在保证计算网格质量的基础上,再来根据计算机资源来考虑网格数量,对吧?”小白说。
“根骨不错呀,骚年”,小牛师兄笑道。

“那问题又来了,网格数量要到什么程度才算合适呢?比如说我要考虑这食堂的环境质量,要画多少网格才行呢?”小白接着问。
“这问题我没法回答你。首先,你没说你拥有的计算资源有多少。用笔记本和用巨型机,所能考虑的计算网格数量是很不一样的。其次,你没说你要考虑哪些问题。因为不同的物理模型和物理细节,对于网格的精密程度要求也是很不一样的。再次,你也没说你的计算时间有多少,一年的时间和一天的时间,所能接受的网格数量肯定有巨大的区别。但是我要说的是,在目前私人拥有的计算资源条件下,计算精度一般是与计算网格数量成正比的。也就是说,网格数量越多,计算精度越高。因此,如果计算时间充足,可以尽可能的提高网格数量。在工程上还有一种称之为”网格独立性“验证的说法,就是为了说明这一问题。”小牛师兄说。

“什么叫网格独立性?”小白很好奇的问。
“所谓的网格独立性,只是一个近似的说法,实际的数值计算,绝对不可能做到网格独立的。网格独立性的做法是这样的:做N套不同密度的计算网格,在相同的工况条件下进行计算,考虑相关物理量的变化率。当网格密度达到一定程度后,继续增加网格密度对于计算结果的影响非常小,此时可以认为计算网格数量的增加对于计算结果的影响可以忽略,在后续的计算过程中,采用计算结果不再发生变化位置的计算网格数量作为网格数量基准。其实说白了就是在计算精度与计算时间之间进行一个折中而已。而这里所说的计算结果不再发生变化,也取决于个人的判断,你觉得变化量在1%以内叫不变化,我也可以认为在5%以内叫不变化,自己确定,但是可以肯定的是,计算结果随着网格数量的增加肯定会有变化的。你想,计算结果怎么可能与网格数量无关嘛。"小牛师兄说。

“网格独立性验证要求我们的计算网格疏密对计算结果的影响在可以接受的范围之内,但是如果计算资源充足的话,的确可以再提高网格的数量以增加精度。但要记住的一点是:增加网格数量不一定能提高计算精度,但是高精度的计算结果一定来自于高密度的网格。说起来很拗口,你可以这样思考,影响计算结果精度的因素除了计算网格之外还有很多,比如计算模型,边界条件,初始条件,残差标准等等,因此网格数量的增加不一定就能够提高计算精度,但是如果网格数量过少,肯定得不到精确的计算结果。”

“那么问题来了,多少网格叫粗多少网格叫密呢?通常我们并不说某某模型需要多少网格,网格数量通常取决于你拥有的计算资源和时间资源。打个很简单的比方,比如你要设计某个产品,设计周期是一个月,你利用CFD来帮助进行设计,如果你每一个模型的计算时间需要一周,那时间资源肯定不够,你只能使用低密度的网格,每个计算时间在一天之内的网格模型来进行计算。或者你可以换用更高级的计算机,但一定要确保每个模型的计算时间不能超过一天。很简单的道理对不对。”

“还有个很容易被忽略的问题,那就是网格的分布。初学者划分的网格常常是均匀分布的,这其实是一种资源浪费。要记住的一点是只有梯度大的区域才需要高密度的网格。在流场计算过程中,只有一些物理量变化剧烈的场合才需要更精细的网格。因此在划分网格之前就需要对流体域内流动特征有一个初略的估计,在物理量梯度大的区域布置更加细密的网格,这是一个很重要的网格划分规则。”

小白的总结

  • 一般情况下,网格质量必须得到保证,否则会影响计算收敛过程,甚至导致错误的计算结果。
  • 在保证网格质量的前提下,根据计算资源来考虑网格数量
  • 网格独立性并非表示数值计算结果与计算网格数量无关,而只是在计算精度与计算网格数量之间的一个折衷
  • 增加网格数量不一定能提高计算精度,但是高精度的计算结果一定来自于高密度的网格
  • 梯度大的区域才需要划分更精细的网格,尺寸均匀的网格不一定是好的网格

【小白的CFD之旅】19 来自计算网格的困惑的更多相关文章

  1. 【小白的CFD之旅】20 计算区域的构建

    计算域是什么计算域如何创建常用的建模软件计算域几何的特殊之处具体的计算域提取方法小白总结 自从上次在食堂听了小牛师兄关于计算网格的一些问题后,小白决定在寒假期间好好的补习一下关于计算网格的划分内容.在 ...

  2. 【小白的CFD之旅】22 好网格与坏网格

    网格疏密网格形状其他的一些问题小白的总结郑重申明 网格的作用如此重要,以至于小白纠结了很久.小白知道网格划分过程很大程度上受制于计算资源的限制,但小白还是不太明白,如果计算资源非常充足,不用顾忌资源限 ...

  3. 【小白的CFD之旅】小结及预告

    这是小白系列的索引,后续会继续更新. 已更新的部分 01 引子02 江小白03 老蓝04 任务05 补充基础06 流体力学基础07 CFD常识08 CFD速成之道09 初识FLUENT10 敲门实例1 ...

  4. 【小白的CFD之旅】13 敲门实例【续3】

    接上文[小白的CFD之旅]12 敲门实例[续2] 4 Results4.1 计算监测图形4.2 Graphics4.2.1 壁面温度分布4.2.2 创建截面4.2.3 显示截面物理量4.2.4 Pat ...

  5. 【小白的CFD之旅】12 敲门实例【续2】

    接上文[小白的CFD之旅]敲门实例[续] 主要内容 3 Solution3.1 Solution Methods3.2 Solution Controls3.3 Monitors3.4 Report ...

  6. 【小白的CFD之旅】11 敲门实例【续】

    主要内容: 接上文[小白的CFD之旅]10 敲门实例 2.4 Materials设置2.5 Cell Zone Conditions2.6 Boundary Conditons2.7 Dynamic ...

  7. 《小白的CFD之旅》招募写手

    <小白的CFD之旅>系列招募写手. 由于工作繁忙,<小白的CFD之旅>系列更新缓慢,现招募志愿者写手.这是一个分享平台,欢迎各位愿意分享自己CFD学习经历的朋友们. <小 ...

  8. 【小白的CFD之旅】01 引子

    小白的CFD之旅 写在前面 CFD是计算流体力学的英文简称,是计算机辅助工程(CAE)的主要分支,目前广泛应用与科学研究.工程设计中.这是一门综合了数学.计算机及流体力学的综合学科,涉及到众多的专业理 ...

  9. 【小白的CFD之旅】16 流程

    那天听了小牛师兄关于CFD应用的四种境界的说法后,小白发现自己连第一种境界都算不上,自己对于CFD还只是停留在做了少数几个案例的基础上,可以说是对其一无所知.不过小白不是那种遇到挫折就退缩的人,他决定 ...

随机推荐

  1. Jenkins卸载方法(Windows/Linux/MacOS)

    注意: 命令行运行的war包或者安装包,都会在命令行上提示了配置文件文件夹.jenkins,卸载时,注意一定要把这些一起删除. 比如Windows下用war包部署的命令行信息如下: 查看原图   如上 ...

  2. 给X240换上了三键触摸板

    X240自带的触摸板非常不好用, 对于我这样的指点杆重度用户, 每次要按下整块板真的是太费力了, 而且在夜里声音很吵. 在淘宝上买了三键的X250的触摸板换上了. 这是购买的触摸板的型号 换的时候, ...

  3. python使用mysql数据库(转)

    参考地址 一,安装mysql 如果是windows 用户,mysql 的安装非常简单,直接下载安装文件,双击安装文件一步一步进行操作即可. Linux 下的安装可能会更加简单,除了下载安装包进行安装外 ...

  4. MessageListActivity has leaked IntentReceiver

    1. 在MessagelistActivity中出现has leaked IntentReceiver的异常.异常日志如下. 07-15 08:09:53.211: E/ActivityThread( ...

  5. (原+转)win7上编译caffe支持python及matlab

    转载请注明出处: http://www.cnblogs.com/darkknightzh/p/7126126.html 参考网址: https://github.com/happynear/caffe ...

  6. iOS页面性能优化

    前言 在软件开发领域里经常能听到这样一句话,“过早的优化是万恶之源”,不要过早优化或者过度优化.我认为在编码过程中时刻注意性能影响是有必要的,但凡事都有个度,不能为了性能耽误了开发进度.在时间紧急的情 ...

  7. windbg cs

    !cs 扩展显示一个或多个临界区(critical section)或者整个临界区树 !cs Address 指定要显示的临界区地址.如果省略该参数,调试器显示当前进程中所有临界区.   :> ...

  8. android 获取view在屏幕中的位置

    使用view中的getLocationOnScreen方法,即可: final int[] locations = new int[2]; Button btn = (Button) findView ...

  9. Win7 安装 MongoDB

    MongoDB 下载 MongoDB 提供了可用于 32 位和 64 位系统的预编译二进制包,你可以从MongoDB官网下载安装,MongoDB 预编译二进制包下载地址:https://www.mon ...

  10. ORACLE在线切换undo表空间

    切换undo的一些步骤和基本原则 原文:http://www.xifenfei.com/3367.html 查看原undo相关参数 SHOW PARAMETER UNDO; 创建新undo空间 cre ...