The present application was intended as a visualisation tool to aid in the development of the Phase II Track Trigger Upgrade of the CMS experiment at CERN. It works by visualising particle collision data by loading it from JSON formatted data files containing information about the event components (particles) and their parameters. The data files are being generated in CMSSW based simulations that aim to reconstruct the particle trajectories from the collections of hits generated by the passage of the charged particles through the tracker detector geometry. By visualising the event components in 3D it would be possible to evaluate different aspects of the simulation quality but also help guide the development of the reconstruction algorithms.
Currently the application supports three distinct event elements - stub (detector hit), candidate and true particle (TP). The true particle objects represent physical particles comprising the event final states (products) which leave information in the detector about the trajectory of their propagation. The stubs represent the detector left by the passage of particles and are the basic unit of information used in the candidate reconstruction. The candidates are best-fit trajectories for a selection of associated stubs. In an ideal reconstruction the candidates should have identical trajectory and properties to the true particles and there should not be any duplication, i.e. more than one candidate for a given particle. However, due to the complexity of the reconstruction process and the presence of detector noise in reality such candidate duplication occurs often and even sometimes candidates might be reconstructed with such properties that do not correspond to any single true particle.
Usage of the application starts with the loading of an external data file. The application currently allows for the use of both local and remote data files. The remote files can be uploaded over (s)FTP and are stored in the /events folder relative to the application root. Local files can be loaded from the user's computer but the functionality requires a HTML5 compatible browser as it relies on the File API introduced in HTML5.
The data file can be specified from Event -> Manage Data and using the appropriate interfaces to select a remote file or load a local one.
Once a file has been loaded its contents will be loaded into the data table under Event and the their trajectories will be shown in the 3D are on the right. The table lists all the reconstructed candidates together with their kinematic parameters. Candidates that do not have a corresponding true particle are highlighted in red. For the others, the true particle parameters can be seen by hovering over the given candidate entry in the table.
Hovering over any candidate will also highlight its trajectory in the 3D visualisation area by showing it in red. Clicking on a given candidate from the table will select it which will change its colour to purple and will cause its stubs and and true particle to be added to the 3D scene as small black/red spheres and a green track respectively. Some stubs might be coloured in red which indicates that they originate in noise in the detector and are therefore not genuine.
If desired the currently visible trajectories can be changed but using the checkboxes on the left of each entry in the data table. Additionally it is possible to keep visible only specific candidates, based on their kinematic properties. The filters can be specified and set from the Data Cuts panel, accessible from the button above the data table.
The application also comes with a pre-configured description of the detector geometry for the outer tracker of CMS. This can be accessed from the Geometry top level menu item, where the geometry controls are located. The geometry description can be loaded in the application by clicking on the Load Geometry button after which the E- and B- prefixed buttons can be used to toggle the visibility of different detector sections. The buttons starting with B correspond to the different barrel layers of the tracker starting from the inside (close to the beam). The E buttons represent the detector endcaps with the growing number suffixes indicate increasing distance from the interaction point. The sign of the number indicates whether the endcap is located in the positive or negative z-direction (along the beam).
Dependencies:
- jQuery
- Bootstrap
- bootstrap waitingfor plugin
- tablesorter jQuery plugin: https://github.com/Mottie/tablesorter
- three.js - main library
- three.js - Trackball Controls
- three.js - Combined Camera
- three.js - helvetiker typeface
- three.js - Projector.js (this needs to be moved)
- Event visualiser at CERN: http://test-tt-event-display.web.cern.ch/test-tt-event-display/