0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

HFSS-API常用的基本形狀和布爾操作函數(shù)

ExMh_zhishexues ? 來源:微波射頻網(wǎng) ? 作者:94巨蟹座少年 ? 2021-08-27 15:38 ? 次閱讀

摘要:

上節(jié)HFSS-API入門第一彈:畫個(gè)Box主要是分享了調(diào)用改良hfssapi新建工程和設(shè)計(jì)文件并插入變量畫一個(gè)參數(shù)化的Box,本期推文將推送常用的基本形狀和布爾操作函數(shù)。歡迎小伙伴們閱讀、分享、再看,轉(zhuǎn)發(fā)給更多有需要的人!喜歡的小伙伴可贊賞下作者哦。

本文使用的軟件為MATLAB2019a和AnsysEM 18.2

0 1 簡單介紹

常規(guī)模型大家只需要用到畫方塊、柱子、矩形片、圓形,并對(duì)其進(jìn)行UniteSubtract之類的布爾操作即可。上次推文已經(jīng)介紹了hfssBox的函數(shù)用法,下節(jié)將先對(duì)hfssCylinder,hfssRectangle,hfssCircle進(jìn)行函數(shù)使用講解,然后介紹hfssUnite和hfssSubtract的加減操作函數(shù)。

拉到文末有下載改良后的hfssapi,建議收藏鏈接,后續(xù)新出的函數(shù)會(huì)不定期在該文件夾內(nèi)更新。文件也不大,幾百kB,每次有更新重新下載覆蓋即可。

先提醒下matlab打開有中文注釋代碼亂碼問題,按下圖所示將Editor的Font改為Monospaced即可。

對(duì)于設(shè)置Color,有的人想花里胡哨地配色的話,可以進(jìn)行RGB三色的顏色查詢:https://www.sojson.com/rgb.html。沒有絕對(duì)顏感的人不要輕易嘗試,否則配出來會(huì)是下圖這種樣子??赡苣阌X得很絢麗,但是真的很鄉(xiāng)村風(fēng)啊?。?!本人還是習(xí)慣用上次推文的三種配色,極簡最好。

0 2 函數(shù)使用教程

接下來先介紹三個(gè)建模常用的函數(shù):hfssCylinder,hfssRectangle,hfssCircle。

% hfssCylinder(fid, CylinderName, Axis, Center, Radius, Height, Units, Color, Material, Transparency, flag)% CylinderName:圓柱的名字;Axis:圓柱建模的中心軸向(‘X’,‘Y’或‘Z’,大小寫均可);Center:圓柱底面的圓心坐標(biāo);% Radius:圓柱底面的圓半徑;Height:圓柱的高度;Units:單位% Color:圓柱的顏色(RGB);Material:材料名字(不要隨便自己整個(gè)名字,必須是HFSS材料庫里的名字);% Transparency:顯示的透明度;flag:值為1時(shí)Center, Radius, Height只支持?jǐn)?shù)字,值為2時(shí)value支持元胞數(shù)組表達(dá)式% 實(shí)例:% 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:矩形片的起始基點(diǎn);% Width:矩形片的寬;Length:矩形片的長;Units:單位% Color:矩形片的顏色(RGB);% Transparency:顯示的透明度;% flag:值為1時(shí)Start, Width, Length只支持?jǐn)?shù)字,值為2時(shí)value支持元胞數(shù)組表達(dá)式% HFSS中的Rectangle只可設(shè)置邊界條件,不可設(shè)置材料屬性% 實(shí)例:% 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:圓形片的圓心坐標(biāo);% Radius:圓形片的半徑;Units:單位% Color:圓形片的顏色(RGB);% Transparency:顯示的透明度;% flag:值為1時(shí)Center, Radius只支持?jǐn)?shù)字,值為2時(shí)value支持元胞數(shù)組表達(dá)式% HFSS中的Circle只可設(shè)置邊界條件,不可設(shè)置材料屬性% 實(shí)例:% 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,當(dāng)坐標(biāo)軸分別選取‘X’,‘Y’或‘Z’時(shí),按下面代碼建立三個(gè)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)

逐個(gè)點(diǎn)擊這三個(gè)Rectangle,查看其屬性會(huì)發(fā)現(xiàn):若坐標(biāo)軸選‘X’,則‘Rec_W’,‘Rec_L’分別賦值給Ysize和Zsize;若坐標(biāo)軸選‘Y’,則‘Rec_W’,‘Rec_L’分別賦值給Zsize和Xsize;若坐標(biāo)軸選‘Z’,則‘Rec_W’,‘Rec_L’分別賦值給Xsize和Ysize;即按著‘X’,‘Y’,‘Z’順序進(jìn)行輪換式賦值。

在建模過程中,往往需要Unite和Subtract這兩種加減型的布爾操作,這時(shí)候hfssUnite和hfssSubtract函數(shù)就派上用場了。

% hfssUnite(fid, ObjectList)% ObjectList:待Unite的物體名字% 實(shí)例:% hfssUnite(fid, {‘Object1Name’, ‘Object2Name’, ‘Object3Name’});

% hfssSubtract(fid, BigParts, SmallParts, KeepOriginals)% BigParts:待減物品名字;SmallParts:被減的物體名字% KeepOriginals:為false時(shí)不保留被減物,為true時(shí)則保留被減物% 實(shí)例:% hfssSubtract(fid, {‘Object1Name’}, {‘Object2Name’}, false);

通過下面的視頻可以直觀感受下以上五個(gè)函數(shù)的建模作用,以及hfssSubtract的KeepOriginals為false和true時(shí)的差異:

上面視頻的兩段代碼文件在文末的鏈接內(nèi),按個(gè)人情況按圖索驥地修改tmpPrjFile,tmpScriptFile ,hfssExePath這幾個(gè)路徑和Design_name,將編寫的MATLAB生成vbs腳本的.m文件與下載的hfssapi-by-Jianhui Huang放在同一個(gè)總文件夾內(nèi),點(diǎn)擊運(yùn)行即可生成vbs腳本(在自行賦值的tmpScriptFile的這個(gè)路徑下)。vbs腳本可以直接點(diǎn)擊運(yùn)行,或者在HFSS軟件中Run Script。

基礎(chǔ)性地寫代碼編注釋還是挺費(fèi)時(shí)間和精力的,希望大家多點(diǎn)贊分享。

代碼分享區(qū)

hfssapi-by-Jianhui Huang

下載鏈接(后續(xù)代碼持續(xù)在下面鏈接更新):

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

提取碼:o5p5

代碼已封裝好打包為p文件不可修改,每次重新下載覆蓋,按函數(shù)注釋進(jìn)行掉包即可!

注釋事項(xiàng):MATLAB生成vbs腳本的.m文件與hfssapi-by-Jianhui Huang放在同一個(gè)總文件夾內(nèi)。不要再examples文件夾內(nèi)運(yùn)行.m文件!

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 文件
    +關(guān)注

    關(guān)注

    1

    文章

    556

    瀏覽量

    24642
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4262

    瀏覽量

    62237
  • hfss
    +關(guān)注

    關(guān)注

    32

    文章

    167

    瀏覽量

    50196

原文標(biāo)題:HFSS-API入門第二彈:基本形狀和操作

文章出處:【微信號(hào):zhishexueshuquan,微信公眾號(hào):知社學(xué)術(shù)圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    RTOS中鉤子函數(shù)的用途及用法

    在很多操作系統(tǒng)中,都存在這樣一類API函數(shù)接口:HOOK函數(shù)(也叫鉤子函數(shù))。
    的頭像 發(fā)表于 10-23 16:25 ?96次閱讀
    RTOS中鉤子<b class='flag-5'>函數(shù)</b>的用途及用法

    labview常用的基本函數(shù)

    電子發(fā)燒友網(wǎng)站提供《labview常用的基本函數(shù).pdf》資料免費(fèi)下載
    發(fā)表于 10-15 17:29 ?0次下載

    labview中常用的字符串函數(shù)有哪些?

    在LabVIEW中,常用的字符串函數(shù)廣泛覆蓋了對(duì)字符串的各種操作,包括但不限于格式化、搜索、替換、連接、計(jì)算長度等。以下是一些常用的字符串函數(shù)
    的頭像 發(fā)表于 09-04 15:43 ?303次閱讀

    簡述socket編程中的常用函數(shù)

    Socket編程是一種基于TCP/IP協(xié)議的網(wǎng)絡(luò)編程技術(shù),它允許應(yīng)用程序通過網(wǎng)絡(luò)進(jìn)行通信。在Socket編程中,有許多常用函數(shù),它們用于創(chuàng)建、配置、連接、發(fā)送和接收數(shù)據(jù)等操作。以下是對(duì)這些
    的頭像 發(fā)表于 08-16 10:49 ?218次閱讀

    tcpip_adapter_start_api 函數(shù)的功能是什么?

    , msg->mac, msg->ip_info); } 請(qǐng)問 1. tcpip_adapter_start_api函數(shù)的功能是什么??或者說tcpip_adapter_start中調(diào)用
    發(fā)表于 06-26 07:08

    MATLAB信號(hào)處理常用函數(shù)詳解

    MATLAB是一款功能強(qiáng)大的數(shù)學(xué)軟件,尤其在信號(hào)處理領(lǐng)域,它提供了眾多的函數(shù)和工具箱,使得信號(hào)的分析、處理、仿真變得簡單而高效。本文將詳細(xì)介紹MATLAB在信號(hào)處理中常用函數(shù),并通過具體示例來闡述其應(yīng)用。
    的頭像 發(fā)表于 05-17 14:31 ?1405次閱讀

    回調(diào)函數(shù)(callback)是什么?回調(diào)函數(shù)的實(shí)現(xiàn)方法

    回調(diào)函數(shù)是一種特殊的函數(shù),它作為參數(shù)傳遞給另一個(gè)函數(shù),并在被調(diào)用函數(shù)執(zhí)行完畢后被調(diào)用?;卣{(diào)函數(shù)常用
    發(fā)表于 03-12 11:46 ?2486次閱讀

    hfss怎么讓天線發(fā)生彎曲

    HFSS是一種電磁仿真軟件,用于設(shè)計(jì)和分析微波和無線電頻段的天線。在HFSS中,讓天線發(fā)生彎曲需要按照以下步驟進(jìn)行操作: 步驟1:打開HFSS軟件并新建一個(gè)項(xiàng)目。選擇“File”菜單中
    的頭像 發(fā)表于 12-15 09:21 ?2296次閱讀

    if函數(shù)多個(gè)條件怎么用

    在Excel中,如果我們需要根據(jù)多個(gè)條件來執(zhí)行不同的操作,我們可以使用IF函數(shù)的嵌套或邏輯運(yùn)算符來實(shí)現(xiàn)。 IF函數(shù)是一個(gè)常用的邏輯函數(shù),它用
    的頭像 發(fā)表于 12-03 10:35 ?2016次閱讀

    if函數(shù)的使用方法多個(gè)條件

    如果函數(shù)是Excel中常用的一個(gè)函數(shù),它可以根據(jù)一個(gè)或多個(gè)條件判斷來執(zhí)行相應(yīng)的操作。在本文中,我們將詳細(xì)介紹如何在Excel中使用如果函數(shù)
    的頭像 發(fā)表于 12-03 10:30 ?1037次閱讀

    sumif函數(shù)的使用技巧

    SUMIF函數(shù)是Excel中非常常用函數(shù)之一,它可以根據(jù)指定的條件對(duì)給定的范圍內(nèi)的數(shù)值進(jìn)行求和操作。在日常工作和數(shù)據(jù)處理中,我們經(jīng)常需要根據(jù)某些條件來統(tǒng)計(jì)和匯總數(shù)據(jù),SUMIF
    的頭像 發(fā)表于 11-30 16:30 ?1140次閱讀

    isnan函數(shù)的使用方法

    實(shí)際編程中的應(yīng)用。 isnan函數(shù)概述 isnan函數(shù)是一個(gè)布爾函數(shù),返回一個(gè)表示特定值是否為NaN(非數(shù)字)的布爾值。NaN表示非數(shù)字,其
    的頭像 發(fā)表于 11-30 16:24 ?2712次閱讀

    uC/OS-Ⅱ常用函數(shù)查詢

    電子發(fā)燒友網(wǎng)站提供《uC/OS-Ⅱ常用函數(shù)查詢.doc》資料免費(fèi)下載
    發(fā)表于 11-03 11:05 ?0次下載
    uC/OS-Ⅱ<b class='flag-5'>常用</b><b class='flag-5'>函數(shù)</b>查詢

    創(chuàng)造多樣信號(hào)的萬能工具:函數(shù)/任意波形發(fā)生器

    函數(shù)/任意波形發(fā)生器是現(xiàn)代電子測試和實(shí)驗(yàn)中常用的儀器之一,用于產(chǎn)生各種形狀和頻率的信號(hào)。
    的頭像 發(fā)表于 11-02 12:40 ?759次閱讀

    如何使用win32api實(shí)現(xiàn)自動(dòng)喚醒并截圖的操作

    利用Python自帶的win32api和win32con、win32gui等模塊,我們能執(zhí)行許多windows下的自動(dòng)化操作。比如兩個(gè)窗口的自動(dòng)點(diǎn)擊操作,從軟件中的窗口復(fù)制文本到txt中,甚至是截圖
    的頭像 發(fā)表于 10-30 11:13 ?838次閱讀
    如何使用win32<b class='flag-5'>api</b>實(shí)現(xiàn)自動(dòng)喚醒并截圖的<b class='flag-5'>操作</b>