Definitions:
ElectronIDHelper * eIDHelper_;
float radius = 3.; // cylinder radius around shower axis
eIDHelper_->computeHGCAL(electron,radius);
LongDeps ld(eIDHelper_->energyPerLayer(radius,true));
float measuredDepth, expectedDepth, expectedSigma;
float depthCompatibility = eIDHelper_->clusterDepthCompatibility(ld,measuredDepth,expectedDepth, expectedSigma);
In case of gsfElectrons, all shower variables are calculated for the electron.electronCluster()
object.
Variable | For ID | Description | Access method |
---|---|---|---|
Cluster shapes | |||
sigmaUU |
✅ | Perpendicular cluster spread | eIDHelper_->sigmaUU() |
sigmaVV |
✅ | Radial cluster spread | eIDHelper_->sigmaVV() |
sigmaEE |
❌ | Cluster spread in eta | eIDHelper_->sigmaEE() |
sigmaPP |
❌ | Cluster spread in phi | eIDHelper_->sigmaPP() |
Longitudinal / energy | |||
nLayers |
✅ | Numer of layers in cluster | ld.nLayers() |
firstLayer |
✅ | First layer of cluster | ld.firstLayer() |
lastLayer |
❌ | Last layer of cluster | ld.lastLayer() |
layEfrac10 |
✅ | First layer with 10% energy in EE | To be added, present in ntuple |
layEfrac90 |
✅ | First layer with 90% energy in EE | To be added, present in ntuple |
layerEnergy |
❌ | Energy per layer | ld.energy(layer) |
energyEE |
❌ | Energy within cylinder in EE | ld.energyEE() |
energyFH |
❌ | Energy within cylinder in EE | ld.energyFH() |
energyBH |
❌ | Energy within cylinder in EE | ld.energyBH() |
FHoverE |
✅ | Energy within cylinder in EE | energyFH/energyEE |
HoverE |
✅ | Energy within cylinder in EE | (energyFH+energyBH)/energyEE |
Depth compatibility | |||
measuredDepth |
✅ | Measured shower depth | See above |
expectedDepth |
✅ | Expected shower depth | See above |
expectedSigma |
✅ | Expected shower depth sigma | See above |
depthCompatibility |
✅ | Depth compatibility | See above |
| n_vtx
| ✅ | Number of reco vertices | See inputTag offlinePrimaryVertices
|
KF track requires:
reco::TrackRef myTrackRef = ele.closestCtfTrackRef();
validKF = (myTrackRef.isAvailable());
validKF = (myTrackRef.isNonnull());
Variable | For ID | Description | Access method |
---|---|---|---|
Track-based | Also available from gsfEle directly | ||
pOut |
✅ | Track momentum (Pout) | eIDHelper_->trackMomentumAtEleClus() |
eOverPout |
✅ | Electron cluster energy over Pout | eIDHelper_->eEleClusterOverPout() |
Cluster-track matching | |||
deltaEta |
✅ | dEta between Pout and cluster | eIDHelper_->deltaEtaEleClusterTrackAtCalo() |
deltaPhi |
✅ | dPhi between Pout and cluster | eIDHelper_->deltaPhiEleClusterTrackAtCalo() |
Track properties | |||
eta |
✅ | Track eta | electron.eta() |
fbrem |
✅ | (Pin-Pout)/Pin | electron.fbrem() |
gsfChi2 |
✅ | Chi^2 of GSF track | ele.gsfTrack()->normalizedChi2() |
kfChi2 |
✅ | Chi^2 KF track | myTrackRef->normalizedChi2() |
kfNhits |
✅ | Number of hits for GSF track | myTrackRef->hitPattern().trackerLayersWithMeasurement() |