材料脆性断裂有限元模拟的UEL子程序实现方法

一、引言

相场断裂模型是描述当裂纹尖端状态达到临界能量释放率时发生裂纹扩展现象的工具,被广泛应用于材料断裂过程的模拟研究。UEL (User Element Subroutine) 子程序允许用户自定义单元的切线刚度矩阵及节点力向量,在实现相场断裂模型时具有灵活性与便利性。UMAT (User Material Subroutine)子程序可以供用户自定义材料的本构模型,同时可弥补UEL子程序无法可视化的缺陷。本文中的计算结合UEL子程序与 UMAT子程序,采用双层模型进行交互计算材料的断裂过程。

二、模型简介

弹性变形模型中有效柯西应力张量为:

其中 为线弹性刚度矩阵,有效应力由名义应力及退化函数组成:

采用小变形假设, 应变
该部分模型写入UMAT子程序内部,并将每一增量步的弹性应变能密度保存至全局变量(COMMOMBLOCKS)中。考虑材料的断裂过程,其总势能函数可以描述为:
为满足最小势能原理,有:

上式Ψ0可替换为满足Kuhn-Tucker条件的历史变量场 。上式对任意 都满足,因此有:

令上式为断裂相场的不平衡力残差,可离散为:

其关于  的倒数为切线刚度矩阵:

以上二者为 UEL 子程序需要用户定义的向量及矩阵, 此时相场断裂模块可组成  迭代格式, 进行求解:

三、模型交互

在UMAT子程序中计算得到材料的弹性应变能密度,通过全局变量提供给UEL 子程序,而在UEL中根据前一增量步的弹性应变能密度计算新的增量步内部的损伤演化,并通过全局变量传递至UMAT子程序内,作用于材料性能的衰退过程。

四、数值模拟

文件输入:

采用 平面应变二次缩减积分单元CPE8R为例,该单元共分为两层,第一层为位移场单元,第二层为损伤场单元,在inp文件中添加如下语句: 

*User element, nodes=8, type=U1, properties=2, coordinates=2, variables=24

4

*Element, type=U1, elset=Phase

(单元及其对应节点排序) 

本工作中所需材料参数为临界Griffith能量释放率Gc及长度尺度参数lc,因此properties=2,二维情况的coordinates为2,表示x及y方向的自由度;variables为单元内变量的总和,是积分点个数与每个积分点处状态变量个数的乘积。
同时,需要为UEL单元提供材料参数,该步骤也是通过修改inp文件来实现:
*Uel property, elset=Phase

1., 9.31

本研究参数采用E=210GPa, ν=0.3, Gc=9.31, lc=1。共建立以下几种几何模型:

材料脆性断裂有限元模拟的UEL子程序实现方法的图1图1 裂纹试样及多孔洞试样模型及网格划分 

模拟结果如下:

材料脆性断裂有限元模拟的UEL子程序实现方法的图2图2 脆性断裂相场模拟结果 

五、小结
在不同加载情况下,裂纹试样的断裂模式不同;多孔模型在加载时,裂纹主要从孔洞附近的薄弱区域萌生及扩展,直到最终裂纹合并及断裂。模拟结果较好地反映了相场断裂模型在模拟材料损伤断裂,该方法可以更进一步扩展至材料的弹塑性断裂、服役结构件在极端载荷作用下的损伤等过程的模拟。


ABAQUS UEL相场断裂UMAT

材料脆性断裂有限元模拟的UEL子程序实现方法的评论8条

  • 举个栗子 举个栗子
    0
    请教一下,采用UEL计算C3D8单元计算的结果和abaqus自带的结果不同是什么原因造成呢?主要是剪切方向的应力和应变,主应力和应变的值大体是相同的
  • 举个栗子 举个栗子
    0
    采用相场法计算,哪怎么判断计算结果的正确性呢?

材料脆性断裂有限元模拟的UEL子程序实现方法的相关案例教程

木木做单元开发也有一段日子了,在编写XFEM的单元时,遇到了瓶颈,打算先告一段落,将自己的一些经验分享出来给大家,希望帮助大家快速入门,在以后的推文中也会以单元开发为主,就像之前讲解Umat一样,用自己通俗易懂的语言讲述下来。 本篇推文由两部分组成:「其一」,以「一维杆单元」UEL子程序为主,从理论到代码Step-by-Step向大家讲解,并于Abaqus中标准单元做对比,验证代码的正确性;「其二
不等待 即关注 【简述ABAQUS中UEL子程序】 ABAQUS作为成熟的商用有限元软件,可为高级用户提供特定的分析需求。ABAQUS常见的二次开发子程序包括:UMAT、VUMAT、UGENS、UEL和VUEL等。其中UEL/VUEL分别适用于ABAQUS的Standard/Explicit求解器。只有清楚有限元分析的基本原理,才能够较好地了解其分析的力学原理,才能对特定的分析需求编写合适的分析单
1 uel简要介绍 1.1 uel变量 在uel中,主要需要更新amatrix(雅克比矩阵)和rhs(右端残值项),如果有状态变量的话,也需要更新状态变量svars. 1.2 inp文件修改 并且要成功使用uel的话,需要对inp文件做以下修改,一一说明。 (1) 需要首先定义uel,加入以下keyword以及data line(s) 各变量的含义如下: 该keyword下的data line(s
一、引言 氢原子进入金属材料内部会恶化其力学性能,主要表现为降低金属材料的使用寿命、塑性变形能力和强度,致使工程结构或构件过早失效,造成灾难性事故。氢脆往往也是指氢原子导致材料的断裂特征从韧性断裂转变为脆性断裂的现象。使用UMAT(User Material Subroutine)子程序及UEL (User Element Subroutine)子程序模拟氢致裂纹扩展行为(HAC, Hydroge
微信公众号:[易木木响叮当] 关注可了解更多的[有限元数值仿真技巧]。问题或建议,请公众号留言; 如果你觉得木木同学对你有帮助,欢迎赞赏。 今天木木给大家带来的是梁单元的UEL子程序,作为杆系单元重要的组成成员,该部分是得好好讲讲了,而且要全面的讲,尽木木的知识能力所及讲的透彻,让刚入手UEL的小白们看的“起劲”!参考文档和源文件可在公众号后台回复:梁单元UEL即可。 今天分享的内容主要有:梁单元
博士
影响力
粉丝
内容
获赞
收藏
    项目客服
    培训客服
    8 15