Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations MintJulep on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

DLOAD Subroutine varring Bodyforce with position and step

Status
Not open for further replies.

Sina-M

Civil/Environmental
Apr 20, 2017
1
Hello,
I am a beginner in simulation with Abaqus. So far I have been working with Abaqus/CAE for a few months.
Now I need to modell a load (body force) witch varys depending on the position (of the force) in the part. I am using 3D elements. The load should be either 1 or 0 depending on the z coordinate. If z is bigger the a logarithmic funktion depending on x then the force should be zero otherwise it should be 1.

I have thought of a Dload Subroutine looking like this:

SUBROUTINE DLOAD(F,KSTEP,KINC,TIME,NOEL,NPT,LAYER,KSPT,
1 COORDS,JLTYP,SNAME)
C
INCLUDE 'ABA_PARAM.INC'
C
DIMENSION TIME(2), COORDS (3)
CHARACTER*80 SNAME

X= COORDS(1)
Z= COORDS(3)

if(Z>0.5*ln(X)+3) then f=1
else f=0

RETURN
END

I tried to run the modell but I got an error with "Problem during compilation" and I have never written a subroutine before. Is it possible for the subroutine to generate an output where in the model which load is applied?

Also I need to change the load in the next step. For step 2 the argument should change to

if(Z>0.3*ln(X)+5) then f=1
else f=0

I think i can reach this by

if(kstep=2 and Z>0.3*ln(X)+5) then f=1
else f=0

But will this change the load of the previos step oder a new load?

Could anyone give me an advice how to modify this kind of subroutine so it will work?
Thanks in Advance!
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor