小田老师:实操Fluent二次开发工具和ACT插件(附视频 代码)
- 作者优秀
- 优秀教师/意见领袖/博士学历/特邀专家/独家讲师
- 平台推荐
- 主编推荐/内容稀缺
导读:曾几何时,小田老师在仿真秀App撰文绝无仅有!我整理的132份Ansys ACT二次开发学习资料,引发了不少用户在后台留言索要资料,由于迁移,导致读者下载困难。请点击附件下载。
近日小助手获悉:小田老师原创并首发仿真秀官网和APP的SCDM二次开发52讲精品课已经获得了所有学员五星好评,其中加入VIP群用户即将突破100人。VIP用户提问已经整理相关文章《答疑 | ANSYS二次开发中常见问题汇总》,完整答疑PDF仅在群内分享。目前,小田老师正在筹备FLUENT二次开发精品课,7月中下旬还将带来Fluent二次开发公开课,大家尽情期待。以下来自小田撰稿3个FLUENT二次开发工具和ACT插件(点击附件下载即可),希望对大家有所帮助。如有不当,欢迎批评指正。一、自学XYPlot4Fluent绘图工具
大家都使用过Fluent中XY Plot功能吧,可以绘制出流场中的物理量分布曲线,但是曲线过于简陋(如下所示),有种巨丑无比的感觉,不适合结果展示和科研报告,而且图中各元素属性修改和保存也不方便。
所以,对于Fluent中曲线图的展示,之前我都是先导出曲线数据,然后通过Python中的Matplotlib模块重新绘图出图,这样曲线图的逼格一下子就上来了。Matplotlib模块可以绘制出各种形式的曲线图或云图,绝对是数据可视化和仿真科研的工作中的利器。但是,手动导出曲线数据,然后激活Python环境,解析数据文件,然后调用Matplotlib模块绘制曲线图,需要打开多个程序,而且操作相对繁琐。小田老师作为一个“懒人”,当然是无法忍受这种不必要的人工操作,所以奋战无数个寂静的深夜,终于将Matplotlib中曲线绘图功能集成到了Fluent中,可以替代原生的XY Plot功能。今天,就把这款ACT插件分享给大家:XYPlot4Fluent Ver1.0,插件可以实现在Fluent中调用Matplotlib模块快速绘制曲线图,效果如下:
1、分享本篇文章到朋友圈、并截图
2、截图发送到后台即可获得下载链接
3、添加平台小助手邀请进二次开发软件交流群(不要催,人有点多)
XYPlot4Fluent插件的安装与使用的方法,可以参照如下视频:
接下来,给大家分享下XYPlot4Fluent插件实现的思路和方法:首先,需要明确:ANSYS ACT是基于IronPython,而Matplotlib是基于CPython的,两者虽然语法相同,但是底层实现却不同,所以不能通过import模块包的方式调用。首先,通过TUI命令,可以输出Line Surface对应的曲线数据data.xy至本地;输出数据操作对应的TUI获取过程和完整命令如下所示:
图4 TUI命令输出曲线数据
然后,在ACT中,可以通过IronPython脚本,传递TUI命令至Fluent执行,完成数据输出,如下所示。输出的data.xy数据格式如下,首行为曲线标题,第二行分别为X、Y轴标签,第三行为图例
图6 曲线数据格式
使用CPython编写代码,实现解析data.xy中数据,然后使用Matplotlib模块绘制曲线图,代码如下:
然后,使用argparse模块为程序代码提供命令行调用参数-f,代码如下:图8 添加命令行调用
最后通过使用Pyinstaller模块将Python源代码,编译打包为XYPlotFluent.exe,后续我们通过CMD命令行执行:XYPlotFluent.exe -f [filename],就可以完成数据解析和展示。(3)ACT封装调用采用ACT封装上述操作和工具,实现点击Generate Plot按钮后,首先完成步骤(1)输出曲线数据文件,然后通过subprocess模块,以批处理的形式调用XYPlotFluent.exe,并传入对应数据文件,实现整个集成调用的过程。二、批量导出Fluent云图技能
接着讲,在Fluent中输出多个云图时,需要不断点击鼠标切换云图显示和保存,操作太重复又琐碎。
小田老师作为一个“懒人”,当然无法忍受这种人肉的操作,所以随手写了一个如下的脚本方法:
脚本的代码逻辑如下:
代码执行完成后,成功将结构树中所有结果输出,文件名与结构树中的对象同名。
上述脚本的通用性和稳健性都很好,但是却不够定制化,目前存在如下三个问题:
作为一个用户体验至上,又很喜欢“偷懒”的工程师,一气之下就开发了如下所示的ACT插件工具,完美满足了以上通用性和定制性的需求;经过连续几晚的功能测试和体验优化,现在用起来感觉可真香,明显感觉到工作效率的提升。
今天,就把这款ACT插件(适用于19.0~2021R2版本):ResultsExport4Fluent Ver1.0 分享给大家,插件可以实现Fluent中批量输出不同视角和不同格式的云图。
1、分享本篇文章到朋友圈、并截图
2、截图发送到后台即可获得下载链接
3、添加平台小助手邀请进二次开发软件交流群(不要催,人有点多)
ResultsExport4Fluent插件的安装与使用的方法,可以参照如下视频:
三、多孔介质计算器V2.0上线!10秒即可设置模型参数
朋友们好!大家还记得吗,4月份我开发了一款多孔介质计算器,能快速拟合计算多孔介质域参数,详情可见往期文章《多孔介质计算器Ver1.0版介绍》
为了大家更方便快捷的设置多孔介质域模型,特将计算器进行了功能更新,V2.0版本在V1.0版本的拟合算法和核心功能的基础上,增加了两个新功能:PS:计算器获取方法见文末,欢迎各位朋友下载使用,多多在后台反馈使用建议~
新功能1:速度与压差数据的导入方式,提供外部csv文件和表格输入两种方式
新功能2:拟合计算得到的多孔介质参数,可以直接在ACT中指定流体域和设置孔隙率,更方便快捷(支持各向同性的参数输入设置)
这里分享一个非常关键的技术点,如何将Fluent中的流体域信息同步显示到ACT向导?
为大家提供一个思路作为参考:
首先,获取Mesh或Case中所有流体域的名称,并写入到本地文件:"zoneinfo.db"中
然后,通过ACT中的Python脚本读取本地文件,获取流体域的列表,类型为List[str]()
接着,将列表设置到下拉框(control=“select”)的options属性中
最后,非常重要一步就是需要更新“属性“组件的数据和刷新组件,才能成功加载显示,可以参考如下代码:
那么问题来了:如何读取并写入流体域名称呢?
这里就需要用到Fluent中的Scheme脚本,通过let-loop循环实现,代码如下:
忍不住夸赞一下,Scheme果然是最优美的语言!真是太香了!
最后,如何安装和使用多孔介质计算器呢?
可以观看以下视频了解详情:
点击文章附件下载
声明:原创作品,本文首发ANSYS仿真与开发,本文已授权,部分图片和内容源自网络,如有不当请联系我们,欢迎分享,禁止私自转载,转载请联系我们。
喜欢作者,请点赞和在看 获赞 10082粉丝 21543文章 3537课程 219