随着先进反应堆技术的发展,对全堆芯模型的高精细模拟计算成为研究热点。采用全堆芯计算,可使得堆芯内的临界参数、功率、通量分布和反应性系数等物理量更接近真实值,有利于反应堆的安全和控制。2003年,Smith根据计算机的发展,提出了使用蒙特卡罗方法快速进行全堆芯精细计算需要到2030年才可能实现,这被称为“Kord Smith挑战”[1]。2009年,Hoogenboom等[2]提出了一个全堆芯基准计算模型Hoogenboom模型,作为检验蒙特卡罗软件进行全堆芯精细计算能力的世界通用标准。
超级蒙特卡罗核计算仿真软件系统SuperMC (Super Monte Carlo Simulation Program for Nuclear and Radiation Process)[3, 4, 5]设计为支持以辐射输运为核心,包含燃耗、辐射源项/剂量/生物危害、材料活化与嬗变等的综合中子学计算,支持热工水力学、结构力学、化学、生物学等多物理耦合模拟。目前SuperMC 2.3支持中子、光子、中子光子耦合输运模拟,可应用于核反应堆物理、辐射屏蔽、医学物理等领域,已通过2000多个国际基准模型与实验的校验,包括国际临界安全基准评价实验(International Criticality Safety Benchmark Evaluation Project)[6]、屏蔽积分实验基准库(Shielding Benchmark Experiments Status and Planned Activities)的正确性验证,以及聚变堆(国际热核聚变实验堆(International Thermonuclear Experimental Reactor,ITER)[7, 8, 9]、聚变动力堆FDS-Ⅱ[10]等)、钠冷快堆(BN-600[11]等)、国际反应堆物理实验评价手册(International Handbook of Evaluated Reactor Physics Benchmark Experiments)等的反应堆综合应用验证。
本文采用Hoogenboom基准模型对SuperMC 2.3全堆芯输运计算能力进行验证,并对SuperMC 2.3程序的并行计算性能进行分析。
1 模型描述Hoogenboom模型堆芯结构如图 1(a)所示,堆芯径向半径分别为209 cm、229 cm、249 cm;堆芯高度为452 cm,燃料区高度为366 cm。堆芯共包含241个相同的燃料组件,每个燃料组件的几何尺寸为21.42 cm×21.42 cm。燃料组件内的棒按照17×17规则排布,其中包括264个燃料棒,25个控制棒,棒之间无缝隙间隔,如图 1(b)所示。燃料棒的高度为366 cm,沿轴向划分成100等份,慢化剂和反射层的温度分为热段和冷段。燃料棒由17种锕系元素及16种裂变产物和氧元素组成[12]。本文对Hoogenboom基准模型的有效增殖因数以及全堆芯6 362 400个栅元的功率密度进行计算。
2 测试环境 2.1 测试平台本文基于SuperMC的云计算框架进行测试。SuperMC云计算框架以服务的方式提供核计算分析的功能。用户只需要通过网络访问简单的用户图形界面,即可立即高效地在庞大的软硬件资源池上执行任务,不需要花费大量的精力在高性能计算集群的软硬件、数据等运行环境与安全上,实现“即需即用”。
本工作中的计算使用了IBM NeXtScale nx360M5计算节点,每个计算节点均采用两颗Intel Xeon E5-2650v3 CPU (2.3 GHz,64 GB RDIMM DDR3 1866 MHz内存),共20核,500 GB 10KRPM SAS磁盘,两个56 GB IB网络端口。集群系统配有Mellanox SX6025 FDR 56 GB IB交换机,每个交换机拥有4.032 TB/S的交换容量,端口间延迟仅200ms,支持8个数据和1个管理共9个虚拟链路;36个FDR 56 GB Infiniband端口,可保证高性能计算时通信无阻塞的收发。
2.2 数据库计算采用的数据库为SuperMC/HENDL[13],其评价数据来源于国际评价核数据,如ENDF (Evaluated Nuclear Date File)、JENDL (Japanese Evaluated Nuclear Data Library)、JEFF (Joint Evaluated Fission and Fusion file)、CENDL (Chinese Evaluated Nuclear Data Library)、TENDL (Talys-based Evaluated Nuclear Data Library),通过国际临界安全实验以及屏蔽积分实验,多个评价源进行优选,再结合核数据加工处理系统,根据需要加工成为相应的应用数据库。目前,该数据库已经过了广泛测试[14],可以满足Hoogenboom模型的计算需要。
3 计算结果及分析 3.1 有效增殖因数Hoogenboom模型的有效增殖因数keff计算采用20核进行并行计算,其中每代模拟3000个粒子,计算3000代,舍弃前100代,SuperMC计算结果以及与MCNP的对比列于表 1。从表 1中可看出,SuperMC的计算结果与MCNP计算结果的偏差为5pcm,且SuperMC计算时间少于MCNP。
| 表 1 有效增殖因数计算结果 Table 1 Results of keff calculation. |
MCNP中随着计数的增加,计数统计所需时间会线性增长,在反应堆全堆芯模拟中,计数量庞大,计算耗时严重。以Hoogenboom模型为例,当计数量为2000时,MCNP计数耗费时长约为30 min,当进行全堆芯功率计算时,需要统计6362400个栅元的功率,则计数统计时间估计将高达90000 min,难以接受。SuperMC发展了基于计数辅助树的大规模计数算法[15],使全堆芯计算的效率极大的提高。
本文采用35个节点共700核对Hoogenboom模型全堆芯功率进行计算,每代模拟70000000个粒子,计算3600代,舍弃前500代。SuperMC计算共用时9728.93 min,全堆芯功率分布计算结果的3D效果图如图 2所示。根据Hoogenboom提出的1%的统计误差精度要求[16],其中99%栅元计算结果的统计误差均在1.06%以下,如表 2所示,其余计数栅元误差高的原因是由于其位置处于堆芯边缘,只有少量的粒子在模拟过程中运动到该区域。随机选取部分功率密度分布如表 3所示。
|
图 2 全堆芯功率分布图 Fig.2 Power distribution of full reactor core. |
| 表 2 栅元统计误差 Table 2 Statistical error of cells. |
| 表 3 功率分布 Table 3 Power distribution. |
使用SuperMC的可视化功能可反映堆芯功率径向变化的情况,图 3是其中生成的轴向第50层功率分布剖面图及其统计误差图。由图 3可见,随着燃料组件距堆芯中心距离的增加,功率逐渐降低,符合物理规律。
|
图 3 功率分布图(a)和统计误差图(b) Fig.3 Power distribution (a) and statistical error (b). |
并行计算是蒙特卡罗模拟中常用的加速模式,MCNP中采用了Master-Slave的并行模式[17],在每代粒子输运计算中,各Slave进程抽样并储存裂变源,当前代粒子模拟完成后,各Slave进程将裂变源归并到Master进程后,由Master进程再统一分配到各Slave进程进行下一代模拟计算。这种方式在并行节点数增加后,并行效率大幅降低。Romano等[18]对该问题进行了方法改进,提出了基于双向遍历的临界计算算法,先对各节点下一代粒子平均后的序号进行计算,然后根据序号进行各计算进程间粒子的传递,大大减少了每代计算结束后程序通信的数据量。SuperMC 在双向遍历算法的基础上,对通信算法进行了优化[19],进一步提高了并行性能。
本文基于Hoogenboom模型,使用“weak scaling”模式[20](即模拟中每个核计算的粒子数相同)对SuperMC并行性能进行了分析。结果如表 4所示,使用640核并行计算时,并行效率仍高达98.7%。
| 表 4 基于Hoogenboom模型的SuperMC计算并行效率 Table 4 Parallel efficiency of SuperMC based on Hoogenboom benchmark. |
本文使用超级蒙特卡罗核计算仿真软件系统SuperMC 2.3对Hoogenboom基准例题的有效增殖因数与全堆芯功率分布进行了计算,并对SuperMC 2.3并行性能进行了分析。计算结果表明,SuperMC能够支持Hoogenboom模型全堆芯600万栅元的计算,计算结果与MCNP符合较好,且具有较好的计算效率与并行效率,验证了SuperMC在反应堆全堆芯精细计算中的准确性及高效性。
致谢 本工作得到FDS团队其他成员的大力支持。| 1 | Smith K. Reactor core methods[R]. Gatlinburg, Tennessee:M&C2003( 1) |
| 2 | Hoogenboom J E, Martin W R. A proposal for a benchmark to monitor the performance of detailed Monte Carlo calculation of power densities in a full size reactor core[R]. Saratoga Springs, NY:Proceedings ANS Mathematics & Computation Division Topical Meeting, 2009( 1) |
| 3 | Wu Y, Song J, Zheng H, et al. CAD-based Monte Carlo program for integrated simulation of nuclear system SuperMC[J]. Annals of Nuclear Energy, 2015, 82:161-168. DOI:10.1016/j.anucene.2014.08.058( 1) |
| 4 | Wu Y, FDS Team. CAD-based interface programs for fusion neutron transport simulation[J]. Fusion Engineering and Design, 2009, 84(7-11):1987-1992. DOI:10.1016/j.fusengdes.2008.12.041( 1) |
| 5 | Wu Y, Xie Z, Fischer U. A discrete ordinates nodal method for one-dimensional neutron transport calculation in curvilinear geometries[J]. Nuclear Science Engineering, 1999, 133(3):350-357. DOI:10.1016/j.anucene. 2013.10.018( 1) |
| 6 | Zhang B H, Song J, Sun G Y, et al. Criticality validation of SuperMC with ICSBEP[J]. Annals of Nuclear Energy, 2016, 87:494-499. DOI:10.1016/j.anucene.2015.10.004( 1) |
| 7 | Wu Y, FDS Team. Conceptual design activities of FDS series fusion power plants in China[J]. Fusion Engineering and Design, 2006, 81:2713-2718. DOI:10.1016/j.fusengdes.2006.07.068( 1) |
| 8 | Wu Y, FDS Team. Conceptual design and testing strategy of a dual functional lithium-lead test blanket module in ITER and EAST[J]. Nuclear Fusion, 2007, 47(11):1533-1539. DOI:10.1088/0029-5515/47/11/015( 1) |
| 9 | Wu Y, FDS Team. Design analysis of the China dual-functional lithium lead(DFLL) test blanket module in ITER[J]. Fusion Engineering and Design, 2007, 82:1893-1903. DOI:10.1016/j.fusengdes.2007.08.012( 1) |
| 10 | Wu Y, FDS Team. Conceptual design of the China fusion power plant FDS-Ⅱ[J]. Fusion Engineering and Design, 2008, 83:1683-1689. DOI:10.1016/j.fusengdes. 2008.06.048( 1) |
| 11 | 汪晖, 宋婧, 孙光耀, 等. 基于钠冷快堆BN-600的SuperMC基准校验分析[J]. 原子能科学技术, 2015, 49(增刊):17-21 WANG Hui, SONG Jing, SUN Guangyao, et al. Benchmarking of SuperMC based on sodium cooled fast reactor BN-600[J]. Atomic Energy Science and Technology, 2015, 49(Suppl):17-21( 1) |
| 12 | Hoogenboom J E, Martin W R, Petrovic B. Monte Carlo performance benchmark for detailed power density calculation in a full size reactor core, benchmark specifications revision 1.1[OL]. 2011. http://www.nea.fr/dbprog/MonteCarloPerformanceBenchmark.htm( 2) |
| 13 | 曾勤, 邹俊, 许德政, 等. 315中子/42光子耦合细群核数据库HENDL3.0/FG研发[J]. 核科学与工程, 2011, 31(4):360-364, 384 ZENG Qin, ZOU Jun, XU Dezheng, et al. Development of fine-group(315n/42γ) cross section library ENDL3.0/FG for fusion-fission hybrid systems[J]. Chinese Journal of Nuclear Science and Engineering, 2011, 31(4):360-364, 384( 1) |
| 14 | Zou J, He Z Z, Zeng Q, et al. Development and testing of multi-group library with correction of self-shielding effects in fusion-fission hybrid reactor[J]. Fusion Engineering and Design, 2010, 85:1587-1590. DOI:10.1016/j.fusengdes.2010.04.053( 1) |
| 15 | Zhang S. Hierarchical geometry tree-based method for scoring massive tallies in Monte Carlo particle transport calculation[R]. Nashville, Tennessee:M&C2015( 1) |
| 16 | Hoogenboom J E, Petrovic B, Martin W R. Monte Carlo computational performance benchmark[R]. Paris:Workshop at SNA+MC2013, October 27, 2013( 1) |
| 17 | Forrest B, Brown J. MCNP5 parallel processing workshop[R]. Gatlinburg, TN:ANS Mathematics & Computation Topical Meeting, April 11, 2003( 1) |
| 18 | Romano P K, Forget B. Parallel fission bank algorithms in Monte Carlo criticality calculation[J]. Nuclear Science and Engineering, 2012, 170(2):125-135( 1) |
| 19 | 李静, 宋婧, 龙鹏程, 等. 基于双向遍历的蒙特卡罗临界计算并行方法[J]. 核技术, 2015, 38(6):060602. DOI:10.11889/j.0253-3219.2015.hjs.38.060602 LI Jing, SONG Jing, LONG Pengcheng, et al. Parallel computing method of Monte Carlo criticality calculation based on bi-directional traversal[J]. Nuclear Techniques, 2015, 38(6):060602. DOI:10.11889/j.0253-3219.2015. hjs.38.060602( 1) |
| 20 | Romano P K, Siegel A R, Forget B, et al. Data decomposition of Monte Carlo particle transport simulations via tally servers[J]. Journal of Computational Physics, 2013, 252:20-36. DOI:10.1016/j.jcp. 2013.06.011( 1) |

1)