在结构力学、流体、传热和电磁仿真里面,网格独立性验证是一个绕不过去的问题,COMSOL Multiphysics本身是用来给工程和科学问题做多物理场建模的,一个模型里可以同时组合好几种不同的物理场接口,而去做网格独立性验证,目的就是为了确认,最终得到的那些结果,并不是被网格的粗细给“带着走”的。
一、COMSOL怎么做网格独立性验证
在做网格独立性验证的时候,最好不要一上来就把网格调到很密的程度,比较正确的做法是,先去建立一个能够稳稳当当收敛起来的基准模型,然后再一步一步地把网格细化下去,同时对比那些关键结果发生的变化。
1、先把要观察的指标确定下来
我们可以进到【结果】这个部分里面,去把那些需要对比的结果给找出来,比如说,最大的应力、位移、温度、压降、流速、反应的速率,还有电场的强度等等,注意不要只是盯着云图看它颜色的变化,一定要选定某一个,或者某几个可以被量化出来的指标。
2、去建立粗、中、细三组不同的网格
在【网格】这个节点下面,我们可以先用由物理场控制的那种网格划分方式,把粗糙、普通和细化这三种情况分别设置好,然后计算三次,要是碰到模型比较复杂的情况,也可以换成由用户自己来控制网格的划分方式,手动去调整【尺寸】设置里面的最大单元尺寸、最小单元尺寸,还有曲率的因子。
3、要保证其它的条件全都不变
每一次去做验证的时候,只去改变网格这一个变量,不要同时又去改动材料参数、边界条件、求解器的设置,或者是加载上去的载荷,不然的话,结果发生了变化,就怎么也说不清楚,到底是因为网格造成的,还是因为模型的条件发生了变化。
4、把自由度和结果数值都记录下来
每一次求解结束之后,都要把单元的数量、自由度的个数、计算花费的时间,还有那些关键结果的数值,都给记录下来,可以在【结果】里的【派生值】里面,去添加像最大值、平均值,或者是点的计算结果这样的操作,然后把得到的结果导出成表格的形式,方便后面去对比。
二、COMSOL网格独立性结果怎么判断
网格独立性,并不是说网格越密,得到的结果就一定越好,而是要看那些关键的结果,在继续被细化下去以后,是不是开始趋于稳定了,在计算研究当中,也常常会用到网格收敛性,或者像网格收敛指数这样的方法,去评估离散化带来的误差,还有结果到底有多可靠。
1、去看关键结果变化的幅度有多大
我们可以把从粗糙网格到普通网格、再从普通网格到细化网格,这中间结果发生的变化率,给它算出来,一种比较常见的判断方式是,当普通网格和细化网格之间,关键结果的差异已经变得很小了,而且继续再细化下去,带来的变化也看着不怎么明显了,那我们就可以认为,这个指标已经基本上稳定下来了。
2、不要只盯着那一个孤零零的峰值看
最大的应力、局部的温度峰值、壁面上的剪切力,这一类的计算结果,是很容易被局部的网格所影响到的,在做判断的时候,我们可以同时去看一看平均值、积分之后的值、事先指定的那个点的结果,还有关键区域里面的分布情况,光靠一个尖峰稳定住了,并不能够说明整个模型都已经可靠了。
3、去看结果变化的趋势是不是在收敛
在正常的情况下,把网格一步一步地细化下去之后,得到的结果,应该是朝着某一个固定的方向去收敛才对,要是粗糙、普通、细化这三组结果一会儿高一会儿低,那就说明模型里面可能还存在着奇异的尖点、边界条件设置上的问题、接触定义不太稳定,或者是局部网格的质量比较差。
4、要同时把计算的成本也考虑进去
如果只是换来了很小的一点结果变化,可是把网格细化以后,却让计算的时间一下子增加了好多,那就没有必要再继续盲目地加密下去了,在工程项目里面,更常用的是在结果精度和计算效率之间,去找到一个平衡的网格方案,而不是单纯地去追求那个最密的网格。
三、COMSOL网格独立性验证怎样避免返工
网格独立性的验证,之所以容易返工,很多时候都是因为在一开始的时候,就没有把要看的指标选好,也没有把网格的方案给记录下来,等到后面要写报告、拿依据的时候,手头就只剩下几张云图了,这样就很难去说明,那个结果到底有多可信。
1、对局部的区域单独去做加密
在应力集中、薄壁、小圆角、接触面、边界层,还有热源的附近这些地方,是需要重点去处理的,可以在【网格】下面去添加一些【尺寸】的设置,然后选中对应的边、面或者体,单独给它们设定一个更小的单元尺寸,用不着把整个模型全部都加密一遍。
2、去检查一下网格的质量
在【网格】被生成出来以后,可以去看一眼它的质量怎么样,重点去关注那些畸变得厉害的单元、尺寸过于小的单元,还有过渡变得太突兀的地方,当网格质量比较差的时候,得到的结果看上去可能会有一个数值摆在那里,但是局部的波动却会非常大。
3、把验证用的那张表格给保留下来
最好是把网格的等级、单元的数量、自由度的个数、关键的结果、变化率,还有计算的时间这些,都整理到同一张表格里面去,在写报告的时候,去说明最终采用的是哪一组网格,还有为什么要选择它,这比单独放上一张最终的云图,要有说服力得多。
总结
关于COMSOL怎么做网格独立性的验证,还有验证之后的结果又要怎么去判断,这里面的核心,就是在把模型的各种条件都固定住的前提下,一步一步地去加密网格,然后去对比那些关键的结果,是不是已经稳定下来了,在做判断的时候,不要只盯着云图看,也不要只揪住一个峰值不放,要结合着变化率、结果变化的趋势、局部网格的质量,还有计算所花费的成本,一起来看,用这种思路得出来的网格方案,才更适合被写进仿真的报告,还有项目评审的材料里面去。