Source code (CVS tag: @) - Administrative privileges
Description
Provide algorithms used for muon isolation in HLT and Offline.
"Isolation" process can procede in two stages:
- extraction of IsoDeposit(s) from event data (tracks, calo towers/hits, jets, etc.): abstracted by MuIsoExtractor with concrete implmentation provided via IsoDepositExtractorFactory
- using IsoDeposit calculate an "isolation value" (weightedSumPt in a cone, isolation flag, isolation likelihood etc.): abstracted by MuIsoBaseIsolator. The above two steps can be combined in a concrete implementation of MuIsoBaseAlgorithm.
Public interface
- MuIsoExtractor: abstract base class for methods that extract IsoDeposit(s) from an event record given a muon (reco::Track).
- IsoDepositExtractorFactory: extractor factory to be used as a source of concrete extractors.
- CutsConeSizeFunction: given track eta derives coneSize based on input set of "Cuts"
- Cuts: class used for configuration of et (pt) thresholds and cone size in a given eta range
- MuIsoBaseIsolator: abstract base class for isolators; uses IsoDeposit(s) on input and gives float "result" on output.
- IsolatorByDeposit: the "result" is the sumDeposits in a given cone (can use CutsConeSizeFunction).
- IsolatorByNominalEfficiency: the "result" is the likelihood-like value (apply val < eff0 to get cut efficiency of not less than eff0) using a lookup (text) table.
- MuIsoBaseAlgorithm: abstract class for isolation algorithms with single float or "is isolated" flag on output for a given input muon (reco::Track).
- MuIsoByTrackPt Concrete isolation algorithm: extract IsoDeposit using extractor and get sumPt in a cone.
- Range: helper class implementation of (min, max) range for ordered types.
Plugins
- TrackExtractor: make IsoDeposit using "other" tracks within "DR_Veto" to "DR_Max", with |dZ|< "Diff_z" and |dr_xy| < "Diff_r" from the muon track.
- CaloExtractorByAssociator: with CaloTowers or recHits on input would provide MuIsoDeposits for ecal, hcal and ho separately (3 cts) using TrackDetectorAssociator. The deposit values are hit/tower et; each hit/tower with energy>3*sigmaNoise and et> threshold, being within "DR_Max" and excluding "DR_Veto" gets an entry.
- CaloExtractor: with CaloTowers on input provide a weighted sum of "Weight_E"*ecalEt+"Weight_H"*hcalEt using simple (analytical form) propagator. Each tower with energy>3*sigmaNoise and et> threshold, being within "DR_Max" and excluding "DR_Veto" gets an entry. CaloExtractor is slightly less precise in picking up the point where muon hits the calorimeter (compared to CaloExtractorByAssociator), but is considerably faster.
Modules
None.
Unit tests and examples
None.
Status and planned development
- JetExtractor awaits implementation.
- CombinedTrackCalIsolator awaits implementation.
- CaloExtractor(ByAssociator) use muon (eta, phi) at vertex as the cone axis (center): should be "position at calorimeter" of a neutral particle tangential to the muon at vertex ("neutral" muon)
Last updated: @ Author: computer-generated.