reading nodal coordinates from the odb via Python
For my graduation work I am constructing a coupling an Abaqus model of wind turbine rotor blade with a simple aerodynamic code via Python. I have posted some more details [URL= http://imechanica.org/node/5514 ]here[/URL].
I witnessed a somewhat strange behaviour when accessing the odb output database in Abaqus via a Python script. The script is posted below (lose the .txt extension to run in Abaqus, instructions to configure the script are inside and should be straight forward. If not, please ask). The idea is to read the nodal coordinates of the structure, both in the deformed and undeformed state. Via the fieldOutputs COORD the displaced coordinates at a certain step and frame can be accessed. The fieldOuput U will give you the displacements itself. So in theory, COORD - U = original coordinate (undeformed state) should hold, which is quite straightforward. However, the fieldOutput of COORD and U are not consistent when using the simple script below. Is this a serious matter within the Abaqus Python environment (wouldnt be the first bug I have discovered) or just a plain and stupid mistake from my side?
Can somebody run this script on an output database to confirm whether my odb file, the script or Abaqus is responsible for this issue? Many thanks in advance! I have posted this issue also on the Abaqus support site, however, my academic license has passed the initial support phase.
RE: reading nodal coordinates from the odb via Python
I wont have time to run the script but I think COORD is really the undeformed coordinates. Ive fallen into the trap before and now I have resorted to writing out COORD,U to the .dat file and manually add the two to get the new (deformed) coordinates. Maybe I just dont understand it well enough though.
I am sure there is an easier way but this works well enough for me.
Although this Thread is pretty old i will try to help.
If you turn the NLGEOM Option off then you will receive just the coordinates of the undeformed state. So for getting COORD for the actual configuration you just need to toogle on NLGEOM.
NLGEOM was for sure turned on. I did a lot of cross-checking with coordinates originating from both ODB and MDB model objects. If NLGEOM would have been the issue, COORD output from the ODB would have been the same as the undeformed MDB coordinates (which was clearly not the case). The described problem appeared to be more complicated and lacked any sense of predictability (as far as I was concerned).