0

我正在尝试使用 Abaqus 脚本运行参数研究。它将创建一个壳几何体,然后根据我指定的次数对其进行不同次数的分区。

我的问题是我正在尝试施加离心力,为此我必须找到零件中的所有面。有没有一种简单的方法来选择整个部分?计算每个面的坐标系很容易,但是我在尝试将它们全部组合成 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,))

任何我如何实现这一目标的想法都会非常感激。

干杯,马特

4

1 回答 1

1

尝试使用命令:

mdb.models['Model-1'].parts['part_name'].faces.getBoundingBox(,,,)

或者

mdb.models['Model-1'].parts['skt_R_board'].faces.getByBoundingSphere(

或者

mdb.models['Model-1'].parts['skt_R_board'].faces.index[#]

于 2013-09-04T16:41:54.733 回答