Skip to content

Add CalPulse module

Izaak Neutelings requested to merge add_CalPulse into master

This PR mainly adds the "HGCALCalPulse.py" module/script that studies charge injections scans to compare ADC vs. TOT. The output ROOT file currently contains

  • Some summary histograms of Nevts/ADC_ave/TOT_ave vs. channel vs. scan point.
  • A TTree with average ADC & TOT per scan point & channel is added (if both are nonzero), which hopefully @olbessid & @hohare can use to fit?

Some examples of the output be viewed in this CERNBox link.

The option --addControlPlots also adds some control histograms of nonzero ADC or TOT distribution for injected channels, and per scan point.

Other changes that may affect others:

  • Common --run command line argument is now a list of integers, instead of a single integer to accommodate multiple runs for a scan.
  • New command line argument --runmap that takes the filename of a JSON to map runs to scan parameter(s) and their values, e.g. (see testbeam run log):
{
  "1726752043": { "CalPulseVal":    0 },
  "1726754597": { "CalPulseVal": 1000 },
  "1726758259": { "CalPulseVal": 2000 },
  "1726760318": { "CalPulseVal": 3000 },
  "1726763091": { "CalPulseVal": 4000 }
}
  • buildScanParametersDict is no longer an abstract method, and it automatically parses runmap to define scan parameters that are added to the RDF task/sample metadata in buildHistoFillerTasks

TODO:

  • Still need to debug a bit...
  • Resolve conflicts with the target branch...
Edited by Izaak Neutelings

Merge request reports

Loading