MCNP入門教程

贺兰山缺 2024-07-28 11:22 16次浏览 0 条评论 taohigo.com

第1章 MCNP概述

1.1 MCNP計算過程

MCNP(Monte Carlo N—Particle Transport code)是計算粒子輸運過程的一套蒙特卡羅模擬計算程序。這個程序需要用戶通過輸入文件給出計算模型。計算模型中需要提供源的屬性、感興區內各種物體的屬性、記錄粒子信息的方法等.

例如,若想計算一個1MeV的X射線透過2cm鐵的概率是多少,我們可以通過下面的模型進行計算,如圖1所示.

圖 1 計算模型

在上面的計算模型中,感興區是一個球的內部,其中包含X射線源、鐵塊和記錄面,而其他位置均為真空。由於當粒子被輸運到感興區外時,它將肯定不會再對記錄結果產生貢獻,所以程序會自動停止這個粒子的輸運過程,這也正是設定感興區的原因。

源的屬性主要包括位置、能量、出射方向、粒子種類等.圖1的計算模型中,源的能量為單能1MeV,方向為單向垂直於鐵塊的左表面,粒子種類為光子(Photon).

感興區內物體的屬性包括幾何尺寸、材料成分、密度等。圖1中使用瞭一塊鐵塊,它的厚度為2cm,其他方向的尺寸對我們的計算結果沒有影響,但要保證鐵塊完整地包含於感興區內。

記錄方法有多種,其中包括通過某個面的特定種類粒子的個數.在圖1中,我們可以利用MCNP記錄通過“記錄面"的能量為1MeV的光子個數.

計算圖1的模型時,MCNP會首先根據源的屬性描述,抽樣出一個起始粒子.圖1中的源為單能且單向的點源,所以每次抽樣出的粒子都是能量、方向、種類相同的粒子。這個粒子會沿著它的出射方向(垂直於鐵塊左表面)飛行,當它入射到鐵塊裡時,會有一定的概率發生康普頓散射、電子對效應和光電效應。發生三種反應的概率由MCNP的截面庫中的微觀截面數據、輸入文件中鐵的密度以及抽樣得到的隨機數共同決定。若X射線發生瞭康普頓散射,原來的X射線將被具有新屬性的X射線取代,它將有不同的出射方向、能量。MCNP會繼續輸運這個新產生的X射線直到它發生下一次反應或者飛出感興區;X射線還會有一定的概率不發生任何反應,直接透過鐵塊。

當基於一個起始粒子的輸運過程結束後,MCNP會重復上述的過程。由於每次抽樣的得到的隨機數會不同,所以每個起始粒子的輸運過程都是獨立而且不同的。多次的輸運過程會使得MCNP的記錄結果越來越接近它的期望值,重復的次數越多,統計漲落就會越小。

盡管MCNP會記錄所有通過記錄面的光子。但由於光子一旦發生反應,它的能量就會變化,所以若隻觀察能量為1MeV的光子,我們就可以排除那些經過多次散射而打到記錄面的光子瞭。

由於每次輸運均是基於一個起始源粒子,所以最後記錄得到的結果也都是相對於一個起始粒子的概率.對於圖1來說,記錄結果就是1個X射線透過2cm的鐵後打到記錄面的概率。

1.2 MCNP文件結構

MCNP的輸入文件名不可以多於七個字符,所以不建議對輸入文件增加擴展名;MCNP的輸出文件的擴展名為.o;MCNP內部計算過程的記錄文件的擴展名為.r.若一次計算結果就已經達到滿意的統計結果,那麼.r文件就沒有什麼價值保存下來;但是若一次計算結果達不到滿意的統計可信度,那麼我們可以在已得到的計算結果的基礎上繼續模擬輸運過程,來減小統計漲落。而為瞭這麼做,MCNP需要上一次計算結果中使用的.r文件.為瞭這個目的,有時候.r文件還是值得保留的。在基於上一次的計算結果繼續模擬計算時,MCNP將不再讀入輸入文件,而單單讀入。r文件的信息。所以我們想繼續計算時,需要保證。r文件就是我們所設想的模型的前一次模擬計算中得到的.r文件.除瞭上面三種常用的文件類型,MCNP還有兩種不長用的輸出文件。這兩種文件隻有用戶通過輸入文件要求MCNP輸出這些文件時才會得到。其中一個為。w文件,這個文件是我們想通過MCNP輸出surface source 的時候才會產生;另外一個為。p文件,這個文件時我們想通過MCNP追蹤粒子的輸運過程的時候才會得到。

上面的幾種文件是用戶常用到的文件類型,下面將介紹MCNP程序內部使用的若幹的文件。

  1. MCNP5.exe:MCNP的應用程序,這個程序是在dos下運行的程序。所以用戶不要試圖雙擊這個程序來運行它。
  2. vised.exe:這個程序可以讓用戶觀察MCNP讀入的輸入文件中的計算模型.我們可以利用這個程序觀察我們所設想的計算模型與實際書寫出來的計算模型是否有偏差。此外,這個程序還可以方便我們找出MCNP輸入文件中潛在的一些錯誤,例如:兩個物體有相交的部分等。
  3. 目錄Documents: 這個文件夾內包含LANL(Los Alamos National Laboratory)提供的MCNP的官方使用說明、林謙老師的蒙卡課程講義和西安交通大學翻譯的中文MCNP的使用手冊等
  4. 目錄MCNPData: 這個目錄裡存放的是MCNP的截面庫.
  5. xs52: 這個文件內說明瞭各個核素的屬性,包括質量,截面庫內各種反應類型對應的截面的存放位置等。在初始使用MCNP時,我們有可能要修改這個文件中的一部分內容,具體的修改方法將在下面介紹。
  6. X11.dll:MCNP程序的動態鏈接庫,沒有這個文件MCNP將無法計算,所以不要把這個文件弄丟瞭。

除瞭上面的文件外,為瞭在dos下使用MCNP程序我們編寫瞭幾個批處理文件。

  1. ccmd。bat: 隻要雙擊這個程序就可以彈出一個dos界面。
  2. g5。bat: 這個批處理將是用戶用到最多的批處理程序.我們可以利用這個批處理直接調用MCNP的主程序。
  3. gogo.bat:這個批出文件可以使MCNP連續的計算若幹個輸入文件,具體的使用方法將在後面介紹。
  4. resume.bat:這個批處理文件可以使得MCNP在上一次計算結果的基礎上繼續進行計算,具體使用方法將在下面介紹。

上面所提到的文件就是用戶在使用MCNP時最頻繁接觸到的文件。

1.3 MCNP使用方法

在使用MCNP時,我建議用戶安裝一個比較方便的文本編輯器,如:Ultraedit。

為瞭使用MCNP,用戶需要首先進行一些文件路徑的指明等工作,具體如下:

  1. 建議用戶把MCNP的整個目錄(名為LANL)放在一個硬盤分區的根目錄下。
  2. 修改g5.bat 中 文件路徑:我們用Ultraedit打開g5。bat可以發現,這個批處理的內容為

del %1.o

del %1.r

del %1.p

del %1.s

del %1.w

mcnp5 n=%1. xsdir=xs52

前5句的作用是刪除與輸入文件相關的已經存在的輸出文件,這樣做的目的是,如果MCNP程序發現已有輸入文件對應的輸出文件存在,那麼程序就認為這個輸入文件已經得到瞭模擬計算並且沒有必要進行重復的計算.

批處理中的最後一句就是調用MCNP的主程序——MCNP5.exe,並指明管理截面庫的文件(xs52)的路徑。由於我已經把這個文件放在瞭LANL的目錄內,所以用戶不用修改這個文件的路徑瞭。

  1. 修改xs52文件:利用Ultraedit打開xs52文件,可以發現文件的第一行為datapath=e:LANLMCNPDATA。為瞭讓MCNP找到截面庫,用戶需要正確地修改它的路徑.因為我把LANL放在瞭E盤的根目錄下,所以這裡的datapath就是e:LANLMCNPDATA。之前,我已經建議用戶把LANL目錄放在某個硬盤分區的根目錄下,所以在這裡修改時,用戶隻需把e更換為實際存放的硬盤分區的盤符就可以瞭。

經過上面的修改後,用戶就可以使用MCNP程序瞭.例如我們已經書寫好瞭一個文件名為Xray7的輸入文件,

A,那麼我們可以通過下面的步驟進行計算。

  1. 雙擊ccmd.bat,系統會彈出下面的窗口。

  1. 在窗口內輸入g5Xray7並按回車,MCNP就開始進行計算瞭。界面如下圖所示。

計算時MCNP會占據單個CPU的所有資源。若用戶的計算機是單核的,那麼CPU使用量是100%;若用戶的計算機是雙核的,那麼CPU的使用量是50%.

B, 關於停止一次計算,可以通過在輸入文件內限定計算時間或輸運的起始粒子個數.此外,還可以通過dos下強制停止計算過程的方法。若想強制停止計算過程,可以使用Ctrl+C鍵停止計算。同時按下這兩鍵時,屏幕會出現下面的界面。

在這個界面下,輸入s並按回車,程序會輸出已經消耗的計算時間;按下m是調用MCNP的畫圖軟件,因為有瞭vised。exe程序,所以不建議使用這裡的畫圖程序;按下q是停止計算程序,並輸出結算結果.有時候,MCNP會等待正在模擬的一個粒子的輸運過程結束後在結束程序,但並不會拖延太長時間;按下k是直接停止計算程序,而並不會輸出計算結果。

C, 繼續計算一個已計算完的模型。用戶需要保留初始計算過程中產生的.r文件。還以上面的計算情況為例,在上一次計算中我們得到瞭Xray7。o(輸出文件)和Xray7。r(計算過程的記錄文件)。在dos命令行下輸入resumeXray7並按下回車,可以得到下面的界面。

在繼續運算的情況,由於MCNP不會再次讀入輸入文件,而僅僅讀入。r文件,所以這次計算的終止需要我們通過強制停止的方法。

D, 連續計算多個軟件

利用Ultraedit打開gogo.bat可以發現

call g5 Xray7

這裡隻給出瞭計算一個文件的命令,若我們想連續地計算多個文件(如D1,D2,D3等)可以模仿上面的規范書寫,如下。

call g5 D1

call g5 D2

call g5 D3

然後在dos命令行下,鍵入gogo並按下回車,MCNP就可以依次計算D1,D2和D3瞭.

第2章 MCNP輸入文件書寫方法

2.1 MCNP輸入文件規范

MCNP的輸入文件在結構上基本上可以分為三塊,分別為cell塊、surface塊和其他內容.塊內除瞭註釋外,不得有空行,而兩個塊之間隻能有一個空行。通常情況下,每一行中隻能有一個主導性的助記符,這個助記符可以有很多參數和附屬的次要助記符.MCNP官方手冊中稱這樣的助記符為卡(card)。每一列不得超過80個字符,若書寫不下時,可以在行尾寫入 &符號,並從下行繼續書寫.

輸入文件的第一行不論寫瞭什麼都會被MCNP忽略掉,這一行的作用是方便用戶給這個輸入文件做一些備註.第二行後寫計算模型,我的習慣是先寫cell塊,然後是surface塊,最後是其他.

輸入文件中有兩種註釋方法,助記符分別為c和$符號.在第一行寫c就是把這一行都註釋掉;在某一行的某列上寫$就是註釋該行該列後的內容。但是即使是註釋,請用戶也不要超過每一列80個字符(包括空格)的要求。

還有三個常用的助記符在這裡介紹個用戶,分別為r,i和j.r代表的是repeat,例如1 3r 就等於寫瞭 1 1 1 1;i代表線性插入點,例如 1 2i 4 就等於寫瞭 1 2 3 4;j代表的是jump,表示該位置使用默認值,例如1 j 2就等於寫瞭 1 默認值 2。

由於MCNP對輸入文件的規范要求苛刻,所以請用戶謹記這樣的規范.

2.2 7MeV軔致輻射X射線算例

下面將通過書寫計算7MeV的軔致輻射X射線的角分佈、能譜的方法介紹MCNP輸入文件的書寫方法。

在書寫MCNP輸入文件前,請用戶首先想好要計算的模型,包括坐標系以及各個物體在這個坐標系內的相對位置。我的計算模型如下圖所示。

圖 2 計算模型

在圖2的計算模型中感興區是半徑為100cm的球內,源是能量為7MeV,位置在(-2,0,0)的單向電子束;X射線靶是半徑(Y或者Z方向)1cm,高度(X方向)1cm的金;其他位置均為真空。我將記錄面設置在圈定感興區的球面上。

為瞭書寫上面的計算模型,我們首先寫surface模塊.這裡需要定義的surface有源所在面;Au的三個表面(兩個底面和一個側面),圈定感興區的球面;劃分感興區表面的記錄用面.

    1. 源所在面的書寫方法:1 PX —2。 這裡的第一個1代表這個面的序號,這個序號將在書寫cell塊時用到;px為助記符表示該面是垂直於X軸的面;—2代表的是該面在X軸上的軸距。
    2. 同理Au的左底面的書寫方法:2 PX 0。
    3. 同理Au的右底面的書寫方法:3 PX 1。(可以猜到類似地,還會有PY和PZ的助記符)。
    4. Au的側面的書寫方法:4 CX 1。這裡的4代表面的序號,cx代表這個面是軸心是X軸的圓柱面,後面的1代表圓柱面的半徑。(可以猜到類似地,還會有CY和CZ的助記符).
    5. 圈定的感興區的面的書寫方法:100 SO 100。第一個100仍然代表面的序號。定義面的需要時,並不需要連續地定義,但要保證定義的順序是單調遞增的。第二個so代表的是圓心在原點的球面,之後的100就是圓的半徑.
    6. 除瞭這些面,為瞭記錄時把記錄面分割為若幹個小面,我們需要額外定義一些分割用面。為瞭把記錄面(球面)分割為若幹個球帶,我們可以定義若幹個圓錐體,如 30 kx 0 0.234567901 1,其中30代表這個面的序號;kx代表這個面是軸心是X軸的圓錐面;0代表圓錐的頂點在原點;0。234567901代表圓錐體頂角的tan值的平方值;我們可以想象,這樣定義的圓錐體應有兩葉,在Z〈0的一葉和Z〉0的一葉.所以最後的1代表的是,我們想要的圓錐面是Z〉0的一葉。我們可以類似地定義很多這樣的分割面.

    有瞭這些surface的定義後,我們就可以開始書寫cell塊瞭.

    1. 首先定義Au塊(cell),它由三個面圍成,它們是序號分別為2,3,4。Au塊由2號面的向右方向(或X軸的正方向),3號面的向左方向(或X軸的負方向)以及4號面的內部圍成.所以這個Au塊(cell)的書寫方法是:1 1 -19.3 2 -3 -4。第一個1代表的是這個cell的序號;第二個1代表的是這個cell所對應的材料種類為1,關於1號材料的定義將在後面介紹;第三個-19。3中,負號代表的是實際密度,若沒有負號則代表的是原子密度。所以—19.3代表的是Au塊(cell)的密度是19。3g/cm3;之後的2 -3 -4 描述的是Au塊是由2號面的正方向,3號面的負方向,4號面的內部圍成的.
    2. 源不是一個物體,所以不需要在cell塊中定義。而在感興趣內,除瞭Au塊(cell),其他位置均為真空.盡管是真空,我們仍需要在輸入文件內把真空定義為一個物體。定義的方法如下:2 0 —100 #1。其中第一個2代表cell的序號;第二個0代表定義的塊內什麼東西都沒有;後面的—100 #1限定瞭這個cell的幾何空間,它表示這個塊是在100號面的內部,(#助記符代表扣除的意思)除瞭1號cell的所有空間。
    3. 我們同樣需要定義感興區外的空間,定義的方法如下:100 0 100。第一個100是這個cell的序號;第二個0代表真空;第三個100代表第100號面的外部。

    2號cell和100號cell均為真空,區分哪一個是感興區的方法是利用另外一個助記符imp,它代表的是importance,也就是粒子在該cell內的重要性.這個助記符可以在每個cell的定義的末端寫上,也可以在第三塊中寫入。在cell末端寫入的方法如: 2 0 —100 #1 imp:e,p=1,它代表瞭2號cell中電子(e)及光子(p)的重要性為1,即它是感興區內的物體;100 0 100 imp:e,p=0,它代表瞭100號cell的電子及光子的重要性為0,即它在感興區外。

    註:感興區與非感興區並不需要一定是位置劃分分明的兩塊區域,我們可以在感興區內設定一個非感興區,隻要粒子被輸運到該區域就會被殺死(類似於黑洞).

    最後我們需要書寫第三個模塊,在這個模塊內將指明模擬計算中所涉及的反應類型,記錄方法,運算時間限定等。

    1. 模式卡:mode e p。這個卡說明瞭計算中將涉及兩種粒子,分別為電子及光子.(源粒子是電子,它轟擊Au塊會產生軔致輻射X射線)。
    2. 材料卡:m1 79197 —1。0.其中m1代表第一號材料,同理會有m2、m3等材料;79197的格式是ZZAAA,即79是原子序數(Au),197是質量數;-1。0中負號代表的是原子個數的比重,若正好則代表的是質量比重。材料卡的各種核素的比重的標識中並不要求歸一化,MCNP會自動給用戶歸一化。也就是說m1 79197 —2。0 79198 —2。0與m1 79197 -0。5 79198 —0。5的寫法對於MCNP而言是等效的,都說明1號材料中197Au與198Au各占一半。
    3. 源定義:sdef par=3 sur=1 pos=—2 0 0 vec=1 0 0 dir=1 erg=7。其中sdef是源定義的助記符代表source definition;par代表源粒子的種類,1代表中子,2代表光子,3代表電子;sur代表源所在的面,上面定義中sur=1說明源在序號為1的面上;pos代表源所在的位置,按照上面的定義,源的位置為(-2,0,0)。請謹記若sur 和pos同時被用上,請保證pos的點是在sur的面上,不然可能導致計算結果有誤;vec代表參考向量,向量的起始點是原點,而終止點是(1,0,0).這說明瞭我們設定的參考向量就是X軸的正方向;dir代表粒子出射方向與參考向量的夾角的餘弦,上面定義中為1,說明瞭源粒子沿著X軸正方向出射;erg代表源粒子的能量,按照上面的定義,源粒子的能量為7MeV.關於源的定義還有許多其他的助記符以及各種分佈情況,請參考MCNP的官方使用手冊。
    4. 粒子重要性表示:imp:e 1 1 0。其中imp:e代表瞭這張卡描述的是各個cell中電子的重要性,1 1 0代表瞭在cell塊中寫的各個cell(以書寫順序)的重要性分別為1、1、0.這說明瞭cell塊中第三個描述的cell(cell的序號可能不是三,隻是代表它是第三個被定義的cell。)是電子的黑洞,隻要電子被輸運到這個cell就會被殺死,停止輸運.同理我們還可以定義imp:p 1 1 0.在前面已經描述過,這裡的imp卡可以在cell塊中寫入如:

    1 1 -19.3 2 -3 -4 imp:e,p=1 $ Au

    2 0 -100 #1 imp:e,p=1

    100 0 100 imp:e,p=0

    1. 能量截斷卡:cut:e j 1。其中cut代表能量截斷卡的助記符;e代表電子;j代表第一個參數選用默認值;1代表截斷能量為1MeV.這個卡的作用是當輸運過程中,電子的能量小於1MeV,就殺死這個電子。這樣做的目的是,若我們隻關心高能(>1MeV)的X射線,而能量小於1MeV的電子已經不會再產生能量大於1MeV的X射線瞭,所以我們可以停止這些低能電子輸運來節省計算機機時而且不會影響計算結果。同理我們還可以寫cut:p j 1。
    2. 記錄方法描述卡1:F1:p 100。其中F1代表的是第一種記錄模式,也就是通過某個面的粒子的個數(相對於一個源粒子);p代表記錄的是光子;100代表記錄面是序號為100的面.故這個記錄卡的作用是記錄所有通過100號面的光子.
    3. 記錄方法描述2:F2:p 100。其中F2代表的是第二種記錄模式,也就是通過某個面的粒子的註量,它等於通過面的粒子個數(相對於一個源粒子)除以該面的面積.
    4. 記錄面分割:Fs2 —30 —31 -32 -33 -34 —35 -36 -37 -38 -39 40 41 42 43 44.其中Fs2代表的是分割第二號記錄卡的記錄面(也就是分割記錄第100號面);後面的-30 等代表分割方法,輸出時MCNP會給出
    5. 100號面上,從30號面的內部(圓錐體右葉的內部)出射的粒子
    6. 100號面上,從30號面的外部且40號面的內部出射的粒子
    7. 100號面上,從30號面的外部且31號面的外部且32號面的內部出射的粒子
    8. 100號面上,從30號面的外部且31號面的外部且32號面的外部且33號面的內部出射的粒子。
    9. 以此類推
    10. 能量分割:我們可以對任意一個記錄卡分別設置能量分割卡或所有記錄卡同意設置相同的能量分割卡。這裡我們將對2號記錄卡設置一個能量分割卡:E2 1 19i 7.其中E2代表這是對2號記錄卡的能量分割卡,後面的1 19i 7代表的是分割方法,也就是在1MeV至7MeV之間插入19個點.(若把E2寫成E0則代表對所有記錄卡使用相同的能量分割方法.)
    11. 計算時間設定卡:ctme 10。這個卡說明瞭要求MCNP計算10分鐘。可以想象,計算的時間越長,模擬的源粒子的個數就會越多,模擬結果就會越接近它的期望值,統計漲落就會越小。所以計算時間需要用戶根據自己希望得到的統計可信度,設定計算時間。除瞭ctme還有利用模擬源粒子的個數進行時間限制的方法,如NPS 10000,它說明瞭需要MCNP模擬10000個源粒子的輸運過程.

    在這個文件中隻使用瞭兩個記錄方法,分別為F1和F2。MCNP中一共有8中記錄方法,用戶請參考使用手冊,選用適合計算模型的記錄卡。此外一種記錄卡可以有多個記錄面,隻要保證記錄卡的個位數是8種記錄卡的一種,例如F11和F21都是第一種記錄類型,即通過某個記錄面的粒子個數。另外請謹記,在使用F1和F2的記錄卡時,記錄面一定要是構成某個cell的一個面,不然MCNP不會給出記錄結果,也就是說如果用戶隨意定義瞭一個面(如上面定義的某個分割面),而且這個面沒有被使用在定義某個cell上,那麼我們不能期望MCNP可以記錄通過這個面的粒子信息。使用分割面時,其實還是記錄通過那個記錄面的粒子個數,分割面隻是把那個記錄面分割為若個塊而已.

    總結上面的書寫過程,我們最後的輸入文件如下.文件名為Xray7。

    Bremmstrlung X-ray Ener=7MeV

    c cell card

    1 1 -19.3 2 -3 -4 $ Au

    2 0 -100 #1

    100 0 100

    c surface card

    c radiation source

    1 px -2 $surface of the electron source

    2 px 0 $left surface of Au

    3 px 1 $right surface of Au and back surface of W

    4 cx 1 $radius of x-ray target

    c surface dividing

    30 kx 0 0.234567901 1

    31 kx 0 0.5625 1

    32 kx 0 1.040816327 1

    33 kx 0 1.777777778 1

    34 kx 0 3 1

    35 kx 0 5.25 1

    36 kx 0 10.11111111 1

    37 kx 0 24 1

    38 kx 0 99 1

    39 kx 0 1e33 1

    40 kx 0 99 -1

    41 kx 0 24 -1

    42 kx 0 10.11111111 -1

    43 kx 0 5.25 -1

    44 kx 0 3 -1

    45 kx 0 1.777777778 -1

    46 kx 0 1.040816327 -1

    47 kx 0 0.5625 -1

    48 kx 0 0.234567901 -1

    49 kx 0 0 -1

    c the cover for whole geometry

    100 so 100

    mode e p

    m1 79197 -1.0 $ Au

    sdef par=3 sur=1 pos=-2 0 0 vec=1 0 0 dir=1 erg=7

    imp:e 1 1 0

    imp:p 1 1 0

    cut:e j 1

    cut:p j 1

    F1:p 100

    F2:p 100

    Fs2 -30 -31 -32 -33 -34 -35 -36 -37 -38 -39 40 41 42 43 44 &

    45 46 47 48

    E2 1 19i 7

    ctme 10

    我們可以利用vised。exe觀察這個已經寫好的輸入文件的模型,如果書寫有誤,我們需要修改輸入文件。有錯誤時會導致vised。exe無法打開文件並被強制關閉。出現這種情況時,請看輸入文件的書寫規范,如空行是否多瞭或少瞭等。若打開後,觀察到明確的紅線,代表兩個物體分享瞭一部分空間,這在MCNP中是不允許的。在書寫復雜的模型時,vised.exe可以幫助我們確定寫出來的模型與我們想像的模型是一致的.建議用戶反復地觀察各個方向的視圖,從而確保輸入文件的正確性,不然計算出來的結果就很有可能是錯誤.

    Vised.exe是windows下的應用程序,我們雙擊它並用它選中我們已經書寫好的輸入文件,就可以觀察寫好的模型瞭,如下圖所示。

    圖 3 宏觀形狀

    圖 4 Au塊的形狀

    利用前面介紹的調用MCNP的方法就可以計算這個模型瞭。下一章幫助各位解讀輸出文件的內容。

    第3章 MCNP輸出文件解讀

    利用MCNP計算上面的輸入文件可以得到輸出文件為Xray7。o。利用Ultraedit可以看到計算結果,其中關於記錄信息的結果對我們最有用,如下.

    1tally 1 nps = 2958959

    tally type 1 number of particles crossing a surface.

    tally for photons

    surface 100

    2.90042E-01 0.0010

    其中nps代表一共運行瞭2958959個源粒子的輸運過程。

    Tally type 1 代表記錄類型為1,也就是number of particles crossing a surface。

    Tally for photons代表的是記錄的是光子。

    Surface 100 代表記錄面是第100號面。

    記錄結果是 2.90042E—01 0。0010.這個結果表示當有1個7MeV的電子轟擊1cm的Au時,會有0。29個能量大於1MeV(我們在cut中限定瞭能量)光子透過第100號記錄面,而這個數據的相對誤差為0。001。

    第二號記錄結果如下。

    1tally 2 nps = 2958959

    tally type 2 particle flux averaged over a surface. units 1/cm**2

    tally for photons

    areas

    surface: 100

    segment

    1 6.28319E+03

    2 6.28319E+03

    3 6.28319E+03

    4 6.28319E+03

    5 6.28319E+03

    6 6.28319E+03

    7 6.28319E+03

    8 6.28319E+03

    9 6.28319E+03

    10 6.28319E+03

    11 6.28319E+03

    12 6.28319E+03

    13 6.28319E+03

    14 6.28319E+03

    15 6.28319E+03

    16 6.28319E+03

    17 6.28319E+03

    18 6.28319E+03

    19 6.28319E+03

    20 6.28319E+03

    其中nps代表一共運行瞭2958959個源粒子的輸運過程。

    Tally type 1 代表記錄類型為2,也就是particle flux averaged over a surface,請註意它的單位是1/cm2.

    Tally for photons代表的是記錄的是光子。

    Surface 100 代表記錄面是第100號面。

    Segment 代表的是利用分割面分割後,100號面的各個子面的面積.由於我們使用的等立體角分割,所以各個子面的面積均相同。

    記錄結果如下。

    surface 100

    segment: -30

    energy

    1.0000E+00 0.00000E+00 0.0000

    1.3000E+00 1.58985E-06 0.0058

    1.6000E+00 1.25669E-06 0.0065

    1.9000E+00 1.01556E-06 0.0073

    2.2000E+00 8.05683E-07 0.0082

    2.5000E+00 6.50129E-07 0.0091

    2.8000E+00 5.29430E-07 0.0101

    3.1000E+00 4.41488E-07 0.0110

    3.4000E+00 3.71080E-07 0.0120

    3.7000E+00 3.09977E-07 0.0132

    4.0000E+00 2.59094E-07 0.0144

    4.3000E+00 2.11708E-07 0.0159

    4.6000E+00 1.80941E-07 0.0172

    4.9000E+00 1.59103E-07 0.0184

    5.2000E+00 1.31403E-07 0.0202

    5.5000E+00 1.04079E-07 0.0227

    5.8000E+00 8.97713E-08 0.0245

    6.1000E+00 6.86866E-08 0.0280

    6.4000E+00 4.88390E-08 0.0332

    6.7000E+00 2.82384E-08 0.0436

    7.0000E+00 1.05423E-08 0.0714

    total 8.26230E-06 0.0025

    surface 100

    segment: 30 -31

    energy

    1.0000E+00 0.00000E+00 0.0000

    1.3000E+00 9.48975E-07 0.0075

    1.6000E+00 7.33985E-07 0.0086

    1.9000E+00 5.56701E-07 0.0098

    2.2000E+00 4.35679E-07 0.0111

    2.5000E+00 3.35311E-07 0.0127

    2.8000E+00 2.73079E-07 0.0140

    3.1000E+00 2.10847E-07 0.0160

    3.4000E+00 1.72927E-07 0.0176

    3.7000E+00 1.50605E-07 0.0189

    4.0000E+00 1.17364E-07 0.0214

    4.3000E+00 9.87538E-08 0.0233

    4.6000E+00 8.08426E-08 0.0258

    4.9000E+00 6.28238E-08 0.0293

    5.2000E+00 5.29807E-08 0.0319

    5.5000E+00 3.92111E-08 0.0370

    5.8000E+00 3.08740E-08 0.0417

    6.1000E+00 2.20529E-08 0.0494

    6.4000E+00 1.53294E-08 0.0592

    6.7000E+00 5.91662E-09 0.0953

    7.0000E+00 1.29090E-09 0.2041

    total 4.34555E-06 0.0035

    其中surface 100

    segment: -30

    代表統計的是從記錄面100且從分割面30的內部(圓錐右葉的內部)通過的光子。同理

    surface 100

    segment: 30 —31

    代表的是統計的是從記錄面100且從分割面30的外部且從分割面31的內部通過的光子.

    最左邊一列代表的是能量,第二列代表的是概率,第三列代表的是第二列的相對誤差.

    1。0000E+00 0。00000E+00 0。0000

    1.3000E+00 1。58985E-06 0。0058

    1.6000E+00 1.25669E—06 0。0065

    對於這三行統計結果的解讀如下,在相應的記錄面內,

    1. 能量為0~1MeV的光子的註量為0,這是因為我們把能量小於1MeV的光子都殺死瞭(利用cut卡)。
    2. 能量為1~1.3MeV的光子的註量為1。58985E—6,單位是1/cm2,且是相對於一個電子。
    3. 能量為1.3~1.6MeV的光子的註量為1.25669E-06,單位是1/cm2,且是相對於一個電子。
    4. 以此類推。

    到此為止,我相信各位初學者已經初步瞭解瞭MCNP應用程序的調用方法、輸入文件的書寫格式、輸出文件的解讀方法等內容。有瞭這些知識後,各位用戶就可以較容易地通過閱讀官方使用手冊來提高自己在編寫MCNP輸入文件的能力瞭。希望這篇文檔對各位初學者在入門中給予瞭一些幫助。祝各位好運~!