1 #ifndef Validation_RecoTrack_MTVHistoProducerAlgoForTracker_h
2 #define Validation_RecoTrack_MTVHistoProducerAlgoForTracker_h
42 double dxy,
double dz,
int nSimHits,
44 int numVertices,
double vertz);
53 int numAssocRecoTracks,
57 double sharedFraction);
93 double& qoverp,
double& qoverpError,
double& lambda,
double& lambdaError,
94 double&
phi,
double& phiError )
const;
97 double& qoverp,
double& qoverpError,
double& lambda,
double& lambdaError,
98 double&
phi,
double& phiError)
const;
102 double getPt(
double pt);
std::vector< MonitorElement * > h_assoc_vertz_fwdpos
std::vector< std::vector< int > > totFOMT_vertcount
std::vector< MonitorElement * > h_fakerate_ootpu_entire
std::vector< std::vector< double > > vertcountintervals
std::vector< MonitorElement * > h_simul_vertz_entire
std::vector< MonitorElement * > h_looperhit
std::vector< MonitorElement * > h_loopratephi
TrackingParticleSelector * generalTpSelector
std::vector< MonitorElement * > h_fakerate_vertcount_fwdpos
std::vector< MonitorElement * > h_assoc2hit
std::vector< MonitorElement * > h_dedx_estim2
std::vector< MonitorElement * > h_dzpulletamean
std::vector< MonitorElement * > h_recodxy
std::vector< std::vector< int > > totASS_vertcount_fwdpos
std::vector< MonitorElement * > h_assoc2_itpu_sig_vertcount
std::vector< MonitorElement * > h_fomt_itpu_eta
std::vector< MonitorElement * > h_assochit
std::vector< MonitorElement * > h_efficPt
std::vector< MonitorElement * > h_fakes
std::vector< std::vector< double > > zposintervals
std::vector< MonitorElement * > h_loopratedxy
std::vector< std::vector< int > > totASS2_ootpu_fwdpos
std::vector< MonitorElement * > h_PXFhits_eta
std::vector< MonitorElement * > h_nchi2_prob
std::vector< MonitorElement * > h_looperpT
std::vector< MonitorElement * > h_pullDz
virtual ~MTVHistoProducerAlgoForTracker()
TrackingParticleSelector * TpSelectorForEfficiencyVsPhi
std::vector< MonitorElement * > ptpull_vs_phi
std::vector< MonitorElement * > h_assoczpos
std::vector< std::vector< int > > totASS_phi
std::vector< MonitorElement * > nPXFhits_vs_eta
std::vector< std::vector< int > > totSIM_vertz_fwdpos
std::vector< MonitorElement * > h_fake_vs_hit
std::vector< MonitorElement * > h_dzmeanh
std::vector< MonitorElement * > h_assoc2_ootpu_vertcount
std::vector< MonitorElement * > h_DThits_eta
std::vector< std::vector< int > > totRECeta
std::vector< MonitorElement * > h_misidratephi
std::vector< MonitorElement * > h_simulzpos
std::vector< MonitorElement * > h_assochi2
std::vector< std::vector< int > > totASSeta
std::vector< MonitorElement * > nrecHit_vs_nsimHit_rec2sim
std::vector< std::vector< double > > vertposintervals
std::vector< std::vector< int > > totASS2_itpu_eta_entire
std::vector< std::vector< int > > totCONeta
std::vector< MonitorElement * > h_effic_vertz_fwdpos
std::vector< MonitorElement * > h_assoc2pT
std::vector< MonitorElement * > h_simulpT
std::vector< MonitorElement * > h_RPChits_eta
std::vector< MonitorElement * > h_effic_vertz_barrel
std::vector< MonitorElement * > h_ptshifteta
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 * > nTEChits_vs_eta
std::vector< MonitorElement * > h_reco_ootpu_entire
std::vector< MonitorElement * > h_fakerate_vertcount_barrel
std::vector< std::vector< int > > totSIM_vertz_entire
std::vector< MonitorElement * > h_fake_vs_dz
std::vector< MonitorElement * > h_hits
std::vector< MonitorElement * > h_assoc_vertcount_fwdneg
std::vector< MonitorElement * > h_effic_vs_vertpos
std::vector< std::vector< double > > dxyintervals
std::vector< MonitorElement * > nLayersWithMeas_vs_eta
std::vector< MonitorElement * > h_pullPhi
std::vector< MonitorElement * > h_fomt_vertcount
std::vector< std::vector< int > > totASS_vertcount_barrel
std::vector< MonitorElement * > h_fake_vs_dxy
std::vector< MonitorElement * > phipull_vs_phi
std::vector< MonitorElement * > h_dedx_sat1
std::vector< MonitorElement * > h_hits_eta
std::vector< MonitorElement * > h_effic_vertcount_fwdpos
void fill_generic_simTrack_histos(int counter, ParticleBase::Vector, ParticleBase::Point vertex, int bx)
std::vector< MonitorElement * > h_thetapullphi
void fill_dedx_recoTrack_histos(int count, edm::RefToBase< reco::Track > &trackref, std::vector< edm::ValueMap< reco::DeDxData > > v_dEdx)
double getEta(double eta)
std::vector< MonitorElement * > nrec_vs_nsim
std::vector< MonitorElement * > h_ptrmshPt
std::vector< MonitorElement * > h_CSChits_eta
std::vector< MonitorElement * > h_fakerate_ootpu_barrel
std::vector< MonitorElement * > h_algo
void fillProfileHistosFromVectors(int counter)
std::vector< MonitorElement * > h_assocdz
std::vector< std::vector< int > > totREC_dz
std::vector< std::vector< int > > totASS2_phi
std::vector< MonitorElement * > h_assoc_vertcount_fwdpos
std::vector< MonitorElement * > nTIDhits_vs_eta
std::vector< std::vector< int > > totREC_vertcount_entire
std::vector< MonitorElement * > h_ptSIM
std::vector< MonitorElement * > h_dxypulletamean
std::vector< std::vector< int > > totASS2_vertcount_entire
std::vector< std::vector< int > > totREC_algo
std::vector< MonitorElement * > phires_vs_eta
std::vector< MonitorElement * > h_pullDxy
std::vector< MonitorElement * > h_assoc2phi
std::vector< std::vector< int > > totASS_dxy
std::vector< MonitorElement * > h_phipullphi
std::vector< MonitorElement * > h_nchi2
std::vector< MonitorElement * > h_fakeratePt
std::vector< std::vector< int > > totSIM_vertcount_entire
TrackingParticleSelector * TpSelectorForEfficiencyVsVTXZ
std::vector< MonitorElement * > h_dxyrmsh
std::vector< MonitorElement * > h_simul_vertcount_fwdpos
std::vector< std::vector< int > > totmisid_dxy
math::XYZVectorD Vector
point in the space
std::vector< MonitorElement * > h_dzrmshPt
std::vector< MonitorElement * > h_vertposSIM
std::vector< MonitorElement * > h_looperdxy
std::vector< MonitorElement * > h_simuleta
std::vector< MonitorElement * > h_misidratepT
std::vector< std::vector< int > > totSIM_dz
std::vector< MonitorElement * > h_ptpulleta
std::vector< MonitorElement * > h_effic_PU_eta
std::vector< MonitorElement * > h_assoc2_ootpu_fwdneg
std::vector< MonitorElement * > h_assoc2_vertcount_fwdneg
std::vector< MonitorElement * > h_fomt_sig_vertcount
std::vector< MonitorElement * > h_assoc_vertz_fwdneg
std::vector< MonitorElement * > h_assoc2_itpu_vertcount
std::vector< MonitorElement * > h_TIBhits_eta
std::vector< MonitorElement * > h_thetapullphimean
std::vector< MonitorElement * > h_fomt_ootpu_eta
std::vector< MonitorElement * > h_cotThetameanhPt
std::vector< std::vector< int > > totFOMT_eta
std::vector< MonitorElement * > h_phimeanhPhi
void bookRecoHistosForStandaloneRunning()
void fill_trackBased_histos(int count, int assTracks, int numRecoTracks, int numSimTracks)
std::vector< MonitorElement * > h_misidratedz
void fillHistosFromVectors(int counter)
std::vector< MonitorElement * > h_assoc2dz
double cotThetaRes_rangeMax
std::vector< MonitorElement * > chi2_vs_phi
std::vector< MonitorElement * > h_fomt_eta
std::vector< MonitorElement * > h_LayersWithMeas_eta
std::vector< std::vector< int > > totASS_zpos
std::vector< std::vector< int > > totloop_dxy
std::vector< std::vector< int > > totASS2etaSig
std::vector< std::vector< int > > totASS2_vertcount_barrel
std::vector< MonitorElement * > h_chi2mean_vs_phi
std::vector< MonitorElement * > h_assocphi
std::vector< MonitorElement * > h_cotThetarmsh
std::vector< MonitorElement * > phires_vs_phi
std::vector< MonitorElement * > dzres_vs_eta
std::vector< MonitorElement * > h_losthits_eta
std::vector< MonitorElement * > h_ptmeanhPhi
std::vector< std::vector< int > > totSIM_hit
std::vector< MonitorElement * > h_misideta
std::vector< MonitorElement * > nlosthits_vs_eta
std::vector< MonitorElement * > nSTRIPlayersWith1dMeas_vs_eta
std::vector< MonitorElement * > h_phimeanh
std::vector< MonitorElement * > h_fomt_sig_itpu_eta
std::vector< MonitorElement * > h_recohit
std::vector< MonitorElement * > h_reco_vertcount_entire
void fill_generic_recoTrack_histos(int count, const reco::Track &track, math::XYZPoint bsPosition, bool isMatched, bool isSigMatched, bool isChargeMatched, int numAssocRecoTracks, int numVertices, int tpbunchcrossing, int nSimHits, double sharedFraction)
std::vector< MonitorElement * > h_thetapulleta
void fill_ResoAndPull_recoTrack_histos(int count, ParticleBase::Vector momentumTP, ParticleBase::Point vertexTP, int chargeTP, const reco::Track &track, math::XYZPoint bsPosition)
std::vector< MonitorElement * > h_fakerate_vertcount_entire
std::vector< std::vector< int > > totSIM_zpos
std::vector< std::vector< int > > totASSpT
std::vector< std::vector< int > > totSIM_vertz_fwdneg
std::vector< std::vector< int > > totASS2_vertcount_fwdneg
std::vector< MonitorElement * > h_phipullphimean
std::vector< MonitorElement * > h_dedx_estim1
std::vector< MonitorElement * > h_hits_phi
std::vector< std::vector< int > > totASS2_ootpu_fwdneg
std::vector< MonitorElement * > phires_vs_pt
std::vector< MonitorElement * > h_reco_ootpu_fwdneg
std::vector< std::vector< int > > totlooppT
std::vector< MonitorElement * > h_fomt_sig_itpu_vertcount
std::vector< std::vector< int > > totloop_hit
std::vector< MonitorElement * > h_assoc2_itpu_eta
math::XYZPointD Point
point in the space
std::vector< MonitorElement * > h_STRIPlayersWithMeas_eta
std::vector< std::vector< int > > totASS2eta
std::vector< MonitorElement * > h_assoc2_ootpu_fwdpos
std::vector< MonitorElement * > nPXBhits_vs_eta
std::vector< std::vector< int > > totASS_hit
std::vector< std::vector< int > > totASS2_vertcount_entire_signal
std::vector< std::vector< int > > totASS2_itpu_vertcount_entire
std::vector< MonitorElement * > h_assoc2dxy
std::vector< MonitorElement * > h_dxyrmshPt
std::vector< MonitorElement * > h_STRIPlayersWith1dMeas_eta
std::vector< MonitorElement * > h_pullQoverp
std::vector< std::vector< int > > totSIM_phi
std::vector< std::vector< int > > totASS2pT
std::vector< MonitorElement * > h_fake_vs_phi
std::vector< MonitorElement * > h_ptpulletamean
std::vector< MonitorElement * > h_misidhit
std::vector< MonitorElement * > nSTRIPlayersWithMeas_vs_eta
std::vector< MonitorElement * > h_assoc2eta_sig
std::vector< MonitorElement * > nTOBhits_vs_eta
std::vector< std::vector< int > > totASS_dz
std::vector< std::vector< int > > totASS_vertz_barrel
std::vector< MonitorElement * > ptpull_vs_eta
std::vector< MonitorElement * > etares_vs_eta
void finalHistoFits(int counter)
std::vector< MonitorElement * > h_fakerate_ootpu_fwdneg
std::vector< MonitorElement * > h_recophi
std::vector< MonitorElement * > h_misidratehit
std::vector< MonitorElement * > h_assocpT
std::vector< MonitorElement * > h_ptpullphimean
std::vector< MonitorElement * > h_simul_vertz_barrel
std::vector< std::vector< int > > totASS_vertcount_entire
std::vector< MonitorElement * > nSTRIPlayersWith2dMeas_vs_eta
std::vector< MonitorElement * > h_tracks
std::vector< MonitorElement * > h_chi2meanh
std::vector< MonitorElement * > h_TIDhits_eta
std::vector< MonitorElement * > h_tracksSIM
std::vector< MonitorElement * > h_effic_vertcount_entire
std::vector< MonitorElement * > h_effic
std::vector< MonitorElement * > nhits_vs_phi
std::vector< std::vector< int > > totloopeta
std::vector< std::vector< int > > totASS2_dz
std::vector< std::vector< int > > totSIM_vertpos
std::vector< MonitorElement * > h_simul_vertcount_barrel
std::vector< std::vector< int > > totREC_ootpu_entire
std::vector< MonitorElement * > h_ptmeanhPt
std::vector< MonitorElement * > h_phirmsh
std::vector< MonitorElement * > nrecHit_vs_nsimHit_sim2rec
bool isMatched(TrackingRecHit const &hit)
std::vector< std::vector< int > > totRECpT
std::vector< std::vector< int > > totmisid_phi
std::vector< std::vector< int > > totREC_vertcount_fwdneg
void fill_simAssociated_recoTrack_histos(int count, const reco::Track &track)
std::vector< MonitorElement * > h_assochi2_prob
std::vector< std::vector< int > > totmisidpT
std::vector< MonitorElement * > h_reco_ootpu_barrel
std::vector< MonitorElement * > h_assoc_vertz_barrel
std::vector< MonitorElement * > h_effic_PU_zpos
std::vector< MonitorElement * > h_phirmshPt
std::vector< std::vector< int > > totloop_dz
std::vector< MonitorElement * > phimean_vs_eta_phi
std::vector< MonitorElement * > h_charge
std::vector< std::vector< int > > totASS2_itpu_vertcount_entire_signal
std::vector< MonitorElement * > h_reco_ootpu_eta
std::vector< std::vector< int > > totASS2_hit
std::vector< MonitorElement * > h_loopratehit
std::vector< MonitorElement * > h_loopereta
std::vector< MonitorElement * > h_effic_vertcount_fwdneg
std::vector< MonitorElement * > h_misiddz
std::vector< std::vector< int > > totREC_dxy
std::vector< std::vector< double > > phiintervals
std::vector< MonitorElement * > h_assoc_vertcount_entire
std::vector< MonitorElement * > h_assoc2_ootpu_eta
std::vector< MonitorElement * > chi2_vs_nhits
std::vector< std::vector< int > > totSIM_vertcount_fwdpos
std::vector< std::vector< int > > totSIM_vertz_barrel
std::vector< std::vector< int > > totASS2_itpu_eta_entire_signal
double cotThetaRes_rangeMin
std::vector< MonitorElement * > dzpull_vs_eta
std::vector< std::vector< int > > totREC_vertcount_barrel
std::vector< MonitorElement * > h_simuldz
std::vector< std::vector< int > > totASS_vertz_fwdpos
std::vector< MonitorElement * > h_misiddxy
std::vector< MonitorElement * > h_bunchxSIM
std::vector< MonitorElement * > h_fakerate
std::vector< std::vector< int > > totmisid_hit
std::vector< MonitorElement * > h_ptpullphi
std::vector< std::vector< int > > totCONzpos
std::vector< MonitorElement * > thetapull_vs_phi
std::vector< MonitorElement * > h_assoc2_ootpu_barrel
TrackingParticleSelector * TpSelectorForEfficiencyVsPt
std::vector< std::vector< int > > totREC_ootpu_barrel
std::vector< MonitorElement * > h_simulvertpos
std::vector< MonitorElement * > h_STRIPlayersWith2dMeas_eta
std::vector< MonitorElement * > dxyres_vs_eta
std::vector< MonitorElement * > h_effic_vs_phi
std::vector< std::vector< int > > totREC_vertcount_fwdpos
std::vector< MonitorElement * > h_ptrmsh
std::vector< std::vector< int > > totASS_vertpos
std::vector< MonitorElement * > h_chi2meanhitsh
std::vector< MonitorElement * > h_fomt_ootpu_vertcount
std::vector< MonitorElement * > h_dxymeanhPt
std::vector< MonitorElement * > h_dzpulleta
std::vector< MonitorElement * > h_misidpT
std::vector< MonitorElement * > nPXLlayersWithMeas_vs_eta
std::vector< std::vector< int > > totSIMpT
std::vector< std::vector< int > > totASS_vertz_entire
std::vector< std::vector< int > > totASS_vertcount_fwdneg
std::vector< MonitorElement * > nTIBhits_vs_eta
std::vector< MonitorElement * > h_fakerate_ootpu_fwdpos
std::vector< MonitorElement * > h_dxypulleta
void fill_recoAssociated_simTrack_histos(int count, const TrackingParticle &tp, ParticleBase::Vector momentumTP, ParticleBase::Point vertexTP, double dxy, double dz, int nSimHits, const reco::Track *track, int numVertices, double vertz)
std::vector< std::vector< double > > etaintervals
std::vector< MonitorElement * > h_effic_vs_dz
XYZPointD XYZPoint
point in space with cartesian internal representation
std::vector< MonitorElement * > h_phirmshPhi
std::vector< std::vector< int > > totREC_ootpu_fwdpos
std::vector< std::vector< int > > totASS2_ootpu_entire
std::vector< MonitorElement * > h_eta
std::vector< MonitorElement * > h_effic_PU_vertcount
std::vector< MonitorElement * > h_pt
std::vector< MonitorElement * > h_PXBhits_eta
std::vector< std::vector< int > > totASS2_ootpu_eta_entire
std::vector< MonitorElement * > h_phimeanhPt
std::vector< MonitorElement * > h_dedx_nom2
std::vector< MonitorElement * > cotThetares_vs_pt
std::vector< MonitorElement * > h_assoc2_itpu_sig_eta
std::vector< MonitorElement * > h_effic_vs_zpos
std::vector< MonitorElement * > h_etaSIM
std::vector< MonitorElement * > h_simulphi
std::vector< MonitorElement * > h_reco_vertcount_fwdpos
std::vector< MonitorElement * > h_ptmeanh
std::vector< MonitorElement * > h_pullTheta
std::vector< std::vector< int > > totREC_hit
std::vector< MonitorElement * > ptmean_vs_eta_phi
std::vector< MonitorElement * > h_looperphi
std::vector< std::vector< int > > totSIMeta
std::vector< MonitorElement * > h_reco_vertcount_fwdneg
std::vector< std::vector< int > > totREC_ootpu_fwdneg
std::vector< std::vector< int > > totSIM_vertcount_barrel
std::vector< MonitorElement * > dxypull_vs_eta
std::vector< MonitorElement * > h_fomt_itpu_vertcount
std::vector< std::vector< int > > totREC_ootpu_eta_entire
std::vector< MonitorElement * > ptres_vs_eta
std::vector< MonitorElement * > h_cotThetameanh
std::vector< MonitorElement * > h_assoc_vertz_entire
std::vector< MonitorElement * > h_assoc2_vertcount_fwdpos
std::vector< MonitorElement * > h_dzrmsh
std::vector< MonitorElement * > h_con_vertcount
std::vector< MonitorElement * > h_effic_vs_dxy
std::vector< MonitorElement * > phipull_vs_eta
std::vector< MonitorElement * > h_TOBhits_eta
std::vector< MonitorElement * > h_misidrate
std::vector< MonitorElement * > h_TEChits_eta
std::vector< MonitorElement * > h_reco_vertcount_barrel
std::vector< MonitorElement * > h_simulhit
std::vector< MonitorElement * > h_effic_vertz_entire
std::vector< MonitorElement * > h_con_zpos
std::vector< MonitorElement * > h_dzmeanhPt
std::vector< std::vector< int > > totASS_vertz_fwdneg
std::vector< MonitorElement * > h_recopT
std::vector< MonitorElement * > h_looperdz
std::vector< MonitorElement * > h_simul_vertcount_fwdneg
std::vector< std::vector< double > > pTintervals
std::vector< MonitorElement * > h_assocdxy
std::vector< MonitorElement * > cotThetares_vs_eta
std::vector< MonitorElement * > h_assocFraction
std::vector< MonitorElement * > h_loopratedz
std::vector< MonitorElement * > h_fomt_sig_eta
std::vector< MonitorElement * > h_cotThetarmshPt
std::vector< std::vector< int > > totSIM_vertcount_fwdneg
std::vector< std::vector< int > > totREC_phi
std::vector< std::vector< int > > totASS2_ootpu_barrel
std::vector< MonitorElement * > h_assoc_vertcount_barrel
std::vector< MonitorElement * > h_simul_vertz_fwdpos
std::vector< MonitorElement * > h_recodz
std::vector< MonitorElement * > ptres_vs_pt
std::vector< MonitorElement * > h_reco_ootpu_fwdpos
std::vector< MonitorElement * > h_dedx_sat2
std::vector< MonitorElement * > h_reco_ootpu_vertcount
std::vector< std::vector< int > > totloop_phi
std::vector< MonitorElement * > h_assoc2_ootpu_entire
std::vector< MonitorElement * > h_phipulleta
std::vector< MonitorElement * > h_simul_vertcount_entire
std::vector< std::vector< int > > totCONvertcount
std::vector< MonitorElement * > h_assoceta
std::vector< MonitorElement * > h_effic_vertcount_barrel
std::vector< MonitorElement * > h_looprate
std::vector< MonitorElement * > ptres_vs_phi
TrackingParticleSelector * TpSelectorForEfficiencyVsVTXR
std::vector< MonitorElement * > h_con_eta
std::vector< MonitorElement * > h_assocSharedHit
std::vector< MonitorElement * > h_dxymeanh
std::vector< MonitorElement * > nhits_vs_eta
std::vector< MonitorElement * > h_ptrmshPhi
std::vector< MonitorElement * > h_assoc2_vertcount_barrel
std::vector< MonitorElement * > h_effic_vs_hit
std::vector< MonitorElement * > h_simuldxy
std::vector< std::vector< int > > totmisideta
std::vector< MonitorElement * > h_assocvertpos
std::vector< MonitorElement * > h_loopratepT
std::vector< MonitorElement * > h_effic_vertz_fwdneg
std::vector< std::vector< int > > totASS2_vertcount_fwdpos
std::vector< MonitorElement * > h_assoc2_vertcount_entire
MTVHistoProducerAlgoForTracker(const edm::ParameterSet &pset)
std::vector< MonitorElement * > h_simul_vertz_fwdneg
std::vector< MonitorElement * > h_recoeta
std::vector< MonitorElement * > thetapull_vs_eta
std::vector< std::vector< int > > totSIM_dxy
std::vector< MonitorElement * > chi2_vs_eta
std::vector< MonitorElement * > h_phipulletamean
std::vector< MonitorElement * > h_PXLlayersWithMeas_eta
std::vector< std::vector< double > > dzintervals
std::vector< MonitorElement * > dxyres_vs_pt
TrackingParticleSelector * TpSelectorForEfficiencyVsCon
std::vector< MonitorElement * > h_misidratedxy
std::vector< MonitorElement * > h_dedx_nom1
std::vector< std::vector< int > > totASS2_dxy
std::vector< MonitorElement * > h_losthits
TrackingParticleSelector * TpSelectorForEfficiencyVsEta
std::vector< MonitorElement * > h_assoc2eta
std::vector< std::vector< int > > totmisid_dz
std::vector< MonitorElement * > h_thetapulletamean
std::vector< MonitorElement * > h_misidphi
std::vector< MonitorElement * > h_fakerate_vertcount_fwdneg
std::vector< MonitorElement * > dzres_vs_pt