最近沉迷工作已经很久没有更新了,最近研究的目标主要有两个,一是grasshopper的二次开发,主要想实现的是搭建Sap2000与grasshopper的接口。二是Python在Abaqus中的应用,希望能够减轻繁琐而无意义的重复劳动。
无论是Python还是Abaqus的学习都是一个长期的过程,因此将此作为一个系列来进行分享,今天分享的主要内容是:如何避免重复的赋予材料属性及接触面类型的操作。
首先推荐一个神器:PythonReader。作为一个非科班出身、既想要享受程序语言所带来的快乐与便利,又想免除找bug想算法记语句所带来的苦恼(天下竟有这种好事!?)的结构设计师来说,PythonReader是一个非常好用的工具。
打开PythonReader,选择你的abaqus.rpy文件,通常储存在temp文件夹里。@PythonReader
赋予材料属性
PythonReader会记录你在Abaqus中的每一次操作,我们可以先进行赋予材料性质以获取语句。@PythonReader
这样就很容易得到赋予材料操作的语句:
mdb.models['Model-1'].HomogeneousSolidSection(name='Section-1',
material='Brick', thickness=None)
p = mdb.models['Model-1'].parts['Brick']
c = p.cells
cells = c.getSequenceFromMask(mask=('[#0:7 #1 ]', ), )
region = p.Set(cells=cells, name='Set-1')
p = mdb.models['Model-1'].parts['Brick']
p.SectionAssignment(region=region, sectionName='Section-1', offset=0.