二次开发 | ABAQUS提取变形后的节点坐标

源问题

abaqus中,对一圆柱管材冲压胀形,结果中,怎么提取管材的厚度变化曲线?

问题分析

根据问题描述,所述圆柱管材应该采用实体建模,其厚度变化无法直接获得,一种可行的思路是在圆柱管材内外壁找到两个特征节点,以这两个特征节点之间的距离表示管材的厚度,从而得到厚度变化曲线。

ABAQUS中不支持输出变形后的节点坐标(当前使用版本6.12,后续更新版本未知),因此本问题的关键在于如何获取变形后的节点坐标

如何获取变形后的节点坐标?

目前从网上查找的可行的方法有三种。

方法一

在visualization模块中,通过query-general queries-Nodes工具,逐个选取查询变形后的节点坐标(Deformed coordinates (unscaled)),手动记录后再用其他工具绘制进行处理,得到想要的结果。

此方法适用于较少的节点坐标获取需求,若需要获得的节点数量很多的话,工作量不言而喻。

方法二

先完成计算,得到计算结果的odb文件;

新建一个model,在abaqus菜单中 file-import-part,类型选择odb,导入你的odb,然后在出现的对话框下面选中“import deformed configuration” ,step、frame根据你的需要选择,此时模型上的节点坐标即为变形后的坐标。

此时输出的inp文件中的坐标即为变形后的坐标。如果需要的是特定节点的坐标,则可以新建一个节点set,然后插入关键字(插入位置为end STEP的前一行)

*Node print, nset=nsetname(需要输出的节点集合名)

coord

这样就可将所关注的节点坐标写入到dat文件,使用其他编程工具读取进行后处理。

此方法整个思路其实相对容易理解,但是操作过于繁杂,而且每次只能提取一个增量步的变形节点坐标,输出数据还需要编程读取处理,比较麻烦。

方法三

由于输出的常变量中没有变形后的节点坐标,因此可采用Python语言提取节点坐标(original coordinate)和特定分析步-增量步的变形量,通过运算容易得到变形后的节点坐标。

示例:

根据题目描述,建立一个厚度5mm、高度50mm的圆柱管,在上表面施加-10mm的强制位移约束,在圆柱管(part上,非assembly)内外相对应位置分别建立一个单节点的节点集,分别命名为SET-IN、SET-OUT,采用general static分析步,设置分20个增量步求解(便于绘制曲线),其余为常规操作。

11.png

本算例脚本已进行升级,此版本不再提供购买下载(原贴为收费改不过来了),请勿购买!!!

新版代码及使用说明详见:

http://www.jishulink.com/content/post/0c63a829-4f12-43c9-970a-070e77481906

以下内容为付费内容,请购买后观看

   64人购买

脚本已进行版本更新,详见:http://www.jishulink.com/content/post/0c63a829-4f12-43c9-970a-070e77481906

App下载
技术邻APP
工程师必备
  • 项目客服
  • 培训客服
  • 平台客服

TOP

22
8
15