The development of a fine mesh coupled neutronics/thermal-hydraulics framework mainly using free open source software is presented. The proposed contributions go in two different directions: one, is the focus on the open software approach development, a concept widely spread in many fields of knowledge but rarely explored in the nuclear engineering field; the second, is the use operating system shared memory as a fast and reliable storage area to couple the computational fluid dynamics (CFD) software OpenFOAM to the free and flexible reactor core analysis code milonga. This concept was applied to model the behavior of a TRIGA-IPR-R1 reactor fuel pin in steady-state mode. The macroscopic cross-sections for the model, a set of two-group cross-sections data, were generated using the Serpent code. The results show that this coupled system gives consistent results, encouraging system further development and its use for complex geometries simulations.
Milonga es un código de cálculo neutrónico que resuelve la ecuación de transporte estacionaria y multigrupo tanto mediante la formulación de difusión como la de ordenadas discretas (SN) sobre mallas no estructuradas (aunque mallas simples estructuradas son también soportadas). Ambas formulaciones pueden ser resueltas sobre esquemas de volúmenes o elementos finitos. Milonga nació como parte del desarrollo de una tesis de doctorado de ingeniería nuclear y, al ser software libre, permite que distintos colaboradores participen activamente en su desarrollo y no ser, como Stamm’ler decía, usuarios que “will never understand the programs they are to use and, as computer slaves, consider them as black boxes, blindy trusting their results” (Stamm’ler et al., 1983). La implementación del método de las características (MOC) incorpora dentro de milonga una formulación capaz de ser aplicada en cálculos de celda, rellenando la etapa faltante en cálculos de producción: celda (MOC), celda-núcleo (SN ) y núcleo (difusión). En esta primera instancia del desarrollo de formulaciones de celda, MOC fue seleccionado por sobre el método de las probabilidades de colisión debido a que éste no produce matrices densas, por lo que es posible resolver problemas con mayor cantidad de regiones. En este contexto, se desarrolló un eficiente algoritmo de ray tracing sobre mallas no estructuradas y estructuradas y un solver de potencias no lineal que, mediante la resolución de la ecuación de transporte en cada track, permite obtener el flujo escalar en cada región y grupo de energía. En este trabajo se discute acerca de la implementación del método, los resultados preliminares obtenidos y las futuras mejoras e incorporaciones.
A one-step coupled neutronic and CFD thermal-hydraulic methodology is presented. The contribution proposed goes toward the use of the computational fluid dynamics (CFD) software OpenFOAM and the flexible reactor core analysis code milonga to perform coupled calculations for advanced nuclear reactor analysis. The developed methodology was applied to simulate a fuel pin from CDTN’s TRIGA-IPR-R1 reactor and asses its behavior in steady-state mode for different power levels. A set of two-group macroscopic cross-sections data was generated using WIMSD-5B code for different expected temperatures. The results show that this coupled system gives consistent results, encouraging system further development and its use for full core simulation.
In the study, analysis and design of nuclear reactors there exist a wide variety of mathematical models that describe the different phenomena that take place in a nuclear facility. As in many other engineering fields, the corresponding equations are rather complex and require a considerable amount of both user expertise and computational effort to be successfully solved. Traditionally, there appeared some computer codes that specialized in solving a certain aspect of fission nuclear reactors such as neutronic codes, thermal-hydraulic codes, control system codes, plant codes, etc. Moreover, each discipline may be taxonomically split into further particular categories. For example neutronic codes can be aimed at lattice-level or core-level calculations, can use transport or diffusion formulations, etc. Since the dawn of the nuclear industry, a variety of codes have populated the universe of available tools we nuclear engineers have available to study, analyze and design nuclear reactors. In this article, the lessons learned in both the academia and in the nuclear industry during some years of experience are taken into consideration when defining the design basis of a new core-level neutronic code written from scratch, namely the free nuclear reactor core analysis code milonga. Some of the paradigm shifts both the hardware and software industries have had during the last years are considered into the way a modern engineering computer code should behave. The discussion includes the kind of problems that should be solved and the way the inputs are read and outputs are written. Also, implementation-related design decisions such as formats, languages and architectures are discussed. Illustrative problems are solved using the proposed project to serve as examples of desired features in modern and useful nuclear engineering codes.
The different phenomena that take place in the core of a nuclear reactor comprise a wide variety of physical aspects, which differ both in their nature as in their complexity as well. In general, these effects can be divided into four main disciplines, namely neutronics, thermal-hydraulics, plant conditions and control. Even though neutrons interact with matter in a pretty well-known way, the equations that model how they behave in a nuclear reactor derived from basic mechanistic considerations cannot be yet—and probably ever–be solved completely. And, even more, first-principle equations for turbulent two-phase flow still are not even available. Therefore, to design and analyze nuclear reactors some kind of simplifications ought to be used, which—despite its usual meaning—may still be challenging from a computational point of view. Being the equations behind these four disciplines radically different in their mathematical characteristics, there usually exist dedicated codes that solve each problem separately, especially for the most-complex tail of the spectrum of simplifications. It is therefore desired to devise a mechanism for coupling these particular codes in such a way that the different dependencies are explicitly addressed. A shared-memory-based coupling mechanism was developed in order to perform the aforementioned tasks, which is currently being used in the nuclear industry although it may have applications in other fields as well.
Traditional designs of nuclear reactor cores, both for power and research reactors, rely on expert judgment and good practices with sound theoretical and experimental backgrounds. There are, however, come cases in which the decision of which design is the best for a certain application that cannot be easily answered and an engineering design optimization scheme ought to be applied. This work addresses some simple problems in which geometric parameters should be chosen in such a way to optimize a certain objective function—for example the location of irradiation chambers or boron injection nozzles—in order to understand how the different minimization algorithms works. The objective function to optimize may refer to performance such as maximize the neutron flux at a certain location, to economics for example to reduce as much as possible the construction and/or operations costs, or to a certain combination of both aspects. In particular, only two-dimensional few-group core-level problems are described in this article, because they are simple enough to be well understood and analyzed yet at the same time they maintain the basic physics and some of the geometric complexities found in full three-dimensional cases. The methodology developed for optimizing the simple problems addressed in this work can be extended to handle real cases of interest for the nuclear industry.
The neutron diffusion equation is often used to perform core-level neutronic calculations. It consists of a set of second-order partial differential equations over the spatial coordinates that are, both in the academia and in the industry, usually solved by discretizing the neutron leakage term using an structured grid. This work introduces the alternatives that unstructured grids can provide to aid the engineers to solve the neutron diffusion problem and gives a brief overview to the variety of possibilities they offer. It is by understanding the basic mathematics that lie beneath the equations that model real physical systems that better technical decisions can be made. It is in this spirit that this article is written, giving a first introduction to the basic concepts which can be incorporated into core-level neutron flux computations. A simple two-dimensional homogeneous circular reactor is solved using a coarse unstructured grid in order to illustrate some basic differences between the finite volumes and the finite elements method. Also, the classic 2D IAEA PWR benchmark problem is solved for eighty combinations of symmetries, meshing algorithms, basic geometric entities, discretization schemes and characteristic grid lengths, giving even more insight into the peculiarities that arise when solving the neutron diffusion equation using unstructured grids.
The main objective of this monograph is to numerically solve a mathematical equation that eventually can have applications of interest—both in the academia and in the industry—to analyze, study and optimize nuclear reactors. In order to do that, we have developed a computational code named milonga which is freely distributed under the terms of the GNU General Public License. In this work, we first introduce two numerical schemes to solve the multigroup neutron diffusion equation over an unstructured mesh—one based on the finite volumes method and the other one based on the finite element method. Then we solve some simple—and others no to simple—using both schemes and we compare the obtained results. We introduce first the basic mathematical concepts related to the multigroup neutron diffusion equation and the we develop the ideas of both numerical schemes, which are the ones that are programmed in the current version of the milonga, used to solve the problems hereby discussed. The cases are presented in increasing order of complexity, paying special attention to the comparison between finite volumes and finite elements.