原标题:利用Python与HFSS联合仿真设计一个微带天线!

我们知道HFSS是一款电磁仿真商用软件,用其进行天线的设计十分方便。而该软件也预留了可以运行脚本的接口,使用者可以使用脚本对软件进行控制,实现模型的建立、求解等等。由于后期可能会用到联合仿真,而大多数联合仿真的脚本都是使用的Matlab进行编程,网上也有不少现成的api,因为对python比较熟悉,且python除了数值计算其他的功能也相当强大,并且免费开源,于是决定用python写一个建模的脚本(其实是我matlab学得太烂了),折腾了两天,终于把微带天线的模型建立与仿真的过程搞定了,当然是基于有Matthew Radway这位大牛的基础上。这个例子也是接触HFSS时手绘天线做的第一个例子,现在用代码做一遍,也是很有意思的事情。下面分享给大家。

1、连接软件

第一步当然要用脚本实现打开软件了。关于这个步骤,HFSS帮助文档中是这样写的

GetAppDesktop

Use:GetAppDesktopis a function of oAnsoftApp. This function does not take an input and it returns an object. The object is assigned to the variable oDesktop.

Syntax:GetAppDesktop()

Return Value:Object.

Parameters:None

Example:

Set oDesktop = oAnsoftApp.GetAppDesktop()

给出了函数名,参数值,返回值,以及一个实例(这个帮助文档写得很不错,但是后面阅读过程中也发现了一些小错误,当然很可能是因为我用的是daoban)。这个返回值oAnsoftApp就是后面进行一系列操作要使用的对象,所有的操作的形式都是下面这样:

oAnsoftApp.

python中编写了一个接口函数把这个函数封装在里面。代码如下(不是我写的):

作者用了win32com.client.Dispatch()这个函数,这个函数是专门用来连接接口的,返回值中的那个oDesktop就是生成的对象。

实际调用代码:

[oAnsoftApp, oDesktop] = hfss.setup_interface()

2、新建一个project

oProject = hfss.new_project(oDesktop)

这里就是用了上面生成的oDesktop对象新建了一个object,具体查阅help文档和编写api的工作和上一步一致,并且平时使用时直接使用接口调用即可。注意,下面进行的操作都在这个project中,所以下面操作的对象就是oProject了。这个时候HFSS里应该长这样了。

3、保存project

养成良好习惯,新建的文件之后先保存,在编写过程中因为没有先保存,生成了一堆临时文件,挺讨厌的。这个传人的参数可以包含路径。

hfss.save_as_project(oDesktop,"E:/dj/test/microstrip_antenna.hfss")

4、新建一个design

这里传人的参数为design的名字,设计模式。

oDesign = hfss.insert_design(oProject, "HFSSDesign1", "DrivenModal")

新建完成后发现和我们手动操作是一样的。

5、建立模型

教程中首先新建了一个地板,并设置为PEC。这里也分别调用了这两个函数,尺寸可以用字符串输入,很方便灵活,不需要自己转换为一堆小数点的数字。设置PEC表面首先需要获得平面的faceid,再给这个表面设置边界条件。

由于建模过程比较类似,这里就不逐个给出了,模型建立完毕如下图(包括了设置边界条件和设置端口):

6、设置求解和扫频

这里求解函数传人了中心频点;扫频传入了扫频方式,起始频率和终止频率,频率间隔。

7、求解

对于每个setup进行求解。是不是和手动操作是一样的?

hfss.solve(oDesign,setuplist)

8、退出HFSS

hfss.quit_application(oDesktop)

结束语:今天暂时研究到这儿,还有很多比如查看求解完成后的驻波、增益曲线等等还有设置主从边界啦很多的api还没有编写,有时间会继续完善。

做了个有趣的小玩意儿,分享给大家~

完整主函数源码(api部分还不是很完整,哦,相当不完整,就先不给出了):

进群“960410445” 即可获取书十套PDF!

说明:本文中的微带线设计案例来自李明洋老师的《HFSS电磁仿真设计应用详解》一书的第10章----HFSS微带天线设计实例。

部分api设计参考使用了Matthew Radway在github中分享的Interact with ANSYS HFSS via the HFSS Windows COM API。地址:http://mradway.github.io/hycohanz/返回搜狐,查看更多

责任编辑:

hfss和python_利用Python与HFSS联合仿真设计一个微带天线!相关推荐

  1. hfss和python_利用Python与HFSS联合仿真设计一个微带天线(附详细代码)

    原标题:利用Python与HFSS联合仿真设计一个微带天线(附详细代码) 我们知道HFSS是一款电磁仿真商用软件,用其进行天线的设计十分方便.而该软件也预留了可以运行脚本的接口,使用者可以使用脚本对软 ...

  2. 利用Python与HFSS联合仿真设计一个微带天线

    说明:本文中的微带线设计案例来自李明洋老师的<HFSS电磁仿真设计应用详解>一书的第10章----HFSS微带天线设计实例. 部分api设计参考使用了Matthew Radway在gith ...

  3. HFSS仿真设计·5G微带天线(Ka波段)及优化方案调研

    HFSS仿真设计·5G微带天线(Ka波段)及优化方案调研 Ka波段矩形微带仿真 参数计算 模型设计 仿真模型设计 初始仿真数据观测 优化设计 另一个模型的结果 优化方案调研 阅读文献 Ka波段矩形微带 ...

  4. 利用python加上ffmpeg,ffmpy,做一个音视频格式转换器

    利用python加上ffmpeg,可以做一个简单的音乐或者视频格式转换器. 可以利用PyQt5做界面,本例中比较简单: 流程非常简单,点击"选择源文件",选取要转换的音频或者视频文 ...

  5. 如何利用python对股票的走势进行一个判断?

    如何利用python对股票的走势进行一个判断? 一.问题 当我们拿到沪深股票的所有股票的数据的时候,如何对所有股票的走势,做一个模糊的判断? 当然可以通过画出一个股票的走势图来进行判断.但是问题是,我 ...

  6. mysql数据导入python_利用python将mysql中的数据导入excel

    原博文 2017-06-29 13:29 − Python对Excel的读写主要有xlrd.xlwt.xlutils.openpyxl.xlsxwriter几种. 如下分别利用xlwt和openpyx ...

  7. plt图片输出 python_利用Python制作词云,wordcloud神器你值得拥有

    相信许多人都看到过下面这样的词云图,词云图是一种很好的可视化工具,其作用主要是为了文本数据的视觉表示,既酷炫又能突出重点. 关于词云图的制作,网上能够搜集到很多的教程,许多都是利用了专用的工具,这些工 ...

  8. 安卓模拟器运行python_利用python+Appium 之 如何在设备(模拟器)上自动安装并启动APP...

    大家都知道,要测试模拟用户在手机端安装一个APP, 首先会考虑到,在什么设备下安装,设备版本是啥,设备名称是啥,我要安装啥APP.安装完毕以后我要启动和登录APP. 那如何利用python + app ...

  9. 通达信行情数据获取--python_利用 Python 获取余额宝历史收益数据

    最近想做一个关于用一些指数基金与余额宝组成的简单 风险-无风险 投资组合的实验计算,发现通达信之类的行情软件并没有提供完整的余额宝收益信息,如通达信仅有年化收益率的数据,并没有万份收益的数据.因此考虑 ...

最新文章

  1. Django 视图URLconf3.1
  2. 这一年,宇宙“面目”愈发清晰
  3. 智慧城市领域又出最新报告——智慧交通将迎来大爆发
  4. 【转载】jQuery插件开发精品教程,让你的jQuery提升一个台阶
  5. 动态毛玻璃特效html,js和CSS3炫酷毛玻璃面板特效
  6. Spark基础脚本入门实践2:基础开发
  7. Oracle实例和Oracle数据库(Oracle体系结构)
  8. 阿里云服务器部署django项目
  9. [JavaScript] 判断网页能不能被IFrame 嵌入
  10. 一个基于 SpringBoot 开源的小说和漫画在线阅读网站,简洁大方、强烈推荐
  11. IE6丢失COOKIE的问题,令人郁闷的P3P协议
  12. Spring Boot优点和缺点
  13. 《考研-数据结构-哈弗曼树-已知某段通信报文内容,对该报文进行哈弗曼编码,并计算平均码长》
  14. 《深入浅出数据分析》R语言实用教程
  15. 实践:手把手教你写滴滴打车 APP
  16. html+canvas 星空背景案例
  17. C语言语音朗读小工具
  18. java怎么无参构造方法_Java中如何在无参构造方法中调用有参构造?
  19. 汉诺塔完整代码及分析
  20. XMU 1611 刘备闯三国之卖草鞋 【贪心】

热门文章

  1. shell设置输出信息的颜色
  2. 计算机组成每日一题 2020 July
  3. Latex——Word公式转换
  4. Spring循环依赖问题,循环依赖的情况,能解决的情况,怎么解决的
  5. 机器学习 Lasso回归算法
  6. Lumerical Suite 2015a windows_linux光学设计软件
  7. 推荐7个Python自动化办公免费学习资源~(数据分析、Python、VBA等)
  8. 视频点播开发—搭建服务器(一)
  9. 一段英文中找无重复单词及个数
  10. 简约大气研讨会讲座活动宣传视频PR幻灯片模板