關于CST的I求解器的精度問題
很少用CST的I求解器,最近計算一個穿越自由空間的傳輸問題,T求解器速度太慢,所以考慮用I求解器,但遇到了結果精度問題,在此請教大神。
1.首先是發現i求解器定義精度的地方起碼有三處,不太清楚都是什么精度,首先I求解器主界面上的一個數值,應該是迭代的residual,點開special里面左上角還有一個有關精度的(手邊沒有cst,只記得下拉框1st low memory,2nd good accuracy什么的),右下角還有關于MLFMM精度的一個下拉框,當然界面上還有一個復選框是使用雙精度也和精度有關,這個明白,其他的2個關系到哪一部分精度不是很清楚。
2.采用i求解器默認值主界面上1e-3,special里面左上角是1st,右下角mlfmm那個好像也是第一項,計算設置好的模型(模型大致是兩個天線相向放置,中間隔開一定的距離,一個發射一個接受,求一個頻點的S21,類似耦合問題),I求解器默認(auto)采用MLFMM算法計算,發現每次求解結果都不一樣,S21大概在-19dB左右,(我記得差別能有正負0.5dB,我認為這對數值求解來說是不可接受的),每次迭代的次數(達到收斂條件)也不同,residual也不同。改成1e-4之后情況好了一些,再更改special內的兩個,一個改成2nd good accuracy(改成3rd后計算會很慢很慢),MLFMM精度改成high accuracy之后,結果穩定了很多(和此前默認精度的結果也有差別,大概-18dB),但還是會有變化,基本上在有效數字后4位了。我不太清楚CST的I求解器在什么地方有隨機性,才會出現這種每次計算結果都會有差別的情況。另:利用FEKO計算同一問題,默認3e-3精度,每次的residual都不會變化,當然結果也很穩定。
3.使用direct MOM算法計算的結果在-14dB左右,和MLFMM差別較大,但結果很穩定,每次計算結果都一樣。
4.i求解器的結果和t求解器的結果有一定差別,這個倒是可是接受,即使T求解器,網格劃分不同結果也會有所不同,另:FEKO計算結果和T求解器的倒是比較接近,在-18dB左右。
5.但是我進行參數掃描(移動其中一個天線的位置)觀察S21時,用MOM算出的結果整體趨勢和T求解器得出的結果差別很大,根本無法接受(前提是T求解器的結果是正確的,經過驗證的),用MLFMM得到的結果雖然趨勢上和T求解器的結果相近,但S21較小的情況下差別還是較大,而且精度的MLFMM的結果,在明顯對稱的位置上得到的結果不一樣,低端有些震蕩趨勢,不可信,高精度的雖然穩定了,還是和T求解器有不小差別。
6.另外試了cst自帶的i求解器的例子,計算一個天線的s11,也會有這種現象。
注:以上仿真全部使用cst2011(忘了是sp幾了),默認網格劃分(沒什么特別的結構,普通的喇叭天線),采用waveguide port饋電。
望大神幫忙給些解釋,謝謝。
沒人幫忙,看幫助文檔大概能了解一些這些精度代表什么,但還是不知道為什么每次計算都會不同
找到了feko參數掃描的方法,發現結果還是沒有cst時域求解器的結果好,明明該對稱的兩端數值不一樣,,比最大值低20db后和cst時域結果差別大一些,曲線有振蕩現象,不平滑,左右該對稱的不對稱,是不是積分方程算法就不適合這種問題呢?
另:還是不知道cst的i求解器為什么每次計算結果都不一樣
這種大尺度的天線耦合問題還就是MOM方法最適合。了解了各種算法的原理就好解釋你遇到的各種情況了。
I算法是高頻漸進方法,采用SBR,彈跳射線方法,類似于光線的傳播和反射,射線條數和反射次數你是自己可選的,當然條數越多,反射次數越多計算量會增大,但精度卻不一定就增加。這也是高頻算法本身的問題,你采用這種方法就應該知道它可能的問題。
MLFMM是采用迭代方法求解矩陣方程,當然迭代法的初始值和殘差都會影響最終的計算結果。
direct MOM是采用直接法求解矩陣方程,也就是對稠密矩陣直接做LU分解,這樣做雖然計算量大,占用內存大但是精度能保證很高,并且解穩定。
總之,必須根據你的問題和需求確定計算的策略。
首先謝謝回復,等了好久,這幾天都沒時間看看
不過我還有些問題
1.這個問題尺度并不大,就是一個20dB的標準增益喇叭天線(我用的8.212.4GHz)加一個標準開口波導,對積分算法來說不算電大問題了,用T求解器比較慢是因為我要擴展出1m*1m的外空間
2.i算法(應該是指我說的CST中的i求解器吧)不是高頻漸進方法,A求解器才是
3.MLFMM是迭代求解的,“當然迭代法的初始值和殘差都會影響最終的計算結果”這個我完全同意,但是我的意思是“在不改變任何設置的情況下,MLFMM每次計算結果都不一樣”
4.MOM的直接解法你的觀點我也同意,但在試驗我的問題時,穩定但不正確。
謝謝
問題1:和 FEKO對比,I求解器的三個精度設置意義分別是收斂終止條件、變量單精度雙精度運算(關乎內存占用,和編程中單精度和雙精度一個概念,一般采用單精度就夠用了),另外一個關乎網格數,準確度越低支持的網格步長越長,計算時間相對越短。這些前兩個FEKO中均有體現,而準確度的設定在FEKO的版本更迭中隱含了。
問題2:這個問題理論上不應該出現,我想知道樓主是采用的遠場源還是帶結構進去算的,如果遠場源的話應該不會有此問題。關乎算法本身,I求解器沒有采用混合算法,這種電尺寸的問題建議采用時域求解,I計算電大尺寸的,另外如果結構中有腔體或者能量多次反射的情況下使用MLFMM是不合適的,這是算法的缺陷,不是軟件問題,這種問題無論是CST的I還是FEKO都算不準。還有計算天線耦合度的時候在-19dB有0.5dB左右的偏差工程上是可以接受的吧?
問題3:直接矩量法的話計算要仔細設置網格(FEKO中也一樣),網格模型變化的話,算出來的結果會變化的,我覺得直接矩量法的話網格不妨密一點,默認的一個波長剖三個網格精度不夠
問題4:這些算法都需要設計師介入網格劃分,而不是HFSS或者CST的F求解器傻瓜自適應加密就行了的,網格模型的變化難免會導致計算效率和結果變化,這個要靠經驗積累的,目前我也在學習
問題5:天線相對位置的變化結果發生變化,根本上就是耦合強度的變化,算法在求解各天線的方向圖的準確性(不僅僅是主瓣區域,包括電平較低的旁瓣和尾瓣),我覺得不妨用時域來算,和之前模型一樣,不同的求解器求解應該可以相互驗證的。