Dear all,
I have been developing and implementing my own VUINTERACTION subroutine, and I might have stumbled upon a bug in ABAQUS. I have managed to reproduce the effects of this bug using the VUINTERACTION subroutine and input files provided in the ABAQUS Verification Manual in Documentation. The following makes use of the provided subroutine in documentation, but bare in mind that the effects is reproduced easily with any other working VUINTERACTION subroutine.
The files used for this test can be found attached to this post.
The error occurs in those jobs which require more than one STEP in the analysis. In short, the State variables do not get carried from one step into the next. Compared to the initial files provided in ABAQUS Verification manual, I've only added the print out lines in the fortran code and added more steps to the job (basically I've extended the applied displacement from the first step a bit longer with two more steps). I've also reduced the yield stress to 100 MPa.
The print outs occur for one of the nodes involved in the contact (node number 34 in the uploaded files), but this can be done for any or all nodes with equal results. The print outs occur first and last in the code. They contain the increment of displacement (DELTA), the initial state variables (STATES_0), the initial stresses (STRESS_0), and the updated state variables (STATES_1) and stresses (STRESS_1) for the current time increment.
If you follow through the print outs (remember that VUINTERACTION gets called more than once for each time increment and only the first print out of each increment is the relevant one) it is possible to observe that the Stress at the proximity points are always carried along the successive time increments even between steps, but the same does not occur with the state variables for those same proximity points. All state variables for all proximity points get ZERO'd at the beginning of each Step.
For my particular case, this situation renders this subroutine useless since one of my state variables is a binary variable (ACTIVE/INACTIVE) for a significant part of my interaction model.
Any advise on this matter would be greatly appreciated!
Best regards,
Antonio