Coupled OpenFOAM and OpenMC for high-fidelity multiphysics reactor core simulations

ARDOR members: Lance Bullerwell, Jason Hou

The main issue with Monte Carlo-CFD coupling is the computational cost, both due to the cost of running the individual solvers and due to inefficiencies in the coupling algorithms typically implemented. To address this need, an external coupling was performed between OpenMC and OpenFOAM, with a focus on the efficiency of the coupling mechanism between the codes. The code used a Picard iteration with a Robbins-Monro type power relaxation was implemented to make sure the power distribution results from early iterations are accounted for in later iterations. In addition, a novel adaptive batching method was used to further improve the code efficiency.

Workflow of OpenFOAM/OpenMC coupling.

For testing, a 17×17 Pressurized Water Reactor (PWR) test case was run at Hot Full Power (HFP) from the CASL progression problem 6 and was compared to results for the CASL VERA code. The plot below shows the radial power distribution at mid-channel height and the table below showing comparisons between the VERA results and this work’s results shows good agreement between the two.

Power distribution within PWR assembly obtained from the multiphysics simulation.

The Following table shows the result for algorithm efficiency for a smaller test problem. The adaptive batching method was seen to be roughly 15% more efficient than the traditional Robbins-Monro power relaxation. The unrelaxed Picard iteration did not converge in the max simulation runtime, but was at least an order of magnitude less efficient.

Picard IterationPower RelaxationAdaptive Batching
>240:00:0039:28:4333:57:58
Comparison of wall-clock time of three iteration schemes.

This coupling scheme was later extended and customized for the high-fidelity simulation framework ENRICO. The Exascale Nuclear Reactor Investigative COde (ENRICO) was developed as part of the Exascale Computing Project. This code was designed as an open-source framework for performing internal coupling between neutronics codes and thermal-hydraulics codes, designed to be able to be run efficiently on any level of parallel architecture. The framework was not designed for specific single physics solvers, instead being developed to allow for easy coupling of new solvers into the ENRICO framework. The code was developed with virtual driver classes for neutronics and thermal-hydraulic solvers which defines the interface for the coupling and concrete classes from these templates are created based off which solvers are chosen at runtime. This allows for the different solvers that have been implemented in ENRICO to be swapped in and out at runtime with ease. Currently, Shift and OpenMC have been coupled into ENRICO for Monte Carlo neutronics results and Nek5000 and OpenFOAM have been coupled into ENRICO for thermal-hydraulics results.

ENRICO Class Hierarchy Structure.

References

  1. L.E. Bullerwell (2020). A Multiphysics Coupling Scheme between OpenMC and OpenFOAM for High-Fidelity, Flexible Multi-Physics Analysis of Nuclear Reactors. Master Thesis. North Carolina State University.
  2. L. Bullerwell, P. Shriwise, P. Romano, R. Rahaman, J. Hou. (2021) Development of an OpenFOAM Interface For ENRICO. International Conference on Mathematics and Computation applied to Nuclear Science and Engineering. Oct 3-7, 2021, Raleigh, NC.