7. Results

The tests described in Test Report demonstrate the basic satisfaction of the design requirements of the DIF3D-ARMI integration. To better showcase the full capabilities of the DIF3D plugin, we also included a demonstration application (dif3ddemo) that performs a realistic neutronics analysis of TerraPower’s open-source FFTF isothermal benchmark model. A detailed description of this model can be found in the linked repository’s README, and in the original benchmark description [FFTF].

Warning

Due to the simple cross sections used, this section should not be treated as a true benchmark evaluation of the FFTF, but it can certainly serve as the foundation for one.

7.1. Setup

The dif3ddemo application uses the open-source Dragon plugin to compute microscopic cross sections. In order to enable the Dragon and DIF3D interfaces for this case, the following settings were added to the settings file, FFTF.yaml

dif3dExePath: path/to/dif3d
writeDif3dDb: True
dragonExePath: path/to/dragon
dragonDataPath: path/to/draglibendfb8r0SHEM361
neutronicsKernel: DIF3D-Nodal
globalFluxActive: Neutron
xsKernel: DRAGON

where path/to/X points to the location of X on the target system. The case was then run with:

> dif3ddemo run FFYF.yaml

With the above additions to the settings, the dif3ddemo application performs the following key operations:

  1. Initialize the ARMI reactor model based on the blueprints contained in FFTF-blueprints.yaml.

  2. Compute microscopic cross sections for the two cross-section regions defined in the blueprints.

  3. Perform a DIF3D global flux solve.

  4. Apply the results of the DIF3D solution to the ARMI reactor model.

  5. Write the reactor state to a database file.

In the process of performing the DIF3D global flux solve, the armi.reactor.converters.uniformMesh.UniformMeshGeometryConverter will be used to impose a uniform axial mesh upon the ARMI reactor model. This is necessary, because the as-input geometry features non-uniform axial meshes in its assembly designs, and because DIF3D requires the axial mesh to be uniform across all assemblies. When the DIF3D output is read, it is applied to this uniform-mesh reactor model, and the results are mapped back to the non-uniform, as-input mesh. Since we have set the writeDif3dDb setting to True, the DIF3D plugin will output an ARMI database storing the uniform-mesh results, which represent the results from the DIF3D output exactly. This database is useful for advanced comparison and debugging purposes, and is shown below.

7.2. System eigenvalue

Before inspecting the output databases, we can observe the standard out to find some key results from the DIF3D run:

[info] Found DIF3D output with:
        | keff= 0.9902642277622886
        | Dominance ratio= 0.0
        | Problem type= KEFF
        | Solution type= REAL
        | Restart= 0
        | Convergence= CONVERGED

Most notable is the reported system eigenvalue of 0.99026, which is 974 pcm below the published benchmark value of 0.99930 +/- 0.0021. This discrepancy is unsurprising, considering the rudimentary nature of the 0-D cross section treatment that is implemented in the Dragon plugin, which in particular is known to give suboptimal cross sections especially for the reflectors and shields.

7.3. Global flux distribution and reaction rates

Inspecting the global flux distribution and a handful of key reaction rates was done before and after the mesh conversion between the uniform axial mesh that DIF3D uses and the as-input, non-uniform axial mesh. In all of the figures that follow, we show a planar cut through the reactor geometry that is shown in Fig. 7.1. This particular plane was chosen because it passes through the active core and several non-fuel assemblies.

_images/fftf-layout-cut.png

Fig. 7.1 Core layout of the FFTF reactor, as configured for the benchmark. The red line indicates the plane along which subsequent data are extracted. The core layout image was produced using ARMI’s built-in grid editor.

Fig. 7.2 shows the total flux distribution on both meshes for the plane cut described above. A notable feature of the remapped flux in this case is the considerable amount of flux smearing in the in-core shim (ICS) assembly, which is very roughly-meshed in the input specifications. In circumstances where accurate flux (or any other parameter) values are needed, the axial mesh for this assembly would need to be refined.

_images/totalFlux.png

Fig. 7.2 Total neutron flux distribution on the as-input mesh (right), and the ARMI-converted uniform axial mesh (left). The uniform axial mesh flux is the same geometry that DIF3D uses, and the flux is directly read in from the DIF3D output. The non-uniform mesh stores flux values that ARMI has mapped back to the original mesh.

Fig. 7.3 shows the total absorption rate within each block. Unlike the flux itself, which is mapped directly between grids, reaction rates such as this one are computed on the as-input mesh using the remapped flux and the macroscopic cross sections for the reaction of interest for each block.

_images/rateAbs.png

Fig. 7.3 Total absorption rate.

7.4. Flux spectra

Two flux spectra were measured in the FFTF reactor and reported in [FFTF], at the core midplane, and 80cm below the core midplane by detectors located in the in-reactor thimble assembly. In addition to those measured experimentally, spectra were computed using MCNP, also reported in [FFTF]. Fig. 7.4 and Fig. 7.5 plot the measured and MCNP-computed spectra against the spectra computed by ARMI-DIF3D. In all cases, the spectra are normalized to a peak flux value of unity; this rudimentary normalization approach was chosen due the large difference in energy bin width and total energy domain between ARMI’s default 33-group energy structure and the group structure reported in [FFTF].

In general, the ARMI-DIF3D results show good agreement with the MCNP results. However, especially in the lower axial region, both MCNP and ARMI-DIF3D predict a harder spectrum than was measured. This discrepency was not analyzed further in this project. In general, the ARMI-DIF3D spectra agree relatively well with the MCNP spectra, though some of the flux peaks are poorly represented.

Employing a finer group structure should better resolve these. However, the Dragon code used to produce the cross sections for this case is not conducive to much-finer energy group structures. Future work to produce an MC²-3 ARMI plugin will permit such fine-group cross-section libraries.

_images/midplane_flux.png

Fig. 7.4 Flux spectra at core midplane in the in-reactor thimble assembly. ARMI/DIF3D spectrum is compared against the published experimental and MCNP-calculated spectra.

_images/lower_flux_1.png

Fig. 7.5 Flux spectra at 80cm below the core midplane in the in-reactor thimble assembly. ARMI/DIF3D spectrum is compared against the published experimental and MCNP-calculated spectra.

FFTF(1,2,3,4)

https://digital.library.unt.edu/ark:/67531/metadc1013078/