导读:曾几何时,笔者在仿真秀平台(包括官网和APP)分享了多篇关于有限元仿真分析误差来源多篇文章,引发了工程师朋友们的共鸣。当然,还有一些新来的朋友没有关注,大家可以搜索查看,老朋友也可以温故而知新哦,任何疑问,欢迎大家留言交流。
一、一次单元or二次单元
一次单元就是线性插值的单元,二次单元就是二次插值的单元。大家可能觉得这个说了跟没说一样。那就看图吧。
图1二次单元
图1是solid186的单元说明,它是一个二次单元,就是具有中间节点的单元。有了这个中间节点,单元的边就可以弯曲,看图1就可以看出来。图2就是solid185,是一次单元,没有中间节点,那么它的边就只能是直的。有的同学就会问,这样对计算会有影响吗?
同一个模型图3是一次单元,图4是二次单元,可以看出,二次单元能够很好的拟合圆角,而一次单元是用多段的直线拟合圆角,拟合较差。
一般情况二次单元的计算精度要高,但是二次单元也会遇到问题,在以后的文章会讨论到。
二、四面体or六面体
六面体网格和四面体网格是有限元计算中,最常用的两种网格形式。大家都认为六面体网格不仅精度高,而且计算效率高。看下下面的算例。
由于模型比较复杂,采用理论计算的方式进行分析,比较困难。采用workbench的convergence功能进行,对网格不断细化迭代,收敛过程如下所示。
计算结果如下所示:
可以看出在局部高应力区域,网格被细化。最大应力为1992.5Pa,此时节点数量为484714个。
采用六面体网格进行计算,结果如下。
计算最大应力为1940.5Pa,节点数为51435。
为了方便对比分析,采用和图相同的网格尺寸,并同样采用带中间节点的网格类型进行计算,结果如下。
可以看出在局部高应力区域,网格被细化。最大应力为1992.5Pa,此时节点数量为484714个。
采用六面体网格进行计算,结果如下。
计算最大应力为1940.5Pa,节点数为51435。
为了方便对比分析,采用和图相同的网格尺寸,并同样采用带中间节点的网格类型进行计算,结果如下。
最大应力为1974Pa,节点数为113718。
将计算结果进行对比分析如下。
网格类型 | 计算结果 | 误差 | 节点数 |
四面体网格迭代 | 1992.5 | / | 484714 |
四面体网格 | 1974 | 0.9% | 113718 |
六面体网格 | 1940 | 2.6% | 51435 |
当模型的截面尺寸和长度比小于5时,一般采用梁单元。那么梁单元和实体单元相比,谁的计算精度更高些呢?
一个简单悬臂梁算例,如下所示。
理论计算变形,如下所示
采用梁单元计算,结果如下
最大位移1.29*10^6。
采用六面体实体单元,结果如下。
最大位移 。梁单元计算和实体单元计算结果基本相同。
如果进一步减小网格数量,采用一个梁单元进行划分,计算结果如下。
计算结果为 ,精度并没有下降。
如果将实体单元减少到一层,会发现直接报错,主要是产生了沙漏效应,导致模型的刚度为零。同样如果是模态分析,在局部有只有一层六面体单元,就会产生固有频率为零的情况。
四、结论
1、在具有相同单元尺寸的前提下,带中间节点的四面体单元和六面体单元相比,计算精度并不差,但是模型的节点数目会很多,在计算机硬件较高时,采用带中间节点的四面体单元直接划分网格,会节省较多的前处理工作,提高效率。
2、对于细长模型,梁单元计算效率更高,精度也不低,还能避免沙漏效应。
力学与有限元专题文章(论文)的规划