国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Excel真的可以調用HFSS?

iIeQ_mwrfnet ? 來源:微波射頻網 ? 作者:94巨蟹座少年 ? 2021-06-28 15:34 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

學個Antenna是以天線仿真和調試為主,理論原理為輔的干貨天線技術專欄,包括天線入門知識以及各類天線的原理簡介、仿真軟件建模、設計、調試過程及思路。如有想看到的內容或技術問題,可以在文尾寫下留言。

摘要:

學個Antenna:HFSS腳本建模入門一文,對HFSS腳本建模進行了入門級的介紹,不過要裝上日趨臃腫、動輒十幾G的MATLAB軟件。幸運的是,HFSS支持VBScript進行二次開發,因此在Excel中對HFSS進行調用不是夢!

本文使用的軟件為AnsysEM 18.2和Excel 2013

0 1Excel vba

Microsoft Visual Basic for application,簡稱為VBA,是Visual Basic的一種宏語言,是微軟開發出來在其桌面應用程序中執行通用的自動化(OLE)任務的編程語言。那這個和HFSS軟件有啥聯系么?

在HFSS軟件中順著Help文件找到HFSS Scripting(文末有HFSS官方HFSS Scripting Guide下載鏈接),打開該PDF,在Introduction to VBScript章節,我們可以獲得以下信息。

ANSYS Electronics Desktop uses theMicrosoft Visual Basic Scripting Edition (VBScript) scripting language to recordmacros. VBScript is based on theMicrosoft Visual Basic programming language

ANSYS Electronics Desktop 使用 Microsoft Visual Basic Scripting Edition (VBScript) 腳本語言來記錄宏。 VBScript 基于 Microsoft Visual Basic 編程語言

Using scripts is a fast, effective way to accomplish tasks you want to repeat.When you execute a script, the commands in the script are performed.

使用腳本是完成您想要重復的任務的一種快速、有效的方法。當您執行腳本時,腳本中的命令就會被執行。

You can write a script using any text editor or you can record a script fromwithin the ANSYS Electronics Desktop interface. After recording the script fromwithin ANSYS Electronics Desktop, you can thenmodify it if necessary using a text editor.

您可以使用任何文本編輯器編寫腳本,也可以從 ANSYS Electronics Desktop 界面中記錄腳本。 在 ANSYS Electronics Desktop 中記錄腳本后,如有必要,您可以使用文本編輯器對其進行修改。

由于Excel內置了VBA代碼編輯器,因此理論上可以用其進行調用HFSS進行建模。

新建一個excel文件,另存為.xlsm格式(擴展名xlsm在打開excel文件時,會自動執行宏代碼)。如下圖所示,即可打開VBA編輯器。

一個簡單的測試代碼如下:

Sub Hello() Dim bj As String bj = InputBox(“請輸入您的文本”, “請輸入”) MsgBox “確定按鈕被點擊”, vbOKOnlyEnd Sub

0 2Excel調用HFSS軟件

當上面的步驟都順暢無阻后,我們可以進入下一環節,即在Excel vba編輯器里面編寫代碼調用HFSS軟件。首先我們要打開HFSS軟件,并保證Project Manager下為空,防止后續出現報錯現象。

‘oAnsoftApp為VBScript提供了訪問Ansys.ElectronicsDesktop的句柄Set oAnsoftApp = CreateObject(“Ansoft.ElectronicsDesktop”)

’oDesktop用于執行桌面級操作,包括項目管理。Set oDesktop = oAnsoftApp.GetAppDesktop()

‘Project對象對應于產品中打開的一個項目。它用于操縱項目及其數據。 ’其數據包括變量、材料定義等。Set oProject = oDesktop.GetActiveProject()

‘oDesign對象對應于項目中已存在的一個設計實例。該對象用于操縱設計及其數據。’它的數據包括變量、模塊和編輯器。Set oDesign = oProject.GetActiveDesign()

‘oEditor 對象對應于已存在的一個編輯器,例如3D建模器、布局或原理圖編輯器。’該對象用于在編輯器中添加和修改數據。Set oEditor = oDesign.SetActiveEditor(“3D Modeler”)

‘oModule 對象對應設計中的一個模塊。Modules 用于處理一組相關功能。Set oModule = oDesign.GetModule(“BoundarySetup”)

當然,看完上面的內容可能會云里霧里,現在直觀地解釋下:

首先你要創建一個Ansoft.ElectronicsDesktop對象,并獲取oDesktop用于執行桌面級操作。這就是你手動打開HFSS軟件并獲得該軟件控制權的那一步

接著oProject和oDesign就是模擬你新建Project和Design,獲得其句柄

然后oEditor和oModule主要是獲取我們建模、設置邊界條件、求解器、建立報告等操作的句柄

紙上得來終覺淺,我們可以打開HFSS的腳本錄制功能,在錄制的代碼中來學習:

’ ----------------------------------------------‘ Script Recorded by ANSYS Electronics Desktop Version 2017.2.0’ ----------------------------------------------Dim oAnsoftAppDim oDesktopDim oProjectDim oDesignDim oEditorDim oModuleSet oAnsoftApp = CreateObject(“Ansoft.ElectronicsDesktop”)Set oDesktop = oAnsoftApp.GetAppDesktop()oDesktop.RestoreWindowSet oProject = oDesktop.NewProjectoProject.InsertDesign “HFSS”, “HFSSDesign1”, “DrivenModal”, “”

從上面的代碼中,我們可以很直觀地感受到:先進行oAnsoftApp,oDesktop,oProject,oDesign,oEditor,oModule五要素的變量定義;接著對oAnsoftApp,oDesktop配置句柄;然后利用oProject.InsertDesign插入一個“HFSSDesign1”的設計文件。

剩下的oEditor,oModule我們可以根據上面的編程邏輯進行句柄的設置。

Set oDesign = oProject.SetActiveDesign(“HFSSDesign1”) Set oEditor = oDesign.SetActiveEditor(“3D Modeler”)

到此為止,我們就將調用HFSS需要的句柄全部掌握在手里了,后續在Excel中調用HFSS軟件指日可待。

在官方HFSS Scripting Guide的P51:Sample HFSS Script里有一段比較詳細的英文教程,建議大家先觀摩下。

0 3簡單實例演示

以上內容都讀懂后,剩下的就是自己錄制腳本,分析代碼,學習修改代碼,封裝成function進行調用。

這里給出本人部署好的一段代碼,可直接粘貼到Excel vba編輯器進行復現:

Sub Training1() Dim oAnsoftApp Dim oDesktop Dim oProject Dim oDesign Dim oEditor Dim oModule

Dim sub1_H, sub1_W, sub1_L sub1_H = 0.254: sub1_W = 20

Set oAnsoftApp = CreateObject(“Ansoft.ElectronicsDesktop”) Set oDesktop = oAnsoftApp.GetAppDesktop() Set oProject = oDesktop.NewProject oProject.InsertDesign “HFSS”, “Test”, “DrivenModal”, “” Set oDesign = oProject.SetActiveDesign(“Test”) Set oEditor = oDesign.SetActiveEditor(“3D Modeler”)

‘Variable Define InsertVariable oDesign, “sub1_H”, CStr(sub1_H), “mm” InsertVariable oDesign, “sub1_W”, CStr(sub1_W), “mm” InsertVariable oDesign, “sub1_L”, “2 * sub1_W”, “”

’Create the Substrate CreateBox oEditor, “Sub1”, Array(“-sub1_W/2”, “0mm”, “0mm”), _ Array(“sub1_W”, “sub1_L”, “-sub1_H”), “vacuum”End Sub

Function InsertVariable(oDesign, Name, value, Unit) oDesign.ChangeProperty _ Array(“NAME:AllTabs”, _ Array(“NAME:LocalVariableTab”, _ Array(“NAME:PropServers”, _ “LocalVariables”), _ Array(“NAME:NewProps”, _ Array(“NAME:” + Name, _ “PropType:=”, “VariableProp”, “UserDef:=”, True, _ “Value:=”, value + Unit))))End Function‘模型建立部分Function CreateBox(oEditor, Boxname, S1, D1, material) oEditor.CreateBox Array(“NAME:BoxParameters”, “XPosition:=”, S1(0), “YPosition:=”, _ S1(1), “ZPosition:=”, S1(2), “XSize:=”, D1(0), “YSize:=”, D1(1), “ZSize:=”, _ D1(2)), Array(“NAME:Attributes”, “Name:=”, Boxname, “Flags:=”, “”, “Color:=”, _ “(34 139 34)”, “Transparency:=”, 0, “PartCoordinateSystem:=”, “Global”, “UDMId:=”, _ “”, “MaterialValue:=”, “” & Chr(34) & material & Chr(34) & “”, “SurfaceMaterialValue:=”, _ “” & Chr(34) & “” & Chr(34) & “”, “SolveInside:=”, True, “IsMaterialEditable:=”, _ True, “UseMaterialAppearance:=”, False, “IsLightweight:=”, False)End Function

以上代碼的編寫還是要有一定vba編程的語法基礎,難點在于根據錄制的腳本代碼找規律,將其封裝為普適的Function,便于開發者自行調用。

編輯:jq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 微軟
    +關注

    關注

    4

    文章

    6741

    瀏覽量

    107860
  • VBA
    VBA
    +關注

    關注

    0

    文章

    20

    瀏覽量

    12237
  • 代碼
    +關注

    關注

    30

    文章

    4968

    瀏覽量

    73971
  • hfss
    +關注

    關注

    32

    文章

    168

    瀏覽量

    51745
  • 求解器
    +關注

    關注

    0

    文章

    85

    瀏覽量

    4938

原文標題:Excel也能調用HFSS?

文章出處:【微信號:mwrfnet,微信公眾號:微波射頻網】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    【「玩轉高速電路:基于ANSYS HFSS的無源仿真實例」閱讀體驗】+基礎篇

    ANSYS HFSS是一種高速電路的仿真軟件,說實話,以前沒使用過,正好趁此機會來學習下。 首先來看看高速信號的基礎知識。 一、信號完整性 信號完整性是研究信號在傳輸路徑中如何保持原始特性的能力,以
    發表于 01-16 13:12

    勤哲Excel服務器:移動辦公的革新利器,顯著提升企業協作效率

    隨著手機、平板等移動設備的普及,眾多企業開始逐步進入移動辦公時代——在任何時間、任何地點,都可以高效處理工作,完全打破傳統固定辦公地點束縛,讓工作更自由、協作更無界。 作為全球Excel服務器品類
    的頭像 發表于 12-16 15:58 ?442次閱讀

    HFSS仿真鈮酸鋰電光調制器T型電極損耗較大

    HFSS仿真鈮酸鋰電光調制器T型電極時,盡管電極設為了完美電導體,介質的介質損耗角正切設為0,dB(S21)仍然有比較大的損耗,導致用ABCD矩陣計算時損耗較大,這是什么原因引起的,如何解決?
    發表于 12-16 14:36

    Jumia API 調用:覆蓋非洲市場的實操指南

    一、調用前的四大核心準備(適配 Jumia 地區特性)? Jumia API 的調用準備需圍繞 “地區差異化” 展開,這是區別于其他電商 API 的關鍵前提。? 1. 開發者賬號與 API Key
    的頭像 發表于 11-25 17:12 ?739次閱讀

    控制流和函數調用的精細調整

    循環條件也能提升效率。將循環條件中的復雜計算提前到循環前進行計算,然后用結果作為循環條件,可以減少每次迭代的計算量。 條件判斷的順序也對性能有影響。將最有可能為真的條件放在前面,可以利用邏輯操作的短路
    發表于 11-14 06:32

    【書籍評測活動NO.66】玩轉高速電路:基于ANSYS HFSS的無源仿真實例

    了仿真參數設置對仿真結果的影響。讀者可以再熟悉HFSS操作的同時體會無源仿真的思路,為自己設計高速電路打下基礎。 《玩轉高速電路:基于ANSYS HFSS的無源仿真實例》適合對高速電路
    發表于 11-06 14:19

    深入了解系統調用API:探索操作系統底層的關鍵接口

    ,也無法使用內核函數。當用戶進程必須訪問內核或使用某個內核函數時,就得使用系統調用(System Call)。在Linux中,系統調用是用戶空間訪問內核空間的唯一途徑。 什么是系統調用? 答:系統
    的頭像 發表于 11-03 09:20 ?702次閱讀

    Python調用API教程

    使用Requests庫實現。該庫可以輕松地發送HTTP請求并接收響應結果。以下是一個使用Requests庫調用API的示例代碼: import requests ur
    的頭像 發表于 11-03 09:15 ?886次閱讀

    鴻蒙是否存在可以調用中斷的API。

    當前想要測試一下高精度定時器中斷響應時間,沒有找到相關的API,或者是否存在API可以調用其他中斷?
    發表于 11-01 11:13

    EXCEL導入—設計與思考

    EXCEL導入—設計與思考 一、案例信息與設計 1.1、案例需求與背景 B2BTC同城二期有一個Excel導入的功能,單次數據量小于一千,使用頻次不高。但涉及到多個字段組成唯一約束,即每條數據操作
    的頭像 發表于 08-20 16:56 ?638次閱讀
    <b class='flag-5'>EXCEL</b>導入—設計與思考

    干擾可以提高測量精度,是真的嗎?

    一、前言 水可以引燃蠟燭,是真的嗎?是真的! 蛇怕雄黃,是真的嗎?是假的! 上述兩個現象,已經由央視 財經頻道《是真的嗎?》揭秘。 今天要探
    的頭像 發表于 08-04 09:28 ?703次閱讀
    干擾<b class='flag-5'>可以</b>提高測量精度,是<b class='flag-5'>真的</b>嗎?

    樹莓派用戶必備的五大微軟Excel替代軟件!

    微軟Excel通常是處理XLS、XLSX或CSV等電子表格時首先考慮的工具。然而,由于它對ARM處理器和Linux操作系統缺乏原生支持,在樹莓派上使用微軟Excel頗具挑戰性。但這并不意味著沒有好
    的頭像 發表于 07-17 17:17 ?973次閱讀
    樹莓派用戶必備的五大微軟<b class='flag-5'>Excel</b>替代軟件!

    使用Word/Excel管理需求的10個痛點及解決方案Perforce ALM

    還在用Word/Excel做需求管理?10個“翻車信號”,都是小伙伴們踩過的坑~來看看你踩過哪些?是不是也該升級到更專業的ALM工具了~
    的頭像 發表于 07-10 15:59 ?666次閱讀
    使用Word/<b class='flag-5'>Excel</b>管理需求的10個痛點及解決方案Perforce ALM

    如何導出Excel文件 -- excel_hm介紹 ##三方SDK##

    前陣子在和朋友討論,記賬類的app已經那么普遍了,如果想要做點不一樣的還能加什么功能。從我自己的角度出發,我覺得完全可以加一個導出Excel嘛。但是目前原生鴻蒙并沒有導出Excel的方法,常規的做法
    發表于 06-30 17:57

    求助,做一個波形圖顯示控件,要求調用excel表里面存的時間作為波形圖的x值。

    我在做畢設的時候,要讀取excel表格里面的數值,然后做到最后一步就是調用excel表里面的時間,把那個時間作為X軸的值。 現在就是能夠索引并讀取出來了,但是每次索引后,波形圖就不顯示上一個
    發表于 05-16 22:16