说明
本篇文章简要介绍使用NATF来进行基于网格的计算停机剂量率的流程。本流程需要提前安装DAGMC, ALARA, PyNE, NATF。
使用NATF计算基于网格的停机剂量率,其内核是PyNE R2S流程,只是通过ptrac代替DAGMC的Ray tracing获取网格栅元体积份额。这样可以不用DAGMC模型,而是使用已经存在的MCNP模型进行计算。主要步骤包括:
- 中子通量计算:计算指定区域的175群中子通量
- ptrac计算:在指定区域均匀抽样粒子,统计粒子的位置及所在栅元信息,用于获取网格栅元体积份额
- 活化计算:包括活化文件生成及ALARA活化计算
- 光子输运计算:光子输运获取停机剂量率
中子通量计算
使用NATF mesh R2S流程,我们需要中子输运计算得到的两个文件:
- outp : MCNP输出文件,里面包含栅元、材料信息
- meshtal : 网格计数输出文件,包含fmesh结果
注意:我们需要outp中的栅元、材料信息,因此中子输运输入文件中,需要使用PRINT关键字
Ptrac计算
Ptrac计算用于在指定区域均匀抽样,记录每个源粒子的位置及栅元信息。然后根据源粒子所在网格来统计每个网格单元的栅元体积份额。注意事项:
- 每个网格单元尽量覆盖1e3以上粒子
- ptrac输出文件格式选择bin
活化计算
进行停机剂量率计算,我们需要的主要信息包括:
- 每个网格单元的材料成分。必须项。由ptrac及outp计算获取。
- 每个网格单元的中子通量能谱。必须项。由meshtal文件提供。
- 活化计算能力。必须项。由Analytic and Laplacian Adaptive Radioactivity Analysis软件:ALARA提供。
- 辐照及冷却方案。必须项。需要在config.ini中指定。
在我们的工作文件夹下新建一个子文件夹用来存放R2S计算相关的文件。
1 | mkdir r2s_run |
初始化配置:setup
初始化配置r2s。执行:
1 | natf_r2s.py setup |
执行之后我们应该能够看到下面的信息:
1 | # 一些warning |
修改配置文件
setup这一步会生成两个文件:config.ini和alara_params.txt,我们需要修改这两个文件中的一些设置,包括辐照方案的设置和一些计算细节的设置。
修改config.ini设置
一般情况下,我们需要注意的几个设置是:
- structured: 是否是结构化网格。结构化网格就是指MCNP中用的xyz或cyl网格。我们应该选True
- sub_voxel: 是否采用sub_voxel模式,sub_voxel模式是我正在添加的代码,还没有完成,暂时不能选用,因此是False
- reverse: 反转中子通量顺序。MCNP输出的中子通量是按照从低能到高能排序,而用ALARA进行活化计算时需要按照从高能到低能读取,因此需要把中子通量逆序排列。这里填True。
- outp: MCNP outp文件
- ptrac: MCNP ptrac文件
- geom: DAGMC加载材料后的几何文件。如果使用MCNP几何文件,则此处空着。
1 | [general] |
修改alara_params.txt
1 | material_lib alara_matlib |
r2s.py step1
r2s.py step1是用来根据r2s.py setup生成的配置文件生成ALARA输入文件,中子通量文件和ALARA材料库文件的。
当我们修改好上面两个文件后,就可以使用r2s.py生成ALARA计算需要的文件了:
1 | r2s.py step1 |
材料数据库处理
ALARA输入文件中有三行是材料数据库相关的信息。
- material_lib alara_matlib 这个alara_matlib是alara需要读取的材料成功定义的文件名。
- element_lib data/nuclib 这个文件是定义元素的丰度用的。
- data_library alaralib data/eaf2010bin
注意:生成的alara_matlib文件中,可能包含数据库中不识别的k:40核素,需要手动去除。
alara计算
当step1完成后,程序会给出运行alara的提示,按照提示运行:
1 | alara alara_inp > output.txt |
等待alara运行完成,会生成几个文件:
- output.txt: ALARA输出文件,里面有活化后材料的核素组成以及光子发射率数据
- phtn_src: ALARA输出文件,里面有详细的各个各个材料各个核素缠身的各个能群的光子数据
r2s step2
ALARA计算完成后,运行:
1 | r2s.py step2 |
执行完成后,我们可以看到工作文件夹中多了几个文件:
- phtn_src.h5: HDF5格式的光子源数据
- source_i.h5m: 第i个冷却时间点的网格光子源数据。
- total_photon_source_intensites.txt: 里面是各个冷却时间节点的总光子发射率。
光子输运
将MCNP输入文件修改为适合光子输运的文件:
- 去掉原来的SDEF卡
- 添加idum卡,定义光子抽样参数
- 添加停机剂量率计数卡
然后进行光子输运计算得到停机剂量率结果。
备注:在计算得到结果之后,还可以把几何图形及计算结果的网格数据进行可视化绘图。
绘图方法可以参考DAGMC数据绘图。