Belle2Lab-An Interactive Tool for a Public Analysis of the Belle II Data

Several data samples from a Belle II experiment will be available to the public as a part of the experiment outreach activities. A Belle2Lab tool is designed as an interactive graphical user interface to reconstructed particles, offering users basic particle selection tools. The tool is based on a Blockly JavaScript graphical code generator and can be run in an HTML5 capable browser. It allows a description of different particle decays by selecting and combining particles from the data file, easy histogramming tools and a display of the results by using the JSROOT library. During the analysis, the user has the possibility to apply cuts to the selected variables. A pseudo-code generated by the user interface is sent to the execution server which returns the histograms, that can also be interactively fitted. The Belle2Lab is accessible in two ways: hosted on a single public web server or as a part of the virtual appliance which consists of an Ubuntu 16.04 LTS operating system, a data sample, an analysis framework, and a private web server. The public web server can be used for a single access while the virtual appliance is more suited for a use in a classroom.


Introduction
The Belle II experiment is dedicated to studying rare decays of B and D mesons and τ leptons coming from collisions in the e + e − SuperKEKB collider [1,2]. By collecting 50 times larger data sample than its predecessor Belle [3], the experiment will allow measuring deviations from the Standard Model of elementary particles. Decay data are recorded by a Belle II detector surrounding the interaction point (Fig.1). The acquired data are processed by a large amount of simulation, reconstruction, and visualization modules, collected in a Belle II analysis software framework -BASF2 [4]. The selection of modules, their configuration and order of execution is defined via a Python interface.
As a part of the experiment outreach activities, several reconstructed data samples will be disclosed to the public. Although the analysis framework is user-friendly, it still requires the user to be familiar with a Python programming language. Every syntax error in the script slows and stops the analysis and requires debugging of the code. Not skilled users are very fast demotivated since their attention is diverted from the physics of the analyzed process. The interface to the public data should, therefore, be simple, but it should still be configurable by the users in order to attract them. For example, interfacing the data with a simple web form does not offer the user involvement in the analysis process. To minimize a gap due to missing programming skills we created a demonstration and educational application called Belle2Lab designed for high school and undergraduate students.

Belle2Lab Design
The purpose of the application is to present the research methods we use and to show how a physics analysis is done by offering several spectroscopy examples. The Belle2Lab offers the students to discover "new" particles by combining already reconstructed ones. The collaboration provides enough data to discover the most frequent particles, but it does not contain rare processes. The application is user-friendly since it uses a graphical user interface in which the user interactively chooses and connects building blocks to control the analysis and to describe the physics process.
It is separated in two parts. The description part with the graphical user interface runs in an HTML5 capable browser (web client), which communicates with the execution part (web server), where the analysis is run. At the end of the execution the results, histograms of different properties of the particles in the decay, are sent back to the client. By separating the description and the execution processes, the application can be used in two configurations: either in a single web server or with the web server and the client packaged together with the data in a single virtual appliance.

Implementation
The Belle2Lab is based on a Blockly JavaScript graphical code generator [5] inspired by MIT Scratch [6]. The default user interface of the Belle2Lab consists of a toolbox which holds available blocks, and a workspace where the user can drag and rearrange blocks. The workspace includes zoom icons and a trashcan for deleting blocks. Users can create sequences of blocks and link them by plugging a block output to a block input. The types of connections can be restricted, so that only specific types of output connectors can be plugged in the input ones.

Decay description
In the toolbox there are four types of blocks, that can be used to describe the decay (Fig. 3): the main block to control the event loop, the particle selection block, the particle combiner block and the histogramming block.
The main block Belle II MasterClass allows to select the data source, set the number and starting event number and a flag to print a particle list. In the initial phase of Belle II operation two sets of data from Belle experiment [3] with a total of about 6 mio. of particle decays are available to play with. By selecting the print particle list flag, one can get a list of particles, their momentum, energy and identity in the first 100 events.
The histogram block allows plotting distribution of a selected variable (e.g. energy/momentum/identity) of the particles in the list in a one-dimensional histogram. The user can define a number of bins, a minimum and maximum bin, a histogram title, and a variable to plot.
The particle selection block allows creating a particle list by selecting a charge and particle type. It has two inputs: the input particle list, which can be the particle list stored in the data file or any other list created during the analysis, and a histogram input where a list of histograms can be appended.
The particle combiner combines two particle lists, considering also cases when both lists are the same. A new particle list is created by applying a mass cut on the invariant mass of the combined particle. The particle combiner allows appending the histogram list to monitor the combination process. Figure 4. A simple process to explore particle distributions: the process description(upper left), the resulting histogram (upper right) and the particle list (below).

Analysis execution
After the decay description, the data can be processed by clicking on the Analyze button (Fig. 5). A pseudo-code is generated by the user interface and sent to the execution server which processes the data and returns the histograms at the end.
In the simplest case, an iteration through the data particle list allows to explore distributions of different particles and to print particle list (Fig. 4). This step is very important from an educational perspective as it allows to follow the combination process and to see the properties of the reconstructed particles in the list.
Two body decays can be described by including a particle combiner (Fig. 5). In the example, a decay of a neutral pion π 0 to two γ's is shown. The returned histogram can be interactively fitted by a user-defined function described in a fit panel.
By combining three particles, more complex decays can be studied, for example a decay of B + → J/ψK+, followed by a decay of J/ψ → µ + µ − (Fig. 6). In this way one can reconstruct different particle decays. The data sample contains enough data to reconstruct π 0 , K s , φ, J/ψ, D 0 , D * ± and B ± particles.

Belle2Lab usage
The Belle2Lab is accessible in two ways: hosted on a single public web server (accessible at http://belle2.ijs.si/public) or as a part of the VirtualBox virtual appliance [9], which consists of an Ubuntu 16.04 LTS operating system, a data sample, an analysis framework and a private web server (Fig. 7). The former can be used for single access while the latter is more suited for workshops.  The application will be used as a part of the educational web page with an introduction to the physics of Belle II. We will design a list of exercises which the user will have to perform. As an example, the user will get a table of decay products (Fig. 8). His task will be to find a mother particle and find its properties and to fill in the missing information in the table.

Conclusions
The application called Belle2Lab offers users basic particle selection tools. It allows the description of different particle decays by selecting and combining particles from the data file, easy histogramming tools and display of the results by using the JSROOT library. The Belle2Lab application offers the user an easy and intuitive tool for the description of the physics decay processes and analysis of the Belle II data sample, which will be made available for public.
By plotting the invariant mass of the combination of particles, "new" particles can be discovered by peaks in the distribution. The resulting histograms, displayed in a web browser can be interactively fitted with a user-defined function. The tool is accessible on the internet. However, due to processing limits on the single server, a virtual appliance was created which can be distributed to many computers and used during a workshop. The results of the tasks (e.g. particle identity, width and the position of the peak) can be compared by the workshop