Abaqus GUI程序开发之常用的Abaqus内核指令(一)

说明:本篇帖子是博主学习Abaqus GUI开发的笔记,基于贾利勇主编的《ABAQUS GUI程序开发指南  Python语言 第一版》这本书,仅供学习参考使用。

书的配套资料下载:网盘资料:《AbaqusGUI程序开发指南(Python语言)》配套资源下载

内核指令是Abaqus GUI开发过程中的核心文件, Abaqus/CAE将用户在图形界面程序中进行的各种操作转化为内核指令,通过执行这些指令完成一系列繁杂的前后处理操作。用户可以通过编写Python内核脚本指令,越过Abaqus/CAE直接完成前后处理工作。
                                                                                                                                                            Abaqus/CAE内核脚本指令采用Python语言编写,在继承Python语言自身类模型的基础上,针对Abaqus的自身特点,Abaqus/CAE 对Python语言进行了扩展,增加了500多个新的类模型。新增的类模型总体上分为三大类,分别为Session类,Mdb类以及Odb类,分别对应视图、模型数据库和计算结果数据库三类对象。Abaqus异常丰富的内核函数库是本书无法完全覆盖的,本章仅简单介绍一些常用的Abaqus内核指令,有关内核函数更加详尽的内容请参照《AbaqusScripting Reference Manual》。

1.Abaqus/CAE中python的执行方式

方式一:将内核指令输入到Abaqus GUI命令行交互窗口。注意点击 >>> 之后进入编程模式。


                                                                                                                                                            方式二:将指令写成文本,保存为后缀.py的脚本。在Run Script中运行即可。

                                                                                                                                                                                                                                                      方式三:在Abaqus PDE开发环境下输入指令。就是个自带的Python编译器。

                                                                                                       

2. 内核脚本的快捷编辑方式                           

内核脚本并不需要完全自己写。

 

每次使用Abaqus,目录下均会自动保存一个与模型名称同名的.jnl文件。后缀为.rpy 与.jnl的文件中均记录了整个建模过程中所用得到的指令,用户可以用文本编辑软件将上述两类文件打开,并根据自己的需求对某些指令进行修改。采用这种方式可以节省大量脚本编辑时间,提高用户脚本编写效率。通过修改.rpy文件来写自己的脚本,可在【体验版_Abaqus自定义插件制作】去感受一下,很有意思,建议去试一试。

基于这样的特点,有一款工具,专门用来读取rpy文件,相关介绍在这: 
Abaqus Python脚本神器-PythonReader https://www.bilibili.com/read/cv8574531/https://www.bilibili.com/read/cv8574531/

链接: 百度网盘 请输入提取码       提取码: 9k84

3.  高亮显示及取消高亮显示

3.1 highlight()高亮显示

语法: highlight(...) 

括号里为对象类别及索引号。

单个对象高亮

例如:

highlight(mdb.models['Model-1'].parts['Part-1'].edges[0])

多个对象高亮 

在上面的基础上对实体划分网格,并选择其中10个单元创建一个单元集合,单元集合命名为“ele_set”,单元集合全部高亮。set即为集。 

p = mdb.models['Model-1'].parts['Part-1']
highlight(p.sets['ele_set'])

3.2 unhighlight()  取消高亮显示

与高亮显示基本差不多。

 语法: unhighlight(...) 

3.3  highlight(...)和 unhighlight() 支持的对象

4. 几何模型导入 

Abaqus/CAE支持非常多的几何格式,基本主流三维软件都比较兼容,更是可以直接可以搞Catia、SolidWorks的文件。如下图所示:

以CATIA为例,在书的配套资料3.4中,有这么几个文件:

现将其part1和part2装配到assembly文件中,写脚本如下:

#-*-coding:UTF-8-*-
from abaqus import*
from abaqusConstants import*
from caeModules import*

mdb.Model(name='Model-1', modelType=STANDARD_EXPLICIT)

a = mdb.models['Model-1'].rootAssembly
session.viewports['Viewport: 1'].setValues(displayedObject=a)

catia = mdb.openCatia(fileName='D:/TEMP/importassembly.CATProduct',topology=SOLID, useServer=True)

mdb.models['Model-1'].PartFromGeometryFile(name='importassembly-1',
	geometryFile=catia,combine=False,
	#stitchAfterCombine = True,
	stitchTolerance=1.0,
	dimensionality=THREE_D, type=DEFORMABLE_BODY,scale=1.0)

mdb.models['Model-1'].PartFromGeometryFile(name='importassembly-2',
	geometryFile=catia, bodyNum=2, combine=False, 
	#stitchAfterCombine = True,
	stitchTolerance=1.0, 
	dimensionality=THREE_D, type=DEFORMABLE_BODY,scale=1.0)

p = mdb.models['Model-1'].parts['importassembly-2']

session.viewports['Viewport: 1'].setValues(displayedObject=p)

 导入igs文件

#-*-coding:UTF-8-*-
from abaqus import*
from abaqusConstants import*
from caeModules import*

mdb.openIges('D:/TEMP/part.igs',msbo=False,scaleFromFile=OFF,trimCurve=DEFAULT)
mdb.models['Model-1'].PartFromGeometryFile(combine=False,
	convertToAnalytical=1,dimensionality=THREE_D,geometryFile=mdb.acis,name='part-1',
	#stitchAftercombine=False,
	stitchEdges=1,stitchTolerance=1.0,type=DEFORMABLE_BODY)

几何导入指令中的参数定义:

  • topology参数表示的是几何的拓扑类型,分为SOLID、SHELL、WIRE三种,分别对应实体、曲面、线框三类几何拓扑形状,默认值为SOLID;
  • Dimensionality表示的是几何体的维度,有THREE_D、TWO_D_PLANAR以及AXISYMMETRIC三种类型,分别对应三维几何、二维平面几何以及轴对称几何;
  • type表示的是导入后零件的属性,分为可变形体DEFORMABLE_BODY、离散刚体DISCRETE_RIGID_SURFACE、分析刚体ANALYTIC_RIGID_SURFACEI以及欧拉体EULERIAN四种类型。
     
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是刃小木啦~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值