首页/文章/ 详情

Altair2024新功能:Python语言HyperWroks二次开发攻略

精品
作者优秀平台推荐
详细信息
文章亮点
作者优秀
优秀教师/意见领袖/博士学历/特邀专家/独家讲师
平台推荐
内容稀缺
17天前浏览2204


导读:大家好,我是ANSA攻城狮-代老师,多年从事汽车结构疲劳耐久相关仿真,目前在ANSA二次开发方向积累工程开发仿真经验。自2022年11月在仿真秀推出《少走弯路!基于Python的ANSA二次开发学习路线》以来,我在仿真秀不仅制作了3套ANSA二次开发精品课,并策划了一期线上直播《零基础入门ANSA二次开发学习方法、资料和工程案例详解》,深受用户好评。
近日,笔者第4套二次开发精品课在仿真独家首发《基于Python语言HyperWorks二次开发20讲正式上线了,详见见后文。以下是正文:

一、HyperWorks2024新功能

目前有限元仿真行业最常用的前后处理软件主要是Altair旗下的HyperWorks以及Cadence(最大的计算机芯片设计软件制造商之一)于今年收购的Ansa/Meta。
其中HyperWorks进入中国市场已有20余年,国内车企/航空航天/轮船制造等传统制造行业中使用HyperWorks软件进行有限元前后处理的比例极大。并且Altair官方提供了相当多的学习资料与视频。极大降低了软件学习以及工程应用的门槛。
为了提升工作效率,在使用HyperWorks进行有限元前后处理时通常会使用Tcl语言进行二次开发。相比竞品软件Ansa/Meta使用python语言进行二次开发,我一直认为这是Hyperworks一个有待优化的地方。固然HyperWorks可以讲界面中的操作已Tcl语言录制下来,但是tcl语言相较python的劣势实在太明显了,在后期的开发与维护中需要投入更多的精力与时间。
在2024年,Altair推出的2024版本的HyperWorks开始全面支持使用Python语言进行HyperWorks的二次开发。并且能够支持使用python的API结构运行Tcl语言与Command命令。
但是由于功能比较新,官方的帮助文档体系还不完善并且无法将界面的操作录制为Python语言。所以学习起来的曲线较为陡峭。今天我就用一篇文章向大家一下、使用Python进行HyperWorks的二次开发的学习路径。

二、HyperWorks二次开发学习资料

通过作者查阅后发现,即使是官方文档对于API函数的作用以及其中参数的含义都不是很完善,且案例比较少。
当然对于想要自学的同学们,这也是比较难得的学习资料,我将对应的网址放在文章中,希望能够帮助大家。
图一

三、开发工具

工欲善其事必先利其器。一般商用软件都提供代码运行及调试的界面。Hyperworks的Python开发界面可以通过以下方式进入。Python Window的使用小技巧这里暂不做过多赘述。

图二
但是相较于VSCode或Pycharm,不论是负责项目的代码管理还是代码编写效率,自带的开发环境都不太能够满足日常开发需求。
这里我推荐大家下载VSCode免费版本,在VSCode中我们可以搜索名为“HyperworksPyAPI ”的插件。安装后可以进行API的自动补全,并提示相关参数的数据类型以及名称(效果如下)。

图三

图四
另外推荐大家安装VSCode中的一些AI工具,能够自动根据你写过的代码,推测并补全剩下的代码,开发效率 Up Up Up。这里推荐

图五

四、学习路径

接下来是重中之重,想要学好二次开发,大家需要在学习之前有一个学习思路。面对上千个API,我们需要知道他们的大致分类以及学习重点。
在接触过Abaqus、Ansa/Meta、Hyperworks二次开发后,我总结出二次开发API可以大致分为如下三类:

(1)驱动界面

(2)驱动实体

(3)交互界面
驱动界面的API是进行窗口显示设置/字体颜色设置/文件读取与输出等功能。在HyperWorks中针对界面进行驱动的API主要集中在hw库中。而在HyperWorks中界面的层级还是比较清楚的,这里用一张图能够很清晰展示。HW中都有对应的API进行以下每个层级的界面的获取/设置/创建。

图六

驱动实体的API是进行实体的搜索/创建/属性设置,这部分是我们应该重点学习的部分,也是二次开发中的主要工作。而其中实体(entity)的概念很宽广,有限元模型中的点线面/网格/载荷/约束等等能够在界面中看到都是实体。
在Hyperworks中我们可以通过以下命令查看有哪些实体种类。

(1) import hm

(2) import hm.entities as ent

(3) dir(ent)
交互界面部分主要是创建按钮/窗口/对话框等,与用户进行交互,提升用户使用体验。这部分对于整体二次开发来讲也很重要,因为一个好的程序一定是能够让用户用起来方便。但是我也想说大家前期不要把过多的精力放在这上面,交互界面也仅仅是锦上添花,能够完成指定功能才是一个合格的二次开发程序的第一要务。

图七

其自带的gui库基本上可以满足日常二次开发需求。对于复杂逻辑的界面开发,在Hyperworks自带的Python中提供了PyQt5以及tkinter两个GUI界面开发库。
图八

五、HyperWorks二次开发教程

近日,笔者正在仿真秀发布全网独家,首发视频课程《基于Python语言HyperWorks二次开发20讲。它采用Hyperworks自带的Python集成了Numpy/Pandas/PyQt5等几百种外部库,相较老版本的TCL语言开发,功能更加强大,灵活性更高。且使用Python语言开发中能够兼顾使用TCL语言。充分结合两种语言的优势,大大加快开发速度。以下是课程大纲

《基于Python语言HyperWorks二次开发20讲

课程可回放,可开具发票、不定期加餐

提供vip群交流、知识圈答疑和模型下载


 扫码立即试看  
本课程由浅入深讲解如何运用Python进行Hyperworks二次开发,并且提供相关学习资料,模型、VIP群、加餐直播、岗位内推和答疑服务等

1、您将得到

(1)如何自主学习HyperWorks二次开发
(2)如何运用工具提升开发效率
(3)如何创建/搜集实体并设置实体属性
(4)如何创建GUI界面,增强代码的人机交互
(5)多种工程应用实例(仿真工况前后处理二次开发/仿真模型搭建二次开发)

(6)开具电子发票,提供资料和模型,课后VIP群与答疑服务等

2、适合哪些人学习
(1)设计仿真工程师
(2)机械等专业理工科在校生
(3)HyperWorks软件用户和学习者

(4)在企业从事产品研发工作的工程师

仿真秀读者福利
仿真秀,致力于为每一位学习者提供优质的仿真资源与技术服务支持,让您的仿真学习之旅更加顺畅,欢迎在公众 号对话框与我互动交流!以下资料供用户永久免费下载哦(见下图),本论文PDF已经收录。
下载地址在仿真秀APP公众 号菜单-资料库-资料下载-进入百度云盘群下载,不会失效,且永久免费更新。
扫码进技术群领仿真资料包
可免费参加技术直播

(完)

来源:仿真秀App
ACTFluentMarcAbaqus疲劳二次开发航空航天汽车电子ANSA芯片材料
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-08-28
最近编辑:17天前
仿真圈
技术圈粉 知识付费 学习强国
获赞 9789粉丝 21182文章 3421课程 216
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈