UTRS

User subroutine to define a reduced time shift function for a viscoelastic material.

User subroutine UTRS:

  • can be used to define a temperature-time shift for a time domain viscoelastic analysis;

  • will be called for all material points of elements for which a user-defined shift function is specified to define the time-temperature correspondence as part of the viscoelastic material definition;

  • will be called before user subroutine UMATHT and/or user subroutine HETVAL if either or both are to be used with UTRS in a fully coupled temperature-displacement or a coupled thermal-electrical-structural analysis;

  • can use and update solution-dependent state variables; and

  • can be used in conjunction with user subroutine USDFLD to redefine any field variables before they are passed in.

This page discusses:

User Subroutine Interface

      SUBROUTINE UTRS(SHIFT,TEMP,DTEMP,TIME,DTIME,PREDEF,DPRED,
     1 STATEV,CMNAME,COORDS)
C
      INCLUDE 'ABA_PARAM.INC'
C
      CHARACTER*80 CMNAME
      DIMENSION SHIFT(2),TIME(2),PREDEF(1),DPRED(1),STATEV(1),
     1 COORDS(1)
C

      user coding to define SHIFT(1) and SHIFT(2)

      RETURN
      END

Variables to Be Defined

SHIFT

An array of length two that defines the shift function, A (A>0), at this point.

In time domain viscoelasticity SHIFT(1) defines the shift function at the beginning of the increment and SHIFT(2) defines the shift function at the end of the increment. Abaqus/Standard applies an averaging scheme to these values that assumes that the natural logarithm of the shift function can be approximated by a linear function over the increment.

In frequency domain viscoelasticity SHIFT(1) defines the shift function and SHIFT(2) is ignored.

If either element of SHIFT is found to be less than or equal to zero, the analysis terminates with an error message.

Variables That Can Be Updated

STATEV

An array containing the 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 they are updated in user subroutines USDFLD or UEXPAN, in which case the updated values are passed in. If any of the solution-dependent state variables are being used in conjunction with the viscoelastic behavior, they must be updated in this subroutine to their values at the end of the increment.

Variables Passed in for Information

TEMP

Temperature at the end of the increment.

DTEMP

Increment of temperature during the time increment.

PREDEF

An array containing the values of all of the user-specified field variables at this point at the end of the increment (initial values at the beginning of the analysis and current values during the analysis).

DPRED

An array containing the increments of all of the predefined field variables during the time increment.

TIME(1)

Value of step time at the end of the current increment in time domain viscoelasticity or frequency in frequency domain viscoelasticity.

TIME(2)

Value of total time at the end of the current increment. In frequency domain viscoelasticity this value is set to -1.0.

DTIME

Time increment. If this subroutine is called during a procedure such as a static analysis in which the viscoelastic effects are not taken into account or if it is called during an analysis in the frequency domain, this variable is passed in as zero.

CMNAME

User-specified material name, left justified.

COORDS

An array containing the coordinates of the material point. These are the current coordinates if geometric nonlinearity is accounted for during the step (see Defining an Analysis); otherwise, the array contains the original coordinates of the point.