NDPlot-A plotting tool for nuclear data

NDPlot is an efficient plotting tool for nuclear data. It is not only a plotting tool, but also an integrated application system. The first beta version of NDPlot was released in October 2018. The current version is 0.94 beta. NDPlot can plot experimental and evaluated data of reaction cross sections, angular distributions of secondary particles, energy distributions of secondary particles and product energy-angle distributions etc. It also provides data processing functions such as curve summation capability to meet user’s requirements.


Introduction
The evaluators of nuclear data always need to compare their evaluated data with the experimental data. One of the most intuitive ways to do this is to graph the data. However, it is not easy to plot nuclear data by using common plotting software such as Origin and gnuplot. Therefore, we decided to develop a more efficient plotting tool for nuclear data. The whole system includes client software, database server and application server. Our goals are three: Convenience: It's easy to use and user-friendly. The graphical user interface is multiple document interface.
Traceability: Lots of the information can be stored in a project file that users can resume or check the work later by loading it. The information includes: raw data, plotting data, coordinates system, annotations, memos, etc.
Reusability: Users can save the work as a project file. The project file can be checked or updated easily. The project file maintains a reaction list so that new data can be added to project file easily.
From the end of 2016, after more than two years of development, NDPlot can plot experimental and evaluated data of reaction cross sections, angular distributions of secondary particles, energy distributions of secondary particles and energy-angle distributions of products, number of neutrons per fission, ratio of cross sections, etc.

Architecture
The architecture model of NDPlot is client-server structure( Figure 1). The database stores original EXFOR[1] [6] and ENDF[2][3] data, the application server retrieves and handles the original ENDF and EXFOR data, the data processed by the application server is transmitted to NDPlot client in either text or JSON format. NDPlot client handles and plots the data. Programming language of NDPLot client is Perl, and graphic user interface package of ND-PLot client is wxWidgets. It uses a multiple document interface(MDI), So NDPlot can have multiple windows and  on Windows XP, Windows 8, Windows 10 and Windows Server. In theory, it could run on Linux or MAC systems because Perl and WxWidgets are cross-platform programming languages, but so far, it only works on Windows.

Input and output
NDPlot can accept ENDF, EXFOR, PENDF [5], free format and NDPlot's format data, it can output graph(jpeg, ps, pdf etc.), NDPlot's format data file and project file. The experimental data points can be plotted with x error bar and y error bar, The style of the points, curves and axes can be redefined by users, such as colour, shape and size. It supports Windows clipboard, so inserting figure into other software such as Microsoft Word or PowerPoint is easy.

Batch plotting
For angular distributions and energy-angle distributions, the plotting work may involve multiple angles or multiple energies. Batch plotting function is very convenient for these. Using batch plotting, the data with different angles or energies can be plotted in one or more windows. If you plot all the data in one window, you can set a factor such as 0.01 to differentiate the data(

Cross-section ratio
There are many cross-section ratio measurements in the EXFOR database, so ratio plots are very meaningful to evaluators. NDPlot can plot ratio of reaction cross sections, including experimental data and evaluated data( Figure 5).

Fission product chain yields and energy dependent fission product yields
Since November 2018, NDPlot has been able to plot the chain yields and energy dependent fission product yields, including experimental data and evaluated data( Figure 6 and Figure 7). NDPlot also provides tools to filter fission yields data or correct the data with new decay data. Decay data and flag data in EXFOR can be used to correct or distinguishing the data, so the transmission format of fission product yields needs more complex structure. A variable-length column is adopted as information column for transmission format of fission product chain yields data, the column can represent decay data, flag data and fission products.

Special treatment on discrete level excitation cross sections
From the version of 0.92 beta, NDPlot adopted a special treatment on discrete level excitation cross sections. Because the same level energy may have different MT numbers among the different evaluated libraries, So NDPlot will pop up a window to help user determine which MT number will be chosen( Figure 8).

Adding curves to the project file
Reusability is one of our goals. NDPlot project file maintains a reaction list with factors, so it is easy to add new evaluated data to the project file. For example, if you have a project file of target nucleus 6 Li with some reactions cross sections data such as (n, tot), (n, elastic), (n, 2n), etc., you can add new 6 Li data of another evaluated library from the server, all reactions in the list such as (n, tot), (n, elastic), (n, 2n) etc. can be added to project file at one time. If you have evaluated new 6 Li data, you also can add the reactions to the project file from your computer at one time.

Viewing the raw data and operating column
Traceability is also one of our goals. Raw experimental data and evaluated data can be display in the 'data and original data' window( Figure 9). The raw data can be stored in project file or retrieved from the server. In Figure 9, the plotting data is displayed in a grid widget named data grid on the left and the raw data of EXFOR is displayed on the right. The data grid supports column operation so that users can operate whole column data using a arithmetic expression such as [B]*0.01. For column C, this expression will set the errors of y values with 1%. The operators and functions supported by column operation are listed in Table 1.   (Figure 10). Last, we sum over the curves. The neutron elastic scattering cross section of natural lead is shown in Figure 11.

Summary
NDPlot is an efficient plotting tool for nuclear data evaluation and easy to use. All versions of NDPlot can be downloaded at http://www.nuclear.csdb.cn/ndplot/. NDPlot has the following features: -Treatment of CS, DA, DE, DAE, MFQ, FY, CSP etc.
-Saving all-in-one project files.
-Supporting windows clipboard for image and data.
-Ratio and summation for evaluated data.
-Natural nuclide data processing from ENDF libraries.
NDPlot is based on IAEA's EXFOR database, ENDVER [4] and PREPRO [5], we would like to express our thanks to IAEA experts, especially V. Zerkin for his development of EXFOR tools [6].