查看: 11055|回复: 16|关注: 0

[已答复] hfssapi工具箱调用hfss的问题

[复制链接]

新手

5 麦片

财富积分


050


1

主题

7

帖子

0

最佳答案
发表于 2013-6-28 19:57:25 | 显示全部楼层 |阅读模式
在hfssapi工具箱下,有hfssExecuteScript这个函数,其中它的代码如下
function hfssExecuteScript(hfssExePath, ScriptFile, iconMode, runAndExit)if (nargin < 2)
        error('Insufficient number of arguments !');
elseif (nargin < 3)
        iconMode = [];
    runAndExit = [];
end;
% default arguments.
if isempty(iconMode)
        iconMode = true;
end;
if isempty(runAndExit)
    runAndExit = true;
end;

% Setup Iconic Mode.
if (iconMode == true)
        iconStr = '/Iconic';
else
        iconStr = '';
end;

% Setup Run and Exit Mode.
if (runAndExit)
    runStr = '/RunScriptAndExit';
else
    runStr = '/RunScript';
end;

% Create the Command Path.
cmdHFSS = [hfssExePath, ' ', iconStr,' ', runStr,' ',...
           ScriptFile];

% Execute the Command.
disp(sprintf('    Running HFSS using %s ...\n', cmdHFSS));
[Status, Result] = system(cmdHFSS);
if (Status ~= 0)
        warning('HFSS Execution returned an error status !');
end;
里面有system执行函数,在调用时,一直无法正常执行,但若改成[Status, Result] = system(ScriptFile);这样只会执行一次hfss,无方法自己关闭,请问有什么方法解决么?或者可以编写一个可以关闭hfss的函数也可以。

新手

5 麦片

财富积分


050


1

主题

7

帖子

0

最佳答案
 楼主| 发表于 2013-6-28 21:05:18 | 显示全部楼层
求大神帮忙啊

新手

6 麦片

财富积分


050


1

主题

3

帖子

0

最佳答案
发表于 2013-10-24 15:55:48 | 显示全部楼层
你好,我也遇到了这个问题,请问你解决了吗?能帮我一下吗,谢谢

新手

6 麦片

财富积分


050


1

主题

3

帖子

0

最佳答案
发表于 2013-10-24 16:03:29 | 显示全部楼层
出现'HFSS Execution returned an error status 这个错误,还想问下tmpPrjFile = 'C:\temp\tmpDipole.hfss';
tmpDataFile = 'C:\temp\tmpData.m';
tmpScriptFile = 'C:\temp\dipole_example.vbs';;这几个临时文件是我先存好相应名称的文件,比如我在c盘建个temp文件夹,然后再在HFSS里建个tmpDipole.hfss',但里面不写内容,存到c盘temp文件夹下,是这样的吗?

新手

5 麦片

财富积分


050


0

主题

2

帖子

0

最佳答案
  • 关注者: 1
发表于 2014-2-28 21:03:44 | 显示全部楼层
sunmingyan 发表于 2013-10-24 16:03
出现'HFSS Execution returned an error status 这个错误,还想问下tmpPrjFile = 'C:\temp\tmpDipole.hfss' ...

我这几天也刚接触hfssapi工具箱,正在摸索这个程序,你的问题我觉得是这样的:
出现HFSS Execution returned an error status 这个错误是因为没有成功调用HFSS 需要再调一下程序
那几个文件不需要先建立 你只要在c盘下先建立一个temp文件夹就好了
dipole_example.vbs会自动生成,然后如果你成功调用了HFSS 接着tmpDipole.hfss就会自己生成
最后如果HFSS运行成功后会把结果保存到tmpData.m中
有不对的地方可以一起交流下^^

新手

5 麦片

财富积分


050


0

主题

2

帖子

0

最佳答案
  • 关注者: 1
发表于 2014-2-28 21:07:40 | 显示全部楼层
我也遇到了这个问题 后来发现是hfss.exe路径的问题
以前是这样的 D:\Program Files\Ansoft\HFSS10\hfss.exe
后来改成D:\Ansoft\HFSS10\hfss.exe这样的就好了
我在网上查了下 有人说d:\后面的文件名不能超过8个字符 可能是这个原因 你试试吧 如果还有什么问题可以在交流下 最近我也再研究这个^^

新手

11 麦片

财富积分


050


12

主题

21

帖子

0

最佳答案
发表于 2014-5-9 20:36:15 | 显示全部楼层
本帖最后由 914091855 于 2014-5-9 20:39 编辑
糖糖同学 发表于 2014-2-28 21:07
我也遇到了这个问题 后来发现是hfss.exe路径的问题
以前是这样的 D:\Program Files\Ansoft\HFSS10\hfss.exe ...

可以给个QQ吗?我现在在学这方面的知识,才刚刚开始,我QQ914091855

??? Undefined function or method 'hfssNewProject' for input arguments of type 'double'.

Error in ==> patch at 53
hfssNewProject(fid);
出现如此问题是怎么回事啊?部分程序代码如下:
% open a temporary script file.
tmpScriptFile= 'C:\Temp\tmpPatchs.hfss'
tmpScriptFile= 'C:\Temp\tmpPatchs.vbs';
fid = fopen(tmpScriptFile, 'wt');

%HFSS Executable Path
hfssExePath= 'D:\"Program Files"\Ansoft\HFSS13.0\hfss.exe';%%%************************************************
%'...'填写你的hfss安装程序路径,例如我的D:\"Program Files"\Ansoft\HFSS13.0\hfss.exe
addpath('D:\Program Files\MATLAB\R2010b\bin\boundary');%'...'中填你的程序包安装路径,例如我的D:\matlab7\work\hfssapi\boundary
addpath('D:\Program Files\MATLAB\R2010b\bin\3dmodeler');
addpath('D:\Program Files\MATLAB\R2010b\bin\analysis');
addpath('D:\Program Files\MATLAB\R2010b\bin\general');
% creat a new HFSS project.
hfssNewProject(fid);
hfssInsertDesign(fid,'Patchs');

新手

11 麦片

财富积分


050


12

主题

21

帖子

0

最佳答案
发表于 2014-5-27 10:55:47 | 显示全部楼层
我解决了

新手

5 麦片

财富积分


050


0

主题

2

帖子

0

最佳答案
发表于 2014-6-16 20:34:43 | 显示全部楼层
求问这个问题是怎么解决的?尝试了上面的办法,都没用!

新手

16 麦片

财富积分


050


6

主题

34

帖子

0

最佳答案
  • 关注者: 1
发表于 2015-7-3 15:46:06 | 显示全部楼层
sunmingyan 发表于 2013-10-24 16:03
出现'HFSS Execution returned an error status 这个错误,还想问下tmpPrjFile = 'C:\temp\tmpDipole.hfss' ...

请问这个问题你解决了吗
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

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