1. Introduction
Many countries consider nuclear technologies as a key to getting to ‘net-zero’ and to the future of science, technology, and medicine. Not only is the production of electricity and heat from nuclear power plants important and critical, but there is also an equal and growing need to produce radioisotopes for cutting-edge cancer therapy, to develop and test new materials, etc. With the expected increase of new nuclear deployments, it is also very desirable to improve analysis methods for nuclear reactors. However, the introduction of new codes or methods requires extensive experimental studies for validation purposes. As it is typically challenging to conduct experiments with a nuclear reactor, today’s analyses are mainly based on extensive coupled modeling of neutronics and thermal hydraulics during nominal operation, as well as in accidental scenarios. For the assessment of entire facilities, so-called system codes like RELAP [
1] and CATHARE [
2] are used to model extensive thermal–hydraulic systems and to provide safety-related information. Although these codes can accommodate the safety needs of nuclear reactors, a compelling train of thought leads to the appropriateness of using computational fluid dynamics (CFD) for a three-dimensional and more realistic assessment of specific areas/components of interest in the reactor. CFD code-to-experiment validation is already being used in many non-nuclear-related applications [
3,
4]. Although not a fully new approach, CFD can provide more details and, therefore, a better understanding of complex phenomena in nuclear reactors. Hence, a broader use of CFD for reactor analyses is desirable. To exploit its full potential for nuclear reactor applications, CFD must be validated using experimental data from different reactor types and various thermal–hydraulic regimes [
5].
For this purpose, but also to characterize the primary circuit as a thermal system, an experiment was performed in March 2023 at the McMaster nuclear reactor (MNR), a research reactor capable of conducting experiments within the reactor core itself. The experiment initially aimed to measure the temperature feedback coefficient due to an increasing pool temperature in the framework of the IAEA coordinated research project (CRP) “Development of neutronic and thermal-hydraulic coupled calculational methodologies for research reactors including treatment of uncertainties” [
6]. To do this, the reactor was operated at full power without the secondary coolant pumps being turned on. This was possible until the pool temperature reached the maximum allowed, as stated in the safety operations envelope [
7]. As the core and pool were very well instrumented for this experiment, other phenomena could be measured, too. Here, the mixing of the coolant with different temperatures inside the pool was investigated. With thermocouples in different positions, the mixing was experimentally measured. These results are compared with CFD simulations using Ansys CFX [
8].
2. McMaster Nuclear Reactor (MNR)
The McMaster nuclear reactor (MNR) is Canada’s most powerful research reactor, located in and operated by McMaster University in Hamilton, Ontario [
9]. It was built in the 1950s and achieved its first criticality in 1959. Today, the MNR is one of the world’s leading facilities for the production of medical radioisotopes, especially iodine 125. The neutrons obtained from the MNR’s beam tubes are currently utilized for various purposes, such as neutron radiography and neutron diffraction experiments. The MNR is a pool-type material test reactor cooled and moderated by light water. The reactor consists of six control elements (a control element is a fuel element that contains a control rod in addition to nine fuel plates) and around 30 standard fuel elements (a standard fuel element contains 18 fuel plates, of which 16 are actually fuel plates and 2 are dummy plates) in a typical core loading. The control fuel elements house control rods, of which five are made of Ag-In-Cd and are used for macroscopic reactivity control, while the sixth is used for automatic control and is made of stainless steel. There are multiple positions for material irradiation inside the reactor core.
Currently, the reactor operates with a thermal power of 3 MW on a 24/5 schedule, with a power upgrade to 5 MW in planning. In the long run, even a 24/7 operation is considered to significantly boost the output of radioisotopes. A U
3Si
2 dispersion fuel with an enrichment of 19.75% is used. The reactor pool consists of two adjacent parts: pool 1 and pool 2 (see
Figure 1). The reactor core and beam tube installations for scientific experiments are located in pool 1. The diffusor from which the coolant water reenters the pool is located in pool 2. Additionally, pool 2 offers housing for irradiated components and storage for spent fuel. A 10-m-high reinforced concrete structure provides structural integrity and biological shielding. In this CAD model created by using SolidWorks 2023, as explained in
Section 3, the core itself is reduced to a red cuboid, for which water is assigned as a material. In reality, the MNR core consists of a 9 × 6 grid that contains 32 fuel assemblies, 7 graphite reflector assemblies, 6 control fuel assemblies, 1 beryllium reflector assembly, and 8 empty water sites. A typical fuel assembly is shown in
Figure 2. A side view is shown in
Figure 2a, while a top view, showing each fuel plate, is shown in
Figure 2b.
5. Modeling Approach
The CAD model of the MNR pool (see
Figure 1) was built in SolidWorks [
10] based on technical drawings. The general model contains the two pools and the core. Based on the goal of this transient, the CAD model was simplified assuming the following points:
The pool installations are omitted. This assumption is expected to lead to somewhat different flow patterns compared to reality, since the water flows from the inlet, into the pool, and then to the outlet of the reactor. Thus, the CFD simulations are expected to show simplified flow patterns, including less mixing than in reality.
The width of the gate that separates the two pools is assumed to be constant while preserving the flow area of the real one. In reality, the gate is broader at the top than at the bottom.
Due to the nature of the transient and its long duration, the reactor core is not modeled explicitly to save computational resources (see
Section 2). This also implies that no heat is deposited in the core. The heat deposited in the pool is taken into account by the inlet temperature boundary condition, which follows the outlet temperature of the heat exchanger.
The concrete containment of the pool is not taken into account in the transient, as it is assumed to play a negligible role in this experiment [
14].
Due to the simplified modeling approach of the core, the results presented here only strengthen the case for the use of CFD to correctly capture fluid mixing and turbulence in the most common industrial approach (RANS). However, it cannot be used to push forward the validation of CFD for heat transfer within the reactor core, as, in these simulations, the heat was set as a boundary condition in the coolant inlet following the measured profile.
5.1. Mesh
A mesh sensitivity analysis was performed to find a suitable computational mesh with a y+ value larger than 40 in order to ensure the wall function usage in CFX. For a simple transient case, the boundary conditions included a mass flow of 126 kg/s and a constant inlet temperature of 20 °C. The total time for the transient was 30 s. The time step used for the analysis was 0.5 s for the first 5 s and 5 s for the remaining time. The number of nodes, element quality, and Courant number for each mesh are summarized in
Table 1. Based on the high minimum element quality and relatively low maximum Courant number, we concluded that the mesh used in Case 2 would provide a reasonable ratio between quality and computational effort. Therefore, this mesh was used for further calculations. It is important to note that the same y+ > 40 was used for all the cases shown in
Table 1. The average y+ for the domain was 150. A graphical representation of mesh 2 in different parts of the model is shown in
Figure 4.
5.2. Boundary Conditions
As already mentioned, the coolant inlet is located in pool 1 and the outlet in pool 2, just below the reactor core (see
Figure 1). The mass flow of water used at the pool inlet is 126 kg/s, which was experimentally measured during the experiment, while the outlet pressure is set to 1.8 bar, a value that originates from MNR internal reports [
7]. For the pool temperature transient simulation, the experimentally measured time-dependent temperature profile at the outlet of the heat exchanger was used as a boundary condition at the inlet. The profile used is shown in
Figure 5.
Furthermore, an adiabatic free-slip wall boundary condition was used at the top surface of the pool, and an adiabatic no-slip wall boundary condition was used on the walls that would be in contact with the concrete housing. All walls were assumed to be hydraulically smooth, as wall roughness was assumed to play a negligible role in these simulations. No power is deposited in the core in this model, since the heat that the core deposits into the pool is already taken into account by the experimentally measured inlet temperature profile (shown in
Figure 5). The IAPWS steam tables were used for the water properties [
15].
Prior to the pool mixing experiment at the MNR, the pool inlet temperature was gradually decreased over the course of 4 h from 28 °C to the lowest possible temperature, which corresponds to roughly 18 °C. Therefore, to simulate the experiment as accurately as possible, a preliminary calculation was performed, which will be described in very little detail here, as it is the focus of an ongoing publication [
14]. This calculation was initialized with a homogeneous pool temperature of 28 °C, while the experimentally measured decrease in the inlet temperature was set as a boundary condition. This simulation led, on average, to a lower temperature as well as to the already mentioned stratification. A contour plot of the results yielded by the preliminary calculation is shown in
Figure 6, where the flow stratification can be seen. The pool mixing transient, which is the focus of this paper, was initialized with the results of this previous cooling-down phase, as shown in
Figure 6.
The transient was run for 23,400 s (6.5 h), with a time step of 0.2 s for the first 20 s of the transient and 2 s for the remaining transient time. The results file, consisting of chosen variables, such as velocity, density, temperature, etc., was saved every 30 s. The total run time for this transient was 15,775 CPU hours. The residuals converged to smaller than 1 × 10−5.
6. Results and Discussion
The temperature data measured by the installed thermocouples were compared to the data calculated by CFD for each thermocouple. The results are shown in
Figure 7a–f. The maximum temperature calculated by CFD for each thermocouple matched very well with the measured values. The temperature calculated by CFD in the first 0.5 h of the transient was rather constant at 18.6 °C, with only small fluctuations in all thermocouple positions compared to the experimental values. The slope of the heating and cooling curves measured in the experiment was slightly nonlinear. However, this nonlinearity could not be reproduced by CFD. All the temperatures calculated in the thermocouple positions by CFD showed a slower increase during heating and cooling. This could be attributed to the fact that the various pool installations are not modeled in CFD. This means that the flow path calculated by CFD is shorter than in reality. Therefore, the water exits the computational domain faster than it would have done in the experiment. An additional reason could be that the reactor core and fuel elements were not explicitly modeled in CFD.
Figure 8a shows the time evolution of the water temperature at the core inlet for both the experiment and CFD. In addition to the difference in slope between the experiment and CFD during the heating and cooling observed for the thermocouples (see
Figure 7), the broader peak measured in the experiment could not be reproduced in CFD. In reality, the core does not react immediately to the pool inlet temperature drop due to the thermal inertia of the pool installations. Also, the feedback from the neutronics due to the cooler coolant and the subsequent control adjustments are not modeled here, since the core is not modeled in CFD. Therefore, a sort of delay cooling can be observed in the experiment once the secondary pumps are turned back on.
Figure 8b shows the comparison between the experiment and CFD regarding the RTD position temperature, together with a comparison between the average temperature measured by the thermocouples in the experiment and the average calculated temperature in CFD. The RTD is located vertically farther away from the core, about 1.5 m (see
Figure 3a,b). When the pool inlet temperature declines drastically, the warm water moves toward the pool surface due to density changes. Therefore, the RTD’s reaction to the cooling down is somewhat delayed. This can be seen in the experimental results. Even though there is a small broadening of the peak in the CFD results, the response of the RTD temperature to the cooling is faster than in the experiment.
To better visualize the change in pool temperature, the derivatives of the core inlet temperature and the average thermocouple temperature are shown in
Figure 9a,b, respectively. For the first 0.5 h, the temperature derivative at the core inlet is very similar between the CFD and the experiment. After 0.5 h, the core inlet temperature measured in the experiment increases faster than the one calculated by CFD. At about 2 h, the rate of temperature change in the experiment reaches a plateau at about 5.3 °C/h. In the CFD results, the heating rate slows down to around 5.5 °C/h.
At
t = 3 h, the secondary heat removal system restarts, and therefore, the pool inlet temperature decreases. This is reflected in
Figure 9a by the steep decrease in the temperature derivative. Since the core is not modeled in CFD, the derivative of the core inlet temperature calculated by CFD (black curve) declines faster than that from the experiment. The derivative of the core inlet temperature from the experiment (red curve) is slower to react to the restart of the secondary heat removal system due to the thermal inertia of the core. At the end of the transient, the rate of cooling for both the experiment and CFD is the same. A similar situation is depicted in
Figure 8b for the derivative of the thermocouples’ average temperature.
The experimental values of both the core inlet temperature and the average thermocouple temperature drop further down, which strengthens the point that the missing thermal inertia in the CFD simulations is responsible for most of the differences between the simulation and the experiment.
Figure 10 shows the area-averaged water temperature calculated at different heights from the bottom of the pool. From the beginning of the transient until
t = 0.75 h, the averaged water temperature reflects the initial conditions of the pool stratification, with the temperature being higher at the top of the pool and lower at the bottom. During the heating cycle, the average water temperatures are consistent at all heights of the pool. Additionally, the time evolution of the average temperature is identical at all heights. When the secondary cooling restarts at
t = 3.23 h, the warm water, once located at the bottom of the pool, moves to the top due to density changes, and colder water coming into the pool inlet occupies its place.
Figure 11a–j show the water temperature at an xy-plane cutting through the inlet at different time steps. The contours in
Figure 11a–c show the pool temperature during the heating cycle. The temperature contours during the cooling down are shown in
Figure 11d–j. During the heating cycle, the water mixing is very efficient and rather homogeneous (as also seen in
Figure 6) since the heating occurs gradually. However, the cooling is rather abrupt, which leads to non-homogeneous water mixing, especially at
t = 3.33 h and
t = 3.88 h, also shown in
Figure 11e,f. In the last 2 h of the transient, the temporal evolution of the inlet temperature is slower, which implies better mixing. At the end of the transient, more than half of the bottom part of the pool has a constant temperature of roughly 21 °C, as shown in
Figure 11j.
The temperature contours at a plane cutting through the core are shown in
Figure 12a–j for the same time steps as in
Figure 11. It can be concluded that the temperature contours at a plane cutting through the core, as shown in
Figure 12a–j for different time steps, yield the same results. The wave-like pattern observed in the middle of the pool during the cooling down phase is due to the pool inlet’s structure and location. The cold water entering the pool is distributed around the diffusor, which is located near the pool walls on one side. As a result, the cold water collides with the concrete walls, causing a wave-like structure. This “wave” is almost nonexistent at the end of the transient, as shown in
Figure 12j. A more detailed view of this wave is shown with contours in
Figure 13a during the heating and
Figure 13b during the cooling.
The 3D flow pattern is shown in
Figure 14 for
t = 1.388 h and
t = 3.88 h at a plane cutting through the core. As seen in
Figure 14, severe mixing occurs at all heights of the pool at
t = 1.388 h, while at
t = 3.88 h the warmer water has moved to the upper part of the pool and the mixing occurs at the pool bottom.
Taking into account all the results shown in the previous figures, it can be stated that CFD manages to capture well the events of the pool mixing experiment at the MNR. This conclusion is drawn after taking into account the simplifications made to the model geometry, such as not modeling the core explicitly and not including the concrete containment and other thermal inertia. An additional point to be made is the fact that in the present work, no uncertainties are calculated nor stated regarding the experimental results. However, due to the equipment used, the experimental uncertainties are expected to be in the range of 3–5%, but data processing is still ongoing. For a more detailed representation of the pool experiment with CFD, the model would have to take into account the core and the concrete housing of the pool. However, such a task is cumbersome and impractical for a 7 h transient with a multimillion-node mesh. Therefore, the CFD modeling can be focused on a fraction of the pool experiment in the future.