MCNP-5A程序使用说明书_第1页
MCNP-5A程序使用说明书_第2页
MCNP-5A程序使用说明书_第3页
MCNP-5A程序使用说明书_第4页
MCNP-5A程序使用说明书_第5页
已阅读5页,还剩99页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

MCNP-5A程序使用说明书目录第一章MCNP的输入文件 51.1信息块 5初始运行 51.3接续运行 61.4卡片书写格式 71.5粒子标识符 91.6缺省值 9错误信息 91.8检查几何错误 10第二章栅元描述卡 112.1栅元描述的简写格式 12第三章曲面描述卡 12用方程定义曲面 123.2用几何定义曲面 163.3由三个点定义一般平面 173.4用宏体定义 18第四章数据卡 22问题类型(MODE)卡 22几何卡 224.2.1VOL栅元体积卡 234.2.2AREA曲面面积卡 234.2.3重复结构卡 234.2.4TRn坐标变换卡 264.3降低方差卡 274.3.1IMP栅元重要性卡 284.3.2ESPLT能量分裂与轮盘赌卡 284.3.3TSPLT时间分裂或轮盘赌卡 304.3.4PWT光子权重卡 314.3.5EXT指数变换卡 314.3.6VECT向量输入卡 324.3.7FCL强迫碰撞卡 334.3.8权窗卡 334.3.9WWP权窗参数卡 34权窗产生器卡 354.3.11MESH 364.3.12PDn探测器贡献卡 364.3.13DXCDXTRAN贡献卡 374.3.14BBREM轫致辐射偏倚 374.4源的描述卡 374.4.1SDEF通用源卡 384.4.2SIn源信息卡 424.4.3SPn源概率卡 424.4.4SBn源偏倚卡 424.4.5DSn相关源分布卡 464.4.6SCn源注释卡 474.4.7SSW写曲面源卡 484.4.8SSR面源读卡 494.4.9KCODE临界源卡 534.4.10KSRC临界计算的源点卡 534.4.11用户提供的子程序SOURCE及SRCDX 544.5记数指定卡 544.5.1Fna记数卡 554.5.2FCn记数注释卡 634.5.3En记数的能量卡 634.5.4Tn记数的时间卡 634.5.5Cn记数的余弦卡 644.5.6FQn打印层次卡 644.5.7FMn记数乘子卡 654.5.8DEn及DFn剂量转换卡 684.5.9EMn能量乘子卡 684.5.10TMn时间乘子卡 694.5.11CMn余弦乘子卡 694.5.12CFn栅元标记卡(记数类型1,2,4,6,7) 694.5.13SFn曲面标记卡 704.5.14FSn分段记数卡(记数类型1,2,4,6,7) 704.5.15SDn分段除数卡(记数类型1,2,4,6,7) 714.5.16FUnTALLYX输入卡 724.5.17子程序TALLYX用户提供的子程序 734.5.18TFn记数涨落卡 744.5.19DDn探测器诊断卡 754.5.20DXTDXTRAN卡 764.5.21FTn记数特殊处理卡 774.5.22FMESH重叠网格记数 784.5.23SPDTL栅格高速度记数 804.6材料描述卡 804.6.1Mn材料卡 814.6.2MPNn光核子核素选择 824.6.3DRXS离散反应截面卡 834.6.4TOTNU总裂变卡 834.6.5NONU裂变关闭卡 844.6.6AWTAB原子量卡 844.6.7XSn截面文件卡 844.6.8VOID取消材料卡 844.6.9PIKMT光子产生偏倚卡 854.6.10MGOPT多群特征卡 85能量及热处理方式的指定 864.7.1PHYS能量物理截断卡 864.7.2TMP自由气体模型热温度卡 894.7.3THTME自由气体模型热温度时间卡 904.7.4MTmS(α,β)材料卡 904.8问题截断卡 914.8.1CUT截断卡 914.8.2.ELPT逐栅元能量截断卡 924.8.3NOTRN中性粒子对点探测器的直接贡献 924.8.4NPS历史截断卡 924.8.5CTME计算时间截断卡 93用户数据数组 934.9.1IDUM整数数组卡 934.9.2RDUM浮点数数组卡 934.10外围卡 944.10.1PRDMP打印及转储周期卡 944.10.2LOST丢失粒子控制卡 95.3RAND随机数发生器卡 954.10.4DBCN调试参量卡 954.10.5FILES文件生成卡 974.10.6PRINT输出打印卡 984.10.7TALNP记数输出控制卡 1004.10.8MPLOT运行中图示记数 1004.10.9PTRAC粒子轨迹输出 100第五章输入文件卡片综述 1075.1输入卡 1075.2存储限制 110附录 110附录1 110附录2 110MCNP的输入包括几个文件,其中由用户自己输入的主要是一个INP(缺省名〕文件,该文件包括描述问题所必须的全部输入信息。对于任何一个特定问题,INP输入文件中只需用到全部卡片中的一小部分。全部输入数据卡片类型的见2-**和附录A。在这本手册中“卡”这个词被用来描述一行80个字符的输入。一些MCNP的输入项存在最大限值,这些都在2-**中列出。用户通过改变代码重新编译可以提高任一最大限值。MCNP的所有功能都应在弄懂的基础上谨慎使用。尤其是对于探测器记数及降低方差技巧的使用,更应如此。在使用MCNP之前,我们建议读者最好阅读第二章的相应部分。MCNP输入数据中使用的物理量的单位已经在第一章1-**中给出。第一章MCNP的输入文件输入文件(INP)可以有两种形式:初始运行和接续运行。无论哪种形式,INP文件中都包括一个可选择的信息块,用以替换或补充MCNP的执行行信息。1.1信息块可以在INP文件的最前面使用信息块的卡片。在没有执行行信息的计算环境下,信息块仅仅是给出MCNP一个执行信息的方法。其次,它也是一种避免重复地输入常用字符的简便方法。信息块的第一张卡片,必须在它的第l-80列上写有“message:”。字符的字母可以是大写的、小写的或者大小写混合的,在信息块与标题卡之间用一个空行作为块间的分隔符。空行分隔符之前的所有卡片都是接续运行卡。$和&符号为所在那行数据的结束符。信息块的语法和组成与**-**也讨论的常规的执行行信息一样。任何更改文件名、程序模块化的选择、执行行信息的键盘输入都比信息块冲突消息的优先级高。在信息块中INP=文件名的输入是不合理的。除了在执行行外其他地方不能更改INP文件名。1.2初始运行这一文件用于建立一个蒙特卡罗计算问题,对问题的几何结构、材料、记数要求等等给以描述,如果需要,便可使用信息块或执行行的信息直接运行。该文件按书写顺序如下:信息块卡选择项(空行分隔)标题卡栅元描述卡(空行分隔)曲面描述卡(空行分隔)数据卡(空行结束)推荐其它卡选择项选择项信息块后面的第一个卡片——标题卡不可省去,它限于一行,且占用1-80列,它作为MCNP各部分输出表的标题使用。标题卡可以写入任何用户需要的信息也可以是空行,还常常包含对特定问题的描述。但需要注意的是在其他地方空行都是分隔符或者结束符。字符的字母可以是大写的、小写的或者大小写混合的。数据卡后面不管有没有空行分隔符,MCNP都能运行,不同的是如果数据卡后有结束符,则MCNP将不再读后面的附加行(附加行存在)。一些用户希望保留与输入文件本身相关的附加资料,比如原文本信息或者问题的另一种描述,结束符就可以阻止读取这些附加行。1.3接续运行接续运行文件是用于继续计算一个早先被终止计算的问题,,例如一个程序先运行了2个小时,后来又接着运行了另外1小时。接续运行也可用于对早先终止计算的问题重新编辑打印计算结果。对于接续运行,必须在信息块或键入的命令行中给出选择运行条件c或者cn,以此指明当前是一个接续运行方式。接续运行必须在执行行信息中给出Cm,表示从RUNTPE文件中读出第m次转储的内容接着计算,如果m未指定,则读最后一次转储的数据。除c或者cn的选择之外,还需两个重要的文件:l)缺省名为RUNTPE的重启文件;2)缺省名为INP的接续运行输入文件。它是从早先的计算中生成的,内容包括几何描述数据、截面数据、问题的参量、记数要求及重新开始运行所必需的全部其它信息。此外,在一系列转储中还记录了该运行在各个阶段的结果。在PRDMP卡(page)的介绍中讨论了如何选择转储时间。下面我们将谈到,用户可从这些转储中的任何一次重新运行。在执行信息中选择cn或c的不同是,cn代表将结算中的转储数据直接存放在RUNTPE文件的固定数据部分后面,而c是在读出RUNTPE文件中最后一次转储内容接算。新的转储数据覆盖掉原有的转储内容,这样就避免了RUNTPE文件大小的迅速增长,RUNTPE文件的增大也可以由PRDMP卡写入NDMP来控制。该文件中的continue卡是必须有的,且从第一列写起,或者在选择的信息块和它的空行分割符之后。字符的字母可以是大写的、小写的或者大小写混合的。文件按书写顺序如下:信息块卡选择项(空行分隔)CNTIMUE数据卡...(空行结束)推荐其他卡选择项接续运行的输入文件中的允许使用的数据卡,其中的数据卡只是初始运行输人文件中所用数据卡的一个子集。接续运行数据卡可以是:FQ,DD,NPS,CTME,IDUM,RDUM,PRDMP,LOST,DBCN,PRJNT,KCODE,ZA,ZB和ZC。还有一个便捷的特性是,如果上述的文件都没有改变,而且计算环境允许执行行信息,就不需要接续运行输入文件了。只需要RUNTPE文件和在MCNP执行行中选择c即可。例如,我们将一个程序已经运行了一分钟,如果想要模拟更多的粒子,在执行行中执行c或cn。这样程序就从停止的地方继续开始运行,直到粒子寿命终止、处理完指定的总粒子数,或者手动停止,前提假设是在当前目录下存在初始运行的一个叫做RUNTPE的重启文件。完整的接续运行执行行是cm或者cnm,其中m指定了从哪次RUNTPE中的转储开始继续计算,如果m没有指定,则默认读取最后一个转储数据。如果前次运行是因处理完指定的总粒子数(见NPS卡〕而终止的,那么在接续运行时,必须给出NPS卡,增大需要处理的总粒子数NPS,该数应包括以前已完成的粒子数在内。在一次接续运行中的CTME表示还要运行多少分钟,而不是总共的累计时间。第四个卡片KCT关系着能否运行更多的KCODE循环,KCT和NPS一样,KCT表示了总共要运行的循环数,包括以前完成的循环。当接续运行文件中,NPS卡上给出的是负值时,将只是对前次转储的中间结果进行编辑输出,而并不增加计算历史。当输出结果丢失或者想用PRINT卡和FQ卡改变输出时使用这一方法是十分便利的。在初始运行中使用FILES卡时需多加注意。见FILES卡。1.4卡片书写格式 所有的输入都限制于80列以内,不区分大小写。大部分输入卡片按行填写,然而数据卡片也允许按列填写。“$”符号为它所在行数据的结束符号,在“$”符号后面的内容为注释内容。空白卡作分界符或终止符使用,数据输入文件由一个或多个空白卡分成几部分。输入文件中,在标题卡之后及最后的空白结束卡之前,任何地方都可插入注释卡。注释卡的第1-5列中必须标有字母“c”,且后面跟至少一个空格。注释卡仅在输入文件内容的原型输出部分印出,输出文件的其它任何部分不再出现。FCn卡也是作为注释用的,但它将作为记数类型n的表头文字印出,比如可作为记数的标题出现。SCn卡也是作为注释用的,但它将作为源概率分布n的表头文字印出。一个独立的数据卡必须在一张卡片上写完。1.行输入格式 栅元卡、曲面卡及数据卡的书写格式是相同的。第l-5列填写这些卡片相应的名字或序号和粒子标识符(与后面的数据输入之间用至少一个空格隔开),而且可以写在1-5列的任何地方。如果1-5列为空白,则表示它是前一张卡片的继续卡。另一种方法是,以&字符后加至少一个空格结束的一行表示下一行是继续卡。继续卡上的数据也是写在1-80列。空白卡作为输入文件的几个部分之间的分隔符。一个独立的数据项必须在一张卡片上写完。对于一个粒子标识对应的任一类型,只能用一张卡片描述。需要整数输入的地方必须填写整数。其他的数据类型,MCNP会根据所送入的变量类型进行适当的转换。实际上,任何非整数数据类型,只要是FortranE编译器可接受的都可以输入。为了方便书写,可以使用四种书写功能:1.nR功能,表示将它前面的一个数据再重复n遍(R表示重复)。例如,24R就相当于给出22222。2.nI功能,表示在与前、后相邻的两个数据之间插进n个线性插值点(I表示插值)。例如,14I6即相当于给出123456。3.xM功能,它表示的数值是等于它前面的数据与x之积,例如,112m2m2m 2m4m2m2m便相当于112481664128256。4.nJ功能,表示在它出现的卡片上,从它所在的位置开始跳过n项不指定数据,而使用缺省值。例如,下面两张卡片的作用是一样的。 DD.11000 DDJ1000 JJJ等效于3J。这一功能使你能够简单的跳到卡片上的特定项给出数据,而无需指明跳过这些项的值。当想要使用缺省值,而又记不清它是什么值时;使用这一功能是非常方便的。另一个例子是DBCN7J5082 上述四项功能对整数及浮点数的量都适用,而且可在任何输入部分使用。如果nR,nI及nJ项中的n缺省,则n=1。如果xM项缺省x,则是致命错误。处理这几个特殊相邻项的规定如下:1.nR前面必须放一个数或者放有由R或M所产生的数据项。2.nl前面必须放一个数或者放有由R或M所产生的数据项,而且后面还必须放有一个常数。3.xM前面必须放一个数或者放有由R或M所产生的数据项。4.nJ前面可放除了I以外的任何内容,也可什么都不放。例:13M2R=133313MI4=133.5413M3M=13912R2I2.5IR2M=112IRR=11112I43M=12341212I42I10=123468103J4R不合法14I3M不合法14IJ不合法2.列输入格式列输入格式对于栅元参数和源分布是特别有用的。按行排列的栅元重要性或体积可读性差,并且当用户增加或删除栅元参数时容易出错。用列输入格式,一个栅元的所有栅元参数是放在标有这个栅元名字的那行上。如果要删除某个栅元参数,用户只需删除栅元参数这一行,而不需在每一个栅元参数卡上寻找属于该栅元的数据项。对源描述,相应SI、SP及SB的数据逐个放在每一行上。源的选择(除了缺省的情况)在下一行输入清楚。不再需要&继续符,如果出现也会被忽略。用列格式,卡片名字逐个放在一个输人行上,在这些卡片名字下面按列列出相应数据项。“#”号是放在卡片名字这一行的l-5列的某个列上。卡片名字必须全部都是栅元参数卡片名字,或全部都是曲面参数卡片名字,或全部都是其它卡片名字。在一个输入文件内,如果一个卡片名字在一个#卡上出现,则在该输入文件内,这个卡片决不能再按行格式输入。如果在#卡上输入的数据比卡片名字长,第一个数据输入栅元或者曲面的编号。如果输入了任一栅元的编号,所有的编号都要输入。输入了栅元编号后,栅元就不用按照栅元描述卡里一样的顺序。当栅元标号缺省时,默认的顺序就是栅元描述卡中的顺序。同样规定适合于曲面参数,但如果只有一个曲面参数,曲面参数的列输入意义不大。在一个输入文件中,可有多个列输入块,如栅元参数的一个列数据块,曲面参数的列数据块等。如果使用了很多栅元数据选择项,则需要额外的列数据块。在每一列上的数据项,不需要求正好在相应卡片名字的下面,但是为了易读最好放整齐些。列格式是供原本就适合列格式,各列长度相同的输入数据使用的,当然不整齐的数据也可以使用列格式。如果一个长列挨着一个短列,短的那列用J补齐,用以排除列中出现不明确数据。列格式输入中也允许使用特殊功能项(R,M,I及J),但不如行格式中使用恰当。当然,它们按照竖直的理解而不是水平的。如果给出栅元和曲面的名字,特殊功能项的乘积,如9R和9M就不能使用了。使用列格式输入要特别注意以下几点:一个列输人块的书写格式如下:#S1S2…SmK1D11D12…D1mK2D21D22…D2m···KiDi1…Dij…Dim···KnDn1Dn2…Dnm1.#在l-5列。2.每行只有80列宽。3.除了随Ki变动以外,每一列j(Sj-D1j)表示一个行输入卡,这里的1小于n。4.Sj必须是MCNP的卡片名字。它们必须全部都是栅元参数、全部都是曲面参数或者全部其它。5.D1j-Dnj必须是Sj卡的有效项。但D1+1,j~Dnj当中的某些J项或者J项后面跟有一些空格的除外。6.如果Dij不是空格,则Di,j-1也必须不是空格。如果有必要使Di,j-1不为空格,则使用J功能。7.Si不能再在该输入文件的其它地方出现。8.Kj是选择项,它们是栅元的名字(程序编号),如果有任一Ki不是空格,则全部Ki也都必须不是空格。9.如果Sj是栅元参数卡片名字,那么,要填写Ki,则Ki必须是栅元名字。这个规定也适合曲面参数卡。否则,忽略Ki并且Ki不应出现。10.如果Ki不是空格,则Dij必须不是多重的数据项,如9R是不允许的。1.5粒子标识符在MCNP数据卡中,有许多卡如IMP、EXT、FCL、WWN、WWE、WWP、WWCE、DXT、DXC、Fn、FSX、FSY、FSZ、PHYS、ESPLT和CUT,可以用粒子标识符区别其对中子起作用还是对光子起作用。粒子标识符是由上述卡片名字后面的冒号、字母n、p或e组成。例子标识符后面至少跟一个空格。例如,输入中子的重要性卡,用imp:n;输入光子的重要性卡,用imp:p。为多种粒子指定同样的数据,可以用一张卡片代替多张。,粒子标识符跟在包含记数数值的卡名后面。例如,*F5:n表明对中子点探测器进行能量记数。在热记数中的例子中,可能出现双粒子标识符。句子F6:n,p表示中子和光子的联合热记数。1.6缺省值MCNP的很多输入参量是有缺省值的,它们列在第四章中。因此用户并非每次都必须明确给出各个输入参量的值。当缺省值符合用户要求时,便可不在输入文件中指定。当省略某张输入卡时,则该卡上的全部参量均使用缺省值。但是当只想改变一张卡片上的某一特定缺省参量时,那么在它前面的参量仍需指明,或者用nJ方式跳过前面那些使用缺省值的参量也可。例如在光子截止卡片使用CUT:P3J-.10可以简便的跳过前三个使用缺省值的参数,改变第四个参数的数值。MCNP对输入文件中可能出现的错误作了广泛地检查,当存在违反了基本规定的错误时,将在终端和OUTP文件中给出致命性(FATAL)错误的信息,并且MCNP将不再做粒子输运计算,中断作业。第一个出现的致命性错误是真的;其后的一系列错误信息有的是真的,有的也可能是假的,这要根据前面出现的致命性错误的情况而定。若在MCNP执行命令行上指定了FATAL项,则MCNP忽略致命性错误,而硬性作输运计算。用户采用这种作法应极其慎重。MCNP还给出许多警告性的而不是致命的错误信息,程序将继续执行。警告是试图告知用户非常规参数的输入或运行条件,这些都需要进一步的注意。但对这类错误,用户也不应忽视,在进行重要计算之前,应当搞清楚它们的意义,再作决断。除了致命错误和警告信息以外;MCNP在遇到任何严重损坏之前(如被零除)立即出现“BADTROUBLE”信息,并中断运行。1.8检查几何错误MCNP在处理INP文件的数据时,不能检查一种非常严重的输入错误。只有在粒子丢失时,才能检查出栅元的重叠及栅元之间的孔隙。但就在这种情况下,准确的错误性质可能仍然不清楚,因此在正式计算之前,应先检查错误。方法如下:一种有效的方法是利用MCNP的几何画图功能;从几个不同的方向及各种尺寸来看一看这个几何系统,从中发现错误,以便纠正。另一种检查几何错误的方法是建立和运行一个简短的问题,对这个问题,用外源的粒子轨迹注满这个系统。即用一个球将整个几何系统包起来;该球面为球面型源,进行一次短时间的试算,使源粒子轨迹注满该几何系统,便可将几何描述不当之处暴露出来。此时必须使球面以内区域的重要性均不为“0”。为了减少查错运行时间,可使用VOID卡去掉各栅元中的材料(包括FM卡中使用的任何截面均被除去)。对INP文件需作如下改动:(1)增加一个VOID卡,这个卡将废弃各栅元中的材料说明使全部栅元变为真空,并去掉任何的FM卡。(2)增加一个栅元和一个大的球面,这个球面包围整个几何系统,并且这个系统的外边界栅元被这个新的曲面分成两个新的栅元:一个是这个新球面和该几何系统之间的栅元,其重要性不为零;另一个是新球面的外边界空间,这个空间是新的外边界栅元。实际上,最好使非零重要性相等。如果这个系统是一维或二维无限,使用一个或一个以上平面代替一个球。(3)源的说明改为:sdefsur=mnrm=-1,其中m是在上面第二步中新增加的球面号。如果新的曲面是一个平面,则必须用POS和RAD或者X、Y及Z的源描述方法指定要使用的部分。由于没有碰撞,一个短时间运行将产生大量粒子轨迹。如果有几何错误,将会引起某些粒子丢失。当一个粒子首次丢失时,不管是在一个具有VOID卡的特殊运行还是一般运行,都要重新运行这个历史以便在OUTP文件上产生某些特殊的输出。在重新运行期间打印事件记录。这个记录将显示跨越的所有曲面,并将告诉你这个粒子在几何上走向坏点的径迹。当这个粒子再次丢失时,打印在那个坏点上粒子的状态描述。这样,你可从输出结果上推出引起粒子丢失的原因。如果粒子丢失的原因仍然不清楚,一般用的有效方法是画出几何图形,几何图形的坐标原点放在丢失粒子的坐标点上,然后将绘图平面的水平轴选为丢失粒子的方向余弦(U,V,W)。这样错误的原因很可能就在图上出现破折号,或者画图和所想要的图之间有些不一致。第二章栅元描述卡格式:jmdgeomparams或者jlikenbutlistj:栅元号,1≦j≦99999。如果栅元有变换,1≦j≦999。m:栅元的材料号,它是材料卡(Mm)中相应材料的序号。真空栅元,m=0。d:栅元材料的密度。填入正值时,表示是原子密度(单位为1024个原子/cm3);填入负值时,则是质量密度(单位为g/cm3)。对于真空栅元,该项不填,直接列出下一项内容。geom:栅元的几何描述。它列出界定该栅元的所有曲面号(带有数符,表示坐向),及描述这些曲面所定义的曲面之间关系的布尔算符。如果定义该栅元要用到一个虚设曲面,则它必须作为界定该概元的一个曲面列出(同样带有坐向数符)。param:任选的栅元参数说明,其形式为:关键词=数值。n:另一个栅元的序号。list:一组关键词=数值,它说明定义的n栅元和m栅元之间的不同属性。 在几何描述中,一个曲面的坐向是非常重要的概念。所列带有符号的曲面,恰好规定了该栅元选用的是正的或负的坐向区域。对于曲面S有正的坐向,用+S表示,“+”号可不写。布尔算符包括交(Intersection),用一个空格表示;联(Union),用“:”号表示;余(Complement),用“#”表示。括号用来控制运算顺序。括号和算符也起到分隔的作用,每一个括号(‘(’或‘)’)等价于一个空格。默认布尔运算的次序为先#,其次是交,最后是联。紧跟着“#”,没有括号的数字,认为它是栅元号。这是对一个栅元几何描述的简写。例如:30-12-4$定义栅元3#3$与下行相同#(-12-4)对一个简单栅元(没有联或余运算符)的描述,只用一个空格以分隔界定描述该栅元的曲面即可。参看第一章的几何部分和第三章的MCNP中对栅元进行几何描述的完整解释。栅元参数可以通过在栅元卡上的指定而代替在数据卡上的指定。空格等价于等号。如果某栅元的参数已在该栅元卡上指定,则不能再在数据卡上指定。允许部分栅元的参数在栅元卡上指定,而另一部分栅元的参数可在数据卡上指定。指定形式为:关键词=数值。可定义的关键词有:imp,vol,pwt,ext,fcl,wwn,dxc,nonu,tmp及与重复结构描述功能有关的4个栅元参数卡:U卡,TRCL卡,LAT卡和FILL卡。和其他栅元参数卡一样,这四个卡放在输入文件的数据卡部分。建议将它们放在每个栅元卡中的栅元描述后面。尤其是TRCL卡和FILL卡的输入可能很长又互相关联,如果放在栅元卡将会简化它们的概念。在简写格式LIKEnBUT中用关键词MAT和RHO,分别表示栅元材料号和密度。这两个关键词只能在简写格式LIKEnBUT后面使用。通常,在栅元描述中栅元材料号和密度分别在栅元卡的第二和第三项。TMP卡和WWN卡有两种输入形式。一种是关键词=数值,可以使用TMP1=数值TMP2=数值……,或者当TMP关键词后面跟着栅元的所有温度(按照与THTME卡的时间相对应的顺序)则需要特殊语法。WWN卡的格式是类似的:WWN1:n=数值或者WWN:n后面跟着栅元一定能量间隔的权重下限。这里,栅元10中含第16号材料,材料密度为4.2gm/cm3。该栅元由三个曲面1的正面、曲面2的负面和去曲面3的正面的交集组成。中子重要性为4,光子重要性为8。栅元10中的中子进行负X方向拉伸系数为0.4的指数变换。在输入栅元卡时还要注意以下几点:1.避免过于复杂的栅元。在MCNP中,许多简单栅元的几何构成的问题解决起来比少数几个复杂栅元更快。2.在对一个栅元进行几何描述时不要使用不常用的复杂操作符去添加不必要的曲面。额外的曲面会让程序运行起来变慢而且可能破坏体积和面积计算的必要条件。3.利用MCNP的几何画图功能来检查几何错误。4.用外源的粒子轨迹注满这个系统来检查几何错误。5.如果添加或移动栅元,更改所有的栅元参数卡。如果栅元参数卡使用列输入格式则可降低这个难度。另一种选择是,在栅元卡上定义栅元参数的数值然后彻底除去栅元参数卡。2.1栅元描述的简写格式LIKEnBUT对于重复结构的描述是非常有用的。除了在list中指定的属性外,栅元j中继承了栅元n的所有属性。在输入文件INP中,栅元j的栅元卡必须在栅元n的栅元卡前面。在but后面出现的任何卡的名字均为栅元卡上的一个栅元参数,并且它只能在栅元卡上出现。不能在输入文件INP中数据卡的任何卡上出现。例如:23-3.7-1IMP:N=2IMP:P=43LIKE2BUTTRCL=1IMP:N=10这表明栅元3除了位置不同(TRCL=1)和不同的中子重要性之外其他方面都和栅元2相同。也就是说栅元3和栅元2的材料号、密度和定义、光子重要性都是相同的。第三章曲面描述卡格式:jnalistj:曲面编号,l≤j≤99999。对于反射曲面和白边界,只需在曲面描述卡的曲面序号前分别加上一个“*”和“+”。如果用经TRCL变换的曲面定义栅元,l≤j≤999。n:缺省表示没有坐标变换;n>0,TRn卡的指定号码。n<0,指定曲面j是曲面n周期性曲面。a:曲面助记名(见表2-1)。list:按照规定次序给出的描述该曲面的数据项(1-10项)。表2-l列出了曲面的助记名、类型、方程及应给出的数据项次序。在曲面卡上要用方程来描述一个曲面,首先要从表2-1中找出所需的曲面,然后根据其方程的特定形式算出所需的系数,按照上面的书写格式将它们依序写在一张卡片上。在一定条件下曲面能够用特定的几何点定义,见2.3.2和2.3.3。曲面也可以由宏体定义,见2.3.4。如果一个曲面在点(x,y,z)的计算值是正的,则称该点对于这个曲面具有正的坐向。一个曲面的表达式是表2-l中曲面方程的左边。位于球、柱、锥及环的正坐向是这些曲面的外边。对于垂直坐标轴的平面PX、PY、PZ具有正的坐向的点,分别是x,y或z值大于相应平面截距的那些点。对P、SQ及GQ曲面,用户提供这个表达式的全部系数,于是就能随意确定这个曲面的坐向。这与其它情况不同,其它情况曲面的坐向即使是任意的,也是由表达式的形式唯一确定的。因此,通过一个曲面坐标变换,PX、PY或PZ曲面可能必须由P曲面代替以防止这个曲面的坐向相反。反射曲面要在曲面号前面加“*”。当粒子打在这样的曲面上时,便按镜面反射后继续输运。白边界要在曲面号前面加“+”。如果问题中存在反射面或者白边界就不使用探测器和DXTRAN球。存在反射面的记数问题归一化不同。如果输入的第二项n负的,那么曲面j就是关于曲面n周期化曲面。需要注意以下限制:曲面j和曲面k都是平面。周期性平面不允许曲面变换。周期性栅元可以是无限的或者上下由平面界定,该平面可以是反射或者白边界,但不可以是周期性的。周期性平面只能界定其他周期性平面或者上下界面来界定。周期性平面的一边一定有一个零重要性栅元。所有的周期性平面都有一个旋转向量法线,指向几何体的上面和下面。不能使用下一次事件估计例如探测器和DXTRAN球。例1:jPY3这是一个法线与y轴平行,在y=3的平面。所有y>3的点都在曲面的正向。例2:jK/Y002.251这是一个顶点坐标在(x,y,z)=(0,0,2),对称轴平行于y轴的圆锥。圆锥的夹角的切线t是0.5(注意输入的是t2),且只使用了圆锥的正方向的圆锥面。圆锥体外的点都是正的。表3.1MCNP曲面描述卡注:方程1.方程2.方程3.方程4.方程5.方程6.方程7.方程8.0-12-23.46439这是半径为1cm的圆柱面,其对称轴在垂直与X轴的一个平面上,该平面在X轴上的截距为6cm。与X轴相距2cm的地方绕X轴从Y轴向Z轴旋转30o角。在柱外的点具有正的坐向。先要算出这十项数据并不是很简单的事情。我们可以用另一种方式给出。建立一个辅助坐标系,将柱面的对称轴定义为辅助坐标系的X轴。那么该柱面在辅助坐标系下描述是很简单的。然后再相应给出一张TRn卡,用来定义基本坐标系与辅助坐标系的关系,MCNP将实现曲面描述的转换,将其从辅助坐标系转换成基本坐标系下的描述形式。在辅助坐标系下这个曲面描述如下:j7cx1*TR761-1.73203060TX、TY及TZ输入卡描述的是椭形环面(4阶曲面),其旋转对称轴分别平行于X轴、Y轴及Z轴。图2-1a描述一个TY环面。注意到输人参数、a、b、c给定一个在(r,s)柱坐标系统围绕S轴旋转的椭圆(图2-1b)。其原点位于原坐标系的点()处。这样,椭形环面方程可写成:对于TY型环面,当<c时,出现退化情况,如果0<a<c,得到的是外曲面(图2-1c);-c<a<0时,得到的是内曲面(图2-1d)。椭圆环面的坐标变换是局限于辅助坐标系的每个轴都要平行于基本坐标系的一个轴。3.2用几何定义曲面格式:jnalistj:曲面号,1≦j≦99999。如果曲面定义由TRCL变换来的栅元,则1≦j≦999。n:TRn卡的号,没有坐标变换缺省。a:字母X、Y或Zlist:一至三对坐标。类型为X、Y及Z的曲面卡是用坐标点描述曲面而不是用方程系数来描述。用这些卡描述曲面必须是分别关于X、Y、Z轴对称,并且如果这个曲面是由一叶以上组成的,则指定的坐标点必须全都在同一个叶上。每一对坐标点定义该曲面上的一个几何点。例如在一张Y卡上可以给出:jYy1rly2r2这里是点i的柱坐标。给出的坐标对数不同,描述的曲面类型也不同:(1)给出一对坐标,则定义的是平面,即PX、PY或PZ。(2)给出两对坐标,定义的是线性曲面,如PX,PY,PZ,CX,CY,CZ,KX,KY或KZ。(3)给出三对坐标,则定义一个二次曲面,包括PX,PY,PZ,SO,SX,SY,SZ,CX,CY,CZ,KX,KY,KZ或SQ。当用两个点定义一个锥面时,只生成一个单叶锥面。用这个规定所确定的这些曲面(SQ除外)的坐向与由方程指定曲面得到的坐向是等同的。而对SQ来讲,是这样定义坐向的,即离对称轴足够远的点有正的坐向。这与方程定义的SQ不同;用方程定义的SQ可自由选取坐向。例1:jX753243描述的是关于X轴对称的曲面,该曲面将通过三个点:(x,r)=(7,5)、(3,2)及(4,3)。这个曲面是有两个叶的双曲面。MCNP将对此曲面进行转换,给出标准形式:jSQ-.0833331100068.52083-26.500例2:jY121334这描述了Y=1和Y=3两个平行的平面,因为这两个两个曲面不存在交点,故出现致命性错误。例3:jY304150这描述的是一个以(0,4,0)为中心,以1cm为半径的球。例4:jZ102134这个曲面是不被接受的,因为给出的点在双曲面x2+y2-7z2与上一个曲面方程一样,而且可以接受,这是因为给出的所有坐标点在双曲面的右叶上。例5:101-23$cell11Y-32212Y2333423Y213142最后一个例子定义了一个由一叶锥面、双曲面及一个椭球面界定的栅元。这三个曲面定义的是关于y轴对称的环形栅元,该栅元的截面如图2-2所示。第一个曲面通过点(-3,2)及(2,1),第二个曲面通过点(2,3)、(3,3)及(4,2)。由点(2,1)、(3,1)和(4,2)定义最后一个曲面.这些几何点坐标均指的是(y,r)。图2-2栅元的截面MCNP指出曲面1是一叶锥面,曲面2是一个椭球,曲面3是一叶双曲面。当使用PRINT输入卡或执行行选择时,打印出各种曲面的标准方程的系数。例如,查看输出文件,便可看到曲面3经MCNP转换成标准曲面形式:SQ1-1.51000-0.62502.503.3由三个点定义一般平面格式:jnPx1y1z1x2y2z2x3y3z3j:曲面号,1≤j≤99999。如果是重复结构,1≤j≤999。n:n>0,TRn卡的号;n<0,曲面j是曲面n的周期性曲面;没有坐标变换缺省(xi,yi,zi):定义该平面的点坐标。MCNP对用户指定的P型曲面,将检查所给的数据个数,若是4项,则作为一般斜置平面方程的系数理解;若多于4项时,便作为三维空间点的坐标值理解,每三个数定义一个空间点。由MCNP把它们转换成平面方程系数以产生平面:AX+BY+CZ-D=0所产生的平面方程系数遵循如下原则:(1)应使坐标原点关于该平面有负坐向;(2)当该平面通过坐标原点时(D=0),则应使得点(0,0,∞)对该平面有正坐向;(3)若上两项都无法做到(即D=C=0),则应使点(0,∞,0)对该平面有正坐向;(4)若上三项都无法做到(即D=C=B=0),则应使点(∞,0,0)对该平面有正坐向;倘若第四项也失败,那么三个点给在一条直线上,则将印出警告信息。3.4用宏体定义另一种定义栅元和曲面的方式是使用宏体。这里的组合几何体与ITS代码中的类似。宏体可以由标准栅元和标准曲面混合而成。宏体的表面可以分解成一系列曲面方程,而这些面都按照先定的次序单独赋值。赋值的数字由用户选定,后面跟着一个小数点和1,2,……这些面可以用作记数、记数分割、其他栅元的定义、SDEF源等等。但不能在SSR/SSW卡、曲面标志卡、PTRAD和MVTAL卡中使用。几何体内部的空间关于宏体的曲面和体的所有面是负的。几何体外面的空间都是正的。多面体表面的正负是由母体宏体中的正负号确定。当这个面出现在其他栅元的描述中,它保持赋值的正负性不变,并且要加上适当的注释。参看后面的例子。下面列出了可使用的几何体以及它们的完整描述:BOX任意方向的长方体RPP长方体SPH球RCC直圆柱RHP或HEX直六棱柱REC直椭圆柱TRC直截锥ELL椭圆体WED楔状体ARB任意多面体BOX::任意方向为直角的盒子(所有角都是90°)BOXVxVyVzA1xA1yA1zA2xA2yA2zA3xA3yA3z其中VxVyVz=角的坐标(x,y,z)A1xA1yA1z=第一个面的向量A2xA2yA2z=第二个面的向量A3xA3yA3z=第三个面的向量例子:BOX–1–1–1200020002一个以原点为中心,棱长为2cm,各面平行于主坐标轴的立方体。RPP:长方体RPPXminXmaxYminYmaxZminZmax例子:RPP–11–11–11和上例的立方体相同。SPH:球SPHVxVyVzR其中VxVyVz=角的坐标(x,y,z),R=半径RCC:直圆柱RCCVxVyVzHxHyHzR其中VxVyVz=底面中心(x,y,z)HxHyHz=圆柱轴向量R=半径例子:RCC0-5001004一个以y轴为轴,底面为y=-5,半径为4cm的10cm高直圆柱。RHP或HEX:直六棱柱(和ITS格式不同)RHPv1v2v3h1h2h3r1r2r3s1s2s3t1t2t3其中v1v2v3=六棱柱的底面中心坐标h1h2h3=从下底面指向上底面的向量,对于以z为轴,高度为h的直六棱柱,h1,h2,h3=00hr1r2r3=从中心轴指向第一个面中心的向量s1s2s3=从中心轴指向第二个面的中心的向量t1t2t3=从中心轴指向第三个面的中心的向量例子:RHP00-4008020 一个关于z轴对称,底面在z=-4,高8cm的直六棱柱。它的第一个面的法线在y轴,y=2。REC:直椭圆柱RECVxVyVzHxHyHzV1xV1yV1zV2xV2yV2z其中VxVyVz=圆柱底面中心的坐标(x,y,z)HxHyHz=圆柱轴向的高度向量V1xV1yV1z=椭圆长轴向量(H1向量的法向)V2xV2yV2z=椭圆短轴向量(H、V1向量都成直角)如果输入项不是12项而是10项,那么第10个输入项为短轴的长度,短轴方向由H和V1的叉积确定。例子:REC0-5001004002这是一个以y轴为对称轴,高度为10cm的直椭圆柱。底面中心在(0,5,0),长轴长4cm,x轴方向,短轴长2cm,z轴方向。TRC:直截锥TRCVxVyVzHxHyHzR1R2其中VxVyVz=直截锥的底面中心坐标(x,y,z)HxHyHz=截锥的轴向高度向量R1=截锥下底面半径R2=截锥上底面半径例子:TRC-500100042一个以x轴为对称轴的10cm高直截锥,下底面中心(-5,0,0),半径4cm;上底面中心(5,0,0),半径2cmELL:椭圆体ELLV1xV1yV1zV2xV2yV2zRm如果Rm>0:V1xV1yV1z=第一个焦点坐标V2xV2yV2z=第二个焦点坐标Rm=长轴长度如果Rm<0:V1xV1yV1z=椭圆中心坐标V2xV2yV2z=长轴向量(模=长轴长度)Rm=短轴长度例子:ELL00-20026ELL000003-2一个以原点为中心的椭圆,长轴长度6cm,z轴方向。短轴长度4cm,x轴方向。WED:楔状体WEDVxVyVzV1xV1yV1zV2xV2yV2zV3xV3yV3z这里VxVyVz=顶点坐标V1xV1yV1z=三角形底面第一个边的向量V2xV2yV2z=三角形底面第二个边的向量V3xV3yV3z=高度向量直角楔状体,是由向量V1、V2定义的直角三角形底面和高度向量V3构成的。其中V1、V2、V3三个向量互成直角。例子:WED00-64000300012一个高12cm的楔,顶点在(0,0,-6)。三角形底面是一个直角三角形,x方向的边长4cm,y方向的边长3cm,斜边长5cm。ARB任意多面体ARBaxayazbxbybzcxcycz...hxbyhzN1N2N3N4N5N6必须输入ARB的八个顶点坐标(每组三个数据),尽管一些可能用不上,甚至一组也用不上。这八组数据后面还有六项输入N,遵循以下规定:每一项都是四个阿拉伯整数来定义ARB的一个面,这四个数字分别代表这个面上角的顶点。例如,输入1278就定义了这个平面由第1、2、7、8角的坐标来界定。但是我们知道三个点就可以定义一个平面,所以这个例子中只用1、2、7角就可以确定平面。从这个平面到给出的第四个角顶点(也就是顶点8)是由MCNP算出的。如果距离的绝对值大于1.e-6,系统就会给出错误信息,并且将这个距离和应该在这个平面上的点的坐标(x,y,z)打印在OUTP文件中。如果第四个数字是0,这个点就被忽略了。对于一个四面体ARB,需要4组非零的四位整数来定义,并且四位整数的最后一个为0(因为每个面上只有三个角顶点);对于一个五面体ARB,需要5组非零的四位整数,六面体ARB则需要6组非零的四位整数。描述一个ARB一共需要30个输入项,个数不对MCNPA会给出错误信息,对于四面体ARB最后两组四位整数是0,五面体ARB最后一四位整数是0。例子:ARB-5-10-5-5-1055-10-55-1050120000000000123412501350245034500这是一个五个面的多面体,顶点坐标分别为(-5,-10,-5),(-5,-10,6),(5,-10,-5),(5,-10,5),(0,12,0),各面分别由角1234、角125……构建而成。几何体的面都按顺序编了号,因此可以在其他MCNP卡上使用。BOX和RPP在一个维度上的尺寸可以是无限大的,在这种情况下跳过这两个面,余下面的编号加2。RHR在轴向可以是无限大的,这时就不存在第7个和第8个面。下面是每个几何体表面编号的次序。在几何绘图器中用MBODY=OFF就可以看到表面编号的图解。BOX:1.与向量A1xA1yA1z终点垂直的平面2.与向量A1xA1yA1z起点垂直的平面3.与向量A2xA2yA2z终点垂直的平面4.与向量A2xA2yA2z起点垂直的平面5.与向量A3xA3yA3z终点垂直的平面6.与向量A3xA3yA3z起点垂直的平面RPP:1.Xmax所在平面2.Xmin所在平面3.Ymax所在平面4.Ymin所在平面 5.Zmax所在平面6.Zmin所在平面SPH:当作常规曲面,没有多面体的面HxHyHz终点垂直的平面 3.与向量HxHyHz起点垂直的平面RHP或HEX:1.与向量r1r2r3终点垂直的平面 2.平面1对面的平面3.与向量s1s2s3终点垂直的平面4.平面3对面的平面5.与向量t1t2t3终点垂直的平面6.平面5对面的平面7.与向量h1h2h3终点垂直的平面8.与向量h1h2h3起点垂直的平面2.与向量HxHyHz终点垂直的平面3.与向量HxHyHz起点垂直的平面TRC:1.锥体表面2.与向量HxHyHz终点垂直的平面3.与向量HxHyHz起点垂直的平面ELL:当作常规曲面,没有多面体的面WED:1.包含上下直角斜边的倾斜平面2.包含向量V2、V3的平面3.包含向量V1、V3的平面4.包含向量V1、V2的平面在V3终点的平面(上三角)5.包含向量V1、V2的平面在V3起点的平面(下三角,包括顶点)下面的输入文件描述了五个栅元,图解了一个由多种宏体、栅元/曲面组合的描述。曲面号用斜体写在它们定义的平面旁边。注意栅元或曲面的序号不一定从1开始也不用连续。第四章数据卡在信息块卡、栅元描述卡及曲面描述卡之后输入的卡片统称为数据卡。助记名写在1-5列。它包括相当丰富的内容,大体分为十二类:1)问题类型卡;2)栅元和曲面参数;3)坐标变换;4)源的描述;5)多群特征描述;6)光子产生偏倚描述;7)记数指定;8)材料描述;9)能量及热中子的处理;10)截断条件;11)用户数据组;12)外围卡。这十二类卡片将在下面详细讲解。只有2.1.3中列出的卡才能在接续文件中使用。同名同号码的数据卡至多使用一次,。例如,可以使用M1和M2,CUT:N和CUT:P,但是不能使用两个M1卡或者两个CUT:N卡。4.1问题类型(MODE)卡格式:MODEx1….xixi=n中子输运;p光子输运e电子输运 缺省:如果不给MODE卡,则按缺省运行方式,缺省运行方式为n。 使用:MODE不等于N是必须使用MODE卡。输入用空格描述4.2.1VOL栅元体积卡格式:volx1x2…xi或者:volnox1x2…xixi=相应栅元的体积;no=不计算体积或面积。缺省:如果没有此卡,MCNP将计算全部栅元的体积。当VOL卡上填写no时,表示不计算体积。对于在VOL卡上没有填写的栅元体积MCNP将使用计算的体积。使用:VOL卡是输入栅元体积的可选择卡。 若不使用VOL卡,而栅元的体积不能由MCNP计算,该体积又在记数中要被运用时,程序给出致命性错误信息。可使用nj功能跳过不想填入体积的栅元。栅元的体积按cm3单位填入。No后面的xi是选择填写,输入的xi代码会用到。在一些问题中,no选择可以节省相当多的计算时间。 在一些记数问题中还需要计算栅元的体积和质量。凡是具有任意对称轴(即使轴是斜置的)的旋转栅元,以及多面体,MCNP都将自动算出它们的体积。在计算体积的同时,也可以计算面积和质量。在输出文件OUTP中输出这些体积、面积和质量。用户可用VOL卡填写的体积代替计算的体积,这些输入体积将代替计算的体积使用在记数问题中。如果一个栅元的体积既计算不出来也没有输入在VOL或SDn卡中,程序给出致命性错误信息。VOL卡为记数问题提供了另一种输入体积的方式。通常使用的是SDn卡,VOL卡只用于栅元体积,SDn卡能给出栅元及分割部分的体积及质量。4.2.2AREA曲面面积卡格式:areax1x2…xi…xnxi=曲面i的面积;缺省:MCNP会试图计算所有曲面的面积。当一个曲面的AREA卡没有输入数据时,就使用计算出的面积。使用:AREA卡是曲面面积的可选择卡。它类似与VOL卡,用以补充MCNP计算曲面面积的不足。该卡是输入曲面面积的选择卡。如果MCNP能够计算出一个曲面的任何一侧的所有栅元的体积,则该曲面的面积也将被计算,否则该曲面的面积将不被计算。对于无法计算的面积,而且又未在AREA卡或SDn上给出,该面积又在记数中要被运用时,程序给出致命性错误信息。AREA卡将涉及几何描述中的所有曲面,并非只涉及一个特定的记数界面。如果需要一个曲面片断的面积,则需使用FSn卡来切割整个曲面,SDn卡可提供曲面及分割部分曲面的面积。4.2.3重复结构卡1)UUniverse卡Universe或者是一个栅格或者是一批普通的栅元的集合。U卡的非零项是该栅元所属的Universe号。缺少U卡或者U卡的零项意味着这个栅元不属于任何的Universe。Universe号是由用户任意选定的整数。FILL卡表明该栅元是用它所指定的Universe号所在的全部栅元去填充。一个Universe中的一些栅元可以是有限的也可以是无限的,但它们必须填满要填充的任何栅元里的全部空间。考虑被填充栅元和用来填充栅元的Universe之间关系的一种方式是被填充的栅元是一个往里面窥视第二级的窗口,就象墙上的一个窗户提供户外景象一样。在第二级的栅元可以是无限的,因为当它们碰到“窗口”的曲面或与“窗口”的曲面相交时将被截止。第二级在基本坐标系下可有自己的原点,与上一级无关。然而,如果被填充栅元和用来填充栅元的Universe的全部曲面在同一个坐标系,则用一个TRCL卡来定义被填充栅元和用来填充栅元这二者的坐标系转换关系。用另一个Universe填充一个Universe中的一个栅元,在这种情况下第三级出现。最大可有10级。大部分问题不需要这些级。最高级到最低级与数值的顺序相反。被填充栅元的曲面和用来填充栅元的Universe中的那些曲面必须不一致。换句话说,一个Universe中的那些栅元不是正好地装进被填充的栅元。最好解决的方法是或者缩小被填充栅元的尺寸,或者扩大用来填充栅元的Universe的尺寸,但是这种方法运行慢一些。下面看一个例子:101-23-45-6fill=l207-89-10u=1fill=2lat=130-11u=-24011u=250-l:2:-3:4:-5:65pz-56pz57px08pxl09py010py1011s5504如果在任何一个不被任何较高级栅元的边界所界的栅元的U卡项前面加一个减号,这样就会使问题运行的快一些。该减号指出忽略在较高级栅元的跟踪。一个问题中的每个栅元或者是问题的实际领域的一部分或者是某个Universe的一部分,但是一个问题中的曲面限制较少。可用单个曲面描述在多个Universe中的一些栅元。如果这个曲面用来记数,则把这个曲面复制为具有另一个名字的曲面,这个曲面用于不作记数的地方。MCNP的二维几何画图覆盖节PLOT要求在一个栅元内不使用同一个曲面,以及在用来填充某个级上的栅元的某个Universe的那些栅元,而不放在较高级,但在一个栅格的情况下除外。上面的例子也可以用宏体来定义:1 0 -20fill=12 0 -30 u=1 fill=2 lat=13 0 -11 u=-24 0 11U=25 0 2020 rpp 050 -10 10 -5 530 rpp 0 10 0 10 -5 511 s 5 5 0 42)TRCL栅元变换卡TRCL卡使得只需一次描述界定在形状和尺寸是等同的,只是在几何位置上不同的几个栅元的曲面。当用同一个Universe填充这些栅元时,TRCL卡是特别有用的。如果这些被填充栅元的曲面和填充它们的Unverse中那些栅元的曲面都是在同一个辅助坐标系下描述的,那么,一个单独的变换就能完全定义所有这些被填充栅元的内部,因为该Universe中的栅元将继承它们填充那些栅元的变换。TRCL卡有两种形式,一种形式是:trcl=某个整数。这个整数是TR卡的号,TR卡含有这个栅元所有曲面的一个变换,TR卡是在输人文件INP的数据卡部分。没有TRCL卡或者trcl=0就意味着没有变换,省略。另一种形式是:在TRCL助记符后面的括号里填写这个变换。填写变换的规定同TR卡。如果使用*trcl符号,转换矩阵项是角度(以度为单位)而不是余弦;这和*TR卡一样。如果一个栅元有一个变换,则由这个栅元的原有曲面产生一组新的独特名字的曲面,这个曲面的名字等于原有曲面的名字加上1000倍这个栅元的名字。这个公式给出产生曲面的名字是可知的,并且可在其它栅元卡上及记数卡上使用它。这个方法限制栅元的名字和原曲面名字不能大于三位数;然而,这些产生的曲面仅仅是界定已变换的栅元曲面,不是填充它的任何Universe的曲面。对每一个Universe不管它在这个问题中标记多少次,都只要求一次完整地描述。3)LAT栅格卡lat=l意味着这个栅格是一个六面体;lat=2意味着栅格是一个六棱柱。LAT卡的非零项意味着相应栅元是一个(0,0,0)栅格元素。一个栅格栅元的栅元描述有二个主要用途。一是这个描述是标准的MCNP栅元描述,二是这个栅元曲面描述的顺序确定位于这个栅元每个曲面外边的栅格元素的顺序。当确定栅格以后,就要决定(0,0,0)栅格元素,并且决定这个栅格的三个栅格指标在那些方向上增加。在六棱柱栅格的情况下有二个限制:第一和第二指标必须沿着横的相邻曲面的方向增加,第三个指标必须沿着棱柱的一个方向或者另一个方向增加。然后按照顺序的规定在栅元卡上填写界定(0,0,0)元素的曲面。对一个六面体栅格栅元,在第一个列的曲面的外面是(1,0,0)元素,在第二个列的曲面的外面是(-1,0,0)元素;然后按照那个顺序依次为(0,1,0)元素,(0,-1,0)元素,(0,0,l)元素,及(0,0,-1)元素,如图2-3(a)所示。这个方法提供栅格排列的顺序,因此当你指定元素(7,9,3)时,程序就会知道这个元素是哪一个。对六棱柱栅格栅元,在第一个列的曲面外面是(l,0,0)元素,在第二个列的曲面外面是(-1,0,0)元素;然后依次是(0,l,0),(0,-1,0),(-l,l,0),(l,-1,0),(0,0,1),(0,0,-l),如图2-3(b)所示。描述(0,0,0)元素的最后两个曲面必须是棱柱的上、下底面。(a)六面体栅元排列顺序(b)六棱柱栅元排列顺序图2-3栅元排列顺序六面体不一定是直角的,六棱柱也不一定是规则的,但是由它们构成的一些栅格必须正好填满空间,这意味着栅格的对边必须是相等并平行的。六面体栅格栅元可以在一个或两个方向上是无限的。六棱柱栅格栅元可以沿着棱柱的长度方向无限。横截面必须是凸的。这个栅格是左旋或右旋都可以。一个栅格必须在它的Universe里。一个问题的实际领域本身可以是一个栅格。如果一个粒子离开实际领域的最后一个栅元(限制栅格的范围),这个粒子死亡。4)FILL卡FILL卡上的非零项指明用来填充相应栅元的Universe号。在U卡上相同号标记组成这个Universe的一些栅元,FILL项后面的括号里可放有变换号或变换本身。这个变换是被填充栅元的坐标系和在辅助坐标系下用来填充栅元的Universe之间的变换。如果没有指定变换,则这个Universe继承被填充栅元的变换。如果旋转角是以度为单位而不是余弦,则使用*FILL。在输入文件的数据卡部分不能同时有FILL卡,又有*FILL卡。如果要填写一些以度为单位的角度而又要按余弦来填写一些角度,那么所有FILL及*FILL数据都必须放在输人文件INP的栅元卡上。如果被填充的栅元是一个栅阵,FILL说明或者是一项或者是一个数组。如果是一项,这个栅阵的每一个栅元都是用同一个Universe填充。如果是一个数组,填充由这个数组所覆盖栅阵的那部分;栅阵的其余部分不存在。可用不同的Universe去填充这个栅阵的各种元素。用一个栅格填充一个栅元的数组说明是:三个尺寸,紧接着是这个数组值的本身。这三个尺寸说明定义了三个栅格指标的范围。它与FORTRAN的DO循环一样,下界和上界必须用正数、负数或者零表示,并用:号隔开。每个栅格元素的指标是由它相对于(0,0,0)元素的位置确定的。在LAT卡部分已强调,栅格栅元曲面说明的顺序就定义了栅阵元素的顺序。在该栅阵栅元卡上前两个曲面定义第一个栅格指标的方向。指标的数值范围取决于这个栅格的(0,0,0)反素的位置在哪。例如,-5:5,0:10,及-10:6都是定义11个元素,但(0,0,0)元素的位置的是不同的。在栅格栅元卡上第三和第四列的曲面定义第二个栅格指标的方向。数组大小遵守尺寸说明,在这个数组中的每个元素。实际上只有与这个数组元素对应的那些栅阵栅元存在。每一个数组元素的值是填充相应栅格的Universe号。在这个数组里可以使用两个有特殊意义的值:零意味着栅格元素不存在,这样使用零就可以指定一个非直角阵列;如果数组值与这个栅格的Universe号一样,就意味着与这个数组元素对应的那个栅阵元素不用任何Universe去填充。如果零Universe(问题的实际领域)是一个栅格,这个特殊值不起作用。跟带有单项的FILL说明一样,在数组的任何一个值后面的括号里可跟有一个变换号或者变换本身。例如:fill=0:21:20:1442040433040这个栅阵只有8个元素被填充(存在8个元素)。元素(0,l,0),(l,l,0),(l,2,0),(0,1,1)和(l,2,1)都是用Universe4填充;元素(2,l,0)用Universe2填充;元素(l,l,1)和(2,l,l)用Universe3填充。4.2.4TRn坐标变换卡格式:trnO1O2O3B1B2B3B4B5B6B7B8B9Mn:变换号,1<n<999;O1,O2,O3:变换的位移矢量;B1~B9:变换的旋转矩阵;M:M=l意味着位移矢量是辅助坐标系的原点在基本坐标系定义的位置。M=-l意味着位移矢量是基本坐标系的原点在辅助坐标系定义的位置。缺省:trn0001000100011使用:可选择卡MCNP所有类型的曲面都有某种对称性,当对称轴平行于某些坐标轴时,即使较为复杂的曲面都是不难给出描述参数的。但是,当曲面对称轴不平行于坐标轴时,对曲面给出描述参数难度就大多了。在这种情况下,用户可以在一个较为方便的辅助坐标系来描述该曲面,然后使用如下变换功能,将该曲面的描述转换到问题的基本坐标系中。这个变换是通过坐标变换卡TRn卡实现的。TRn卡指明辅助坐标系与基本坐标系的关系,在辅助坐标系描述曲面是容易的,但这时在该曲面描述卡上要有变换号n,在相应的TRn卡指定这个变换。环面(Torus)不能做坐标变换。在MCNP的输入文件中,基本上是在辅助坐标系下给出较为简单的曲面描述卡。当辅助坐标系并不相应于基本坐标系时,便需使用TRn卡,用以指明辅助坐标系与基本坐标系之间的关系。一个问题中最多可有10个TRn卡。B矩阵说明两个坐标系轴的方向之间的关系。Bi是在基本坐标系(XYZ)轴与辅助坐标系(x’y’z’)轴之间的夹角余弦(若在TRn前加了“*”,如*TRn,则由指明余弦值改为指明角度,0o<θ<180o=,其排列规则为:元素B1B2B3B4B5B6B7B8B9轴Bi的意义与M无关。用户不必给出所有Bi值,可用kJ跳过不指定的项,Bi可按以下任一种方式指定:i)Bi全部给出(9个值);ii)给出矩阵中列或行方向上三个矢量中的两个(6个值)。程序将由它们的叉乘产生第三个矢量;iii)给出矩阵中列与行方向上各一个矢量,其中的公共分量必须小于1(共5个值)。程序将用欧拉角方法填完该矩阵;iv)给出矩阵中列或行方向上的一个矢量(3个值),程序将按某种随机方法生成其他两个矢量;v)没有输入,程序将建立相同矩阵。一个矢量由三个元素组成,这些元素可以按矩阵的横向或竖向排列,但不能走对角钱。在所有情况下,MCNP解决任何小的非正交性,并归一这个矩阵。在归一过程,形似(l,0,0)的矢量将保持原样。如果正交性大于0.001弧度时,则给出一个警告信息。当变换只是一个平移时,使用方式v是合适的。当一些斜置曲面都是关于某个斜轴的旋转面时,使用方式iv)是合适的。曲面不是旋转面(一般情况)时,方式ii)与iii)大体是同等适用的。如果辅助坐标系和基本坐标系中一个是右手坐标系,而另一个是左手坐标系,则使用方式i)是合适的。使用坐标变换以简化曲面的几何描述,以及建立曲面源问题的坐标系统与写这个曲面源文件中这个问题的坐标系统之间的关系。通常一个栅元组分将有同一个坐标系统。在这个坐标系统下描述这个组分的曲面,然后用TRn卡指定这个系统与基本坐标系统的关系。例子:174px5tr47.91.30-10001-1004.3降低方差卡下面是定义降低方差卡的参数的卡片。助记名卡片内容助记名卡片内容IMP栅元重要性卡ESPLT能量分裂与轮盘赌卡TSPLT时间分裂或轮盘赌卡PWT光子权重卡EXT指数变换参量VECT向量输入F

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论