Obtaining Material Point Information Averaged at a Node

Utility routine GETVRMAVGATNODE can be called from user subroutine UMESHMOTION to access material integration point information averaged at a node. The results variables available from GETVRMAVGATNODE are nearly the same as those available from GETVRM; the exceptions follow from the restriction that, since it will average results, GETVRMAVGATNODE will operate only on real-valued results. Results values represented as integers or as flags are not available.

The following topics are discussed:

This page discusses:

Utility routine interface

DIMENSION ARRAY(15), JELEMLIST(NELEMS)
...
CALL GETVRMAVGATNODE(NODE,JTYP,'VAR',ARRAY,JRCD,JELEMLIST,NELEMS,
JMATYP,JGVBLOCK)

Variables to be provided to the utility routine

NODE

Node number.

JTYP

An integer flag indicating how the material point information is averaged. Set JTYP=0 to extrapolate results, using element shape functions, and to average results at the node. Set JTYP=1 to perform a volume-weighted average of results.

VAR

Output variable key from the table in Element Integration Point Variables. The applicable keys are listed in the output table as being available for results file output at the element integration points; e.g., S for stress. One exception is the integration point coordinates variable COORD, which cannot be passed into the utility routine; you should use utility routine GETVRN instead to obtain nodal coordinates.

JELEMLIST

Array of element numbers for elements connected to NODE for which you want material point quantities considered in the average result. Results from each element in the list that contain the node will be extrapolated to that node and averaged. JELEMLIST can be obtained from utility routine GETNODETOELEMCONN.

NELEMS

Length of JELEMLIST.

JGVBLOCK

Variable that must be passed into the GETVRMAVGATNODE utility routine. This variable is available in user subroutine UMESHMOTION for this purpose.

JMATYP

Variable that must be passed into the GETVRMAVGATNODE utility routine. This variable is available in user subroutine UMESHMOTION for this purpose.

Variables returned from the utility routine

ARRAY

Real array containing individual components of the output variable.

JRCD

Return code (0 – no error, 1 – output request error or all components of output request are zero).

Available Output Variable Keys

Only output variable keys that are valid for results file output are available for use with GETVRMAVGATNODE. In general, if a key corresponds to a collective output variable, rather than an individual component, it can be used with GETVRMAVGATNODE. For example, S for the stress tensor can be used, whereas any individual component of stress, say S11, cannot be used. The collective output variable keys are distinguished from their individual components by the fact that they have the word "yes" after the category .fil in the tables in the Abaqus Output Guide. Output variable keys that cannot be used with GETVRMAVGATNODE are listed later in this section.

You will be returned ARRAY with components associated with the request VAR. If any array component is not applicable for a given request, its value will be returned as the initialized value: 0.0 in ARRAY. The error flag JRCD=1 is returned from GETVRMAVGATNODE any time a request key is not recognized, the request is not valid, or all of the output components requested are zero; otherwise, JRCD=0.

Ordering of Returned Components

The components for a request are written as follows. Single index components (and requests without components) are returned in positions 1, 2, 3, etc. Double index components are returned in the order 11, 22, 33, 12, 13, 23 for symmetric tensors, followed by 21, 31, 32 for unsymmetric tensors (deformation gradient). Thus, the stresses for a plane stress element are returned as ARRAY(1)=S11, ARRAY(2)=S22, ARRAY(3)=0.0, and ARRAY(4)=S12. Three values are always returned for principal value requests, the minimum value first and the maximum value third, regardless of the dimensionality of the analysis.

The description of the output variable determines which components are retrieved with GETVRMAVGATNODE.

Analysis Time for Which Values Are Returned

GETVRMAVGATNODE returns values at the end of the current increment to user subroutine UMESHMOTION.

Accessing State-Dependent Variables

If GETVRMAVGATNODE is used to access solution-dependent state variables (output variable key SDV) and more than 15 solution-dependent state variables have been defined in the analysis, the dimension statement for ARRAY must be changed so that these arrays are dimensioned to the maximum number of solution-dependent state variables.

Unsupported Element Types and Output Variable Keys

Since this capability pertains to material point quantities, it cannot be used for most of the element types that do not require a material definition. The following element types are, therefore, not supported:

  • DASHPOTx

  • SPRINGx

  • CONNxDx

  • FRAMExD

  • JOINTC

  • JOINTxD

  • DRAGxD

  • PSIxx

  • ITSxxx

  • MASS

  • ROTARYI

  • all acoustic elements

  • all hydrostatic fluid elements

The following output variable keys are not available for use with GETVRMAVGATNODE:

  • SVOL

  • TSHR

  • CTSHR

Example: Obtaining Plastic Strain Results

To illustrate the use of GETVRMAVGATNODE, consider a case where the identifier PE is specified and JELEMLIST lists four three-dimensional elements, two of which have plastic yield behavior defined and two of which do not. ARRAY will be returned with the individual plastic strain components PE11, PE22, PE33, PE12, PE13, and PE23; the equivalent plastic strain PEEQ; and the plastic strain magnitude PEMAG. The result returned in ARRAY will be an average reflecting extrapolations of plastic strain results to NODE from only the two elements that have plastic yield behavior defined.

Example: Obtaining Contact Results

A second illustration is relevant to the modeling of wear with UMESHMOTION. Consider a case where JELEMLIST is obtained from GETNODETOELEMCONN and where the identifier CSTRESS is specified. If NODE is associated with a contact pair secondary surface, JELEMLIST will contain the internal element identifier for the contact element associated with the secondary node pairing. ARRAY will be returned with the individual contact stress components CPRESS, CSHEAR1, and CSHEAR2. Similarly, if CDISP is specified, ARRAY will be returned with the individual contact stress components CDISP, CSLIP1, and CSLIP2.