首页/文章/ 详情

ANSA_META二次开发——破冰之旅:批量提取DOE采样结果数据

6月前浏览8512

摘要

本文介绍了一个利用BETA/META软件和Python语言开发的脚本,旨在从一系列计算模型的结果文件中快速批量提取特定节点的位移和部件的最大应力/应变数据。脚本针对瞬态或准静态工况下的结果数据进行处理,包括数据截取、求平均值、求导、积分、傅里叶变换等操作。文中详细展示了如何调用META软件提供的接口函数,如meta.nodes.Node.get_deformationsmeta.models.Model.get_centroid_scalar,来获取节点的变形和模型中心点的标量值。此外,还提到了通过指定PID获取部件最大应力(应变)的接口。最终,统计的结果数据文件可用于代理模型的创建或其他分析。


正文

  • 背景

做DOE时,批量提交了一系列计算模型,产生了对应的结果文件。如何不通过界面操作,快速批量地提取关注的结果数据,如指定节点的位移,指定部件的最大应力/应变。此外,针对瞬态或准静态工况,还需要对结果数据的曲线进行一些处理,如数据截取、求平均值、求导、积分、傅里叶变换等。

*如上图计算结果中,是一个准静态的计算结果,需要提取指定点的位移,同时,需要截取曲线红色方框内的数据段,再求得所截取数据的平均值,作为该计算的位移指标。

*此外,还需要提取部件的最大应变(应力),由于是准静态工况,因此也需要截取应变曲线红色方框内的数据段,再求平均值,作为该计算此部件的应变(应力)指标。



  • 工具

    本次将使用BETA/META软件来进行开发,开发语言采用python。



 


    最后统计的结果数据文件就可以通过简单整理,导入HyperStudy或者Optimus软件进行进行代理模型的创建,或用作其他。



    • 流程

    上图为此次开发脚本的大致流程,仅供参考  

    • 关键接口函数
    1. meta.nodes.Node.get_deformations

      获取指定节点的变形,示例代码如下:





















      # PYTHON scriptimport metafrom meta import nodesfrom meta import models
      def main():  m = models.Model(0)  n = nodes.Node(id=161, model_id=m.id)  res = m.get_current_resultset()    deform = n.get_deformations(res)  if deform:    print(deform.x) # X deformation    print(deform.y) # Y deformation    print(deform.z) # Z deformation    print(deform.total) # Total deformation    print(deform.node_id) # Id of the node
      if __name__ == '__main__':  main()
       


    2. meta.models.Model.get_centroid_scalar

      This method gets all centroid scalar values for a model specified by its id.

      # PYTHON scriptimport metafrom meta import models
      def main():  m = models.Model(0)  res = m.get_current_resultset()    model_centroid = m.get_centroid_scalar(res, 'min')  #model_centroid = m.get_centroid_scalar(res, 'all', non_zero = True)  #model_centroid = m.get_centroid_scalar(res, 'min', layer = 'top' )  for centroid in model_centroid:    print(centroid.value, centroid.element_id, centroid.second_id, centroid.type)
      if __name__ == '__main__':  main()  
       

      类似的还有meta.models.Model.get_corner_scalar等接口可供调用。



    • Meta无窗口调用运行脚本
      meta -nogui -s *.py  

    "C:\Users\Administrator\AppData\Local\Apps\BETA_CAE_Systems\meta_post_v22.0.0\meta_post64.bat-nogui -s *.py


来源:CAEer
SystemDeform二次开发ANSApythonMETA
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-05-06
最近编辑:6月前
团长
硕士 | 白车身结构设... 专注ANSA使用技巧-微信公众号『C...
获赞 114粉丝 932文章 135课程 6
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈