Notifications
Clear all

Using Umat Subroutines in Abaqus

4 Posts
3 Users
0 Likes
751 Views
Posts: 22
Topic starter
(@Anil Karumuri)
Eminent Member
Joined: 12 years ago

Hi,

I am very new in UMAT and Abaqus. I want to add this general subroutine example in Abaqus but I dont know how to make it. Which changes should I make in subroutine to I can use it in Abaqus. How can I call the subroutine to Abaqus? I know these are very basic questions but if you can answer me, it will help me much.

SUBROUTINE UMAT(STRESS, STATEV, DDSDDE, SSE, SPD, SCD, RPL,

1 DDSDDT, DRPLDE, DRPLDT, STRAN, DSTRAN, TIME, DTIME, TEMP, DTEMP,

2 PREDEF, DPRED, CMNAME, NDI, NSHR, NTENS, NSTATV, PROPS, NPROPS,

3 COORDS, DROT, PNEWDT, CELENT, DFGRD0, DFGRD1, NOEL, NPT, LAYER,

4 KSPT, KSTEP, KINC)

C

INCLUDE ABA_PARAM.INC

C

CHARACTER*8 CMNAME

C

DIMENSION STRESS(NTENS), STATEV(NSTATV), DDSDDE(NTENS, NTENS),

1 DDSDDT(NTENS), DRPLDE(NTENS), STRAN(NTENS), DSTRAN(NTENS),

2 PREDEF(1), DPRED(1), PROPS(NPROPS), COORDS(3), DROT(3, 3),

3 DFGRD0(3, 3), DFGRD1(3, 3)

C Coding for Isotropic Isothermal Elasticity

C ----------------------------------------------------------------

C UMAT FOR ISOTROPIC ELASTICITY

C CANNOT BE USED FOR PLANE STRESS

C ----------------------------------------------------------------

C PROPS(1) - E

C PROPS(2) - NU

C ----------------------------------------------------------------

C

IF (NDI.NE.3) THEN

WRITE (7, *) THIS UMAT MAY ONLY BE USED FOR ELEMENTS

1 WITH THREE DIRECT STRESS COMPONENTS

CALL XIT

ENDIF

C

C ELASTIC PROPERTIES

EMOD=PROPS(1)

ENU=PROPS(2)

EBULK3=EMOD/(ONE-TWO*ENU)

EG2=EMOD/(ONE+ENU)

EG=EG2/TWO

EG3=THREE*EG

ELAM=(EBULK3-EG2)/THREE

C

C ELASTIC STIFFNESS

C

DO K1=1, NDI

DO K2=1, NDI

DDSDDE(K2, K1)=ELAM

END DO

DDSDDE(K1, K1)=EG2+ELAM

END DO

DO K1=NDI+1, NTENS

DDSDDE(K1 ,K1)=EG

END DO

C

C CALCULATE STRESS

C

DO K1=1, NTENS

DO K2=1, NTENS

STRESS(K2)=STRESS(K2)+DDSDDE(K2, K1)*DSTRAN(K1)

END DO

END DO

C

RETURN

END

3 Replies
Posts: 24
(@marco)
Eminent Member
Joined: 16 years ago

You need to save this code to a file like code.f. Then when you submit your simulation, you need to specific the name the code in the command line by user = code.f .

3 Replies
Posts: 28
(@yasserwbs)
Eminent Member
Joined: 14 years ago

If you are using Windows then the file extension needs to be .for not .f.

Reply
Posts: 24
(@marco)
Eminent Member
Joined: 16 years ago

You must right, because I have never done that on Windows.

Reply
Share: