User Subroutine Interface
SUBROUTINE UXFEMCRACK_API(OFFSETCUR,OFFSETNEW,DELTA,
1 OPENMAX,NOEL,NPT,COORDS,KSTEP,KINC,TIME1,DTIME1,TEMP,DTEMP,
2 PREDEF,DPRED,NFIELD,STATEV,NSTATEV,PROPS,NPROPS,JMAC,JMATYP,
3 MATLAYO,LACCFLA,SDEG,GAPINI,DV,STRESSOLD,STRESSNEW,
4 STIFFNESS,DIAMETERP,CV,JFLGOPT,NIARRAY,I_ARRAY,NRARRAY,
5 R_ARRAY,NCARRAY,C_ARRAY)
Variables to Be Defined
- OFFSETNEW
- New offset value defined by the user.
- STRESSNEW
- Stresses at the end the current increment
- JFLGOPT
- An option flag: If
JFLGOPT=1, only
STIFFNESSneeds to be updated; otherwise, if
JFLGOPT=2, both
STIFFNESSand
STRESSNEWneed to be updated.
Variables That Can Be Updated
- OPENMAX
- Maximum crack
opening
- STATEV
- An array containing the user-defined solution-dependent
state variables at this point. This array will be passed in containing the
values of these variables at the start of the increment unless the values are
updated in user subroutine
USDFLD.
They can be updated in this subroutine to their values at the end of the
increment.
- STIFFNESS
- Penalty stiffness of the cracked
surfaces
Variables Passed in for Information
- OFFSETCUR
- Offset of the cracked surfaces at the end of previous
increment.
- DELTA
- Current crack opening
- NOEL
- Element number.
- NPT
- Integration point number.
- COORDS
- An array containing the current coordinates of this
point.
- KSTEP
- Step number.
- KINC
- An array containing the current coordinates of this
point.
- TIME1(1)
- Value of step time at the beginning of the current
increment.
- TIME1(2)
- Value of total time at the beginning of the current
increment.
- DTIME1
- Time increment.
- TEMP
- Temperature at the start of the
increment.
- DTEMP
- Increment of temperature during the time
increment.
- PREDEF
- An array containing the values of all of the user-specified
predefined variables at this point at the start of the increment
.
- DPRED
- An array containing the increments of all of the predefined
variables during the time increment.
- NFIELD
- Number of user-specified predefined
variables.
- NSTATV
- Number of solution-dependent state variables associated
with this material.
- PROPS(NPROPS)
- User-specified array of material constants associated with
this material.
- NPROPS
- User-defined number of material constants associated with
this material.
- JMAC
- Variable that must be passed into the
GETVRM utility routine to access an output
variable.
- JMATYP
- Variable that must be passed into the
GETVRM utility routine to access an output
variable.
- MATLAYO
- Variable that must be passed into the
GETVRM utility routine to access an output
variable.
- LACCFLA
- Variable that must be passed into the
GETVRM utility routine to access an output
variable.
- SDEG
- Damage variable at the end of the last
increment.
- STRESSOLD
- Stresses at the end of previous
increment.
- DV
- Integration point volume.
- DIAMETERP
- Diameter of slurry particles
- CV
- Slurry concentration at the end of previous
increment.
- GAPINI
- Initial crack opening.
- NIARRAY
- Size of array I_ARRAY.
- I_ARRAY
- Integer array for future expansion.
- NRARRAY
- Size of array R_ARRAY.
- R_ARRAY
- Real array for future expansion.
- NCARRAY
- Size of array C_ARRAY.
- C_ARRAY
- Character array for future expansion.
Example: Example:
User-Defined Offset for Enriched Cracked Element Surfaces
A simple example to specify offset for cracked element surfaces by using
UMIXMODEFATIGUE:
SUBROUTINE UXFEMCRACK(OFFSETCUR,OFFSETNEW,DELTA,
1 OPENMAX,NOEL,NPT,COORDS,KSTEP,KINC,TIME1,DTIME1,TEMP,DTEMP,
2 PREDEF,DPRED,NFIELD,STATEV,NSTATEV,PROPS,NPROPS,JMAC,JMATYP,
3 MATLAYO,LACCFLA,SDEG,GAPINI,DV,STRESSOLD,STRESSNEW,
4 STIFFNESS,DIAMETERP,CV,JFLGOPT,NIARRAY,I_ARRAY,NRARRAY,
5 R_ARRAY,NCARRAY,C_ARRAY)
INCLUDE 'ABA_PARAM.INC'
C
DIMENSION COORDS(*), TIME1(*), TEMP(*), JMAC(*), JMATYP(*), STRESSOLD(*),
1 STRESSNEW(*), STIFFNESS(3,3), DELTA(*), PROPS(NPROPS),STATEV(NSTATV),
2 PREDEF(NFIELD),DPRED(NFIELD), I_ARRAY(NIARRAY), R_ARRAY(NRARRAY),
3 C_ARRAY(NCARRAY)
JFLGOPT=1
IF(KSTEP.LE.2) THEN
OFFSETNEW = 0.0
ELSE
OFFSETNEW=0.15
ENDIF
C
IF(KSTEP.EQ.2) OPENMAX = max(DELTA(1),openmax)
C
RETURN
END
|