Product: ABAQUS/Standard
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.
DIMENSION ARRAY(15), JELEMLIST(NELEMS) ... CALL GETVRMAVGATNODE(NODE,'VAR',ARRAY,JRCD,JELEMLIST,NELEMS, JMTYP,JGVBLOCK)
NODE
Node number.
VAR
Output variable key from the table in ABAQUS/Standard output variable identifiers, Section 4.2.1 of the ABAQUS Analysis User's Manual. 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.
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).
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 ABAQUS/Standard output variable identifiers, Section 4.2.1 of the ABAQUS Analysis User's Manual. 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.
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 (see ABAQUS/Standard output variable identifiers, Section 4.2.1 of the ABAQUS Analysis User's Manual) determines which components are retrieved with GETVRMAVGATNODE.
GETVRMAVGATNODE returns values at the end of the current increment to user subroutine UMESHMOTION.
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.
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
SVOL
TSHR
CTSHR
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.
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 slave surface, JELEMLIST will contain the internal element identifier for the contact element associated with the slave 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.