END DO c...
99 continue c...
ENDIF
C将弹性应变,塑性应变分量保存到状态变量中,并传到下一个增量步 C STORE ELASTIC AND (EQUIVALENT) PLASTIC STRAINS C IN STATE VARIABLE ARRAY C
DO K1=1,NTENS
STATEV(K1)=EELAS(K1)
STATEV(K1+NTENS)=EPLAS(K1) END DO
STATEV(1+2*NTENS)=EQPLAS C
RETURN END c...
c...子程序,根据等效塑性应变,利用插值的方法得到对应的屈服应力 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