用户登录

你在这里

单轴压缩(塑性)试验的UMAT不收敛

大家好,

我是UMAT的初学者。

基于塑性模型和后向欧拉方法,我正在建立形状记忆合金的单轴压缩模型。

材料的单位是1*1*1。这似乎是个简单的问题。

无论如何,我仍然不熟悉UMAT和Abaqus。

问题是我只在y轴上应用负载,并指定附加文件中的边界条件

我认为它通过了塑性变形区,abaqus试图计算…

然而,这似乎还没有算完……现在,我不知道我的UMAT的哪一部分是错的…

您能就……提出一些建议吗?

1)适合单轴压缩试验的边界条件

2)增量时间是否必须等于后向欧拉法的间隔增量(循环次数)

3)可能我的UMAT有些部分是错误的

我在下面复制了我的UMAT的一些部分

谢谢你的建议:)

************************************************************************************

C设置应力阈值

C声明PROPS(3)压力开始重定向到SMVR变量

SMVR =道具(3)

C

C使用max的绝对值。

ABSTR = ABS (STR (2, 2))

C屈服条件,应变率STRR

φ= ABSTR-SMVR

STATEV(7) =φ

FMVR =道具(4)

TOTSTRN =道具(5)

STRR = (FMVR-SMVR) / TOTSTRN

写(7,666)statev (1), statev (2), statev (3), statev (4), statev (5)

+ statev (6), statev (7)

666格式(f12.8, f12.8, f12.8, f12.8, f12.8, f12.8, f12.8)

C比较PHI大于0或不大于0。如果它大于零,将开始重新定位。

C

10 if (phi . ge . 0) then

C Tresca标准的流动方向

C

流(1)= 1

流(2)= 1

k1 =3 ntens

流量(k1) = 0

最后做

C

C计算塑性乘数系数以补偿返回屈服面的应力

C

10,牛顿= 1吗

RSH = ABS (STR (1, 1) STR (2, 2) -SMVR + STRR * DP)

DP = DP + RSH / (3 * GSHR + STRR)

如果(dabs (rsh) .lt.toler)转到20

最后做

20日继续

C

C更新孪生菌株(ETW)

ETW (1) = ETW (1) + DP *流(1)

ETW (2) = ETW (2) + DP *流(2)

k1 =3 ntens

ETW (K1) = ETW (K1) + DP *流(K1)

最后做

C

C孪生应变部分的增量

C

DTWSTRAN (1) = DP *流(1)

DTWSTRAN (2) = DP *流(2)

k1 =3 ntens

DTWSTRAN (K1) = DP *流(K1)

最后做

C

C马克斯。45度孪晶界内应变(var1和Var2相互垂直)

C C =平方根部分

C MAXTWSTR =作用于孪晶界的最大剪切应变(45度)

C

C =√(DTWSTRAN (1) -DTWSTRAN (2)) / 2) * * 2 + DTWSTRAN (4) * * 2)

Maxptwin = (dtwstran (1)+ dtwstran (2))/2 + c

Minptwin = (dtwstran (1)+ dtwstran (2))/2 - c

Maxtwstr = (maxptwin-minptwin)/2

C ----------------------------------------------------------------------------------

C如果var.2以var.1的代价增长,则更新var.2的体积分数

C

如果(ABS (STR (1,1)) .GE.ABS (STR (2, 2)))

If (vflag.eq.0) then

V1 =一个

数= 0

V2 = 0

Vflag = 1

其他的

DV2 = MAXTWSTR / TOTSTRN

数=数+ 1

CV2 = DV2 *计数

V2 = CV2

V1 = V1-CV2

如果

转到20

C

C如果var.1以var.2的代价增长,则更新var.1的体积分数

C

Else if (abs (str (1,1)) .lt.abs (str (2,2))) then

If (vflag.eq.0) then

V2 =一个

数= 0

V1 = 0

Vflag = 1

其他的

DV1 = MAXTWSTR / TOTSTRN

数=数+ 1

CV1 = DV1 *计数

V2 = V2-CV1

V1 = CV1

如果

转到20

如果

C ------------------------------------------------------------------------------------

C更新应力,弹性应变

C

k1 =1, ndi

Eelas (k1) = Eelas (k1) +流量(k1)* dp

压力(K1) = (1-DP * (EG2 +拦)/ ABS(压力(K1))) *压力(K1)

最后做

nten, K1 = NDI + 1吗

Eelas (k1) = Eelas (k1) +流量(k1)* dp

压力(K1) = (1-DP * (EG2 +拦)/ ABS(压力(K1))) *压力(K1)

最后做

C

C计算雅可比矩阵。ABAQUS中与解收敛性有关的雅可比矩阵

C

EFFG = GSHR * SMVR / ABS (STR (1,1) STR (2, 2))

两个* EFFG EFFG2 =

EFFG3 = 3 / 2 * EFFG2

EFFLAME = (EBULK-EFFG2) / 3

EFFHRD = * STRR /快-EFFG3 (+ STRR快)

k1 =1, ndi

k2 =1, ndi

DDSDDE (K1, K2) = EFFLAM

最后做

DDSDDE (K1, K1) = EFFG2 + EFFLAM

最后做

nten, K1 = NDI + 1吗

DDSDDE (K1, K1) = EFFG

最后做

k1 =1 ntens

k2 =1 ntens

DDSDDE (K1, K2) = DDSDDE (K1, K2) + EFFHRD *流(K2) *流(K1)

最后做

最后做

C

C在最后一部分(在计算雅可比矩阵之前),我们必须告诉ABAQUS,如果Variant1或variant2不等于1

C继续进行重新定位过程中的计算

C

如果(MAXTWSTR.LT.TOTSTRN)

转到10

Else if (maxtwstr.ge.totstrn) then

NDI, K1 = 1吗

STATEV (K1) = STR (K1, K1)

STATEV (K1 + 9) = EELAS1 (K1, K1)

最后做

STATEV (4) = STR(1、2)

STATEV (5) = STR (2,3)

STATEV (6) = STR(1、3)

STATEV (13) = EELAS1(1、2)

STATEV (14) = EELAS1(2、3)

STATEV (15) = EELAS1(1、3)

STATEV (16) = ETW (1)

STATEV (17) = ETW (2)

STATEV (18) = ETW (3)

STATEV (19) = V1

STATEV (20) = V2

STATEV (21) = DP

返回

如果

如果

返回

结束

附件 大小
纯文本图标0627.三种 3.71 KB
订阅“UMAT单轴压缩(塑性)试验不收敛”评论

最近的评论

更多的评论

辛迪加

订阅辛迪加