您現(xiàn)在的位置:  
 首 頁 > 天線設計 > 天線設計問答 > 等離子體數值模擬

等離子體數值模擬

文章來源: 互聯(lián)網    錄入: mweda.com   

      等離子體的數值模擬方法也有很多種,粒子模擬,有限差分,流體等等,每一種都有它的優(yōu)缺點,因為近似前提條件不一樣,因此適用范圍也大不相同。 
   
      說起一緯等離子體與電磁場的數值模擬(FDTD),大家可能覺得太簡單,而且已經被研究透了,還有討論的必要么,其實不然.對于初學等離子體與電磁場數值模擬的學者來說,一緯是個很好的工具和過程.我認為它的好處有: 
 
1)一緯的數值模擬能夠使你把握做數值模擬大部分的因素.如電磁場遞推公式,吸收邊界的設置,激勵源的加入,連接邊界的公式推導等等,這些都能夠使你對數值模擬整個程序流程有個完整的把握. 
 
2)一緯的理論公式相對容易推導,因此你的數值模擬的結果,基本上都可以從原始理論公式中得到,因此你可以設置不同的物理模型,讓模擬結果與理論結果進行對比,發(fā)現(xiàn)哪些是相互驗證的,哪些是不同的,是否是計算誤差引起等等. 
 
3)調試程序方便,對于一緯模型,要調試程序很容易,N個結點,最多遍歷一次,速度很快,可以接受,可以想象對N*N,或者N*N*N的程序,調試非常麻煩.同時一緯對內存要求不高,基本上可以隨意設置數組大小,不用擔心內存不夠,不需要考慮算法太慢,我們只需要觀察到自己關心的現(xiàn)象就可以了.相反對三緯模型,設置吸收邊界5個節(jié)點,外場20節(jié)點,進場75個節(jié)點,其中包括目標20個節(jié)點(默認關心近場數據),這樣需要100個節(jié)點,每個節(jié)點放 Double型(16bit)數據,電場,磁場,電流,等離子體密度,位置等每個有三個方向分量,最基本需要(100*100*100)*16* (5*3)=240M數據,一個波長如果占20個節(jié)點話,目標物體里面也只能觀察一個波長的現(xiàn)象,同時很容易導致發(fā)散.因為三緯模型對物理模型,算法,內存使用存在了一定的要求,而這些在一緯模型中全部可以忽略,使我們能夠把精力放在我們所關心的物理問題,現(xiàn)象上。 
 
      大家覺得這已經做透了的東西,我最多將它當做練練手,沒什么好追求的.其實這也不然,原因有: 
 
1)一緯對編程要求低,你可以將精力放在物理模型上,取等離子體與電磁場數值模擬為例,現(xiàn)在以信號不影響等離子體密度的分布為前提的,你可以考慮密度分布不均勻時的情況,或者考慮信號如果對等離子體本身產生影響會怎么樣?對等離子體本身的影響到底是影響等離子體密度呢,還是影響等離子體電子溫度?前者可以研究非線性等現(xiàn)象,后者可以研究電離層加熱,或者兩者都有影響.等離子體密度不均勻時,要不要考慮密度剃度的影響,等等,再比如非磁化和磁化等離子體的比較等等,這些能研究的內容都很多.只要能找到合理的應用背景,發(fā)幾篇好的文章都可以. 
 
2)一緯中的算法相對也容易改進和驗證,收斂性的驗證就是一個很好的例子,事實上對等離子體這種色散介質收斂性的討論很少,決大部分認為等離子體中的速度小于光速,所以收斂性要比真空中更弱一些,所以不用另外考慮,其實這是錯誤的,等離子體中電子溫度所對應的電子速度限制,非線性中收斂性的情況,就會發(fā)現(xiàn)遠遠不能那樣簡單描述出來.通過推導它們收斂要求的公式,找到發(fā)散的原因,會有新的收獲. 
 
   我做數值模擬的時候,一般重點都是放在一緯上,一緯首先能從原理上看模型是否合理,收斂性的要求如何,吸收邊界條件,隨意的改變模型,如等離子體與真空,等離子體與金屬,等離子體與其他介質材料等,等模擬結果與預想的理論結果相差很小時,開始做二緯的

網友回復:

似乎三維的也有些成果了:)

網友回復:

對一緯等離子體與電磁場數值模擬熟悉后,就可以進一步研究二緯的數值模擬.二緯多了個自由度,因此我們可以充分的完善物理模型,基本上能夠描述實驗中的一些現(xiàn)象了. 
 
二緯在本質上和一緯沒有太大的區(qū)別,連接邊界,吸收邊界,激勵源,收斂條件等等,這些都基本上不用考慮太多.需要注意的是,收斂條件和緯數,模型關聯(lián)很大,需要時時更新。 
 
二緯所能夠描述一些一緯無法描述的模型, 
 
1)比如某些磁化等離子體. 
 
2)將柱坐標轉換成二緯模型,這個價值很大,因為實際中很多模型都可以用柱坐標來描述,當與角向分量無關(對稱)時,二緯模型基本上就能很好的模擬出實驗結果來. 
 
3)在數值模擬過程中,二緯起中承上啟下的作用,一緯有時候太簡單,算法的改進無法體現(xiàn),失去了意義,同時三緯需要時間太長,不易調試.因為在二緯數值模型中,可以重點放在算法的改進上,提高速度,提高計算精度或內存優(yōu)化等等.這些一般是最主流的方向. 
 
二緯模擬在程序調試時,要比一緯難很多,實時顯示圖片也很慢.有一次筆誤造成結果的偏差,讓我也找了好半天才發(fā)現(xiàn).寫一個大點的程序,總會出現(xiàn)各種各樣的問題,耐心和扎實的理論是你信心的保障。

網友回復:

等到了三緯時,基本上能夠滿足實驗的需要了,只要建立合理的方程,對程序來說,步驟相對更加簡單一下.因為不要太大指望能僅僅從三緯模型上得到一些原理的突破. 
 
三緯的優(yōu)點是更加真實的反映現(xiàn)實,缺點是速度慢,耗內存.因此在三緯模擬上的方向一般是算法,針對性能所提出的.如為了減少內存,就必須采用新的數據存儲方式,改進算法,使用更少的內存.或針對運行時間長,提出多線程,分布式處理,并行計算等不同手段. 
 
因此三緯數值模擬一般不是一個人所能做的,它需要一個團隊之間的配合,大家分工明確,誰負責做主體,誰負責算法,誰負責做并行等等.其實想想道理很簡單,如果你一個人做個三緯模擬出來,意義肯定不大,因為有太多的東西需要多,你只能每樣做一點,每樣都沒有深度,這也是必然的. 
 
三緯中算法的提高,這個算國內研究最多的了,FDTD色散介質的算法不下數十種,但每種算法都有它的限制和優(yōu)點.同時很多算法的改進在二緯模型中也可以實現(xiàn),因此如果要再對算法進行研究,除非特殊需要,否則沒有必要在三緯模型上進行試驗,運行時間長,不容易調試. 
 
還是說一下容易出結果的一些東西吧. 
 
1)多線程這方面做的很少,因為多線程的庫一般是Linux下面pthread用的最多,現(xiàn)在的Java和VS中都有了多線程函數庫,科研人員基本搞物理的多些,搞計算機的少一些,因此做多線程技術在等離子體與電磁場數值模擬中的應用很少.其實做起來也很簡單,只要合理的劃分區(qū)域,設置臨界區(qū),信號量,程序的主體框架基本上不用動. 
 
2)并行計算或分布式處理,這個有人在做,但也不多,其實可以做的內容也很多.但從效果而言,要比多線程好很多,因為它不用解鎖或鎖,但它需要網絡傳輸數據,用datasocket也可以了. 
 
   提醒一下,三緯數值模擬一般需要一個團隊經過一段時間才能有所成就,或有所心得,如果一個人,除非有現(xiàn)成的代碼,否則一般很難搞出有創(chuàng)新的東西。 
 
  最后強調一下,任何數值模擬,數值計算一般都要在對物理模型,理論有很深的了解下做,才能做到心中有譜,萬無一失.因為在做模擬的過程中,你會發(fā)現(xiàn)很多你沒想到的現(xiàn)象,這到底是對,還是錯?是什么原因引起的,程序收斂性有錯,代碼有錯,還是的確存在,而你沒想到.如果是沒想到,就應該反省自己為什么開始沒預測到.很難想象,照般一些公式,建立個物理模型,是如何調試程序的.只能一片茫然,向別人請教,這也失去了做數值模擬的意義. 
本文引用地址:http://www.sciencenet.cn/blog/user_content.aspx?id=14470

網友回復:

受教了!樓主大牛啊,歡迎您多多參與交流和討論~~

網友回復:

做數值模擬是個很枯燥的過程,如果做之前有已經有一定的基礎了,那是比較好的,空手起家做數值模擬是非常困難的。熬出來不容易啊。 
。。

網友回復:

不錯,說得很好 
數值計算是長期磨煉出來的,有耐心做,做得出來 
現(xiàn)在帶一個學生在寫一維等離子體模擬,看年底給大家一個簡化版本等離子體仿真軟件

網友回復:

改天我貼一個 一緯等離子體FDTD數值模擬源碼 和一維等離子體數值計算的Matlab代碼吧。

網友回復:

 
等候,到時欣賞你的代碼

網友回復:

本想上傳論文中等離子體FDTD的遞推公式的推導過程的資料的,word文檔,提示附件類型不匹配,是不是只能上傳圖片?

申明:網友回復良莠不齊,僅供參考。如需專業(yè)解答,請咨詢本站專家,或者學習本站天線設計視頻培訓課程