输运临界计算保姆级通关!从原理到软件实操,纯小白也能从零跑通完整算例
最近在啃核工程相关内容碰到了中子输运和反应堆临界计算这块。之前课上虽然听过蒙特卡罗方法、有效增殖因数这些概念但大多停留在书本理论从来没有从头到尾亲手跑一遍计算。就想着找一个实际案例实操练练切身感受下输运临界计算完整流程到底是怎么一回事。从刚开始熟悉计算软件一步步搭模型、调参数、提交运算再到最后读出结果、分析数据中间不少地方都要反复琢磨才能理顺。刚好这次在用 TopMC 免费版练习就想着用它来试着完成一下这个算例。主要是想找一款适合自己上手练习的核计算软件TopMC 是国产软件相关的中文手册看起来比较方便内容也比较详细遇到不懂的地方可以对着手册慢慢看不用一边查资料一边反复猜参数的意思对我这种小白就很方便确实能省不少时间所以就打算先用它做一次完整的练习看看从模型设置到最后查看计算结果整个流程到底是怎样的。这次练习我选了IAEA‑ADS基准算例来上手主要看重它有现成的参考结果可以对照。这是一个加速器驱动次临界系统的标准基准题很多不同的核计算程序都会拿它做比对验证也是有相关文献可以参考的。对于刚接触蒙特卡罗中子输运计算的学生来说我觉得用这种公开的基准算例会省心不少。这样不仅能看懂模型背后对应的物理背景跑完计算之后还能拿输出数据和公开参考结果做对比慢慢搞懂各项计算参数、输出结果到底代表什么对于我们这种刚开始接触的更能理解我们专业的实际用处了啦。废话不多说现在开始给大家分享我的实际操作。1.1 几何建模很多次临界 ADS 基准算例都带有多层分区结构几何边界直接决定中子输运结果的可靠性所以建模阶段我会尽量保守、逐项校验下面先记录我的从零建模操作。几何建模功能提供了基本模型的创建、布尔运算操作以及各种几何变换操作 打开TopMC左上角工具栏用于基本几何模型的建立比如我先建立一个正方体比如我先建立一个正方体作为我们的几何模型。由于临界输运计算的物理要求决定我们需要这种逐层拆分独立栅元、分域建模的结构本次模型采用 Universe 架构通过编辑-视图中依靠布尔差集完成多层嵌套几何构建最后的建模如下图所示右击每个Cell可以通过一层层隐藏实体和显示实体看到内部结构。1.2 物理建模几何建模只搞定了长什么样比如是形状、大小、位置也就是栅元、曲面这些外壳 物理建模是给几何赋予计算规则告诉程序每一块空间是什么材料、中子源在哪、要统计什么数据、边界条件怎么处理。 只有几何软件只知道一堆空间几何体完全不知道该怎么算中子输运跑不了蒙卡计算。所以我们下一步要进行物理建模。1.2.1 材料建模在实体属性窗口。在这里我们能查看这个栅元的编号、绑定的材料等信息也可以按需修改它对应的材料、显示颜色。 这里也给大家分享一个我的踩雷点材料建模界面管理的是整套模型里所有的材料库而实体属性窗口是专门针对某一块栅元确认它分配了哪一份材料二者不要搞混。1.2.2 源建模1.2.2.1 几何分布下面这个实体属性窗口的物理分栏可以直接查看和编辑几何体绑定的材料、重要性、温度等物理信息。我们可以逐步拆解看到目前模型的隐藏实体就像洋葱一样一层层剥离。不过要是有其他同学需要更换材料直接在对应编号的下拉菜单选中目标材料号点击应用就能完成修改这里的重要性参数不要随便乱改改错容易让粒子直接消失最后导致算出来的完全失真。我们在 TopMC 中搭建模型时可同步完成源信息配置源的位置、能量、分布等参数配置妥当后一般无需重复新建源。不过自动配置不等于万无一失模型搭建完成后一定要进入源建模界面核对源的位置、粒子类型、能谱是不是和 IAEA-ADS 基准文档一致。一旦源参数设置出错整个次临界输运计算都会偏离结果。只有当源配置丢失、源信息缺失的时候才需要我们手动去设置源。咱们这个 IAEA‑ADS 采用临界计算搭配固定源的模式临界计算框架用来求解次临界系统的但这套装置无法靠裂变自持产生中子所以依靠固定散裂源持续提供初始中子也就是我们说的源粒子抽样。如下图所示要双击主界面左侧树视图中的源打开源编辑对话框点击添加临界源添加一个临界源。选择临界源KCODE进行临界计算参数设置之后再点击固定源按钮添加源粒子抽样信息。固定源按钮就是开启SDEF 固定源模式。 前面临界源KCODE是靠裂变自动一代代生成中子但 ADS 次临界装置做不到自持链式裂变中子必须由外部的散裂源产生。 点击【固定源】就是告诉程序中子不是来自内部裂变迭代而是按我们给定的位置、能谱、分布去抽样产生初始中子也就是源粒子抽样。但是我们发现设置好源概率之后发现栅元源显示不是一个个体说明这个栅元不是一个有效的三维实体体栅元软件没法在它内部均匀抽样源粒子volume_flagoff 代表它没有可用体积信息并不能作为栅元源所以我们要在源1下面设置几何分布下面的几何分布用来定义源粒子发射的空间位置也就是中子从哪个区域、哪个坐标抽样产生。 如果选用栅元分布程序会在指定实体栅元内部随机抽取发射位置这就要求所选栅元必须是具备有效体积的封闭实体否则就会出现刚才的报错。 选择选择圆柱体源 Cylinder Source并设置圆柱源中心点坐标00 0随后进行半径的径向分布和高度的轴向分布我设置的如下所示。1.2.2.2 能量分布我们可以把刚刚的几何分布理解为设置位置告诉我们中子在哪出生现在的能量分布是告诉我们中子出生时带多大能量下一章的则是告诉我们中子往哪个方向飞。先定位【源 1】→【能量】打开源能量设置面板。IAEA-ADS 基准的散裂中子能谱为箱式概率连续矩形分布点击【分布】进入分布配置如下图所示。分布大类选择随机分布源信息勾选H直方图分布编辑框粘贴SI1行全部能量断点数字之间用空格隔开源概率勾选D离散概率编辑框粘贴SP1行的对应概率值空格分隔1.2.2.3 方向分布选择 Tally 24 节点点击 Tally 24 前的眼睛图案即可查看通量场的网格计数结果如下图所示。单击预览按钮可以预览源信息如下图所示。点击确定按钮至此完成了源建模啦O(∩_∩)O1.2.3 计算建模我们已经画好了几何体、给每个区域分配了材料、设置好了中子源程序会自动模拟一个个中子从源发射出来在装置里飞行、碰撞、裂变、被吸收直到中子消失。 但是你想在哪看数据、想看什么数据必须自己告诉程序。 计数卡片就是干这件事的在 IAEA‑ADS 基准算例中依靠预设的计数卡我们才能提取中子通量等结果和官方参考值对比完成我们的模型验证。下面是新建技术卡和设置我们的栅元通量计数。选择 T14能量进入能量计数设置界面将能群信息填入到能量区间编辑框中 如下图所示至此完成第一个计数卡的建模。剩下的还需要添加新的技术卡点击添加建立新的计数卡计数类型选择T4粒子类型选择中子并勾选网格70 计数使用网格如下图所示至此完成了第2 个计数卡的建模。点击确定按钮至此完成了计数建模。1.3 计算这一步启动的是IAEA‑ADS 次临界固定源中子输运蒙特卡罗计算。 前面我们已经完成几何建模、材料赋值、散裂外源配置、计数Tally与能群信息设置点击【简易计算】TopMC 会自动导出 MCNP 输入卡调用 MCNP 求解器模拟散裂中子在次临界装置里的输运、碰撞、裂变、吸收全过程统计我们预先设置好的栅元通量、全场网格通量等计数结果。计算结束后在选定的输出路径下生成 MCNP 输出文件用来提取通量数据和 IAEA 基准参考结果对比校验。1.4 结果可视化选择whole 0节点点击whole 0前的眼睛图案即可显示计算结果随代数变化的曲线发现随着代数的增加计算结果逐渐趋于收敛。 再单击眼睛图案将隐藏曲线的可视化。选择 Tally 14 节点在左下角的数据管理面板编辑页界面的当前X轴变量的 下拉列表中选择能群分段并点击应用按钮点击Tally 14节点前的眼睛图案然后再在数据管理面板显示页界面的线性关系的X轴下拉列表中选择对数化 计数柵元的通量能谱如下图所示。再次单击眼睛图案将隐藏通量能谱的可视化。选择 Tally 24 节点点击 Tally 24 前的眼睛图案通量场的网格计数结果如下图所示。至此我们借助 IAEA‑ADS 基准例题完整走完了建模、计算、结果可视化的全流程。后续章节将对各个模块的功能与原理展开详细介绍期待各位同学与我交流哦