ABAQUS-UMAT-ELASTIC

      SUBROUTINE UMAT(STRESS,STATEV,DDSDDE,SSE,SPD,SCD,
     1 RPL,DDSDDT,DRPLDE,DRPLDT,
     2 STRAN,DSTRAN,TIME,DTIME,TEMP,DTEMP,PREDEF,DPRED,CMNAME,
     3 NDI,NSHR,NTENS,NSTATV,PROPS,NPROPS,COORDS,DROT,PNEWDT,
     4 CELENT,DFGRD0,DFGRD1,NOEL,NPT,LAYER,KSPT,KSTEP,KINC)
C
      INCLUDE 'ABA_PARAM.INC'
C
      CHARACTER*80 CMNAME
      DIMENSION STRESS(NTENS),STATEV(NSTATV),
     1 DDSDDE(NTENS,NTENS),DDSDDT(NTENS),DRPLDE(NTENS),
     2 STRAN(NTENS),DSTRAN(NTENS),TIME(2),PREDEF(1),DPRED(1),
     3 PROPS(NPROPS),COORDS(3),DROT(3,3),DFGRD0(3,3),DFGRD1(3,3)

C
      PARAMETER(ZERO=0.D0,ONE=1.D0,TWO=2.D0)

C
C ELASTIC PROPERTIES
C
      E  = PROPS(1)      ! 弹性模量
      NU = PROPS(2)      ! 泊松比

      LAMBDA = E*NU/((ONE + NU)*(ONE - TWO*NU))
      MU = E/(TWO*(ONE + NU))

C     Jacobi矩阵初始化
      DO K1=1,NTENS
        DO K2=1,NTENS
           DDSDDE(K1,K2)=ZERO
        END DO
      END DO            

      DO K1=1,NDI
        DO K2=1,NDI
          DDSDDE(K1,K2) = LAMBDA
        END DO
        DDSDDE(K1,K1) = LAMBDA + TWO*MU
      END DO
      
      DO K1=NDI+1,NTENS
        DDSDDE(K1,K1) = MU 
      END DO

C     CALCULATE STRESS
      DO K1=1,NTENS
         DO K2=1,NTENS
            STRESS(K1) = STRESS(K1) + DDSDDE(K1,K2)*DSTRAN(K2)
         END DO
      END DO

      RETURN
      END

版权声明:本文为threedt原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。