Skip to main content

Boundary Conditions in ABAQUS, Phython

Submitted by Svetlana Orlova on

hello everyone!

I have a parametric model in ABAQUS. One of the surfaces has many faces and to set a displacement, for example, I need to select all the faces on this surface. One of the ways  to pick them is to use faces.findAt(), but the problem is that there are over 100 faces on this surface and I don't know their coordinates because I used "random" function to create them. Do you know how can I specify the region? I've tried to pick the whole surface instead but I couldn't...

Replay file always gives a mask.

How can I find all the faces at x=any, y=any, z=0.0?

 Thank you in advance 

First put this command in the gui in the bottom part where you can enter code

 session.journalOptions.setValues(replayGeometry=COORDINATE, recoverGeometry=COORDINATE)

 This will create your python code with the use of findAt and not with sequecefrommask. 

Next you can loop over all faces. For instance:

for MyFace in mdb.models['ModelName'].parts['PartName'].faces:

   Coor=MyFace.pointOn[0]   #I think it is this one to get the coordinates.

   if round(1000*Coor[2])==round(1000*0.0):

      etc..

 

Thu, 12/16/2010 - 20:48 Permalink