Get track history and classify it in function of their . More...
#include <TrackClassifier.h>
Classes | |
struct | G4 |
struct | GeneratedPrimaryVertex |
Auxiliary class holding simulated primary vertices. More... | |
Public Member Functions | |
TrackClassifier const & | evaluate (reco::TrackBaseRef const &) |
Classify the RecoTrack in categories. More... | |
TrackClassifier const & | evaluate (TrackingParticleRef const &) |
Classify the TrackingParticle in categories. More... | |
TrackClassifier const & | evaluate (reco::TrackRef const &track) |
Classify the RecoTrack in categories. More... | |
TrackHistory const & | history () const |
Returns a reference to the track history used in the classification. More... | |
void | newEvent (edm::Event const &, edm::EventSetup const &) |
Pre-process event information (for accessing reconstraction information) More... | |
TrackQuality const & | quality () const |
Returns a reference to the track quality used in the classification. More... | |
TrackClassifier (edm::ParameterSet const &) | |
Constructor by ParameterSet. More... | |
Public Member Functions inherited from TrackCategories | |
const Flags & | flags () const |
Returns flags with the category descriptions. More... | |
bool | is (Category category) const |
Returns track flag for a given category. More... | |
TrackCategories () | |
Void constructor. More... | |
Private Member Functions | |
void | genPrimaryVertices () |
void | hadronFlavor () |
Get hadron flavor of the initial hadron. More... | |
bool | isCharged (const HepMC::GenParticle *) |
bool | isFinalstateParticle (const HepMC::GenParticle *) |
void | processesAtGenerator () |
Get all the information related to decay process. More... | |
void | processesAtSimulation () |
Get information about conversion and other interactions. More... | |
void | qualityInformation (reco::TrackBaseRef const &) |
Classify all the tracks by their reconstruction quality. More... | |
void | reconstructionInformation (reco::TrackBaseRef const &) |
Classify all the tracks by their association and reconstruction information. More... | |
void | simulationInformation () |
Get all the information related to the simulation details. More... | |
void | vertexInformation () |
Get geometrical information about the vertices. More... | |
Private Attributes | |
double | badPull_ |
edm::Handle< reco::BeamSpot > | beamSpot_ |
const edm::InputTag | beamSpotLabel_ |
std::vector < GeneratedPrimaryVertex > | genpvs_ |
const edm::InputTag | hepMCLabel_ |
double | longLivedDecayLength_ |
edm::ESHandle< MagneticField > | magneticField_ |
edm::Handle< edm::HepMCProduct > | mcInformation_ |
unsigned int | minTrackerSimHits_ |
unsigned int | numberOfInnerLayers_ |
edm::ESHandle< ParticleDataTable > | particleDataTable_ |
TrackQuality | quality_ |
TrackHistory | tracer_ |
edm::ESHandle < TransientTrackBuilder > | transientTrackBuilder_ |
const TrackerTopology * | tTopo_ |
double | vertexClusteringSqDistance_ |
Additional Inherited Members | |
Static Public Attributes inherited from TrackCategories | |
static const char * | Names [] |
Name of the different categories. More... | |
Protected Member Functions inherited from TrackCategories | |
void | reset () |
Reset the categories flags. More... | |
void | unknownTrack () |
Protected Attributes inherited from TrackCategories | |
Flags | flags_ |
Flag containers. More... | |
Get track history and classify it in function of their .
Definition at line 28 of file TrackClassifier.h.
Type to the associate category.
Definition at line 34 of file TrackClassifier.h.
TrackClassifier::TrackClassifier | ( | edm::ParameterSet const & | config | ) |
Constructor by ParameterSet.
Definition at line 12 of file TrackClassifier.cc.
References badPull_, HistoryBase::depth(), edm::ParameterSet::getUntrackedParameter(), longLivedDecayLength_, minTrackerSimHits_, numberOfInnerLayers_, tracer_, and vertexClusteringSqDistance_.
TrackClassifier const & TrackClassifier::evaluate | ( | reco::TrackBaseRef const & | track | ) |
Classify the RecoTrack in categories.
Definition at line 72 of file TrackClassifier.cc.
References TrackHistory::evaluate(), TrackCategories::Fake, TrackCategories::flags_, hadronFlavor(), processesAtGenerator(), processesAtSimulation(), qualityInformation(), reconstructionInformation(), TrackCategories::reset(), simulationInformation(), tracer_, TrackCategories::unknownTrack(), and vertexInformation().
Referenced by TrackCategoriesAnalyzer::analyze(), TrackingParticleCategoriesAnalyzer::analyze(), TrackHistoryAnalyzer::analyze(), TrackClassifierByProxy< Collection >::evaluate(), evaluate(), QualityCutsAnalyzer::LoopOverJetTracksAssociation(), and JetVetoedTracksAssociationDRVertex::produce().
TrackClassifier const & TrackClassifier::evaluate | ( | TrackingParticleRef const & | track | ) |
Classify the TrackingParticle in categories.
Definition at line 111 of file TrackClassifier.cc.
References TrackHistory::evaluate(), TrackCategories::flags_, hadronFlavor(), edm::RefToBase< T >::isNonnull(), processesAtGenerator(), processesAtSimulation(), qualityInformation(), TrackCategories::Reconstructed, reconstructionInformation(), Reconstruction_cff::recotrack, TrackHistory::recoTrack(), TrackCategories::reset(), simulationInformation(), tracer_, TrackCategories::unknownTrack(), and vertexInformation().
|
inline |
Classify the RecoTrack in categories.
Definition at line 49 of file TrackClassifier.h.
References evaluate().
|
private |
Definition at line 569 of file TrackClassifier.cc.
References funct::abs(), event(), spr::find(), genpvs_, customizeTrackingMonitorSeedNumber::idx, isCharged(), isFinalstateParticle(), m, mcInformation_, parents, funct::pow(), python.multivaluedict::sort(), and vertexClusteringSqDistance_.
Referenced by newEvent().
|
private |
Get hadron flavor of the initial hadron.
Definition at line 259 of file TrackClassifier.cc.
References TrackCategories::Bottom, TrackCategories::Charm, TrackCategories::flags_, configurableAnalysis::GenParticle, HistoryBase::genParticle(), TrackCategories::Light, RecoTau_DiTaus_pt_20-420_cfg::ParticleID, sysUtil::pid, and tracer_.
Referenced by evaluate().
|
inline |
Returns a reference to the track history used in the classification.
Definition at line 55 of file TrackClassifier.h.
References tracer_.
Referenced by TrackHistoryAnalyzer::analyze().
|
private |
Definition at line 556 of file TrackClassifier.cc.
References particleDataTable_.
Referenced by genPrimaryVertices().
|
private |
void TrackClassifier::newEvent | ( | edm::Event const & | event, |
edm::EventSetup const & | setup | ||
) |
Pre-process event information (for accessing reconstraction information)
Definition at line 39 of file TrackClassifier.cc.
References beamSpot_, beamSpotLabel_, genPrimaryVertices(), edm::EventSetup::get(), edm::EventSetup::getData(), hepMCLabel_, magneticField_, mcInformation_, TrackHistory::newEvent(), TrackQuality::newEvent(), particleDataTable_, edm::ESHandle< class >::product(), quality_, tracer_, transientTrackBuilder_, and tTopo_.
Referenced by TrackCategoriesAnalyzer::analyze(), TrackingParticleCategoriesAnalyzer::analyze(), TrackHistoryAnalyzer::analyze(), QualityCutsAnalyzer::analyze(), TrackClassifierByProxy< Collection >::newEvent(), and JetVetoedTracksAssociatorAtVertex::produce().
|
private |
Get all the information related to decay process.
Definition at line 275 of file TrackClassifier.cc.
References funct::abs(), TrackCategories::BWeakDecay, TrackCategories::ChargeKaonDecay, TrackCategories::ChargePionDecay, TrackCategories::CWeakDecay, TrackCategories::DecayOnFlightMuon, TrackCategories::flags_, TrackCategories::FromBWeakDecayMuon, TrackCategories::FromChargeKaonMuon, TrackCategories::FromChargePionMuon, TrackCategories::FromCWeakDecayMuon, HistoryBase::genParticleTrail(), TrackCategories::JpsiDecay, TrackCategories::KsDecay, TrackCategories::LambdaDecay, TrackCategories::LongLivedDecay, longLivedDecayLength_, TrackCategories::Muon, particleDataTable_, RecoTau_DiTaus_pt_20-420_cfg::ParticleID, TrackCategories::SigmaMinusDecay, TrackCategories::SigmaPlusDecay, tracer_, update, and TrackCategories::XiDecay.
Referenced by evaluate().
|
private |
Get information about conversion and other interactions.
Definition at line 343 of file TrackClassifier.cc.
References funct::abs(), TrackClassifier::G4::Annihilation, TrackCategories::AnnihilationProcess, TrackCategories::BWeakDecay, TrackCategories::ChargeKaonDecay, TrackCategories::ChargePionDecay, TrackClassifier::G4::Compton, TrackCategories::ComptonProcess, TrackClassifier::G4::Conversions, TrackCategories::ConversionsProcess, TrackCategories::CWeakDecay, TrackClassifier::G4::Decay, TrackCategories::DecayOnFlightMuon, TrackCategories::DecayProcess, TrackClassifier::G4::EBrem, TrackCategories::EBremProcess, TrackClassifier::G4::EIoni, TrackCategories::EIoniProcess, archive::flag, TrackCategories::flags_, TrackCategories::FromBWeakDecayMuon, TrackCategories::FromChargeKaonMuon, TrackCategories::FromChargePionMuon, TrackCategories::FromCWeakDecayMuon, TrackClassifier::G4::Hadronic, TrackCategories::HadronicProcess, TrackClassifier::G4::HIoni, TrackCategories::HIoniProcess, edm::Ref< C, T, F >::isNonnull(), TrackCategories::JpsiDecay, TrackCategories::KnownProcess, TrackCategories::KsDecay, TrackCategories::LambdaDecay, TrackCategories::LongLivedDecay, longLivedDecayLength_, TrackClassifier::G4::MuBrem, TrackCategories::MuBremProcess, TrackClassifier::G4::MuIoni, TrackCategories::MuIoniProcess, TrackClassifier::G4::MuNucl, TrackCategories::MuNuclProcess, TrackCategories::Muon, TrackClassifier::G4::MuPairProd, TrackCategories::MuPairProdProcess, TrackCategories::OmegaDecay, particleDataTable_, RecoTau_DiTaus_pt_20-420_cfg::ParticleID, TrackClassifier::G4::Photon, TrackCategories::PhotonProcess, TrackClassifier::G4::Primary, TrackCategories::PrimaryProcess, LaserDQM_cfg::process, TrackCategories::SigmaMinusDecay, TrackCategories::SigmaPlusDecay, HistoryBase::simParticleTrail(), TrackClassifier::G4::SynchrotronRadiation, TrackCategories::SynchrotronRadiationProcess, tracer_, TrackClassifier::G4::Undefined, TrackCategories::UndefinedProcess, TrackClassifier::G4::Unknown, TrackCategories::UnknownProcess, update, and TrackCategories::XiDecay.
Referenced by evaluate().
|
inline |
Returns a reference to the track quality used in the classification.
Definition at line 61 of file TrackClassifier.h.
References quality_.
|
private |
Classify all the tracks by their reconstruction quality.
Definition at line 231 of file TrackClassifier.cc.
References TrackCategories::BadInnerHits, TrackQuality::evaluate(), TrackCategories::flags_, TrackQuality::Layer::hits, i, j, TrackQuality::layer(), min(), TrackQuality::Layer::Misassoc, TrackQuality::Layer::Noise, numberOfInnerLayers_, TrackQuality::numberOfLayers(), quality_, TrackQuality::Layer::Shared, TrackCategories::SharedInnerHits, HistoryBase::simParticleTrail(), TrackQuality::Layer::Hit::state, tracer_, and tTopo_.
Referenced by evaluate().
|
private |
Classify all the tracks by their association and reconstruction information.
Definition at line 156 of file TrackClassifier.cc.
References funct::abs(), TrackCategories::Bad, badPull_, beamSpot_, reco::TrackBase::charge(), funct::cos(), reco::TrackBase::dxy(), reco::TrackBase::dxyError(), reco::TrackBase::dz(), reco::TrackBase::dzError(), cppFunctionSkipper::exception, TrackCategories::flags_, magneticField_, CoreSimTrack::momentum(), FreeTrajectoryState::momentum(), AlCaHLTBitMon_ParallelJobs::p, FreeTrajectoryState::position(), edm::ESHandle< class >::product(), HistoryBase::simParticle(), funct::sin(), TrajectoryStateClosestToPoint::theState(), tracer_, findQualityFiles::v, PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by evaluate().
|
private |
Get all the information related to the simulation details.
Definition at line 218 of file TrackClassifier.cc.
References funct::abs(), EncodedEventId::bunchCrossing(), EncodedEventId::event(), TrackCategories::flags_, minTrackerSimHits_, TrackCategories::Muon, TrackCategories::SignalEvent, HistoryBase::simParticle(), tracer_, and TrackCategories::TrackerSimHits.
Referenced by evaluate().
|
private |
Get geometrical information about the vertices.
Definition at line 467 of file TrackClassifier.cc.
References counter, TrackCategories::flags_, HistoryBase::genParticleTrail(), genpvs_, AlCaHLTBitMon_ParallelJobs::p, dbtoconf::parent, funct::pow(), TrackCategories::PrimaryVertex, TrackCategories::SecondaryVertex, HistoryBase::simParticleTrail(), TrackCategories::TertiaryVertex, tracer_, vertexClusteringSqDistance_, TrackClassifier::GeneratedPrimaryVertex::x, TrackClassifier::GeneratedPrimaryVertex::y, and TrackClassifier::GeneratedPrimaryVertex::z.
Referenced by evaluate().
|
private |
Definition at line 71 of file TrackClassifier.h.
Referenced by reconstructionInformation(), and TrackClassifier().
|
private |
Definition at line 113 of file TrackClassifier.h.
Referenced by newEvent(), and reconstructionInformation().
|
private |
Definition at line 69 of file TrackClassifier.h.
Referenced by newEvent().
|
private |
Definition at line 160 of file TrackClassifier.h.
Referenced by genPrimaryVertices(), and vertexInformation().
|
private |
Definition at line 68 of file TrackClassifier.h.
Referenced by newEvent().
|
private |
Definition at line 72 of file TrackClassifier.h.
Referenced by processesAtGenerator(), processesAtSimulation(), and TrackClassifier().
|
private |
Definition at line 105 of file TrackClassifier.h.
Referenced by newEvent(), and reconstructionInformation().
|
private |
Definition at line 107 of file TrackClassifier.h.
Referenced by genPrimaryVertices(), and newEvent().
|
private |
Definition at line 75 of file TrackClassifier.h.
Referenced by simulationInformation(), and TrackClassifier().
|
private |
Definition at line 74 of file TrackClassifier.h.
Referenced by qualityInformation(), and TrackClassifier().
|
private |
Definition at line 109 of file TrackClassifier.h.
Referenced by isCharged(), newEvent(), processesAtGenerator(), and processesAtSimulation().
|
private |
Definition at line 103 of file TrackClassifier.h.
Referenced by newEvent(), quality(), and qualityInformation().
|
private |
Definition at line 101 of file TrackClassifier.h.
Referenced by evaluate(), hadronFlavor(), history(), newEvent(), processesAtGenerator(), processesAtSimulation(), qualityInformation(), reconstructionInformation(), simulationInformation(), TrackClassifier(), and vertexInformation().
|
private |
Definition at line 111 of file TrackClassifier.h.
Referenced by newEvent().
|
private |
Definition at line 115 of file TrackClassifier.h.
Referenced by newEvent(), and qualityInformation().
|
private |
Definition at line 73 of file TrackClassifier.h.
Referenced by genPrimaryVertices(), TrackClassifier(), and vertexInformation().