UMAT_Trying to write stresses

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

UMAT_Trying to write stresses

Manzar.Masud
This post has NOT been accepted by the mailing list yet.
Hello. I hope everything is good at your end. I have a query regarding UMAT  and i want to write stress . I have written command with  the help of your file but wondering what is going on behind.
          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,JSTEP,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),
     4 JSTEP(4)
C     ELASTIC USER SUBROUTINE
      PARAMETER (ONE=1.0D0, TWO=2.0D0)
         E=PROPS(1)
         ANU=PROPS(2)
         ALAMBDA=E*ANU/(ONE+ANU)/(ONE-TWO*ANU)
         AMU=E/(ONE+ANU)/2
             DO I=1,NTENS
              DO J=1,NTENS
              DDSDDE(I,J)=0.0D0
              ENDDO
             ENDDO
                DDSDDE(1,1)=(ALAMBDA+TWO*AMU)
                DDSDDE(2,2)=(ALAMBDA+TWO*AMU)
                DDSDDE(3,3)=(ALAMBDA+TWO*AMU)
                DDSDDE(4,4)=AMU
                DDSDDE(5,5)=AMU
                DDSDDE(6,6)=AMU
                DDSDDE(1,2)=ALAMBDA
                DDSDDE(1,3)=ALAMBDA
                DDSDDE(2,3)=ALAMBDA
                DDSDDE(2,1)=ALAMBDA
                DDSDDE(3,1)=ALAMBDA
                DDSDDE(3,2)=ALAMBDA
         DO I=1,NTENS
              DO J=1,NTENS
              STRESS(I)=STRESS(I)+DDSDDE(I,J)*DSTRAN(J)
!/////////////////////////////////////////////////////////////////////
                        OPEN (UNIT=120,FILE='D:\Temp\LOG2.txt',ACCESS='APPEND',
     &          ACTION='WRITE',STATUS='UNKNOWN')
      WRITE(120,*)'Stress11 ',STRESS(1)
!       WRITE(120,*)'Stress11 ',STRESS(1), 'Stress22 ',STRESS(2)
! WRITE(120,*)'Stress33 ',STRESS(3), 'Stress12 ',STRESS(4)
! WRITE(120,*)'Stress13 ',STRESS(5), 'Stress23 ',STRESS(6)
            CLOSE (UNIT=120)
!/////////////////////////////////////////////////////////////////////  
              ENDDO
             ENDDO
      RETURN
      END

this is my code.
My question is that :
txt file is being created as a result of this. But there are so many values in the txt file. I am asking just S11. it is giving me S11 but there are more than 700,000 values in txt file. I want to know what is going on here. I am using implicit method.

Thanks for your help.

Regards

Manzar