python 与HFSS联合仿真的教程讲解

 更新时间:2021年03月04日 10:26:50   作者:MNVCAT  
这篇文章主要介绍了python 与HFSS联合仿真的教程讲解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

看了很多其他人写的,python与HFSS联合仿真的博客,但说实话,都没有说到点子上。今天,给大家说说我的思路。

python与HFSS联合仿真,有3种思路。下边一一介绍。

第一种

在HFSS中,选择tools-->record script to file ,选择导出到py文件即可。HFSS就会将你接下来的操作,转换为代码。

而你以后使用的时候,只需要改一下参数就可以了。

需要注意的是,这个python不可以直接用python编译器运行的,因为ScripEnv库,是HFSS自己的库。

如果要仿真这个python文件,是在HFSS的tools-->run script。建议大家从新建文件录制,并且录制到最后的保存文件。(CSDN博客MNVCAT原创)录制之后,建议大家打开这个python文件,自己看一看。

有一个小小的问题,HFSS在脚本的开头自动生成的注释,有中文“月”存在,直接运行的话,会报类似于“/xe6”之类的错,大家手动删除汉字就行。(如果你细心,看下边的两个图,也会发现的)

第二种

就是当你百度“python加HFSS”时,会遇到的一个叫做“hycohanz”的库。

但是我在使用过程中,遇到了许多问题。这个库,它调用了imp,而imp在python3.4之后就已经被import代替,如果自己去修改“hycohanz”的源码,会很麻烦。

而如果使用pythono3.4以下的版本,要调用win32库,在加载win32库之后,也会遇到一个“missing _init_.py win32com.gen_py”,而这个gen.py根本不存在。无疾而终。

第三种

也是最简单的。就是使用python提供的软件接口+HFSS的录制功能。这个思路是看到知乎上的一篇文章启发的思路的。在这个思路里,要用到python提供的win32库,所以,

第一步,先pip install win32,将win32库安装。

第二步,使用HFSS的录制功能,将想要自动化完成的功能转化为代码,这步就是第一种思路。

第三步,给大家演示如下

这是原来的录制文件

这是修改之后的文件(各位不要直接把我的图复制粘贴走,我已经写到实验报告里了)

可以看出来,原理就是将win32与HFSS的接口,两两对上。

第四步,就是运行这个修改好的python文件了。

好了,python与HFSS联合仿真就是这样。

补充:hfss和python_天线仿真软件哪个好?例如HFSS?

就我目前的经验来说,我常用的三款电磁仿真软件是HFSS, CST和Feko。

先说结论:

没有哪款软件是最好的,找最符合自己应用需求的才是王道。

HFSS应该是最好用的天线仿真软件,尤其适用于电小尺寸天线和口径面积在2个波长以内的天线。CST适用于电尺寸稍大的天线,尤其是宽带天线,CST中集成的时域算法可以用对天线进行时域分析,宽带天线的时域分析是特别重要的一点。FEKO一般用来仿电大尺寸天线,尤其是发射面天线。

根据我个人的经验,分别介绍一下,希望对题主有帮助:

HFSS: HFSS基于FEM算法也就是有限元,是一种频域分析算法,常用于电小尺寸复杂结构天线的设计,尤其是谐振天线,比如我最近在设计植入在人体中的窄带天线,在HFSS中仿真设计很方便,很容易就找到谐振点,但是应用基于时域算法的CST,天线就很难找到谐振点。

CST: 个人认为CST的主要卖点就是他们独有的时域算法FIT,有限时域积分,可以用来算中型的电大尺寸天线,尤其是可以用来评估宽带天线的时域特性,分析宽带天线的发射接收波形。

FEKO: MOM和快算多极子起家,集成了PO、UTD等散射及绕射算法,最近加入了FDTD算法。主要拿来算大尺寸天线,尤其是反射面天线。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

相关文章

  • Java设计模式之组合模式(Composite模式)介绍

    Java设计模式之组合模式(Composite模式)介绍

    这篇文章主要介绍了Java设计模式之组合模式(Composite模式)介绍,Composite定义:将对象以树形结构组织起来,以达成“部分-整体” 的层次结构,使得客户端对单个对象和组合对象的使用具有一致性,需要的朋友可以参考下
    2015-03-03
  • Java中将UUID存储为Base64字符串的方法实现

    Java中将UUID存储为Base64字符串的方法实现

    使用Base64编码来对UUID存储在一些特定的场合被广泛的使用,本文主要介绍了Java中将UUID存储为Base64字符串的方法实现,具有一定的参考价值,感兴趣的可以了解一下
    2024-04-04
  • java爬虫之使用HttpClient模拟浏览器发送请求方法详解

    java爬虫之使用HttpClient模拟浏览器发送请求方法详解

    这篇文章主要介绍了java爬虫之使用HttpClient模拟浏览器发送请求方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • springboot配置文件绑定实现解析

    springboot配置文件绑定实现解析

    这篇文章主要介绍了springboot配置文件绑定实现解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-01-01
  • SpringBoot不读取bootstrap.yml/properties文件问题

    SpringBoot不读取bootstrap.yml/properties文件问题

    这篇文章主要介绍了SpringBoot不读取bootstrap.yml/properties文件问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • Springboot安全框架整合SpringSecurity实现方式

    Springboot安全框架整合SpringSecurity实现方式

    这篇文章主要介绍了Spring全家桶中Springboot安全框架整合SpringSecurity的实现方式,有需要的朋友可以借鉴参考下,希望可以有所帮助
    2021-09-09
  • 详解Spring Boot + Mybatis 实现动态数据源

    详解Spring Boot + Mybatis 实现动态数据源

    这篇文章主要介绍了Spring Boot + Mybatis 实现动态数据源,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • springboot2.0 @Slf4j log 彩色日志配置输出到文件

    springboot2.0 @Slf4j log 彩色日志配置输出到文件

    这篇文章主要介绍了springboot2.0 @Slf4j log日志配置输出到文件(彩色日志),解决方式是使用了springboot原生自带的一个log框架,结合实例代码给大家讲解的非常详细,需要的朋友可以参考下
    2023-08-08
  • MyBatisPlus的IService接口实现

    MyBatisPlus的IService接口实现

    MyBatisPlus是一个为MyBatis提供增强的工具,它通过IService接口简化了数据库的CRUD操作,IService接口封装了一系列常用的数据操作方法,本文就来介绍一下,感兴趣的可以了解一下
    2024-10-10
  • 在springboot中使用拦截器的步骤详解

    在springboot中使用拦截器的步骤详解

    拦截器Interceptor,是SpringMVC中的核心内容,在SpringBoot中使用Interceptor,同时采用全注解开发,这篇文章主要介绍了在springboot中使用拦截器的步骤,需要的朋友可以参考下
    2022-01-01

最新评论