python做cae库,基于Python的CAE自动后处理开发

以下文章来源于CAE数值优化轻量化,作者方永利

前面讲到了基于meta和hypergraph进行NVH分析(IPI、VTF、NTF)自动后处理,包括结果提取和自动出报告等功能。

基于META自动后处理:

Python二次开发在整车NVH分析后处理中的应用

Python二次开发在NVH分析VTF、NTF后处理中的应用

上面的后处理过程都是基于商业软件进行的,很多数据加工的功能受限于软件的函数接口,因此不够丰富。同时,基于hypergraph或meta的后处理都需要启动软件来完成数据处理,如果进行优化集成则(后台)启动后处理软件也需要一些时间。

这里介绍一些基于Python的CAE结果后处理方法,而不是基于商业软件来完成。包括Nastran结果文件.op2和.pch,LSDYNA结果文件d3plot和binout等自动后处理过程。ABAQUS的开发语言支持Python,因此对于ABAQUS的.odb结果自动后处理就不做过多的介绍。这些自动后处理过程既可用于常规分析自动后处理,也可以用于多学科优化时优化流程的集成,且这些过程不需要商业软件,只需要简单的配置下Python环境即可。

本文介绍基于Python的Nastran结果文件.pch自动后处理,包括IPI、VTF等。一、IPI自动后处理

d6f5f6fd1618f9cb3ab50bd21a016ecb.png

465acee990c9135845211a0a062d0ef0.png

这里定义了一个计算曲线面积的函数,用于后续动刚度计

ea6e020246adb84b73401c15ad3e400b.png

其中ax、ay、az是通过get_accelerations函数得到的一个包含所有分析输出频率个数的字典,字典的键为频率,值为包含六个方向的加速度值,即三个平动三个转动加速度值的列表。并且是通过实部虚部给出的,我们要的是幅值和相位表达,因此后续需要通过abs函数求出对应的幅值。

ffe05d50914307c0c022d221ec1a7c0d.png

在spyder环境下运行的效果。

c78fdc71d7373610937575f921b1322a.gif结果图片:

4c7f7d2e2cf48efe64f9f208342bc8d1.png二、VTF自动后处理

7bc61e3d7dddb49d4568354412fa8167.png

def06c865b78153b313b35ff064e09ec.png8ed72efacc7a46c9f06e0847848e8e1c.png

c36b51a0dd95f54f9438e7c3c8ac4550.png

这里通过scipy中的find_peaks函数找到不满足目标值的局部极值点,并在图中用红色的*号标记出来。

54f5876d94c4ae45f7ee25295caef9b4.png

416138dd7020095c8157a59705c4f5bd.png(注:这里只是为了演示,因此把目标值设置为8)。

以上只是简单介绍了.pch文件的读取和结果自动后处理过程,整个过程只需要几行Python代码即可完成。运行时间也就几秒钟。而不需要在商业软件中来进行。如果是进行优化集成,则不要输出结果图片等信息,只需要输出结果响应即可,会大大提高效率。同时,如果需要自动生成报告和结果统计等,只需要在次基础上添加简单的几行命令即可,十分方便简洁。

后续介绍ls-dyna结果d3plot和binout自动后处理方法。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值