CORE SIM+: A flexible diffusion-based solver for neutron noise simulations

The paper presents CORE SIM+, a tool developed for diffusion-based neutron noise simulations. The simulator is based on the 3-dimensional, two-energy group neutron diffusion equation in the frequency domain. The tool includes the necessary solvers to calculate the criticality problems associated with the system and then the response to a variety of perturbations such as absorbers of variable strength, perturbations travelling with the coolant ﬂow and vibrations of core components. Numerical methods suitable for different types of problems have been implemented. A capability that allows to apply non-uniform computational meshes is available so that the discretization of the domain can be optimized with respect to the characteristics of the neutron noise sources. The simulator can generate neutron noise databases for nuclear power reactors via the Green’s function method in a fully automated manner. These databases can be useful when studying the neutron noise response in a reactor and when training machine learning algorithms for core monitoring and diagnostics. As part of the veriﬁcation process, the CORE SIM+ response of a realistic reactor model to a given perturbation at various frequencies is used to estimate the corresponding point-kinetic component, compared to an exact analytical expression. In addition, the Green’s function generator is used to calculate the response of a system to a fuel cell vibration. The solution is then compared to the one of the direct solver of CORE SIM+. As part of the validation work, a neutron noise experiment with vibrations of fuel rods is simulated, showing a reasonable agreement with the measurements. A representative neutron noise database generated for a generic pressur-ized water reactor is described. From the database the simulations of fuel assembly and core barrel vibrations are chosen as illustrative


Introduction
Safe and reliable operations of a nuclear power plant require a proper core monitoring and diagnostic system.A powerful approach for this purpose is based on the analysis of the socalled reactor neutron noise (Williams, 1974;Thie, 1981;Pázsit and Demazière, 2010;Demazière et al., 2018).In a nuclear reactor core, the small stationary fluctuations of the time series recorded by the neutron detectors, i.e. the reactor neutron noise, allow to identify phenomena that might become problematic during plant operation.Such phenomena include, for instance, disturbances in the reactor coolant flow and vibrations of reactor vessel internals.
Neutron noise-based techniques for core monitoring and diagnostics have the advantage to be applicable on-line without interfering with the normal operation.An important step in this process is the modelling of the reactor transfer function that gives the response of the system to a perturbation.On one hand, the reactor transfer function is needed to simulate and investigate the reactor behavior with respect to different neutron noise sources.On the other hand, it can be used to build inverse methods for the identification of the type and the location of the perturbations from the neutron flux measurements.
Models of the reactor transfer functions that have a high degree of flexibility and provide computational results in short times, are valuable for different types of tasks.Examples are the design of neutron noise experiments, the generation of synthetic training data for machine learning algorithms applied to the inversion of the transfer function, or preliminary analyses of neutron noise scenarios in a nuclear power reactor.The development of the neutron noise simulator CORE SIM+ was driven by the need to calculate the response to different neutron noise sources, in nuclear reactors with different designs, without large computational burdens.The simulator, which capitalizes on the multi-purpose neutronic tool CORE SIM (Demazière, 2011), makes use of the 2-energy group neutron diffusion model.The dynamic equations are derived in the frequency domain and solved only for the frequency of the neutron noise source (described as stationary fluctuations of macroscopic neutron cross sections).Linear theory is used, assuming that the perturbations and their effects are small in comparison with the corresponding static values.This choice avoids lengthy simulations that would otherwise arise from a time-dependent approach.Depending on the problem of interest, different solution methods and non-uniform computational meshes can be selected for effective numerical performances and accuracy.The flexibility of the simulator is also due to the possibility of evaluating the effect of any neutron noise source via the method of Green's function.

Annals of Nuclear Energy
The current paper is structured as follows.Section 2 gives an overview of the equations and methods implemented in CORE SIM+.Section 3 discusses the verification and validation efforts.Section 4 demonstrates the flexibility of CORE SIM+ with the generation of an extensive neutron noise database for a generic pressurized water reactor.In Section 5, the conclusions are drawn.

Models and numerical methods
The neutron noise simulator CORE SIM+ is based on a twoenergy group diffusion model.The calculation scheme first requires the solution of the criticality problem associated with the system under study.After the critical neutron flux is determined, the neutron noise is obtained from the dynamic equations in the frequency domain.
CORE SIM+ includes new features to optimize both steps of a neutron noise simulation, allowing the modelling of a wide range of neutron noise sources in an efficient manner.The most important of the new features are the non-uniform spatial mesh, the efficient matrix/vector construction, the efficient numerical solvers combined with acceleration methods and the automated generation of the reactor Green's function.These features along with the governing equations are discussed in the following paragraphs.Details of the models and their derivation, and the numerical methods can be found in Demazière (2011) and Mylonakis et al. (2020).

Neutron noise model
For the calculation of the critical neutron flux in a nuclear reactor, CORE SIM+ uses the standard set of static 3-dimensional, 2energy group neutron diffusion equations, i.e.: The simulator also solves the associated adjoint problem which is defined as: Considering a neutron noise source in the critical system, the induced neutron noise is evaluated with the following dynamic equations in the frequency domain and in linear theory: The neutron noise source on the right-hand side of Eq. ( 3) is modeled as small fluctuations of the macroscopic cross sections, i.e.
As shown in Eq. ( 4), the neutron noise calculation requires the critical flux obtained from Eq. ( 1) through the terms / crit f ; / a and / r .The complex components R crit dyn and / crit f as well as the real ones / r and / a are defined in Appendix A.

Spatial discretization
The physical system is discretized using a rectilinear grid whose node sizes are provided by the user as input information.This choice has the advantage that a finer resolution can be defined for specific regions, e.g.areas where perturbations are defined and the gradient of the neutron flux is strong, while coarser cells are held for those regions where the spatial variation of the system properties and of the neutron flux is less remarkable.This allows optimizing the computational effort, as compared to the case of uniform fine mesh applied to systems with sharp heterogeneities both in static and dynamic data.
The 1-D grid shown in Fig.
( 1) is used to illustrate the discretization of the equations.Coolant speed The equations are averaged over each of the cells/nodes of the grid and are written in finite-volume form.For the cell n, the generic cross section R and the scalar neutron flux / are respectively averaged as: where g denotes the neutron energy group and Dx n is the size of the cell n.The diffusion operator is approximated according to a finite difference scheme as follows: 1 where a g;n ; b g;n ; c g;n are the coupling coefficients.Two options are provided for the boundary conditions.The first option is the Marshak boundary condition, which in the case of multigroup diffusion theory, reads as: x being the outward normal to the boundary, and / b g the scalar neutron flux at the boundary.The second option corresponds to the reflective boundary condition that reads as: The expressions of the coupling coefficients a g;n ; b g;n and c g;n for a non-uniform mesh are listed in Table (1).In the case of reflective boundaries, the expression of a g;n for the left and right boundary nodes consists of just the first addend.

Numerical methods
Following the spatial discretization and making use of the matrix formalism, the forward static problem of Eq. (1), the adjoint static problem of Eq. ( 2) and the neutron noise problem of Eqs. ( 3) and ( 4) can be respectively rewritten as: In Eqs. ( 10)-( 12), the coefficient matrices are large, sparse and banded, and their size is 2N Â 2N since the number of nodes of the spatial grid is N and the neutron energy groups are 2.The matrices are constructed using the coordinate format.This format stores the diagonals in three vector-arrays of known length: one containing the values of the nonzero entries, one integer array containing their row indices and another integer array containing their column indices.When all diagonals have been computed, the matrix is assembled and stored in a compressed sparse matrix format.Following this strategy, one operates on vector-arrays of known length during the construction phase, avoiding any dynamic allocation of a compressed sparse matrix that would reduce the speed of the process.
Numerical methods suitable for a flexible neutron noise simulator that allow fast convergence rates, were investigated and discussed in Mylonakis et al. (2020).Here the methods used in CORE SIM+ are summarized.
The steady-state system given in Eq. ( 10) and the adjoint system in Eq. ( 11) are eigenvalue problems and three options are available in CORE SIM+ for their solution.The first method is the standard non-accelerated Power Method (PM).The second option is PM accelerated with Chebyshev polynomials (Ferguson and Derstine, 1977).The third alternative is PM combined with a nonlinear acceleration based on the Jacobian Free Newton Krylov (JFNK) algorithm as proposed by Gill and Asmy (2009).In reactor static calculations, Mylonakis et al. (2020) showed that the JFNKaccelerated PM can meet tight convergence criteria which are not always feasible for the Chebyshev-accelerated PM.
Linear systems are generated from each iteration of PM when solving the eigenvalue problems.In addition, the neutron noise problem requires the solution of the linear system given in Eq. ( 12).As linear solver, CORE SIM+ applies the iterative Generalized Minimal RESidual (GMRES) method.The acceleration of the convergence is obtained from a preconditioner, that can be chosen between the Symmetric Gauss-Seidel (SGS) preconditioner and the Incomplete LU with zero fill-in -ILU(0) preconditioner.Externally constructed preconditioners can also be provided as inputs to the solver.

Routine based on the method of Green's function
During normal operation of a reactor, different types of neutron noise sources may arise, and they may be located anywhere in the core.Then the computational burden required to reproduce many possible cases, may be heavy.An alternative to the direct simulation of neutron noise scenarios is the method of Green's function (Bell and Glasstone, 1970).
In CORE SIM+, a capability is provided for the automated generation of Green's function.The procedure is such that the source term on the right-hand side of Eq. ( 3) is substituted with a Dirac delta function in the fast or in the thermal group, i.e.: where Dirac delta functions act as neutron noise sources.
In a successive stage, the system response to the neutron noise source of interest can be derived as follows: CORE SIM+ can estimate the Green's function according to two different procedures, each of which is optimized for specific neutron noise sources.
The first type of Green's function estimation (denoted as GF1) is suitable for the simulation of absorbers of variable strength, perturbations travelling with the coolant flow across the reactor core, and vibrations of control rods.These noise sources can be modelled by assigning perturbations of macroscopic cross-sections to the center of a computational node.Accordingly, GF1 uses a computational grid with equal-sized nodes.Each component of the Green's function is estimated as the response of the reactor to a fast or thermal Dirac-like perturbation defined in one of the nodes of the grid.CORE SIM+ calculates all the components in an automated way so that Green's function is built for the reactor core.
The second type (denoted as GF2) is appropriate for the simulations of vibrating fuel assemblies or core barrel.The amplitude of such vibrations is typically of a few millimeters.These vibrations can be modelled with the so-called =d method (Pázsit, 1977).This model assigns perturbations of the cross-sections to the boundaries of the vibrating region (see Section 4).Each component of Green's function is thus estimated as the response of the reactor to a fast or thermal Dirac-like perturbation defined in one of the boundaries of the moving region.To numerically approximate the vibration, the spatial grid is selected finer at the area of interest, the perturbation is placed in the small-sized nodes around the boundary, and the response of the reactor is computed.
The numerical estimation of Green's function for the reactor (GF1 or GF2) requires the computation of the reactor response to a basic perturbation at every possible location at each energy group leading to thousands of simulations.For each simulation the Green's function routine calls the direct solver.In the case of a reactor that is discretized with N z axial levels and with N xy nodes per axial level, and with 2 energy groups, the computational time for GF1, for example, can be expressed as T GF1 $ 2 Â N xy Â N z Â T 1 where T 1 is the time needed by the direct solver to calculate one Green's function component.Since the required calculations are independent, the computational time can be reduced by running different simultaneous instances of the code, each one generating a part of the Green's function.
Although the task of generating the Green's function for a reactor is time-consuming, the advantage is that the reactor neutron noise induced by any possible perturbation can be constructed via Eq.( 14) in a cheap manner, i.e. without the need for extra simulations, providing a complete neutron noise database for the system under consideration.The method is particularly advantageous for the training of data-driven methods for reactor monitoring and diagnostics, see Demazière et al. (2020).

Verification and validation efforts
The numerical methods of CORE SIM+ were tested on neutron noise problems defined in 1-D and 2-D one-region nuclear systems and in a 3-D heterogeneous power reactor core -see details in Mylonakis et al. (2020).In the current paper additional verification and validation work for the simulator is discussed.The capability of the direct noise solver to reproduce the point-kinetic component of the reactor response to a neutron noise source is tested.To demonstrate the consistency between the Green's function generator and the direct solver of CORE SIM+, the 2 approaches are used to calculate the response to the vibration of a fuel cell in a 2-D system and compared.Finally, CORE SIM+ is used to simulate two neutron noise experiments.

Point-kinetic component extraction and comparison with analytical expression
The methodology described by Demazière et al. (2017) is used for a verification test.Accordingly, the calculated point-kinetic component of the response of a critical reactor to a perturbation is compared with the analytical values.The main advantage of this approach is that it allows the verification of the solver using a realistic 3-D heterogeneous reactor model.
The analytical point-kinetic component is derived from the point reactor kinetics equations (Bell and Glasstone, 1970).The model is based on the factorization of the space-dependent neutron flux /ðr; tÞ into an amplitude function PðtÞ and a shape function wðr; tÞ.The equations are linearized under the assumption that the nuclear reactor is critical, the perturbation consists of a small fluctuation of reactivity that eventually causes a small change of power, and the reactivity feedbacks are negligible.After a transformation from the time to the frequency domain, the relationship between the fluctuation dP of the amplitude function and the fluctuation dq of the reactivity reads as: The function G 0 ðxÞ is the point-kinetic zero-power reactor transfer function and its analytical expression is equal to: The term dP=dP 0 can be evaluated with a numerical solver via the following expression: u 2 / y 2;0 ðrÞ/ 2;0 ðr; xÞ Assuming the perturbation to be due to the fluctuation dR a of the macroscopic absorption cross section, the term dqðxÞ can be given by a first-order approximation: dqðxÞ ¼ R ÀdR a;1 ðr; y 1;0 ðrÞ/ 1;0 ðrÞ À dR a;2 ðr; xÞ/ y 2;0 ðrÞ/ 2;0 ðrÞ h i dr R mR f ;1;0 ðrÞ/ y 1;0 ðrÞ/ 1;0 ðrÞ þ mR f ;2;0 ðrÞ/ y 1;0 ðrÞ/ 2;0 ðrÞ The simulator CORE SIM+ can be used to calculate the 2-energy group static fluxes, adjoint fluxes and neutron noise that are needed in Eqs. ( 17) and ( 18).Then the point-kinetic zero-power transfer function can be evaluated via Eq.( 17), after rearrangement.The comparison between the zero-power transfer function obtained from CORE SIM+ and its analytical expression (Eq.( 16)) verifies the capability of the tool to reproduce a basic feature of the system.For the test, a MOX/UO2 core of a four-loop Westinghouse Pressurized Water Reactor (PWR) is used (Kozlowski and Downar, 2003).
The 3-D spatial domain is discretized using a Cartesian mesh in which the radial grid is 32 Â 32 nodes and the number of axial levels is 34.The grid for the active core region is 30 Â 30 Â 32 nodes and the remaining external layers of nodes are for the modelling of the reflector.Marshak boundary conditions are applied at the periphery of the system.Each elementary node, assumed to be spatially homogeneous, has for dimensions 10.71 cm in both radial directions and 11.43 cm in the axial direction.A point-like fluctuation of the thermal absorption cross-section (R a;2 ) is applied at the grid location (16,16,17).
The frequency-dependence of the point-kinetic zero-power transfer function is illustrated in Figs.(2a & 2b) and compared to its analytical expression.CORE SIM+ estimates the point-kinetic term dPðxÞ=ðdP 0 qðxÞÞ very satisfactorily in the whole frequency range.It is able to reproduce the variation of the amplitude that covers a broad range of values and the variation of the phase that covers a range of more than 80 degrees.The maximum deviation is below 6% for the amplitude and $1 deg for the phase.

Comparison of the Green's function's routine with the direct solver
The Green's function routine is verified against a direct simulation.A neutron noise problem in a 2-D heterogeneous system is considered.The system is based on the C3 benchmark on deterministic transport calculations (Cavarec et al., 2003) and it is perturbed by the vibration of one fuel cell along the horizontal direction.The configuration and the vibrating cell are illustrated in Fig. (3).The system consists of two UO2 fuel assemblies (at North-East and South-West positions) and two MOX fuel assemblies (at North-West and South-East positions).Reflective boundary conditions are imposed.The spatial grid is such that each fuel cell or guide tube cell is discretized with 5x5 nodes, each node being 0.252 cm Â 0.252 cm.The vibration of the fuel cell has been modelled similarly to the fuel assembly vibration described in Section 4.1.The frequency of 1 Hz has been selected.The noise problem is simulated with the Green's function routine and the direct solver.The two procedures give solutions that agree very as Fig. ( 4) shows.The noise amplitudes differ by less than 2 Â 10 À3 % and the phases by less than 7 Â 10 À4 degrees, verifying the consistency between the direct solver and the Green's function generator.The model consists of 3 homogenized regions and the mesh is much finer in the COLIBRI region so that the effect of the oscillation can be reproduced.The movement of the fuel rods is modeled using the socalled =d method (Pázsit, 1977), i.e.Dirac-delta perturbations of the cross-sections are assigned at the boundaries of the COLIBRI region.

Simulation of neutron noise experiments
The measured neutron noise signals are composed of the noise due to the COLIBRI device and other possible known and unknown sources.Only the COLIBRI noise source is interesting for the comparisons between experiments and simulations, since it is the only neutron noise source that is modelled.The component of the noise induced by the externally imposed COLIBRI source can be extracted from the measured time series using the Cross-Power Spectral Density (CPSD).The experimental Cross-Power Spectral Density (CPSD) for a pair of detectors i and j, is estimated from the signals of the 2 detectors according to the Welch's method, see Mylonakis et al., 2020b.The predicted CPSD is estimated from the static neutron flux and the neutron noise calculated with CORE SIM+ at the locations of the detectors, i.e.  see Figs. (6a & 7a).In experiment No. 13, the agreement for the detector pairs 7-5 and 4-5 is also good.In experiment No. 12, the calculated relative CPSD amplitudes of detector pairs 8-5 and 4-5 lie within the AE2r interval around the experimental values.In the 2 tests, the experimental relative CPSD amplitude for the pair 3-5 is lower than the values for the pairs 9-5, 4-5 and 5-5, even though detector 3 is closer to the noise source than detectors 9, 4 and 5.This might indicate a biased behavior of detector 3. The observation agrees with the fact that detector 3 is one of the operation monitors of the reactor and its transfer function has not been defined accurately.For the differences associated with detector 8, a possible explanation is that such a detector is located very close to the noise source, where the validity of the neutron diffusion approximation is questionable.In experiment No. 12, CORE SIM+ predicts the in-phase behavior of most detectors, see Figs. (6b & 6c).The calculated phase falls within the uncertainty interval of the experimental value for the pair 3-5 and is very close to the experimental results for the pairs 10-5, 3-5, 9-5 and 4-5 (the differences are smaller than 3 degrees).Larger discrepancies that require further investigations are observed for detector pairs 6-5, 7-5 and 8-5.In experiment No. 13, CORE SIM+ reproduces the in-phase response of most of the detectors, even though there is a shift of 5-15 degrees with respect to the experimental phase, see Figs. (7b & 7c).
This validation work based on the COLIBRI program is ongoing.The simulation of more neutron noise experiments is necessary in order to carefully assess the validity of the solver.

Generation of a neutron noise database for a generic PWR
The feature of CORE SIM+ that evaluates Green's function can be used to build databases of simulated neutron noise scenarios that are induced by various anomalies.These databases are useful for the investigation of neutron noise behavior in a reactor and for the training of machine learning algorithms for core diagnostics.As example the generation of a neutron noise database for a generic Western-type PWR is reported.The database was used to train a machine learning algorithm for the identification and localization of neutron noise sources, see Demazière et al., 2020.The database has a size of 3.5 TB and its content is summarized in Table (2).It includes scenarios related to absorbers of variable strength, perturbations traveling axially with the coolant flow, vibrations of control rods, fuel assemblies and core barrel vibrations.The modelling of these neutron noise sources is briefly discussed hereafter, with emphasis on the simulations of fuel assembly and core barrel vibrations.

Modelling of neutron noise sources
In order to generate the database, the types of perturbation listed in Table (2), were modeled.For the generic absorber of variable strength, a Dirac-like noise source placed in one node of the computational domain, with a prescribed frequency was considered.In order to provide a detailed representation, a set of calcula-tions was performed where each calculation corresponds to a thermal or a fast neutron noise source with a different frequency and at a different location.The values of frequency were chosen between 0.1 and 1.0 Hz with a step of 0.1 Hz and between 1.0 Hz and 25 Hz with a step of 1 Hz.The locations were covered by assigning the neutron noise source to any possible nodes of the computational grid.This set of computed responses is equivalent to the first type of Green's function GF1.
The perturbations transported by the coolant flow from the bottom to the top of the core, i.e. along the z direction, are modelled as perturbations of the macroscopic removal cross section, as follows (see Demazière and Dokhane, 2019): where (x 0 ; y 0 ) represents the radial location of the perturbed channel.Eq. ( 20) is introduced into Eq.( 4) and the resulting neutron noise source together with GF1 is used to determine the effect on the neutron flux via Eq.( 14).The system responses to the perturba- G 2!g ðr; x 0 ; y 0 ; z 0 ; xÞ/ 2 ðx 0 ; y 0 ; z 0 Þdz 0 ð21Þ where G 2!g ðr; x 0 ; y 0 ; z 0 ; xÞ represents the neutron noise at position r ¼ ðx; y; zÞ in group g induced by Dirac perturbations specified at radial position ðx 0 ; y 0 Þ, along the entire axial length of the control rod inserted from the top of the reactor to the elevation z 0 , in group 2. The product G 2!g ðr; x 0 ; y 0 ; z 0 ; xÞ/ 2 ðx 0 ; y 0 ; z 0 Þ is integrated over z 0 , for z 0 P z 0 , and the gradient of the resulting integral with respect to the point ðx 0 ; y 0 Þ is calculated.The simulations cover the frequency range between 0.1 Hz and 20 Hz.
The vibration of a fuel assembly is modeled using the =d model.Accordingly, the macroscopic cross sections are perturbed at the interfaces between the vibrating fuel assembly and the sur-rounding ones.The schematic in Fig. ( 8) shows a one-dimensional configuration with three homogenized fuel assemblies, of which the fuel assembly II vibrates in the x-direction.In this case, the fluctuation of the cross section R a in the frequency domain is given as: with x ðxÞ being the displacement of the vibration, hðzÞ a shape function that determines the axial variation of the displacement, and a 0 and b 0 the equilibrium positions of the boundaries between I and II, and II and III, respectively.According to the =d model, the perturbations of macroscopic cross-sections are given as Dirac functions at the boundaries a 0 and b 0 of the vibrating region.Therefore the location of the Dirac functions and thus the location of the perturbations are independent of the amplitude of the displacement, which has the role of a multiplier in Eq. ( 22).The infinitely localized character of the Dirac function is ideal and is modelled by using a very fine mesh around the perturbed boundaries and introducing the variation of the cross sections (Eq.( 22)) in the very small nodes that are just next to the perturbed boundaries.The noise source is then built by inserting Eq. ( 22) in Eq. ( 4) and the neutron noise is then calculated by Eq. ( 14) that combines the noise source with GF2.
The pendular mode of the core barrel vibration corresponds to a relative oscillation of the active fuel core with respect to the reflector.It can thus be seen as a collective movement of all fuel assemblies with respect to the reflector.Therefore, this core barrel vibration type can be modelled by introducing a perturbation at the boundary between the active core and reflector regions.The perturbations for all the boundary-located FAs are computed by Eq. ( 22).For a FA located at the left boundary between the core and the reflector only the left term on the hand side of Eq. ( 22) is relevant whereas for a FA located at the right boundary only the right term is relevant.The noise source is then built using Eq. ( 4) and the neutron noise is calculated by Eq. ( 14), that combines GF2 with the noise source.

Example of a fuel assembly vibration simulation
Fuel assemblies in a nuclear reactor may vibrate with an amplitude of the displacement that varies axially in different ways.For this reason the fuel assembly vibrations are categorized based on the axial shape of the displacement, see (Demazière and  Dokhane, 2019).For the sake of illustration of the capabilities of CORE SIM+, the second axial mode of the so-called "simply supported on both sides" vibration is considered.For this mode of vibration, the vibrating fuel assembly remains fixed at its bottom and top, with the upper and lower half of the fuel assembly vibrating in an out-of-phase manner.For this case the axial shape hðzÞ of the displacement is given by the expression hðzÞ H with H being the height of the reactor.Fig. ( 9) illustrates the amplitude and phase of the neutron noise computed for a frequency of 7 Hz.Figs. (9a & 9b) show that the highest relative amplitude is concentrated in the vicinity of the vibrating FA, as expected.Figs.(9c & 9d) depict the phase distribution of the fast and thermal noise.The solver predicts an out-of-phase behavior between the left and the right sides of the vibrating FA which is a typical feature of this perturbation (Verma et al., 2019).Fig. (10) shows the axial distribution of the thermal neutron noise at the radial location x ¼ y ¼ À10:71 cm.The relative amplitude shows a minimum at mid-core axial elevation (Fig. (10a)).In addition, the neutron noise distribution at the upper half of the core is out of phase with the one at the lower half (Fig. (10b)).These two features are consistent with the axial shapes of the noise source amplitude and phase, respectively (Figs. (10c & (10d)).

Example of a core barrel vibration simulation
The pendular vibration of the core barrel along a preferred direction is simulated with a frequency of 7 Hz.Fig. (11) shows the computed neutron noise distribution at mid-elevation of the reactor core.As expected, the amplitude is higher around the interface between the fuel region and the reflector, i.e. the location of the noise source.The noise amplitude is zero in the middle of the reactor, along the line perpendicular to the direction of vibration, because of the symmetry of the problem.The simulation well predicts the out-of-phase behavior between the two halves of the core, which is typical of this perturbation.Contrary to the case of the FA vibration (Figs. (9c & 9d)), the fast and thermal noise are out of phase (Figs. (11c & 11d)).In other words, the solver predicts that the core barrel vibration affects the fast and thermal components of the neutron flux with a time shift equal to a half period of the vibration.In computational terms, the phase relationship between the fast and thermal energy groups is case dependent and is determined by the respective weight and sign of the fast and thermal noise sources (Eq.( 4)), via the coupled fast and thermal noise equations (Eq.( 3)).

Conclusion
The computational tool CORE SIM+ has been developed for reactor neutron noise applications.The solver is based on the 3dimensional, two-energy group neutron diffusion equation in the frequency domain.Features are included to calculate the critical direct and adjoint problems associated with the system and then the response to a variety of perturbations such as absorbers of variable strength, perturbations travelling with the coolant flow and vibrations of core components.The tool relies on numerical methods which are suitable for different types of problems.A capability that allows to apply non-uniform computational meshes is available so that the discretization of the domain can be optimized with respect to the characteristics of the neutron noise sources.
An extensive work has been performed for the verification and validation of CORE SIM+.In the current paper three recent efforts were summarized.In the first one, the capability to estimate the point kinetic component of a perturbed system was verified.In the second effort, the Green's function generator and the direct solver were verified to give very close results in the simulation of a fuel cell vibration on a simple system.In the third case, CORE SIM+ was used to simulate an experiment with a vibrating cluster of fuel rods in a research reactor and the results are in reasonable agreement with the measurements.Some other verification exercises were successfully carried out and are reported in Mylonakis et al., 2020.The simulator is demonstrated to be flexible and efficient for the generation of neutron noise databases for nuclear power reactors.In fact, Green's function related to the system of interest can be determined with CORE SIM+ in an automated manner.These databases can be useful to study the response of a reactor to various perturbations and to train machine learning algorithms for core monitoring and diagnostics.
A representative database generated for a generic Western-type PWR was described as an illustrative example.The database includes scenarios induced by absorbers of variable strength, perturbations travelling with the coolant flow and vibrations of core barrel and fuel assemblies, at different frequencies and for every possible location of the perturbation, when relevant.

Declaration of Competing Interest
The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.
The column vector / r is: / r r ð Þ / 1;0 ðrÞ À/ 1;0 ðrÞ " # ðA:5Þ j o u r n a l h o m e p a g e : w w w .e l s e v i e r .c o m / l o c a t e / a n u c e n e

Fig. 2 .
Fig. 2. Comparison between computed and analytical amplitude (a) and phase (b) of the point kinetic term for the case of localized noise source in a PWR.
CORE SIM+ was used to simulate neutron noise experiments that were carried out in the research reactor CROCUS at École Polytechnique Fédérale de Lausanne -EPFL, Switzerland.The detailed discussion of this work and the first results are reported in Mylonakis et al., 2020b.The neutron noise experiments are part of the program COLIBRI and investigate the system response to the

Fig. 4 .
Fig. 4. Comparison of the Green's function routine with the direct solver for a fuel cell vibration on C3 configuration..
where y symbolizes the complex conjugate.To remove any scaling factors, all CPSD amplitudes, experimental and computed, are normalized to the amplitude of CPSD 6;5 .The numbering and location of the detectors are shown in Fig. (5a).The COLIBRI experiments No. 12 and 13 are considered.The amplitude of the vibration is 2 mm in the 2 cases.The frequency is 0.1 Hz in experiment No. 12 and 1 Hz in experiment No. 13.The comparison between calculated and experimental values are shown in Figs.(6 & 7).In both experiments, CORE SIM+ reproduces the relative CPSD amplitudes of detector pairs 6

Fig. 6 .
Fig.6.Experiment No. 12: Comparison of the computational results with experimental data.

Fig. 8 .
Fig. 8. Representation of 3 FAs with FA II being considered to vibrate in the xdirection with respect to its neighbouring FAs (I & III).

Fig. 10 .
Fig. 10.Axial distribution of the computed neutron noise in the thermal group at the radial location x ¼ y ¼ À10:71 cm (a & b), and axial shape hðzÞ of the vibration (c & d).

Fig. 11 .
Fig. 11.Computed neutron noise induced by the core barrel vibration at mid-elevation.

Table 1
Coupling coefficients with Marshak boundary condition.