必威电竞|足球世界杯竞猜平台

mcnp
來源:互聯網

MCNP(Monte Carlo N Particle Transport Code)是由美國洛斯阿拉莫斯國家實驗室(LosAlamos National Laboratory)開發的基于蒙特卡洛方法的用于計算三維復雜幾何結構中的中子、光子、電子或者耦合中子/光子/電子輸運問題的通用軟件包,也具有計算核臨界系統(包括次臨界和超臨界系統)本征值問題的能力。該軟件包通過Fortran編程實現。其中,MC方法又稱隨機抽樣或統計實驗方法,屬于計算數學的一個分支,它是在20世紀40年代中期為了適應當時原子能事業的發展而發展起來的。傳統的經驗方法由于不能逼近真實的物理過程,很難得到滿意的結果,而MC方法由于能夠真實地模擬實際物理過程,故解決問題與實際非常符合,可以得到很圓滿的結果。

MCNP程序涉及面如此之多,關鍵是通過讀入一個經用戶創建的稱為INP的輸入文件來進行計算。該文件必須遵循按照柵元卡的格式進行組織,指定描述空間問題的信息,具體地有(1)空間幾何體的描述說明;(2)幾何體的使用材料描述和交叉區域的選擇估計;(3)中子、光子以及電子這3種粒子源的位置和特性說明;(4)必要的回答卡和標記卡的類型;(5)任何必需的冗余量消除技術以提高計算效率。

目前,MCNP以其靈活、通用的特點以及強大的功能被廣泛應用于輻射防護與射線測定、輻射屏蔽設計優化、反應堆設計、(次)臨界裝置實驗、醫學以及檢測器設計與分析等學科領域,并得到一致認可。

MCNP的發展歷程

MCNP程序是由美國LosAlamos國家實驗室研制開發的,為其所投入的研究、發展、程序編寫及參數制作超過了500人年。程序誕生于1963年,20世紀70年代中期由中子程序和光子程序合并,形成了最初的MCNP程序。自那時起,每2—3年更新一次,版本不斷發展,功能不斷增加,適應面也越來越廣。已知的MCNP程序研制版本的更新時間表如下:

MCNP-3:1983年寫成,為標準的Fortran77版本,截面采用ENDF/B2III。

MCNP-3A:1986年寫成,加進了多種標準源,截面采用ENDF/B2IV。

MCNP-3B:1988年寫成,具有陣列幾何處理能力(即重復結構描述),多群截面和計數輸出的圖形化功能,截面采用ENDF/B2IV和ENDL2851。

MCNP-4:1990年7月由LANL寫成,截面采用ENDF/B2V。

MCNP-4.2:1991年3月由ORNL的RSIC寫成,程序有較大改進,增加了基于Sandia國家實驗室的ITS(IntegratedTigerSeries)2連續能量電子輸運包,將其編入MCNP程序,專用于UNIX系統,從此MCNP程序成為中子/光子/電子耦合輸運程序。

MCNP-4A:1993年誕生,仍為unix系統,開始引入PVM并行,適合共享存儲并行計算機,截面為ENDF/B2V。

MCNP-4B:1997年3月正式推出,有PC版(需要LAHEY編譯系統支持),UNIX版,采用ENDF/B2VI截面庫和彩色圖形系統,仍采用PVM并行編程。

MCNP-4B2:為MCNP24B的升級版,其支持Fortran90系統。

MCNP24C:2000正式推出,在MCNP24B基礎上增加共振自屏、瞬發α本征值、微擾和多群伴隨中子輸運計算等處理,采用F90編譯器,工作站版本支持PVM和SMPP并行。

MCNP-5:2003年推出。在這個版本中,完成了從FORTRAN277到FORTRAN290的重新組織,支持以前的MCNP-4C2/4C3全部功能,同時在提高圖形顯示,易安裝性以及更好的在線文檔方面有較大改善。

另外,在MCNP系列版本中,出現了MCNPX版本,該版本程序仍為該實驗室研制,并由其負責維護和更新。MCNPX開始于1994年,作為MCNP-4B和LAHET22.8的代碼整合項目,并第1次在1999年對外發布,版本為2.1.5。2002年,MCNPX升級為MCNP-4C,其變化包括支持Fortran90系統,加強了12種新特性,并作為2.4.0版本對外發布。自從2002年開始,MCNPX測試組向全球300個機構中的1400多名用戶進行公開測試,在加入了數10個新特性后作為2.5.0版對外發布。MCNPX現在已經成為世界上使用最為廣泛的粒子輸運程序之一。

另外,據悉,最新的MCNP6也已經發布。

早期的MCNP程序基于節約內存的目的,使用磁盤文件較多,讀取文件效率極低。目前MCNP程序中的多數文件交換已改為內存數組,它比磁盤文件讀取速度提高了10000倍,加之高速緩存Cache的使用,并行效率顯著提高。

MCNP的應用狀況及發展

由于MCNP的通用性、靈活性以及強大的功能,使得其在世界上有廣泛應用,僅國內的用戶就在百家之上,應用領域也從過去主要的核領域,逐漸推廣到石油、醫學在內的許多領域。

從20世紀90年代開始,國外已經有研究人員開始研究MCNP輸入文件制作的簡化和計算結果的圖形化顯示。特別是隨著計算機軟硬件技術的發展,在近幾年取得了一些有價值的研究成果。所開發的MCNP可視化軟件能夠應用場景的二維DX格式文件和三維SAT格式的圖形文件轉換成MCN的輸入文件,即將在目前商用CAD軟件中繪制的計算場景的幾何模型轉換為MCNP的仿真模型同時在場景的某些界面將MCNP的計算結果繪制成二維圖形,實現了計算結果的可視化。為便于計算結果的分析、存儲和共享,有的后處理軟件能夠將MCNP計算結果輸出到電子表格等數據庫中。

近幾年,國內在MCNP前處理與后處理技術領域的研究也取得了長足的進步。主要表現在以下幾個方面:

(1)在MCNP的計算效率、幾何局限性以及二維交互繪圖等方面進行了有益的探索。

(2)為了簡化MCNP輸入文件的制作、顯示MCNP的計算進程和計算數據的抽取與顯示,研究開發了專用的MCNP程序可視化運行平臺,并能以圖形化的方式顯示MCNP的計算進程和運行時間的相關信息。

(3)為了簡化MCNP的幾何建模,提高MCNP計算輸入文件的編寫效率,研究將有關CAD文件中的幾何模型轉換為MCNP仿真模型的算法問題,通過對目前商用圖形軟件包進行二次開發,開發出專用的MCNP輔助建模工具。

另外,可視化技術已經在自然科學領域得到了廣泛的應用。目前在規則數據場的體繪制和面繪制算法等方面的技術已經趨于成熟。國內外的一些研究機構相繼推出了一系列可視化軟件工具及專用可視化軟件。但在三維數據場實時動態顯示、非規則數據場合矢量場的可視化計算以及基于網絡的科學計算可視化理論等方面有待進一步的研究和完善。

綜上所述,近幾年來國內外研究人員在MCNP仿真模型的建立、計算結果的可視化研究方面取得了一些重要的研究成果。

MCNP程序的不足

MCNP程序采用了MC方法,由于能夠準確地描述復雜幾何,并真實地考慮了粒子事件的全部物理過程,特別是連續能量點截面和精確角分布的使用,使MC方法具有很強的競爭性。然而這種方法的最大不足是誤差的概率性和收斂方面,計算耗時多,過去受計算機條件限制,這種方法在20世紀90年代前還受到限制,但隨著計算機的高速發展,近10年MC方法的應用也越來越廣。

同時,由于MCNP是一個通用軟件,往往不能直接用來解決具體問題。在具體應用中,必須針對具體問題作適當改進和進一步開發。

另外,雖然MCNP在世界范圍內得到了廣泛應用,但是存在輸入接口復雜和繁瑣,對空間中幾何對象描述非常困難的問題。MCNP輸入文件結構復雜,幾何模型的描述工作又極為抽象、不直觀和容易出錯,這樣使得描述工作費時、復雜和效率低。如果采用人工方式制作,需要建模人員具有較強的專業水平。對于一個中等復雜度的圖像對象(實體圖元在50左右),手工制作時間為1-2個人月,而且出錯的可能性極大,有時不得不重新制作或簡化模型。而且MCNP的繪圖功能僅僅局限在二維剖面圖,常會遇到不適應的情況,特別是復雜幾何的描述極易出錯,這給用戶在調試幾何模型輸入文件時帶來不便。

MCNP的發展趨勢及前景

針對MCNP程序本身以及其應用領域的特點,今后在MCNP輸入文件輔助制作工具、幾何模型可視化等方面都很具有發展潛力,同時在某些特殊領域,可以對MCNP進行二次開發,對其做源代碼級的修改,以適用于具體的問題。

20世紀80年代后期提出了科學計算可視化這個新的研究領域。經過數10年的研究,科學計算可視化已經從研究階段轉入到應用階段。目前應用在MCNP的可視化研究主要體現在MCNP模型的可視化輔助自動建模工具。MCNP模型相關的可視化工具主要包括VisualEditor,Sabrina,Moritz以及中國科學院核能安全技術研究所FDS團隊開發的具有自主知識產權的多物理耦合分析自動建模軟件MCAM。MCNP可視化自動建模工具的開發,可以很好地解決以手工的方式來建立MCNP輸入文件所帶來的一系列相關問題,因而具有很廣闊的發展前景。

另一方面,隨著科學計算可視化理論以及虛擬現實技術的發展,開發具有復雜幾何體的建模和虛擬組裝、三維空間不規則數據場的可視化以及MC2NP計算結果可視化處理功能的高度集成可視化平臺,也可以更好地促進MCNP的應用,并在一定程度上促進科學計算可視化理論以及虛擬現實技術的進一步發展。

MCNP的運行方法

MCNP程序運行關鍵是通過讀入一個經用戶創建的稱為INP的輸入文件來進行計算。以4c版本為例,建立一個較為快捷的運行方法。建立一個TXT文檔,文檔中輸入“call mcnp4c.exe inp=**in.txt outp=**o.out”語句,文件類型由.txt改為.bat,其中**in.txt為inp文件名稱,**o.out為輸出結果文件名稱,保存后雙擊就可運行。

經過一段 時間的運行,程序將給出運行結果,默認情況下生成文件有 runtpe 和 out* 2 個文件,其中 runtpe 這個文件是中間轉儲文件,一般不需要;計算結果則是保存在 out*文件內,利用文本讀寫軟件如“寫字板”打開后進行分析并對結果進行整理。下圖是未執行前的情形:在雙擊 mcnp.exe 執行后,會發現多了 2 個文件,如上所述;如果再雙擊 mcnp.exe,則會出現下述的情形,即不覆蓋原來的結果;如果為了增加在運行時的靈活性,那么可以在命令行(cmd)下的利用通用的 命令來進行,其命令格式是: mcnp inp=11.txt outp=11.out 這里的 mcnp 是命令,11.txt 是輸入文件,相當于默認的 inp 文件,11.out 是結果 輸出文件,相當于默認的 oupt 文件。刪除掉上面的 4 個生成文件,在 mcnp 軟件的當前目錄下輸入:那么可以看到,那么可以看到,執行結果為 11.out 和 runtpe,即此時輸入文件的名稱和輸出文件的名稱我們都可以自由指定。

繪圖命令

進入繪圖界面

在 4C 版本里面,如果需要繪圖,則必須需要用 dos 命令來做。打開命令窗 口(在開始菜單中的“運行”子菜單里面輸入“cmd” ,回車),利用“cd”命令進 入 MCNP 程序所在目錄(建議 MCNP 所在的文件夾路徑要盡量短并且文件夾名稱 為英文名稱),輸入 MCNP IP 命令,此時系統會自動給你打開 MCNP 的繪圖命令 窗口: MCNP 的操作界面,在主窗口里會出現 2 個子窗口,名稱分別為 MCNP Execute Window(命令窗口)和 MCNP Plot Window(繪圖窗口),如上圖所示,用戶在命令窗口中輸入各種繪圖命令和相關參數, MCNP 將把執行結果顯示在繪圖窗口中。Ip;initiate and plot 圖 1、MCNP 繪圖基本界面示意圖比如你的 MCNP 文件裝在 D 盤里下面的 MCNP 文件夾中,你就在命令窗口 中先輸入 D: ,回車;進入 D 盤目錄下,再輸入 cd MCNP 進入 MCNP 目錄,然 后就輸入 MCNP IP 就進入畫圖界面;上述是默認情況下的繪圖過程,通用的繪圖方式是: mcnp inp= filename ip modle: mcnp inp=11.txt ip在命令行(cmd)下敲入上述命令,具體文件只要替換上述的 filename 即可,上述 的例子就是針對 11.txt 這個輸入文件進行繪圖。的含義是 initiate and plot 。 ip 此時操作系統會自動打開 mcnp 程序并如上圖 1 所示。

基本繪圖命令介紹

繪圖命令:同運行一樣,建立TXT文檔輸入call mcnp4c.exe inp=***in.txt ip,保存后文件類型由.txt改為.bat,其中**in.txt為inp文件名稱,雙擊就可繪圖。

(1)、Origin vx vy vz 指定繪圖坐標的原點,默認情況取 vx vy vz 為 0 0 0,例:Origin 0 0 0圖 2、執行 origin 0 0 0 命令后的顯示結果(2)、extent eh ev 設置圖形的顯示比例問題,其中 eh(horizontal)為水平方向從原點開始的任意長 度,單位為 cm,ev(vertical)為垂直方向從原點開始的任意長度,如果只輸入一個 數值,則 eh 和 ev 均取同一個數值,默認情況下 eh 和 ev 取值為 100。例:extent 5,注意:圖 2 中繪圖窗口中的 extent 為(100.00,100.00) 圖 3、執行 extent 5 命令后的顯示結果(3) PX vx 繪制 x=vx 位置處的 y-z 平面投影圖,默認情況下 vx=0 例:PX 10 (4) PY vy 繪制 y=vy 位置處的 x-z 平面投影圖,默認情況下 vy=0 例:PY 10 (5) PZ vz 繪制 z=vz 位置處的 x-y 平面投影圖,默認情況下 vz=0 例:PZ 10圖 4、執行 PY 0.05 命令后的顯示結果圖 5、執行 PZ 0.1 命令后的顯示結果 (6)、label s c 對曲面和柵元進行標記,其中 s 和 c 分別代表對曲面和柵元進行標記的符號的大 小。例:label 5 5圖 6、執行 label 5 5 后的結果示意圖(7)、factor 圖片放大和縮小用,例如 factor 10 縮小 10 倍,factor 0.1 放大 10 倍;由于 比較簡單,所以這里就不再舉例了。上述就是常用的繪圖命令,對于深一步的繪圖命令,請參考相關的英文參考資料 《RSICC COMPUTER CODE COLLECTION --- MCNP4C》

參考資料 >

生活家百科家居網