我正在尝试使用Abaqus脚本进行参数研究。它将创建一个shell几何体,然后根据我指定的次数将其分区不同的次数。
我的问题是我正在尝试施加离心力,为此我必须找到部件中的所有面孔。有没有简单的方法来选择整个部分?很容易计算每个面的坐标系,但是我很难将它们全部组合成Abaqus接受的值。
Abaqus要求坐标指定如下,((x1,y1,z1),),((x2,y2,z2),).........((xn,yn,zn) ,)
我一直在尝试使用while循环(如下所示)创建一个带坐标的元组,但它不喜欢任何一侧放置额外的括号。它也不接受字符串。
El = 1 #Used as a counter for how many partitions
allFaceCoords = ()
while El <= NumOfElLength:
regionCentreSpan = (Length/NumOfElLength)*0.5+((El-1)*(Length/NumOfElLength)) # Creates z coord
regionCentre = (CentreLineXCord, 0.0, regionCentreSpan) # Put x,y,z coords in one value
faceCoords =((regionCentre),) # Abaqus wants each repeating unit as ((x,y,z),)
allFaceCoords = allFaceCoords + (faceCoords,) # To add all the coordinates into 1 tuple
El=El+1
facesAll = faces.findAt((allFaceCoords,))
任何能够实现这一目标的想法都会非常适合。
干杯,马特
答案 0 :(得分:1)
尝试使用命令:
mdb.models [ '型号-1']。份[ 'part_name']。faces.getBoundingBox(,,,)
或
mdb.models [ '型号-1']。份[ 'skt_R_board']。faces.getByBoundingSphere(
或
mdb.models [ '型号-1']。份[ 'skt_R_board']。faces.index [#]