CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Member Functions | Private Attributes
MTVHistoProducerAlgoForTracker Class Reference

#include <MTVHistoProducerAlgoForTracker.h>

Public Member Functions

void bookRecodEdxHistos (DQMStore::IBooker &ibook)
 
void bookRecoHistos (DQMStore::IBooker &ibook)
 
void bookRecoPVAssociationHistos (DQMStore::IBooker &ibook)
 
void bookSimHistos (DQMStore::IBooker &ibook)
 
void bookSimTrackHistos (DQMStore::IBooker &ibook)
 
void bookSimTrackPVAssociationHistos (DQMStore::IBooker &ibook)
 
void fill_dedx_recoTrack_histos (int count, const edm::RefToBase< reco::Track > &trackref, const std::vector< const edm::ValueMap< reco::DeDxData > * > &v_dEdx)
 
void fill_generic_recoTrack_histos (int count, const reco::Track &track, const math::XYZPoint &bsPosition, const math::XYZPoint *pvPosition, bool isMatched, bool isSigMatched, bool isChargeMatched, int numAssocRecoTracks, int numVertices, int nSimHits, double sharedFraction, double dR)
 
void fill_generic_simTrack_histos (const TrackingParticle::Vector &, const TrackingParticle::Point &vertex, int bx)
 
void fill_recoAssociated_simTrack_histos (int count, const TrackingParticle &tp, const TrackingParticle::Vector &momentumTP, const TrackingParticle::Point &vertexTP, double dxy, double dz, double dxyPV, double dzPV, int nSimHits, int nSimLayers, int nSimPixelLayers, int nSimStripMonoAndStereoLayers, const reco::Track *track, int numVertices, double dR, const math::XYZPoint *pvPosition)
 
void fill_recoAssociated_simTrack_histos (int count, const reco::GenParticle &tp, const TrackingParticle::Vector &momentumTP, const TrackingParticle::Point &vertexTP, double dxy, double dz, int nSimHits, const reco::Track *track, int numVertices)
 
void fill_ResoAndPull_recoTrack_histos (int count, const TrackingParticle::Vector &momentumTP, const TrackingParticle::Point &vertexTP, int chargeTP, const reco::Track &track, const math::XYZPoint &bsPosition)
 
void fill_simAssociated_recoTrack_histos (int count, const reco::Track &track)
 
void fill_simTrackBased_histos (int numSimTracks)
 
void fill_trackBased_histos (int count, int assTracks, int numRecoTracks, int numSimTracks)
 
 MTVHistoProducerAlgoForTracker (const edm::ParameterSet &pset, edm::ConsumesCollector &&iC)
 
 MTVHistoProducerAlgoForTracker (const edm::ParameterSet &pset, edm::ConsumesCollector &iC)
 
 ~MTVHistoProducerAlgoForTracker ()
 

Private Member Functions

double getEta (double eta)
 
double getPt (double pt)
 
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) More...
 
void getRecoMomentum (const reco::GsfTrack &gsfTrack, double &pt, double &ptError, double &qoverp, double &qoverpError, double &lambda, double &lambdaError, double &phi, double &phiError) const
 retrieval of reconstructed momentum components based on the mode of a reco::GsfTrack More...
 

Private Attributes

std::vector< MonitorElement * > chi2_vs_eta
 
std::vector< MonitorElement * > chi2_vs_nhits
 
std::vector< MonitorElement * > chi2_vs_phi
 
int cotThetaRes_nbin
 
double cotThetaRes_rangeMax
 
double cotThetaRes_rangeMin
 
std::vector< MonitorElement * > cotThetares_vs_eta
 
std::vector< MonitorElement * > cotThetares_vs_pt
 
std::vector< MonitorElement * > dxypull_vs_eta
 
int dxyRes_nbin
 
double dxyRes_rangeMax
 
double dxyRes_rangeMin
 
std::vector< MonitorElement * > dxyres_vs_eta
 
std::vector< MonitorElement * > dxyres_vs_pt
 
std::vector< MonitorElement * > dzpull_vs_eta
 
int dzRes_nbin
 
double dzRes_rangeMax
 
double dzRes_rangeMin
 
std::vector< MonitorElement * > dzres_vs_eta
 
std::vector< MonitorElement * > dzres_vs_pt
 
std::vector< MonitorElement * > etares_vs_eta
 
std::unique_ptr
< GenParticleCustomSelector
generalGpSelector
 
std::unique_ptr
< TrackingParticleSelector
generalTpSelector
 
std::unique_ptr
< GenParticleCustomSelector
GpSelectorForEfficiencyVsEta
 
std::unique_ptr
< GenParticleCustomSelector
GpSelectorForEfficiencyVsPhi
 
std::unique_ptr
< GenParticleCustomSelector
GpSelectorForEfficiencyVsPt
 
std::unique_ptr
< GenParticleCustomSelector
GpSelectorForEfficiencyVsVTXR
 
std::unique_ptr
< GenParticleCustomSelector
GpSelectorForEfficiencyVsVTXZ
 
std::vector< MonitorElement * > h_algo
 
std::vector< MonitorElement * > h_assoc23Dlayer
 
std::vector< MonitorElement * > h_assoc2_dzpvcut
 
std::vector< MonitorElement * > h_assoc2_dzpvcut_pt
 
std::vector< MonitorElement * > h_assoc2_dzpvsigcut
 
std::vector< MonitorElement * > h_assoc2_dzpvsigcut_pt
 
std::vector< MonitorElement * > h_assoc2_itpu_eta
 
std::vector< MonitorElement * > h_assoc2_itpu_sig_eta
 
std::vector< MonitorElement * > h_assoc2_itpu_sig_vertcount
 
std::vector< MonitorElement * > h_assoc2_itpu_vertcount
 
std::vector< MonitorElement * > h_assoc2_ootpu_eta
 
std::vector< MonitorElement * > h_assoc2_ootpu_vertcount
 
std::vector< MonitorElement * > h_assoc2chi2
 
std::vector< MonitorElement * > h_assoc2dr
 
std::vector< MonitorElement * > h_assoc2dxy
 
std::vector< MonitorElement * > h_assoc2dxypv
 
std::vector< MonitorElement * > h_assoc2dz
 
std::vector< MonitorElement * > h_assoc2dzpv
 
std::vector< MonitorElement * > h_assoc2eta
 
std::vector< MonitorElement * > h_assoc2eta_sig
 
std::vector< MonitorElement * > h_assoc2hit
 
std::vector< MonitorElement * > h_assoc2layer
 
std::vector< MonitorElement * > h_assoc2phi
 
std::vector< MonitorElement * > h_assoc2pixellayer
 
std::vector< MonitorElement * > h_assoc2pT
 
std::vector< MonitorElement * > h_assoc2pu
 
std::vector< MonitorElement * > h_assoc3Dlayer
 
std::vector< MonitorElement * > h_assoc_dzpvcut
 
std::vector< MonitorElement * > h_assoc_dzpvcut_pt
 
std::vector< MonitorElement * > h_assoc_dzpvsigcut
 
std::vector< MonitorElement * > h_assoc_dzpvsigcut_pt
 
std::vector< MonitorElement * > h_assocdr
 
std::vector< MonitorElement * > h_assocdxy
 
std::vector< MonitorElement * > h_assocdxypv
 
std::vector< MonitorElement * > h_assocdz
 
std::vector< MonitorElement * > h_assocdzpv
 
std::vector< MonitorElement * > h_assoceta
 
std::vector< MonitorElement * > h_assocFraction
 
std::vector< MonitorElement * > h_assochi2
 
std::vector< MonitorElement * > h_assochi2_prob
 
std::vector< MonitorElement * > h_assochit
 
std::vector< MonitorElement * > h_assoclayer
 
std::vector< MonitorElement * > h_assocphi
 
std::vector< MonitorElement * > h_assocpixellayer
 
std::vector< MonitorElement * > h_assocpT
 
std::vector< MonitorElement * > h_assocpu
 
std::vector< MonitorElement * > h_assocSharedHit
 
std::vector< MonitorElement * > h_assocvertpos
 
std::vector< MonitorElement * > h_assoczpos
 
MonitorElementh_bunchxSIM
 
std::vector< MonitorElement * > h_charge
 
std::vector< MonitorElement * > h_con_eta
 
std::vector< MonitorElement * > h_con_vertcount
 
std::vector< MonitorElement * > h_con_zpos
 
std::vector< std::vector
< MonitorElement * > > 
h_dedx_estim
 
std::vector< std::vector
< MonitorElement * > > 
h_dedx_nom
 
std::vector< std::vector
< MonitorElement * > > 
h_dedx_sat
 
std::vector< MonitorElement * > h_eta
 
MonitorElementh_etaSIM
 
std::vector< MonitorElement * > h_fakes
 
std::vector< MonitorElement * > h_hits
 
std::vector< MonitorElement * > h_looper3Dlayer
 
std::vector< MonitorElement * > h_looperchi2
 
std::vector< MonitorElement * > h_looperdxy
 
std::vector< MonitorElement * > h_looperdxypv
 
std::vector< MonitorElement * > h_looperdz
 
std::vector< MonitorElement * > h_looperdzpv
 
std::vector< MonitorElement * > h_loopereta
 
std::vector< MonitorElement * > h_looperhit
 
std::vector< MonitorElement * > h_looperlayer
 
std::vector< MonitorElement * > h_looperphi
 
std::vector< MonitorElement * > h_looperpixellayer
 
std::vector< MonitorElement * > h_looperpT
 
std::vector< MonitorElement * > h_looperpu
 
std::vector< MonitorElement * > h_losthits
 
std::vector< MonitorElement * > h_misid3Dlayer
 
std::vector< MonitorElement * > h_misidchi2
 
std::vector< MonitorElement * > h_misiddxy
 
std::vector< MonitorElement * > h_misiddxypv
 
std::vector< MonitorElement * > h_misiddz
 
std::vector< MonitorElement * > h_misiddzpv
 
std::vector< MonitorElement * > h_misideta
 
std::vector< MonitorElement * > h_misidhit
 
std::vector< MonitorElement * > h_misidlayer
 
std::vector< MonitorElement * > h_misidphi
 
std::vector< MonitorElement * > h_misidpixellayer
 
std::vector< MonitorElement * > h_misidpT
 
std::vector< MonitorElement * > h_misidpu
 
std::vector< MonitorElement * > h_nchi2
 
std::vector< MonitorElement * > h_nchi2_prob
 
std::vector< MonitorElement * > h_nmisslayers_inner
 
std::vector< MonitorElement * > h_nmisslayers_outer
 
std::vector< MonitorElement * > h_pileup3Dlayer
 
std::vector< MonitorElement * > h_pileup_dzpvcut
 
std::vector< MonitorElement * > h_pileup_dzpvcut_pt
 
std::vector< MonitorElement * > h_pileup_dzpvsigcut
 
std::vector< MonitorElement * > h_pileup_dzpvsigcut_pt
 
std::vector< MonitorElement * > h_pileupchi2
 
std::vector< MonitorElement * > h_pileupdr
 
std::vector< MonitorElement * > h_pileupdxy
 
std::vector< MonitorElement * > h_pileupdxypv
 
std::vector< MonitorElement * > h_pileupdz
 
std::vector< MonitorElement * > h_pileupdzpv
 
std::vector< MonitorElement * > h_pileupeta
 
std::vector< MonitorElement * > h_pileuphit
 
std::vector< MonitorElement * > h_pileuplayer
 
std::vector< MonitorElement * > h_pileupphi
 
std::vector< MonitorElement * > h_pileuppixellayer
 
std::vector< MonitorElement * > h_pileuppT
 
std::vector< MonitorElement * > h_pileuppu
 
std::vector< MonitorElement * > h_pt
 
std::vector< MonitorElement * > h_ptshifteta
 
MonitorElementh_ptSIM
 
std::vector< MonitorElement * > h_pullDxy
 
std::vector< MonitorElement * > h_pullDz
 
std::vector< MonitorElement * > h_pullPhi
 
std::vector< MonitorElement * > h_pullQoverp
 
std::vector< MonitorElement * > h_pullTheta
 
std::vector< MonitorElement * > h_reco3Dlayer
 
std::vector< MonitorElement * > h_reco_dzpvcut
 
std::vector< MonitorElement * > h_reco_dzpvcut_pt
 
std::vector< MonitorElement * > h_reco_dzpvsigcut
 
std::vector< MonitorElement * > h_reco_dzpvsigcut_pt
 
std::vector< MonitorElement * > h_reco_ootpu_eta
 
std::vector< MonitorElement * > h_reco_ootpu_vertcount
 
std::vector< MonitorElement * > h_recochi2
 
std::vector< MonitorElement * > h_recodr
 
std::vector< MonitorElement * > h_recodxy
 
std::vector< MonitorElement * > h_recodxypv
 
std::vector< MonitorElement * > h_recodz
 
std::vector< MonitorElement * > h_recodzpv
 
std::vector< MonitorElement * > h_recoeta
 
std::vector< MonitorElement * > h_recohit
 
std::vector< MonitorElement * > h_recolayer
 
std::vector< MonitorElement * > h_recophi
 
std::vector< MonitorElement * > h_recopixellayer
 
std::vector< MonitorElement * > h_recopT
 
std::vector< MonitorElement * > h_recopu
 
std::vector< MonitorElement * > h_simul2_dzpvcut
 
std::vector< MonitorElement * > h_simul2_dzpvcut_pt
 
std::vector< MonitorElement * > h_simul2_dzpvsigcut
 
std::vector< MonitorElement * > h_simul2_dzpvsigcut_pt
 
std::vector< MonitorElement * > h_simul3Dlayer
 
std::vector< MonitorElement * > h_simul_dzpvcut
 
std::vector< MonitorElement * > h_simul_dzpvcut_pt
 
std::vector< MonitorElement * > h_simul_dzpvsigcut
 
std::vector< MonitorElement * > h_simul_dzpvsigcut_pt
 
std::vector< MonitorElement * > h_simuldr
 
std::vector< MonitorElement * > h_simuldxy
 
std::vector< MonitorElement * > h_simuldxypv
 
std::vector< MonitorElement * > h_simuldz
 
std::vector< MonitorElement * > h_simuldzpv
 
std::vector< MonitorElement * > h_simuleta
 
std::vector< MonitorElement * > h_simulhit
 
std::vector< MonitorElement * > h_simullayer
 
std::vector< MonitorElement * > h_simulphi
 
std::vector< MonitorElement * > h_simulpixellayer
 
std::vector< MonitorElement * > h_simulpT
 
std::vector< MonitorElement * > h_simulpu
 
std::vector< MonitorElement * > h_simulvertpos
 
std::vector< MonitorElement * > h_simulzpos
 
std::vector< MonitorElement * > h_tracks
 
MonitorElementh_tracksSIM
 
MonitorElementh_vertposSIM
 
double maxChi2
 
double maxDeDx
 
double maxdr
 
double maxDxy
 
double maxDz
 
double maxDzpvCum
 
double maxDzpvsigCum
 
double maxEta
 
double maxHit
 
double maxLayers
 
double maxPhi
 
double maxPt
 
double maxPu
 
double maxTracks
 
double maxVertcount
 
double maxVertpos
 
double maxZpos
 
double minChi2
 
double minDeDx
 
double mindr
 
double minDxy
 
double minDz
 
double minEta
 
double minHit
 
double minLayers
 
double minPhi
 
double minPt
 
double minPu
 
double minTracks
 
double minVertcount
 
double minVertpos
 
double minZpos
 
std::vector< MonitorElement * > nhits_vs_eta
 
std::vector< MonitorElement * > nhits_vs_phi
 
int nintChi2
 
int nintDeDx
 
int nintdr
 
int nintDxy
 
int nintDz
 
int nintDzpvCum
 
int nintDzpvsigCum
 
int nintEta
 
int nintHit
 
int nintLayers
 
int nintPhi
 
int nintPt
 
int nintPu
 
int nintTracks
 
int nintVertcount
 
int nintVertpos
 
int nintZpos
 
std::vector< MonitorElement * > nLayersWithMeas_vs_eta
 
std::vector< MonitorElement * > nlosthits_vs_eta
 
std::vector< MonitorElement * > nPXBhits_vs_eta
 
std::vector< MonitorElement * > nPXFhits_vs_eta
 
std::vector< MonitorElement * > nPXLlayersWithMeas_vs_eta
 
std::vector< MonitorElement * > nrec_vs_nsim
 
std::vector< MonitorElement * > nrecHit_vs_nsimHit_rec2sim
 
std::vector< MonitorElement * > nrecHit_vs_nsimHit_sim2rec
 
std::vector< MonitorElement * > nSTRIPlayersWith1dMeas_vs_eta
 
std::vector< MonitorElement * > nSTRIPlayersWith2dMeas_vs_eta
 
std::vector< MonitorElement * > nSTRIPlayersWithMeas_vs_eta
 
std::vector< MonitorElement * > nTEChits_vs_eta
 
std::vector< MonitorElement * > nTIBhits_vs_eta
 
std::vector< MonitorElement * > nTIDhits_vs_eta
 
std::vector< MonitorElement * > nTOBhits_vs_eta
 
std::vector< MonitorElement * > phimean_vs_eta_phi
 
std::vector< MonitorElement * > phipull_vs_eta
 
std::vector< MonitorElement * > phipull_vs_phi
 
int phiRes_nbin
 
double phiRes_rangeMax
 
double phiRes_rangeMin
 
std::vector< MonitorElement * > phires_vs_eta
 
std::vector< MonitorElement * > phires_vs_phi
 
std::vector< MonitorElement * > phires_vs_pt
 
std::vector< MonitorElement * > ptmean_vs_eta_phi
 
std::vector< MonitorElement * > ptpull_vs_eta
 
std::vector< MonitorElement * > ptpull_vs_phi
 
int ptRes_nbin
 
double ptRes_rangeMax
 
double ptRes_rangeMin
 
std::vector< MonitorElement * > ptres_vs_eta
 
std::vector< MonitorElement * > ptres_vs_phi
 
std::vector< MonitorElement * > ptres_vs_pt
 
std::vector< MonitorElement * > thetapull_vs_eta
 
std::vector< MonitorElement * > thetapull_vs_phi
 
std::unique_ptr
< TrackingParticleSelector
TpSelectorForEfficiencyVsEta
 
std::unique_ptr
< TrackingParticleSelector
TpSelectorForEfficiencyVsPhi
 
std::unique_ptr
< TrackingParticleSelector
TpSelectorForEfficiencyVsPt
 
std::unique_ptr
< TrackingParticleSelector
TpSelectorForEfficiencyVsVTXR
 
std::unique_ptr
< TrackingParticleSelector
TpSelectorForEfficiencyVsVTXZ
 
bool useFabsEta
 
bool useInvPt
 
bool useLogPt
 

Detailed Description

Definition at line 28 of file MTVHistoProducerAlgoForTracker.h.

Constructor & Destructor Documentation

MTVHistoProducerAlgoForTracker::MTVHistoProducerAlgoForTracker ( const edm::ParameterSet pset,
edm::ConsumesCollector &&  iC 
)
inline

Definition at line 30 of file MTVHistoProducerAlgoForTracker.h.

30  :
MTVHistoProducerAlgoForTracker(const edm::ParameterSet &pset, edm::ConsumesCollector &&iC)
MTVHistoProducerAlgoForTracker::MTVHistoProducerAlgoForTracker ( const edm::ParameterSet pset,
edm::ConsumesCollector iC 
)

Definition at line 37 of file MTVHistoProducerAlgoForTracker.cc.

References cotThetaRes_nbin, cotThetaRes_rangeMax, cotThetaRes_rangeMin, dxyRes_nbin, dxyRes_rangeMax, dxyRes_rangeMin, dzRes_nbin, dzRes_rangeMax, dzRes_rangeMin, generalGpSelector, generalTpSelector, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), GpSelectorForEfficiencyVsEta, GpSelectorForEfficiencyVsPhi, GpSelectorForEfficiencyVsPt, GpSelectorForEfficiencyVsVTXR, GpSelectorForEfficiencyVsVTXZ, reco::modules::make(), maxChi2, maxDeDx, maxdr, maxDxy, maxDz, maxDzpvCum, maxDzpvsigCum, maxEta, maxHit, maxLayers, maxPhi, maxPt, maxPu, maxTracks, maxVertcount, maxVertpos, maxZpos, minDeDx, mindr, minDxy, minDz, minEta, minHit, minLayers, minPhi, minPt, minPu, minTracks, minVertcount, minVertpos, minZpos, edmConvertToStreamModule::modules, mergeVDriftHistosByStation::name, nintChi2, nintDeDx, nintdr, nintDxy, nintDz, nintDzpvCum, nintDzpvsigCum, nintEta, nintHit, nintLayers, nintPhi, nintPt, nintPu, nintTracks, nintVertcount, nintVertpos, nintZpos, phiRes_nbin, phiRes_rangeMax, phiRes_rangeMin, ptRes_nbin, ptRes_rangeMax, ptRes_rangeMin, EgammaValidation_Wenu_cff::sel, TpSelectorForEfficiencyVsEta, TpSelectorForEfficiencyVsPhi, TpSelectorForEfficiencyVsPt, TpSelectorForEfficiencyVsVTXR, TpSelectorForEfficiencyVsVTXZ, useFabsEta, useInvPt, and useLogPt.

37  :
38  h_ptSIM(nullptr), h_etaSIM(nullptr), h_tracksSIM(nullptr), h_vertposSIM(nullptr), h_bunchxSIM(nullptr)
39 {
40  //parameters for _vs_eta plots
41  minEta = pset.getParameter<double>("minEta");
42  maxEta = pset.getParameter<double>("maxEta");
43  nintEta = pset.getParameter<int>("nintEta");
44  useFabsEta = pset.getParameter<bool>("useFabsEta");
45 
46  //parameters for _vs_pt plots
47  minPt = pset.getParameter<double>("minPt");
48  maxPt = pset.getParameter<double>("maxPt");
49  nintPt = pset.getParameter<int>("nintPt");
50  useInvPt = pset.getParameter<bool>("useInvPt");
51  useLogPt = pset.getUntrackedParameter<bool>("useLogPt",false);
52 
53  //parameters for _vs_Hit plots
54  minHit = pset.getParameter<double>("minHit");
55  maxHit = pset.getParameter<double>("maxHit");
56  nintHit = pset.getParameter<int>("nintHit");
57 
58  //parameters for _vs_Pu plots
59  minPu = pset.getParameter<double>("minPu");
60  maxPu = pset.getParameter<double>("maxPu");
61  nintPu = pset.getParameter<int>("nintPu");
62 
63  //parameters for _vs_Layer plots
64  minLayers = pset.getParameter<double>("minLayers");
65  maxLayers = pset.getParameter<double>("maxLayers");
66  nintLayers = pset.getParameter<int>("nintLayers");
67 
68  //parameters for _vs_phi plots
69  minPhi = pset.getParameter<double>("minPhi");
70  maxPhi = pset.getParameter<double>("maxPhi");
71  nintPhi = pset.getParameter<int>("nintPhi");
72 
73  //parameters for _vs_Dxy plots
74  minDxy = pset.getParameter<double>("minDxy");
75  maxDxy = pset.getParameter<double>("maxDxy");
76  nintDxy = pset.getParameter<int>("nintDxy");
77 
78  //parameters for _vs_Dz plots
79  minDz = pset.getParameter<double>("minDz");
80  maxDz = pset.getParameter<double>("maxDz");
81  nintDz = pset.getParameter<int>("nintDz");
82 
83  //parameters for _vs_ProductionVertexTransvPosition plots
84  minVertpos = pset.getParameter<double>("minVertpos");
85  maxVertpos = pset.getParameter<double>("maxVertpos");
86  nintVertpos = pset.getParameter<int>("nintVertpos");
87 
88  //parameters for _vs_ProductionVertexZPosition plots
89  minZpos = pset.getParameter<double>("minZpos");
90  maxZpos = pset.getParameter<double>("maxZpos");
91  nintZpos = pset.getParameter<int>("nintZpos");
92 
93  //parameters for _vs_dR plots
94  mindr = pset.getParameter<double>("mindr");
95  maxdr = pset.getParameter<double>("maxdr");
96  nintdr = pset.getParameter<int>("nintdr");
97 
98  // paramers for _vs_chi2 plots
99  minChi2 = pset.getParameter<double>("minChi2");
100  maxChi2 = pset.getParameter<double>("maxChi2");
101  nintChi2 = pset.getParameter<int>("nintChi2");
102 
103  //parameters for dE/dx plots
104  minDeDx = pset.getParameter<double>("minDeDx");
105  maxDeDx = pset.getParameter<double>("maxDeDx");
106  nintDeDx = pset.getParameter<int>("nintDeDx");
107 
108  //parameters for Pileup plots
109  minVertcount = pset.getParameter<double>("minVertcount");
110  maxVertcount = pset.getParameter<double>("maxVertcount");
111  nintVertcount = pset.getParameter<int>("nintVertcount");
112 
113  //parameters for number of tracks plots
114  minTracks = pset.getParameter<double>("minTracks");
115  maxTracks = pset.getParameter<double>("maxTracks");
116  nintTracks = pset.getParameter<int>("nintTracks");
117 
118  //parameters for resolution plots
119  ptRes_rangeMin = pset.getParameter<double>("ptRes_rangeMin");
120  ptRes_rangeMax = pset.getParameter<double>("ptRes_rangeMax");
121  ptRes_nbin = pset.getParameter<int>("ptRes_nbin");
122 
123  phiRes_rangeMin = pset.getParameter<double>("phiRes_rangeMin");
124  phiRes_rangeMax = pset.getParameter<double>("phiRes_rangeMax");
125  phiRes_nbin = pset.getParameter<int>("phiRes_nbin");
126 
127  cotThetaRes_rangeMin = pset.getParameter<double>("cotThetaRes_rangeMin");
128  cotThetaRes_rangeMax = pset.getParameter<double>("cotThetaRes_rangeMax");
129  cotThetaRes_nbin = pset.getParameter<int>("cotThetaRes_nbin");
130 
131  dxyRes_rangeMin = pset.getParameter<double>("dxyRes_rangeMin");
132  dxyRes_rangeMax = pset.getParameter<double>("dxyRes_rangeMax");
133  dxyRes_nbin = pset.getParameter<int>("dxyRes_nbin");
134 
135  dzRes_rangeMin = pset.getParameter<double>("dzRes_rangeMin");
136  dzRes_rangeMax = pset.getParameter<double>("dzRes_rangeMax");
137  dzRes_nbin = pset.getParameter<int>("dzRes_nbin");
138 
139 
140  maxDzpvCum = pset.getParameter<double>("maxDzpvCumulative");
141  nintDzpvCum = pset.getParameter<int>("nintDzpvCumulative");
142 
143  maxDzpvsigCum = pset.getParameter<double>("maxDzpvsigCumulative");
144  nintDzpvsigCum = pset.getParameter<int>("nintDzpvsigCumulative");
145 
146  //--- tracking particle selectors for efficiency measurements
147  using namespace edm;
148  using namespace reco::modules;
149  auto initTPselector = [&](auto& sel, auto& name) {
150  sel = std::make_unique<TrackingParticleSelector>(ParameterAdapter<TrackingParticleSelector>::make(pset.getParameter<ParameterSet>(name), iC));
151  };
152  auto initGPselector = [&](auto& sel, auto& name) {
153  sel = std::make_unique<GenParticleCustomSelector>(ParameterAdapter<GenParticleCustomSelector>::make(pset.getParameter<ParameterSet>(name), iC));
154  };
155 
156  initTPselector(generalTpSelector, "generalTpSelector");
157  initTPselector(TpSelectorForEfficiencyVsEta, "TpSelectorForEfficiencyVsEta");
158  initTPselector(TpSelectorForEfficiencyVsPhi, "TpSelectorForEfficiencyVsPhi");
159  initTPselector(TpSelectorForEfficiencyVsPt, "TpSelectorForEfficiencyVsPt");
160  initTPselector(TpSelectorForEfficiencyVsVTXR, "TpSelectorForEfficiencyVsVTXR");
161  initTPselector(TpSelectorForEfficiencyVsVTXZ, "TpSelectorForEfficiencyVsVTXZ");
162 
163  initGPselector(generalGpSelector, "generalGpSelector");
164  initGPselector(GpSelectorForEfficiencyVsEta, "GpSelectorForEfficiencyVsEta");
165  initGPselector(GpSelectorForEfficiencyVsPhi, "GpSelectorForEfficiencyVsPhi");
166  initGPselector(GpSelectorForEfficiencyVsPt, "GpSelectorForEfficiencyVsPt");
167  initGPselector(GpSelectorForEfficiencyVsVTXR, "GpSelectorForEfficiencyVsVTXR");
168  initGPselector(GpSelectorForEfficiencyVsVTXZ, "GpSelectorForEfficiencyVsVTXZ");
169 
170  // fix for the LogScale by Ryan
171  if(useLogPt){
172  maxPt=log10(maxPt);
173  if(minPt > 0){
174  minPt=log10(minPt);
175  }
176  else{
177  edm::LogWarning("MultiTrackValidator")
178  << "minPt = "
179  << minPt << " <= 0 out of range while requesting log scale. Using minPt = 0.1.";
180  minPt=log10(0.1);
181  }
182  }
183 
184 }
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
std::unique_ptr< TrackingParticleSelector > TpSelectorForEfficiencyVsPt
std::unique_ptr< TrackingParticleSelector > TpSelectorForEfficiencyVsEta
std::unique_ptr< GenParticleCustomSelector > GpSelectorForEfficiencyVsVTXR
std::unique_ptr< TrackingParticleSelector > TpSelectorForEfficiencyVsVTXR
S make(const edm::ParameterSet &cfg)
std::unique_ptr< GenParticleCustomSelector > GpSelectorForEfficiencyVsVTXZ
std::unique_ptr< GenParticleCustomSelector > GpSelectorForEfficiencyVsPt
std::unique_ptr< GenParticleCustomSelector > GpSelectorForEfficiencyVsPhi
std::unique_ptr< GenParticleCustomSelector > GpSelectorForEfficiencyVsEta
std::unique_ptr< TrackingParticleSelector > generalTpSelector
std::unique_ptr< TrackingParticleSelector > TpSelectorForEfficiencyVsPhi
std::unique_ptr< TrackingParticleSelector > TpSelectorForEfficiencyVsVTXZ
std::unique_ptr< GenParticleCustomSelector > generalGpSelector
MTVHistoProducerAlgoForTracker::~MTVHistoProducerAlgoForTracker ( )

Definition at line 186 of file MTVHistoProducerAlgoForTracker.cc.

186 {}

Member Function Documentation

void MTVHistoProducerAlgoForTracker::bookRecodEdxHistos ( DQMStore::IBooker ibook)

Definition at line 552 of file MTVHistoProducerAlgoForTracker.cc.

References DQMStore::IBooker::book1D(), h_dedx_estim, h_dedx_nom, h_dedx_sat, maxDeDx, maxHit, minDeDx, minHit, nintDeDx, and nintHit.

552  {
553  // dE/dx stuff
554  h_dedx_estim.emplace_back(std::initializer_list<MonitorElement*>{
555  ibook.book1D("h_dedx_estim1","dE/dx estimator 1",nintDeDx,minDeDx,maxDeDx),
556  ibook.book1D("h_dedx_estim2","dE/dx estimator 2",nintDeDx,minDeDx,maxDeDx)
557  });
558  h_dedx_nom.emplace_back(std::initializer_list<MonitorElement*>{
559  ibook.book1D("h_dedx_nom1","dE/dx number of measurements",nintHit,minHit,maxHit),
560  ibook.book1D("h_dedx_nom2","dE/dx number of measurements",nintHit,minHit,maxHit)
561  });
562  h_dedx_sat.emplace_back(std::initializer_list<MonitorElement*>{
563  ibook.book1D("h_dedx_sat1","dE/dx number of measurements with saturation",nintHit,minHit,maxHit),
564  ibook.book1D("h_dedx_sat2","dE/dx number of measurements with saturation",nintHit,minHit,maxHit)
565  });
566 }
std::vector< std::vector< MonitorElement * > > h_dedx_estim
std::vector< std::vector< MonitorElement * > > h_dedx_sat
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:115
std::vector< std::vector< MonitorElement * > > h_dedx_nom
void MTVHistoProducerAlgoForTracker::bookRecoHistos ( DQMStore::IBooker ibook)

these are needed to calculate efficiency during the harvesting for the automated validation

Definition at line 288 of file MTVHistoProducerAlgoForTracker.cc.

References reco::TrackBase::algoNames, reco::TrackBase::algoSize, DQMStore::IBooker::book1D(), DQMStore::IBooker::book2D(), DQMStore::IBooker::bookProfile(), DQMStore::IBooker::bookProfile2D(), chi2_vs_eta, chi2_vs_nhits, chi2_vs_phi, cotThetaRes_nbin, cotThetaRes_rangeMax, cotThetaRes_rangeMin, cotThetares_vs_eta, cotThetares_vs_pt, dxypull_vs_eta, dxyRes_nbin, dxyRes_rangeMax, dxyRes_rangeMin, dxyres_vs_eta, dxyres_vs_pt, dzpull_vs_eta, dzRes_nbin, dzRes_rangeMax, dzRes_rangeMin, dzres_vs_eta, dzres_vs_pt, etares_vs_eta, h_algo, h_assoc23Dlayer, h_assoc2chi2, h_assoc2dr, h_assoc2dxy, h_assoc2dz, h_assoc2eta, h_assoc2hit, h_assoc2layer, h_assoc2phi, h_assoc2pixellayer, h_assoc2pT, h_assoc2pu, h_assocFraction, h_assocSharedHit, h_charge, h_eta, h_fakes, h_hits, h_looper3Dlayer, h_looperchi2, h_looperdxy, h_looperdz, h_loopereta, h_looperhit, h_looperlayer, h_looperphi, h_looperpixellayer, h_looperpT, h_looperpu, h_losthits, h_misid3Dlayer, h_misidchi2, h_misiddxy, h_misiddz, h_misideta, h_misidhit, h_misidlayer, h_misidphi, h_misidpixellayer, h_misidpT, h_misidpu, h_nchi2, h_nchi2_prob, h_nmisslayers_inner, h_nmisslayers_outer, h_pileup3Dlayer, h_pileupchi2, h_pileupdr, h_pileupdxy, h_pileupdz, h_pileupeta, h_pileuphit, h_pileuplayer, h_pileupphi, h_pileuppixellayer, h_pileuppT, h_pileuppu, h_pt, h_pullDxy, h_pullDz, h_pullPhi, h_pullQoverp, h_pullTheta, h_reco3Dlayer, h_recochi2, h_recodr, h_recodxy, h_recodz, h_recoeta, h_recohit, h_recolayer, h_recophi, h_recopixellayer, h_recopT, h_recopu, h_tracks, maxChi2, maxdr, maxDxy, maxDz, maxEta, maxHit, maxLayers, maxPhi, maxPt, maxPu, maxTracks, mindr, minDxy, minDz, minEta, minHit, minLayers, minPhi, minPt, minPu, minTracks, nhits_vs_eta, nhits_vs_phi, nintChi2, nintdr, nintDxy, nintDz, nintEta, nintHit, nintLayers, nintPhi, nintPt, nintPu, nintTracks, nLayersWithMeas_vs_eta, nlosthits_vs_eta, nPXBhits_vs_eta, nPXFhits_vs_eta, nPXLlayersWithMeas_vs_eta, nrec_vs_nsim, nrecHit_vs_nsimHit_rec2sim, nSTRIPlayersWith1dMeas_vs_eta, nSTRIPlayersWith2dMeas_vs_eta, nSTRIPlayersWithMeas_vs_eta, nTEChits_vs_eta, nTIBhits_vs_eta, nTIDhits_vs_eta, nTOBhits_vs_eta, phimean_vs_eta_phi, phipull_vs_eta, phipull_vs_phi, phiRes_nbin, phiRes_rangeMax, phiRes_rangeMin, phires_vs_eta, phires_vs_phi, phires_vs_pt, ptmean_vs_eta_phi, ptpull_vs_eta, ptpull_vs_phi, ptRes_nbin, ptRes_rangeMax, ptRes_rangeMin, ptres_vs_eta, ptres_vs_phi, ptres_vs_pt, thetapull_vs_eta, thetapull_vs_phi, and useLogPt.

288  {
289  h_tracks.push_back( ibook.book1D("tracks","number of reconstructed tracks", nintTracks, minTracks, maxTracks) );
290  h_fakes.push_back( ibook.book1D("fakes","number of fake reco tracks", nintTracks, minTracks, maxTracks) );
291  h_charge.push_back( ibook.book1D("charge","charge",3,-1.5,1.5) );
292 
293  h_hits.push_back( ibook.book1D("hits", "number of hits per track", nintHit,minHit,maxHit ) );
294  h_losthits.push_back( ibook.book1D("losthits", "number of lost hits per track", nintHit,minHit,maxHit) );
295  h_nchi2.push_back( ibook.book1D("chi2", "normalized #chi^{2}", 200, 0, 20 ) );
296  h_nchi2_prob.push_back( ibook.book1D("chi2_prob", "normalized #chi^{2} probability",100,0,1));
297 
298  h_nmisslayers_inner.push_back( ibook.book1D("missing_inner_layers", "number of missing inner layers", nintLayers,minLayers,maxLayers ) );
299  h_nmisslayers_outer.push_back( ibook.book1D("missing_outer_layers", "number of missing outer layers", nintLayers,minLayers,maxLayers ) );
300 
301  h_algo.push_back( ibook.book1D("h_algo","Tracks by algo",reco::TrackBase::algoSize, 0., double(reco::TrackBase::algoSize) ) );
302  for (size_t ibin=0; ibin<reco::TrackBase::algoSize-1; ibin++)
303  h_algo.back()->setBinLabel(ibin+1,reco::TrackBase::algoNames[ibin]);
304  // h_algo.setBinLabel(ibin+1,reco::TrackBase::algoNames[ibin]);
305 
307  h_recoeta.push_back( ibook.book1D("num_reco_eta","N of reco track vs eta",nintEta,minEta,maxEta) );
308  h_assoc2eta.push_back( ibook.book1D("num_assoc(recoToSim)_eta","N of associated (recoToSim) tracks vs eta",nintEta,minEta,maxEta) );
309  h_loopereta.push_back( ibook.book1D("num_duplicate_eta","N of associated (recoToSim) duplicate tracks vs eta",nintEta,minEta,maxEta) );
310  h_misideta.push_back( ibook.book1D("num_chargemisid_eta","N of associated (recoToSim) charge misIDed tracks vs eta",nintEta,minEta,maxEta) );
311  h_pileupeta.push_back( ibook.book1D("num_pileup_eta","N of associated (recoToSim) pileup tracks vs eta",nintEta,minEta,maxEta) );
312  //
313  h_recopT.push_back( ibook.book1D("num_reco_pT","N of reco track vs pT",nintPt,minPt,maxPt) );
314  h_assoc2pT.push_back( ibook.book1D("num_assoc(recoToSim)_pT","N of associated (recoToSim) tracks vs pT",nintPt,minPt,maxPt) );
315  h_looperpT.push_back( ibook.book1D("num_duplicate_pT","N of associated (recoToSim) duplicate tracks vs pT",nintPt,minPt,maxPt) );
316  h_misidpT.push_back( ibook.book1D("num_chargemisid_pT","N of associated (recoToSim) charge misIDed tracks vs pT",nintPt,minPt,maxPt) );
317  h_pileuppT.push_back( ibook.book1D("num_pileup_pT","N of associated (recoToSim) pileup tracks vs pT",nintPt,minPt,maxPt) );
318  //
319  h_recohit.push_back( ibook.book1D("num_reco_hit","N of reco track vs hit",nintHit,minHit,maxHit) );
320  h_assoc2hit.push_back( ibook.book1D("num_assoc(recoToSim)_hit","N of associated (recoToSim) tracks vs hit",nintHit,minHit,maxHit) );
321  h_looperhit.push_back( ibook.book1D("num_duplicate_hit","N of associated (recoToSim) duplicate tracks vs hit",nintHit,minHit,maxHit) );
322  h_misidhit.push_back( ibook.book1D("num_chargemisid_hit","N of associated (recoToSim) charge misIDed tracks vs hit",nintHit,minHit,maxHit) );
323  h_pileuphit.push_back( ibook.book1D("num_pileup_hit","N of associated (recoToSim) pileup tracks vs hit",nintHit,minHit,maxHit) );
324  //
325  h_recolayer.push_back( ibook.book1D("num_reco_layer","N of reco track vs layer",nintHit,minHit,maxHit) );
326  h_assoc2layer.push_back( ibook.book1D("num_assoc(recoToSim)_layer","N of associated (recoToSim) tracks vs layer",nintHit,minHit,maxHit) );
327  h_looperlayer.push_back( ibook.book1D("num_duplicate_layer","N of associated (recoToSim) duplicate tracks vs layer",nintHit,minHit,maxHit) );
328  h_misidlayer.push_back( ibook.book1D("num_chargemisid_layer","N of associated (recoToSim) charge misIDed tracks vs layer",nintHit,minHit,maxHit) );
329  h_pileuplayer.push_back( ibook.book1D("num_pileup_layer","N of associated (recoToSim) pileup tracks vs layer",nintHit,minHit,maxHit) );
330  //
331  h_recopixellayer.push_back( ibook.book1D("num_reco_pixellayer","N of reco track vs pixellayer",nintHit,minHit,maxHit) );
332  h_assoc2pixellayer.push_back( ibook.book1D("num_assoc(recoToSim)_pixellayer","N of associated (recoToSim) tracks vs pixellayer",nintHit,minHit,maxHit) );
333  h_looperpixellayer.push_back( ibook.book1D("num_duplicate_pixellayer","N of associated (recoToSim) duplicate tracks vs pixellayer",nintHit,minHit,maxHit) );
334  h_misidpixellayer.push_back( ibook.book1D("num_chargemisid_pixellayer","N of associated (recoToSim) charge misIDed tracks vs pixellayer",nintHit,minHit,maxHit) );
335  h_pileuppixellayer.push_back( ibook.book1D("num_pileup_pixellayer","N of associated (recoToSim) pileup tracks vs pixellayer",nintHit,minHit,maxHit) );
336  //
337  h_reco3Dlayer.push_back( ibook.book1D("num_reco_3Dlayer","N of reco track vs 3D layer",nintHit,minHit,maxHit) );
338  h_assoc23Dlayer.push_back( ibook.book1D("num_assoc(recoToSim)_3Dlayer","N of associated (recoToSim) tracks vs 3D layer",nintHit,minHit,maxHit) );
339  h_looper3Dlayer.push_back( ibook.book1D("num_duplicate_3Dlayer","N of associated (recoToSim) duplicate tracks vs 3D layer",nintHit,minHit,maxHit) );
340  h_misid3Dlayer.push_back( ibook.book1D("num_chargemisid_3Dlayer","N of associated (recoToSim) charge misIDed tracks vs 3D layer",nintHit,minHit,maxHit) );
341  h_pileup3Dlayer.push_back( ibook.book1D("num_pileup_3Dlayer","N of associated (recoToSim) pileup tracks vs 3D layer",nintHit,minHit,maxHit) );
342  //
343  h_recopu.push_back( ibook.book1D("num_reco_pu","N of reco track vs pu",nintPu,minPu,maxPu) );
344  h_assoc2pu.push_back( ibook.book1D("num_assoc(recoToSim)_pu","N of associated (recoToSim) tracks vs pu",nintPu,minPu,maxPu) );
345  h_looperpu.push_back( ibook.book1D("num_duplicate_pu","N of associated (recoToSim) duplicate tracks vs pu",nintPu,minPu,maxPu) );
346  h_misidpu.push_back( ibook.book1D("num_chargemisid_pu","N of associated (recoToSim) charge misIDed tracks vs pu",nintPu,minPu,maxPu) );
347  h_pileuppu.push_back( ibook.book1D("num_pileup_pu","N of associated (recoToSim) pileup tracks vs pu",nintPu,minPu,maxPu) );
348  //
349  h_recophi.push_back( ibook.book1D("num_reco_phi","N of reco track vs phi",nintPhi,minPhi,maxPhi) );
350  h_assoc2phi.push_back( ibook.book1D("num_assoc(recoToSim)_phi","N of associated (recoToSim) tracks vs phi",nintPhi,minPhi,maxPhi) );
351  h_looperphi.push_back( ibook.book1D("num_duplicate_phi","N of associated (recoToSim) duplicate tracks vs phi",nintPhi,minPhi,maxPhi) );
352  h_misidphi.push_back( ibook.book1D("num_chargemisid_phi","N of associated (recoToSim) charge misIDed tracks vs phi",nintPhi,minPhi,maxPhi) );
353  h_pileupphi.push_back( ibook.book1D("num_pileup_phi","N of associated (recoToSim) pileup tracks vs phi",nintPhi,minPhi,maxPhi) );
354 
355  h_recodxy.push_back( ibook.book1D("num_reco_dxy","N of reco track vs dxy",nintDxy,minDxy,maxDxy) );
356  h_assoc2dxy.push_back( ibook.book1D("num_assoc(recoToSim)_dxy","N of associated (recoToSim) tracks vs dxy",nintDxy,minDxy,maxDxy) );
357  h_looperdxy.push_back( ibook.book1D("num_duplicate_dxy","N of associated (recoToSim) looper tracks vs dxy",nintDxy,minDxy,maxDxy) );
358  h_misiddxy.push_back( ibook.book1D("num_chargemisid_dxy","N of associated (recoToSim) charge misIDed tracks vs dxy",nintDxy,minDxy,maxDxy) );
359  h_pileupdxy.push_back( ibook.book1D("num_pileup_dxy","N of associated (recoToSim) pileup tracks vs dxy",nintDxy,minDxy,maxDxy) );
360 
361  h_recodz.push_back( ibook.book1D("num_reco_dz","N of reco track vs dz",nintDz,minDz,maxDz) );
362  h_assoc2dz.push_back( ibook.book1D("num_assoc(recoToSim)_dz","N of associated (recoToSim) tracks vs dz",nintDz,minDz,maxDz) );
363  h_looperdz.push_back( ibook.book1D("num_duplicate_dz","N of associated (recoToSim) looper tracks vs dz",nintDz,minDz,maxDz) );
364  h_misiddz.push_back( ibook.book1D("num_chargemisid_versus_dz","N of associated (recoToSim) charge misIDed tracks vs dz",nintDz,minDz,maxDz) );
365  h_pileupdz.push_back( ibook.book1D("num_pileup_dz","N of associated (recoToSim) pileup tracks vs dz",nintDz,minDz,maxDz) );
366 
367  h_recodr.push_back( ibook.book1D("num_reco_dr","N of reconstructed tracks vs dR",nintdr,log10(mindr),log10(maxdr)) );
368  h_assoc2dr.push_back( ibook.book1D("num_assoc(recoToSim)_dr","N of associated tracks (recoToSim) vs dR",nintdr,log10(mindr),log10(maxdr)) );
369  h_pileupdr.push_back( ibook.book1D("num_pileup_dr","N of associated (recoToSim) pileup tracks vs dR",nintdr,log10(mindr),log10(maxdr)) );
370  BinLogX(h_recodr.back()->getTH1F());
371  BinLogX(h_assoc2dr.back()->getTH1F());
372  BinLogX(h_pileupdr.back()->getTH1F());
373 
374  h_recochi2.push_back( ibook.book1D("num_reco_chi2","N of reco track vs normalized #chi^{2}",nintChi2,minChi2,maxChi2) );
375  h_assoc2chi2.push_back( ibook.book1D("num_assoc(recoToSim)_chi2","N of associated (recoToSim) tracks vs normalized #chi^{2}",nintChi2,minChi2,maxChi2) );
376  h_looperchi2.push_back( ibook.book1D("num_duplicate_chi2","N of associated (recoToSim) looper tracks vs normalized #chi^{2}",nintChi2,minChi2,maxChi2) );
377  h_misidchi2.push_back( ibook.book1D("num_chargemisid_chi2","N of associated (recoToSim) charge misIDed tracks vs normalized #chi^{2}",nintChi2,minChi2,maxChi2) );
378  h_pileupchi2.push_back( ibook.book1D("num_pileup_chi2","N of associated (recoToSim) pileup tracks vs normalized #chi^{2}",nintChi2,minChi2,maxChi2) );
379 
381 
382  h_eta.push_back( ibook.book1D("eta", "pseudorapidity residue", 1000, -0.1, 0.1 ) );
383  h_pt.push_back( ibook.book1D("pullPt", "pull of p_{t}", 100, -10, 10 ) );
384  h_pullTheta.push_back( ibook.book1D("pullTheta","pull of #theta parameter",250,-25,25) );
385  h_pullPhi.push_back( ibook.book1D("pullPhi","pull of #phi parameter",250,-25,25) );
386  h_pullDxy.push_back( ibook.book1D("pullDxy","pull of dxy parameter",250,-25,25) );
387  h_pullDz.push_back( ibook.book1D("pullDz","pull of dz parameter",250,-25,25) );
388  h_pullQoverp.push_back( ibook.book1D("pullQoverp","pull of qoverp parameter",250,-25,25) );
389 
390  /* TO BE FIXED -----------
391  if (associators[ww]=="TrackAssociatorByChi2"){
392  h_assochi2.push_back( ibook.book1D("assocChi2","track association #chi^{2}",1000000,0,100000) );
393  h_assochi2_prob.push_back(ibook.book1D("assocChi2_prob","probability of association #chi^{2}",100,0,1));
394  } else if (associators[ww]=="quickTrackAssociatorByHits"){
395  h_assocFraction.push_back( ibook.book1D("assocFraction","fraction of shared hits",200,0,2) );
396  h_assocSharedHit.push_back(ibook.book1D("assocSharedHit","number of shared hits",20,0,20));
397  }
398  */
399  h_assocFraction.push_back( ibook.book1D("assocFraction","fraction of shared hits",200,0,2) );
400  h_assocSharedHit.push_back(ibook.book1D("assocSharedHit","number of shared hits",41,-0.5,40.5));
401  // ----------------------
402 
403  // use the standard error of the mean as the errors in the profile
404  chi2_vs_nhits.push_back( ibook.bookProfile("chi2mean_vs_nhits","mean #chi^{2} vs nhits",nintHit,minHit,maxHit, 100,0,10, " ") );
405 
406  etares_vs_eta.push_back( ibook.book2D("etares_vs_eta","etaresidue vs eta",nintEta,minEta,maxEta,200,-0.1,0.1) );
407  nrec_vs_nsim.push_back( ibook.book2D("nrec_vs_nsim","nrec vs nsim", nintTracks,minTracks,maxTracks, nintTracks,minTracks,maxTracks) );
408 
409  chi2_vs_eta.push_back( ibook.bookProfile("chi2mean","mean #chi^{2} vs #eta",nintEta,minEta,maxEta, 200, 0, 20, " " ));
410  chi2_vs_phi.push_back( ibook.bookProfile("chi2mean_vs_phi","mean #chi^{2} vs #phi",nintPhi,minPhi,maxPhi, 200, 0, 20, " " ) );
411 
412  nhits_vs_eta.push_back( ibook.bookProfile("hits_eta","mean hits vs eta",nintEta,minEta,maxEta,nintHit,minHit,maxHit, " ") );
413  nPXBhits_vs_eta.push_back( ibook.bookProfile("PXBhits_vs_eta","mean # PXB its vs eta",nintEta,minEta,maxEta,nintHit,minHit,maxHit, " ") );
414  nPXFhits_vs_eta.push_back( ibook.bookProfile("PXFhits_vs_eta","mean # PXF hits vs eta",nintEta,minEta,maxEta,nintHit,minHit,maxHit, " ") );
415  nTIBhits_vs_eta.push_back( ibook.bookProfile("TIBhits_vs_eta","mean # TIB hits vs eta",nintEta,minEta,maxEta,nintHit,minHit,maxHit, " ") );
416  nTIDhits_vs_eta.push_back( ibook.bookProfile("TIDhits_vs_eta","mean # TID hits vs eta",nintEta,minEta,maxEta,nintHit,minHit,maxHit, " ") );
417  nTOBhits_vs_eta.push_back( ibook.bookProfile("TOBhits_vs_eta","mean # TOB hits vs eta",nintEta,minEta,maxEta,nintHit,minHit,maxHit, " ") );
418  nTEChits_vs_eta.push_back( ibook.bookProfile("TEChits_vs_eta","mean # TEC hits vs eta",nintEta,minEta,maxEta,nintHit,minHit,maxHit, " ") );
419 
420  nLayersWithMeas_vs_eta.push_back( ibook.bookProfile("LayersWithMeas_eta","mean # Layers with measurement vs eta",
422  nPXLlayersWithMeas_vs_eta.push_back( ibook.bookProfile("PXLlayersWithMeas_vs_eta","mean # PXL Layers with measurement vs eta",
424  nSTRIPlayersWithMeas_vs_eta.push_back( ibook.bookProfile("STRIPlayersWithMeas_vs_eta","mean # STRIP Layers with measurement vs eta",
426  nSTRIPlayersWith1dMeas_vs_eta.push_back( ibook.bookProfile("STRIPlayersWith1dMeas_vs_eta","mean # STRIP Layers with 1D measurement vs eta",
428  nSTRIPlayersWith2dMeas_vs_eta.push_back( ibook.bookProfile("STRIPlayersWith2dMeas_vs_eta","mean # STRIP Layers with 2D measurement vs eta",
430 
431  nhits_vs_phi.push_back( ibook.bookProfile("hits_phi","mean # hits vs #phi",nintPhi,minPhi,maxPhi,nintHit,minHit,maxHit, " ") );
432 
433  nlosthits_vs_eta.push_back( ibook.bookProfile("losthits_vs_eta","mean # lost hits vs eta",nintEta,minEta,maxEta,nintHit,minHit,maxHit, " ") );
434 
435  //resolution of track parameters
436  // dPt/Pt cotTheta Phi TIP LIP
437  // log10(pt)<0.5 100,0.1 240,0.08 100,0.015 100,0.1000 150,0.3000
438  // 0.5<log10(pt)<1.5 100,0.1 120,0.01 100,0.003 100,0.0100 150,0.0500
439  // >1.5 100,0.3 100,0.005 100,0.0008 100,0.0060 120,0.0300
440 
441  ptres_vs_eta.push_back(ibook.book2D("ptres_vs_eta","ptres_vs_eta",
443 
444  ptres_vs_phi.push_back( ibook.book2D("ptres_vs_phi","p_{t} res vs #phi",
446 
447  ptres_vs_pt.push_back(ibook.book2D("ptres_vs_pt","ptres_vs_pt",nintPt,minPt,maxPt, ptRes_nbin, ptRes_rangeMin, ptRes_rangeMax));
448 
449  cotThetares_vs_eta.push_back(ibook.book2D("cotThetares_vs_eta","cotThetares_vs_eta",
451 
452 
453  cotThetares_vs_pt.push_back(ibook.book2D("cotThetares_vs_pt","cotThetares_vs_pt",
455 
456 
457  phires_vs_eta.push_back(ibook.book2D("phires_vs_eta","phires_vs_eta",
459 
460  phires_vs_pt.push_back(ibook.book2D("phires_vs_pt","phires_vs_pt",
462 
463  phires_vs_phi.push_back(ibook.book2D("phires_vs_phi","#phi res vs #phi",
465 
466  dxyres_vs_eta.push_back(ibook.book2D("dxyres_vs_eta","dxyres_vs_eta",
468 
469  dxyres_vs_pt.push_back( ibook.book2D("dxyres_vs_pt","dxyres_vs_pt",
471 
472  dzres_vs_eta.push_back(ibook.book2D("dzres_vs_eta","dzres_vs_eta",
474 
475  dzres_vs_pt.push_back(ibook.book2D("dzres_vs_pt","dzres_vs_pt",nintPt,minPt,maxPt,dzRes_nbin, dzRes_rangeMin, dzRes_rangeMax));
476 
477  ptmean_vs_eta_phi.push_back(ibook.bookProfile2D("ptmean_vs_eta_phi","mean p_{t} vs #eta and #phi",
478  nintPhi,minPhi,maxPhi,nintEta,minEta,maxEta,1000,0,1000));
479  phimean_vs_eta_phi.push_back(ibook.bookProfile2D("phimean_vs_eta_phi","mean #phi vs #eta and #phi",
481 
482  //pulls of track params vs eta: to be used with fitslicesytool
483  dxypull_vs_eta.push_back(ibook.book2D("dxypull_vs_eta","dxypull_vs_eta",nintEta,minEta,maxEta,100,-10,10));
484  ptpull_vs_eta.push_back(ibook.book2D("ptpull_vs_eta","ptpull_vs_eta",nintEta,minEta,maxEta,100,-10,10));
485  dzpull_vs_eta.push_back(ibook.book2D("dzpull_vs_eta","dzpull_vs_eta",nintEta,minEta,maxEta,100,-10,10));
486  phipull_vs_eta.push_back(ibook.book2D("phipull_vs_eta","phipull_vs_eta",nintEta,minEta,maxEta,100,-10,10));
487  thetapull_vs_eta.push_back(ibook.book2D("thetapull_vs_eta","thetapull_vs_eta",nintEta,minEta,maxEta,100,-10,10));
488 
489  // h_ptshiftetamean.push_back( ibook.book1D("h_ptshifteta_Mean","<#deltapT/pT>[%] vs #eta",nintEta,minEta,maxEta) );
490 
491 
492  //pulls of track params vs phi
493  ptpull_vs_phi.push_back(ibook.book2D("ptpull_vs_phi","p_{t} pull vs #phi",nintPhi,minPhi,maxPhi,100,-10,10));
494  phipull_vs_phi.push_back(ibook.book2D("phipull_vs_phi","#phi pull vs #phi",nintPhi,minPhi,maxPhi,100,-10,10));
495  thetapull_vs_phi.push_back(ibook.book2D("thetapull_vs_phi","#theta pull vs #phi",nintPhi,minPhi,maxPhi,100,-10,10));
496 
497 
498  nrecHit_vs_nsimHit_rec2sim.push_back( ibook.book2D("nrecHit_vs_nsimHit_rec2sim","nrecHit vs nsimHit (Rec2simAssoc)",
500 
501  if(useLogPt){
502  BinLogX(dzres_vs_pt.back()->getTH2F());
503  BinLogX(dxyres_vs_pt.back()->getTH2F());
504  BinLogX(phires_vs_pt.back()->getTH2F());
505  BinLogX(cotThetares_vs_pt.back()->getTH2F());
506  BinLogX(ptres_vs_pt.back()->getTH2F());
507  BinLogX(h_looperpT.back()->getTH1F());
508  BinLogX(h_misidpT.back()->getTH1F());
509  BinLogX(h_recopT.back()->getTH1F());
510  BinLogX(h_assoc2pT.back()->getTH1F());
511  BinLogX(h_pileuppT.back()->getTH1F());
512  }
513 }
std::vector< MonitorElement * > h_looperhit
std::vector< MonitorElement * > h_assoc2hit
std::vector< MonitorElement * > h_recodxy
std::vector< MonitorElement * > h_fakes
std::vector< MonitorElement * > h_nchi2_prob
std::vector< MonitorElement * > h_looperpT
std::vector< MonitorElement * > h_pullDz
std::vector< MonitorElement * > h_misidlayer
std::vector< MonitorElement * > ptpull_vs_phi
std::vector< MonitorElement * > h_looperchi2
std::vector< MonitorElement * > nPXFhits_vs_eta
std::vector< MonitorElement * > nrecHit_vs_nsimHit_rec2sim
std::vector< MonitorElement * > h_assoc2pT
std::vector< MonitorElement * > h_nmisslayers_inner
std::vector< MonitorElement * > h_looperpixellayer
MonitorElement * bookProfile(Args &&...args)
Definition: DQMStore.h:157
std::vector< MonitorElement * > h_pileuphit
std::vector< MonitorElement * > h_pileupdr
std::vector< MonitorElement * > nTEChits_vs_eta
std::vector< MonitorElement * > h_hits
std::vector< MonitorElement * > nLayersWithMeas_vs_eta
std::vector< MonitorElement * > h_pullPhi
std::vector< MonitorElement * > phipull_vs_phi
std::vector< MonitorElement * > nrec_vs_nsim
std::vector< MonitorElement * > h_pileuppT
std::vector< MonitorElement * > h_algo
std::vector< MonitorElement * > nTIDhits_vs_eta
std::vector< MonitorElement * > phires_vs_eta
std::vector< MonitorElement * > h_pullDxy
std::vector< MonitorElement * > h_assoc2phi
std::vector< MonitorElement * > h_nchi2
std::vector< MonitorElement * > h_assoc2pu
std::vector< MonitorElement * > h_misidchi2
std::vector< MonitorElement * > h_looperdxy
std::vector< MonitorElement * > h_looper3Dlayer
std::vector< MonitorElement * > h_reco3Dlayer
std::vector< MonitorElement * > h_pileupchi2
std::vector< MonitorElement * > h_assoc2dz
std::vector< MonitorElement * > chi2_vs_phi
std::vector< MonitorElement * > phires_vs_phi
std::vector< MonitorElement * > dzres_vs_eta
std::vector< MonitorElement * > h_misideta
std::vector< MonitorElement * > nlosthits_vs_eta
std::vector< MonitorElement * > nSTRIPlayersWith1dMeas_vs_eta
std::vector< MonitorElement * > h_recohit
std::vector< MonitorElement * > h_looperlayer
std::vector< MonitorElement * > phires_vs_pt
std::vector< MonitorElement * > h_assoc2layer
std::vector< MonitorElement * > h_assoc23Dlayer
std::vector< MonitorElement * > nPXBhits_vs_eta
std::vector< MonitorElement * > h_looperpu
std::vector< MonitorElement * > h_assoc2dxy
std::vector< MonitorElement * > h_pullQoverp
std::vector< MonitorElement * > h_assoc2chi2
std::vector< MonitorElement * > h_misidhit
std::vector< MonitorElement * > nSTRIPlayersWithMeas_vs_eta
MonitorElement * bookProfile2D(Args &&...args)
Definition: DQMStore.h:163
std::vector< MonitorElement * > nTOBhits_vs_eta
std::vector< MonitorElement * > ptpull_vs_eta
std::vector< MonitorElement * > etares_vs_eta
std::vector< MonitorElement * > h_recophi
std::vector< MonitorElement * > nSTRIPlayersWith2dMeas_vs_eta
std::vector< MonitorElement * > h_tracks
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:115
std::vector< MonitorElement * > nhits_vs_phi
std::vector< MonitorElement * > h_assoc2pixellayer
std::vector< MonitorElement * > h_misid3Dlayer
std::vector< MonitorElement * > phimean_vs_eta_phi
std::vector< MonitorElement * > h_charge
std::vector< MonitorElement * > h_misidpu
std::vector< MonitorElement * > h_loopereta
std::vector< MonitorElement * > h_misiddz
std::vector< MonitorElement * > h_pileupphi
std::vector< MonitorElement * > chi2_vs_nhits
std::vector< MonitorElement * > h_recodr
std::vector< MonitorElement * > dzpull_vs_eta
std::vector< MonitorElement * > h_misiddxy
std::vector< MonitorElement * > thetapull_vs_phi
std::vector< MonitorElement * > h_recolayer
std::vector< MonitorElement * > dxyres_vs_eta
std::vector< MonitorElement * > h_recopu
std::vector< MonitorElement * > h_misidpT
std::vector< MonitorElement * > h_nmisslayers_outer
std::vector< MonitorElement * > nPXLlayersWithMeas_vs_eta
MonitorElement * book2D(Args &&...args)
Definition: DQMStore.h:133
std::vector< MonitorElement * > nTIBhits_vs_eta
std::vector< MonitorElement * > h_eta
std::vector< MonitorElement * > h_pt
std::vector< MonitorElement * > cotThetares_vs_pt
std::vector< MonitorElement * > h_pileuppixellayer
static const std::string algoNames[]
Definition: TrackBase.h:146
std::vector< MonitorElement * > h_pullTheta
std::vector< MonitorElement * > ptmean_vs_eta_phi
std::vector< MonitorElement * > h_looperphi
std::vector< MonitorElement * > h_assoc2dr
std::vector< MonitorElement * > dxypull_vs_eta
std::vector< MonitorElement * > ptres_vs_eta
std::vector< MonitorElement * > phipull_vs_eta
std::vector< MonitorElement * > h_recopixellayer
std::vector< MonitorElement * > h_recopT
std::vector< MonitorElement * > h_pileup3Dlayer
std::vector< MonitorElement * > h_looperdz
std::vector< MonitorElement * > h_misidpixellayer
std::vector< MonitorElement * > h_pileuplayer
std::vector< MonitorElement * > cotThetares_vs_eta
std::vector< MonitorElement * > h_assocFraction
std::vector< MonitorElement * > h_pileupdxy
std::vector< MonitorElement * > h_recodz
std::vector< MonitorElement * > ptres_vs_pt
std::vector< MonitorElement * > h_pileupdz
std::vector< MonitorElement * > h_recochi2
std::vector< MonitorElement * > ptres_vs_phi
std::vector< MonitorElement * > h_assocSharedHit
std::vector< MonitorElement * > nhits_vs_eta
std::vector< MonitorElement * > h_pileupeta
std::vector< MonitorElement * > h_recoeta
std::vector< MonitorElement * > thetapull_vs_eta
std::vector< MonitorElement * > chi2_vs_eta
std::vector< MonitorElement * > dxyres_vs_pt
std::vector< MonitorElement * > h_losthits
std::vector< MonitorElement * > h_assoc2eta
std::vector< MonitorElement * > h_misidphi
std::vector< MonitorElement * > dzres_vs_pt
std::vector< MonitorElement * > h_pileuppu
void MTVHistoProducerAlgoForTracker::bookRecoPVAssociationHistos ( DQMStore::IBooker ibook)

Definition at line 515 of file MTVHistoProducerAlgoForTracker.cc.

References DQMStore::IBooker::book1D(), h_assoc2_dzpvcut, h_assoc2_dzpvcut_pt, h_assoc2_dzpvsigcut, h_assoc2_dzpvsigcut_pt, h_assoc2dxypv, h_assoc2dzpv, h_looperdxypv, h_looperdzpv, h_misiddxypv, h_misiddzpv, h_pileup_dzpvcut, h_pileup_dzpvcut_pt, h_pileup_dzpvsigcut, h_pileup_dzpvsigcut_pt, h_pileupdxypv, h_pileupdzpv, h_reco_dzpvcut, h_reco_dzpvcut_pt, h_reco_dzpvsigcut, h_reco_dzpvsigcut_pt, h_recodxypv, h_recodzpv, maxDxy, maxDz, maxDzpvCum, maxDzpvsigCum, minDxy, minDz, nintDxy, nintDz, nintDzpvCum, and nintDzpvsigCum.

515  {
516  h_recodxypv.push_back( ibook.book1D("num_reco_dxypv","N of reco track vs dxy(PV)",nintDxy,minDxy,maxDxy) );
517  h_assoc2dxypv.push_back( ibook.book1D("num_assoc(recoToSim)_dxypv","N of associated (recoToSim) tracks vs dxy(PV)",nintDxy,minDxy,maxDxy) );
518  h_looperdxypv.push_back( ibook.book1D("num_duplicate_dxypv","N of associated (recoToSim) looper tracks vs dxy(PV)",nintDxy,minDxy,maxDxy) );
519  h_misiddxypv.push_back( ibook.book1D("num_chargemisid_dxypv","N of associated (recoToSim) charge misIDed tracks vs dxy(PV)",nintDxy,minDxy,maxDxy) );
520  h_pileupdxypv.push_back( ibook.book1D("num_pileup_dxypv","N of associated (recoToSim) pileup tracks vs dxy(PV)",nintDxy,minDxy,maxDxy) );
521 
522  h_recodzpv.push_back( ibook.book1D("num_reco_dzpv","N of reco track vs dz(PV)",nintDz,minDz,maxDz) );
523  h_assoc2dzpv.push_back( ibook.book1D("num_assoc(recoToSim)_dzpv","N of associated (recoToSim) tracks vs dz(PV)",nintDz,minDz,maxDz) );
524  h_looperdzpv.push_back( ibook.book1D("num_duplicate_dzpv","N of associated (recoToSim) looper tracks vs dz(PV)",nintDz,minDz,maxDz) );
525  h_misiddzpv.push_back( ibook.book1D("num_chargemisid_versus_dzpv","N of associated (recoToSim) charge misIDed tracks vs dz(PV)",nintDz,minDz,maxDz) );
526  h_pileupdzpv.push_back( ibook.book1D("num_pileup_dzpv","N of associated (recoToSim) pileup tracks vs dz(PV)",nintDz,minDz,maxDz) );
527 
528  h_reco_dzpvcut.push_back( ibook.book1D("num_reco_dzpvcut","N of reco track vs dz(PV)",nintDzpvCum,0,maxDzpvCum) );
529  h_assoc2_dzpvcut.push_back( ibook.book1D("num_assoc(recoToSim)_dzpvcut","N of associated (recoToSim) tracks vs dz(PV)",nintDzpvCum,0,maxDzpvCum) );
530  h_pileup_dzpvcut.push_back( ibook.book1D("num_pileup_dzpvcut", "N of associated (recoToSim) pileup tracks vs dz(PV)",nintDzpvCum,0,maxDzpvCum) );
531 
532  h_reco_dzpvcut_pt.push_back( ibook.book1D("num_reco_dzpvcut_pt","#sump_{T} of reco track vs dz(PV)",nintDzpvCum,0,maxDzpvCum) );
533  h_assoc2_dzpvcut_pt.push_back( ibook.book1D("num_assoc(recoToSim)_dzpvcut_pt","#sump_{T} of associated (recoToSim) tracks vs dz(PV)",nintDzpvCum,0,maxDzpvCum) );
534  h_pileup_dzpvcut_pt.push_back( ibook.book1D("num_pileup_dzpvcut_pt", "#sump_{T} of associated (recoToSim) pileup tracks vs dz(PV)",nintDzpvCum,0,maxDzpvCum) );
535  h_reco_dzpvcut_pt.back()->getTH1()->Sumw2();
536  h_assoc2_dzpvcut_pt.back()->getTH1()->Sumw2();
537  h_pileup_dzpvcut_pt.back()->getTH1()->Sumw2();
538 
539  h_reco_dzpvsigcut.push_back( ibook.book1D("num_reco_dzpvsigcut","N of reco track vs dz(PV)/dzError",nintDzpvsigCum,0,maxDzpvsigCum) );
540  h_assoc2_dzpvsigcut.push_back( ibook.book1D("num_assoc(recoToSim)_dzpvsigcut","N of associated (recoToSim) tracks vs dz(PV)/dzError",nintDzpvsigCum,0,maxDzpvsigCum) );
541  h_pileup_dzpvsigcut.push_back( ibook.book1D("num_pileup_dzpvsigcut","N of associated (recoToSim) pileup tracks vs dz(PV)/dzError",nintDzpvsigCum,0,maxDzpvsigCum) );
542 
543  h_reco_dzpvsigcut_pt.push_back( ibook.book1D("num_reco_dzpvsigcut_pt","#sump_{T} of reco track vs dz(PV)/dzError",nintDzpvsigCum,0,maxDzpvsigCum) );
544  h_assoc2_dzpvsigcut_pt.push_back( ibook.book1D("num_assoc(recoToSim)_dzpvsigcut_pt","#sump_{T} of associated (recoToSim) tracks vs dz(PV)/dzError",nintDzpvsigCum,0,maxDzpvsigCum) );
545  h_pileup_dzpvsigcut_pt.push_back( ibook.book1D("num_pileup_dzpvsigcut_pt","#sump_{T} of associated (recoToSim) pileup tracks vs dz(PV)/dzError",nintDzpvsigCum,0,maxDzpvsigCum) );
546  h_reco_dzpvsigcut_pt.back()->getTH1()->Sumw2();
547  h_assoc2_dzpvsigcut_pt.back()->getTH1()->Sumw2();
548  h_pileup_dzpvsigcut_pt.back()->getTH1()->Sumw2();
549 
550 }
std::vector< MonitorElement * > h_pileupdxypv
std::vector< MonitorElement * > h_pileup_dzpvsigcut_pt
std::vector< MonitorElement * > h_assoc2_dzpvcut
std::vector< MonitorElement * > h_reco_dzpvcut
std::vector< MonitorElement * > h_assoc2_dzpvsigcut
std::vector< MonitorElement * > h_assoc2dxypv
std::vector< MonitorElement * > h_pileup_dzpvcut_pt
std::vector< MonitorElement * > h_reco_dzpvcut_pt
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:115
std::vector< MonitorElement * > h_looperdxypv
std::vector< MonitorElement * > h_assoc2_dzpvsigcut_pt
std::vector< MonitorElement * > h_reco_dzpvsigcut_pt
std::vector< MonitorElement * > h_misiddzpv
std::vector< MonitorElement * > h_recodzpv
std::vector< MonitorElement * > h_pileup_dzpvcut
std::vector< MonitorElement * > h_looperdzpv
std::vector< MonitorElement * > h_recodxypv
std::vector< MonitorElement * > h_pileup_dzpvsigcut
std::vector< MonitorElement * > h_misiddxypv
std::vector< MonitorElement * > h_reco_dzpvsigcut
std::vector< MonitorElement * > h_assoc2_dzpvcut_pt
std::vector< MonitorElement * > h_pileupdzpv
std::vector< MonitorElement * > h_assoc2dzpv
void MTVHistoProducerAlgoForTracker::bookSimHistos ( DQMStore::IBooker ibook)

Definition at line 188 of file MTVHistoProducerAlgoForTracker.cc.

References DQMStore::IBooker::book1D(), Exception, MonitorElement::getTH1F(), h_bunchxSIM, h_etaSIM, h_ptSIM, h_tracksSIM, h_vertposSIM, maxEta, maxPt, maxTracks, maxVertpos, minEta, minPt, minTracks, minVertpos, nintEta, nintPt, nintTracks, nintVertpos, and useLogPt.

188  {
189  if(h_ptSIM != nullptr)
190  throw cms::Exception("LogicError") << "bookSimHistos() has already been called";
191 
192  h_ptSIM = ibook.book1D("ptSIM", "generated p_{t}", nintPt, minPt, maxPt);
193  h_etaSIM = ibook.book1D("etaSIM", "generated pseudorapidity", nintEta, minEta, maxEta);
194  h_tracksSIM = ibook.book1D("tracksSIM","number of simulated tracks", nintTracks, minTracks, maxTracks*10);
195  h_vertposSIM = ibook.book1D("vertposSIM","Transverse position of sim vertices", nintVertpos, minVertpos, maxVertpos);
196  h_bunchxSIM = ibook.book1D("bunchxSIM", "bunch crossing", 21, -15.5, 5.5 );
197 
198  if(useLogPt) {
199  BinLogX(h_ptSIM->getTH1F());
200  }
201 }
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:115
TH1F * getTH1F(void) const
void MTVHistoProducerAlgoForTracker::bookSimTrackHistos ( DQMStore::IBooker ibook)

Definition at line 203 of file MTVHistoProducerAlgoForTracker.cc.

References DQMStore::IBooker::book1D(), DQMStore::IBooker::book2D(), h_assoc3Dlayer, h_assocdr, h_assocdxy, h_assocdz, h_assoceta, h_assochit, h_assoclayer, h_assocphi, h_assocpixellayer, h_assocpT, h_assocpu, h_assocvertpos, h_assoczpos, h_simul3Dlayer, h_simuldr, h_simuldxy, h_simuldz, h_simuleta, h_simulhit, h_simullayer, h_simulphi, h_simulpixellayer, h_simulpT, h_simulpu, h_simulvertpos, h_simulzpos, maxdr, maxDxy, maxDz, maxEta, maxHit, maxPhi, maxPt, maxPu, maxVertpos, maxZpos, mindr, minDxy, minDz, minEta, minHit, minPhi, minPt, minPu, minVertpos, minZpos, nintdr, nintDxy, nintDz, nintEta, nintHit, nintPhi, nintPt, nintPu, nintVertpos, nintZpos, nrecHit_vs_nsimHit_sim2rec, and useLogPt.

203  {
204  h_assoceta.push_back( ibook.book1D("num_assoc(simToReco)_eta","N of associated tracks (simToReco) vs eta",nintEta,minEta,maxEta) );
205  h_simuleta.push_back( ibook.book1D("num_simul_eta","N of simulated tracks vs eta",nintEta,minEta,maxEta) );
206 
207  h_assocpT.push_back( ibook.book1D("num_assoc(simToReco)_pT","N of associated tracks (simToReco) vs pT",nintPt,minPt,maxPt) );
208  h_simulpT.push_back( ibook.book1D("num_simul_pT","N of simulated tracks vs pT",nintPt,minPt,maxPt) );
209 
210  h_assochit.push_back( ibook.book1D("num_assoc(simToReco)_hit","N of associated tracks (simToReco) vs hit",nintHit,minHit,maxHit) );
211  h_simulhit.push_back( ibook.book1D("num_simul_hit","N of simulated tracks vs hit",nintHit,minHit,maxHit) );
212 
213  h_assoclayer.push_back( ibook.book1D("num_assoc(simToReco)_layer","N of associated tracks (simToReco) vs layer",nintHit,minHit,maxHit) );
214  h_simullayer.push_back( ibook.book1D("num_simul_layer","N of simulated tracks vs layer",nintHit,minHit,maxHit) );
215 
216  h_assocpixellayer.push_back( ibook.book1D("num_assoc(simToReco)_pixellayer","N of associated tracks (simToReco) vs pixel layer",nintHit,minHit,maxHit) );
217  h_simulpixellayer.push_back( ibook.book1D("num_simul_pixellayer","N of simulated tracks vs pixel layer",nintHit,minHit,maxHit) );
218 
219  h_assoc3Dlayer.push_back( ibook.book1D("num_assoc(simToReco)_3Dlayer","N of associated tracks (simToReco) vs 3D layer",nintHit,minHit,maxHit) );
220  h_simul3Dlayer.push_back( ibook.book1D("num_simul_3Dlayer","N of simulated tracks vs 3D layer",nintHit,minHit,maxHit) );
221 
222  h_assocpu.push_back( ibook.book1D("num_assoc(simToReco)_pu","N of associated tracks (simToReco) vs pu",nintPu,minPu,maxPu) );
223  h_simulpu.push_back( ibook.book1D("num_simul_pu","N of simulated tracks vs pu",nintPu,minPu,maxPu) );
224 
225  h_assocphi.push_back( ibook.book1D("num_assoc(simToReco)_phi","N of associated tracks (simToReco) vs phi",nintPhi,minPhi,maxPhi) );
226  h_simulphi.push_back( ibook.book1D("num_simul_phi","N of simulated tracks vs phi",nintPhi,minPhi,maxPhi) );
227 
228  h_assocdxy.push_back( ibook.book1D("num_assoc(simToReco)_dxy","N of associated tracks (simToReco) vs dxy",nintDxy,minDxy,maxDxy) );
229  h_simuldxy.push_back( ibook.book1D("num_simul_dxy","N of simulated tracks vs dxy",nintDxy,minDxy,maxDxy) );
230 
231  h_assocdz.push_back( ibook.book1D("num_assoc(simToReco)_dz","N of associated tracks (simToReco) vs dz",nintDz,minDz,maxDz) );
232  h_simuldz.push_back( ibook.book1D("num_simul_dz","N of simulated tracks vs dz",nintDz,minDz,maxDz) );
233 
234  h_assocvertpos.push_back( ibook.book1D("num_assoc(simToReco)_vertpos",
235  "N of associated tracks (simToReco) vs transverse vert position",
237  h_simulvertpos.push_back( ibook.book1D("num_simul_vertpos","N of simulated tracks vs transverse vert position",
239 
240  h_assoczpos.push_back( ibook.book1D("num_assoc(simToReco)_zpos","N of associated tracks (simToReco) vs z vert position",
242  h_simulzpos.push_back( ibook.book1D("num_simul_zpos","N of simulated tracks vs z vert position",nintZpos,minZpos,maxZpos) );
243 
244  h_assocdr.push_back( ibook.book1D("num_assoc(simToReco)_dr","N of associated tracks (simToReco) vs dR",nintdr,log10(mindr),log10(maxdr)) );
245  h_simuldr.push_back( ibook.book1D("num_simul_dr","N of simulated tracks vs dR",nintdr,log10(mindr),log10(maxdr)) );
246  BinLogX(h_assocdr.back()->getTH1F());
247  BinLogX(h_simuldr.back()->getTH1F());
248 
249  nrecHit_vs_nsimHit_sim2rec.push_back( ibook.book2D("nrecHit_vs_nsimHit_sim2rec","nrecHit vs nsimHit (Sim2RecAssoc)",
251 
252  if(useLogPt){
253  BinLogX(h_assocpT.back()->getTH1F());
254  BinLogX(h_simulpT.back()->getTH1F());
255  }
256 }
std::vector< MonitorElement * > h_assochit
std::vector< MonitorElement * > h_assoczpos
std::vector< MonitorElement * > h_simulzpos
std::vector< MonitorElement * > h_simulpT
std::vector< MonitorElement * > h_assocdz
std::vector< MonitorElement * > h_simuleta
std::vector< MonitorElement * > h_assoc3Dlayer
std::vector< MonitorElement * > h_assocphi
std::vector< MonitorElement * > h_assocpu
std::vector< MonitorElement * > h_simulpu
std::vector< MonitorElement * > h_simuldr
std::vector< MonitorElement * > h_assocpT
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:115
std::vector< MonitorElement * > nrecHit_vs_nsimHit_sim2rec
std::vector< MonitorElement * > h_simullayer
std::vector< MonitorElement * > h_simuldz
std::vector< MonitorElement * > h_simulvertpos
std::vector< MonitorElement * > h_simulpixellayer
MonitorElement * book2D(Args &&...args)
Definition: DQMStore.h:133
std::vector< MonitorElement * > h_simulphi
std::vector< MonitorElement * > h_simulhit
std::vector< MonitorElement * > h_assocdxy
std::vector< MonitorElement * > h_assoclayer
std::vector< MonitorElement * > h_assoceta
std::vector< MonitorElement * > h_simul3Dlayer
std::vector< MonitorElement * > h_simuldxy
std::vector< MonitorElement * > h_assocdr
std::vector< MonitorElement * > h_assocvertpos
std::vector< MonitorElement * > h_assocpixellayer
void MTVHistoProducerAlgoForTracker::bookSimTrackPVAssociationHistos ( DQMStore::IBooker ibook)

Definition at line 258 of file MTVHistoProducerAlgoForTracker.cc.

References DQMStore::IBooker::book1D(), h_assoc_dzpvcut, h_assoc_dzpvcut_pt, h_assoc_dzpvsigcut, h_assoc_dzpvsigcut_pt, h_assocdxypv, h_assocdzpv, h_simul2_dzpvcut, h_simul2_dzpvcut_pt, h_simul2_dzpvsigcut, h_simul2_dzpvsigcut_pt, h_simul_dzpvcut, h_simul_dzpvcut_pt, h_simul_dzpvsigcut, h_simul_dzpvsigcut_pt, h_simuldxypv, h_simuldzpv, maxDxy, maxDz, maxDzpvCum, maxDzpvsigCum, minDxy, minDz, nintDxy, nintDz, nintDzpvCum, and nintDzpvsigCum.

258  {
259  h_assocdxypv.push_back( ibook.book1D("num_assoc(simToReco)_dxypv","N of associated tracks (simToReco) vs dxy(PV)",nintDxy,minDxy,maxDxy) );
260  h_simuldxypv.push_back( ibook.book1D("num_simul_dxypv","N of simulated tracks vs dxy(PV)",nintDxy,minDxy,maxDxy) );
261 
262  h_assocdzpv.push_back( ibook.book1D("num_assoc(simToReco)_dzpv","N of associated tracks (simToReco) vs dz(PV)",nintDz,minDz,maxDz) );
263  h_simuldzpv.push_back( ibook.book1D("num_simul_dzpv","N of simulated tracks vs dz(PV)",nintDz,minDz,maxDz) );
264 
265  h_assoc_dzpvcut.push_back( ibook.book1D("num_assoc(simToReco)_dzpvcut","N of associated tracks (simToReco) vs dz(PV)",nintDzpvCum,0,maxDzpvCum) );
266  h_simul_dzpvcut.push_back( ibook.book1D("num_simul_dzpvcut","N of simulated tracks from sim PV",nintDzpvCum,0,maxDzpvCum) );
267  h_simul2_dzpvcut.push_back( ibook.book1D("num_simul2_dzpvcut","N of simulated tracks (associated to any track) from sim PV",nintDzpvCum,0,maxDzpvCum) );
268 
269  h_assoc_dzpvcut_pt.push_back( ibook.book1D("num_assoc(simToReco)_dzpvcut_pt","#sump_{T} of associated tracks (simToReco) vs dz(PV)",nintDzpvCum,0,maxDzpvCum) );
270  h_simul_dzpvcut_pt.push_back( ibook.book1D("num_simul_dzpvcut_pt","#sump_{T} of simulated tracks from sim PV",nintDzpvCum,0,maxDzpvCum) );
271  h_simul2_dzpvcut_pt.push_back( ibook.book1D("num_simul2_dzpvcut_pt","#sump_{T} of simulated tracks (associated to any track) from sim PV",nintDzpvCum,0,maxDzpvCum) );
272  h_assoc_dzpvcut_pt.back()->getTH1()->Sumw2();
273  h_simul_dzpvcut_pt.back()->getTH1()->Sumw2();
274  h_simul2_dzpvcut_pt.back()->getTH1()->Sumw2();
275 
276  h_assoc_dzpvsigcut.push_back( ibook.book1D("num_assoc(simToReco)_dzpvsigcut","N of associated tracks (simToReco) vs dz(PV)/dzError",nintDzpvsigCum,0,maxDzpvsigCum) );
277  h_simul_dzpvsigcut.push_back( ibook.book1D("num_simul_dzpvsigcut","N of simulated tracks from sim PV/dzError",nintDzpvsigCum,0,maxDzpvsigCum) );
278  h_simul2_dzpvsigcut.push_back( ibook.book1D("num_simul2_dzpvsigcut","N of simulated tracks (associated to any track) from sim PV/dzError",nintDzpvsigCum,0,maxDzpvsigCum) );
279 
280  h_assoc_dzpvsigcut_pt.push_back( ibook.book1D("num_assoc(simToReco)_dzpvsigcut_pt","#sump_{T} of associated tracks (simToReco) vs dz(PV)/dzError",nintDzpvsigCum,0,maxDzpvsigCum) );
281  h_simul_dzpvsigcut_pt.push_back( ibook.book1D("num_simul_dzpvsigcut_pt","#sump_{T} of simulated tracks from sim PV/dzError",nintDzpvsigCum,0,maxDzpvsigCum) );
282  h_simul2_dzpvsigcut_pt.push_back( ibook.book1D("num_simul2_dzpvsigcut_pt","#sump_{T} of simulated tracks (associated to any track) from sim PV/dzError",nintDzpvsigCum,0,maxDzpvsigCum) );
283  h_assoc_dzpvsigcut_pt.back()->getTH1()->Sumw2();
284  h_simul_dzpvsigcut_pt.back()->getTH1()->Sumw2();
285  h_simul2_dzpvsigcut_pt.back()->getTH1()->Sumw2();
286 }
std::vector< MonitorElement * > h_simul2_dzpvcut
std::vector< MonitorElement * > h_assoc_dzpvsigcut_pt
std::vector< MonitorElement * > h_simul_dzpvsigcut
std::vector< MonitorElement * > h_assoc_dzpvcut_pt
std::vector< MonitorElement * > h_simul_dzpvcut_pt
std::vector< MonitorElement * > h_simul2_dzpvsigcut_pt
std::vector< MonitorElement * > h_assocdzpv
std::vector< MonitorElement * > h_simul2_dzpvcut_pt
std::vector< MonitorElement * > h_simuldzpv
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:115
std::vector< MonitorElement * > h_simuldxypv
std::vector< MonitorElement * > h_simul_dzpvcut
std::vector< MonitorElement * > h_assoc_dzpvsigcut
std::vector< MonitorElement * > h_simul_dzpvsigcut_pt
std::vector< MonitorElement * > h_simul2_dzpvsigcut
std::vector< MonitorElement * > h_assoc_dzpvcut
std::vector< MonitorElement * > h_assocdxypv
void MTVHistoProducerAlgoForTracker::fill_dedx_recoTrack_histos ( int  count,
const edm::RefToBase< reco::Track > &  trackref,
const std::vector< const edm::ValueMap< reco::DeDxData > * > &  v_dEdx 
)

Definition at line 686 of file MTVHistoProducerAlgoForTracker.cc.

References prof2calltree::count, reco::DeDxData::dEdx(), h_dedx_estim, h_dedx_nom, h_dedx_sat, i, reco::DeDxData::numberOfMeasurements(), and reco::DeDxData::numberOfSaturatedMeasurements().

686  {
687  for (unsigned int i=0; i<v_dEdx.size(); i++) {
688  const edm::ValueMap<reco::DeDxData>& dEdxTrack = *(v_dEdx[i]);
689  const reco::DeDxData& dedx = dEdxTrack[trackref];
690  h_dedx_estim[count][i]->Fill(dedx.dEdx());
691  h_dedx_nom[count][i]->Fill(dedx.numberOfMeasurements());
693  }
694 }
int i
Definition: DBlmapReader.cc:9
std::vector< std::vector< MonitorElement * > > h_dedx_estim
float dEdx() const
Definition: DeDxData.cc:26
unsigned int numberOfMeasurements() const
Definition: DeDxData.cc:37
std::vector< std::vector< MonitorElement * > > h_dedx_sat
std::vector< std::vector< MonitorElement * > > h_dedx_nom
int numberOfSaturatedMeasurements() const
Definition: DeDxData.cc:42
void MTVHistoProducerAlgoForTracker::fill_generic_recoTrack_histos ( int  count,
const reco::Track track,
const math::XYZPoint bsPosition,
const math::XYZPoint pvPosition,
bool  isMatched,
bool  isSigMatched,
bool  isChargeMatched,
int  numAssocRecoTracks,
int  numVertices,
int  nSimHits,
double  sharedFraction,
double  dR 
)

Definition at line 697 of file MTVHistoProducerAlgoForTracker.cc.

References funct::abs(), reco::TrackBase::algo(), prof2calltree::count, reco::TrackBase::dxy(), reco::TrackBase::dz(), reco::TrackBase::dzError(), eta, reco::Track::found(), getEta(), getPt(), h_algo, h_assoc23Dlayer, h_assoc2_dzpvcut, h_assoc2_dzpvcut_pt, h_assoc2_dzpvsigcut, h_assoc2_dzpvsigcut_pt, h_assoc2chi2, h_assoc2dr, h_assoc2dxy, h_assoc2dxypv, h_assoc2dz, h_assoc2dzpv, h_assoc2eta, h_assoc2hit, h_assoc2layer, h_assoc2phi, h_assoc2pixellayer, h_assoc2pT, h_assoc2pu, h_assocFraction, h_assocSharedHit, h_looper3Dlayer, h_looperchi2, h_looperdxy, h_looperdxypv, h_looperdz, h_looperdzpv, h_loopereta, h_looperhit, h_looperlayer, h_looperphi, h_looperpixellayer, h_looperpT, h_looperpu, h_misid3Dlayer, h_misidchi2, h_misiddxy, h_misiddxypv, h_misiddz, h_misiddzpv, h_misideta, h_misidhit, h_misidlayer, h_misidphi, h_misidpixellayer, h_misidpT, h_misidpu, h_pileup3Dlayer, h_pileup_dzpvcut, h_pileup_dzpvcut_pt, h_pileup_dzpvsigcut, h_pileup_dzpvsigcut_pt, h_pileupchi2, h_pileupdr, h_pileupdxy, h_pileupdxypv, h_pileupdz, h_pileupdzpv, h_pileupeta, h_pileuphit, h_pileuplayer, h_pileupphi, h_pileuppixellayer, h_pileuppT, h_pileuppu, h_reco3Dlayer, h_reco_dzpvcut, h_reco_dzpvcut_pt, h_reco_dzpvsigcut, h_reco_dzpvsigcut_pt, h_recochi2, h_recodr, h_recodxy, h_recodxypv, h_recodz, h_recodzpv, h_recoeta, h_recohit, h_recolayer, h_recophi, h_recopixellayer, h_recopT, h_recopu, reco::TrackBase::hitPattern(), bookConverter::max, min(), reco::TrackBase::momentum(), nhits, nlayers, reco::TrackBase::normalizedChi2(), nrecHit_vs_nsimHit_rec2sim, reco::TrackBase::numberOfValidHits(), reco::HitPattern::numberOfValidStripLayersWithMonoAndStereo(), phi, reco::HitPattern::pixelLayersWithMeasurement(), EnergyCorrector::pt, EgAmbiguityTools::sharedHits(), mathSSE::sqrt(), and reco::HitPattern::trackerLayersWithMeasurement().

708  {
709 
710  //Fill track algo histogram
711  fillPlotNoFlow(h_algo[count],track.algo());
712  int sharedHits = sharedFraction * track.numberOfValidHits();
713 
714  //Compute fake rate vs eta
715  const auto eta = getEta(track.momentum().eta());
716  const auto phi = track.momentum().phi();
717  const auto pt = getPt(sqrt(track.momentum().perp2()));
718  const auto dxy = track.dxy(bsPosition);
719  const auto dz = track.dz(bsPosition);
720  const auto dxypv = pvPosition ? track.dxy(*pvPosition) : 0.0;
721  const auto dzpv = pvPosition ? track.dz(*pvPosition) : 0.0;
722  const auto dzpvsig = pvPosition ? dzpv / track.dzError() : 0.0;
723  const auto nhits = track.found();
724  const auto nlayers = track.hitPattern().trackerLayersWithMeasurement();
725  const auto nPixelLayers = track.hitPattern().pixelLayersWithMeasurement();
726  const auto n3DLayers = nPixelLayers + track.hitPattern().numberOfValidStripLayersWithMonoAndStereo();
727  const auto deltar = min(max(dR,h_recodr[count]->getTH1()->GetXaxis()->GetXmin()),h_recodr[count]->getTH1()->GetXaxis()->GetXmax());
728  const auto chi2 = track.normalizedChi2();
729 
730  fillPlotNoFlow(h_recoeta[count], eta);
731  fillPlotNoFlow(h_recophi[count], phi);
732  fillPlotNoFlow(h_recopT[count], pt);
733  fillPlotNoFlow(h_recodxy[count], dxy);
734  fillPlotNoFlow(h_recodz[count], dz);
735  fillPlotNoFlow(h_recohit[count], nhits);
736  fillPlotNoFlow(h_recolayer[count], nlayers);
737  fillPlotNoFlow(h_recopixellayer[count], nPixelLayers);
738  fillPlotNoFlow(h_reco3Dlayer[count], n3DLayers);
739  fillPlotNoFlow(h_recopu[count],numVertices);
740  fillPlotNoFlow(h_recochi2[count], chi2);
741  h_recodr[count]->Fill(deltar);
742  if(pvPosition) {
743  fillPlotNoFlow(h_recodxypv[count], dxypv);
744  fillPlotNoFlow(h_recodzpv[count], dzpv);
745 
746  h_reco_dzpvcut[count]->Fill(std::abs(dzpv));
747  h_reco_dzpvsigcut[count]->Fill(std::abs(dzpvsig));
748  h_reco_dzpvcut_pt[count]->Fill(std::abs(dzpv), pt);
749  h_reco_dzpvsigcut_pt[count]->Fill(std::abs(dzpvsig), pt);
750  }
751 
752  if (isMatched) {
753  fillPlotNoFlow(h_assoc2eta[count], eta);
754  fillPlotNoFlow(h_assoc2phi[count], phi);
755  fillPlotNoFlow(h_assoc2pT[count], pt);
756  fillPlotNoFlow(h_assoc2dxy[count], dxy);
757  fillPlotNoFlow(h_assoc2dz[count], dz);
758  fillPlotNoFlow(h_assoc2hit[count], nhits);
759  fillPlotNoFlow(h_assoc2layer[count], nlayers);
760  fillPlotNoFlow(h_assoc2pixellayer[count], nPixelLayers);
761  fillPlotNoFlow(h_assoc23Dlayer[count], n3DLayers);
762  fillPlotNoFlow(h_assoc2pu[count],numVertices);
763  fillPlotNoFlow(h_assoc2chi2[count], chi2);
764  h_assoc2dr[count]->Fill(deltar);
765  if(pvPosition) {
766  fillPlotNoFlow(h_assoc2dxypv[count], dxypv);
767  fillPlotNoFlow(h_assoc2dzpv[count], dzpv);
768 
769  h_assoc2_dzpvcut[count]->Fill(std::abs(dzpv));
770  h_assoc2_dzpvsigcut[count]->Fill(std::abs(dzpvsig));
771  h_assoc2_dzpvcut_pt[count]->Fill(std::abs(dzpv), pt);
772  h_assoc2_dzpvsigcut_pt[count]->Fill(std::abs(dzpvsig), pt);
773  }
774 
775  nrecHit_vs_nsimHit_rec2sim[count]->Fill( track.numberOfValidHits(),nSimHits);
776  h_assocFraction[count]->Fill( sharedFraction);
777  h_assocSharedHit[count]->Fill( sharedHits);
778 
779  if (!isChargeMatched) {
780  fillPlotNoFlow(h_misideta[count], eta);
781  fillPlotNoFlow(h_misidphi[count], phi);
782  fillPlotNoFlow(h_misidpT[count], pt);
783  fillPlotNoFlow(h_misiddxy[count], dxy);
784  fillPlotNoFlow(h_misiddz[count], dz);
785  fillPlotNoFlow(h_misidhit[count], nhits);
786  fillPlotNoFlow(h_misidlayer[count], nlayers);
787  fillPlotNoFlow(h_misidpixellayer[count], nPixelLayers);
788  fillPlotNoFlow(h_misid3Dlayer[count], n3DLayers);
789  fillPlotNoFlow(h_misidpu[count], numVertices);
790  fillPlotNoFlow(h_misidchi2[count], chi2);
791  if(pvPosition) {
792  fillPlotNoFlow(h_misiddxypv[count], dxypv);
793  fillPlotNoFlow(h_misiddzpv[count], dzpv);
794  }
795  }
796 
797  if (numAssocRecoTracks>1) {
798  fillPlotNoFlow(h_loopereta[count], eta);
799  fillPlotNoFlow(h_looperphi[count], phi);
800  fillPlotNoFlow(h_looperpT[count], pt);
801  fillPlotNoFlow(h_looperdxy[count], dxy);
802  fillPlotNoFlow(h_looperdz[count], dz);
803  fillPlotNoFlow(h_looperhit[count], nhits);
804  fillPlotNoFlow(h_looperlayer[count], nlayers);
805  fillPlotNoFlow(h_looperpixellayer[count], nPixelLayers);
806  fillPlotNoFlow(h_looper3Dlayer[count], n3DLayers);
807  fillPlotNoFlow(h_looperpu[count], numVertices);
808  fillPlotNoFlow(h_looperchi2[count], chi2);
809  if(pvPosition) {
810  fillPlotNoFlow(h_looperdxypv[count], dxypv);
811  fillPlotNoFlow(h_looperdzpv[count], dzpv);
812  }
813  }
814  if(!isSigMatched) {
815  fillPlotNoFlow(h_pileupeta[count], eta);
816  fillPlotNoFlow(h_pileupphi[count], phi);
817  fillPlotNoFlow(h_pileuppT[count], pt);
818  fillPlotNoFlow(h_pileupdxy[count], dxy);
819  fillPlotNoFlow(h_pileupdz[count], dz);
820  fillPlotNoFlow(h_pileuphit[count], nhits);
821  fillPlotNoFlow(h_pileuplayer[count], nlayers);
822  fillPlotNoFlow(h_pileuppixellayer[count], nPixelLayers);
823  fillPlotNoFlow(h_pileup3Dlayer[count], n3DLayers);
824  fillPlotNoFlow(h_pileuppu[count], numVertices);
825  fillPlotNoFlow(h_pileupchi2[count], chi2);
826  h_pileupdr[count]->Fill(deltar);
827  if(pvPosition) {
828  fillPlotNoFlow(h_pileupdxypv[count], dxypv);
829  fillPlotNoFlow(h_pileupdzpv[count], dzpv);
830 
831  h_pileup_dzpvcut[count]->Fill(std::abs(dzpv));
832  h_pileup_dzpvsigcut[count]->Fill(std::abs(dzpvsig));
833  h_pileup_dzpvcut_pt[count]->Fill(std::abs(dzpv), pt);
834  h_pileup_dzpvsigcut_pt[count]->Fill(std::abs(dzpvsig), pt);
835  }
836  }
837  }
838 }
std::vector< MonitorElement * > h_looperhit
std::vector< MonitorElement * > h_assoc2hit
std::vector< MonitorElement * > h_pileupdxypv
std::vector< MonitorElement * > h_recodxy
std::vector< MonitorElement * > h_looperpT
std::vector< MonitorElement * > h_misidlayer
std::vector< MonitorElement * > h_looperchi2
std::vector< MonitorElement * > nrecHit_vs_nsimHit_rec2sim
std::vector< MonitorElement * > h_assoc2pT
std::vector< MonitorElement * > h_looperpixellayer
double normalizedChi2() const
chi-squared divided by n.d.o.f. (or chi-squared * 1e6 if n.d.o.f. is zero)
Definition: TrackBase.h:548
std::vector< MonitorElement * > h_pileuphit
std::vector< MonitorElement * > h_pileupdr
std::vector< MonitorElement * > h_pileup_dzpvsigcut_pt
std::vector< MonitorElement * > h_pileuppT
std::vector< MonitorElement * > h_algo
std::vector< MonitorElement * > h_assoc2phi
std::vector< MonitorElement * > h_assoc2pu
std::vector< MonitorElement * > h_misidchi2
std::vector< MonitorElement * > h_assoc2_dzpvcut
std::vector< MonitorElement * > h_looperdxy
std::vector< MonitorElement * > h_looper3Dlayer
int pixelLayersWithMeasurement() const
Definition: HitPattern.cc:497
std::vector< MonitorElement * > h_reco_dzpvcut
const Vector & momentum() const
track momentum vector
Definition: TrackBase.h:662
std::vector< MonitorElement * > h_reco3Dlayer
std::vector< MonitorElement * > h_pileupchi2
std::vector< MonitorElement * > h_assoc2dz
int trackerLayersWithMeasurement() const
Definition: HitPattern.cc:516
int sharedHits(const reco::GsfTrackRef &, const reco::GsfTrackRef &)
std::vector< MonitorElement * > h_misideta
std::vector< MonitorElement * > h_recohit
TrackAlgorithm algo() const
Definition: TrackBase.h:484
std::vector< MonitorElement * > h_looperlayer
std::vector< MonitorElement * > h_assoc2_dzpvsigcut
std::vector< MonitorElement * > h_assoc2layer
std::vector< MonitorElement * > h_assoc23Dlayer
int numberOfValidStripLayersWithMonoAndStereo(uint16_t stripdet, uint16_t layer) const
Definition: HitPattern.cc:339
std::vector< MonitorElement * > h_looperpu
std::vector< MonitorElement * > h_assoc2dxypv
std::vector< MonitorElement * > h_assoc2dxy
std::vector< MonitorElement * > h_assoc2chi2
std::vector< MonitorElement * > h_misidhit
std::vector< MonitorElement * > h_pileup_dzpvcut_pt
std::vector< MonitorElement * > h_reco_dzpvcut_pt
T sqrt(T t)
Definition: SSEVec.h:48
std::vector< MonitorElement * > h_recophi
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
std::vector< MonitorElement * > h_assoc2pixellayer
std::vector< MonitorElement * > h_misid3Dlayer
bool isMatched(TrackingRecHit const &hit)
unsigned short numberOfValidHits() const
number of valid hits found
Definition: TrackBase.h:807
T min(T a, T b)
Definition: MathUtil.h:58
std::vector< MonitorElement * > h_looperdxypv
std::vector< MonitorElement * > h_misidpu
std::vector< MonitorElement * > h_loopereta
std::vector< MonitorElement * > h_misiddz
std::vector< MonitorElement * > h_pileupphi
std::vector< MonitorElement * > h_recodr
std::vector< MonitorElement * > h_misiddxy
double dz() const
dz parameter (= dsz/cos(lambda)). This is the track z0 w.r.t (0,0,0) only if the refPoint is close to...
Definition: TrackBase.h:596
double dzError() const
error on dz
Definition: TrackBase.h:801
std::vector< MonitorElement * > h_recolayer
std::vector< MonitorElement * > h_assoc2_dzpvsigcut_pt
std::vector< MonitorElement * > h_reco_dzpvsigcut_pt
std::vector< MonitorElement * > h_recopu
std::vector< MonitorElement * > h_misidpT
std::vector< MonitorElement * > h_misiddzpv
const HitPattern & hitPattern() const
Access the hit pattern, indicating in which Tracker layers the track has hits.
Definition: TrackBase.h:437
std::vector< MonitorElement * > h_recodzpv
std::vector< MonitorElement * > h_pileuppixellayer
std::vector< MonitorElement * > h_pileup_dzpvcut
std::vector< MonitorElement * > h_looperdzpv
std::vector< MonitorElement * > h_looperphi
std::vector< MonitorElement * > h_recodxypv
std::vector< MonitorElement * > h_assoc2dr
unsigned short found() const
Number of valid hits on track.
Definition: Track.h:194
std::vector< MonitorElement * > h_recopixellayer
std::vector< MonitorElement * > h_pileup_dzpvsigcut
std::vector< MonitorElement * > h_recopT
std::vector< MonitorElement * > h_pileup3Dlayer
std::vector< MonitorElement * > h_looperdz
std::vector< MonitorElement * > h_misiddxypv
std::vector< MonitorElement * > h_misidpixellayer
std::vector< MonitorElement * > h_pileuplayer
std::vector< MonitorElement * > h_assocFraction
std::vector< MonitorElement * > h_reco_dzpvsigcut
std::vector< MonitorElement * > h_assoc2_dzpvcut_pt
std::vector< MonitorElement * > h_pileupdxy
std::vector< MonitorElement * > h_recodz
std::vector< MonitorElement * > h_pileupdzpv
std::vector< MonitorElement * > h_pileupdz
double dxy() const
dxy parameter. (This is the transverse impact parameter w.r.t. to (0,0,0) ONLY if refPoint is close t...
Definition: TrackBase.h:578
std::vector< MonitorElement * > h_recochi2
std::vector< MonitorElement * > h_assocSharedHit
std::vector< MonitorElement * > h_assoc2dzpv
std::vector< MonitorElement * > h_pileupeta
std::vector< MonitorElement * > h_recoeta
std::vector< MonitorElement * > h_assoc2eta
std::vector< MonitorElement * > h_misidphi
std::vector< MonitorElement * > h_pileuppu
void MTVHistoProducerAlgoForTracker::fill_generic_simTrack_histos ( const TrackingParticle::Vector momentumTP,
const TrackingParticle::Point vertex,
int  bx 
)

Definition at line 568 of file MTVHistoProducerAlgoForTracker.cc.

References MonitorElement::Fill(), h_bunchxSIM, h_etaSIM, h_ptSIM, h_vertposSIM, and mathSSE::sqrt().

570  {
571  if(bx == 0) {
572  h_ptSIM->Fill(sqrt(momentumTP.perp2()));
573  h_etaSIM->Fill(momentumTP.eta());
574  h_vertposSIM->Fill(sqrt(vertexTP.perp2()));
575  }
576  h_bunchxSIM->Fill(bx);
577 }
void Fill(long long x)
T sqrt(T t)
Definition: SSEVec.h:48
void MTVHistoProducerAlgoForTracker::fill_recoAssociated_simTrack_histos ( int  count,
const TrackingParticle tp,
const TrackingParticle::Vector momentumTP,
const TrackingParticle::Point vertexTP,
double  dxy,
double  dz,
double  dxyPV,
double  dzPV,
int  nSimHits,
int  nSimLayers,
int  nSimPixelLayers,
int  nSimStripMonoAndStereoLayers,
const reco::Track track,
int  numVertices,
double  dR,
const math::XYZPoint pvPosition 
)

Definition at line 581 of file MTVHistoProducerAlgoForTracker.cc.

References funct::abs(), prof2calltree::count, reco::TrackBase::dz(), reco::TrackBase::dzError(), eta, getEta(), getPt(), h_assoc3Dlayer, h_assoc_dzpvcut, h_assoc_dzpvcut_pt, h_assoc_dzpvsigcut, h_assoc_dzpvsigcut_pt, h_assocdr, h_assocdxy, h_assocdxypv, h_assocdz, h_assocdzpv, h_assoceta, h_assochit, h_assoclayer, h_assocphi, h_assocpixellayer, h_assocpT, h_assocpu, h_assocvertpos, h_assoczpos, h_simul2_dzpvcut, h_simul2_dzpvcut_pt, h_simul2_dzpvsigcut, h_simul2_dzpvsigcut_pt, h_simul3Dlayer, h_simul_dzpvcut, h_simul_dzpvcut_pt, h_simul_dzpvsigcut, h_simul_dzpvsigcut_pt, h_simuldr, h_simuldxy, h_simuldxypv, h_simuldz, h_simuldzpv, h_simuleta, h_simulhit, h_simullayer, h_simulphi, h_simulpixellayer, h_simulpT, h_simulpu, h_simulvertpos, h_simulzpos, trackerHitRTTI::isMatched(), nrecHit_vs_nsimHit_sim2rec, reco::TrackBase::numberOfValidHits(), phi, EnergyCorrector::pt, mathSSE::sqrt(), TpSelectorForEfficiencyVsEta, TpSelectorForEfficiencyVsPhi, TpSelectorForEfficiencyVsPt, TpSelectorForEfficiencyVsVTXR, and TpSelectorForEfficiencyVsVTXZ.

592  {
593  bool isMatched = track;
594  const auto eta = getEta(momentumTP.eta());
595  const auto phi = momentumTP.phi();
596  const auto pt = getPt(sqrt(momentumTP.perp2()));
597  const auto nSim3DLayers = nSimPixelLayers + nSimStripMonoAndStereoLayers;
598  const auto vertxy = sqrt(vertexTP.perp2());
599  const auto vertz = vertexTP.z();
600 
601  if((*TpSelectorForEfficiencyVsEta)(tp)){
602  //effic vs eta
603  fillPlotNoFlow(h_simuleta[count], eta);
604  if (isMatched) fillPlotNoFlow(h_assoceta[count], eta);
605  //effic vs hits
606  fillPlotNoFlow(h_simulhit[count], nSimHits);
607  fillPlotNoFlow(h_simullayer[count], nSimLayers);
608  fillPlotNoFlow(h_simulpixellayer[count], nSimPixelLayers);
609  fillPlotNoFlow(h_simul3Dlayer[count], nSim3DLayers);
610  if(isMatched) {
611  fillPlotNoFlow(h_assochit[count], nSimHits);
612  fillPlotNoFlow(h_assoclayer[count], nSimLayers);
613  fillPlotNoFlow(h_assocpixellayer[count], nSimPixelLayers);
614  fillPlotNoFlow(h_assoc3Dlayer[count], nSim3DLayers);
615  nrecHit_vs_nsimHit_sim2rec[count]->Fill( track->numberOfValidHits(),nSimHits);
616  }
617  //effic vs pu
618  fillPlotNoFlow(h_simulpu[count], numVertices);
619  if(isMatched) fillPlotNoFlow(h_assocpu[count],numVertices);
620  //efficiency vs dR
621  fillPlotNoFlow(h_simuldr[count],dR);
622  if (isMatched) fillPlotNoFlow(h_assocdr[count],dR);
623  }
624 
625  if((*TpSelectorForEfficiencyVsPhi)(tp)){
626  fillPlotNoFlow(h_simulphi[count], phi);
627  if (isMatched) fillPlotNoFlow(h_assocphi[count], phi);
628  }
629 
630  if((*TpSelectorForEfficiencyVsPt)(tp)){
631  fillPlotNoFlow(h_simulpT[count], pt);
632  if (isMatched) fillPlotNoFlow(h_assocpT[count], pt);
633  }
634 
636  fillPlotNoFlow(h_simuldxy[count],dxySim);
637  if (isMatched) fillPlotNoFlow(h_assocdxy[count],dxySim);
638  if(pvPosition) {
639  fillPlotNoFlow(h_simuldxypv[count], dxyPVSim);
640  if (isMatched) fillPlotNoFlow(h_assocdxypv[count], dxyPVSim);
641  }
642 
643  fillPlotNoFlow(h_simulvertpos[count], vertxy);
644  if (isMatched) fillPlotNoFlow(h_assocvertpos[count], vertxy);
645  }
646 
647 
649  fillPlotNoFlow(h_simuldz[count],dzSim);
650  if (isMatched) fillPlotNoFlow(h_assocdz[count],dzSim);
651 
652  fillPlotNoFlow(h_simulzpos[count], vertz);
653  if (isMatched) fillPlotNoFlow(h_assoczpos[count], vertz);
654 
655  if(pvPosition) {
656  fillPlotNoFlow(h_simuldzpv[count], dzPVSim);
657 
658  h_simul_dzpvcut[count]->Fill(0);
659  h_simul_dzpvsigcut[count]->Fill(0);
660  h_simul_dzpvcut_pt[count]->Fill(0, pt);
661  h_simul_dzpvsigcut_pt[count]->Fill(0, pt);
662  if(isMatched) {
663  fillPlotNoFlow(h_assocdzpv[count], dzPVSim);
664 
665  h_simul2_dzpvcut[count]->Fill(0);
666  h_simul2_dzpvsigcut[count]->Fill(0);
667  h_simul2_dzpvcut_pt[count]->Fill(0, pt);
668  h_simul2_dzpvsigcut_pt[count]->Fill(0, pt);
669  const double dzpvcut = std::abs(track->dz(*pvPosition));
670  const double dzpvsigcut = dzpvcut / track->dzError();
671  h_assoc_dzpvcut[count]->Fill(dzpvcut);
672  h_assoc_dzpvsigcut[count]->Fill(dzpvsigcut);
673  h_assoc_dzpvcut_pt[count]->Fill(dzpvcut, pt);
674  h_assoc_dzpvsigcut_pt[count]->Fill(dzpvsigcut, pt);
675  }
676  }
677  }
678 
679 }
std::vector< MonitorElement * > h_simul2_dzpvcut
std::vector< MonitorElement * > h_assochit
std::unique_ptr< TrackingParticleSelector > TpSelectorForEfficiencyVsPt
std::unique_ptr< TrackingParticleSelector > TpSelectorForEfficiencyVsEta
std::vector< MonitorElement * > h_assoc_dzpvsigcut_pt
std::vector< MonitorElement * > h_assoczpos
std::vector< MonitorElement * > h_simulzpos
std::vector< MonitorElement * > h_simulpT
std::vector< MonitorElement * > h_simul_dzpvsigcut
std::unique_ptr< TrackingParticleSelector > TpSelectorForEfficiencyVsVTXR
std::vector< MonitorElement * > h_assoc_dzpvcut_pt
std::vector< MonitorElement * > h_simul_dzpvcut_pt
std::vector< MonitorElement * > h_assocdz
std::vector< MonitorElement * > h_simuleta
std::vector< MonitorElement * > h_assoc3Dlayer
std::vector< MonitorElement * > h_simul2_dzpvsigcut_pt
std::vector< MonitorElement * > h_assocdzpv
std::vector< MonitorElement * > h_assocphi
std::vector< MonitorElement * > h_simul2_dzpvcut_pt
std::vector< MonitorElement * > h_assocpu
std::vector< MonitorElement * > h_simulpu
std::vector< MonitorElement * > h_simuldzpv
std::vector< MonitorElement * > h_simuldr
T sqrt(T t)
Definition: SSEVec.h:48
std::vector< MonitorElement * > h_assocpT
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
std::vector< MonitorElement * > nrecHit_vs_nsimHit_sim2rec
bool isMatched(TrackingRecHit const &hit)
unsigned short numberOfValidHits() const
number of valid hits found
Definition: TrackBase.h:807
std::vector< MonitorElement * > h_simullayer
std::vector< MonitorElement * > h_simuldz
double dz() const
dz parameter (= dsz/cos(lambda)). This is the track z0 w.r.t (0,0,0) only if the refPoint is close to...
Definition: TrackBase.h:596
double dzError() const
error on dz
Definition: TrackBase.h:801
std::vector< MonitorElement * > h_simulvertpos
std::vector< MonitorElement * > h_simuldxypv
std::vector< MonitorElement * > h_simulpixellayer
std::vector< MonitorElement * > h_simul_dzpvcut
std::vector< MonitorElement * > h_assoc_dzpvsigcut
std::unique_ptr< TrackingParticleSelector > TpSelectorForEfficiencyVsPhi
std::vector< MonitorElement * > h_simul_dzpvsigcut_pt
std::vector< MonitorElement * > h_simulphi
std::unique_ptr< TrackingParticleSelector > TpSelectorForEfficiencyVsVTXZ
std::vector< MonitorElement * > h_simul2_dzpvsigcut
std::vector< MonitorElement * > h_simulhit
std::vector< MonitorElement * > h_assocdxy
std::vector< MonitorElement * > h_assoclayer
std::vector< MonitorElement * > h_assoceta
std::vector< MonitorElement * > h_simul3Dlayer
std::vector< MonitorElement * > h_simuldxy
std::vector< MonitorElement * > h_assocdr
std::vector< MonitorElement * > h_assocvertpos
std::vector< MonitorElement * > h_assocpixellayer
std::vector< MonitorElement * > h_assoc_dzpvcut
std::vector< MonitorElement * > h_assocdxypv
void MTVHistoProducerAlgoForTracker::fill_recoAssociated_simTrack_histos ( int  count,
const reco::GenParticle tp,
const TrackingParticle::Vector momentumTP,
const TrackingParticle::Point vertexTP,
double  dxy,
double  dz,
int  nSimHits,
const reco::Track track,
int  numVertices 
)

Definition at line 1088 of file MTVHistoProducerAlgoForTracker.cc.

References prof2calltree::count, getEta(), getPt(), GpSelectorForEfficiencyVsEta, GpSelectorForEfficiencyVsPhi, GpSelectorForEfficiencyVsPt, GpSelectorForEfficiencyVsVTXR, GpSelectorForEfficiencyVsVTXZ, h_assocdxy, h_assocdz, h_assoceta, h_assochit, h_assocphi, h_assocpT, h_assocpu, h_assocvertpos, h_assoczpos, h_simuldxy, h_simuldz, h_simuleta, h_simulhit, h_simulphi, h_simulpT, h_simulpu, h_simulvertpos, h_simulzpos, trackerHitRTTI::isMatched(), nrecHit_vs_nsimHit_sim2rec, reco::TrackBase::numberOfValidHits(), and mathSSE::sqrt().

1094  {
1095 
1096  bool isMatched = track;
1097 
1098  if((*GpSelectorForEfficiencyVsEta)(tp)){
1099  //effic vs eta
1100  fillPlotNoFlow(h_simuleta[count],getEta(momentumTP.eta()));
1101  if (isMatched) fillPlotNoFlow(h_assoceta[count],getEta(momentumTP.eta()));
1102  //effic vs hits
1103  fillPlotNoFlow(h_simulhit[count],(int)nSimHits);
1104  if(isMatched) {
1105  fillPlotNoFlow(h_assochit[count],(int)nSimHits);
1106  nrecHit_vs_nsimHit_sim2rec[count]->Fill( track->numberOfValidHits(),nSimHits);
1107  }
1108  //effic vs pu
1109  fillPlotNoFlow(h_simulpu[count],numVertices);
1110  if (isMatched) fillPlotNoFlow(h_assocpu[count],numVertices);
1111  //efficiency vs dR
1112  //not implemented for now
1113  }
1114 
1115  if((*GpSelectorForEfficiencyVsPhi)(tp)){
1116  fillPlotNoFlow(h_simulphi[count],momentumTP.phi());
1117  if (isMatched) fillPlotNoFlow(h_assocphi[count],momentumTP.phi());
1118  }
1119 
1120  if((*GpSelectorForEfficiencyVsPt)(tp)){
1121  fillPlotNoFlow(h_simulpT[count],getPt(sqrt(momentumTP.perp2())));
1122  if (isMatched) fillPlotNoFlow(h_assocpT[count],getPt(sqrt(momentumTP.perp2())));
1123  }
1124 
1125  if((*GpSelectorForEfficiencyVsVTXR)(tp)){
1126  fillPlotNoFlow(h_simuldxy[count],dxySim);
1127  if (isMatched) fillPlotNoFlow(h_assocdxy[count],dxySim);
1128 
1129  fillPlotNoFlow(h_simulvertpos[count],sqrt(vertexTP.perp2()));
1130  if (isMatched) fillPlotNoFlow(h_assocvertpos[count],sqrt(vertexTP.perp2()));
1131  }
1132 
1133  if((*GpSelectorForEfficiencyVsVTXZ)(tp)){
1134  fillPlotNoFlow(h_simuldz[count],dzSim);
1135  if (isMatched) fillPlotNoFlow(h_assocdz[count],dzSim);
1136 
1137  fillPlotNoFlow(h_simulzpos[count],vertexTP.z());
1138  if (isMatched) fillPlotNoFlow(h_assoczpos[count],vertexTP.z());
1139  }
1140 
1141 }
std::vector< MonitorElement * > h_assochit
std::vector< MonitorElement * > h_assoczpos
std::unique_ptr< GenParticleCustomSelector > GpSelectorForEfficiencyVsVTXR
std::vector< MonitorElement * > h_simulzpos
std::vector< MonitorElement * > h_simulpT
std::vector< MonitorElement * > h_assocdz
std::unique_ptr< GenParticleCustomSelector > GpSelectorForEfficiencyVsVTXZ
std::vector< MonitorElement * > h_simuleta
std::unique_ptr< GenParticleCustomSelector > GpSelectorForEfficiencyVsPt
std::vector< MonitorElement * > h_assocphi
std::unique_ptr< GenParticleCustomSelector > GpSelectorForEfficiencyVsPhi
std::vector< MonitorElement * > h_assocpu
std::vector< MonitorElement * > h_simulpu
T sqrt(T t)
Definition: SSEVec.h:48
std::unique_ptr< GenParticleCustomSelector > GpSelectorForEfficiencyVsEta
std::vector< MonitorElement * > h_assocpT
std::vector< MonitorElement * > nrecHit_vs_nsimHit_sim2rec
bool isMatched(TrackingRecHit const &hit)
unsigned short numberOfValidHits() const
number of valid hits found
Definition: TrackBase.h:807
std::vector< MonitorElement * > h_simuldz
std::vector< MonitorElement * > h_simulvertpos
std::vector< MonitorElement * > h_simulphi
std::vector< MonitorElement * > h_simulhit
std::vector< MonitorElement * > h_assocdxy
std::vector< MonitorElement * > h_assoceta
std::vector< MonitorElement * > h_simuldxy
std::vector< MonitorElement * > h_assocvertpos
void MTVHistoProducerAlgoForTracker::fill_ResoAndPull_recoTrack_histos ( int  count,
const TrackingParticle::Vector momentumTP,
const TrackingParticle::Point vertexTP,
int  chargeTP,
const reco::Track track,
const math::XYZPoint bsPosition 
)

Definition at line 886 of file MTVHistoProducerAlgoForTracker.cc.

References chi2_vs_phi, funct::cos(), cotThetares_vs_eta, cotThetares_vs_pt, prof2calltree::count, reco::TrackBase::dxy(), reco::TrackBase::dxyError(), dxypull_vs_eta, dxyres_vs_eta, dxyres_vs_pt, reco::TrackBase::dz(), reco::TrackBase::dzError(), dzpull_vs_eta, dzres_vs_eta, dzres_vs_pt, reco::TrackBase::eta(), etares_vs_eta, getEta(), getPt(), getRecoMomentum(), h_eta, h_pt, h_pullDxy, h_pullDz, h_pullPhi, h_pullQoverp, h_pullTheta, LogTrace, M_PI, nhits_vs_phi, reco::TrackBase::normalizedChi2(), reco::TrackBase::numberOfValidHits(), phimean_vs_eta_phi, phipull_vs_eta, phipull_vs_phi, phires_vs_eta, phires_vs_phi, phires_vs_pt, ptmean_vs_eta_phi, ptpull_vs_eta, ptpull_vs_phi, ptres_vs_eta, ptres_vs_phi, ptres_vs_pt, funct::sin(), mathSSE::sqrt(), funct::tan(), reco::TrackBase::theta(), thetapull_vs_eta, and thetapull_vs_phi.

891  {
892 
893  // evaluation of TP parameters
894  double qoverpSim = chargeTP/sqrt(momentumTP.x()*momentumTP.x()+momentumTP.y()*momentumTP.y()+momentumTP.z()*momentumTP.z());
895  double lambdaSim = M_PI/2-momentumTP.theta();
896  double phiSim = momentumTP.phi();
897  double dxySim = (-vertexTP.x()*sin(momentumTP.phi())+vertexTP.y()*cos(momentumTP.phi()));
898  double dzSim = vertexTP.z() - (vertexTP.x()*momentumTP.x()+vertexTP.y()*momentumTP.y())/sqrt(momentumTP.perp2())
899  * momentumTP.z()/sqrt(momentumTP.perp2());
900 
901 
902  // reco::Track::ParameterVector rParameters = track.parameters(); // UNUSED
903 
904  double qoverpRec(0);
905  double qoverpErrorRec(0);
906  double ptRec(0);
907  double ptErrorRec(0);
908  double lambdaRec(0);
909  double lambdaErrorRec(0);
910  double phiRec(0);
911  double phiErrorRec(0);
912 
913  /* TO BE FIXED LATER -----------
914  //loop to decide whether to take gsfTrack (utilisation of mode-function) or common track
915  const GsfTrack* gsfTrack(0);
916  if(useGsf){
917  gsfTrack = dynamic_cast<const GsfTrack*>(&(*track));
918  if (gsfTrack==0) edm::LogInfo("TrackValidator") << "Trying to access mode for a non-GsfTrack";
919  }
920 
921  if (gsfTrack) {
922  // get values from mode
923  getRecoMomentum(*gsfTrack, ptRec, ptErrorRec, qoverpRec, qoverpErrorRec,
924  lambdaRec,lambdaErrorRec, phiRec, phiErrorRec);
925  }
926 
927  else {
928  // get values from track (without mode)
929  getRecoMomentum(*track, ptRec, ptErrorRec, qoverpRec, qoverpErrorRec,
930  lambdaRec,lambdaErrorRec, phiRec, phiErrorRec);
931  }
932  */
933  getRecoMomentum(track, ptRec, ptErrorRec, qoverpRec, qoverpErrorRec,
934  lambdaRec,lambdaErrorRec, phiRec, phiErrorRec);
935  // -------------
936 
937  double ptError = ptErrorRec;
938  double ptres=ptRec-sqrt(momentumTP.perp2());
939  double etares=track.eta()-momentumTP.Eta();
940 
941 
942  double dxyRec = track.dxy(bsPosition);
943  double dzRec = track.dz(bsPosition);
944 
945  const auto phiRes = phiRec-phiSim;
946  const auto dxyRes = dxyRec-dxySim;
947  const auto dzRes = dzRec-dzSim;
948  const auto cotThetaRes = 1/tan(M_PI*0.5-lambdaRec)-1/tan(M_PI*0.5-lambdaSim);
949 
950  // eta residue; pt, k, theta, phi, dxy, dz pulls
951  double qoverpPull=(qoverpRec-qoverpSim)/qoverpErrorRec;
952  double thetaPull=(lambdaRec-lambdaSim)/lambdaErrorRec;
953  double phiPull=phiRes/phiErrorRec;
954  double dxyPull=dxyRes/track.dxyError();
955  double dzPull=dzRes/track.dzError();
956 
957 #ifdef EDM_ML_DEBUG
958  double contrib_Qoverp = ((qoverpRec-qoverpSim)/qoverpErrorRec)*
959  ((qoverpRec-qoverpSim)/qoverpErrorRec)/5;
960  double contrib_dxy = ((dxyRec-dxySim)/track.dxyError())*((dxyRec-dxySim)/track.dxyError())/5;
961  double contrib_dz = ((dzRec-dzSim)/track.dzError())*((dzRec-dzSim)/track.dzError())/5;
962  double contrib_theta = ((lambdaRec-lambdaSim)/lambdaErrorRec)*
963  ((lambdaRec-lambdaSim)/lambdaErrorRec)/5;
964  double contrib_phi = ((phiRec-phiSim)/phiErrorRec)*
965  ((phiRec-phiSim)/phiErrorRec)/5;
966 
967  LogTrace("TrackValidatorTEST")
968  //<< "assocChi2=" << tp.begin()->second << "\n"
969  << "" << "\n"
970  << "ptREC=" << ptRec << "\n" << "etaREC=" << track.eta() << "\n" << "qoverpREC=" << qoverpRec << "\n"
971  << "dxyREC=" << dxyRec << "\n" << "dzREC=" << dzRec << "\n"
972  << "thetaREC=" << track.theta() << "\n" << "phiREC=" << phiRec << "\n"
973  << "" << "\n"
974  << "qoverpError()=" << qoverpErrorRec << "\n" << "dxyError()=" << track.dxyError() << "\n"<< "dzError()="
975  << track.dzError() << "\n"
976  << "thetaError()=" << lambdaErrorRec << "\n" << "phiError()=" << phiErrorRec << "\n"
977  << "" << "\n"
978  << "ptSIM=" << sqrt(momentumTP.perp2()) << "\n"<< "etaSIM=" << momentumTP.Eta() << "\n"<< "qoverpSIM=" << qoverpSim << "\n"
979  << "dxySIM=" << dxySim << "\n"<< "dzSIM=" << dzSim << "\n" << "thetaSIM=" << M_PI/2-lambdaSim << "\n"
980  << "phiSIM=" << phiSim << "\n"
981  << "" << "\n"
982  << "contrib_Qoverp=" << contrib_Qoverp << "\n"<< "contrib_dxy=" << contrib_dxy << "\n"<< "contrib_dz=" << contrib_dz << "\n"
983  << "contrib_theta=" << contrib_theta << "\n"<< "contrib_phi=" << contrib_phi << "\n"
984  << "" << "\n"
985  <<"chi2PULL="<<contrib_Qoverp+contrib_dxy+contrib_dz+contrib_theta+contrib_phi<<"\n";
986 #endif
987 
988  h_pullQoverp[count]->Fill(qoverpPull);
989  h_pullTheta[count]->Fill(thetaPull);
990  h_pullPhi[count]->Fill(phiPull);
991  h_pullDxy[count]->Fill(dxyPull);
992  h_pullDz[count]->Fill(dzPull);
993 
994  const auto etaSim = getEta(momentumTP.eta());
995  const auto ptSim = getPt(sqrt(momentumTP.perp2()));
996 
997  h_pt[count]->Fill(ptres/ptError);
998  h_eta[count]->Fill(etares);
999  //etares_vs_eta[count]->Fill(getEta(track.eta()),etares);
1000  etares_vs_eta[count]->Fill(etaSim, etares);
1001 
1002  //resolution of track params: fill 2D histos
1003  dxyres_vs_eta[count]->Fill(etaSim, dxyRes);
1004  ptres_vs_eta[count]->Fill(etaSim, ptres/ptRec);
1005  dzres_vs_eta[count]->Fill(etaSim, dzRes);
1006  phires_vs_eta[count]->Fill(etaSim, phiRes);
1007  cotThetares_vs_eta[count]->Fill(etaSim, cotThetaRes);
1008 
1009  //same as before but vs pT
1010  dxyres_vs_pt[count]->Fill(ptSim, dxyRes);
1011  ptres_vs_pt[count]->Fill(ptSim, ptres/ptRec);
1012  dzres_vs_pt[count]->Fill(ptSim, dzRes);
1013  phires_vs_pt[count]->Fill(ptSim, phiRes);
1014  cotThetares_vs_pt[count]->Fill(ptSim, cotThetaRes);
1015 
1016  //pulls of track params vs eta: fill 2D histos
1017  dxypull_vs_eta[count]->Fill(etaSim, dxyPull);
1018  ptpull_vs_eta[count]->Fill(etaSim, ptres/ptError);
1019  dzpull_vs_eta[count]->Fill(etaSim, dzPull);
1020  phipull_vs_eta[count]->Fill(etaSim, phiPull);
1021  thetapull_vs_eta[count]->Fill(etaSim, thetaPull);
1022 
1023  //plots vs phi
1024  nhits_vs_phi[count]->Fill(phiRec,track.numberOfValidHits());
1025  chi2_vs_phi[count]->Fill(phiRec,track.normalizedChi2());
1026  ptmean_vs_eta_phi[count]->Fill(phiRec,getEta(track.eta()),ptRec);
1027  phimean_vs_eta_phi[count]->Fill(phiRec,getEta(track.eta()),phiRec);
1028 
1029  ptres_vs_phi[count]->Fill(phiSim, ptres/ptRec);
1030  phires_vs_phi[count]->Fill(phiSim, phiRes);
1031  ptpull_vs_phi[count]->Fill(phiSim, ptres/ptError);
1032  phipull_vs_phi[count]->Fill(phiSim, phiPull);
1033  thetapull_vs_phi[count]->Fill(phiSim, thetaPull);
1034 
1035 
1036 }
std::vector< MonitorElement * > h_pullDz
std::vector< MonitorElement * > ptpull_vs_phi
double normalizedChi2() const
chi-squared divided by n.d.o.f. (or chi-squared * 1e6 if n.d.o.f. is zero)
Definition: TrackBase.h:548
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) ...
double theta() const
polar angle
Definition: TrackBase.h:566
double dxyError() const
error on dxy
Definition: TrackBase.h:783
std::vector< MonitorElement * > h_pullPhi
std::vector< MonitorElement * > phipull_vs_phi
Sin< T >::type sin(const T &t)
Definition: Sin.h:22
std::vector< MonitorElement * > phires_vs_eta
std::vector< MonitorElement * > h_pullDxy
std::vector< MonitorElement * > chi2_vs_phi
std::vector< MonitorElement * > phires_vs_phi
std::vector< MonitorElement * > dzres_vs_eta
std::vector< MonitorElement * > phires_vs_pt
double eta() const
pseudorapidity of momentum vector
Definition: TrackBase.h:638
std::vector< MonitorElement * > h_pullQoverp
T sqrt(T t)
Definition: SSEVec.h:48
std::vector< MonitorElement * > ptpull_vs_eta
std::vector< MonitorElement * > etares_vs_eta
Cos< T >::type cos(const T &t)
Definition: Cos.h:22
Tan< T >::type tan(const T &t)
Definition: Tan.h:22
std::vector< MonitorElement * > nhits_vs_phi
unsigned short numberOfValidHits() const
number of valid hits found
Definition: TrackBase.h:807
std::vector< MonitorElement * > phimean_vs_eta_phi
#define LogTrace(id)
#define M_PI
std::vector< MonitorElement * > dzpull_vs_eta
double dz() const
dz parameter (= dsz/cos(lambda)). This is the track z0 w.r.t (0,0,0) only if the refPoint is close to...
Definition: TrackBase.h:596
double dzError() const
error on dz
Definition: TrackBase.h:801
std::vector< MonitorElement * > thetapull_vs_phi
std::vector< MonitorElement * > dxyres_vs_eta
std::vector< MonitorElement * > h_eta
std::vector< MonitorElement * > h_pt
std::vector< MonitorElement * > cotThetares_vs_pt
std::vector< MonitorElement * > h_pullTheta
std::vector< MonitorElement * > ptmean_vs_eta_phi
std::vector< MonitorElement * > dxypull_vs_eta
std::vector< MonitorElement * > ptres_vs_eta
std::vector< MonitorElement * > phipull_vs_eta
std::vector< MonitorElement * > cotThetares_vs_eta
std::vector< MonitorElement * > ptres_vs_pt
double dxy() const
dxy parameter. (This is the transverse impact parameter w.r.t. to (0,0,0) ONLY if refPoint is close t...
Definition: TrackBase.h:578
std::vector< MonitorElement * > ptres_vs_phi
std::vector< MonitorElement * > thetapull_vs_eta
std::vector< MonitorElement * > dxyres_vs_pt
std::vector< MonitorElement * > dzres_vs_pt
void MTVHistoProducerAlgoForTracker::fill_simAssociated_recoTrack_histos ( int  count,
const reco::Track track 
)

Definition at line 841 of file MTVHistoProducerAlgoForTracker.cc.

References reco::TrackBase::charge(), reco::TrackBase::chi2(), chi2_vs_eta, chi2_vs_nhits, prof2calltree::count, eta, reco::TrackBase::eta(), getEta(), h_charge, h_hits, h_losthits, h_nchi2, h_nchi2_prob, h_nmisslayers_inner, h_nmisslayers_outer, reco::TrackBase::hitPattern(), reco::HitPattern::MISSING_INNER_HITS, reco::HitPattern::MISSING_OUTER_HITS, reco::TrackBase::ndof(), nhits_vs_eta, nLayersWithMeas_vs_eta, nlosthits_vs_eta, reco::TrackBase::normalizedChi2(), nPXBhits_vs_eta, nPXFhits_vs_eta, nPXLlayersWithMeas_vs_eta, nSTRIPlayersWith1dMeas_vs_eta, nSTRIPlayersWith2dMeas_vs_eta, nSTRIPlayersWithMeas_vs_eta, nTEChits_vs_eta, nTIBhits_vs_eta, nTIDhits_vs_eta, nTOBhits_vs_eta, reco::HitPattern::numberOfHits(), reco::TrackBase::numberOfLostHits(), reco::TrackBase::numberOfValidHits(), reco::HitPattern::numberOfValidPixelBarrelHits(), reco::HitPattern::numberOfValidPixelEndcapHits(), reco::HitPattern::numberOfValidStripLayersWithMonoAndStereo(), reco::HitPattern::numberOfValidStripTECHits(), reco::HitPattern::numberOfValidStripTIBHits(), reco::HitPattern::numberOfValidStripTIDHits(), reco::HitPattern::numberOfValidStripTOBHits(), reco::HitPattern::pixelLayersWithMeasurement(), reco::HitPattern::stripLayersWithMeasurement(), and reco::HitPattern::trackerLayersWithMeasurement().

842  {
843  //nchi2 and hits global distributions
844  h_nchi2[count]->Fill(track.normalizedChi2());
845  h_nchi2_prob[count]->Fill(TMath::Prob(track.chi2(),(int)track.ndof()));
846  h_hits[count]->Fill(track.numberOfValidHits());
847  h_losthits[count]->Fill(track.numberOfLostHits());
848  chi2_vs_nhits[count]->Fill(track.numberOfValidHits(),track.normalizedChi2());
849  h_charge[count]->Fill( track.charge() );
852 
853  //chi2 and #hit vs eta: fill 2D histos
854  const auto eta = getEta(track.eta());
855  chi2_vs_eta[count]->Fill(eta, track.normalizedChi2());
856  nhits_vs_eta[count]->Fill(eta, track.numberOfValidHits());
865  int LayersAll = track.hitPattern().stripLayersWithMeasurement();
866  int Layers2D = track.hitPattern().numberOfValidStripLayersWithMonoAndStereo();
867  int Layers1D = LayersAll - Layers2D;
868  nSTRIPlayersWithMeas_vs_eta[count]->Fill(eta, LayersAll);
869  nSTRIPlayersWith1dMeas_vs_eta[count]->Fill(eta, Layers1D);
870  nSTRIPlayersWith2dMeas_vs_eta[count]->Fill(eta, Layers2D);
871 
872  nlosthits_vs_eta[count]->Fill(eta, track.numberOfLostHits());
873 }
std::vector< MonitorElement * > h_nchi2_prob
std::vector< MonitorElement * > nPXFhits_vs_eta
std::vector< MonitorElement * > h_nmisslayers_inner
double normalizedChi2() const
chi-squared divided by n.d.o.f. (or chi-squared * 1e6 if n.d.o.f. is zero)
Definition: TrackBase.h:548
std::vector< MonitorElement * > nTEChits_vs_eta
std::vector< MonitorElement * > h_hits
std::vector< MonitorElement * > nLayersWithMeas_vs_eta
std::vector< MonitorElement * > nTIDhits_vs_eta
std::vector< MonitorElement * > h_nchi2
unsigned short numberOfLostHits() const
number of cases where track crossed a layer without getting a hit.
Definition: TrackBase.h:813
int pixelLayersWithMeasurement() const
Definition: HitPattern.cc:497
int trackerLayersWithMeasurement() const
Definition: HitPattern.cc:516
int numberOfValidStripTOBHits() const
Definition: HitPattern.h:846
std::vector< MonitorElement * > nlosthits_vs_eta
std::vector< MonitorElement * > nSTRIPlayersWith1dMeas_vs_eta
std::vector< MonitorElement * > nPXBhits_vs_eta
double eta() const
pseudorapidity of momentum vector
Definition: TrackBase.h:638
int numberOfValidStripLayersWithMonoAndStereo(uint16_t stripdet, uint16_t layer) const
Definition: HitPattern.cc:339
int numberOfValidPixelBarrelHits() const
Definition: HitPattern.h:821
double chi2() const
chi-squared of the fit
Definition: TrackBase.h:536
std::vector< MonitorElement * > nSTRIPlayersWithMeas_vs_eta
std::vector< MonitorElement * > nTOBhits_vs_eta
double ndof() const
number of degrees of freedom of the fit
Definition: TrackBase.h:542
std::vector< MonitorElement * > nSTRIPlayersWith2dMeas_vs_eta
int numberOfValidStripTIDHits() const
Definition: HitPattern.h:841
unsigned short numberOfValidHits() const
number of valid hits found
Definition: TrackBase.h:807
int numberOfValidStripTECHits() const
Definition: HitPattern.h:851
std::vector< MonitorElement * > h_charge
std::vector< MonitorElement * > chi2_vs_nhits
std::vector< MonitorElement * > h_nmisslayers_outer
std::vector< MonitorElement * > nPXLlayersWithMeas_vs_eta
std::vector< MonitorElement * > nTIBhits_vs_eta
const HitPattern & hitPattern() const
Access the hit pattern, indicating in which Tracker layers the track has hits.
Definition: TrackBase.h:437
int stripLayersWithMeasurement() const
Definition: HitPattern.h:1001
int numberOfValidStripTIBHits() const
Definition: HitPattern.h:836
int numberOfValidPixelEndcapHits() const
Definition: HitPattern.h:826
int charge() const
track electric charge
Definition: TrackBase.h:554
std::vector< MonitorElement * > nhits_vs_eta
std::vector< MonitorElement * > chi2_vs_eta
int numberOfHits(HitCategory category) const
Definition: HitPattern.h:785
std::vector< MonitorElement * > h_losthits
void MTVHistoProducerAlgoForTracker::fill_simTrackBased_histos ( int  numSimTracks)

Definition at line 681 of file MTVHistoProducerAlgoForTracker.cc.

References MonitorElement::Fill(), and h_tracksSIM.

681  {
682  h_tracksSIM->Fill(numSimTracks);
683 }
void Fill(long long x)
void MTVHistoProducerAlgoForTracker::fill_trackBased_histos ( int  count,
int  assTracks,
int  numRecoTracks,
int  numSimTracks 
)

Definition at line 876 of file MTVHistoProducerAlgoForTracker.cc.

References prof2calltree::count, h_fakes, h_tracks, and nrec_vs_nsim.

876  {
877 
878  h_tracks[count]->Fill(assTracks);
879  h_fakes[count]->Fill(numRecoTracks-assTracks);
880  nrec_vs_nsim[count]->Fill(numRecoTracks,numSimTracks);
881 
882 }
std::vector< MonitorElement * > h_fakes
std::vector< MonitorElement * > nrec_vs_nsim
std::vector< MonitorElement * > h_tracks
double MTVHistoProducerAlgoForTracker::getEta ( double  eta)
private
double MTVHistoProducerAlgoForTracker::getPt ( double  pt)
private
void MTVHistoProducerAlgoForTracker::getRecoMomentum ( const reco::Track track,
double &  pt,
double &  ptError,
double &  qoverp,
double &  qoverpError,
double &  lambda,
double &  lambdaError,
double &  phi,
double &  phiError 
) const
private

retrieval of reconstructed momentum components from reco::Track (== mean values for GSF)

Definition at line 1041 of file MTVHistoProducerAlgoForTracker.cc.

References reco::TrackBase::lambda(), reco::TrackBase::lambdaError(), reco::TrackBase::phi(), reco::TrackBase::phiError(), reco::TrackBase::pt(), reco::TrackBase::ptError(), reco::TrackBase::qoverp(), and reco::TrackBase::qoverpError().

Referenced by fill_ResoAndPull_recoTrack_histos().

1043  {
1044  pt = track.pt();
1045  ptError = track.ptError();
1046  qoverp = track.qoverp();
1047  qoverpError = track.qoverpError();
1048  lambda = track.lambda();
1049  lambdaError = track.lambdaError();
1050  phi = track.phi();
1051  phiError = track.phiError();
1052  // cout <<"test1" << endl;
1053 
1054 
1055 
1056 }
double qoverp() const
q / p
Definition: TrackBase.h:560
double phi() const
azimuthal angle of momentum vector
Definition: TrackBase.h:632
double pt() const
track transverse momentum
Definition: TrackBase.h:608
double ptError() const
error on Pt (set to 1000 TeV if charge==0 for safety)
Definition: TrackBase.h:750
double phiError() const
error on phi
Definition: TrackBase.h:777
double lambda() const
Lambda angle.
Definition: TrackBase.h:572
double qoverpError() const
error on signed transverse curvature
Definition: TrackBase.h:744
double lambdaError() const
error on lambda
Definition: TrackBase.h:765
void MTVHistoProducerAlgoForTracker::getRecoMomentum ( const reco::GsfTrack gsfTrack,
double &  pt,
double &  ptError,
double &  qoverp,
double &  qoverpError,
double &  lambda,
double &  lambdaError,
double &  phi,
double &  phiError 
) const
private

retrieval of reconstructed momentum components based on the mode of a reco::GsfTrack

Definition at line 1059 of file MTVHistoProducerAlgoForTracker.cc.

References reco::GsfTrack::lambdaMode(), reco::GsfTrack::lambdaModeError(), reco::GsfTrack::phiMode(), reco::GsfTrack::phiModeError(), reco::GsfTrack::ptMode(), reco::GsfTrack::ptModeError(), reco::GsfTrack::qoverpMode(), and reco::GsfTrack::qoverpModeError().

1061  {
1062 
1063  pt = gsfTrack.ptMode();
1064  ptError = gsfTrack.ptModeError();
1065  qoverp = gsfTrack.qoverpMode();
1066  qoverpError = gsfTrack.qoverpModeError();
1067  lambda = gsfTrack.lambdaMode();
1068  lambdaError = gsfTrack.lambdaModeError();
1069  phi = gsfTrack.phiMode();
1070  phiError = gsfTrack.phiModeError();
1071  // cout <<"test2" << endl;
1072 
1073 }
double phiModeError() const
error on phi from mode
Definition: GsfTrack.h:94
double lambdaMode() const
Lambda angle from mode.
Definition: GsfTrack.h:45
double qoverpMode() const
q/p from mode
Definition: GsfTrack.h:41
double ptModeError() const
error on Pt (set to 1000 TeV if charge==0 for safety) from mode
Definition: GsfTrack.h:81
double qoverpModeError() const
error on signed transverse curvature from mode
Definition: GsfTrack.h:79
double phiMode() const
azimuthal angle of momentum vector from mode
Definition: GsfTrack.h:57
double lambdaModeError() const
error on lambda from mode
Definition: GsfTrack.h:90
double ptMode() const
track transverse momentum from mode
Definition: GsfTrack.h:49

Member Data Documentation

std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::chi2_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::chi2_vs_nhits
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::chi2_vs_phi
private
int MTVHistoProducerAlgoForTracker::cotThetaRes_nbin
private
double MTVHistoProducerAlgoForTracker::cotThetaRes_rangeMax
private
double MTVHistoProducerAlgoForTracker::cotThetaRes_rangeMin
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::cotThetares_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::cotThetares_vs_pt
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::dxypull_vs_eta
private
int MTVHistoProducerAlgoForTracker::dxyRes_nbin
private
double MTVHistoProducerAlgoForTracker::dxyRes_rangeMax
private
double MTVHistoProducerAlgoForTracker::dxyRes_rangeMin
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::dxyres_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::dxyres_vs_pt
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::dzpull_vs_eta
private
int MTVHistoProducerAlgoForTracker::dzRes_nbin
private
double MTVHistoProducerAlgoForTracker::dzRes_rangeMax
private
double MTVHistoProducerAlgoForTracker::dzRes_rangeMin
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::dzres_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::dzres_vs_pt
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::etares_vs_eta
private
std::unique_ptr<GenParticleCustomSelector> MTVHistoProducerAlgoForTracker::generalGpSelector
private

Definition at line 122 of file MTVHistoProducerAlgoForTracker.h.

Referenced by MTVHistoProducerAlgoForTracker().

std::unique_ptr<TrackingParticleSelector> MTVHistoProducerAlgoForTracker::generalTpSelector
private

Definition at line 115 of file MTVHistoProducerAlgoForTracker.h.

Referenced by MTVHistoProducerAlgoForTracker().

std::unique_ptr<GenParticleCustomSelector> MTVHistoProducerAlgoForTracker::GpSelectorForEfficiencyVsEta
private
std::unique_ptr<GenParticleCustomSelector> MTVHistoProducerAlgoForTracker::GpSelectorForEfficiencyVsPhi
private
std::unique_ptr<GenParticleCustomSelector> MTVHistoProducerAlgoForTracker::GpSelectorForEfficiencyVsPt
private
std::unique_ptr<GenParticleCustomSelector> MTVHistoProducerAlgoForTracker::GpSelectorForEfficiencyVsVTXR
private
std::unique_ptr<GenParticleCustomSelector> MTVHistoProducerAlgoForTracker::GpSelectorForEfficiencyVsVTXZ
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_algo
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc23Dlayer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2_dzpvcut
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2_dzpvcut_pt
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2_dzpvsigcut
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2_dzpvsigcut_pt
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2_itpu_eta
private

Definition at line 177 of file MTVHistoProducerAlgoForTracker.h.

std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2_itpu_sig_eta
private

Definition at line 177 of file MTVHistoProducerAlgoForTracker.h.

std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2_itpu_sig_vertcount
private

Definition at line 178 of file MTVHistoProducerAlgoForTracker.h.

std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2_itpu_vertcount
private

Definition at line 178 of file MTVHistoProducerAlgoForTracker.h.

std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2_ootpu_eta
private

Definition at line 179 of file MTVHistoProducerAlgoForTracker.h.

std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2_ootpu_vertcount
private

Definition at line 179 of file MTVHistoProducerAlgoForTracker.h.

std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2chi2
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2dr
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2dxy
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2dxypv
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2dz
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2dzpv
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2eta_sig
private

Definition at line 177 of file MTVHistoProducerAlgoForTracker.h.

std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2hit
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2layer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2phi
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2pixellayer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2pT
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc2pu
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc3Dlayer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc_dzpvcut
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc_dzpvcut_pt
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc_dzpvsigcut
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoc_dzpvsigcut_pt
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assocdr
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assocdxy
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assocdxypv
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assocdz
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assocdzpv
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoceta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assocFraction
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assochi2
private

Definition at line 225 of file MTVHistoProducerAlgoForTracker.h.

std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assochi2_prob
private

Definition at line 225 of file MTVHistoProducerAlgoForTracker.h.

std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assochit
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoclayer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assocphi
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assocpixellayer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assocpT
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assocpu
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assocSharedHit
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assocvertpos
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_assoczpos
private
MonitorElement * MTVHistoProducerAlgoForTracker::h_bunchxSIM
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_charge
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_con_eta
private

Definition at line 181 of file MTVHistoProducerAlgoForTracker.h.

std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_con_vertcount
private

Definition at line 181 of file MTVHistoProducerAlgoForTracker.h.

std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_con_zpos
private

Definition at line 181 of file MTVHistoProducerAlgoForTracker.h.

std::vector<std::vector<MonitorElement*> > MTVHistoProducerAlgoForTracker::h_dedx_estim
private
std::vector<std::vector<MonitorElement*> > MTVHistoProducerAlgoForTracker::h_dedx_nom
private
std::vector<std::vector<MonitorElement*> > MTVHistoProducerAlgoForTracker::h_dedx_sat
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_eta
private
MonitorElement * MTVHistoProducerAlgoForTracker::h_etaSIM
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_fakes
private

Definition at line 159 of file MTVHistoProducerAlgoForTracker.h.

Referenced by bookRecoHistos(), and fill_trackBased_histos().

std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_hits
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_looper3Dlayer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_looperchi2
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_looperdxy
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_looperdxypv
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_looperdz
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_looperdzpv
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_loopereta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_looperhit
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_looperlayer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_looperphi
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_looperpixellayer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_looperpT
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_looperpu
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_losthits
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_misid3Dlayer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_misidchi2
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_misiddxy
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_misiddxypv
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_misiddz
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_misiddzpv
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_misideta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_misidhit
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_misidlayer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_misidphi
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_misidpixellayer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_misidpT
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_misidpu
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_nchi2
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_nchi2_prob
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_nmisslayers_inner
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_nmisslayers_outer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pileup3Dlayer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pileup_dzpvcut
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pileup_dzpvcut_pt
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pileup_dzpvsigcut
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pileup_dzpvsigcut_pt
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pileupchi2
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pileupdr
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pileupdxy
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pileupdxypv
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pileupdz
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pileupdzpv
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pileupeta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pileuphit
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pileuplayer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pileupphi
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pileuppixellayer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pileuppT
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pileuppu
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pt
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_ptshifteta
private

Definition at line 218 of file MTVHistoProducerAlgoForTracker.h.

MonitorElement* MTVHistoProducerAlgoForTracker::h_ptSIM
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pullDxy
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pullDz
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pullPhi
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pullQoverp
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_pullTheta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_reco3Dlayer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_reco_dzpvcut
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_reco_dzpvcut_pt
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_reco_dzpvsigcut
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_reco_dzpvsigcut_pt
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_reco_ootpu_eta
private

Definition at line 180 of file MTVHistoProducerAlgoForTracker.h.

std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_reco_ootpu_vertcount
private

Definition at line 180 of file MTVHistoProducerAlgoForTracker.h.

std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_recochi2
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_recodr
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_recodxy
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_recodxypv
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_recodz
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_recodzpv
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_recoeta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_recohit
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_recolayer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_recophi
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_recopixellayer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_recopT
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_recopu
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simul2_dzpvcut
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simul2_dzpvcut_pt
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simul2_dzpvsigcut
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simul2_dzpvsigcut_pt
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simul3Dlayer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simul_dzpvcut
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simul_dzpvcut_pt
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simul_dzpvsigcut
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simul_dzpvsigcut_pt
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simuldr
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simuldxy
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simuldxypv
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simuldz
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simuldzpv
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simuleta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simulhit
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simullayer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simulphi
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simulpixellayer
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simulpT
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simulpu
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simulvertpos
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_simulzpos
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::h_tracks
private

Definition at line 159 of file MTVHistoProducerAlgoForTracker.h.

Referenced by bookRecoHistos(), and fill_trackBased_histos().

MonitorElement * MTVHistoProducerAlgoForTracker::h_tracksSIM
private

Definition at line 156 of file MTVHistoProducerAlgoForTracker.h.

Referenced by bookSimHistos(), and fill_simTrackBased_histos().

MonitorElement * MTVHistoProducerAlgoForTracker::h_vertposSIM
private
double MTVHistoProducerAlgoForTracker::maxChi2
private
double MTVHistoProducerAlgoForTracker::maxDeDx
private
double MTVHistoProducerAlgoForTracker::maxdr
private
double MTVHistoProducerAlgoForTracker::maxDxy
private
double MTVHistoProducerAlgoForTracker::maxDz
private
double MTVHistoProducerAlgoForTracker::maxDzpvCum
private
double MTVHistoProducerAlgoForTracker::maxDzpvsigCum
private
double MTVHistoProducerAlgoForTracker::maxEta
private
double MTVHistoProducerAlgoForTracker::maxHit
private
double MTVHistoProducerAlgoForTracker::maxLayers
private
double MTVHistoProducerAlgoForTracker::maxPhi
private
double MTVHistoProducerAlgoForTracker::maxPt
private
double MTVHistoProducerAlgoForTracker::maxPu
private
double MTVHistoProducerAlgoForTracker::maxTracks
private
double MTVHistoProducerAlgoForTracker::maxVertcount
private

Definition at line 142 of file MTVHistoProducerAlgoForTracker.h.

Referenced by MTVHistoProducerAlgoForTracker().

double MTVHistoProducerAlgoForTracker::maxVertpos
private
double MTVHistoProducerAlgoForTracker::maxZpos
private
double MTVHistoProducerAlgoForTracker::minChi2
private

Definition at line 140 of file MTVHistoProducerAlgoForTracker.h.

double MTVHistoProducerAlgoForTracker::minDeDx
private
double MTVHistoProducerAlgoForTracker::mindr
private
double MTVHistoProducerAlgoForTracker::minDxy
private
double MTVHistoProducerAlgoForTracker::minDz
private
double MTVHistoProducerAlgoForTracker::minEta
private
double MTVHistoProducerAlgoForTracker::minHit
private
double MTVHistoProducerAlgoForTracker::minLayers
private
double MTVHistoProducerAlgoForTracker::minPhi
private
double MTVHistoProducerAlgoForTracker::minPt
private
double MTVHistoProducerAlgoForTracker::minPu
private
double MTVHistoProducerAlgoForTracker::minTracks
private
double MTVHistoProducerAlgoForTracker::minVertcount
private

Definition at line 142 of file MTVHistoProducerAlgoForTracker.h.

Referenced by MTVHistoProducerAlgoForTracker().

double MTVHistoProducerAlgoForTracker::minVertpos
private
double MTVHistoProducerAlgoForTracker::minZpos
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::nhits_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::nhits_vs_phi
private
int MTVHistoProducerAlgoForTracker::nintChi2
private
int MTVHistoProducerAlgoForTracker::nintDeDx
private
int MTVHistoProducerAlgoForTracker::nintdr
private
int MTVHistoProducerAlgoForTracker::nintDxy
private
int MTVHistoProducerAlgoForTracker::nintDz
private
int MTVHistoProducerAlgoForTracker::nintDzpvCum
private
int MTVHistoProducerAlgoForTracker::nintDzpvsigCum
private
int MTVHistoProducerAlgoForTracker::nintEta
private
int MTVHistoProducerAlgoForTracker::nintHit
private
int MTVHistoProducerAlgoForTracker::nintLayers
private
int MTVHistoProducerAlgoForTracker::nintPhi
private
int MTVHistoProducerAlgoForTracker::nintPt
private
int MTVHistoProducerAlgoForTracker::nintPu
private
int MTVHistoProducerAlgoForTracker::nintTracks
private
int MTVHistoProducerAlgoForTracker::nintVertcount
private

Definition at line 142 of file MTVHistoProducerAlgoForTracker.h.

Referenced by MTVHistoProducerAlgoForTracker().

int MTVHistoProducerAlgoForTracker::nintVertpos
private
int MTVHistoProducerAlgoForTracker::nintZpos
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::nLayersWithMeas_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::nlosthits_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::nPXBhits_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::nPXFhits_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::nPXLlayersWithMeas_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::nrec_vs_nsim
private

Definition at line 196 of file MTVHistoProducerAlgoForTracker.h.

Referenced by bookRecoHistos(), and fill_trackBased_histos().

std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::nrecHit_vs_nsimHit_rec2sim
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::nrecHit_vs_nsimHit_sim2rec
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::nSTRIPlayersWith1dMeas_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::nSTRIPlayersWith2dMeas_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::nSTRIPlayersWithMeas_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::nTEChits_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::nTIBhits_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::nTIDhits_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::nTOBhits_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::phimean_vs_eta_phi
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::phipull_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::phipull_vs_phi
private
int MTVHistoProducerAlgoForTracker::phiRes_nbin
private
double MTVHistoProducerAlgoForTracker::phiRes_rangeMax
private
double MTVHistoProducerAlgoForTracker::phiRes_rangeMin
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::phires_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::phires_vs_phi
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::phires_vs_pt
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::ptmean_vs_eta_phi
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::ptpull_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::ptpull_vs_phi
private
int MTVHistoProducerAlgoForTracker::ptRes_nbin
private
double MTVHistoProducerAlgoForTracker::ptRes_rangeMax
private
double MTVHistoProducerAlgoForTracker::ptRes_rangeMin
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::ptres_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::ptres_vs_phi
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::ptres_vs_pt
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::thetapull_vs_eta
private
std::vector<MonitorElement*> MTVHistoProducerAlgoForTracker::thetapull_vs_phi
private
std::unique_ptr<TrackingParticleSelector> MTVHistoProducerAlgoForTracker::TpSelectorForEfficiencyVsEta
private
std::unique_ptr<TrackingParticleSelector> MTVHistoProducerAlgoForTracker::TpSelectorForEfficiencyVsPhi
private
std::unique_ptr<TrackingParticleSelector> MTVHistoProducerAlgoForTracker::TpSelectorForEfficiencyVsPt
private
std::unique_ptr<TrackingParticleSelector> MTVHistoProducerAlgoForTracker::TpSelectorForEfficiencyVsVTXR
private
std::unique_ptr<TrackingParticleSelector> MTVHistoProducerAlgoForTracker::TpSelectorForEfficiencyVsVTXZ
private
bool MTVHistoProducerAlgoForTracker::useFabsEta
private

Definition at line 129 of file MTVHistoProducerAlgoForTracker.h.

Referenced by getEta(), and MTVHistoProducerAlgoForTracker().

bool MTVHistoProducerAlgoForTracker::useInvPt
private

Definition at line 130 of file MTVHistoProducerAlgoForTracker.h.

Referenced by getPt(), and MTVHistoProducerAlgoForTracker().

bool MTVHistoProducerAlgoForTracker::useLogPt
private