1 #ifndef MuonTrackValidator_h
2 #define MuonTrackValidator_h
57 for (
unsigned int www=0;www<
label.size();www++){
66 if (!UseAssociators) {
75 consumes<reco::TrackToTrackingParticleAssociator>(
edm::InputTag(associator));
81 <<
"\n usetracker = TRUE : Tracker SimHits WILL be counted";
83 <<
"\n usetracker = FALSE : Tracker SimHits WILL NOT be counted";
85 <<
" usemuon = TRUE : Muon SimHits WILL be counted";
87 <<
" usemuon = FALSE : Muon SimHits WILL NOT be counted"<<std::endl;
90 for (
unsigned int www=0;www<
label.size();www++) {
95 if (recoTracksLabel==
"generalTracks" ||
96 (recoTracksLabel.find(
"cutsRecoTracks") != std::string::npos) ||
97 recoTracksLabel==
"ctfWithMaterialTracksP5LHCNavigation" ||
98 recoTracksLabel==
"hltL3TkTracksFromL2" ||
99 (recoTracksLabel==
"hltL3Muons" && recoTracksInstance==
"L2Seeded"))
103 <<
"\n*** WARNING : inconsistent input tracksTag = "<<
label[www]
104 <<
"\n with usemuon == true"<<
"\n ---> please change to usemuon == false ";
108 <<
"\n*** WARNING : inconsistent input tracksTag = "<<
label[www]
109 <<
"\n with usetracker == false"<<
"\n ---> please change to usetracker == true ";
114 else if (recoTracksLabel==
"standAloneMuons" ||
115 recoTracksLabel==
"standAloneSETMuons" ||
116 recoTracksLabel==
"cosmicMuons" ||
117 recoTracksLabel==
"hltL2Muons")
121 <<
"\n*** WARNING : inconsistent input tracksTag = "<<
label[www]
122 <<
"\n with usetracker == true"<<
"\n ---> please change to usetracker == false ";
126 <<
"\n*** WARNING : inconsistent input tracksTag = "<<
label[www]
127 <<
"\n with usemuon == false"<<
"\n ---> please change to usemuon == true ";
148 double& qoverp,
double& qoverpError,
double& lambda,
double& lambdaError,
149 double&
phi,
double& phiError )
const;
152 double& qoverp,
double& qoverpError,
double& lambda,
double& lambdaError,
153 double&
phi,
double& phiError)
const;
std::vector< MonitorElement * > h_dxypulleta
T getParameter(std::string const &) const
std::vector< MonitorElement * > h_ptpulleta
std::vector< MonitorElement * > etares_vs_eta
std::vector< MonitorElement * > ptres_vs_phi
std::vector< edm::EDGetTokenT< edm::View< reco::Track > > > track_Collection_Token
std::vector< MonitorElement * > h_losthits_eta
std::string dump(unsigned int indent=0) const
std::vector< MonitorElement * > h_thetapullphi
std::vector< MonitorElement * > h_ptpullphi
std::vector< MonitorElement * > ptres_vs_eta
std::vector< MonitorElement * > cotThetares_vs_eta
std::vector< MonitorElement * > h_dzpulleta
std::vector< MonitorElement * > h_thetapulleta
std::vector< MonitorElement * > phimean_vs_eta_phi
virtual ~MuonTrackValidator()
Destructor.
std::vector< MonitorElement * > phires_vs_pt
std::vector< MonitorElement * > h_assochi2_prob
std::vector< MonitorElement * > cotThetares_vs_pt
std::vector< MonitorElement * > h_ptshifteta
std::vector< MonitorElement * > dxyres_vs_eta
std::vector< MonitorElement * > dzres_vs_pt
std::vector< MonitorElement * > dzres_vs_eta
void getRecoMomentum(const reco::Track &track, double &pt, double &ptError, double &qoverp, double &qoverpError, double &lambda, double &lambdaError, double &phi, double &phiError) const
retrieval of reconstructed momentum components from reco::Track (== mean values for GSF) ...
std::vector< MonitorElement * > thetapull_vs_phi
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
edm::EDGetTokenT< SimHitTPAssociationProducer::SimHitTPAssociationList > _simHitTpMapTag
std::vector< MonitorElement * > h_assochi2
std::vector< MonitorElement * > chi2_vs_phi
std::vector< MonitorElement * > h_phipulleta
std::vector< MonitorElement * > chi2_vs_nhits
std::vector< MonitorElement * > phires_vs_phi
std::vector< MonitorElement * > h_chi2mean_vs_phi
std::vector< MonitorElement * > h_phipullphi
SingleObjectSelector< TrackingParticleCollection,::TrackingParticleSelector > TrackingParticleSelector
edm::InputTag label_tp_fake
CosmicTrackingParticleSelector cosmictpSelector
std::vector< MonitorElement * > nhits_vs_phi
edm::EDGetTokenT< TrackingParticleCollection > tp_fake_Token
std::vector< MonitorElement * > dxyres_vs_pt
std::vector< edm::InputTag > label
std::vector< MonitorElement * > h_nchi2
std::vector< MonitorElement * > h_nchi2_prob
std::vector< MonitorElement * > ptpull_vs_eta
std::vector< MonitorElement * > dxypull_vs_eta
void analyze(const edm::Event &, const edm::EventSetup &)
Method called before the event loop.
std::vector< MonitorElement * > phipull_vs_eta
std::vector< MonitorElement * > thetapull_vs_eta
MuonTrackValidator(const edm::ParameterSet &pset)
Constructor.
ObjectSelector< CosmicTrackingParticleSelector > CosmicTrackingParticleSelector
std::vector< MonitorElement * > ptmean_vs_eta_phi
edm::InputTag label_tp_effic
edm::EDGetTokenT< reco::RecoToSimCollection > recoToSimCollection_Token
edm::EDGetTokenT< reco::SimToRecoCollection > simToRecoCollection_Token
std::vector< MonitorElement * > chi2_vs_eta
TrackingParticleSelector tpSelector
std::vector< MonitorElement * > h_losthits
std::vector< MonitorElement * > ptpull_vs_phi
edm::InputTag associatormap
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &)
std::vector< MonitorElement * > ptres_vs_pt
std::vector< MonitorElement * > h_chi2meanhitsh
std::vector< MonitorElement * > phires_vs_eta
std::vector< MonitorElement * > h_hits_phi
std::vector< std::string > associators
bool BiDirectional_RecoToSim_association
std::vector< MonitorElement * > nlosthits_vs_eta
std::vector< MonitorElement * > dzpull_vs_eta
edm::EDGetTokenT< TrackingParticleCollection > tp_effic_Token
std::vector< MonitorElement * > h_chi2meanh
void endRun(edm::Run const &, edm::EventSetup const &)
Method called at the end of the event loop.
std::vector< MonitorElement * > phipull_vs_phi
edm::EDGetTokenT< reco::BeamSpot > bsSrc_Token