Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations IDS on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

How to define field variables in abaqus to change concrete damage plasticity?

Status
Not open for further replies.

M.Hassani

Civil/Environmental
Feb 21, 2020
1
Hello
I want to model expansion in abaqus and i want to decrease modulus of elasticity and concrete damage plasticity. I have some data indicate that modulus of elasticity and compressive and tensile strength decrease in different free expansions.
for example when the free expansion is 0.001mm, modulus of elasticity and compressive and tensile strength reach at 80 and 75 and 70 percent.
I wrote USDFLD and UEXPAN subroutine and defined field variable in abaqus to decrease modulus of elasticity and compressive and tensile behavior. But when i check the results, i see there is no difference between when i define field for compressive and tensile behavior or not. Abaqus just used USDFLD for decreasing modulus of elasticity. I attached the input file.

SUBROUTINE USDFLD(FIELD,STATEV,PNEWDT,DIRECT,T,CELENT,
1 TIME,DTIME,CMNAME,ORNAME,NFIELD,NSTATV,NOEL,NPT,LAYER,
2 KSPT,KSTEP,KINC,NDI,NSHR,COORD,JMAC,JMATYP,MATLAYO,
3 LACCFLA)
INCLUDE 'ABA_PARAM.INC'
CHARACTER*80 CMNAME,ORNAME
CHARACTER*3 FLGRAY(15)
DIMENSION FIELD(NFIELD),STATEV(NSTATV),DIRECT(3,3),T(3,3),TIME(2)
DIMENSION ARRAY(700),JARRAY(700),JMAC(*),JMATYP(*),COORD(*)


!Reading instantaneous stress in direction 11,22,33(axial)
CALL GETVRM('S',ARRAY,JARRAY,FLGRAY,JRCD,JMAC,JMATYP,MATLAYO,
1 LACCFLA)

S11=ARRAY(1)
S22=ARRAY(2)
S33=ARRAY(3)
STATEV(1)=S11
STATEV(2)=S22
STATEV(3)=S33

if (TIME(2) .GE. 0)then

field(1)=0.001*Time(2)
field(1)=statev(4)
end if

OPEN(1,FILE='D:\UEXPAN\Console2\Console2\1\N1.TXT',
1 ACCESS='APPEND')

WRITE(1,*)"--------------------------------------------"
WRITE(1,*)field(1),S11
CLOSE(1)


RETURN
END SUBROUTINE

SUBROUTINE UEXPAN(EXPAN,DEXPANDT,TEMP,TIME,DTIME,PREDEF,DPRED,
1 STATEV,CMNAME,NSTATV,NOEL)

INCLUDE 'ABA_PARAM.INC'
CHARACTER*80 CMNAME
DIMENSION EXPAN(*),DEXPANDT(*),TEMP(2),TIME(2),PREDEF(*),DPRED(*),
1 STATEV(NSTATV),ARRAY(15)


S11=STATEV(1)
S22=STATEV(2)
S33=STATEV(3)

if ((CMNAME .EQ. "CONCRETE") .AND. (TIME(2) .GE. 0))then

IF (S11 .LT. 0)THEN
SX1=S11
ELSE
SX1=0
end if

IF (S22 .LT. 0)THEN
SX2=S22
ELSE
SX2=0
end if

IF (S33 .LT. 0)THEN
SX3=S33
ELSE
SX3=0
end if

IF (SX1 .GT. -5)THEN
EXPAN(1)=(1+(SX1/5))*statev(4)
else
EXPAN(1)=0
End if

IF (SX2 .GT. -5)THEN

EXPAN(2)=(1+(SX2/5))*statev(4)
else
EXPAN(2)=0
end if


IF (SX3 .GT. -5)THEN

EXPAN(3)=(1+(SX3/5))*statev(4)
else
EXPAN(3)=0
end if


END IF


OPEN(1,FILE='D:\UEXPAN\Console2\Console2\1\N2.TXT',
1 ACCESS='APPEND')

WRITE(1,*)"--------------------------------------------"
WRITE(1,*)s11,s22,sx1,sx2,EXPAN(1)
CLOSE(1)

RETURN
END SUBROUTINE
 
 https://files.engineering.com/getfile.aspx?folder=e607f83d-cc51-4d66-bcb9-5040c25599f5&file=Job-500.TXT
Status
Not open for further replies.

Part and Inventory Search

Sponsor