一条钢索的断裂面。
翻翻帮助文档,学习使用Abaqus的单元删除功能模拟材料的断裂和损伤。
这篇,和之前许多文章一样,也是一篇学习笔记。
我们来学习一下,Abaqus等有限元软件中,是如何用单元删除的方式来模拟断裂和损伤行为的。
所以……你问我有限元该怎么学?带着给别人讲出来的心态去学。边学边讲。能给别人讲明白,就说明你这部分知识已经学会了。
话不多说,我们开始。
找到帮助文档页
用单元生死的方式来模拟断裂,首先能够想到的肯定是Abaqus软件。
因为在Abaqus的单元选择对话框里,赫然有四个大字:“单元删除”。
Abaqus的单元类型选择界面,支持单元删除功能。
实际上,Abaqus/CAE单元类型选择窗口的这些单元控制属性,在关键字里其实被称为 Section control 截面控制。这挺让人费解的。但至少 还能在帮助文档里查到。
带你(盘一遍)按图索骥一下:
首先在界面上点击那个小问号,点击单元类型窗口。会打开 Abaqus/CAE 图形界面的帮助文档。定位在
Abaqus > Abaqus/CAE > Creating and analyzing a model using the Abaqus/CAE modules > The Mesh module > Controlling mesh characteristics > Associating Abaqus elements with mesh regions
一如既往、不出所料 —— 这一页上没啥有用的信息。只有这么一行小字:想看更多单元控制相关选项吗?去 Section controls 页面找找吧。
好的,跟着超链接,来到了 Section controls 页面。
Abaqus > Elements > Introduction > Section controls
这一页内容可丰富了。有这么多主题:
那既然软件界面上都摆出来 单元删除 功能了,文档里肯定会有对应功能的介绍嘛。
这个主题下 —— 还是没啥真正有用的信息。只告诉了你,界面上的 “单元删除” 和 “最大下降” 选项在哪。它俩分别用来控制 1)“单元删除”选项 决定在计算中是否要保留完全损坏的单元;2)“最大下降”选项 确定单元何时被认为是完全破坏了。
——摔,“最大下降”,这翻译的谁能猜到是啥意思嘛。Max degradation,准确来说应该翻译为“最大刚度退化值”。
好在,这一页里,给出了更多的详情页链接。来列举一下:
1)在Abaqus 帮助文档的材料卷,介绍渐进损伤和失效的页面:
Abaqus > Materials > Progressive Damage and Failure > About progressive damage and failure
2)材料卷的介绍部分中,有一小节是关于材料失效与单元删除的:
Abaqus > Materials > Introduction > Material data definition > Material failure and element deletion
3)还是材料卷,延性金属的损伤与失效:
Abaqus > Materials > Progressive Damage and Failure > Damage and failure for ductile metals > Damage evolution and element removal for ductile metals
4)以及在Connector单元行为的文档里:
Abaqus > Elements > Connector Elements > Connector element behavior > Connector damage behavior > Maximum degradation and choice of element removal in Abaqus/Standard
Cohesive单元的文档里也有这么一段。纤维增强复合材料的文档里也有,内容都差不多。最后是低周疲劳分析的相关文档里,有低周疲劳分析的损伤演化计算方式。
延性金属与损伤演化
在翻译之前,先聊一句题外话。ductile metal,中文翻译为延性金属。我在Science Direct上面搜索了一下dectile metal的定义,还是很全面、很有趣的。
一些脆性材料,如铸铁和混凝土,在其结构中含有大量的孔和微观裂缝。这些被认为会产生高应力集中,从而导致材料的局部失效。相对于抗压强度来说,这些应力集中对抗拉强度的影响可能更大;脆性材料的一个一般特征是它们在受拉时显得很脆弱。因此,脆性材料的弹性断裂和失效主要由最大主拉应力控制。作为一个例子,考虑一个混凝土块:在单轴拉伸下,其断裂应力约为1.5 MPa,而在压缩时,它约为30 MPa,或20倍大;在纯剪切下,断裂应力约为1.5 MPa,因为主应力具有相同的大小,其中一个应力是拉伸。混凝土中的开裂将发生在与施加的剪切应力方向成45°的平面上。
Science Direct
(天呐,我学材料力学 第一强度理论的时候怎么没人这么给我讲过?该不会是老师自己也不知道吧。唉,我要是有机会能给学生讲课,我可得把这一段加上。多满足好奇心呀。)
首先是Section controls 截面控制的文档页里,与单元删除和损伤演化相关的内容:
Abaqus > Elements > Introduction > Section controls > Controlling element deletion and maximum degradation for materials with damage evolution
Abaqus提供了一种通用的功能,用于对材料渐进损伤和失效进行建模。在Abaqus/Standard求解器中,这种功能仅适用于:内聚力单元、连接器单元、平面应力公式单元(包括平面应力单元、壳单元、固体壳单元和膜单元)、可用于韧性金属损伤演化模型的任何单元、以及可以在低周疲劳分析中包含损伤演化准则的任何单元。
在Abaqus/Explicit求解器中,适用的单元类型则更多,所有具有渐进损伤行为的单元都可以使用单元删除功能。
截面控制选项,可用来指定材料失效的最大刚度退化值,D_max,这个值用来描述材料的失效,以及判断啥时候该把这个单元删除掉。默认情况下,单元完全失效时会被删除。单元删除方式的选择也会影响到损伤施加的方式,详见各种详情页面。
渐进损伤和破坏
在Abaqus中,渐进损伤主要应用于下面几类问题:
Abaqus中,提供了一个用于描述损伤和失效的通用框架,它允许多种损伤失效机制同时作用于同一种材料。材料失效,指的就是由于刚度逐渐退化而导致失去承载能力。
比如,一个典型的金属 单轴拉伸试件:
典型的金属单轴拉伸应力-应变关系
a-b,大家都知道是初始的线弹性段;
b-c,是熟悉的塑性屈服和应变硬化阶段;
c-d,超过c点后,承载能力下降,直到材料破坏。
在点c处,激活某一损伤准则。这一点处的状态称为损伤启动准则。超过它以后,应力-应变的响应将改为受局部化的刚度退化演化行为控制。
如果没有损伤行为,材料在c点以后,正常来说应该按照c-d'的路线继续强化。
因此,在Abaqus中,描述一个失效机制就需要输入四个部分:
定义一个有效的材料响应(a-b-c-d'),即没有损伤时是啥样。
定义损伤的起始准则(c点)
定义一个损伤演化的规律(c-d)
损伤完全发生后(d点处),选择是否要将单元删除。
网格依赖性
在连续介质力学中,本构模型通常用应力-应变的关系表示。当材料出现软化行为,导致应变局部化时(即大量的应变出现在局部一个小区域里),这种形式会导致极强的有限元网格依赖性。其结果是能量耗散随着网格的细化而减少。(据我理解,就是单元画的越密,发生应变软化的单元体积就越小,因为只有裂纹尖端的单元会破坏)
在Abaqus中,所有可用的损伤演化模型,都采用了一种旨在减轻网格依赖性的列式。这是通过在公式中引入特征长度来实现的。在Abaqus中,这与单元的大小有关,并且将本构中的软化部分改为用 应力-位移 关系描述。这种情况下,损伤过程消耗的能量就是按单位面积,而不是单位体积来指定的。这一能量作为一个附加材料参数,用于计算材料发生完全损伤时的位移。这个概念和临界能量释放率(断裂力学中的一个材料参数)一致,以确保正确的能量消耗,并大大减轻网格依赖。
Abaqus中的使用方法
前面我们提到,描述失效机制,需要定义四个部分:
前面,定义正常材料响应这里就不提了,就和定义普通的弹-塑性材料一样。至于这个损伤起始的准则,可以在Abaqus定义材料参数的界面里看到:
Abaqus中定义损伤起始准则
这个菜单里,有延性金属损伤、有牵引-分离模型,还有纤维增强复合材料的损伤。再后面的“弹性体损伤(T)”,菜单里只有Mullins效应,它其实指的是类似橡胶的弹性体在准静态循环载荷下的应力软化现象。
定义了任何一个损伤起始准则后,都可以继续在 子选项 中看到 损伤演化。
在子选项中,进一步定义损伤演化准则
损伤演化子选项输入窗口
这篇文章先到这里。下一篇我们再来仔细讨论,都有哪些损伤起始准则,以及损伤演化准则是咋回事。
下次见。