Update the cluster mask algorithm for correctness

Laurent Petre requested to merge feature/updated-cluster-mask-algorithm into main


From the commit message:

After much investigation and a thorough look at real data from the GE1/1
detector installed at P5, it was noticed that the cluster mask scan
analysis algorithm was flawed and non-functional.

Finding the best delay mask based on statistical properties is between
hard and unrealistic. Either the quantities are not available or the
final criteria are so strong that almost all delays end up masked.

Instead, this commit implements a more realistic approach based on an
arbitrary cut. That is the amount of high-mutiplicity events accepted.
The current default value corresponds to a maximum of 5%.

Additionally, the plotting routine and output are enhanced in order to
improve the visualization, in particular, of the delays that will end up
being masked online.

The algorithm itself is described in detail in the source code.

Related Issue

None. 😕

How Has This Been Tested?

A reasonable list of delays to be masked is produced as well as the associated plots. Ran on data from local run 2.8349.05103L.


Typical example: fed1467-slot1-oh0

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