首页/文章/ 详情

使用Python脚本提取Abaqus有限元模型中单元质量并保存至CSV文件

精品
作者优秀平台推荐
详细信息
文章亮点
作者优秀
从业经验5+年/博士学历/特邀专家/独家讲师
平台推荐
主编推荐
2年前浏览2784

1 直接上菜

一个零件的有限元模型如下图所示,采用壳单元建模,重量几百克左右,采用mm、tonne单位制。要读取模型每个单元的质量。

360截图20220614150759481.jpg


读取所有单元质量的Python脚本xxxx.py如下图所示。注意下图中with open()语句,一句是Python 3的格式,一句是Python 2的格式。由于Abaqus使用Python2.7,所以采用第2种格式。使用这两种格式向CSV文件写入数据行时,不会间隔插入空行。

image.png


在Abaqus中运行上图脚本文件。

image.png


打开文件看一下读取的单元质量数据。每个单元质量0.11克左右。

640.png


2 收人之鱼

向CSV写入输入无空行的格式,是向别人学来的。《python2/python3中关于写入csv文件时会空一行以及中文编码问题的解决办法总结》一文作了详细说明。从该文截图三张,以表感谢!(下面第二图注错,应为Python3)

image.png

image.png

3 授人以渔

在帮助文件中查看一下getMassProperties()的介绍,如下所示。该方法可以返回part和region的质量特性。要读取单元质量,用part是不行了,只能用region试试。

image.png


继续往下翻帮助文件,一行代码,柳暗花明,如下图所示。下图中将e[1:100]共计99个单元作为一个region,那么,一个单元就可以表示为e[i:i 1](Python列表切片操作)。

image.png


再翻翻看,要导入regionToolset包,如下图所示。

image.png


4 再尝试一个神器

想看看在软件界面中读取单元质量,会是什么效果。打开ABAQUS_PythonReader神器,查询一个单元的质量,竟然无脚本记录!

奇怪的事情发生了,框选一个单元,Done(或中键),出现下图消息提示区前9行数据。单击选取一个单元,Done(或中键),出现下图后面3行数据。

640 (1).png

科普Abaquspython
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2022-06-14
最近编辑:2年前
KongXH
博士 专注于有限元分析领域,联合创作...
获赞 48粉丝 93文章 58课程 1
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈