### 黄晓明书中修正burgers黏弹模型abaqus子程序Umat

END IF END DO LOOP2 IF(TEMP LT TABLE(l, 1)ORTEMP.GT.TABLEONVALUE, I)THEN DOK1=1,7 TABLEI(KI)TABLE(NVALUE, KI TABLEO(K1)=TABLE(L, K1) END DO DOK2=1,7 PARAM(K2-TABLEO(K2)+(TEMP-TABLE(L, 1)*TABLEI(K2) -TABLEO(K2)/ TABLE(NVALUE, 1)-TABLE(I, 1)) END DO END IF END IF END IF EMOD=PARAM(2) !E0 ENU=PARAM(3 IF(ENU.GT.0.4999.AND ENU. LT..500DENU=0. 499 EBULK3-EMODONE-TWOFENU) 3K EG2-EMOD (ONE+ENU) !2G EG=EG2/TWO EG3=THREEYEG !3G ELAM=(EBULK3-EG2)THREF ! C迭代之前获取上一步的状态变量 DO KI-lNTENS EELAS(K1STATEV(KI) !弹性应变 ECREE(K1)= STATEⅤ(K1+ NTENS)!蠕变应变 END DO EQCRE= STATEV(1+2 NTENS)!等效蠕变应变 EQⅤ SESTATEV(22* NTENS)!等效粘性流动应变 上QⅤEE= STATEV(3+2 NTENS)!等效粘弹性应变 C定义瞬时弹性性能 IF(KSTEPEQ 1THEN 形成初始吋刻弹性刚度 DO KI=INTENS DO K2=LNTENS DDSDDE(Kl, K2)=ZERO END DO END DO DO KI=lNDI DO K2=LNDI DDSDDE(K2, KD=ELAM END DO DDSDDE(Kl, KI)=EG2+ELAM END DO DOKl=NDⅠ+1 NTENS DDSDDE(KI, KI=EG END DO 根据弹性应变计算初始时刻应力 DO KI=INTENS DO K2=INTENS STRESS(K2STRESS(K2)+DDSDDE(K2, KI)"DSTRAN(KI) END DO EELASCKIEELAS(K1)+DSTRAN(K1) END DO END IF Ccc CALCULATE CREEP STRAIN(计算蠕变应变) IF(KSTEP GT.THEN C采用常刚度迭代方案,刚度为初始时刻弹性刚度 DO KI=LNTENS DO K2-LNTENS DDSDDE(K1, K2)ZERO END DO END DO DOKI=LNDI DO K2=LNDI DDSDDE(K2, K1=ELAM END DO DDSDDE(Kl, KI)=EG2+ELAM END DO DO KI-NDI-lNTENS DDSDDE(KI, Kl=EG END DO C 求取,E SMISESI-(STRESS(I)-STRESS(2)) **2+(STRESS(2)-STRESS3))**2 +(STRESS(3)-STRESS(1)* 2 DO KIENDI-LNTENS SMISES1-SMISES1+SIX STRESS(K1)**2 END DO SMISESI-SQRT(SMISESI/TWO) C获取t时刻材料参数E1,n1,A,B El=PARAM(4) YI-PARAM(S) A-PARAM(6 B=PARAM() 下面的参数分别表示对外置粘壶和內置粘壶的ε求导 EQVSERI-SMISES1*EXP(1.0"B TMME(I/A EQVEERI-SMISESI*EXP(-1.0 EI/YITIME(D)YI EQCRER1=EQVSER1+EQVEERI C迭代之前,认为a(+ DO KI=l.NTENS STREST(KI)=STRESS(KI) END DO C给存储蠕应变增量的数组娬初值为0 DOKI=LNTENS DECRT(K1=0.0 END DO 非线性迭代过程,求取△s(n+1)对应的△s(n+1)和△o(mn+1) LOOP 1: DO KEWTON-1NEWTON C求取G)、(k) SMISES2-(STREST(1)-STREST(2))**2+(STRESTQ2)-STREST()**2 +(STREST()-STREST(1))**2 DO KINDI+LNTENS SMISES2-SMISES2+SIX STREST(KI) **2 END DO SMISES2-SQRT(SMISES2/TWO) EQVSER2-SMISES2 EXP(1.0 B TIME(+DTIMEDA EQVEER2-SMISES2 EXP(.0-ElY1*(TIME(1+DTIME/Y1 EQCRER2=EQVSER2+EQVEER2 求取∞(=(1-0)a+O"o(1 C ()=(1-) +1) +b+4 SMISES3=0.2*SMISES1+0.8SMISES2 EQCRER3-=0.2*EQCRER1+0.8*EQCRER2 +1) 求取什+DNBm1)=70+) TERMITHREE/TWO * EOCRER3SMISES3 求取 (1-6) n+1) +e DO KI=INTENS STREST2(K1)=0.2 STREST(K1)+0.8 STRESS(KI) END DO C计算偏应力S" PRESS=0.0 DO KI=1.NDI PRESS=PRESS+STREST2(KI)/THREE END DO DO KI=lNDI DVSTRESS(KI=STREST2(K1)-PRESS END DO DO K2-NDI+INTENS DVSTRESS(K2-STREST2(K2 END DO C计算蠕应变、弹性应变、等效蠕应变等的增量 DO KI=INTENS DECRE(KITERM1DTIMEDVSTRESS(K1 DEELA(KI)=DSTRAN(KI)-DECRE(KD) END DO DEQCRE-EQCRER3 DTIME DEQVSE=(0.2 EQVSERI0 8 EQVSER2) DTIME DEQVEE=(0. 2 EQVEER1+0.8 EQVEER2)*DTIME (H+I C收敛判定 c(k+1) ‖<er,则结束迭代 △E TERM2=0.0 TERM3=0.0 DO KI=lNTENS TERM2-TERM2-(DECRE(Kl)-DECRT(KI)*2 TERM3- TERM3-DECRE(K1)**2 END DO TERM4=SQRT(TERM2) TERMS=SQRTTERM3) TERM6-TERMTERM5 IFTERM6. LE.TOLERTHEN EXIT LOOP1 END IF C求取(=a+△ DO KI=INTENS DSTREST(K I)=0.0 END DO DOKI-lNTENS DO K2=INTENS DSTREST(KI=DSTREST(K1)+DDSDDE(Kl, K2)*DEELA(K2) END DO END DO DO KI-lNTENS STREST(KI=STRESS(KI+DSTREST(KI) END DO C把蠕变增量保存到临时数组 DECRT中 DO KI=LNTENS DECRT(K1=DECRE(K1) END DO END DO LOOPI C 更新应力 DO KI=LNTENS STRESS(KI=STREST(KI) END DO 更新状态变量,包括蠕变应变、弹性应变以及等效应变等 DOKI=INTENS ECREE(KI=ECREE(KI)+DECRE(Kl) EELAS(K1)-EELAS(K1)+DEELA(KI) END DO EQCRE-EQCRE+DEQCRE EQVSE=EQVSE+DEQVSE FQⅤFE= EOVEE+ DEOVEE END IF C更新 JACOBIAN矩阵 DO KI=INTENS DO K2=l.NTENS DDSDDE(KL, K2)=ZERO END DO END DO DO K=lNDI DO K2=INDI DDSDDE(K2, KD=ELAM END DO DDSDDE(Kl, KI=EG2+ELAM END DO DO KINDI+I.NTENS DDSDDE(Kl, KI=EG END DO 保存状态变量 DO KI=LNTENS STATEV(K1-EELAS(K1) STATEV(KI+NTENS-ECREE(Kl) END DO STATEV(1+2*=EQCRE STATEV(+2=EQVSE STATEV(3+2 NTENS-EQVEE RETURN END

...展开详情

抢沙发
一个资源只可评论一次，评论内容不能少于5个字
码龄2年
暂无认证
关注 私信 TA的资源
上传资源赚积分,得勋章
最新推荐
黄晓明书中修正burgers黏弹模型abaqus子程序Umat 49积分/C币 立即下载
1/8

试读已结束，剩余5页未读...

49积分/C币 立即下载 ＞