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

等離子體數(shù)值模擬

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

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

網(wǎng)友回復(fù):

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

網(wǎng)友回復(fù):

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

網(wǎng)友回復(fù):

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

網(wǎng)友回復(fù):

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

網(wǎng)友回復(fù):

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

網(wǎng)友回復(fù):

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

網(wǎng)友回復(fù):

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

網(wǎng)友回復(fù):

 
等候,到時欣賞你的代碼

網(wǎng)友回復(fù):

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

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