ABAQUS模拟梁单元断裂的本构方程(VUMAT)
* TEMPNEW, STRETCHNEW, DEFGRADNEW, FIELDNEW,
C WRITE ONLY -
* STRESSNEW, STATENEW, ENERINTERNNEW, ENERINELASNEW )
C
INCLUDE 'VABA_PARAM.INC'
C
DIMENSION COORDMP(NBLOCK,*), CHARLENGTH(NBLOCK), PROPS(NPROPS),
1 DENSITY(NBLOCK), STRAININC(NBLOCK,NDIR+NSHR),
2 RELSPININC(NBLOCK,NSHR), TEMPOLD(NBLOCK),
3 STRETCHOLD(NBLOCK,NDIR+NSHR),
4 DEFGRADOLD(NBLOCK,NDIR+NSHR+NSHR),
5 FIELDOLD(NBLOCK,NFIELDV), STRESSOLD(NBLOCK,NDIR+NSHR),
6 STATEOLD(NBLOCK,NSTATEV), ENERINTERNOLD(NBLOCK),
7 ENERINELASOLD(NBLOCK), TEMPNEW(NBLOCK),
8 STRETCHNEW(NBLOCK,NDIR+NSHR),
9 DEFGRADNEW(NBLOCK,NDIR+NSHR+NSHR),
1 FIELDNEW(NBLOCK,NFIELDV),
2 STRESSNEW(NBLOCK,NDIR+NSHR), STATENEW(NBLOCK,NSTATEV),
3 ENERINTERNNEW(NBLOCK), ENERINELASNEW(NBLOCK)
C
CHARACTER*80 CMNAME
DIMENSION INTV(2)
PARAMETER ( ZERO = 0.D0, ONE = 1.D0, TWO = 2.D0, THREE = 3.D0,
* THIRD = ONE / THREE, HALF = 0.5D0, TWOTHDS = TWO / THREE,
* OP5 = 1.5D0 )
C
C THE STATE VARIABLES ARE STORED AS:
C STATE(*,1) = ELEMENT DELETE
*
*
open(100,file='E:\Temp_ABAQUS\model\00.txt')
F = PROPS(1) 【本构参数】
G = PROPS(2) 【本构参数】
H = PROPS(3) 【本构参数】
T = PROPS(4) 【判据参数】
*
*
*
DO K = 1, NBLOCK
C
STATENEW(K,2)=STATEOLD(K,2)+STRAININC(K,1)
IF(STATEOLD(K,1).EQ.ONE)THEN
STRESSNEW(K,1)=F*(exp(H*STATENEW(K,2))
1 -exp(G*STATENEW(K,2))) 【材料本构关系式,计算应力】
IF(STRESSNEW(K,1).GE.T)THEN 【应力判定】
STATENEW(K,1)=ZERO
write(100,*) 'K=',K 【写入数据】
write(100,*) 'steptime=',STEPTIME 【写入数据】
write(100,*) ' stress-crack=',STRESSNEW(K,1) 【写入数据】
ELSE
STATENEW(K,1)=ONE
STRESSPOWER = HALF *
1 ( ( STRESSOLD(K,1)+STRESSNEW(K,1) )*STRAININC(K,1) ) 【更新应力】
C
C
ENERINTERNNEW(K) = ENERINTERNOLD(K)
1 + STRESSPOWER / DENSITY(K) 【更新内能】
END IF
ELSE
STATENEW(K,1)=ZERO
END IF
END DO
RETURN
END