zhangrenwei207 发表于 2014-6-10 11:29

abaqus二次开发及接口简单实用

本帖最后由 wdhd 于 2016-5-7 10:55 编辑

  基于的二次开发对于很多新手来说都是一个神秘的,感觉是高难度的问题,致使很多新手对二次开发的研究都处于初级了解阶段,或完全不感冒阶段。
  其实二次开发很简单,某种意义上讲,
  常用的abaqus二次开发方式有两种,
  (1)直接修改inp文件,这种方式需要对inp文件中大量的节点和单元进行操作,一般不建议采用inp文件进行二次开发(除非有特殊的关键字或标识符,其实关键字也可以用python语言来进行二次开发,笔者亲证)。
  采用inp文件进行二次开发数据量大,行数多,一旦发生问题难以检测错误原因
  (2)采用abaqus语言,自编脚本,简单容易,非常适合初学者。这里主要介绍python入门
  python语言的开发远没有想象中的难,其实基于abaqus语言的二次开发更像是word或excel里的VBA,我们只要通过录制一段宏文件,就可以简单迅速的完成一个模型的建立,当我们人为的对这段宏文件进行修改,就可以完成对该模型的修改,非常适合有大量相同或类似模型的建立,防止用户一遍又一遍繁琐的建模操作。简单的步骤如下:
  1.在建模前先打开file--Macro Manager,然后新建一个宏文件(在Home或Work都行,只要你最终能找到这个文件),此时会弹出Record Macro对话框,托至不碍事的地方
  2.进行正常的cae建模就行,至到建模完成
  3.点击Record Macro对话框的Stop Mecording,此时命令栏会显示“Macro "Macroname" has been added to "E:\Temp\Macroname.py"”,前期任务搞定
  4.此时用文本编辑器打开此py文件,py文件中有些文字是没有用的,把“def Macro1 ...import connectorBehavior”都可以删掉,每行字前的空格都要去掉(文本编辑器里一般有列模式,用列模式可以对整个文本的进行操作)
  5.复制你新生成的python文件,并对该文件中的参数进行修改,在提交给abaqus--cae就可以完成重复建模了,如此可以无限重复,其实python语言都是大白话,你能看懂的
  需要指出的是:
  1.可以结合其它编程语言如 VB、VC 配合修改参数并生成py文件,使用更为灵活
  2.生成py文件可以直接在cae中选择file-run script,选择你生成的python文件
  3.可以用python文件直接生成cae模型文件,可在py文件最后添加
  "mdb.saveAs(pathName='" *** "')"
  4.可以通过cmd命令直接将py文件提交个abaqus内核,让abaqus进行运算,cmd命令为“Shell "C:\Windows\SysWOW64\cmd.exe /k abaqus cae noGUI=" **** ".py ", vbHide
  等待abaqus运算的py语言"myJob.submit(consistencyChecking=OFF, datacheckJob=True)"

Lorraine 发表于 2014-6-10 14:25

直接修改inp文件,一般不用于需要修改模型的情况,一般用于只改变边界条件或者载荷的情况较多

振动波 发表于 2014-6-10 17:26

这么高级,连简单的abaqus操作都没有搞懂,看来需要学习的还很多。

Lorraine 发表于 2014-6-12 08:49

振动波 发表于 2014-6-10 17:26
这么高级,连简单的abaqus操作都没有搞懂,看来需要学习的还很多。

一步步来,多做一些实例就明白了

振动波 发表于 2014-6-12 11:03

Lorraine 发表于 2014-6-12 08:49
一步步来,多做一些实例就明白了

你好如果想再刀具上加振动的话,振动方程我为x=sint   y=sin(t+pi/2) 我用周期幅值没做出来不知道为什么?您能帮我解答下吗?

zerustic 发表于 2014-6-12 23:08

不错,说的很是详细,{:{10}:}{:{10}:}{:{10}:}

Lorraine 发表于 2014-6-13 09:18

振动波 发表于 2014-6-12 11:03
你好如果想再刀具上加振动的话,振动方程我为x=sint   y=sin(t+pi/2) 我用周期幅值没做出来不知道为什 ...

你的意思是刀具上的振动没加上?
还是说加上以后计算结果中没有体现出它的影响?

振动波 发表于 2014-6-26 11:27

Lorraine 发表于 2014-6-13 09:18
你的意思是刀具上的振动没加上?
还是说加上以后计算结果中没有体现出它的影响?

把振动施加在 参考点上一计算就出错说节点无效啥的   2.我还想问一下那个如果定义一物体的运动速度v,然后又利用幅值曲线的话,意思就是所设定的速度从小变大直到所设定的速度对吗?

wuchengyun 发表于 2014-6-28 21:42

感觉高大上啊

xhfloneywq 发表于 2014-7-3 21:33

问下,我用Python建了一个框架,我建一步就在CAE中实现一步,但到吧梁柱线排列成一层框架的时候,直接跳出黑框是怎么回事啊?求解,GUI detected error while waiting for ipc connection to close,我用的是6.11版本的...

xhfloneywq 发表于 2014-7-3 21:37

xhfloneywq 发表于 2014-7-3 21:33
问下,我用Python建了一个框架,我建一步就在CAE中实现一步,但到吧梁柱线排列成一层框架的时候,直接跳出 ...

而且看网上说调试电脑环境变量的都不行啊....

lpj669 发表于 2015-4-3 15:38

看来需要学习的还很多。
页: [1]
查看完整版本: abaqus二次开发及接口简单实用