张俊军,曾勤,,王国忠,吴宜灿,,FDS团队,
(1.中国科学院等离子体物理研究所,安徽合肥230031;2.中国科学技术大学核科学技术学院,安徽合肥230027)
MCAM(Monte Carlo Automatic Modeling[1])是FDS团队研发的蒙特卡罗粒子输运自动建模系统,可实现多种格式的CAD工程模型与MCNP[2]蒙特卡罗粒子输运计算模型之间的相互转换,有效地解决了MCNP计算建模的瓶颈问题,并被国际热核聚变实验堆ITER(International Thermonuclear Experimental Reactor)国际组织选作中子学分析参考软件。
TRIPOLI-4.3[3]是法国原子能署(CEA)开发的基于蒙特卡罗方法的三维粒子输运计算程序,它能够详细模拟中子、光子以及中子光子耦合的输运过程,使用精细的点截面以及多群等效截面的数据库,广泛用于裂变反应堆堆芯物理计算以及屏蔽分析中。作为MCAM的功能扩展,本文研究了T RIPOLI自动建模方法。新开发的MCAM5.1版本实现了CAD模型与TRIPOLI模型的相互转换,提高了中子学的分析效率,保证了设计质量。
CAD几何模型通常采用边界表示法[4](boundary representation,简称BREP)表示几何模型。它详细定义了模型中的所有几何元素如体、面、环、边、点的几何信息及相互间的拓扑连接信息。这种表示法有利于以面和边为基础的各种几何运算和布尔运算。边界表示法是CAD系统中最通用的表示法。
构造实体几何法(constructive solid geometry,简称CSG)[5]是利用基本几何体素(如球体、立方体、圆柱体、圆锥体等),通过一系列布尔运算来构造复杂三维实体的方法。由于基本几何体素比较规则,其数据结构简单,容易表达,而且需要的存储空间较小。另外,CSG表示法对物体几何形状的描述精确、严格,可建立起较明确的数学模型。一些典型的基于蒙特卡罗方法的粒子输运程序如MCNP、GEANT[6]、EGS[7]等对于几何模型的描述均采用CSG表示法。T RIPOLI利用曲面的半空间的逻辑运算(并、交、差)来定义几何模型。曲面的半空间是属于CSG的一种表示方法[8-9]。在T RIPOLI中对曲面的描述有两种方式:面相关方式和组合方式[3]。面相关方式通过指定面的类型和系数(参数)来描述曲面,而组合方式直接定义一些基本形状如长方体、球体、圆柱体、圆锥、六棱柱、圆环等来构造几何模型。另外,TRIPOLI支持旋转、网格阵列等具有重复结构性质的操作,可以快速完成具有相同结构的几何模型建模如反应堆芯的建模。
虽然CSG表示法比较简单,但是依赖手工建立复杂几何的TRIPOLI中子学模型不直观、抽象,容易出错。同时,在工程实践中已经存在大量的CAD几何模型,直接利用这些几何模型进行中子学物理分析,则分析结果更加精确可靠。另外,如果能够进行三维交互式的检查、分析TRIPOLI中子学模型,并获取其描述的几何模型,则大大提高设计效率和分析质量。因此,需要对CAD工程模型与粒子输运计算程序T RIPOLI之间的相互转换进行研究。由前所述,其本质上就是几何模型的边界表示(BREP)和构造实体几何(CSG)两种表示方法的相互转换。
自动将CAD工程模型转换为T RIPOLI的几何模型,也即BREP模型向CSG的转换。基于分解的方式[10-11],首先将几何模型分解为凸实体,由于凸实体能够被它的边界所定义,然后利用拓扑信息得到凸实体的边界面,生成对应的半空间的交,最后组合成复杂实体的半空间表达式,也即TRIPOLI的几何模型。另外,由于蒙特卡罗中子学计算程序需要对整个三维求解空间进行定义,但是,在CAD工程模型中,通常只存在三维模型零件的实体部分。因此,不仅仅需要对三维模型的零件实体进行转换,而且必须要描述整个三维问题空间中不属于CAD模型中的空余部分(定义为空腔实体)。利用二叉空间分割算法,将整个求解空间分割为一系列子空间,对各个子空间进行布尔运算得到空腔实体的T RIPOLI几何描述。
由于缺少有效的三维交互式可视化软件,T RIPOLI对几何模型的检测局限于二维剖面图,不易发现几何模型描述中的错误,而且效率低。同时,为了满足迭代设计需要,可以三维交互的编辑修改TRIPOLI描述的几何模型,我们进行了由T RIPOLI几何模型到CAD模型的转换算法研究。由前所述,TRIPOLI利用CSG表示法来描述几何模型。通过解析输入文件中的关键字建立CSG树。其中,树的叶子节点表示基本几何体,中间节点表示布尔运算。由于构造生成的每个基本几何体素和中间几何体均为BREP表示法的模型,因此,当遍历这棵树时,最终生成的几何模型即是BREP表示格式的CAD模型。生成的CAD模型可以以中性文件格式(如SAT、STEP和IGES等)进行保存,方便地导入到商业CAD软件中进行进一步的编辑和修改。
TRIPOLI程序如同其他蒙特卡罗粒子输运程序一样,要求栅元的描述是严格共面的,不允许有相互之间的干涉或重叠。但是,在CAD工程模型中由于精度误差等原因,往往存在细微的干涉,这是不被T RIPOLI程序所允许的。同样,为了满足迭代设计需要,对于TRIPOLI几何模型,也必须进行检查,发现TRIPOLI几何模型描述中的干涉,保证设计质量。通过对整个模型空间的八叉树划分,基于实体的包围盒,进行初步检测。然后对可能发生干涉的模型实体,再运用布尔运算进行详细检查。
TRIPOLI手册中定义了一系列基本例题,用来进行T RIPOLI计算测试。选择反应堆临界计算例题,完成我们的基准测试。该输入文件中几何模型采用组合方式进行描述,分别定义了燃料棒、控制棒、水层、屏蔽层等基本几何模型。然后通过六面体网格阵列形式定义了一个17×17的燃料组件。我们利用MCAM5.1,将其TRIPOLI几何模型转换为三维CAD几何模型,进行交互式的观察、检测和分析。由于MCAM5.1具有良好的人机接口,提供了多种显示观察方式,可以根据用户要求隐藏栅元实体,单独显示感兴趣栅元或组件。图1显示转换后得到的CAD几何模型。图2、图3分别显示了组件内部情况。分析结果表明,可以应用于具有大量重复结构的裂变领域,提高中子学的设计与分析效率。
图1 TRIPOLI模型转换得到的CAD几何模型Fig.1 CAD model fromTRIPOLI input file
图2 观察组件内部栅元Fig.2 CAD model inside shown in MCAM5.1
图3 单独显示燃料棒栅元Fig.3 MOXcomponents alone shown in MCAM5.1
FDS-Ⅱ[12]是FDS团队设计的先进聚变反应堆模型,聚变功率2.5 GW。该计算模型是从CAD模型的基础上简化而来,环向22.5°,模型包含113个实体和130个曲面。利用MCAM5.1自动生成FDS-Ⅱ的T RIPOLI计算输入文件。为了验证产生输入文件的正确性,一方面,利用MCAM5.1的反演功能把生成的TRIPOLI计算输入文件转换为CAD模型进行交互式检查,并和T RIPOLI自带的画图软件生成的二维剖面图对比(图4、图5)。
图4 TRIPOLI中的截面图Fig.4 Cross section drawn in TRIPOLI
图5 MCAM读取T RIPOLI输入文件生成的模型Fig.5 CAD model generated from input file
另一方面,分别用T RIPOLI和MCNP程序对内包层(288 cm<Z<380 cm)进行中子注量率计数,完成交叉检查。相关计算参数描述如下:源强为13.84 MeV<E<14.19 MeV,数据库为JEF2(TRIPOLI),FENDL2.1(MCNP)。最终计算结果和MCNP的计算结果进行比较(图6),两种方法最大误差相差不到1%。
图6 TRIPOLI和M CNP计算结果比较Fig.6 Comparison of Neutron flux result between T RIPOLI result and MCNP result
ITER国际工作组为了检验各国中子学建模软件的成熟性和可靠性,发布了IT ER基准测试模型[13](图7)。其几何模型是使用商业CAD软件CATIA完成建模,描述了ITER装置在环向方向上的40°的扇形段,并做了必要的简化,最终以STEP格式发布。基准测试模型主要部件包含包层、偏滤器、真空室、环向场线圈、极向场线圈、中心螺线管、上下窗口、赤道窗口等,涉及ITER装置中所有的重要部件和组成部分,而且含有较多的复杂回旋曲面和曲面相交的情况,是一个复杂的大型几何模型。
将ITER基准测试模型导入到MCAM5.1中,进行干涉检查,确保模型没有干涉或重叠后,生成TRIPOLI的输入文件。然后,利用T RIPOLI程序完成计算,并将结果与MCNP的计算相比较,达到很好的一致,详细情况请参考文献[14] 。
本文研究了三维蒙特卡罗粒子输运计算程序T RIPOLI自动建模方法,实现了CAD模型与T RIPOLI模型之间的相互转换,CAD工程模型可以自动转换为TRIPOLI计算输入文件;也可以读取T RIPOLI输入文件,进行交互式观察、检测其几何模型。利用反应堆临界计算模型、聚变反应堆模型以及IT ER基准模型进行测试,证明了其相互转换正确、可靠。目前,该功能已经集成进MCAM系统中,形成MCAM5.1版本,在法国CEA得到应用。极大地提高了中子学分析设计人员的效率,可以作为核领域中子学分析的有效质量保证工具。
图7 ITER基准测试模型Fig.7 ITER benchmark model
[1] Wu Y C,FDS Team.CAD-based interface programs for fusion neutron transport simulation[J] .Fusion Enginee ring and Design,2009,84:1987-1992.
[2] Briesmeister J F.MCNP-a general Monte Carlo N-particle transport code,version 4[R] .USA:Los Alamos National Laboratory,2000.
[3] Petit O,Hugot F X,Lee Y K,et al.T RIPOLI-4 version 4 user guide,CEA-r-6169[R] .France:CEA,2008.
[4] Requicha A A G,Rossignac J R.Solid Modeling and Beyond[J] .IEEE Computer Graphics and Application,1992,12(5):31-44.
[5] Suzanne F Buchelea,Richard H Crawford.Three-dimensional half-space constructive solid geometry tee construction from implicit boundary representations[J] .Computer Aided Design,2004,36(11):1063-1073.
[6] Ag ostinelli S,Allison J,Amako K,et al.GEAN T4-a simulation toolkit[J] .Nuclear Instruments and Methods in Physics Research Section A:Accelerators,Spectrometers,Detecto rs and Associated Equipment,2003,506(31):250-303.
[7] Walter Ronaldson,Hideo Hiray ama,David W O Rogers.T HE EGS4 CODE SYSTEM,SLAC-Report-265[R] .USA:SLAC T echnical Publications Department,1985.
[8] 丁爱平,李莹,卢磊,等.计算模型MCNP模型的可视化实现[J] .原子核物理评论,2006,23(2):130-133.
[9] Hoffmann Christopher M.Geometric and Solid M odeling:An Introduction[M] .California:Morgan Kaufmann Publishers,Inc,1989.
[10] 吴宜灿,李莹,卢磊,等,蒙特卡罗粒子输运计算自动建模程序系统的研究与发展[J] .核科学与工程,2006,26(1):20-27.
[11] 罗月童.模型变换技术及其在MCNP建模中的应用[D] .安徽:合肥工业大学,2005.
[12] Wu Y,FDS Team.Conceptual design of the China fusion power plant FDS-Ⅱ[J] .Fusion Engineering and Design,2008,83:1683-1689.
[13] 李莹,曾勤,卢磊,等.利用ITER基准模型对MCAM4.2进行检验(Ⅰ)[J] .核科学与工程,2008,28(1):47-50.
[14] Lu L,Lee Y K,Zhang J J,et al.Development of Monte Carlo automatic modeling functions of MCAM for TRIPOLI-ITER application[J] .Nuclear Instruments and M ethods in Physics Research A,2009,605:384-387.