【公益帖子】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')


ABAQUS二次开发Abaqus子程序开发

【公益帖子】ABAQUS python 核心脚本getSequenceFromMask转换成通用代码的评论52条

【公益帖子】ABAQUS python 核心脚本getSequenceFromMask转换成通用代码的相关案例教程

例如:cell4 = mdb.models['block'].parts['crankcase'].cells[4],要把part模块中编号为4的体赋值给cell4,就需通过路径mdb→models→part→cells(4号体属性),其中'block'、'crankcase'、分别是model和part的名字。 在草图Sketch中画线: s = mdb.models[' block '].Co
3.2 Basic geometry commands 3.2.1 EdgeArray object The EdgeArray is a sequence of Edge objects. If the part is modified, then EdgeArray must be updated for that part. Access import part mdb.models[nam
前言 Python具有以下特点。Python语言是一种动态解释型编程语言,其功能强大,简单易学,支持面向对象编程((object-oriented programming),虽然由于其动态性致使程序解释执行速度比编译语言慢,但是随着Python语言的不断优化以及计算机硬件的迅猛发展,Python语言将会受到越来越多用户的关注。Python具有开源、自由等特征。它的简洁性和易用性使程序的开发过程变得
from abaqus import * from abaqusConstants import * backwardCompatibility.setValues(includeDeprecated=True,reportDeprecated=False) # Create a model. myModel = mdb.Model(name='Beam') # Create a new view
前面推荐了一些ABAQUS二次开发小工具,不知道大家是否已经安装使用。 后面以一些小案例带大家熟悉ABAQUS前后处理相关的Python库,以及使用技巧。 星哥开发的插件大多集中在非均质相关断裂问题,相信关注公众号的很多朋友也都是做这方面,那么我们从最初始的非均质几何模型的案例出发,来演示一个随机颗粒模型的代码编写的全过程,效果如下所示: 在这个案例中,最大的帮手是PythonReader,它能让
博士/副研究员
影响力
粉丝
内容
获赞
收藏
    项目客服
    培训客服
    53 47