Remaining result of displacements for the next step in UEL subroutine

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

Remaining result of displacements for the next step in UEL subroutine





Hi everyone, I would bethankful if consider my question:

I modeled vertical linearstiffness of seabed soil by UEL subroutine of Abaqus.

The pipe is hanging fromthe vessel located in a higher level, and laid on the seabed same as catenaryshape. Actually, this is a steel catenary riser (SCR) modeling.

At the first step, the verticalstiffness of seabed was equal to ky=5 kPa (defined in UEL subroutine), and thenlaid pipe moves down due to its self-weight. We assume this is static analysis,so after short time, some part of this catenary will be laid on the seabed andwe can find penetration as:

Actually, the penetrationwill be determined through UEL subroutine.

I provide simple handcalculation here which UEL can do that in a completed way.

Vertical displacement=u(2)

Self-weight of pipe=100kg/m

Force=ky*u(2) >>>>>>>>>>>>>>>>   u(2) = (100kg/m * 9.81)/5 kPa = 0.196 m (indownward direction).


As you know, thestiffness of seabed is not constant during long time. It may be changed.

I assume the stiffness ofsoil will be stiffer in the future. So I’m going to define new stiffness (e.g.Ky=100 kPa). Actually, when I define a new stiffness in the next step, allcalculated displacements from the previous step will be reset and will nolonger be continued for the next step.

It expected thispenetration will be continuing from the previous step, but pipe reset itsprevious displacements and start to penetrate from zero.

Do you have anysuggestions to keep remain calculated displacements from previous step, andcontinue them in the next step?


I try differentapproaches such as “save” statement that all previous displacements stored in aseparate matrix and then use for new step, but it did not work.

Any comments would bebeneficial for me. My project was stopped due to this problem and I’m in needof your help and consideration.

I provide UEL subroutinethat I used.


Many thanks


















    5     JPROPS(*)             


                 IF (kstep.EQ.1) THEN

                 if (u(2).gt.0) THEN








                 end if


                 ELSE IF (kstep.EQ.2) THEN

                 if (u(2).gt.0) THEN








                end if


                END IF


     AMATRX(1,1:3)=(/KX, 0.,0./)

     AMATRX(2,1:3)=(/0., KY,0./)

     AMATRX(3,1:3)=(/0., 0., KZ/)