背景介绍
材料中不可避免的具有各种缺陷,引起工程中结构断裂的发生。针对裂纹扩展相关问题,研究学者基于线弹性断裂力学,通过理论或数值手段得到裂纹尖端的应力强度因子KI、KII 和 KIII 以及应变能释放率GI、GII 和 GIII,对裂纹的扩展状态进行判定。但是基于线弹性力学对裂纹问题模拟时,需要在试件中预制裂纹,并且在裂纹尖端存在奇异性,内聚力模型避免了线弹性力学相应的弊端,提供了一种解决裂纹扩展问题的新手段。
内聚力模型概念
内聚力模型的概念首先由Dugdale与Barenblatt分别提出,如图1所示,他们把内聚力表示为裂纹张开位移的函数,在裂纹尖端引入内聚力的概念,避免了线弹性力学中裂纹尖端的奇异性。近些年来,内聚力模型应用范围越来越广,从最开始的脆性材料扩展到复合材料、金属材料、高分子材料、功能梯度材料,广泛应用于动态裂纹扩展、裂纹萌生以及复合材料界面脱粘等具体的工程问题。
内聚力模型张力-位移曲线
内聚力模型是一种唯象模型,研究学者依据不同材料所具有的损伤破坏特性,提出众多内聚力模型的张力位移关系,主要有双线性、梯形、指数型以及多项式等形式,如图2所示。研究表明,内聚力模型的形状对数值模拟的结果影响较小,但是内聚力模型软化阶段对模型收敛性具有一定的影响。
循环内聚力模型
目前,利用内聚力模型研究单调载荷下界面脱粘、裂纹萌生与扩展相关问题时具有相对成熟的理论与技术手段。例如,在ABAQUS 2016版本集成了插入零厚度内聚力单元的工具,大大促进了内聚力模型在工程中的应用。由于不能模拟疲劳裂纹,利用循环内聚力模型研究循环载荷下裂纹扩展以及材料损伤过程一直在完善与发展的过程中,模型的构建从最初基于实验现象,到基于经验假设的损伤力学模型,逐步发展到基于微观物理机制的损伤力学模型,至今尚未建立完善的体系。循环内聚力模型的构建主要包含两个问题:(1)加卸载路径的确定;(2)内聚力模型损伤函数的构建。
循环内聚力模型循环载荷卸载与再加载方式如图3所示,第一种方式与塑性材料的卸载与再加载方式类似,以一定的刚度进行卸载和再加载,完全卸载后可能会存在残余位移,第二种方式类似于弹性材料的卸载与再加载过程,完全卸载时都没有残余位移。
内聚力模型的数值仿真
内聚力模型主要包括连续内聚力模型以及离散内聚力模型两种,他们分别具有各自的优缺点,适用于不同的场合,并且内聚力单元的表征形式也不尽相同。
连续内聚力模型单元表示为界面单元,具体的单元形式如图4-a所示,内聚力和张开位移之间的控制方程表述的为界面单元每一个积分点的张力与位移之间的关系。离散内聚力模型单元表示为杆单元,具体的单元形式如图4-b所示,内聚力和张开位移之间的控制方程表述的为杆单元(结点1和2)的张力与位移之间的关系,其中结点3和4只是用来定义裂纹扩展方向以及扩展长度。
采用内聚力模型分析工程问题,首先需要解决的是内聚力单元的插入,如图5所示。通用的内聚力单元插入方法有多种:对于简单问题,可以采用手工方法直接更改inp文件来添加相应的内聚力单元;当需要添加的内聚力单元数量较多时候,采用手工添加的方式需要耗费大量的人力,因此本节参考相关文献,采用MATLAB编写相应的程序,快速对inp文件进行处理,批量添加连续内聚力单元,具体插入过程如下:
-
确定连续内聚力单元添加位置:根据结点坐标,找到需要添加内聚力单元的节点标号,并存储在计算机上;
-
添加节点:在单元信息中依次对步骤一中的结点进行遍历,确定有限元模型中采用此节点的单元个数s,并且依次添加s-1个节点;
-
更改节点:更改有限元模型中材料单元的结点标号;
-
添加单元:内聚力单元添加。