在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

CST的VBA語言&MATLAB調用CST

射頻學堂 ? 來源:微波射頻網 ? 作者:微波射頻網 ? 2022-12-19 14:12 ? 次閱讀

摘要:

大家在科研和工作中,往往會遇到如何在CST中構建人工重復性高、建模步驟繁瑣的模型,以及多次導出仿真結果數據等問題。和HFSS的vbs腳本一樣,CST也自帶VBA腳本控制,并支持MATLAB調用。

0 1 CST的VBA語言

在CST主界面按F1即可打開官方自帶的Help文檔。

95a2c886-7f55-11ed-8abf-dac502259ad0.png

對于微波專業的學生和科研從業者,大部分情況下選用的是CST的MICROWAVE STUDIO (MWS)。因此,查看學習CST MWS VBA語法和對象即可滿足日常學習、工作需求。

963344f6-7f55-11ed-8abf-dac502259ad0.png

點擊Hom?e:Macros>Open VBA Macro Editor,即可打開CST自帶的VBA開發環境。

964a57f4-7f55-11ed-8abf-dac502259ad0.png 復制粘貼MsgBox行的代碼到VBA編輯器中,點擊967dc972-7f55-11ed-8abf-dac502259ad0.png即可彈出信息提示框。(全部復制可能會報錯!親測!)

'#Language "WWB-COM"


Option Explicit


Sub Main
  MsgBox("Hello World")
EndSub

96971ff8-7f55-11ed-8abf-dac502259ad0.png

對于初學者而言,若要熟練使用VBA開發環境對CST進行代碼式建模開發,還需要掌握兩方面知識:VBA語言的基本語法規則和CST的Objects調用規則。

前者可以在VBA開發環境下按F1鍵,調出Help文檔。

96c353d4-7f55-11ed-8abf-dac502259ad0.png

官方幫助文檔是學習VBA基本語法規則的一大利器,不需要從頭到尾都學一遍。可以秉承邊學邊用的方法,活學活用。不過學習常用的變量定義、數組、循環、判斷、字符等最基礎的知識是很有必要的。

96e99dbe-7f55-11ed-8abf-dac502259ad0.png

有了語法基礎后,就需要根據自己的學習工作需求,去VBA Objects下找自己需要對象的調用規則。例如下圖所示的Brick對象的一個構建。該對象有Reset、Name、Component、Material、Xrange、Yrange、Zrange、Create這么幾個方法。

9701d9f6-7f55-11ed-8abf-dac502259ad0.png 根據Help文檔的講解,我們在VBA開發環境中復制下面6-15行的代碼到Sub Main代碼塊內,點擊運行即可在CST中建立一個矩形實體。(全部復制可能會報錯!親測!)

'#Language "WWB-COM"


OptionExplicit


Sub Main
  With Brick
    .Reset
    .Name ("brick1")
    .Component ("component1")
    .Material ("PEC")
    .Xrange (0, 1)
    .Yrange (0, 3)
    .Zrange (0, 5)
    .Create
  End With
End Sub

不過這種建模方法有一個缺點:和HFSS的自動化建模只有vbs代碼一樣,建立的模型在CST的History List沒有記錄,喪失了CST建模的一大利器!

972e6566-7f55-11ed-8abf-dac502259ad0.png

好在可以打開CST官方Macro文件進行參考,比如自帶的Dipole Antenna這個mcs文件。經過對比,不難發現,只需要將前面的代碼變成字符串形式,通過AddToHistory即可將建模代碼添加至History List。

974afc30-7f55-11ed-8abf-dac502259ad0.png

依葫蘆畫瓢,Sub Main和End Sub之間的代碼替換如下,執行VBA命令后即可在History List下找到本次建模的詳細代碼:

Dim sCommand As String
  '@ define brick1
  sCommand = ""
  sCommand = sCommand + "With Brick " + vbLf
  sCommand = sCommand + "  .Reset" + vbLf
  sCommand = sCommand + "  .Name (""brick1"")" + vbLf
  sCommand = sCommand + "  .Component (""component1"")" + vbLf
  sCommand = sCommand + "  .Material (""PEC"")" + vbLf
  sCommand = sCommand + "  .Xrange (0, 1)" + vbLf
  sCommand = sCommand + "  .Yrange (0, 3)" + vbLf
  sCommand = sCommand + "  .Zrange (0, 5)" + vbLf
  sCommand = sCommand + "  .Create" + vbLf
  sCommand = sCommand + "End With" + vbLf
  MsgBox(sCommand)
  AddToHistory "define brick1", sCommand

976dcf1c-7f55-11ed-8abf-dac502259ad0.png

95830f50-7f55-11ed-8abf-dac502259ad0.png

0 2 MATLAB調用CST

MATLAB調用CST有兩種方法,一種是通過Shell語言的轉移字符!。

例如已經編寫好了待執行的vba腳本,文件類型命名為.bas(其他類型文件,比如.mcr,可能不會被識別)。然后按下面的語法結構,修改CST安裝路徑和bas文件路徑即可調用成功。這種方法和通過hfssapi包編寫好相應的vbs腳本文件,再用MATLAB調用HFSS執行vbs腳本命令類似。不過這種方法在嘗試調用高版本CST2022時,會因為采用了批處理(Batch)腳本調用而需要手動確認license的現象。

! "D:softwareCST2018CST DESIGN ENVIRONMENT.exe" -m E:test.bas

另一種方法則是通過matlab actxserver創建一個COM服務器,通過invoke調用COM對象或接口上的方法。

%如果裝了2個CST,不管怎么切換license,其只會創建最新安裝的cst對象!
cst = actxserver('CSTStudio.application');%創建CST應用對象
mws = invoke(cst, 'NewMWS');%調用MWS應用對象
app = invoke(mws, 'GetApplicationName');%獲取當前應用名稱
ver = invoke(mws, 'GetApplicationVersion');%獲取當前應用版本號
invoke(mws, 'FileNew');%新建一個CST文件
filename='D:CSTFileDipole_model.cst';
invoke(mws, 'SaveAs', filename,'True');
invoke(mws, 'Quit');
release(mws);
release(cst);

就通用性而言,第二種方法較優。網上也有很多關于這方面的代碼可供參考,個人可以根據需求將代碼進行封裝,便于后續的傳參調用。

實例展示

97a04424-7f55-11ed-8abf-dac502259ad0.jpg

審核編輯 :李倩

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

    關注

    188

    文章

    2998

    瀏覽量

    233267
  • CST
    CST
    +關注

    關注

    7

    文章

    65

    瀏覽量

    18128

原文標題:CST的VBA語言 & MATLAB調用CST

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

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    需求CST92F25開發資料

    您好,可以把 CST92F25的開發資料(數據手冊、用戶手冊、Pack包和例程等)發送到郵箱shrimphong@qq.com嗎?謝謝!
    發表于 05-16 14:47

    linux修改cst時區

    在 Linux 系統中,可以通過以下步驟將時區修改為 CST(中國標準時間,GMT+8 或稱 Asia/Shanghai): 方法 1:通過?timedatectl?命令修改(適用于大多數現代
    的頭像 發表于 02-12 10:27 ?563次閱讀

    G.726/G.711 CST算法用戶指南

    電子發燒友網站提供《G.726/G.711 CST算法用戶指南.pdf》資料免費下載
    發表于 12-21 09:46 ?0次下載
    G.726/G.711 <b class='flag-5'>CST</b>算法用戶指南

    帶您了解SIMULIA CST 電磁仿真軟件 2025新功能 微辰三維

    SIMULIA CST 2025新功能上線,帶您“零幀起手”電磁仿真.
    的頭像 發表于 12-19 22:13 ?1004次閱讀

    芯海科技CST92F30芯片成功適配OpenHarmony 3.0.1 LTS

    目前,CST92F30已在消費電子產品、智能穿戴、智能家居、工業物聯網等多個領域獲得了廣泛應用,并得到了市場的充分驗證。
    的頭像 發表于 12-17 17:34 ?823次閱讀
    芯海科技<b class='flag-5'>CST</b>92F30芯片成功適配OpenHarmony 3.0.1 LTS

    CST Studio Suite 2024 GPU加速計算指南》

    《GPU Computing Guide》是由Dassault Systèmes Deutschland GmbH發布的有關CST Studio Suite 2024的GPU計算指南。涵蓋GPU計算
    發表于 12-16 14:25

    昂科燒錄器支持支持Hynitron海櫟創的高性能自電容觸控芯片CST812T

    芯片燒錄行業領導者-昂科技術近日發布最新的燒錄軟件更新及新增支持的芯片型號列表,其中Hynitron海櫟創的高性能自電容觸控芯片CST812T已經被昂科的通用燒錄平臺AP8000所支持
    的頭像 發表于 11-13 14:35 ?537次閱讀
    昂科燒錄器支持支持Hynitron海櫟創的高性能自電容觸控芯片<b class='flag-5'>CST</b>812T

    TMS320C54CST引導加載程序技術參考

    電子發燒友網站提供《TMS320C54CST引導加載程序技術參考.pdf》資料免費下載
    發表于 10-18 11:14 ?0次下載
    TMS320C54<b class='flag-5'>CST</b>引導加載程序技術參考

    北美運營商AT&amp;amp;amp;T認證的費用受哪些因素影響

    申請北美運營商AT&amp;T認證的價格因多種因素而異,包括產品類型、認證范圍、測試難度等。一般來說,申請AT&amp;T認證的費用可能相對較高,因為AT&amp;T作為北美地區的主要電信運營商,其
    的頭像 發表于 10-16 17:10 ?565次閱讀
    北美運營商AT&<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;T認證的費用受哪些因素影響

    Molex推出Coeur CST 高電流連接系統的優勢有哪些?-赫聯電子

      Molex提供創新的Coeur CST高電流互連系統,具有獨特的新浮子設計,可調整不對齊的插針與插座之間的距離,方便PCB與PCB、PCB與母線棒,或母線棒與母線棒之間的接插,而在此過程中并無
    發表于 10-14 16:31

    onsemi LV/MV MOSFET 產品介紹 &amp;amp;amp; 行業應用

    01直播介紹直播時間2024/10/281430直播內容1.onsemiLV/MVMOSFET產品優勢&amp;市場地位。2.onsemiLV/MVMOSFETRoadmap。3.onsemiT10
    的頭像 發表于 10-13 08:06 ?822次閱讀
    onsemi LV/MV MOSFET 產品介紹 &<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>; 行業應用

    智能電子秤方案藍牙廣播芯片 CST92P15

    一、引言 在智能設備不斷普及的今天,智能電子秤作為健康管理和商業計量的重要工具,其性能和功能的提升備受關注。藍牙廣播芯片 CST92P15 以其卓越的技術特性,為智能電子秤方案帶來了顯著的優化和創新
    的頭像 發表于 08-16 17:00 ?593次閱讀

    TMS320C54CST DSP數據表

    電子發燒友網站提供《TMS320C54CST DSP數據表.pdf》資料免費下載
    發表于 08-02 09:52 ?0次下載
    TMS320C54<b class='flag-5'>CST</b> DSP數據表

    FS201資料(pcb &amp;amp; DEMO &amp;amp; 原理圖)

    電子發燒友網站提供《FS201資料(pcb &amp; DEMO &amp; 原理圖).zip》資料免費下載
    發表于 07-16 11:24 ?2次下載

    CST92F25-QFN32 SDK DOME

    你好,請發一份CST92F25-QFN32 SDK DOME程序,公司新產品由于體積小,準備在產品中集成藍牙部分; 郵箱dxbroot@163.com
    發表于 06-21 16:34
    主站蜘蛛池模板: 成人午夜小视频手机在线看 | 国内精品哆啪啪 | 一级美女片 | 色综合久久综合 | 欧美zoozzooz性欧美 | 欧美123区 | 午夜视频在线观看完整高清在线 | 欧美精品aaa久久久影院 | 免费在线色视频 | 狂野欧美性色xo影院 | 亚洲欧美色图 | 天天干视频网 | 在线久综合色手机在线播放 | 国产1024一区二区你懂的 | 久久精品影视 | 亚洲乱码一区二区三区在线观看 | 中文字幕一二三四区 | 五月天亚洲综合 | 日本暴力喉深到呕吐hd | 色狠狠狠色噜噜噜综合网 | 国产成人永久在线播放 | 日韩一级欧美一级一级国产 | 狠狠色综合久久婷婷 | 国产在线97色永久免费视频 | 四虎永久在线日韩精品观看 | 中文字幕一区二区在线观看 | 天天碰免费视频 | 天天干天天操天天摸 | 三级在线观看视频网站 | 成人午夜网址 | 九色综合伊人久久富二代 | 午夜国产精品理论片久久影院 | 婷婷深爱 | 国产美女激情视频 | 性久久久久久久久 | 四虎精品免费永久在线 | 成人欧美一区二区三区视频不卡 | 亚洲天堂三级 | 韩日精品 | 亚洲福利一区二区三区 | 99精品热女视频专线 |