欢迎光临散文网 会员登陆 & 注册

Abaqus前处理脚本:根据网格单元label删除多个网格单元element(附代码)

2023-06-11 19:41 作者:plasfzxf  | 我要投稿

1.删除单元

删除单元:普通的画网格方式画出的网格,不能删除。自下而上划分的网格才可以删除。如下图。

普通的画网格方式画出的网格,不可删除单元element
自下而上划分的网格,可删除单元element

2.单元label

网格单元的label可用查询功能查询出来。整数int类型12633即为高亮显示单元的label,如下图。Label是单元特有标签(类似于名称),各单元的label均不同。后续可以按照label删除相应的单元。

单元标签:element label

3.根据单元label寻找单元的函数:getFromLabel(...)函数

mdb.models['Model-1'].parts['TplateB'].elements.getFromLabel(label=label)

需要的变量:单元的label(int整数型数据)

返回的数据类型:MeshElement object

getFromLabel函数使用方法介绍(图源:abaqus用户手册)

4.删除多个单元的代码

删除单元的函数:deleteElement()。

p.deleteElement(elements=elements_array,deleteUnreferencedNodes=ON)

需要的变量:A sequence of MeshElement objects (即MeshElementArray object)


deleteElement()函数使用方法介绍(图源:abaqus用户手册)

MeshElementArray object类型:A sequence of MeshElement objects( MeshElement objects的序列)。

MeshElementArray object数据类型介绍(图源:abaqus用户手册)

将MeshElement objects转为MeshElementArray object的函数:MeshElementArray(...)

需要的变量:MeshElement的列表类型。

MeshElementArray(...)函数介绍(图源:abaqus用户手册)

5.附:完整代码


Abaqus前处理脚本:根据网格单元label删除多个网格单元element(附代码)的评论 (共 条)

分享到微博请遵守国家法律