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!

USDFLD routine with built-in VUMATs

Status
Not open for further replies.

indebtanup

Mechanical
Aug 21, 2008
5
Hi there,

I'm modeling a ceramic plate using the Johnson Holmquist material model which is available as a built-in user material for Abaqus (i.e., via a VUMAT subroutine that is built-in and whose source code cannot be edited).

The material model is called in the input file as below:

*parameter
rho0 = 3.163e-9
G = 183000
A = 0.96
N = 0.65
B = 0.35
M = 1.0
C = 0.0
edot0 = 1.0
T = 370
sigIMax = 1.23795
sigFMax = 0.1319127
**sigHEL=1.5*(HEL-PHEL)
**sigIMax=sigIMax/sigHEL=12200/15435=1.23795
**sigFMax=sigFMax/sigHEL=1300/15435=0.1319127
HEL = 14567
PHEL = 5900
beta = 1.0
D1 = 0.48
D2 = 0.48
efMax = 1.2
efMin = 0.0
K1 = 204000
K2 = 0
K3 = 0
FS = 0.8
lDamage = 0
*Material, name=ABQ_JH2_SILICONCARBIDE
*density
<rho0>
*Conductivity
120.,
*Inelastic Heat Fraction
1.,
*Specific Heat
7.5e+08,
*user material, constants=32
<rho0>, <G>, <A>, <N>, <B>, <M>, <C>, <edot0>
<T>, <sigIMax>, <sigFMax>, <HEL>, <PHEL>, <beta>
<D1>, <D2>, <efMax>, <efMin>, <FS>, <lDamage>
<K1>, <K2>, <K3>
*DEPVAR, DELETE=8
8
1, PEEQ , "Equivalent plastic strain"
2, PEEQ_RATE, "Equivalent plastic strain rate"
3, DUCTCRT , "Ductile damage initiation criterion"
4, DAMAGE , "Damage variable"
5, DELTAP , "Pressure increment due to bulking"
6, YIELD , "Yield strength"
7, EVOL , "Volumetric Strain, Mu"
8, MPSTATUS , "Material point status"
**

My question is this: I'm trying to grade the value of "T" through-the-thickness (z) direction, i.e. the parameter T needs to be changed depending upon location.

I have written a USDFLD subroutine that calculates the value of T at various points and assigns it to a state variable as below:

SUBROUTINE USDFLD(FIELD,STATEV,PNEWDT,DIRECT,T,CELENT,
+ TIME,DTIME,CMNAME,ORNAME,NFIELD,NSTATV,NOEL,NPT,LAYER,
+ KSPT,KSTEP,KINC,NDI,NSHR,COORD,JMAC,JMATYP,MATLAYO,
+ 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(15),JARRAY(15),JMAC(*),JMATYP(*),COORD(*)

if (kstep .eq. 1 .and. kinc .eq. 1) then

X=COORD(1)
Y=COORD(2)
Z=COORD(3)

TVAL=10*Z
FIELD(1)=TVAL
STATEV(1)=TVAL

else
c assign initial values calculated in first inc.
FIELD(1) = STATEV(1)
end if
RETURN
END

How do I relate this field variable to the parameter T in the material definition? If this was an elastic material and I was varying the density, I would simply write:

*Depvar
1,
*Density, dependencies=1
1e+09, 1.
4e+11, 400.
*User Defined Field

But I can't do this for the VUMAT.

Any help would be much appreciated!
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor