西莫电机圈

 找回密码
 立即注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

手机号码,快捷登录

查看: 1151|回复: 1

[HFSS] 关于maxwell/hfss的脚本控制

[复制链接]

该用户从未签到

发表于 2020-7-7 19:19 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 妹控赵小翼 于 2020-7-7 19:59 编辑

首先,maxwell/hfss自身的参数化建模分析功能、优化功能,能够满足多数用户的流程控制需求。但在某些时候,尤其是希望与其他软件或算法进行交互的场合中,使用脚本控制maxwell/hfss的需求也是存在的。像我个人,是用于类似模型的快速建立和统一后处理。当然,某些对二次开发需求更强的用户,可能会直接选用其他仿真软件,不需要折腾脚本。
我目前主要用的ansys electronics 2015.1,支持vbs和ironpython脚本,官方也给出了help文档。录制脚本功能,适用于多数简单需求,用户其实在缺乏vbs或python基础时,也能顾名思义地进行修改。但当希望进行灵活的流程控制时,希望代码复用而不是此次录制或者复制粘贴时,一行行写脚本或者改脚本都是高重复、低效率的工作。对于脚本控制的重度用户,有必要考虑使用更高效的脚本生成工具。
我个人倾向于使用IronPython,会把项目中用到的脚本,简单地封装成函数,然后通过传参调用的方式来参数化地、简洁地使用。即将录制的脚本作为底层,然后用封装函数甚至对象等更高层的方式去使用,能大大简化脚本开发工作量。(无疑,对于非重度用户,寻找、使用甚至不可避免地要调试工具,会花大量时间精力,得不偿失。)
在Github搜索现有的开源项目,发现HFSS的脚本库工作比Maxwell多很多。(使用“HFSS”和“ansys Maxwell”作为关键词,毕竟“maxwell”关键词搜出来的结果会有太多不相关内容。)尤其是WoodyBuendia fork自国外仍然在改进的HFSS-MATLAB-API项目,用户在Matlab中调用函数,会自动生成vbs脚本。 fig1.jpg

                               
登录/注册后可看大图

但个人觉得,使用matlab生成vbs脚本,间接控制maxwell/HFSS的方法,虽然概念上对熟悉Matlab的用户更友好,但由于脚本库不适用于新版本、底层功能不全等实践中经常遇到的问题,用户还是需要对vbs有所了解,必要时要能改写底层vbs代码生成指令。因此,我个人不太喜欢这种间接控制的方式。在需要用到vbs的特性时,可能需要在录制或matlab生成vbs脚本后,再手工修改。
我目前用不到vbs脚本特性,用IronPython就好了。Maxwell/HFSS自带IronPython解释器,也更便于用户进行开发。随着时间的发展,python社群更壮大,因此以后使用python可能得到的社群支持也会更多。
就HFSS而言,目前已经有一些部分可用的python封装脚本库,如pyHFSS、hycohanz、HFSS_PYTHON等项目,甚至有面向对象的,如hfss-modeler。而maxwell的脚本我暂时还没去查看源码。如果有新的maxwell/hfss用户使用这些脚本,通过反馈意见、协作开发等不同方式加入到开源社群中来,这些工具以后会越来越趁手。
西莫电机论坛微信公众平台正式上线!★详情请点击★ 西莫电机论坛会员交流专用群欢迎您西莫电机论坛加群请注明论坛用户名及所从事专业,否则不予通过

该用户从未签到

 楼主| 发表于 2020-7-7 19:58 | 显示全部楼层
最开始好像错误发布为空白页面了,请见谅。
西莫电机论坛微信公众平台正式上线!★详情请点击★ 西莫电机论坛会员交流专用群欢迎您西莫电机论坛加群请注明论坛用户名及所从事专业,否则不予通过
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|西莫电机圈 ( 浙ICP备10025899号-3 浙公网安备:33028202000436号

GMT+8, 2024-4-28 23:39 , Processed in 0.086111 second(s), 24 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表