欢迎光临散文网 会员登陆 & 注册

Abaqus-Umat子程序理论基础与代码编写

2021-10-11 18:10 作者:易木木响叮当  | 我要投稿

本期内容将详细讲解Abaqus二次开发之非线性强化Umat代码,通过这次的学习,只要是应用Mises屈服法则,率无关的任何非线性强化均可适用。

模型介绍:

弹性模量20GPa,泊松比0.3,延续上一节Umat的模型,硬化曲线方程

%20%5Csigma_%7Bs%7D%3D200%2B400*(%5Cvarepsilon_%7Bp%7D)%5E%7B0.5%7D%20

材料设置:


编写流程:

计算弹性雅克比矩阵、更新弹性试应力、读取状态变量(弹性应变和塑性应变以及等效塑性应变)、编写计算强化系数和等效Mises应力的子程序(方便随时调用)、屈服后计算等效塑性增量、计算当前应力、弹性应变、塑性应变、调用Mises子程序、计算弹塑性雅克比矩阵、更新状态变量。

本次代码中用到了13个状态变量,1~6个为弹性应变,7~12个为塑性应变,13为等效塑性应变。

代码讲解:

部分代码如下(篇幅有限):

Props(1)代表杨氏模量,

Props(2)代表泊松比,

Props(3)代表初始屈服应力,

Props(4)~Props(6)非线性强化相关系数。

38~69行:计算弹性雅克比矩阵,更新弹性试应力;

73~77行:读取状态变量;

83行:调用计算非线性强化系数子程序;

88~89行:调用等效Mises应力子程序;

97~103行:

107~119行:(其中112~119行的循环结构要看懂)


123~133行:

138~145行:调用等效Mises应力,更新弹塑性雅克比矩阵;

150~154行:将弹性应变、塑性应变、等效塑性应变储存在状态变量中。

160~185行:编写计算非线性强化系数子程序;

187~217行:编写等效Mises应力子程序。

本次的代码原本要为大家验证一下的,打开Abaqus的时候才发现子程序关联失常,就把代码先写出来吧,有兴趣大家可以自行验证,然后一起交流。


注:篇幅有限,故在本文中仅展示部分代码,源代码请在我的公众号:“易木木响叮当”内回复:“非线性强化”,自动获取。


Abaqus-Umat子程序理论基础与代码编写的评论 (共 条)

分享到微博请遵守国家法律