Log In

Come Join Us!

Are you an
Engineering professional?
Join Eng-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!
  • Students Click Here

*Eng-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Students Click Here


Enforced Displacements

Enforced Displacements

Enforced Displacements

Hi Everyone!

I'm facing a bit of a challenge that I would like to share with you.

I need to apply enforced displacements on many nodes (nearly 1000), I manage to isolate them in a group, and the value of the displacement to apply is a factor times the node coordinate.

So the issue is: how do I ask femap to apply these enforced displacement on each node!!?
I try a function, but does not seem to work, so I try to figure out a clever way of doing it, but I haven't found one yet!

Of course I will not manually create individual load on each node with the enforced displacement value...Hope there is a solution to this problem!!

Thanks for any idea you can bring on the table!

RE: Enforced Displacements


I made this code, try to use...

Sub Main
Dim App As femap.model
Set App = feFemap()

'---Create a Load Set
Dim Load_Set As femap.LoadSet
Set Load_Set = App.feLoadSet
Load_Set.title = "Load Set - Test 1"
Load_Set.ID = 1

'---Create a load that will be applied at node
Dim Load_Geom As femap.LoadGeom
Set Load_Geom = App.feLoadGeom

Dim Load_Defi As femap.LoadDefinition
Set Load_Defi = App.feLoadDefinition
Load_Defi.dataType = FT_NODE
Load_Defi.loadType = FLT_NDISPLACEMENT
Load_Defi.setID = Load_Set.ID

'---Create a set that will store your nodes
Dim Set_No As femap.Set
Set Set_No = App.feSet

'----Create a object node
Dim No As femap.Node
Set No = App.feNode

'----Two Options
'1) Select your nodes manually
Set_No.Select(FT_NODE, True, "Pick your nodes")

'2) Select your Group
'Set_No.AddGroup(FT_NODE, **THE ID OF YOUR GROUP**)'---Put the ID of yours group in the second parameters

'---Looping for each node to get the position x, y and z
While Set_No.Next <> FE_FAIL
ID = Set_No.CurrentID
Pos_x = No.x'---get the x position...
Pos_y = No.y'...
Pos_z = No.z'...

Load_Geom.geomID = No.ID
Load_Geom.setID =Load_Set.ID
Load_Geom.ZOn = True
Load_Geom.z = Pos_y * Pos_x
Load_Geom.LoadDefinitionID = Load_Defi.ID
Load_Geom.Active = Load_Geom.ID

RE: Enforced Displacements

Woo I'm impressed, thanks a lot for taking the time to write such a code! I'll have a deep look at it, I'm sure it will be very helpful!


Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Eng-Tips Forums free from inappropriate posts.
The Eng-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Eng-Tips forums is a member-only feature.

Click Here to join Eng-Tips and talk with other members! Already a Member? Login


Close Box

Join Eng-Tips® Today!

Join your peers on the Internet's largest technical engineering professional community.
It's easy to join and it's free.

Here's Why Members Love Eng-Tips Forums:

Register now while it's still free!

Already a member? Close this window and log in.

Join Us             Close