Large displacements UEL

Hey,

 

I've coded a UEL for a 3D beam element based on the “Planar Beam Element with  
Nonlinear Section Behavior” example, and wanted to compare my results with the ABAQUS B31 and B32 beam elements, using a linear elastic material. I get similar results with my UEL as with B31 and B32 where NLGEOM = NO, so I'd now like to try and get similar behavior with NLGEOM = YES.
 

 

So my idea was to recalculate the beam's reference frame, so instead of e_x, the beam's direction vector, which therefore doesn't vary between strain increments

 

        dX=coords(1, 2)-coords(1, 1) ! dX = 100

        dY=coords(2, 2)-coords(2, 1) ! dY = 0

        dZ=coords(3, 2)-coords(3, 1) ! dZ = 0

        dl2=dX**2+dY**2+dZ**2

        dl=sqrt(dl2)

e_x = (/ dX/dl, dY/dl, dZ/dl /)
 

 

 

I have instead

        x1 = coords(1, 1) + U(1)

        y1 = coords(2, 1) + U(2)

        z1 = coords(3, 1) + U(3)

        x2 = coords(1, 2) + U(7)

        y2 = coords(2, 2) + U(8)

        z2 = coords(3, 2) + U(9)

        dxdef = x2-x1

        dydef = y2-y1

        dzdef = z2-z1

        dldef2 = dxdef**2+dydef**2+dzdef**2

        dldef = sqrt(dldef2)

 

 e_xdef = (/ dxdef/dldef , dydef/dldef , dzdef/dldef /)

 

I thus calculate the beam's local reference frame at each deformation increment, and therefore perform the deformation calculation on the current configuration and not on the initial configuration, as would be the case with small displacements.

 


I obtain displacements close to B31, nlgeom=yes, but the difference is not completely negligible.

 


So I'd like to know if anyone has coded a (beam)  uel that takes large displacements into account, or how nlgeom works for beams.

 

Thanks a lot,

 

Edu ABAQUS