• 用matlab在hfss中建模


    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;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44

    无敌大佬的教程
    链接:https://pan.baidu.com/s/10vQa89RNsaMd4SP36UTYjg?pwd=f9zt
    提取码:f9zt

  • 相关阅读:
    【Vue2.x源码系列06】计算属性computed原理
    【云原生】灰度发布、蓝绿发布、滚动发布、灰度发布解释
    如何制作一个卡刷扩容补丁。用于扩容系统等分区 刷写第三方需要扩容才可以刷写的系统或者GSI GSI系统bug修复【二】
    【Python脚本进阶】1.2、python脚本基础知识(下)
    Spring框架(三)Spring注解和获取Bean对象详解
    【Rust日报】2023-09-07 Tauri 2.0 路线图
    About Estimation Statistics
    4.HMM和CRF的使用和应用
    考研C语言复习进阶(2)
    Java使用Validator类进行实体属性格式验证(一次性返回所有验证结果)
  • 原文地址:https://blog.csdn.net/weixin_42882464/article/details/132876143