CaloCellBuilder package

Submodules

CaloCellBuilder.AnomalyGenerator module

class CaloCellBuilder.AnomalyGenerator.AnomalyGenerator(name, BadRunListFile, OutputLevel=3, NoiseMean=0, NoiseStd=0, InputEventKey='Events')[source]

Bases: Cpp

Parameters:
  • name (str)

  • BadRunListFile (str)

  • OutputLevel (int)

  • NoiseMean (float)

  • NoiseStd (float)

  • InputEventKey (str)

CaloCellBuilder.AnomalyGenerator.get_cells_from_brl(path)[source]
Parameters:

path (str)

Return type:

List[int]

CaloCellBuilder.CaloCellBuilder module

class CaloCellBuilder.CaloCellBuilder.CaloCellBuilder(name, detector, HistogramPath='Expert', InputHitsKey='Hits', OutputCellsKey='Cells', OutputTruthCellsKey='TruthCells', InputEventKey='Events', OutputLevel=3)[source]

Bases: Logger

A high-level configuration builder for the Calorimeter Digitization chain.

This class orchestrates the creation of algorithms that transform energy hits into digital signals (cells). It handles: - Pulse shape simulation (PulseGenerator) - Electronic noise injection - Optimal Filtering (OF) for energy/time reconstruction - Cross-talk simulation - Defect/Anomaly injection - Merging of cell collections into a single container.

configure()[source]

Internal method to instantiate and configure the digitization algorithms.

Iterates over all calorimeter samplings defined in the detector geometry and creates specific algorithms (CaloCellMaker) for each. Configures pulse generation, optimal filtering, and optional effects like cross-talk and anomalies.

merge(acc)[source]

Merges the configured algorithms into the main ComponentAccumulator.

Parameters:

acc (ComponentAccumulator) – The master accumulator to add the algorithms to.

CaloCellBuilder.CaloCellMaker module

class CaloCellBuilder.CaloCellMaker.CaloCellMaker(name, sampling, InputHitsKey='Hits', OutputCollectionKey='Collection', OutputLevel=3, DetailedHistograms=False, HistogramPath='/Hists/Cells')[source]

Bases: Cpp

Parameters:
  • InputHitsKey (str)

  • OutputCollectionKey (str)

  • OutputLevel (int)

  • DetailedHistograms (bool)

  • HistogramPath (str)

core()[source]

CaloCellBuilder.CaloCellMerge module

class CaloCellBuilder.CaloCellMerge.CaloCellMerge(name, InputCollectionKeys='Collection', OutputCellsKey='Cells', OutputTruthCellsKey='TruthCells', OutputLevel=3)[source]

Bases: Cpp

Parameters:
  • name (str)

  • InputCollectionKeys (str)

  • OutputCellsKey (str)

  • OutputTruthCellsKey (str)

  • OutputLevel (int)

CaloCellBuilder.CaloFlags module

class CaloCellBuilder.CaloFlags.AnomalyFlags[source]

Bases: EnumStringification

BadRunListFile = ''
class CaloCellBuilder.CaloFlags.CaloFlags[source]

Bases: EnumStringification

DoCOF = False
DoCrossTalk = False
DoDefects = False
SamplingnoiseStd = 0.0
class CaloCellBuilder.CaloFlags.CrossTalkFlags[source]

Bases: EnumStringification

AmpCapacitive = 4.2
AmpInductive = 2.3
AmpResistive = 1.0
MinEnergy = 1000

CaloCellBuilder.CrossTalkMaker module

class CaloCellBuilder.CrossTalkMaker.CrossTalkMaker(name, InputCollectionKey='Cells', OutputCollectionKey='XTCells', MinEnergy=1000, AmpCapacitive=4.2, AmpInductive=2.3, AmpResistive=1.0, HistogramPath='/CrossTalkMaker', OutputLevel=3)[source]

Bases: Cpp

Parameters:
  • name (str)

  • InputCollectionKey (str)

  • OutputCollectionKey (str)

  • MinEnergy (float)

  • AmpCapacitive (float)

  • AmpInductive (float)

  • AmpResistive (float)

  • HistogramPath (str)

  • OutputLevel (int)

core()[source]

CaloCellBuilder.OptimalFilter module

class CaloCellBuilder.OptimalFilter.ConstrainedOptimalFilter(name, OutputLevel=0, NSamples=0, PulsePath='', Threshold=0, SamplingRate=0, StartSamplingBC=0)[source]

Bases: Cpp

Parameters:
  • OutputLevel (int)

  • NSamples (float)

  • PulsePath (str)

  • Threshold (float)

  • SamplingRate (float)

  • StartSamplingBC (float)

class CaloCellBuilder.OptimalFilter.OptimalFilter(name, WeightsEnergy=[], WeightsTime=[], OutputLevel=3)[source]

Bases: Cpp

Parameters:
  • name (str)

  • WeightsEnergy (list)

  • WeightsTime (list)

  • OutputLevel (int)

CaloCellBuilder.PileupMerge module

class CaloCellBuilder.PileupMerge.PileupMerge(name, LowPileupInputFiles, HighPileupInputFiles, InputHitsKey='Hits', OutputHitsKey='Hits_Merged', InputEventKey='EventInfo', OutputEventKey='EventInfo_Merged', OutputLevel=3, NtupleName='CollectionTree', PileupAvg=0, PileupSigma=0, BunchIdStart=-21, BunchIdEnd=4)[source]

Bases: Cpp

Parameters:
  • name (str)

  • LowPileupInputFiles (List[str])

  • HighPileupInputFiles (List[str])

  • InputHitsKey (str)

  • OutputHitsKey (str)

  • InputEventKey (str)

  • OutputEventKey (str)

  • OutputLevel (int)

  • NtupleName (str)

  • PileupAvg (float)

  • PileupSigma (float)

  • BunchIdStart (int)

  • BunchIdEnd (int)

CaloCellBuilder.PulseGenerator module

class CaloCellBuilder.PulseGenerator.PulseGenerator(name, OutputLevel=3, NSamples=0, ShaperFile='', Pedestal=0, DeformationMean=0, DeformationStd=0, NoiseMean=0, NoiseStd=0, SamplingRate=0, StartSamplingBC=0)[source]

Bases: Cpp

Parameters:
  • name (str)

  • OutputLevel (int)

  • NSamples (int)

  • ShaperFile (str)

  • Pedestal (float)

  • DeformationMean (float)

  • DeformationStd (float)

  • NoiseMean (float)

  • NoiseStd (float)

  • SamplingRate (float)

  • StartSamplingBC (float)

Module contents

class CaloCellBuilder.AnomalyFlags[source]

Bases: EnumStringification

BadRunListFile = ''
class CaloCellBuilder.AnomalyGenerator(name, BadRunListFile, OutputLevel=3, NoiseMean=0, NoiseStd=0, InputEventKey='Events')[source]

Bases: Cpp

Parameters:
  • name (str)

  • BadRunListFile (str)

  • OutputLevel (int)

  • NoiseMean (float)

  • NoiseStd (float)

  • InputEventKey (str)

class CaloCellBuilder.CaloCellBuilder(name, detector, HistogramPath='Expert', InputHitsKey='Hits', OutputCellsKey='Cells', OutputTruthCellsKey='TruthCells', InputEventKey='Events', OutputLevel=3)[source]

Bases: Logger

A high-level configuration builder for the Calorimeter Digitization chain.

This class orchestrates the creation of algorithms that transform energy hits into digital signals (cells). It handles: - Pulse shape simulation (PulseGenerator) - Electronic noise injection - Optimal Filtering (OF) for energy/time reconstruction - Cross-talk simulation - Defect/Anomaly injection - Merging of cell collections into a single container.

configure()[source]

Internal method to instantiate and configure the digitization algorithms.

Iterates over all calorimeter samplings defined in the detector geometry and creates specific algorithms (CaloCellMaker) for each. Configures pulse generation, optimal filtering, and optional effects like cross-talk and anomalies.

merge(acc)[source]

Merges the configured algorithms into the main ComponentAccumulator.

Parameters:

acc (ComponentAccumulator) – The master accumulator to add the algorithms to.

class CaloCellBuilder.CaloCellMaker(name, sampling, InputHitsKey='Hits', OutputCollectionKey='Collection', OutputLevel=3, DetailedHistograms=False, HistogramPath='/Hists/Cells')[source]

Bases: Cpp

Parameters:
  • InputHitsKey (str)

  • OutputCollectionKey (str)

  • OutputLevel (int)

  • DetailedHistograms (bool)

  • HistogramPath (str)

core()[source]
class CaloCellBuilder.CaloCellMerge(name, InputCollectionKeys='Collection', OutputCellsKey='Cells', OutputTruthCellsKey='TruthCells', OutputLevel=3)[source]

Bases: Cpp

Parameters:
  • name (str)

  • InputCollectionKeys (str)

  • OutputCellsKey (str)

  • OutputTruthCellsKey (str)

  • OutputLevel (int)

class CaloCellBuilder.CaloFlags[source]

Bases: EnumStringification

DoCOF = False
DoCrossTalk = False
DoDefects = False
SamplingnoiseStd = 0.0
class CaloCellBuilder.ConstrainedOptimalFilter(name, OutputLevel=0, NSamples=0, PulsePath='', Threshold=0, SamplingRate=0, StartSamplingBC=0)[source]

Bases: Cpp

Parameters:
  • OutputLevel (int)

  • NSamples (float)

  • PulsePath (str)

  • Threshold (float)

  • SamplingRate (float)

  • StartSamplingBC (float)

class CaloCellBuilder.CrossTalkFlags[source]

Bases: EnumStringification

AmpCapacitive = 4.2
AmpInductive = 2.3
AmpResistive = 1.0
MinEnergy = 1000
class CaloCellBuilder.CrossTalkMaker(name, InputCollectionKey='Cells', OutputCollectionKey='XTCells', MinEnergy=1000, AmpCapacitive=4.2, AmpInductive=2.3, AmpResistive=1.0, HistogramPath='/CrossTalkMaker', OutputLevel=3)[source]

Bases: Cpp

Parameters:
  • name (str)

  • InputCollectionKey (str)

  • OutputCollectionKey (str)

  • MinEnergy (float)

  • AmpCapacitive (float)

  • AmpInductive (float)

  • AmpResistive (float)

  • HistogramPath (str)

  • OutputLevel (int)

core()[source]
class CaloCellBuilder.OptimalFilter(name, WeightsEnergy=[], WeightsTime=[], OutputLevel=3)[source]

Bases: Cpp

Parameters:
  • name (str)

  • WeightsEnergy (list)

  • WeightsTime (list)

  • OutputLevel (int)

class CaloCellBuilder.PileupMerge(name, LowPileupInputFiles, HighPileupInputFiles, InputHitsKey='Hits', OutputHitsKey='Hits_Merged', InputEventKey='EventInfo', OutputEventKey='EventInfo_Merged', OutputLevel=3, NtupleName='CollectionTree', PileupAvg=0, PileupSigma=0, BunchIdStart=-21, BunchIdEnd=4)[source]

Bases: Cpp

Parameters:
  • name (str)

  • LowPileupInputFiles (List[str])

  • HighPileupInputFiles (List[str])

  • InputHitsKey (str)

  • OutputHitsKey (str)

  • InputEventKey (str)

  • OutputEventKey (str)

  • OutputLevel (int)

  • NtupleName (str)

  • PileupAvg (float)

  • PileupSigma (float)

  • BunchIdStart (int)

  • BunchIdEnd (int)

class CaloCellBuilder.PulseGenerator(name, OutputLevel=3, NSamples=0, ShaperFile='', Pedestal=0, DeformationMean=0, DeformationStd=0, NoiseMean=0, NoiseStd=0, SamplingRate=0, StartSamplingBC=0)[source]

Bases: Cpp

Parameters:
  • name (str)

  • OutputLevel (int)

  • NSamples (int)

  • ShaperFile (str)

  • Pedestal (float)

  • DeformationMean (float)

  • DeformationStd (float)

  • NoiseMean (float)

  • NoiseStd (float)

  • SamplingRate (float)

  • StartSamplingBC (float)

CaloCellBuilder.get_cells_from_brl(path)[source]
Parameters:

path (str)

Return type:

List[int]