Hi all,
I am trying to inflate a viscoelastic membrane using pressure boundary condition on the inner surface. I am controlling the extent of inflation via a UAMP subroutine based on sensor displacements on the membrane surface.
I have written a hyper-viscoelastic UMAT to model the membrane.
After reading through the Abaqus documentation, I discovered that is possible to run Abaqus subroutines using parallelisation using MutexLock and MutexUnlock for sensitive parts of code, i.e. reading/ writing, common blocks etc.
I can run my UMAT with 8 cores without using UAMP, however the problem arises when using UAMP. The GetSensorValue function doesn't appear to work (image attached). After checking the local values using a VS debugger, I noticed the sensor values being fed into subroutine are zero (image attached). UAMP works for a single core analysis (image attached).
My question:
Is it possible to use UAMP with Abaqus Parallelisation? If yes, how do you isolate it to ensure thread safety? If no, are there any alternative methods for getting .odb output data fed back to control the simulation?
I look forward to your response(s).
Thanks,
Ieuan
Abaqus