Draft: Analysis suite framework

Pranjal Sharma requested to merge feature/analysis_suite into main


This PR if for the implementation of the Analysis Suite which framework provides a robust way to handle results of GEM hardware calibration procedures and data. It provides a way to:

  • analyze all kind of calibration runs taken;
  • combine different analyses together if needed;
  • derive the best settings to improve the detector efficiency and performance;
  • allow to evaluate the detector health and performances, at any given point in time or as it evolved over time, through the usage and - - display of the data, i.e. results of the scans and comparisons.

More details can be found here: https://codimd.web.cern.ch/lDdIGeVZR_C28XUNE4h90g?view

What's New:

  • Added a data Importer which takes raw data and stores it after some preliminary processing
  • Data Importer currently supports jpg, txt, csv and json file formats
  • data_importer.py : the master data importer file which leverages specialized importers (json_loader, text_loader etc) for reading files and processing. Gradually, the specialized loaders can be improved upon to add more and more functionality
  • tasks/ : contains all law tasks
  • law.cfg : configuration file for law
  • config.yaml : configuration file for the analysis_suite
  • analysis_catalog/ : will house python functions for specialized physics-based analysis of the data (histograms)
  • data/ : stores the pre-processed files generated from the data_importer

Related Issue

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)


  • My code follows the code style of this project.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have read the CONTRIBUTING document.
  • I have added tests to cover my changes.
  • All new and existing tests passed.
Edited by Laurent Petre

Merge request reports