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算法。主要拿来算大尺寸天线,尤其是反射面天线。

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

(0)

相关推荐

  • selenium+python自动化78-autoit参数化与批量上传功能的实现

    前言 前一篇autoit实现文件上传打包成.exe可执行文件后,每次只能传固定的那个图片,我们实际测试时候希望传不同的图片. 这样每次调用的时候,在命令行里面加一个文件路径的参数就行. 一.命令行参数 1.参数化传入的参数,可以通过autoit的命令行参数: myProg.exe param1 "This is a string parameter" 99 在脚本中,可用以下变量获取命令行参数: $CmdLine[0] ; = 3 $CmdLine[1] ; = param1 $Cmd

  • python 中 .py文件 转 .pyd文件的操作

    pyd文件生成 安装easycython库 pip install easycython test.py def test(): print("调用成功") main.py import test test.test() test.py文件重命名为:test.pyx 终端运行命令 easycython *.pyx 重命名pyd文件,删除:cp36-win_amd64. 运行代码,调用成功: python main.py 代码实现 import glob import os def ge

  • Python实现图片指定位置加图片水印(附Pyinstaller打包exe)

    (一)功能实现效果: 选择文件的效果: 标记预加水印的位置: (二)Python代码: # -*l- coding:utf-8 * import os, io, sys, re, time, json from pandas import array import matplotlib.backends.backend_tkagg import matplotlib matplotlib.use('TkAgg') import matplotlib.pyplot as plt #from mat

  • python 指定源路径来解决import问题的操作

    用python做大型工程时,经常会出现import问题.比如,当你import另一个py文件时,这个py不存在于你的运行路径下,便会报错. 大概有两种方法: 如果在terminal里,咱们可以通过sys.path.append来添加运行路径:如果在pycharm环境里,咱们可以右键Mark Directory as Sources Root. 举个栗子:vim head.py def add(a, b): return a + b vim run.py import head a = 3 b =

  • Python .py生成.pyd文件并打包.exe 的注意事项说明

    最近用python写了一个小程序,想发布出去让人试用又不想暴露源码,搜索了一下发现将py文件编译成pyd文件就能达到目的. 转换过程很简单,但是在调用pyd文件并且打包为单个exe文件的时候遇到一个坑,搞了一天才解决,在这里分享一下. 首先安装cython库 个人比较喜欢用清华的镜像库,速度快. pip install Cyphton -i https://pypi.tuna.tsinghua.edu.cn/simple 然后创建一个setup.py文件 写入以下内容: from distuti

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

    看了很多其他人写的,python与HFSS联合仿真的博客,但说实话,都没有说到点子上.今天,给大家说说我的思路. python与HFSS联合仿真,有3种思路.下边一一介绍. 第一种 在HFSS中,选择tools-->record script to file ,选择导出到py文件即可.HFSS就会将你接下来的操作,转换为代码. 而你以后使用的时候,只需要改一下参数就可以了. 需要注意的是,这个python不可以直接用python编译器运行的,因为ScripEnv库,是HFSS自己的库. 如果要仿

  • Python爬虫之urllib基础用法教程

    综述 本系列文档用于对Python爬虫技术进行简单的教程讲解,巩固自己技术知识的同时,万一一不小心又正好对你有用那就更好了. Python 版本是3.7.4 urllib库介绍 它是 Python 内置的HTTP请求库,也就是说我们不需要额外安装即可使用,它包含四个模块(主要对前三个模块进行学习): request : 它是最基本的 HTTP 请求模块,我们可以用它来模拟发送一请求,就像在浏览器里输入网址然后敲击回车一样,只需要给库方法传入 URL 还有额外的参数,就可以模拟实现这个过程了. e

  • python三大神器之fabric使用教程

    fabric 是一个python包 是一个基于ssh的部署工具包 通常用来对网站 微服务等等的批量部署 例如 我有5台线上服务器 可以通过一台对着5台分发,实现自动部署的目的. 简单介绍下 fabric的常用命令 常用命令 lcd(dir): 进入本机某目录 local(cmd): 本机上执行命令 cd(dir): 进入服务器某目录 run(cmd):服务器上执行命令 Fabric Fabric是一个python的远程执行shell的库,同时它也是一个命令行工具.它提供了丰富的同 SSH 交互的

  • Python和Anaconda和Pycharm安装教程图文详解

    Anaconda 是一个基于 Python 的数据处理和科学计算平台,它已经内置了许多非常有用的第三方库,装上Anaconda,就相当于把 Python 和一些如 Numpy.Pandas.Scrip.Matplotlib 等常用的库自动安装好了,使得安装比常规 Python 安装要容易.如果选择安装Python的话,那么还需要 pip install 一个一个安装各种库,安装起来比较痛苦,还需要考虑兼容性,非如此的话,就要去Python官网(https://www.python.org/dow

  • python读取文件指定行内容实例讲解

    python读取文件指定行内容 import linecache text=linecache.getline(r'C:\Users\Administrator\Desktop\SourceCodeofMongoRedis\chapter_5\generate_string.py',10) 第十行内容为# info = '''1000001 王小小''' 实例扩展: 本文实例讲述了Python3实现从文件中读取指定行的方法.分享给大家供大家参考.具体实现方法如下: ''' 遇到问题没人解答?小编

  • python之多种方式传递函数方法案例讲解

    这篇文章主要介绍了python进阶教程之函数参数的多种传递方法,包括关键字传递.默认值传递.包裹位置传递.包裹关键字混合传递等,需要的朋友可以参考下 我们已经接触过函数(function)的参数(arguments)传递.当时我们根据位置,传递对应的参数.我们将接触更多的参数传递方式. 回忆一下位置传递: def f(a,b,c): return a+b+c print(f(1,2,3)) 在调用f时,1,2,3根据位置分别传递给了a,b,c. 关键字传递 有些情况下,用位置传递会感觉比较死板.

  • Python正则表达式保姆式教学详细教程

    目录 一.re模块 1.导入re模块 2.findall()的语法: 二.正则表达式 1.普通字符 2.元字符 (二)正则的使用 1.编译正则 2.正则对象的使用方法 3.Match object 的操作方法 4.re模块的函数 正则作为处理字符串的一个实用工具,在Python中经常会用到,比如爬虫爬取数据时常用正则来检索字符串等等.正则表达式已经内嵌在Python中,通过导入re模块就可以使用,作为刚学Python的新手大多数都听说"正则"这个术语. 今天来给大家分享一份关于比较详细

  • Python学习之时间包使用教程详解

    目录 datetime 时间包 datetime 时间包的常用功能 时间对象转字符串 时间字符串转时间类型 时间格式符 time模块 认识时间戳 time 模块的常用方法 datetime 中生成时间戳的函数 datetime 时间戳转时间对象 datetime 时间包 认识 datetime 时间包: date:日期:time:时间:所以 datetime 就是 日期与时间的结合体 使用 datetime 我们就可以获取当前的时间与时间间隔 可以将时间对象转成时间字符串 也可以将字符串转成时间

  • Python处理EXCEL表格导入操作分步讲解

    目录 一.前期准备 二.编写代码基本思路 三.编写代码读取数据 四.结语 一.前期准备 此篇使用两种导入excel数据的方式,形式上有差别,但两者的根本方法实际上是一样的. 首先需要安装两个模块,一个是pandas,另一个是xlrd. 在顶部菜单栏中点击文件,再点击设置,然后在设置中找到以下界面,并点击“+”号. 然后会出现以下界面,在搜索框中分别搜索以上两个模块:pandas/xlrd. 选中搜索出来的模块,并点击左下角的的安装按钮,便可将模块安装到自己电脑中. 需要注意的是,xlrd的新版本

  • 基于python select.select模块通信的实例讲解

    要理解select.select模块其实主要就是要理解它的参数, 以及其三个返回值. select()方法接收并监控3个通信列表, 第一个是所有的输入的data,就是指外部发过来的数据,第2个是监控和接收所有要发出去的data(outgoing data),第3个监控错误信息在网上一直在找这个select.select的参数解释, 但实在是没有, 哎...自己硬着头皮分析了一下. readable, writable, exceptional = select.select(inputs, ou

随机推荐