Stop ABAQUS simulation after failure
I'm running ABAQUS Explicit with a VUMAT subroutine to determine the ultimate strength of a polymer matrix UD composites under tension. I'm not interested in the post-failure behaviour so ideally I would halt the simulation as soon as a drop in load is detected (this load corresponding to the reaction force of a node set where the displacement is applied). The only way I found of doing this (from the documentation) is to set an extreme maximum value for the reaction force, halting the simulation when this value is reached. This, however, is not very helpful, because the maximum reaction force is precisely what I'm trying to find by running the analysis.
Some ideas so far (although a bit convoluted) would be to:
-Output the nodal reaction force as a history output to an external file; read this file during runtime and kill the job once the load drop is detected.
-Pass the reaction force to a user subroutine and call xit command once the drop is detected.
I'm not sure if these are even possible so any help would be greatly appreciated.
That sounds tricky. I cannot think of a simple way to fix that. Can you not simply run the simulation to completion, and then during post-processing only use the data that you need? If that is not good enough, then your proposed methods should work.
I regularly stop simulations using the first method you describe above. From what you've written, it appears you are aware that you can open an .odb file while it is being actively written, but just in case, I mention that this is very simple to do through the Job Manager in the Job Module. The only issue is that it requires active monitoring, not ideal if you want to minimize the size of .odb files.