首页/文章/ 详情

Python语言在ABAQUS数据提取中的简单应用

5月前浏览10370

本文摘要(由AI生成):

本文总结了ABAQUS中利用Python脚本进行后处理数据提取的方法和步骤。文章介绍了如何利用面向对象编程思想编写Python脚本,并重点讲解了场变量和历史输出变量的提取方法。文章还提到了ABAQUS无法直接提取节点处的应力值,需要进行额外的插值算法处理。最后,文章鼓励读者参考文档进行更多物理量的提取,并希望这些简单说明能对读者有所帮助。


前面某期文章提到过ABAQUS中利用Python脚本进行后处理数据的提取,这个问题有必要做些讨论和总结。

在ABAQUS中,利用Python脚本做简单的处理是非常方便和易懂上手的,这里做简单介绍,参考帮助文档ABAQUS Scripting User's Guide 9.5:Reading from an output database,首先清楚后处理ODB的对象模型如图1所示,基于此我们可以利用面向对象编程思想进行Python脚本的编写。

图1 odb object models

我们知道在建立分析步的时候存在场变量和历史输出变量,这里首先针对场变量来讲解。首先假设对节点应力(S)/位移(U)做提取,可以看到fieldoutput输出情况,参考帮助代码:

for fieldName in lastFrame.fieldOutputs.keys():
       print fieldName

需要注意的是,在场变量的输出状态下,参考文档可以看到下面的说明,也就是说应力值的提取是针对积分点的,而位移输出则针对节点。

S : Stress components
Type: TENSOR_2D_PLANAR
Position: INTEGRATION_POINT
U : Spatial displacement
Type: VECTOR
Position: NODAL


以位移提取为例,整个参考代码如图2得到作者使用实例的节点号与合位移的输出结果:

图2 代码及结果

同样可以得到积分点处的应力值,但是有个问题,获得积分点的应力值之后,如何映射到节点上面,这个就需要额外的插值算法处理。所以是不是就可以理解为ABAQUS是不能直接提取到节点处的应力值的。

另外,针对historyoutput的提取,同样可以参考文档进行一步一步的编写,提取对应区域的物理量,大家可以尝试。

以上为针对Python对后处理中某些物理量提取的简单说明,抛砖引玉,希望对大家有用。祝大家周末愉快,多多支持转发,不介意仍碎银O(∩_∩)O~~~!


Abaqus航空航天轨道交通汽车建筑
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2019-06-26
最近编辑:5月前
CAE仿真空间
硕士 |欢迎关注“CAE仿真空间”公众号
获赞 100粉丝 781文章 48课程 3
点赞
收藏
未登录
1条评论
小姜
努力学习有限元仿真。
5年前
学习一下
回复
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈