您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > 蒙特卡洛方法模拟中子吸收2014.5.12
蒙特卡罗方法模拟中子吸收蒙特卡罗方法简介MonteCarlo方法:蒙特卡罗方法,又称随机抽样或统计试验方法,属于计算数学的一个分支,它是在上世纪四十年代中期为了适应当时原子能事业的发展而发展起来的。MonteCarlo名字的由来:MonteCarlo是摩纳哥(monaco)的首都,该城以赌博闻名Monte-Carlo,Monaco第二次世界大战期间,冯·诺依曼和乌拉姆两人把从事的研究与原子弹有关的秘密工作,以赌城名蒙特卡罗作为秘密代号来称呼。他们的具体工作是对裂变物质的中子随机扩散进行直接模拟。用赌城名比喻随机模拟,既风趣又贴切,很快得到了人们的普遍赞许和接受。为了求得圆周率π值,在十九世纪后期,有很多人作了这样的试验:将长为2l的一根针任意投到地面上,用针与一组相间距离为2a(l<a)的平行线相交的频率代替概率P,再利用准确的关系式:求出π值其中N为投计次数,n为针与平行线相交次数。这就是古典概率论中著名的蒲丰氏问题。alP2)(22nNalaPlMonteCarlo方法举例:Buffon投针实验dL一些人进行了实验,其结果列于下表:实验者年份投计次数π的实验值沃尔弗(Wolf)185050003.1596斯密思(Smith)185532043.1553福克斯(Fox)189411203.1419拉查里尼(Lazzarini)190134083.1415929为了得到具有一定精确度的近似解,所需试验的次数是很多的,通过人工方法作大量的试验相当困难,甚至是不可能的。因此,蒙特卡罗方法的基本思想虽然早已被人们提出,却很少被使用。上世纪四十年代以来,由于电子计算机的出现,使得人们可以通过电子计算机来模拟随机试验过程,把巨大数目的随机试验交由计算机完成,使得蒙特卡罗方法得以广泛地应用,在现代化的科学技术中发挥应有的作用。蒙特卡罗方法的优点1、能够比较逼真地描述具有随机性质的事物的特点及物理实验过程。2、受几何条件限制小。3、程序结构简单,易于实现。蒙特卡罗方法的主要应用范围•合作起源于Manhattan工程:利用ENIAC(ElectronicNumericalIntegratorandComputer)计算产额•目前国内外利用蒙特卡罗方法解决屏蔽问题很普遍。在粒子输运问题,统计物理,典型数学问题,真空技术,激光技术以及医学,生物,探矿等方面应用很广。常用的通用蒙特卡罗程序简介1)MORSE程序•较早开发的通用蒙特卡罗程序,可以解决中子、光子、中子-光子的联合输运问题。2)EGS程序•用蒙特卡罗方法模拟在任意几何中,能量从几个KeV到几个TeV的电子-光子簇射过程的通用程序包。3)MCNP程序•MCNP是美国LosAlamos国家实验室开发的大型多功能通用蒙特卡罗程序,可以计算中子、光子和电子的联合输运问题以及临界问题,中子能量范围从10-11MeV至20MeV,光子和电子的能量范围从1KeV至1000MeV。程序采用独特的曲面组合几何结构,使用点截面数据,程序通用性较强,与其它程序相比,MCNP程序中的减方差技巧是比较多而全的。MCNP程序的使用方法•要用MCNP程序来处理问题,需要按照MCNP规定的格式编写一个输入文件,该文件包括描述问题所必须的全部输入信息。文件采用卡片结构,每行代表一张卡片,文件由一系列卡片组成,对于任一特定的问题,只需用到INP全部输入卡片的一小部分。在这个文件中要根据要解决的问题给出发射粒子(即源的形状、位置,粒子的种类、能谱)、穿过的介质(包括化学成分、密度、几何形状)、要探测的计数(探测位置、能量区间)的信息,然后提交给MCNP程序进行处理即可得到结果,然后根据自己的需要从输出文件中撮自己感兴趣的信息。输入文件的组成•整个输入文件由3大块组成,块之间由2个有且仅有1行的空行分隔。第1块用来定义Cell,每个Cell都有标号、组成材料、材料密度、几何结构;第2块用来定义那些定义Cell所需要的Surface,每个Surface也都有一个唯一的标号,而面类型、面参数用来定义一个面的具体位置;第3个块用来定义整个实验装置的一些全局特性:比如源的性质、所有的材料、要测量的信息等等。举例应用•图1给出了我们要进行模拟的实验装置图,从“点中子源”发出的具有一定能谱的“中子”,在穿过“水介质”之后其能谱和运动方向都会发生一定的改变,通过放置在“水介质”背面的“探测器”可以得到“探测器”位置上的“中子”的能谱。标题卡栅元卡空行分隔符曲面卡空行分隔符数据卡仅一行,占用第1~80列。作为输出标题。定义构成整个系统的各个基本介质单元以及相应的物理信息。其它数据,包括问题类型、源描述、材料描述、计数描述,问题截断条件等。第1行:Asample这一行是一个注释性质的语句,里面的内容没有任何实际作用,仅仅是用来简单的向他人说明这个输入文件要解决的问题。第2行-5行:定义了4个Cell。Cell是MCNP输入文件中的基本单元,它代表实验装置中某一特定的物体,Cell的定义中包含了该物体的几何性质、物理性质。第1个1是这个Cell的编号,MCNP中每个Cell都用一个唯一的编号进行标识,这个编号将被用于输出结果文件中第2个1表示该Cell代表的物体所包含的物质是由m1所定义的物质-1.0表示该物质的密度为1.0g/cm34-5-6这一段用来定义该Cell的几何结构,具体表示的意思是:该Cell是标号为4、5、6的3个面共同所围的区域。这样cell1就是面4右半空间(4)、面5左半空间(-5)、面6的内部半空间(-6)相交的空间部分(见图2)。这就定义了一个密度为1.0g/cm3圆柱形的水柱。这个Cell和上面类似:标号为2,由面7、8、9包围而成。Cell2和Cell1不同的地方在于:这个Cell仅仅是用来标识探测器的位置,协助后面的f1:N7告诉MCNP要探测的空间位置,并不需要考虑粒子和它的作用。所以这个Cell在标号后面用0指出这个Cell不包含物质,是真空的(当然不用指出密度),它存在的作用是限定探测器的几何结构—一个圆柱形的探头(见图3)。这个Cell和Cell2也是类似的,开头的30表示这是一个标号为3的真空Cell,粒子并不会和它发生作用。1-2-3表示面1、2、3围成的一个圆柱区域,而#符号表示对Cell的空间取非操作,#1表示Cell1之外的空间,#2表示Cell2之外的空间,整个Cell3就表示由面1正半空间、面2负半空间、面3负半空间和Cell12之外的区域相交而成的区域(见图3)。这样Cell1代表实验中的水,Cell2代表探头,Cell3代表除了水和探头之外不会影响粒子传输的空气,既然不和粒子发生作用,为什么还要定义这样一个真空的Cell呢?请看下面Cell4的说明。这里面又出现了一个新的符号“:”,它表示对半空间取“或”操作,正好是前面3个Cell加起来之后它们之外的所有无限的空间。Cell4和Cell3除了几何形状上不同,似乎是完全一样的:都是不和粒子发生作用的“真空”,但是Cell4有更特殊的作用:粒子在真空的Cell3中不会发生反应,可以自由穿越;但是粒子一旦进入Cell4中,就表示这个粒子已经离开了我们的实验系统,它不会对我们的实验产生任何结果了----实际上宣判了这个粒子在计算过程中的死刑。通过这种设定可以使程序将对粒子的计算集中在会影响结果的实验系统(即#4)之内,提高计算效率。但是我们从上面两个Cell的定义中看不到这种区别,这样的区别是在imp中指定的,后面就可以看到。第6行:空行。有且仅有一行的空行,MCNP用来区分Cell段和Surface段的。第7-15行:定义了前面定义Cell时使用到的Surface。下面以面1、3为例解释一下面的定义方式。1表示该面的标号为1,接下来是面的类型,这里的px表示该面是垂直于X轴的平面,再接下来是影响面的具体位置的参数,参数的个数和意义视不同的面类型而不同。对于px只有一个参数,表示面与X轴的交点坐标。3表示该面的标号为3,cx表示这是一个以X轴为中心的圆柱面,cx类型的面只有一个参数用来设定圆柱面的半径。第16行:空行,作为Surface定义段的结束第17行:modenmode选项用来告诉MCNP程序在即将处理的模型中需要考虑哪些粒子的输运计算。n表示只考虑中子的输运过程,其它粒子一概略过。第18行:imp:n1110imp表示某一Cell对某一类粒子的“重要性”。在这个例子中imp:n表示设定Cell对中子的重要性。后面的每个参数和前面定义的Cell按顺序对应,如果其值为0就表示该种粒子在进入对应的Cell中的时候会消失,如果大于0而且对应Cell中含有材料则会发生反应。第19-27行:这几行是源的设定,可以设定很复杂的源,我们这里只介绍一下最简单的具有一定能谱的点源的设定。sdef:表示这行是用来设定源的,整个输入文件有且仅有一个par=0:表示这个源是发射中子的,你可以改变为1或者2来使源发射不同的粒子,但是要注意要和你在mode中设定的实验模式相符pos=500:对于点源,这表示源的位置在坐标为(5,0,0)的点上erg=d1:erg参数是用来设定发射粒子的能量的(单位是MeV),但是后面跟着的却不是能量的数值(如果直接跟一个确定的数值,表示源发射的是单能粒子),是“d1”,这涉及MCNP中除了常数之外的另外一种非常重要的数值指定方法:随机数ENERGY_MIN加上si1中N个递增的数值共可界定N个区间sp中的第一个数总是为0,表示从si1中第一个数值之前的区间(一直到ENERGY_MIN)不会被取值sp中剩下的n个数表示由si1中界定的n个区间中随机取值的相对几率。第28行:定义了一个标号为1(这个标号将用于定义Cell的时候为其指定材料)的材料。后面跟随的参数是2个一组,数量不定。前面一个参数表示原子的种类,形式为原子序数+3位质量数1001表示1H原子8016表示16O原子后面一个参数如果是正数表示该种类的原子在整个材料中的原子数比例,本例中是每2个H原子就有一个O原子,其实定义的就是一个水分子第29行:e0用来划分探测结果时使用的能量区间,最后会给出划分的每个能量区间里探测到的粒子数。0.198i10表示从0.1MeV到10MeV之间每隔0.1MeV划分一个区间。这是对0.10.20.3...9.89.910的简化写法,表示在0.110之间均匀的插入98个数值第30行:f表示探测,1表示探测某一个面上的总计数,n表示探测的粒子为中子,7是一个面标号,表示要探测的面。第31行:告诉MCNP当从源发射的粒子数达到100000时,停止计算,给出结果。如何执行MCNP程序•输入文件已经写了,可以提交给MCNP程序进行计算了。这里需要你会进行简单的DOS操作。•首先进入MCNP程序的根目录,为自己的输入文件建立一个文件夹,比如L,把输入文件保存在里面,起一个名字,比如inp。这里要注意文件夹和文件的名字不要太长,加起来不要超过6个,否则MCNP处理的时候会出问题。•再回到MCNP根目录,执行mcnpiprxzn=L\inp,就会进入MCNP程序啦。•先说一下mcnp执行时的几个参数的用途表示要处理一个输入文件,文件名通过n=filename的形式传入用来画实验装置几何结构图处理截面,截面是核反应中必须的数据表示启动粒子输运表示在计算结束后进入探测结果绘图模式•我们的程序加入了参数p,所以直接按回车它首先进行几何结构绘图模式,如下通过察看如果发现几何结构和我们预想的是一样的,那么输入end就可以离开绘图模式,开始进行计算了,计算时间视结构的复杂性和计算的粒子数多少而定•计算结束后,输入tally可以进入探测结果显示模式:至此,我们就通过MCNP解决了一开始提出的要求:一个点中子源,发出一定能谱的中子,经过水的散射和慢化后在后面的探测器上探测到的中子能谱。更多信息可以通过输出结果文件:输入文件名+o得到。谢谢!
本文标题:蒙特卡洛方法模拟中子吸收2014.5.12
链接地址:https://www.777doc.com/doc-5733438 .html