负体积问题解决方案:常见挑战与应对策略

负体积多是网格畸变造成的,和网格质量以及材料、载荷条件都有关系。有可能的原因和解决的方法大概有几种:

1)材料参数设置有问题,选择合适的材料模式

2)沙漏模式的变形积累,尝试改为全积分单元

3)太高的局部接触力(不要将force施在单一node上,最好分散到几个node上以pressure的方式等效施加),尝试调整间隙,降低接触刚度或降低时间步。

4)在容易出现大变形的地方将网格refine。

5)材料换的太软,是不是也会出现负体积!

6)另外也可以采用ALE或是euler单元算法,用流固耦合功能代替接触,控制网格质量。例如在承受压力的单元在受压方向比其他方向尺寸长。

7)尝试减小时间步长从0.9减小到0.6或更小。



经验总结:

时间步长急剧变小,可能是因为单元产生了严重的畸变而导致的负体积现象,如果采用的是四面体单元,你可以用网格重划分的方法来解决。如果你采用的是六面体单元,那目前就没有很有效的方法,可以试一下*ELEMENT_SOLID_EFG,那对机器的要求相对就会比较高了。


Q1:材料负体积解决方法(全面、有效)

材料负体积解决方法

在仿真中,通常有材料的大变形问题,如泡沫材料,由于单元大扭曲而出现了单元负体积,这种情况一般出来在材料失效之前。在没有网格光滑和网格从划分的情况下,ls-dyna有一个内部的限制来调节lagrange单元的变形。负体积一般都会导致计算中止,除非你设置时间步长控制中的erode=1和设置终止控制中的dtmin为一非零数,这种情况下,出现负体积的单元将被自动删除,计算也不会中止。不过就算你如上设置了erode与dtmin,负体积有时候也会导致计算出错停止。

一些常用的解决负体积的方法如下:

在材料出现大应变的情况下增强材料的应力-应变曲线中材料应力。这种方法往往非常有效果。

2、重新划分网格,在出现大变形的地方把网格加密。.

3、减小时间步长系数。默认的0.9系数可能不足以避免数值的不稳定。

4、避免采用全积分体单元(算法2和3),这会导致大变形和大扭曲的情况下计算相对不稳定。

5、采用默认的单元算法(单点体单元),采用沙漏控制type4和5。泡沫的沙漏控制算法为:在低速冲击问题中采用type6,系数为1;在高速冲击问题中采用type2和3。

6、泡沫材料网格划分采用四面体网格,单元算法为10,虽然这样会导致材料相对比较刚性。增大材料(泡沫材料57号材料)的阻尼系数,推荐采用系数为0.5。

8、在泡沫接触计算中,采用*contact中的选项卡B,关闭shooting node logic。

9、如果你采用的是126号材料,设置elform=0。

10、尝试使用EFG算法(*SECTION_SOLID_EFG)。




Q2:各位高手:我做分析时将terminate time设为0.006s时没有负体积出现,但一旦延长求解终止时间就会出现负体积,比如将terminate time设为0.01s时就会出现负体积,请问是什么原因呢,怎么解决好呢?

1 把ADMAP的参数值设置为0.1,在材料属性里面设置。

2 可以试试减小接触厚度

3 解决方法是将timestep改小,就没有负体积

4 修改*CONTROL_TIMESTEP里面的tssfac已经是改小时间步了

5 网格变形太大造成的。可以考虑一下改小失效应变和剪切应变,如果不影响计算结果的话

6 tssfac参数值已经变很小了,不管用.还有,设置的terminate time没有大于施加载荷的最终时间



Q3:探讨流固耦合中单元负体积出现的原因

1 当流体单元的长宽比大于5比1时,显示的结果就不准确了;当大于20比1的时候,就会出现负体积,无法得到结果。

2 你可以把MIR设置为0.3以上试试

3 你可以把单元细化;

2 更改松弛系数(一般是增大)流体的单元一般的来说不能长宽比太大,特别是你把动网格ALE打开了的时候,所以可以把网格的长宽比缩小试试。



Q4:负体积出现的原理是什么?

1 负体积原因是雅阁比矩阵的行列式值为负值,一般减小时间步长参数,增加材料刚度,改变单元质量都可以的!

2 如果是金属材料出现负体积,主要是单元质量问题,建议重新划分网格,但如果是非金属,这是常见现象,不一定是网格问题,可以寻求其他的方法,

3 发生的原因有可能是因为有initial penetration. 所以因该先检查是不是有initial penetration:

再来如果是少数的节点受力也因为力量集中造成负体积,所以这时候就可以把接触的网格划分细一点

另外如果是用hex element会有hourglass的情形,可以检查一下hourglass energy或者是两个物体刚性相差太多, 像是foam的材料, 可以在foam的表面加一层shell element增加solid element的自由度与刚性

4 实体包壳的作法可以用HM的find face厚度其实只要很薄一层(0.1mm就可以了)

建议可以用不同的壳后测试一下,看看两个有什么不同,如果差不多的话,当然是用比较薄的厚度

材料方面我是用mat_3 or mat_9 null,重量可以跟实体的参数是一样的,另外不去设定contact




Q5:边界层加密后出现负体积

我第一层网格只能取到0.1,再小了就出现负体积。这样计算出来的结果和试验差别较大,特别在分离区。在GAMBIT做网格不会出现这样的问题,刚学习ICEM,不知道怎么处理这样的问题,

1 调整一下block节点的位置

2 尽量不要让网格块扭曲或者夹角太小

3 在出现负体积附近切几刀,产生新的节点,你可以慢慢调.

4 采用全积分单元

5 使用均匀网格,避免采用单点集中载荷)

6 全局增加模型的弹性刚度

7 全积分单元比减缩积分单元更容易出现负体积,但减缩积分单元要注意沙漏控制。

全局增加模型的弹性刚度会让模型比实际刚硬,不是好方法!


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空