PDA

View Full Version : How can I get the velocity, acceleration inside the DLOAD subroutine from ABAQUS?



YTian
2009-12-01, 23:11
Dear all,
I am using ABAQUS to simulate the pipeline behaviour (with beam elements) under hydrodynamic loading, which is derived from a wave theory and encapsulated inside user subroutine DLOAD. It would be desirable if I could "obtain" the velocity/acceleration (elemental or nodal) somehow to calculate the "relative velocity/acceleration" of pipe to wave.
It seems that DLOAD can not directly call some utilities to get the velocity/acceleration, I am not sure whether the following ideas are feasible or not:
1. Is it possible to read the velocity/acceleration and store in a public memory? Then DLOAD can read from the public memory.
2. Can I monitor the velocity/acceleration using "state variables", which are reachable from DLOAD?
3. I noticed that there is a user subroutine "USDFLD" can describe the field variables at integration point. Is it the feasible way?
Any comments or even great ideas are appreciated.
YTian

Jorgen
2009-12-10, 20:28
I have not tried to do something like that so I don't know for sure. One thing you might want to try is to call the GETRVRM() utility function from with the DLOAD() function. If that works then you might be OK.

-Jorgen

YTian
2009-12-11, 01:49
Thanks. Jorgen.
That sounds an interesting and creative idea. I have not tried your suggestion and am not sure whether USDFLD can be called in DLOAD.
I used another alternative: user element is used in my coding and the UEL was provided with Velo/Acc. I save the V/A to "public varialbles" in UEL and read them in DLOAD. A very interesting thing I found is that the Velo/Acc of the 2nd iteration in UEL seems to be the same value as ABAQUS outputs to odb file. Not quite understand this but just confirmed with couples of "simple cases".