0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

HFSS-API常用的基本形状和布尔操作函数

ExMh_zhishexues 来源:微波射频网 作者:94巨蟹座少年 2021-08-27 15:38 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

摘要:

上节HFSS-API入门第一弹:画个Box主要是分享了调用改良hfssapi新建工程和设计文件并插入变量画一个参数化的Box,本期推文将推送常用的基本形状和布尔操作函数。欢迎小伙伴们阅读、分享、再看,转发给更多有需要的人!喜欢的小伙伴可赞赏下作者哦。

本文使用的软件为MATLAB2019a和AnsysEM 18.2

0 1 简单介绍

常规模型大家只需要用到画方块、柱子、矩形片、圆形,并对其进行UniteSubtract之类的布尔操作即可。上次推文已经介绍了hfssBox的函数用法,下节将先对hfssCylinder,hfssRectangle,hfssCircle进行函数使用讲解,然后介绍hfssUnite和hfssSubtract的加减操作函数。

拉到文末有下载改良后的hfssapi,建议收藏链接,后续新出的函数会不定期在该文件夹内更新。文件也不大,几百kB,每次有更新重新下载覆盖即可。

先提醒下matlab打开有中文注释代码乱码问题,按下图所示将Editor的Font改为Monospaced即可。

对于设置Color,有的人想花里胡哨地配色的话,可以进行RGB三色的颜色查询:https://www.sojson.com/rgb.html。没有绝对颜感的人不要轻易尝试,否则配出来会是下图这种样子。可能你觉得很绚丽,但是真的很乡村风啊!!!本人还是习惯用上次推文的三种配色,极简最好。

0 2 函数使用教程

接下来先介绍三个建模常用的函数:hfssCylinder,hfssRectangle,hfssCircle。

% hfssCylinder(fid, CylinderName, Axis, Center, Radius, Height, Units, Color, Material, Transparency, flag)% CylinderName:圆柱的名字;Axis:圆柱建模的中心轴向(‘X’,‘Y’或‘Z’,大小写均可);Center:圆柱底面的圆心坐标;% Radius:圆柱底面的圆半径;Height:圆柱的高度;Units:单位% Color:圆柱的颜色(RGB);Material:材料名字(不要随便自己整个名字,必须是HFSS材料库里的名字);% Transparency:显示的透明度;flag:值为1时Center, Radius, Height只支持数字,值为2时value支持元胞数组表达式% 实例:% hfssCylinder(fid, ‘Cy1’, ‘Z’, {‘Cy_dx’, ‘Cy_dy’, ‘Cy_dz’}, ‘Cy_R’,‘Cy_H’, ‘mm’,...% “(132 132 193)”, “FR4_epoxy”, 0, 2);% hfssCylinder(fid, ‘Cy1’, ‘Z’, [0,0,0], 0.5,2, ‘mm’,...% “(132 132 193)”, “FR4_epoxy”, 0, 1);

% hfssRectangle(fid, RectangleName, Axis, Start, Width, Length, Units, Color, Transparency,flag)% RectangleName:矩形片的名字;Axis:矩形片的法向轴向(‘X’,‘Y’或‘Z’,大小写均可);% Start:矩形片的起始基点;% Width:矩形片的宽;Length:矩形片的长;Units:单位% Color:矩形片的颜色(RGB);% Transparency:显示的透明度;% flag:值为1时Start, Width, Length只支持数字,值为2时value支持元胞数组表达式% HFSS中的Rectangle只可设置边界条件,不可设置材料属性% 实例:% hfssRectangle(fid, ‘Rec1’, ‘Z’, {‘Rec_dx’, ‘Rec_dy’, ‘Rec_dz’}, ‘Rec_W’,‘Rec_L’, ‘mm’,...% “(132 132 193)”, 0, 2);% hfssRectangle(fid, ‘Rec1’, ‘Z’, [0,0,0], 1, 2, ‘mm’,...% “(132 132 193)”, 0, 1);

% hfssCircle(fid, CircleName, Axis, Center, Radius, Units, Color, Transparency,flag)% CircleName:圆形片的名字;Axis:圆形片的法向轴向(‘X’,‘Y’或‘Z’,大小写均可);Center:圆形片的圆心坐标;% Radius:圆形片的半径;Units:单位% Color:圆形片的颜色(RGB);% Transparency:显示的透明度;% flag:值为1时Center, Radius只支持数字,值为2时value支持元胞数组表达式% HFSS中的Circle只可设置边界条件,不可设置材料属性% 实例:% hfssCircle(fid, ‘Cir1’, ‘Z’,{‘Cir_dx’, ‘Cir_dy’, ‘Cir_dz’}, ‘Cir_R’, ‘mm’,...% “(128 128 128)”, 0, 2)% hfssCircle(fid, ‘Cir1’, ‘Z’,[0,0,0], 1, ‘mm’,...% “(128 128 128)”, 0, 1)

需要注意上面的hfssRectangle,当坐标轴分别选取‘X’,‘Y’或‘Z’时,按下面代码建立三个Rectangle模型。

hfssRectangle(fid, ‘Rec1’, ‘X’, {‘Rec_dx’, ‘Rec_dy’, ‘Rec_dz’}, ‘Rec_W’,‘Rec_L’, ‘mm’,...“(255 128 0)”, 0, 2);hfssRectangle(fid, ‘Rec2’, ‘Y’, {‘Rec_dx’, ‘Rec_dy’, ‘Rec_dz’}, ‘Rec_W’,‘Rec_L’, ‘mm’,...“(255 128 0)”, 0, 2);hfssRectangle(fid, ‘Rec3’, ‘Z’, {‘Rec_dx’, ‘Rec_dy’, ‘Rec_dz’}, ‘Rec_W’,‘Rec_L’, ‘mm’,...“(255 128 0)”, 0, 2)

逐个点击这三个Rectangle,查看其属性会发现:若坐标轴选‘X’,则‘Rec_W’,‘Rec_L’分别赋值给Ysize和Zsize;若坐标轴选‘Y’,则‘Rec_W’,‘Rec_L’分别赋值给Zsize和Xsize;若坐标轴选‘Z’,则‘Rec_W’,‘Rec_L’分别赋值给Xsize和Ysize;即按着‘X’,‘Y’,‘Z’顺序进行轮换式赋值。

在建模过程中,往往需要Unite和Subtract这两种加减型的布尔操作,这时候hfssUnite和hfssSubtract函数就派上用场了。

% hfssUnite(fid, ObjectList)% ObjectList:待Unite的物体名字% 实例:% hfssUnite(fid, {‘Object1Name’, ‘Object2Name’, ‘Object3Name’});

% hfssSubtract(fid, BigParts, SmallParts, KeepOriginals)% BigParts:待减物品名字;SmallParts:被减的物体名字% KeepOriginals:为false时不保留被减物,为true时则保留被减物% 实例:% hfssSubtract(fid, {‘Object1Name’}, {‘Object2Name’}, false);

通过下面的视频可以直观感受下以上五个函数的建模作用,以及hfssSubtract的KeepOriginals为false和true时的差异:

上面视频的两段代码文件在文末的链接内,按个人情况按图索骥地修改tmpPrjFile,tmpScriptFile ,hfssExePath这几个路径和Design_name,将编写的MATLAB生成vbs脚本的.m文件与下载的hfssapi-by-Jianhui Huang放在同一个总文件夹内,点击运行即可生成vbs脚本(在自行赋值的tmpScriptFile的这个路径下)。vbs脚本可以直接点击运行,或者在HFSS软件中Run Script。

基础性地写代码编注释还是挺费时间和精力的,希望大家多点赞分享。

代码分享区

hfssapi-by-Jianhui Huang

下载链接(后续代码持续在下面链接更新):

https://pan.baidu.com/s/1N0EE3Uv7krkypfzi9vxCvg

提取码:o5p5

代码已封装好打包为p文件不可修改,每次重新下载覆盖,按函数注释进行掉包即可!

注释事项:MATLAB生成vbs脚本的.m文件与hfssapi-by-Jianhui Huang放在同一个总文件夹内。不要再examples文件夹内运行.m文件!

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 文件
    +关注

    关注

    1

    文章

    587

    浏览量

    25917
  • 函数
    +关注

    关注

    3

    文章

    4406

    浏览量

    66838
  • hfss
    +关注

    关注

    32

    文章

    168

    浏览量

    51496

原文标题:HFSS-API入门第二弹:基本形状和操作

文章出处:【微信号:zhishexueshuquan,微信公众号:知社学术圈】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    系统调用和API有什么区别呢?

    一个很棒的功能模块,恰好我也想使用这个模块,但我又懒的去看你的代码,我只想使用你的代码,不像去关心实现细节,你想了想把所有的功能封装在了几个函数上,这几个函数就是这个功能模块对外提供的API。 现在
    发表于 12-03 06:52

    爱回收平台根据关键词获取品牌ID的API接口详解

    ​  爱回收平台(Aihuishou)是一个专注于二手电子产品回收的服务平台,提供了丰富的API接口以支持开发者集成其功能。其中,“根据关键词获取品牌ID”的API是一个常用接口,允许用户输入品
    的头像 发表于 11-19 14:42 177次阅读
    爱回收平台根据关键词获取品牌ID的<b class='flag-5'>API</b>接口详解

    教你如何使用API

    方法:常用的HTTP请求方法有GET、POST、PUT、DELETE等,不同的请求方法对应不同的操作API的URL:
    的头像 发表于 11-09 17:48 1033次阅读

    【书籍评测活动NO.66】玩转高速电路:基于ANSYS HFSS的无源仿真实例

    高速电路:基于ANSYS HFSS的无源仿真实例》主要介绍使用HFSS进行无源仿真的方法,使读者了解高速电路中无源仿真的过程及信号完整性的基础知识。本书内容涉及信号完整性基础知识、HFSS的基础
    发表于 11-06 14:19

    教你如何使用API接口获取数据!

    方法:常用的HTTP请求方法有GET、POST、PUT、DELETE等,不同的请求方法对应不同的操作API的URL:
    的头像 发表于 11-03 09:14 334次阅读

    电商API是什么?常用的电商API有哪些?发挥着怎样的作用?

    ​  在当今数字化时代,电子商务(电商)已成为商业的核心组成部分。为了提升效率、实现系统集成和自动化,电商API(Application Programming Interface)扮演着关键
    的头像 发表于 10-28 16:35 414次阅读
    电商<b class='flag-5'>API</b>是什么?<b class='flag-5'>常用</b>的电商<b class='flag-5'>API</b>有哪些?发挥着怎样的作用?

    产品添加与上架API接口设计指南

    ​ 在现代电商或库存管理系统中,产品添加与上架是关键流程。通过API接口实现自动化操作,能显著提升效率。本文将分步解析如何设计和使用“产品添加”与“产品上架”API接口,确保结构清晰、安全可靠。我们
    的头像 发表于 07-24 14:45 438次阅读
    产品添加与上架<b class='flag-5'>API</b>接口设计指南

    API让电商“飞”起来,告别手动操作

    ,让您轻松告别繁琐的手动操作。本文将一步步解析如何利用API实现电商流程的自动化,帮助您的业务“飞”起来。我们将从基础概念入手,逐步展示实际应用,并提供一个简单的代码示例,确保您能快速上手。 什么是API及其在电商中的
    的头像 发表于 07-16 10:31 288次阅读
    <b class='flag-5'>API</b>让电商“飞”起来,告别手动<b class='flag-5'>操作</b>

    布尔运算笔记

    电子发烧友网站提供《布尔运算笔记.docx》资料免费下载
    发表于 06-23 14:55 1次下载

    MSP430常用内联函数说明

    电子发烧友网站提供《MSP430常用内联函数说明.docx》资料免费下载
    发表于 06-05 17:20 0次下载

    迅为RK3568开发板驱动指南GPIO子系统GPIO子系统API函数的引入

    迅为RK3568开发板驱动指南GPIO子系统GPIO子系统API函数的引入
    的头像 发表于 05-29 14:05 833次阅读
    迅为RK3568开发板驱动指南GPIO子系统GPIO子系统<b class='flag-5'>API</b><b class='flag-5'>函数</b>的引入

    如何找到DLP4500的API函数库和说明手册?

    您好,我买了一块DLP4500,我是想采用C#编程,想通过调用API函数来重建点云。(C#如何调用API我会) 我看了很多资料,都是一些C++的例子,都没有理出头绪,麻烦指点一下。 重建点云,可以直接调用的
    发表于 03-03 06:18

    HFSS 自动化建模工具

    因工作需求,自己写的HFSS参数自动化建模工具,目前只实现了常用的四种模型,可定制化,如需可联系 qq:1300038043 附件下载链接:https://pan.baidu.com/s/1TVeTTFiJw-pxSyT1AT8IQA 提取码: kxup
    发表于 02-27 17:44

    Linux ip命令常用操作

    Linux ip命令常用操作 在Linux系统中,ip命令是用于管理网络接口和路由的强大工具。相比于旧的 ifconfig命令,ip命令提供了更多的功能和更细粒度的控制。本文将详细介绍 ip命令
    的头像 发表于 02-19 10:23 1072次阅读

    卡诺图与布尔代数的联系

    1. 布尔代数基础 布尔代数是由乔治·布尔(George Boole)在19世纪中叶创立的,它是一种数学逻辑的分支,用于处理二进制值(0和1)。布尔代数的基本运算包括AND(与)、OR
    的头像 发表于 01-14 17:15 1163次阅读