PohanLille
Mechanical
- Jun 25, 2019
- 1
Dear all
I wrote my subroutine for my material. Young modulus is a function of strain.
It works well in 3D problem but for 2D plain strain it does not work correctly.
Please give my some suggestion to deal with this problem.
Thank you.
My code:
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)
C
INCLUDE 'ABA_PARAM.INC'
C
CHARACTER*80 CMNAME,ORNAME
CHARACTER*3 FLGRAY(15)
DIMENSION FIELD(NFIELD),STATEV(NSTATV),DIRECT(3,3),
1 T(3,3),TIME(2)
DIMENSION ARRAY(15),JARRAY(15),JMAC(),JMATYP(),
1 COORD(*)
C
C This is for material my ---cmanme = my
C Get strain: E
CALL GETVRM('EE',ARRAY,JARRAY,FLGRAY,JRCD,JMAC,JMATYP,MATLAYO,LACCFLA)
EPS = ABS(ARRAY(1))
C Assign1 EPS to1 field variable Young modulus depends on field variable FV1
FIELD(1) = EPS
C
RETURN
END
I wrote my subroutine for my material. Young modulus is a function of strain.
It works well in 3D problem but for 2D plain strain it does not work correctly.
Please give my some suggestion to deal with this problem.
Thank you.
My code:
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)
C
INCLUDE 'ABA_PARAM.INC'
C
CHARACTER*80 CMNAME,ORNAME
CHARACTER*3 FLGRAY(15)
DIMENSION FIELD(NFIELD),STATEV(NSTATV),DIRECT(3,3),
1 T(3,3),TIME(2)
DIMENSION ARRAY(15),JARRAY(15),JMAC(),JMATYP(),
1 COORD(*)
C
C This is for material my ---cmanme = my
C Get strain: E
CALL GETVRM('EE',ARRAY,JARRAY,FLGRAY,JRCD,JMAC,JMATYP,MATLAYO,LACCFLA)
EPS = ABS(ARRAY(1))
C Assign1 EPS to1 field variable Young modulus depends on field variable FV1
FIELD(1) = EPS
C
RETURN
END