abaqus python教程_Abaqus-python脚本到底应该怎么写?一文带你入门

hello,大家好,又到了脚本时间。初入二次开发,相信有很多人非常困惑脚本到底该怎么写,学了几个月的python,是不是还有还没入门的感觉?所谓万事开头难,中间难,然后结尾难。咳,那么今天先解决开头难的问题。

举个栗子,举栗子比讲纯理论更让人清楚明了。今天这个模型是个简简单单的镦粗模型,如果你不知道什么是镦粗,不要紧,我解释一下。有两个平板,刚体平板(如果你不知道什么是刚体。。。。88,开个玩笑,其实是为了把现实中的刚度很高的材料简化为不能变形的物体,减少有限元的计算量),中间夹着一个可变形坯料(6061退火态铝合金),下平板不动,上平板下压,是为镦粗过程,很简单吧。

模型我们已经搭建好了。由于是轴对称的模型,为了减少计算量,取1/4模型计算,其实轴对称模型更适合用轴对称的part,失误了。。。镦粗模型

压下量定为30mm,简单算个结果,可以看出,变形前后的结果;到这里,结合我上面的解释,你应该明白了何为镦粗了。计算结果,应力场

那么现在问题了,如果有一天,我想知道镦粗的下压量对于退火态的7050外形的影响,我想设置几组不同的下压量,分别计算。你可能会觉得,这么简单,点几下就行了,这还写啥脚本啊,杀鸡焉用牛刀??

说的很好,这只是一个最简单的模型,我举个极端的例子,就这个模型如果我想做100组压下量的参数。。。你是不是突然不想一个个点了,如果哪天有多因素多水平的,即便你做正交实验,也有一大推需要你点的,你还想点吗?所以脚本是帮我我们偷懒的利器,前期学习过程中,事无巨细,都可以让脚本完成,等你足够熟练了,你就会判断什么时候需要用,什么时候可以自己慢慢点了。

说了这么多啊,估计那么都看烦了。。那么问题来了,该怎么写???下面是教学时间了,abaqus写python脚本其实就是利用它内置的函数帮助我们建立前处理过程,它的本质依旧是跟着它前处理的逻辑来,这与子程序不一样,子程序是可以有自己的东西的。对于脚本,我们只需要知道abaqus的函数是怎么写的就行了。那么它的函数是什么,在哪里,怎么写。别担心,贴心的abaqus已经帮我们存好了,就在你的默认工作目录下的,一个叫做abaqus.rpy文件。如果还有rpy1,2,3等等,那是保留的之前打开的rpy文件,如果没用删了即可。

打开rpy文件之后,你会看到里面密密麻麻,乱起八糟的函数,直接劝退。rpy文件

不用担心,我慢慢解释,这里面的文件只要你在abaqus CAE界面中操作一次,里面就会生成一条相应的命令,是不是非常的神奇。这就能实现我们想做的任何操作了,比如说,我们想生成10个job,那么我们可以先生成一个job,然后看rpy文件里的命令是什么,在加个循环,不久能快速生成10个job了吗?

话不多说,马上开始实验。

好,我们在job里已经建了一个Job2的job,现在打开rpy文件,看看最底下出现了什么。

神奇的事情发生了,最底下出现了一条命令,这就是我们想要的函数了,现在我们把它复制出来,然后加个循环,生成10个job试试。先别管里面的参数代表什么意思,等后面慢慢再尝试。

稍微改写一下,这里我们加了个循环,然后把每次循环的jobName变一下,不然只会有一个job看不出来效果。再mdb.Job函数里,参数name给jobName,就写好啦。注意:开头要导入一下abaqus的两个包,不然运行脚本会报错,每个脚本都要导入这两个。

在abaqus的python交互窗口运行一下:

是不是有10个出来了,现在我们做100个出来看看效果,只需要把range的范围改到100即可:原谅我的显示器不够大,只能显示这么多了。

是不是挺有意思。job建好之后,别忘了还有一步,还没有参数化呢,我们的每个job,应该有不一样的地方,不然算它干什么,一个同样的模型算100次,除非我脑子进水了,或是我的锐龙3600x飘了。

同样的道理,我们只需要再cae模型里,改一次下压量,然后观察rpy文件里,多出了什么即可。可以看出,多了最后两行,带session的可以自动过滤掉,那是显示的函数,对于写脚本一点用没有。最后一行函数,就是我们想要的东西了,把它加在我们的模型了,比如,现在我们要做5个模型,分别是下压量为10mm,20mm,30mm,40mm,50mm。做5个job。

改写之后的脚本如下。

把它粘贴到abaqus的python交互窗口,就完成了。

对了,还有一步,提交运算,生成job之后,一定要用脚本提交运算,切记切记,自己提交时没有用的,想一下为什么,留言告诉我吧。

同样的办法,我们可以先自己提交一个job,然后在rpy里观察它的函数是什么,把它加到我们自己的脚本里就好了,这一步我想留给大家自己完成,动动手。

我已经知道提交job的函数是什么了,但是我打了马赛克。滑稽/滑稽/滑稽

提交之后,愉快的运行,剩下的就交给我的3600x吧。

two years later.................

算完了,快乐

把5个odb展示一下,可以看出不同压下量对于镦粗外形的影响。别问我为啥最后一个长的尖尖的,与实际不符合,这个跟我设定的塑性参数有关,因为教学用,用的塑性参数不够好出现的。总之,不要纠结这个,已经不重要了,学脚本香。

我相信经过这一章节的学习,大家已经明白了怎么学着慢慢开始写脚本了。后面我会教学更加复杂的写法,以及分享。更加人性化的阅读工具 Reader。关注我,带你学脚本,我们下期再见。88

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值