UTRACLOAD

User subroutine to specify nonuniform traction loads.

User subroutine UTRACLOAD:

  • can be used to define the variation of the distributed traction load magnitude as a function of position, time, element number, load integration point number, etc.;

  • if needed, can be used to define the initial loading direction for the distributed traction load as a function of position, element number, load integration point number, etc.;

  • will be called at each load integration point for each element-based, edge-based, or surface-based nonuniform distributed traction load definition during stress analysis;

  • cannot be used in mode-based procedures to describe the time variation of the load; and

  • ignores any amplitude references that may appear with the associated step definition or nonuniform distributed traction load definition.

This page discusses:

User Subroutine Interface

      SUBROUTINE UTRACLOAD(ALPHA,T_USER,KSTEP,KINC,TIME,NOEL,NPT,
     1 COORDS,DIRCOS,JLTYP,SNAME)
C
      INCLUDE 'ABA_PARAM.INC'
C
      DIMENSION T_USER(3), TIME(2), COORDS(3), DIRCOS(3,3)
      CHARACTER*80 SNAME

      user coding to define ALPHA and T_USER


      RETURN
      END

Variables to Be Defined

ALPHA

Magnitude of the distributed traction load. Units are FL−2 for surface loads, FL−1 for edge loads, and F for edge moments. ALPHA is passed into the routine as the magnitude of the load specified as part of the element-based or surface-based distributed load definition. If the magnitude is not defined, ALPHA is passed in as zero. For a static analysis that uses the modified Riks method (Unstable Collapse and Postbuckling Analysis) ALPHA must be defined as a function of the load proportionality factor, λ. The distributed load magnitude is not available for output purposes.

T_USER

Loading direction of the distributed traction load. T_USER is passed into the routine as the load direction specified as part of the element-based or surface-based distributed load definition. The vector T_USER passed out of the subroutine is used as the initial loading direction tuser discussed in Distributed Loads. The direction of T_USER as defined by the subroutine should not change during a step. If it does, convergence difficulties might arise. Load directions are needed only for a nonuniform general surface traction, shear surface traction, and general edge traction. If a direction is defined for the nonuniform normal edge traction, shear edge traction, transverse edge traction, or edge moment, it will be ignored. See Distributed Loads for details.

Variables Passed in for Information

KSTEP

Step number.

KINC

Increment number.

TIME(1)

Current value of step time or current value of the load proportionality factor, λ, in a Riks step.

TIME(2)

Current value of total time.

NOEL

User-defined element number.

NPT

Load integration point number within the element or on the element's surface, depending on the load type.

COORDS

An array containing the coordinates of the load integration 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.

DIRCOS

Orientation of the face or edge in the reference configuration. For three-dimensional facets the first and second columns are the normalized local directions in the plane of the surface, and the third column is the normal to the face. For solid elements the normal points inward, which is the negative of what is defined in Conventions; for shell elements the normal definition is consistent with the convention. For two-dimensional facets the first column is the normalized tangent, the second column is the facet normal, and the third column is not used. For three-dimensional shell edges the first column is the tangent to the shell edge (shear direction), the second column is the in-plane normal (normal direction), and the third column is the normal to the plane of the shell (transverse direction).

JLTYP

Identifies the load type for which this call to UTRACLOAD is being made. The load type may be an element-based surface load, an edge-based load, or a surface-based load. This variable identifies the element face or edge for which this call to UTRACLOAD is being made. This information is useful when several different nonuniform distributed loads are being imposed on an element at the same time. See About the Element Library for element face and edge identification. The load labels are shown in Table 1. For surface- or edge-based loading (TRSHRNU, TRVECNU, EDLDNU, EDNORNU, EDSHRNU, EDTRANU, EDMOMNU), j in the load type identifies the face or edge of the element underlying the surface.

Table 1. JLTYP values for surface traction and edge load labels.
Load Label JLTYP  Load Label JLTYP  Load Label JLTYP
TRSHRNU510+j  EDLDNU540+j  EDTRANU570+j
TRSHR1NU511  EDLD1NU543  EDTRANU573
TRSHR2NU512  EDLD2NU544  EDTRANU574
TRSHR3NU513  EDLD3NU545  EDTRANU575
TRSHR4NU514  EDLD4NU546  EDTRANU576
TRSHR5NU515  EDNORNU550+j  EDMOMNU580+j
TRSHR6NU516  EDNOR1NU553  EDMOM1NU583
TRVECNU520+j  EDNOR2NU554  EDMOM2NU584
TRVEC1NU521  EDNOR3NU555  EDMOM3NU585
TRVEC2NU522  EDNOR4NU556  EDMOM4NU586
TRVEC3NU523  EDSHRNU560+j     
TRVEC4NU524  EDSHRNU563     
TRVEC5NU525  EDSHRNU564     
TRVEC6NU526  EDSHRNU565     
      EDSHRNU566     
SNAME

Surface name for a surface-based load definition. For an element-based or edge-based load the surface name is passed in as blank.