25.2.14 ORIENT
User subroutine to provide an orientation for defining local material directions or local directions for kinematic coupling constraints or local rigid body directions for inertia relief.

Product: ABAQUS/Standard  

References

Overview

User subroutine ORIENT:

  • will be called at the start of the analysis at each location (material point, special-purpose element, coupling node, or reference point for inertia relief) for which local directions are defined with a user-subroutine-defined orientation;

  • is used to code the direction cosines of a preferred local material orientation, for which anisotropic or orthotropic material properties have been defined or for which stress output is desired, in terms of the normal (nonoriented) material basis directions;

  • can be used to define the direction cosines orienting the layer of reinforcing material in membrane, shell, or surface elements (see Defining reinforcement, Section 2.2.3);

  • can be used to provide a local system for defining the direction of action of rotary inertia, spring, dashpot, flexible joint, and elastic-plastic joint elements;

  • can be used with gasket elements to define the local in-plane directions for three-dimensional area and three-dimensional link elements that consider transverse shear and membrane deformations (see Defining the gasket behavior directly using a gasket behavior model, Section 18.6.6);

  • can be used to define a local system in which coupling constraints are applied (see Coupling constraints, Section 20.3.2, and Kinematic coupling constraints, Section 20.2.3);

  • can be used to define a local system at the reference point for the rigid body directions in which inertia relief loads are applied for the entire model (see Inertia relief, Section 7.4.1);

  • interprets “default basis directions” as the global directions for continuum elements and as the default surface directions for shell, membrane, and surface elements (as described in Conventions, Section 1.2.2); and

  • ignores any data specified for the associated orientation definition outside the user subroutine.

The local directions defined by user subroutine ORIENT must be specified relative to the default basis directions.

User subroutine interface

SUBROUTINE ORIENT(T,NOEL,NPT,LAYER,KSPT,COORDS,BASIS,
     1 ORNAME,NNODES,CNODES,JNNUM)
C
      INCLUDE 'ABA_PARAM.INC'
C
      CHARACTER*80 ORNAME
C
      DIMENSION T(3,3),COORDS(3),BASIS(3,3),CNODES(3,NNODES)
      DIMENSION JNNUM(NNODES)

      user coding to define T

      RETURN
      END

Variable to be defined

T

An array containing the direction cosines of the preferred orientation in terms of the default basis directions. T(1,1), T(2,1), T(3,1) give the (1, 2, 3) components of the first direction; T(1,2), T(2,2), T(3,2) give the second direction; etc. For shell and membrane elements only the first and second directions are used. The directions do not have to be normalized. If the second direction is not orthogonal to the first direction, ABAQUS/Standard will orthogonalize and normalize the second direction with respect to the first. The third direction is then determined by taking the cross product of the first and second directions. For planar elements the first two directions must lie in the plane of the element.

For use with coupling constraints (Coupling constraints, Section 20.3.2), the local basis directions are used as the local constraint directions for application of the kinematic constraint.

For use with inertia relief loads, the local basis directions are used as the rigid body direction vectors for computing the loads.

Variables passed in for information

NOEL

Element number. This value is zero when the subroutine is called for use with coupling constraints or inertia relief loads.

NPT

Integration point number. This variable is set only for relevant uses.

LAYER

Layer number (for composite shells and layered solids). This variable is set only for relevant uses.

KSPT

Section point number within the current layer. This variable is set only for relevant uses.

COORDS

An array containing the initial coordinates of this point. This array contains the coordinates of the reference point for inertia relief loads.

BASIS

An array containing the direction cosines of the normal material basis directions in terms of the global coordinates in the original configuration. BASIS(1,1), BASIS(2,1), BASIS(3,1) give the 1-direction, etc. This is useful only in shells or membranes since in all other cases the basis is the global coordinate system.

ORNAME

User-specified orientation name, left justified.

NNODES

Number of element nodes. This value is two when the subroutine is called for use with a kinematic coupling definition, where the two nodes are the reference and current coupling node. When used with a distributing coupling definition, this number is equal to the number of coupling nodes plus one for the reference node. It is one when used with inertia relief loads since the local basis is defined at the reference point.

CNODES

An array containing the original coordinates of the nodes. When used with a kinematic coupling definition, the first entry defines the reference node coordinates, and the second entry defines the coupling node coordinates. When used with a distributing coupling definition, the first entry defines the reference node coordinates, and the subsequent entries define the coupling node coordinates in the order defined by the JNNUM array. When used with inertia relief loads, this array is not used. For all other uses the entry order follows that of the element definition node ordering.

JNNUM

An array containing the NNODES node numbers. When used with a kinematic coupling definition, the first entry is the reference node number, and the second entry is the node number for the current coupling node. When used with a distributing coupling definition, the first entry is the reference node number followed by the node numbers of all coupling nodes. When used with inertia relief loads, this array is not used. For all other uses the entry order follows that of the element definition node ordering.

Example