Nuclear data is one of the most fundamental input quantities for the neutronics analysis of nuclear reactors. Although the evaluated nuclear data files include various nuclear data, neutronics analysis codes do not directly read data from the evaluations. The evaluated nuclear data should be firstly processed into a specific format by the nuclear data processing code, before it can be used by the neutronics analysis codes. The NJOY, AMPX, PREPRO and so on are well-known nuclear data processing codes. There are also some newly developed nuclear data processing codes. For example, FRENDY has recently been developed by Japan Atomic Energy Agency (JAEA) to produce ACE format library for Monte Carlo code. Ruller developed in China can provide WIMS-D format multi-group library . A new nuclear data processing code called NECP-Atlas is developed.
Many types of advanced reactors are under research and development (R&D) in China, for example, sodium cooled fast reactor and high-temperature gas-cooled reactor. The accurate neutronics analysis is very important in the R&D of advanced reactors. There are several new neutronics analysis codes for advanced reactors under development in China. Different nuclear data processing methods from the light water cooled reactors are demanded in the R&D of the advance reactors. However, there are no mature nuclear data processing codes in China.
The three-dimensional (3D) whole-core high-fidelity transport calculation has been being studied worldwide. The emphasis of the 3D whole-core transport researches has been placed on the spatial discretization and parallel computations. It has been recognized that the error caused by transport calculation itself has been significantly reduced with the development of advanced transport calculation methodologies, and the evaluated nuclear data and the processing methods have become the main error sources. In the researches on Monte Carlo based 3D transport calculation, accurate nuclear data processing methods aimed to avoid the error introduced by temperature interpolation of the cross sections have been systematically studie. While in the aspect of deterministic whole-core transport calculation, the generation of cross sections have not been given much concern, and the conventional processing methods are still used in the preparation of multi-group cross sections. Some problems such as the resonance elastic scattering of heavy isotopes have not been well solved in the widely used nuclear data processing codes.
Moreover, the current evaluated nuclear data files released by different countries commonly apply the ENDF-6 format to store the data. Recently, this format has been considered to be changed by using the Generalized Nuclear Data (GND) format. The base techniques of processing evaluated nuclear data files should be widely researched, only thus can more nuclear data processing codes be developed to validate each other.
For the above motivations, NECP-Atlas is developed. NECP-Atlas can process the widely used ENDF-6 format evaluations, including: ENDF/B-VIII.0, ENDF/B-VII.1, ENDF/B-VII.0, CENDL-3.1, JENDL-4.0 and JEFF-3.2. The ACE and WIMS-D format libraries can be produced. NECP-Atlas has also been connected with a newly developed 3D whore-code transport code NECP-X.
NECP-Atlas is developed as a platform to produce accurate cross sections for different application aspects. In order to test different nuclear data processing methods conveniently, NECP-Atlas is written in standard Fortran 2008 with object-oriented method, and different processing functions are encapsulated in different modules. In NECP-Atlas, the data transfer among different modules is realized in memory, and each module can also output PENDF or GENDF format files used in NJOY, so that the modules from the two codes can be combined to process the nuclear data or compared with each other.
Modern software engineering practices are utilized in the development of NECP-Atlas. The Git system is chosen as the version control tool, and the CMake tools including CMake and CTest are used to accomplish cross-platform compilation. NECP-Atlas has been successfully complied with Gfortran, Intel compliers with various platforms including several Linux distributions and Windows. As a part of CMake tools, CTest is used for the unit testing and regression testing of NECP-Atlas. Unit testing is adopted to guarantee that each module in NECP-Atlas can produce accurate results after modified, and is performed automatically once the modified modules are pushed to the server. In the unit testing, the results such as cross sections or angular distributions generated by NECP-Atlas are compared with the reference results based on the same inputs. At a fixed time, regression testing is executed as scheduled. In the regression testing, NECP-Atlas is invoked to process different evaluations and generate WIMS-D and ACE format libraries. Then, DRAGON5 is used to calculate benchmarks from WLUPwith WIMS-D libraries, and a Monte Carlo code is used to calculate benchmarks from ICSBEP with ACE libraries. The results of effective multiplication factors from DRAGON5 and the Monte Carlo code are compared with the reference values to ensure the robustness and accuracy of NECP-Atlas. In the regression testing, CTest submits results of NECP-Atlas to a CDash dashboard system. Through the CDash webpages, the state of NECP-Atlas such as configuration, building and test errors can be displayed.