怎么处理沙漏现象
1.1仿真中遇到的奇怪现象
在设置某些网格类型后,进行拉伸仿真时,有可能遇到图1所示的奇怪现象:图1为2D轴对称拉伸仿真分析,可以看到拉伸的边缘出现了锯齿状,好像“撕裂”了,由于没有设置断裂属性,所以很明显这个结果是有问题的。原因是什么呢?

图1.拉伸试验中的奇怪现象
1.2沙漏模式
为什么会出现上图所示的现象呢?在划分网格进行有限元仿真分析时,如果不进行单元类型设置,一般默认是缩减单元,如:C3D8R、S4R、C3D20R等。这些一阶缩减单元数据积分点不足,导致系统刚度矩阵的奇异性,使单元在某些方向上刚度不足,比如图2中8节点六面体单元、4节点的面单元,但是都只有一个积分点,处于单元的中间位置。

图2.缩减单元弯矩引起的变形示意图
在图2中,单元在纯弯矩作用下,上边受拉,下面受压,单元变成类似“梯形”的形状。但是通过积分点水平方向以及垂直方向的虚线其长度和角度可以都不发生变化,这就意味着积分点处不存在法向应力和剪切应力。由于角度、长度没有发生变化,所以单元由于变形产生的应变能也为零。就从而产生像图1所示的结果,由于这种单元变形类似于“沙漏”的形状,所以称为沙漏模式,这种结果和真实的物理结构变化是相悖的。因此需要控制在仿真时避免出现沙漏问题影响仿真结果。
上面已经说明异常的沙漏现象明显影响仿真精度,那么如何判断沙漏现象是否影响到仿真结果精度呢?可以从以下的几个方法确定:
2.1单元结果变形
首先很明显从变形结果上可以看出来单元发生异常变形,如图3的分析结果:

图3.仿真分析中单元出现的“沙漏”形状
图3中左侧图为拉伸仿真结果,右侧为弯曲结果,很明显单元变成了"梯形"的沙漏形状。
2.2能量结果分析
也可以通过后处理分析伪应变能、内能的值来判断,当伪应变超过内能的1%时,则沙漏现象已经影响到了仿真精度。


图4.伪应变能、内能分析
图4为拉伸仿真分析,图中单元形状明显出现了异常,并且最终伪应变能已经远远超过了内能的1%,仿真误差大或者仿真失效。
由于前面已经分析,沙漏现象会导致刚度变小,比如图5左侧为2层网格,右侧为一层网格,施加同样的载荷后,右侧的变形量远大于左侧。这时就能判断右侧的沙漏现象已经严重影响到仿真结果。

图5.变形对比
由于沙漏现象会影响结构分析的刚度,引起单元过软,所以会使仿真结果位移量变大,特征频率变小。为避免沙漏现象对结果的影响,可以采用一些沙漏现象控制措施:
1.网格密度
从图5可以看出,不同的网格密度仿真结果,所以在使用线性缩减积分单元时,要避免过于粗糙的网格,在厚度方向上至少划分3~4层以上。但这种方法只能缓解沙漏现象,并不能从根本上消除。(若采用二阶缩减积分单元时,单层单元不能从根本上消除沙漏现象,但2层以上的单元可以有效避免沙漏现象)

图6.不同网格密度变形量
2.全积分单元
完全积分的线性单元在每个方向有2个积分点,完全积分的二次单元在每个方向上有3个积分点。相对于缩减积分单元,积分点增多,可以有效消除沙漏现象。如图7,则是采用C3D8完全积分线性单元的计算结果,没有出现图6缩减单元的沙漏现象。

图7.完全积分计算结果
但是完全积分单元容易出现剪切自锁现象,使得单元变得过于刚硬。
3.沙漏控制
在仿真时还可以通过沙漏设置来控制沙漏现象,具体如下:

图8.沙漏控制设置
a.Enhanced:增强控制,由于沙漏导致刚度减小,该控制方法可以基于假定的增强应变来控制沙漏,下图是通过增强控制的方法控制沙漏现象,相对于图6有明显改善。

图9.沙漏控制-Enhanced
b.Relax stiffness:使用整合的粘弹性形式控制沙漏;
c.Stiffness:为缩减积分单元控制为严格的弹性;
d.Viscous:为缩减积分单元定义沙漏阻尼。
以上方法,读者都可以自行仿真验证对比。
4.载荷施加方法
还有采用缩减单元时,尽量避免施加集中载荷,比如将力加载到某个节点处。
总之,采用缩减单元时,可以有效提高计算效率,并可以避免剪切自锁,而对于沙漏现象,可以通过后处理仿真结果评估来观察沙漏现象对计算精度的影响,并可以通过沙漏控制来减弱沙漏现象。