hfss可以导入vbs语言建模
怎么生成建模的vbs文档?
1.在hfss中建模建一遍
导出建模的vbs,然后笔记本打开vbs,需要改的话直接改。
参考 https://blog.csdn.net/m0_56117494/article/details/128007860 一文
这个方法朴实无华
但是需要写vbs语言,很麻烦
2.matlab编写vbs
还是用vbs,只是在matlab里编辑,通过fprintf和fid 在vbs里加入语句
实际上还是写vbs,如果不知道对应的vbs是什么就完了
和自己在vbs里敲代码没啥区别
3.matlab-hfss-api
当成函数库就行,注意要添加路径才能调用
这里加入了很多简单的hfss开头的函数
嘎嘎好用
这个代码的本质还是写vbs,只不过matlab程序和vbs的对应关系封装到这些函数里了
写完之后打开vbs可以看到生成了和前两种方式一样的vbs
tool→run script
就可以了
分享一个代码案例
close all;
clc;
addpath(genpath("D:\MATLAB\R2022a\MatlaHFSSApi")); %加入调用api的路径,很重要,不然会报错
false = 0;
true = 1;
tmpPrjFile = 'E:\NYM\2023.9 HWHUIGENGSI\HFSSVBS\test20230914\Conical_Horn.hfss';
tmpDataFile = 'E:\NYM\2023.9 HWHUIGENGSI\HFSSVBS\test20230914\tmpData.m';
tmpScriptFile = 'E:\NYM\2023.9 HWHUIGENGSI\HFSSVBS\test20230914\Conical_Horn.vbs';
% HFSS Executable Path.
hfssExePath = '"C:\Program Files\AnsysEM\HFSS15.0\Win64\hfss.exe"';
fid = fopen('E:\NYM\2023.9 HWHUIGENGSI\HFSSVBS\test20230914\Conical_Horn_18GHz.vbs', 'wt'); % 'wt'表示以文本模式打开文件,可写,覆盖原有内容
% 创建一个新的工程并插入一个新的设计
hfssNewProject(fid);
hfssInsertDesign(fid, 'Conical_Horn');
f = 18; %GHZ
hfssaddVar(fid,'f0',f,[])
f1 = 14;
f2 = 22;
lambda_in = '1in*300/f0 /25.4'; %英寸为单位的波长
Units = 'in';
Waveguide_R = 0.33;
Waveguide_L = 0.66;
Horn_R = 0.92;
Horn_L = 1.31;
Wall_T = 0.013;
hfssaddVar(fid,'lambda_in',lambda_in,[])
hfssaddVar(fid,'Waveguide_R',Waveguide_R,Units)
hfssaddVar(fid,'Waveguide_L',Waveguide_L,Units)
hfssaddVar(fid,'Horn_R',Horn_R,Units)
hfssaddVar(fid,'Horn_L',Horn_L,Units)
hfssaddVar(fid,'Wall_T',Wall_T,Units)
Name_1 = 'Waveguide_in';
Center = [0 0 0];
Axis = 'Z';
Radius = 'Waveguide_R';
Height = 'Waveguide_L';
hfssCylinder(fid, Name_1, Axis, Center, Radius, Height, Units)
Name_2 = 'Waveguide';
Radius = 'Waveguide_R + Wall_T';
hfssCylinder(fid, Name_2, Axis, Center, Radius, Height, Units)
hfssSubtract(fid, Name_2, Name_1)
fclose(fid);
disp('Sctrip Completed')
clear all;
无敌大佬的教程
链接:https://pan.baidu.com/s/10vQa89RNsaMd4SP36UTYjg?pwd=f9zt
提取码:f9zt