找回密码
 注册
Simdroid-非首页
查看: 3467|回复: 40

[断裂与失效] Johnson-cook损伤准则讨论:切削模拟

[复制链接]
发表于 2012-6-28 16:30:09 | 显示全部楼层 |阅读模式 来自 湖南长沙
本帖最后由 sanxiarenshi 于 2012-6-29 14:29 编辑

    本人做切削仿真有段时间了,ALE方法和断裂准则一起使用,可以不用预先定义分离线,也能实现切屑的分离了。材料的损伤失效准则,一直是个难点。
    总的来说,用于ductille material(延性材料)的损伤法则在abaqus中主要有三种:ductile damage、shear damage、Johnson-cook damage。
    ductile damage准则基于等效塑性应变,定义了一个fracture strain,当所有增量步的塑性应变增量总和大于这个临界值时,材料开始失效,裂纹产生了。fracture strain 是应力三轴度与塑性应变率的函数。一般采用表格方式定义。这个法则需要不同应变率及应力三轴度下的断裂应变。需要做大量的单轴拉伸、压缩、剪切实验。材料数据很难获得,且没有考虑温度的影响。
    shear damage准则是用来预测剪切带集中造成的损伤开始条件,它是剪切应力比与应变率的函数,剪切应力比:
                                            
  其中:p是应力第一张量不变量,即静水压力的三倍
            q是米塞斯等效应力
            Ks是材料常数。但也没有考虑温度的影响。需要定义很多行的数据

    Johnson-cook damage准则,考虑了应力三轴度、应变率、温度的影响,且已经被拟合成了多项式公式,可以只测量某一个应变率下的数据,然后将这个应变率作为参考应变率,由于目前实验条件的限制,高应变率下材料的本构参数很那获得。可以通过公式来近似外推高应变率下的情况。。


----------------------------------------------------------华丽分割线--------------------------------------------------------------------------------------------
       希望做切削及材料失效这一块的前辈及同仁帮看一下,目前存在以下疑问
(1)abaqus里面定义材料损伤时有个Johnson-cook damage,里面要定义d1,d2,d3,d4,d5五个材料参数以及参考应变率,材料的熔点以及室温。
    其判断材料失效的原理也是基于等效塑性应变。同时考虑了温度、应变率对材料塑性应变的影响。
    我在二维切削仿真中采用shear failure准则时,取fracture strain近似为0.95,应力三轴度,与应变率一般忽略,即为0,参考的是binling版主的例子。
这样仿真出来的切屑可以断裂,形状也较合理。但这是简化的,不符合实际。于是想用J-C damage, 但每次采用J-C damage,仿真出来的切屑被拉得很长,最后的后处理中查询单元的PEEQ(等效塑性应变),达到了6点几,很反常。。金属材料的塑性应变一般只能在1左右取值,很少超过3的啊。

    目前做大都用SHPB实验测定材料的J-C本构参数A、B、C、n、m,一般实验采取的应变率为0.001,即准静态。高速下的冲击实验很难测,因此才拟合了经验公式。但在测定J-C失效参数时参考应变率应该也差不多是0.001吧?为什么许多文献上都说参考应变率默认取为1呢。
    J-C本构方程与J-C断裂准则里面都有一个参考应变率,不同应变考虑下测得的参数也不一样。如果同时使用两者,它们的reference strain rate 是否应该一致呢。因为目前的SHPB实验大部分都是在准静态过程即塑性应变率为0.001下测量的。。

(2)关于应力三轴度,定义是-pressure stress/Mises equivalent stree。这里面的pressure stree指的是静水应力(sigma_m),即三个主应力的平均值。随着应力三轴度的减小,材料的断裂应变是逐渐增大的吗?应力三轴度的取值范围是(-3.33,3.33)吗?
(3)定义了J-C damage initiation是不是就不需要damage evolution了?damage evolution 里面有两种法则:displacement 和energy。
displacement at failure 好像不是材料的参数,引入它的目的是因为材料失效时局部应变集中,一般的应力应变曲线就不在适用了,且会受单元尺寸的影响。
    帮助文档只给出了失效位移变化率=特征单元长度*应变率。
单由这个式子好像无法积分得到失效位移。。不知哪位已经参透其中奥妙?
论坛里面也有许多人对这个有疑问的,但好像没有高手来回答。abaqus帮助文档中的例子2.1.16 progressive failure analysis of thin-wall aluminum extrusion under quasi-static  and dynamic loads.中定义了一个displacement at failure值为0.1mm, 特征单元长度为5mm,难道将displacemnet at failure 近似取为特征单元长度的1/50就差不多了,
这里为什么取0.1呢,根据经验吗?

    我采取的做法是查材料断裂手册,可以获得断裂韧性KIC,然后由可以由弹性模量、泊松比、KIC这三个量计算出fracture energy。本构曲线的软化部分围成的形状近似为一个三角形,fracture energy相当于三角形的面积,其中一条边就是初始屈服应力,另外一条边是displacement at failure。因此,我是先查手册,确定fracture energy,然后再确定displacement at failure,不知这样理解可行否?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×

评分

2

查看全部评分

 楼主| 发表于 2013-11-30 21:08:12 | 显示全部楼层 来自 北京
Simdroid开发平台
zhhq9765 发表于 2013-11-29 14:10
lz您好,请问你看我的仿真怎么会是这样呢,求指导

在定义场变量输出Field Output时候,勾选Status,就会隐藏失效的单元,也就不会出现你图片的这种情况了
回复 2 不支持 0

使用道具 举报

发表于 2012-6-29 13:56:55 | 显示全部楼层 来自 美国
用displacement 或 fracture energy 是为了消除mesh dependency。不然,不同的mesh size 会得到不同的结果。还有,pressure stress = (sigma_xx + sigma_yy+sigma_zz)/3. 是三个normal stress的平均值。
回复 2 不支持 0

使用道具 举报

发表于 2012-6-29 10:06:50 | 显示全部楼层 来自 美国
关于损伤演化的定义,我理解是单元从开始损伤到完全失效的应变增量。而这个应变增量是由失效位移除以单元特征长度得到。也就是说单元在开始失效之后应变继续增加的同时应力减小,应变增量达到2%(楼主的例子中,0.1mm/5mm=2%)完全失效,应力为零。这就是为什么损伤演化依赖于单元尺寸的原因。

点评

good  发表于 2021-7-20 09:30

评分

1

查看全部评分

回复 2 不支持 0

使用道具 举报

 楼主| 发表于 2012-6-28 16:43:24 | 显示全部楼层 来自 湖南长沙
谢谢管理员的鼓励,从论坛学到了许多,您本人的CAE操作集锦、常见错误信息汇总等帖子。
以及Robertsu与binling_love版主的帖子对我帮助非常大。也希望更多的人能够敞开心扉,共同推进我国仿真领域的发展。
回复 0 不支持 1

使用道具 举报

发表于 2012-6-29 02:38:13 | 显示全部楼层 来自 英国
参考应变率原则上你用1e-3或者1.0都可以。二者对应的材料参数(如A和B)数值不同,需要你自己校准。

评分

1

查看全部评分

回复 不支持

使用道具 举报

发表于 2012-6-29 09:11:31 | 显示全部楼层 来自 辽宁大连
    我想问楼主在分析时,分析步处选择的是“Dynamic,Temp-disp,Explicit”还是“Dynamic,Explicit”?这两种分析步有的人分别称为“热力耦合分析”和“绝热剪切分析”。我用“Dynamic,Explicit”分析在结果里怎么查看不到PEEQ,我的等效速效应变显示的是一个颜色,根本没有区别是怎么回事儿?
    还有关于Shear Damage中的Fracture Strain取值,我分别试了2,1.5和0.95,我发现值越小计算速度越慢,值越大越容易出现畸变网格。当Fracture Strain取值固定后,在“Mesh”模块里,Distortion Control越小锯齿化程度越明显,当然也越容易出现网格畸变的情况,将Distortion Control的值由默认逐渐增加到0.8时,锯齿化程度变小的趋势很明显!
回复 不支持

使用道具 举报

发表于 2012-6-29 09:13:30 | 显示全部楼层 来自 辽宁大连
还有楼主,你提到的“J-C damage initiation”我怎么没有看到啊?你用弹性模量、泊松比、断裂韧性KIC计算fracture energy的公式是什么?我在文献里从来没有看到呢?
回复 不支持

使用道具 举报

 楼主| 发表于 2012-6-29 10:41:24 | 显示全部楼层 来自 湖南长沙
nwcwww 发表于 2012-6-29 02:38
参考应变率原则上你用1e-3或者1.0都可以。二者对应的材料参数(如A和B)数值不同,需要你自己校准。 ...

     谢谢,我想是不是因为d4(应变率因子)一般比较小,然后In(1000)≈6.9,乘以d4后,也很小,对失效应变的影响不大,像铝合金7050-T7451对应变率的敏感性就很低。
    还有一个疑问,仿真过程中,为了加快计算时间,可以采取质量缩放,或者增大刀具的运动速度,这样应该会增大应变率,也就是说,降低了仿真结果的精度。怎样采取合理的质量或速度缩放系数,即加快了计算速度,又使仿真精度处于一个合理的阀值之内,可以用python语言建立一个多目标优化界面吗?
回复 不支持

使用道具 举报

 楼主| 发表于 2012-6-29 11:07:00 | 显示全部楼层 来自 湖南长沙
王兆喜 发表于 2012-6-29 09:11
我想问楼主在分析时,分析步处选择的是“Dynamic,Temp-disp,Explicit”还是“Dynamic,Explicit”? ...

我一般用Dynamic, Temp-disp, Explicit,这种分析步类型确实属于热力耦合分析,而且应该是完全热力耦合,不是顺序热力耦合。但文献中许多学者都建立了一个热力耦合控制方程,其基本原理是在总应变分量里面综合考虑弹性应变增量、塑性应变增量、热应变增量,然后基于大应变-大变形理论,prandtl-Reuss增量理论,虚功原理建立热弹塑性控制方程。

但这个方程是abaqus软件自身集成的吗?这个方程就对应了Dynamic, Temp-disp, Explicit分析类型,在软件运行时,求解这个方程。还是需要自己写子程序,实现热力耦合?
一直不是很清楚。。
绝热剪切我的理解是由于局部应变集中,导致短时间内剪切带内,与外界没有热量交换。形成了一种绝热环境。容易形成锯齿状切屑。
    你说的fracture strain取值越小,计算速度越慢,这个我没有试验过。
    我的理解是:fracture strain指剪切断裂时的应变,理论上应该是断裂应变越小,越早发生断裂啊。如果把,fracture strain取的越大,则说明材料塑性越好,延展性越大,越不容易断裂啊。。那么网格肯定被拉得很长了。长宽比越大,网格也就越容易畸变了。
    当fracture strain固定时,改变Element control里面的distortion control值,一般默认好像是0.1,也就是说长宽比小于0.1时,软件会报错,excessive distortion element。你把它设的越小,那么就允许网格继续变形。建议加入ALE控制,切削过程变形太大,网格扭曲是无法避免的,很有必要采取自适应网格控制。
    你做的是分离线模型吗?如果将distortion control 增大到0.8,那么软件将控制网格长宽比大概为0.8,相当于抑制了材料的变形,甚至还处于弹性变形阶段就停止了,塑性变形也就越小,由塑性变形产生的热量也就少了。热软化效应减轻,锯齿化程度将会变小。
    以上纯粹是我个人的理解。。不对之处请高手指正。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×

评分

1

查看全部评分

回复 不支持

使用道具 举报

 楼主| 发表于 2012-6-29 11:13:09 | 显示全部楼层 来自 湖南长沙
王兆喜 发表于 2012-6-29 09:13
还有楼主,你提到的“J-C damage initiation”我怎么没有看到啊?你用弹性模量、泊松比、断裂韧性KIC计算fr ...

J-C damage initiation 是我为了区别damage evolution自己取的名词,软件界面上没有这个。。
裂纹表面能G与KIC的换算关系在断裂力学里面有,我参考了论坛上一个版主的帖子,http://forum.simwe.com/forum.php ... 2%E9%9F%A7%E6%80%A7
不过要注意单位。
回复 不支持

使用道具 举报

 楼主| 发表于 2012-6-29 11:32:08 | 显示全部楼层 来自 湖南长沙
shenglivict 发表于 2012-6-29 10:06
关于损伤演化的定义,我理解是单元从开始损伤到完全失效的应变增量。而这个应变增量是由失效位移除以单元特 ...

有道理。看过一篇2011年出来的文章,主要将切削仿真过程中的网格依赖性。作者采用J-C damage。定义displacement at failure与失效应变的关系

这与abaqus anlysis user's manual里面关于progressive damage里面的公式是一样的,然后作者指出切削过程剪切带中的局部应变与单元长度成反比,然后用这个应变乘以特征单元长度,相当于两个互为倒数的数乘积为1,这样就使得失效位移与单元特征长度无关,这也正是abaqus软件为什么选择displacement at failure作为定义失效演变的判定标准的原因。。
    但有一点不明白,为什么说,局部应变,与单元长度成反比?是不是说,假如用两根长度不一样的试样做拉伸试验,越长的试样,由于体积大,材料多,分子越多,分子键也越多,要发生塑性变形,要破坏的分子键也越多,所以需要的外部能量越大?抵抗变形的能力越强。所以越难发生变形?
    这是个人理解,希望大家踊跃讨论。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×

评分

1

查看全部评分

回复 不支持

使用道具 举报

发表于 2012-6-29 13:18:43 | 显示全部楼层 来自 辽宁大连
sanxiarenshi 发表于 2012-6-29 11:07
我一般用Dynamic, Temp-disp, Explicit,这种分析步类型确实属于热力耦合分析,而且应该是完全热力耦合, ...

楼主分析的很透彻啊,很有可能的啊,谢谢了哈!!!
回复 不支持

使用道具 举报

 楼主| 发表于 2012-6-29 14:19:29 | 显示全部楼层 来自 湖南长沙
dianyun 发表于 2012-6-29 13:56
用displacement 或 fracture energy 是为了消除mesh dependency。不然,不同的mesh size 会得到不同的结果 ...

谢谢纠正,确实错了。应力三轴度(stress triaxiality)是静水应力(sigma_m)与等效应力的比值的相反数
回复 不支持

使用道具 举报

 楼主| 发表于 2012-6-29 21:28:25 | 显示全部楼层 来自 湖南长沙
     总结了一下前面做的一些仿真,发现了使用J-C damage 准则时,为什么单元被拉得很长,应变达到了6点几。原因在于d3的正负号弄错了,以AISI4340为例,d3应该是-2.12,这是Johnson论文里面数据。
    以前我取的是2.12,因为好多文献里面都取2.12。而且受到abaqus analysis user's manual 21.2.2的影响,里面说d3一般取正值。经过我的实验与推理,此处应该有误,对于大部分的材料d3应该取负值。
    原因我在另外一个帖子里面已经说了,做切削碰到这方面问题的朋友可以去看一看,如有不对,还望指出。
帖子地址:http://forum.simwe.com/thread-1044024-1-1.html
      以上是我个人理解,如有不对,还请高手纠正。。
回复 不支持

使用道具 举报

发表于 2012-7-10 20:59:38 | 显示全部楼层 来自 辽宁大连
sanxiarenshi 发表于 2012-6-29 21:28
总结了一下前面做的一些仿真,发现了使用J-C damage 准则时,为什么单元被拉得很长,应变达到了6点几 ...

我d3用负值单元也是被拉得很长,不像用Shear damage很利落的断裂,是怎么回事儿?
回复 不支持

使用道具 举报

 楼主| 发表于 2012-7-10 23:20:13 | 显示全部楼层 来自 湖南长沙
王兆喜 发表于 2012-7-10 20:59
我d3用负值单元也是被拉得很长,不像用Shear damage很利落的断裂,是怎么回事儿? ...

应该是damage evolution定义的参数不合适或者没有定义,定义损伤演化有两种方式displacement和fracture energy。
要根据材料的特性来做实验或者查文献,确定一个合适的参数,这样单元才不会被拉得很长。
回复 不支持

使用道具 举报

发表于 2013-11-29 14:07:18 | 显示全部楼层 来自 安徽淮南
lz太好了,顶一个
回复 不支持

使用道具 举报

发表于 2013-11-29 14:10:58 | 显示全部楼层 来自 安徽淮南
lz您好,请问你看我的仿真怎么会是这样呢,求指导

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复 不支持

使用道具 举报

发表于 2013-12-1 09:19:56 | 显示全部楼层 来自 安徽淮南
sanxiarenshi 发表于 2013-11-30 21:08
在定义场变量输出Field Output时候,勾选Status,就会隐藏失效的单元,也就不会出现你图片的这种情况了 ...

嗯,非常感谢lz,不知道lz有没有遇到过这种现象啊,不知道是什么原因,一直调试不好,能不能给指导指导,谢谢了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-4-20 09:15 , Processed in 0.060704 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表