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.
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 Using Abaqus/Standard Output Variable Identifiers. 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.
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.