- 积分
- 0
- 注册时间
- 2018-4-23
- 仿真币
-
- 最后登录
- 1970-1-1
|
发表于 2019-4-13 11:03:59
|
显示全部楼层
来自 大连理工大学北山B区
那个是作者自己写的子程序,不是abaqus自带的。具体如下:
SUBROUTINE HARDSUB(SYIELD,HARD,EQPLAS,TABLE,NVALUE )
C
INCLUDE 'ABA_PARAM.INC'
C
DIMENSION TABLE(2,NVALUE)
C
PARAMETER(ZERO=0.D0)
C
C SET YIELD STRESS TO LAST VALUE OF TABLE, HARDENING TO ZERO
C
SYIELD=TABLE(1,NVALUE)
HARD=ZERO
C IF MORE THAN ONE ENTRY, SEARCH TABLE
C
IF(NVALUE.GT.1) THEN
DO K1=1,NVALUE -1
EQPL1=TABLE(2,K1+1)
IF(EQPLAS.LT.EQPL1) THEN
EQPL0=TABLE(2,K1)
IF(EQPL1.LE.EQPL0) THEN
WRITE(7,1)
1 FORMAT(//,30X,'***ERROR - PLASTIC STRAIN MUST BE `,
1 `ENTERED IN ASCENDING ORDER')
CALL XIT
ENDIF
C
C CURRENT YIELD STRESS AND HARDENING
C 通过插值得到的硬化
DEQPL=EQPL1-EQPL0
SYIEL0=TABLE(1,K1)
SYIEL1=TABLE(1,K1+1)
DSYIEL=SYIEL1-SYIEL0
HARD=DSYIEL/DEQPL
SYIELD=SYIEL0+(EQPLAS-EQPL0)*HARD
GOTO 10
ENDIF
END DO
10 CONTINUE
ENDIF
RETURN
END
|
|