微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微波和射频技术 > HFSS仿真学习交流 > 关于HFSS和MATLAB中dipole_example的问题

关于HFSS和MATLAB中dipole_example的问题

时间:10-02 整理:3721RD 点击:
我近期正在做用MATLAB调用和优化HFSS模型,在参考HFSSAPI中的dipole_example这个例子时遇到了几个问题,始终解决不了。在此希望各位高手能给指导一下,不胜感激。
我最开始运行此程序时,总报错,不能打开HFSS模型也倒不出tmpdata,只能写出模型的VBS文件。错误原因是 Warning:HFSS Execution returned an error status。我检查了各个函数,最后把hfssExecuteScript这个函数私自修改了一下,最后可以用了。这下模型可以打开,tmpdata也有了,但是在迭代第二次的时候HFSS出现了The libirary  dipole is in use,意思好像是说不能在一个HFSS里面建立同一名字的模型,随后我又修改了下主程序和相关的函数,让每一次迭代产生的HFSS 模型名称不同。但是VBS又报错。然后我就实在是找不到解决办法了,在此希望各位精通此程序的高手能帮帮我,谢谢啊。
我不知道问题究竟出在哪里?

在坛子里搜索相应的帖子,以前有过同样的问题

我搜索过啊。但是问题不一样。不能解决我的问题。

解决了吗?我学习这个的时候也遇到了,报错如下
The Initial Dipole Length is 1.00 meter ...
Running iteration #1 ...
Creating the Script File ...
Solving using HFSS ..
    Running HFSS using D:\Program Files\Ansoft\HFSS10\hfss.exe /Iconic /RunScriptAndExit dipole_example.vbs ...
Warning: HFSS Execution returned an error status !
> In hfssExecuteScript at 112
  In dipole_example at 100
? Error using ==> run
C:\temp\tmpData.m not found.
Error in ==> dipole_example at 103
    run(tmpDataFile);
? Error: File: dipole_example.m Line: 124 Column: 37
Unexpected MATLAB expression.
? Error: File: dipole_example.m Line: 124 Column: 37
Unexpected MATLAB expression.

The Initial Dipole Length is 1.00 meter ...
Running iteration #1 ...
Creating the Script File ...
Solving using HFSS ..
    Running HFSS using D:\"Program Files"\Ansoft\HFSS10\HFSS.exe /Iconic /RunScriptAndExit dipole_example.vbs ...
Warning: HFSS Execution returned an error status !
> In hfssExecuteScript at 112
  In dipole_example at 101
? Error using ==> run
C:\temp\examples\tmpData.m not found.
Error in ==> dipole_example at 105
    run (tmpDataFile);
改过之后报错如下,求助

单独运行脚本,自动在hfss中计算并保存*.m文件,但是优化的时候提示:
The Initial Dipole Length is 1.00 meter ...
Running iteration #1 ...
Creating the Script File ...
Solving using HFSS ..
    Running HFSS using D:\"Program Files"\Ansoft\HFSS9\hfss.exe /Iconic /RunScriptAndExit D:\matlab_hfss_tmp\dipole_example.vbs ...
Status =
     1
Result =
系统找不到指定的路径。
Warning: HFSS Execution returned an error status !
> In hfssExecuteScript at 112
  In dipole_example at 98
Solution Completed. Plotting Results for this Iteration ...
Simulated Resonance Frequency: 125.50 MHz
Required Accuracy is met !
Optimized Antenna Length is 1.00 meter.
函数
disp(sprintf('    Running HFSS using %s ...\n', cmdHFSS));
[Status, Result] = system(cmdHFSS);)%———这句有问题返回:系统找不到指定的路径。
if (Status = 0)
    warning('HFSS Execution returned an error status !');
end;

终于找到组织了,大家能留个联系方式么,彼此可以交流一下心得,576477430

好吧。我也遇到这个问题了,system函数的返回值status如果不是0的话,意味着程序执行过程中某个地方出问题了,具体是什么问题要参考后面的result。
我昨天测试的时候,还死活给我报错,hfss打不开,一打开就弹出一个runtime error的提示窗口,然后一点窗口hfss就自动关闭。
但是出乎意料的是今天,居然可以跑出来了,几乎和昨天一样的改动的情况下(我实在想不出来自己做了什么其他的改动),而且也没有出现第二次循环不能跑的问题,虽然system函数的返回参量status的值不是0(也就是意味着某个地方出问题了),但是tmpData.m里面有数据,而且程序可以一直运行,只是不知道运行的结果的正确性如何(目测应该可以接受)。
另外对于3楼的那个问题,比较明显的地方是你的hfss的路径有问题,hfssapi里面的脚本找不到你的hfss的执行文件,修改成你自己电脑上面的hfss的路径,应该可以用的。
PS,hfssapi的作者说过,在第一次运行程序的时候,把hfssExecuteScript.m这个函数里面的变量runAndExit先设置为false。

说错了,是5楼的那个问题

我刚才也出现你说的这个问题,我对照.m文件盒生成的Vbs文件看了半天,终于搞清楚我在设定SWEEP的时候,步长设定成为步数。就是这么一个小问题。导致了hfss无法打开,一直runtiome error。
我估计你应该也是程序哪里出现了问题,可以自己慢慢调试。
关于你PS说明的内容,其实大家可以去仔细看看matlab的help文件,查看hfssExecuteScript函数,变量runAndExit设置成true或者false是有不同的结果的,true是运行HFSS后计算出来结果输出到程序预设处,然后关闭HFSS,而设定成false则是运行HFSS后,得到结果后HFSS不关闭,可以方便看模型的结果和各种图。而之所以有这种说法应该也是为了让写程序的人员方便检查错误吧

我的warning也是一直存在啊,有没有高手过来解答一下啊

想请问小编,你的第一个问题是怎么解决的呢?
我最开始运行此程序时,总报错,不能打开HFSS模型也倒不出tmpdata,只能写出模型的VBS文件。错误原因是 Warning:HFSS Execution returned an error status。我检查了各个函数,最后把hfssExecuteScript这个函数私自修改了一下,最后可以用了。
您是怎么修改的呢?我的执行程序的路径是自己的hfss.exe的路径呀……
请多多赐教!

我已经把那个例子调通了,不用反复打开HFSS就可以

想问下大神,Iconic和RunScriptAndExit是MATLAB内部的两个库函数吗?
还有就是使用hfssExecuteScript函数,是不是MATLAB就可以自动开启关闭hfss软件,无需自己手动对hfss进行操作?刚开始接触这一块,还是新人,还望大神热心解答。感激不尽。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top