1.5 负体积错误导致计算终止:Error negative volume in solid element

LS-dyna仿真出现Error negative volume in solid element错误如何解决

请先 登录 后评论

最佳答案 2017-07-27 16:45

在材料发生大变形,尤其是对软材料,计算单元会被破坏产生负体积错误,负体积错误会在尚未达到材料失效标准前就出现。在没有对网格进行平滑和重绘处理下,拉格朗日网格对大变形有限制。如果*CONTROL_TIMESTEP中的ERODE未设置为1,并且*CONTROL_TERMINATION中DTMIN未设置为非零常数(这两个关键字的设置是删除大变形单元,继续计算),则会负体积错误会导致计算中断,无法继续。不过,即使设置了ERODE和DTMIN,一些情况下也会因为出现负体积错误,导致计算中断。

请先 登录 后评论

其它 7 个回答

Boom - 研究生

最近看到有不少这样的问题,一般出现负体积,节点速度无限大,都可以通过缩短求解时间,减小时间步长,增加接触刚度等这几种方法去试一试。

1.负体积是由于element本身产生大变形造成自我体积的内面跑到外面接着被判断为负体积。因而,负体积多是网格畸变造成的,与网格质量以及材料、载荷条件都有关系。有可能的原因和解决的方法一般有:

(1)尝试减小时间步长从0.9减小到0.6或更小。(注意太小得到的结果不一定可信)

(2)材料模型参数设置有问题,选择合适的材料本构。

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

(4)沙漏模式的变形积累,尝试改用全积分单元。

(5)在容易出现大变形的地方将网格细化。

(6)材料刚度不够,可能也会出现负体积。

2.节点速度无限大与接触,材料参数,网格形状等等都可能有关系,解决的方法一般有:

(1)网格质量太差,重分网格;

(2)材料本构及状态方程的参数输入格式出错,检查K文件;

(3)输入的参数量纲不一致,仔细检查

(4)自定义的子程序存在问题,如岩石爆破中只考虑压,不考虑拉等

(5)材料太软,计算网格畸变,如在淤泥中爆炸~

(6)接触定义出错。"

请先 登录 后评论
杨紫 - 研究生

借鉴经验:

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

请先 登录 后评论
Abrtr - 研究生

负体积多是网格畸变造成的,和网格质量以及材料、载荷条件都有关系.

可能的原因和解决的方法大概有几种:

1 材料参数设置有问题,

2 选择合适的材料模式

3 沙漏模式的变形积累,

4 尝试改为全积分单元

5 太高的局部接触力,尝试调整间隙,

6 降低接触刚度或降低时间步

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

请先 登录 后评论
叶正梗 - 研究生

出现负体积是一件很痛苦的事情,尤其是算到一半,如果计算的结果已经满足你想要的数据,劝你不要弄下去了。

如果,你非要坚持下去,最直接的办法,重新建模型,调整网格大小,但是这样并不能保证,一定不会出现负体积。

自己慢慢摸索吧。

高手和凡人的差距往往就体现在划分网格的水平之上!

请先 登录 后评论
侯玉林 - 研究生

1:察看你的边界约束条件是否正确

2:调整时间间隔,缩短时间步长

3:把单点积分该为全积分

4:重新选择一下你的材料模型.

请先 登录 后评论
杨杨 - 研究生

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

请先 登录 后评论
北极光 - 研究生

删除该单元

970 key manaul里面在restart input data下……

使用方法是重启动时用的,就是在某一步中用sw1中止,然后生成.r重启动文件,删除不需要的单元,然后计算……

应该是*delete_element_solid:

下面的参数是node set No.

请先 登录 后评论
  • 8 关注
  • 1 收藏,1025 浏览
  • 陈龙 提出于 2017-07-27 12:40