第八章 蒙特卡罗方法应用程序介绍
1,蒙特卡罗方法应用软件的特点
2,常用的通用蒙特卡罗程序简介
3,MCNP程序输入的描述
第八章 蒙特卡罗方法应用程序介绍
建立完善的通用蒙特卡罗程序可以
避免大量的重复性工作,并且可以在程
序的基础上,开展对于蒙特卡罗方法技
巧的研究以及对于计算结果的改进和修
正的研究,而这些研究成果反过来又可
以进一步完善蒙特卡罗程序。
1,蒙特卡罗方法应用软件的特点
通用蒙特卡罗程序通常具有以下特点,
1) 具有灵活的几何处理能力
2) 参数通用化, 使用方便
3) 元素和介质材料数据齐全
4) 能量范围广, 功能强, 输出量灵活全面
5) 含有简单可靠又能普遍适用的抽样技巧
6) 具有较强的绘图功能
2,常用的通用蒙特卡罗程序简介
1) MORSE程序
较早开发的通用蒙特卡罗程序, 可以解决
中子, 光子, 中子-光子的联合输运问题 。 采
用组合几何结构, 使用群截面数据, 程序中包
括了几种重要抽样技巧, 如俄国轮盘赌和分裂
技巧, 指数变换技巧, 统计估计技巧和能量偏
移抽样等 。 程序提供用户程序, 用户可根据需
要编写源分布以及记录程序 。
2) EGS程序
EGS是 Electron-Gamma Shower 的缩写,
它是一个用蒙特卡罗方法模拟在任意几何中,
能量从几个 KeV到几个 TeV的电子 -光子簇射过
程的 通用程序包 。 由美国 Stanford Linear
Accelerator Center提供 。 EGS于 1979年第一次
公开发表, 提供使用 。 EGS4是 1986年发表的
EGS程序的最新版本 。
3) MCNP程序
MCNP是美国 Los Alamos国家实验室开发
的大型多功能通用蒙特卡罗程序, 可以计算中
子, 光子和电子的联合输运问题以及临界问题,
中子能量范围从 10-11MeV至 20MeV,光子和电
子的能量范围从 1KeV至 1000MeV 。 程序采用
独特的曲面组合几何结构, 使用点截面数据,
程序通用性较强, 与其它程序相比, MCNP程
序中的减方差技巧是比较多而全的 。
3,MCNP程序输入的描述
MCNP的输入包括几个文件, 但主要的
一个是由用户编写的 INP文件, 该文件包括描
述问题所必须的全部输入信息 。 文件采用卡片
结构, 每行代表一张卡片, 文件由一系列卡片
组成, 对于任一特定的问题, 只需用到 INP全
部输入卡片的一小部分 。
MCNP输入文件中物理量的单位
长度 厘米
能量 MeV
时间 10-8 秒
温度 MeV( kT)
原子密度 1024 个原子 / 厘米 3
质量密度 克 / 厘米 3
截面 10-24 厘米 2
原子量 中子质量的 1.008664967倍
阿伏加德罗常数 6.023× 1023
1) 输入文件的基本形式
(1)信息块
信息块的卡片放在 INP文件中标题卡之前。信息块
给出了 MCNP的一些运行信息,信息块上各部分的意
思和运行行信息是一样的,当运行行信息与信息块中
所指定的信息相矛盾时,则忽略信息块中相应的信息,
而以运行行信息为准。
信息块是可选的,信息块的第一张卡片,必须在
第 1~ 8 列写上,MESSAGE:”,从第一张卡片的第
9~ 80 列到后续卡片的第 1~ 80 列都可填写运行信息。
在标题卡之前用一个空行分隔符结束信息块。
(2)初始运行的输入文件
信息块
空行分隔符 选择项
标题卡 仅一行,占用第 1~ 80 列。作为输出标题。
栅元卡

空行分隔符
定义构成整个系统的各个基本介质单元以及
相应的物理信息。
曲面卡

空行分隔符
定义组成栅元的曲面信息。
数据卡

空行分隔符
其它数据,包括问题类型、源描述、材料描
述、计数描述,问题截断条件等。
其它 选择项
(3)接续运行的输入文件
接续运行必须在运行行信息或信息块中给出 C项选择,
即 Cm,表示从 RUNTPE文件中读出第 m次转储的内容
接着运算,如果 m未指定,则读最后一次转储的数据。
如果不需要改变内容,则不需要接续输入文件,仅需
运行 RUNTPE以及在运行行加上 C选择。
信息块
空行分隔符 选择项
CONTINUE 写在第 1~ 8 列
数据卡

空行分隔符
只允许部分数据卡。( FQ,DD,NPS,CTME,
IDUM,RDUM,PRDMP,LOST,DBCN,PRINT,
KCODE,MPLOT,ZA,ZB,和 ZC)
其它 选择项
(4)卡片格式
INP输入文件的每一行(称之为一张卡片)
都限于使用第 1~ 80 列并构成卡片映象。大部
分输入卡片按行填写;然而,对数据卡允许按
列填写。 $ 符号为它所在那行数据的结束符,
在 $ 符号后面的内容作为注释,它可从 $ 符号
后面的任一列开始。
标题卡只占一行,整行都可填入用户需要
的信息,也可以是空行。但要注意在其它地方
使用空行是作为结束符或者分隔符。
输入文件中,在标题卡之后及最后的空行
结束卡之前的任何地方都可插入注释卡。注释
卡必须是字母,C”写在 1~ 5 列中的任意位置,
且至少用一个空格隔开后面的注释内容。
a) 行输入格式
栅元卡、曲面卡和数据卡的书写格式是相
同的。必须从 1~ 5 列开始填写这些卡片相应
的名字 (或编号 )和粒子标识符,后面填写用空
格分隔的数据项。如果 1~ 5 列为空,则表示
它是前一张卡片的继续卡。如果在一行的末尾
有一个用空格隔开的符号,&”,则表示下一
行是该行的继续卡,数据可填写在 1~ 80 列。
一个数据项必须在一张卡片上写完,不得跨到
下一张卡片上。完全空白的一行则为两组卡片
的分隔符。 对任何给定的带有粒子标识符的
类型卡只能有一张。需要整数的数据项必须填
写整数,其它数据可填写为整数或浮点数以及MCNP能读的数据。
为书写方便,可以使用四项书写功能,
A,nR功能,表示将它前面的数据重复 n次。
例如,2 4R 等同于 2 2 2 2 2
B,nI功能,表示在与其前后相邻的两个数之间,插入 n
个线性插值点。对于 X nI Y 的结构,如果 X和 Y是整
数,且 X- Y刚好是 n+1的整倍数,则产生标准的整数
插值,否则产生实数插值,但 Y值直接存储。
例如,1.5 2I 3.0 = 1.5 2.0 2.5 3 2.0可能不精确
而 1 4I 6 = 1 2 3 4 5 6 都是精确定整数
C,XM功能,它表示的数值为前面的数据乘上 X。
例如,1 1 2M 2M 4M 2M = 1 1 2 4 16 32
D,nJ功能,表示其后 n个数据项使用缺省值。
例如,DD,1( 缺省值 ) 1000 = DD J 1000
如果 nR,nI、及 nJ项中缺省 n,则假设 n= 1。
b) 列输入格式
列输入块的格式,
Si必须是 MCNP卡片名字,它们必须全部是栅元参数、
或者全部是曲面参数、或者全部是其它参数。
1~ 5 列 6~ 72 列
# S1 S2 … Sm
K1 D11 D12 … D1m
K2 D21 D22 … D2m
… …
Kn Dn1 Dn2 … Dnm
(5)粒子标识符
几个输入卡片都需要粒子标识符以区别中
子、光子和电子的输入数据。这些卡片是:
IMP,EXT,FCL,WWN,WWE,WWP、
WWGE,DXT,DXC,F,F5X,F5Y,F5Z、
PHYS,ELPT,ESPLT,CUT和 PERT。粒子
标识符由上述卡片名字后面的冒号、字母 N、
P或 E组成。
例如:中子重要性卡为 IMP:N
光子重要性卡为 IMP:P
(6)缺省值
MCNP的许多输入参数都有缺省值,因此
用户不需要每次都给出各个输入参量的值。当
缺省值符合用户要求时,便可不在输入文件中
指定。当省略某张输入卡时,则该卡上的全部
参数均使用缺省值。如果只想改变一张卡上的
某一个特定参量时,则它前面的参量仍需指明,
或者用 nJ方式跳过前面那些使用缺省值的参量。
例如:光子截断卡 CUT:P 3J -.10
表示前 3个参量使用缺省值,只改变第四项参
量的值。
(7)输入错误信息
MCNP对输入文件出现的错误作广泛的检
查,如果用户违反了输入说明的规定,将在终
端上以及输出文件中打印致命错误信息,
MCNP不再进行粒子输运计算,作业中断。
第一个出现的致命错误是真的,而后面的
错误可能不一定是真的,这取决于前面出现的
致命错误的情况。
若在 MCNP运行行上指定 FATAL项,则
MCNP忽略致命错误,照常运行。
对于 MCNP的警告信息,用户不应忽视,
应搞清楚它们的含义。
(8)检查几何错误
MCNP在处理输入文件的数据时,不能检
查一种非常重要的输入错误。即 MCNP无法查
出各栅元之间的重叠和空隙,只有当粒子丢失
时,才会发现几何错误。即使如此,可能仍然
无法准确判断错误性质。
2) 栅元描述卡
格式,j m d geom params
或,j LIKE n BUT list
j 栅元号,1≤ j ≤99999,写在第 1~ 5 列上。
m 栅元材料号,与材料卡( Mm)中的序号对应。
m = 0 为真空栅元。
d 栅元材料密度。正值为原子密度,负值为质量
密度。对于真空栅元,该项缺省,不填写。
geom 栅元的几何说明。由一系列带符号的曲面号经
过布尔运算组成。
params 任选的栅元参数说明。
n 另一个栅元的名字(编号)。
list 描述栅元 j和栅元 n之间差别的栅元参数。
在栅元的几何说明中,关于曲面的指向是
一个很重要的概念。假定曲面 S 的曲面方程为
f (x,y,z)= 0,则对于 f (x,y,z)> 0的区域对于曲面
S 具有正的指向;而对于 f (x,y,z)< 0的区域对
于曲面 S 具有负的指向。正指向的区域用 +S
表示,,+”号可不写;负指向的区域用 -S表示。
栅元用各相关曲面的布尔运算表示,布尔算符
包括 交 (用空格表示 ),并 (用冒号,表示)
和 非 (用 #表示)。缺省的运算顺序是先 非,
其次是 交,最后是 并,使用括号可控制布尔
运算的次序。
非 运算有两种形式,
(1) #n,n是某个栅元号,#n表示一个由不在栅元
n内的点组成的空间区域。
(2) # ( ---),括号内是对某一个栅元进行描述的曲
面 —— 栅元关系组,这一形式定义的几何区域
由不属于括号内描述区域的点组成的空间。
例如,3 0 -1 2 -4 $ 定义栅元 3
#3 $ 与下行相同
#(-1 2 -4)
在栅元卡上可定义栅元参数以代替在输入
文件中数据卡部分定义的栅元参数。格式为:
关键词=值。这儿允许的关键词是:带有粒子
标识符的 IMP,VOL,PWT,EXT,FCL、
WWN,DXC,NONU,PD和 TMP,以及关于
重复结构的 4个栅元参数卡,U卡,TRCL卡、
LAT卡和 FILL卡。
在 LIKE n BUT格式中,还有两个关键词
MAT和 RHO,分别表示栅元的介质号和密度。
例如,10 16 -4.2 1 -2 3 IMP:N=4 IMP:P=8
表示栅元 10由曲面 1的正面、曲面 2的负面和
曲面 3的正面的交集组成,填充质量密度为
4.2 克 / 厘米 3 的 16号材料。该栅元的中子重要
性为 4,光子重要性为 8。
例如,2 3 -3.7 -1 IMP:N=2 IMP:P=4
3 LIKE 2 BUT TRCL=1 IMP:N=10
3) 曲面描述卡
(1) 由方程定义曲面
格式,j n a list
j 曲面号,1≤ j ≤99999,写在第 1~ 5 列上。
如果曲面号前有 *号,则该曲面为反射面。
n 对应坐标变换卡 TRn,表示该曲面是在辅助坐
标系下描述的,而该辅助坐标系与基本坐标系
之间的关系由 TRn卡给出。如果没有坐标变换,
即曲面是在基本坐标系下描述的,则该项缺省。
a 曲面助记符。
list 曲面方程参数,1~ 10项,取决于曲面类型。
参见 MCNP手册,表 3.1。
(2) 用点定义轴对称曲面
类型为 X,Y或 Z的曲面卡是用坐标点描述曲面而
不是用方程系数描述。用这些卡描述的曲面必须是分
别关于 X,Y或 Z轴对称的,并且如果该曲面是由多叶
组成的,则指定的坐标点必须全都在同一个叶上。
格式,j n a list
j 曲面号,1≤ j ≤99999,写在第 1~ 5 列上。
n TRn卡的号,如果没有坐标变换,则该项缺省。
a 字母 X,Y或 Z。
list 1~ 3对点的坐标。
每一对坐标点定义这个曲面上的一个点。例如在
一张 Y卡上可以给出,
j Y y1 r1 y2 r2
其中,( ) 是第 i 点的坐标。给出的坐
标点对数的不同,描述的曲面类型也不同。
a) 给出一对坐标,则定义一个平面( PX,PY或 PZ)。
b) 给出二对坐标,则定义的是线性曲面( PX,PY,PZ、
CX,CY,CZ,KX,KY或 KZ)。
c) 给出三对坐标,则定义的是二次曲面( PX,PY,PZ、
SO,SX,SY,SZ,CX,CY,CZ,KX,KY,KZ或 SQ)。
当用两点定义一个锥面时,只生成一个单叶锥面。
曲面的指向与方程指定曲面( SQ除外)是一样的。
对于 SQ,远离对称轴的点具有正指向。而方程定义的
SQ可以自由选取指向。
22,iiii zxry ??
(3) 由三个点定义一般平面
MCNP对用户指定的 P 型曲面,将检查所给的数据个
数,若是 4项,则作一般斜置平面方程的系数理解,
若多于 4 项时,便作为三维空间点的坐标值理解。每
三个数定义空间一个点,MCNP将把它们转换成所需
要的曲面系数以产生平面,
AX+BY+GZ- D= 0
格式,j n P X1 Y1 Z1 X2 Y2 Z2 X3 Y3 Z3
j 曲面号,1≤ j ≤99999,写在第 1~ 5 列上。
n TRn卡的号,如果没有坐标变换,则该项缺省。
P 该曲面卡的助记符。
( Xi,Yi,Zi) 定义该平面的点坐标。
3) 数据卡
在信息卡、栅元描述卡和曲面描述卡之后输入的
是数据卡,数据卡可分为 10类,
(1) 问题类型
(2) 几何卡
(3) 减方差
(4) 源描述
(5) 计数描述
(6) 材料及截面描述
(7) 能量及热处理
(8) 问题截断条件
(9) 用户数据数组
(10)外围卡
数据卡中,标识符必须从前 5列开始填写。
(1) 问题类型( MODE)卡
如果不给出 MODE卡,则缺省形式是 MODE N,
即缺省值是中子输运问题。
格式,MODE x1 … xi
xi = N,中子输运。
P,光子输运。
E,电子输运。
(2) 几何卡
几何卡有以下几类,
助记符 卡片类型
VOL 栅元体积
AREA 曲面面积
U Universe
TRCL 栅元变换
LAT 格子
FILL 填充卡
TR 坐标变换
坐标变换卡格式,
TRn O1,O2,O3,B1,B2,B3,B4,B5,B6,
B7,B8,B9,M
n =变换号,1≤ n ≤999, *TRn表示
Bi是角度而非角度的余弦。
O1,O2,O3 =坐标变换向量的位移。
B1至 B9 =坐标变换的坐标旋转矩阵。
元素 B1,B2,B3,B4,B5,B6,B7,B8,B9
轴 x,x’ y,x’ z,x’ x,y’ y,y’ z,y’ x,z’ y,z’ z,z’
M = 1,表示位移是辅助坐标系原点
相对于基本坐标系的位移。
=- 1,表示位移是基本坐标系原点
相对于辅助坐标系的位移。
(3) 减方差
MCNP运用以下卡片来减小方差,
助记符 卡片类型
IMP 栅元重要性
ESPLT 能量分裂和俄国轮盘赌
PWT 次级光子权重
EXT 指数变换
VECT 方向矢量定义
FCL 强迫碰撞
助记符 卡片类型
WWE 权重窗的能量或时间间隔
WWN 权重窗的边界
WWP 权重窗的参数
WWG 权重窗生成器
WWGE 权重窗生成器的能量或时间间隔
MESH 重叠重要性网格权重生成器
PD 探测器贡献
DXC DXTRAN贡献
BBREM 韧致辐射偏倚因子
(4) 源定义
助记符 卡片类型
SDEF 通用源
SIn 源的信息
SPn 源的概率
SBn 源的偏倚
DSn 相关的源
SCn 源的注释
SSW 写曲面源
SSR 读曲面源
KCODE 临界源
KSRC 临界计算的源起始点
ACODE α特征值源
通用源卡,
格式
(5) 计数描述
下列卡片用来记录计算结果,
助记符 卡片类型
Fna 计数类型
FCn 计数注释
En 计数能量间隔
Tn 计数时间间隔
Cn 计数方向余弦间隔
FQn 计数打印层次
FMn 计数乘子
DEn/DFn 剂量能量 /剂量函数
EMn 计数能量乘子
助记符 卡片类型
TMn 计数时间乘子
CMn 计数余弦乘子
CFn 计数栅元标志
SFn 计数曲面标志
FSn 计数片段划分
SDn 计数片段的体积 /面积
FUn 子程序 TALLYX输入
TFn 计数涨落打印
DD 探测器和 DXTRAN诊断
DXT DXTRAN球参数
FTn 计数特殊处理
计数类型卡 Fna格式,
助记符 类型说明 Fn单位 *Fn单位
F1,(N,P,E) 面流 粒子 MeV
F2,(N,P,E) 面通量 粒子 /cm2 MeV/cm2
F4,(N,P,E) 体通量 粒子 /cm2 MeV/cm2
F5a,(N,P) 点或环探测器通量 粒子 /cm2 MeV/cm2
F6,(N,P,N,P) 平均沉积能量 MeV/克 109 J/克
F7,N 平均裂变沉积能量 MeV/克 109 J/克
F8,(P,E,P,E) 脉冲 MeV
+F8,E 沉积电荷 电荷 无
(6) 材料描述
这组卡片用于指定在栅元中所使用的材料成分和
使用那些截面数据。
助记符 卡片类型
Mm 材料成分
DRXS 离散反应截面
TOTNU 总裂变
NONU 裂变截断
AWTAB 原子量
XSn 截面文件
VOID 否定材料
PIKMT 次级光子产生偏倚
MGOPT 多群特征描述
材料成分卡 Mm格式,
Mm ZAID1 fr1 ZAID2 fr2 … keyword=value …
ZAIDi =材料中第 i 种成份的截面数据,
ZZZAAA.nnX或 ZZZAAA
ZZZ是元素的原子序号,AAA是原子量,
nn截面库标识号,X是数据分类。
fri =材料中第 i 种成份的原子的分量
(负值表示重量比例)。
AAA= 000表示自然元素。
(7) 能量和热处理方式指定
这组卡片用于控制 MCNP的能量以及其它物理状况。
助记符 卡片类型
PHYS 能量物理截断
TMP 自由气体模型热温度
THTME 热时间卡
MTm S(α,β) 材料卡
(8) 问题截断卡
这组卡片在初始运行或接续运行的输入文件中均
可使用,用于终止粒子的历史或中断计算。
助记符 卡片类型
CUT 截断粒子历史
ELPT 栅元能量截断
NPS 历史数截断
CTIME 计算时间截断
(9) 用户数据数组卡
MCNP在其 COMMON变量中定义了两个数组
IDUM(整数)和 RDUM(浮点数)供用户使用,每
个数组可存放 50个数据。这组卡片为这两个用户数组
提供输入数据。
a) IDUM,整型数组卡
格式,IDUM I1,I2,…, In ( 1≤n≤50)
b) RDUM,实型数组卡
格式,RDUM R1,R2,…, Rn ( 1≤n≤50)
(10)外围卡
这组卡片为用户提供方便,不影响 MCNP的计算。
助记符 卡片类型
PRDMP 打印及转储周期
LOST 丢失粒子
DBCN 调试信息
FILES 建立用户文件
PRINT 打印控制
MPLOT 运行期间打印计数
PTRAC 粒子径迹输出
PERT 微扰卡
蒙特卡罗中心服务器信息
IP地址,166.111.32.63
166.111.32.74
166.111.32.79
目前安装了 MCNP4C,以后将陆续安装 Egs4、
Geant4,Fluka等蒙特卡罗程序。
中心电话,62784552
联系人,范佳锦、武祯