電磁場(chǎng)仿真軟件CST原版宏:Parameter Mesh的修改版
電磁場(chǎng)仿真軟件CST原版宏:Parameter Mesh的修改版(自動(dòng)更新參數(shù)取值)
作者:aaron8967 博客:http://aaron8967.blog.51cto.com
我在學(xué)習(xí)CST軟件的過(guò)程中,在本站里受到了很多熱心人的幫助,一直心存感激,
在這里把自己修改過(guò)的VBA宏程序分享給大家,希望可以幫助到那些正在使用CST軟件的朋友……
如果對(duì)我的這個(gè)程序有什么疑問(wèn),可以在我的博客里給我留言,
這個(gè)文章我也寫(xiě)在了自己的博客里,歡迎大家為我的博客增加人氣,謝謝……
說(shuō)明: 我在學(xué)習(xí)和使用CST軟件的過(guò)程中,首先建立了參數(shù)化的結(jié)構(gòu)模型,然后想通過(guò)改變結(jié)構(gòu)參數(shù)的取值,讓CST自動(dòng)對(duì)不同的結(jié)構(gòu)進(jìn)行仿真計(jì)算。但是CST自帶的宏程序無(wú)法完全滿足我要求的功能,于是自己就簡(jiǎn)單學(xué)習(xí)了一下VBA語(yǔ)言,然后修改了原版的VBA宏文件,基本實(shí)現(xiàn)了一些自定義的功能。最后,無(wú)論是CST軟件還是VBA編程,我現(xiàn)在只算是略懂皮毛,分享只為學(xué)習(xí)交流,所以不足之處還請(qǐng)諒解,歡迎批評(píng)指正。
原版宏:Wizard / Parameter + Mesh Study
源文件:見(jiàn)CST軟件菜單中Macros->Edit/Move/Delete VBA Macro ->Global Macro功能:首先選擇參數(shù)的個(gè)數(shù)和名稱,并設(shè)置相應(yīng)的起始值、步長(zhǎng)和結(jié)束值,然后宏程序會(huì)自動(dòng)掃描所有取值范圍內(nèi)的參數(shù)設(shè)置并仿真。
限制:如果用戶只是想仿真所有參數(shù)設(shè)置中的個(gè)別幾組設(shè)置或者有一些參數(shù)設(shè)置的組合會(huì)造成仿真無(wú)法進(jìn)行等問(wèn)題時(shí),原版宏顯然無(wú)法高效完成所有仿真目標(biāo)。
修改版:ParSweepV05
功能:采用TXT文本文件輸入?yún)?shù)設(shè)置的方法,實(shí)現(xiàn)只掃描用戶自定義的參數(shù)設(shè)置組合進(jìn)行仿真分析。
源文件:ParSweepV05.txt ParSweepV05說(shuō)明.txt
使用前提:
1. 用戶在使用CST軟件建立物理模型的過(guò)程中,至少建立了1個(gè)變量
2. 用戶需要將自己想要仿真的參數(shù)設(shè)置按照后文規(guī)定的格式寫(xiě)入TXT文件中
3. 以防萬(wàn)一,在使用本修改版宏之前,請(qǐng)備份原版仿真文件
使用方法:
一、將ParSweepV05源文件中的內(nèi)容導(dǎo)入到CST軟件中,并生成宏
二、將用戶設(shè)置的格式化參數(shù)文件(TXT文檔)放到仿真文件夾的根目錄下
三、運(yùn)行ParSweepV05進(jìn)行仿真
四、查看輸出結(jié)果及日志文件
詳細(xì)操作步驟:
一、導(dǎo)入宏文件
1. 打開(kāi)下載的源文件ParSweepV05.txt,將其中內(nèi)容全選并使用Ctrl+C復(fù)制
2. 雙擊*.cst文件,打開(kāi)用戶的CST仿真工程
3. 點(diǎn)擊菜單中的制作宏選項(xiàng):Macros->Make VBA Macro
4. 在彈出的對(duì)話框中設(shè)置宏程序名稱ParSweepV05:
選項(xiàng)說(shuō)明:前兩個(gè)單選框按默認(rèn)選擇Control Macro即可,最后一個(gè)復(fù)選框(Make globally avaliable)如果選中,會(huì)使得這個(gè)宏在本機(jī)的CST軟件打開(kāi)的所有工程都可用,否則只在本工程中可用。
5. 點(diǎn)擊OK,會(huì)進(jìn)入宏編輯界面,將其中內(nèi)容全部刪除,并將之前復(fù)制的內(nèi)容Ctrl+V拷貝進(jìn)來(lái)。
6. 點(diǎn)擊保存按鈕,現(xiàn)在可以在Maxros菜單下找到ParSweepV05的選項(xiàng)了,不過(guò)現(xiàn)在還不能成功使用
二、創(chuàng)建參數(shù)文件
1. 格式說(shuō)明:參數(shù)文件名為ParSets.txt,必須包含CST參數(shù)列表中所有參數(shù),且要放在工程文件夾的根目錄下(與*.cst同一目錄)
2. 根據(jù)CST工程中的參數(shù)列表,將參數(shù)名寫(xiě)入ParSets.txt文件的首行,以制表符間隔
3. 根據(jù)首行參數(shù)名的順序,依次寫(xiě)入?yún)?shù)的取值,以制表符間隔。每一行的參數(shù)取值代表一次仿真的參數(shù)設(shè)置,有多少行參數(shù)設(shè)置就會(huì)進(jìn)行多少次仿真,請(qǐng)務(wù)必保證每一行的參數(shù)設(shè)置至少有一個(gè)參數(shù)的取值與其他行不同。
4. 保存文件并關(guān)閉
三、仿真
1. 在CST軟件的工程界面,打開(kāi)Macros菜單,會(huì)看到ParSweepV05的選項(xiàng),在Macros菜單的順序可能不同
2. 確保已經(jīng)備份全部工程文件,點(diǎn)擊ParSweepV05,會(huì)彈出對(duì)話框顯示參數(shù)的總數(shù),如果確認(rèn)無(wú)誤,點(diǎn)擊OK按鈕
3. 這時(shí)會(huì)顯示一個(gè)當(dāng)前所有參數(shù)的初始值列表,對(duì)仿真時(shí)的取值沒(méi)有影響,點(diǎn)擊OK按鈕
4. 在自定義的程序中已經(jīng)屏蔽了設(shè)置參數(shù)范圍的功能,點(diǎn)擊Start Parameter Study即可
5. 選擇要使用的求解器,點(diǎn)擊Start按鈕開(kāi)始仿真
四、查看結(jié)果
1. 在仿真完成后,可以在CST界面查看所有的1D仿真結(jié)果,若要查看電場(chǎng)分布等內(nèi)容,需要進(jìn)入工程根目錄查看。
2. 在工程根目錄,會(huì)有一個(gè)名稱為“工程名字_sweep_序號(hào)”的文件夾,這就是仿真結(jié)果的存放路徑,工程名字就是當(dāng)前工程的名字,其序號(hào)的值代表這個(gè)是用戶第幾次運(yùn)行ParSweepv05所產(chǎn)生的結(jié)果。
3. 進(jìn)入這個(gè)文件夾,每一個(gè)以“Set 序號(hào)”命名的.cst文件都對(duì)應(yīng)一種參數(shù)設(shè)置下的仿真工程,雙擊打開(kāi)即可查看,其序號(hào)的值代表在該次仿真所使用的參數(shù)設(shè)置是ParSets.txt文件中除了首行外的的第幾行的參數(shù)取值。
4. 在這個(gè)結(jié)果文件夾內(nèi),還有若干日志文件用于記錄每次仿真的時(shí)間和參數(shù)設(shè)置,例如ParSwLog.txt和ParSwPost.txt,在ParSweepV05說(shuō)明.txt中有簡(jiǎn)單說(shuō)明。
本文內(nèi)容修改自CST軟件原版VBA宏:Wizard / Parameter + Mesh Study,僅供學(xué)習(xí)和交流。
由于個(gè)人水平有限,不足之處還望多多包涵,歡迎批評(píng)指正。
這個(gè)給力……不會(huì)VBA的飄過(guò)
LZ真給力,之前聽(tīng)說(shuō)過(guò)宏這個(gè)東西,這下有了深入的認(rèn)識(shí),非常感謝!
由于我的博客在那個(gè)網(wǎng)站里,就把附件傳到那個(gè)網(wǎng)站了
這里是百度云的分享:http://pan.baidu.com/share/link?shareid=387183&uk=4113838203