【公益帖子】ABAQUS python 核心脚本getSequenceFromMask转换成通用代码
Key1:getSequenceFromMask转换成通用代码
对一个名为“Part-1”的零件创建一个set,命名为“test”,类型选择Geometry,选择模型中某几何边界作为该集合的元素,将模型保存后,查询生成的指令文件Abaqus.rpy,如下:
p = mdb.models['test'].parts['Part-1']
e = p.edges
edges = e.getSequenceFromMask(mask=('[#1 ]', ), )
p.Set(edges=edges, name='Set-test')
--------------------------------------------------------
上述代码中对象edges 的索引方式getSequenceFromMask,即默认replayGeometry=COMPRESSEDINDEX
无法查看具体的通用code。我们可以采用精确的坐标数据方式查看,设定replayGeometry= COORDINATE
在Abaqus GUI 命令行交互窗口输入以下指令:
session.journalOptio
session.journalOptions.setValues(replayGeometry=COORDINATE,recoverGeometry=COORDINATE)
然后,再在CAE中重复一遍操作,发现代码的输出格式变成了下面这个样子。
p = mdb.models['test'].parts['Part-1']
e = p.edges
edges = e.findAt((0.5, 0.5, 0.5),)
p.Set(edges=edges, name='Set-test')
---------------------------------------------------------
采用对象自身索引号的方式选取,类似的,在Abaqus GUI 命令行交互窗口输入以下指令
session.journalOptions.setValues(replayGeometry=INDEX,recoverGeometry=INDEX)
p = mdb.models['test'].parts['Part-1']
e = p.edges
edges = e[1:5]
p.Set(edges=edges, name='Set-test')
查看更多评论 >