Elsevier

Annals of Nuclear Energy

Volume 82, August 2015, Pages 90-97
Annals of Nuclear Energy

OpenMC: A state-of-the-art Monte Carlo code for research and development

https://doi.org/10.1016/j.anucene.2014.07.048Get rights and content

Highlights

  • OpenMC is an open source Monte Carlo particle transport code.

  • Solid geometry and continuous-energy physics allow high-fidelity simulations.

  • Development has focused on high performance and modern I/O techniques.

  • OpenMC is capable of scaling up to hundreds of thousands of processors.

  • Other features include plotting, CMFD acceleration, and variance reduction.

Abstract

This paper gives an overview of OpenMC, an open source Monte Carlo particle transport code recently developed at the Massachusetts Institute of Technology. OpenMC uses continuous-energy cross sections and a constructive solid geometry representation, enabling high-fidelity modeling of nuclear reactors and other systems. Modern, portable input/output file formats are used in OpenMC: XML for input, and HDF5 for output. High performance parallel algorithms in OpenMC have demonstrated near-linear scaling to over 100,000 processors on modern supercomputers. Other topics discussed in this paper include plotting, CMFD acceleration, variance reduction, eigenvalue calculations, and software development processes.

Introduction

OpenMC is a relatively young Monte Carlo particle transport code, having been developed starting in 2011 and first released to the public in December 2012. While the code does not benefit from decades of experience and feedback from users as do other popular Monte Carlo codes such as MCNP (Brown et al., 2010) and TRIPOLI (Diop et al., 2007), it nevertheless possesses a number of features that may be very attractive to both users and developers.

Development of OpenMC was spearheaded by the Computational Reactor Physics Group (CRPG) at Massachusetts Institute of Technology (MIT) as part of a project to develop scalable parallel algorithms for future exascale supercomputers. While this was the original focus of the code development efforts, there are now a wide variety of research and development efforts underway using OpenMC (Romano et al., 2013b, Nelson and Martin, 2013, Siegel et al., 2013, Siegel et al., 2014b, Siegel et al., 2014a, Forget et al., 2014). In the last year, the development team has also grown to span multiple organizations.

Various aspects of the OpenMC code have been described previously (Romano and Forget, 2013, Romano et al., 2013a). However, due to the developmental nature of the code, many changes have been, and continue to be, made. The objective of the present work is to give a fairly complete and up-to-date overview of the present capabilities and features of OpenMC.

Section snippets

Physics

At the present time, OpenMC is capable of simulating only neutrons either in fixed source1 or k-eigenvalue problems. The data governing the interaction of neutrons with various nuclei are represented using the ACE format (X-5 Monte Carlo Team, 2008) which is also used by MCNP and Serpent (Leppänen, 2012). ACE-format data can be generated with the NJOY nuclear data processing system (MacFarlane et al., 2012) which converts raw ENDF/B data

Design and development

OpenMC is written in standard Fortran 2008. While C and C++ were considered as other possible languages for development, ultimately Fortran 2008 was chosen due to MIT’s research focus on parallel algorithms coupled with the availability of co-array features in the Fortran 2008 standard. For input processing, OpenMC relies on the FoX XML library (Walker, 2014) which provides a complete implementation of the W3C document object model (DOM). Almost all important data are encapsulated in derived

Licensing

OpenMC is licensed under the MIT/X open source license. This permissive license allows any user to copy, modify, redistribute, and even sell the software if they so wish. Unlike copyleft licenses such as the GNU General Public License, it does not require that modifications to the code be released under the same license, and thus commercial entities are free to use any part of the code within their own proprietary software without having to release it for free.

Conclusions

OpenMC has been developed from scratch with a focus on high-performance algorithms and modern software development practices. While the code is relatively young, it is already being used in a number of advanced R&D projects including the Consortium for Advanced Simulation of LWRs and the ANL Center for Exascale Simulation of Advanced Reactors. OpenMC is available as free software under an open source license, enabling wider collaboration within the nuclear science and engineering community.

Acknowledgments

This research was performed under appointment of the first and third authors to the Rickover Fellowship Program in Nuclear Engineering sponsored by Naval Reactors Division of the U.S. Department of Energy. This work was also supported in part by the Consortium for Advanced Simulation of Light Water Reactors, an Energy Innovation Hub for Modeling and Simulation of Nuclear Reactors under U.S. Department of Energy Contract No. DE-AC05-00OR22725, and by the Office of Advanced Scientific Computing

References (37)

  • Diop, C.M., Petit, O., Dumonteil, E., Hugot, F.X., Lee, Y.K., Mazzolo, A., Trama, J.C., 2007. TRIPOLI-4: A 3D...
  • Horelik, N., Herman, B., Forget, B., Smith, K., 2013. Benchmark for evaluation and validation of reactor simulations...
  • ISO/IEC JTC1/SC34, 2008. Information technology – document schema definition language (dsdl) – part 2:...
  • Kelly, D.J., Sutton, T.M., Wilson, S.C., 2012. MC21 analysis of the Nuclear Energy Agency Monte Carlo performance...
  • Kitware, Inc., 2010. VTK User’s Guide, 11th...
  • S. Koranne

    Hierarchical data format: 5 HDF5

  • Lee, M.J., Joo, H.G., Lee, D., Smith, K., 2012. Monte Carlo reactor calculation with substantially reduced number of...
  • J. Leppänen

    Serpent – A Continuous-energy Monte Carlo Reactor Physics Burnup Calculation Code, User’s Manual

    (2012)
  • Cited by (0)

    View full text