Hello, I'm currently trying to use Abaqus-generated reduced stiffness matrices in external programs, and am having trouble figuring out the node numbering schemes used. For a minimal working example, I have generated a 2D, 4-node and 4-retained degree of freedom structure in which the active degrees of freedom are as follows: Nodes 1 and 3 have DOF 1 active, and Nodes 2 and 4 have DOF 2 active (see the attached picture for clarity). The relevant syntax from the *.inp file is:
*SUBSTRUCTURE MATRIX OUTPUT, OUTPUT FILE=USER DEFINED, FILE NAME = SQUARE, RECOVERY MATRIX=YES, STIFFNESS=YES
*Retained Nodal Dofs
NODE_0, 1, 1
NODE_1, 2, 2
NODE_2, 1, 1
NODE_3, 2, 2
I would expect the element variable numbers to follow the overall node numbering from the mesh, but it seems as though DOFs 3 and 4 are switched in the Abaqus-generated user element file (*SUBSTRUCTURE MATRIX OUTPUT command). That file gives the following connectivity list:
** ELEMENT NODES
** 1, 2, 3, 4
1
2,2
4,1
Looking at the reduced stiffness matrix, this seems to give the following node numbering:
NODE_0, 1, 1
NODE_1, 2, 2
NODE_3, 2, 2
NODE_2, 1, 1
I've looked at the documentation for UELs (specifically, Defining active degrees of freedom at the nodes), but I'm still having trouble wrapping my mind around how to translate the provided output back to a more intuitive form. In short, how can I verify the element variable numbers or construct a mapping from the connectivity list provided in the user element file back to the overall system? I've attached the relevant *.inp and *.mtx files as well (in .txt file form).