99 using namespace reco::modules;
116 << minPt <<
" <= 0 out of range while requesting log scale. Using minPt = 0.1.";
134 std::vector<double> etaintervalsv;
135 std::vector<double> phiintervalsv;
136 std::vector<double> pTintervalsv;
137 std::vector<double> dxyintervalsv;
138 std::vector<double> dzintervalsv;
139 std::vector<double> vertposintervalsv;
140 std::vector<double> zposintervalsv;
141 std::vector<int> totSIMveta,totASSveta,totASS2veta,totRECveta;
142 std::vector<int> totSIMvpT,totASSvpT,totASS2vpT,totRECvpT;
143 std::vector<int> totSIMv_hit,totASSv_hit,totASS2v_hit,totRECv_hit;
144 std::vector<int> totSIMv_phi,totASSv_phi,totASS2v_phi,totRECv_phi;
145 std::vector<int> totSIMv_dxy,totASSv_dxy,totASS2v_dxy,totRECv_dxy;
146 std::vector<int> totSIMv_dz,totASSv_dz,totASS2v_dz,totRECv_dz;
147 std::vector<int> totSIMv_vertpos,totASSv_vertpos,totSIMv_zpos,totASSv_zpos;
151 etaintervalsv.push_back(
minEta);
154 etaintervalsv.push_back(d);
155 totSIMveta.push_back(0);
156 totASSveta.push_back(0);
157 totASS2veta.push_back(0);
158 totRECveta.push_back(0);
167 pTintervalsv.push_back(
minPt);
172 pTintervalsv.push_back(d);
173 totSIMvpT.push_back(0);
174 totASSvpT.push_back(0);
175 totASS2vpT.push_back(0);
176 totRECvpT.push_back(0);
185 totSIMv_hit.push_back(0);
186 totASSv_hit.push_back(0);
187 totASS2v_hit.push_back(0);
188 totRECv_hit.push_back(0);
196 phiintervalsv.push_back(
minPhi);
199 phiintervalsv.push_back(d);
200 totSIMv_phi.push_back(0);
201 totASSv_phi.push_back(0);
202 totASS2v_phi.push_back(0);
203 totRECv_phi.push_back(0);
212 dxyintervalsv.push_back(
minDxy);
215 dxyintervalsv.push_back(d);
216 totSIMv_dxy.push_back(0);
217 totASSv_dxy.push_back(0);
218 totASS2v_dxy.push_back(0);
219 totRECv_dxy.push_back(0);
229 dzintervalsv.push_back(
minDz);
232 dzintervalsv.push_back(d);
233 totSIMv_dz.push_back(0);
234 totASSv_dz.push_back(0);
235 totASS2v_dz.push_back(0);
236 totRECv_dz.push_back(0);
248 vertposintervalsv.push_back(d);
249 totSIMv_vertpos.push_back(0);
250 totASSv_vertpos.push_back(0);
257 zposintervalsv.push_back(
minZpos);
260 zposintervalsv.push_back(d);
261 totSIMv_zpos.push_back(0);
262 totASSv_zpos.push_back(0);
271 h_etaSIM.push_back(
dbe_->
book1D(
"etaSIM",
"generated pseudorapidity", 500, -2.5, 2.5 ) );
278 h_tracks.push_back(
dbe_->
book1D(
"tracks",
"number of reconstructed tracks",200,-0.5,19.5) );
279 h_fakes.push_back(
dbe_->
book1D(
"fakes",
"number of fake reco tracks",20,-0.5,19.5) );
318 "N of associated tracks (simToReco) vs transverse vert position",
323 h_assoczpos.push_back(
dbe_->
book1D(
"num_assoc(simToReco)_zpos",
"N of associated tracks (simToReco) vs z vert position",
330 h_eta.push_back(
dbe_->
book1D(
"eta",
"pseudorapidity residue", 1000, -0.1, 0.1 ) );
331 h_pt.push_back(
dbe_->
book1D(
"pullPt",
"pull of p_{t}", 100, -10, 10 ) );
587 double dxySim,
double dzSim,
int nSimHits,
589 bool isMatched = track;
690 for (
unsigned int i=0;
i<v_dEdx.size();
i++) {
691 dEdxTrack = v_dEdx.at(
i);
692 dedx = dEdxTrack[trackref].dEdx();
693 nom = dEdxTrack[trackref].numberOfMeasurements();
694 sat = dEdxTrack[trackref].numberOfSaturatedMeasurements();
796 int Layers1D = LayersAll - Layers2D;
814 double qoverpSim = chargeTP/
sqrt(momentumTP.x()*momentumTP.x()+momentumTP.y()*momentumTP.y()+momentumTP.z()*momentumTP.z());
815 double lambdaSim =
M_PI/2-momentumTP.theta();
816 double phiSim = momentumTP.phi();
817 double dxySim = (-vertexTP.x()*
sin(momentumTP.phi())+vertexTP.y()*
cos(momentumTP.phi()));
818 double dzSim = vertexTP.z() - (vertexTP.x()*momentumTP.x()+vertexTP.y()*momentumTP.y())/
sqrt(momentumTP.perp2())
819 * momentumTP.z()/
sqrt(momentumTP.perp2());
825 double qoverpErrorRec(0);
827 double ptErrorRec(0);
829 double lambdaErrorRec(0);
831 double phiErrorRec(0);
854 lambdaRec,lambdaErrorRec, phiRec, phiErrorRec);
857 double ptError = ptErrorRec;
858 double ptres=ptRec-
sqrt(momentumTP.perp2());
859 double etares=track.
eta()-momentumTP.Eta();
862 double dxyRec = track.
dxy(bsPosition);
863 double dzRec = track.
dz(bsPosition);
866 double qoverpPull=(qoverpRec-qoverpSim)/qoverpErrorRec;
867 double thetaPull=(lambdaRec-lambdaSim)/lambdaErrorRec;
868 double phiPull=(phiRec-phiSim)/phiErrorRec;
869 double dxyPull=(dxyRec-dxySim)/track.
dxyError();
870 double dzPull=(dzRec-dzSim)/track.
dzError();
872 double contrib_Qoverp = ((qoverpRec-qoverpSim)/qoverpErrorRec)*
873 ((qoverpRec-qoverpSim)/qoverpErrorRec)/5;
874 double contrib_dxy = ((dxyRec-dxySim)/track.
dxyError())*((dxyRec-dxySim)/track.
dxyError())/5;
875 double contrib_dz = ((dzRec-dzSim)/track.
dzError())*((dzRec-dzSim)/track.
dzError())/5;
876 double contrib_theta = ((lambdaRec-lambdaSim)/lambdaErrorRec)*
877 ((lambdaRec-lambdaSim)/lambdaErrorRec)/5;
878 double contrib_phi = ((phiRec-phiSim)/phiErrorRec)*
879 ((phiRec-phiSim)/phiErrorRec)/5;
884 <<
"ptREC=" << ptRec <<
"\n" <<
"etaREC=" << track.
eta() <<
"\n" <<
"qoverpREC=" << qoverpRec <<
"\n"
885 <<
"dxyREC=" << dxyRec <<
"\n" <<
"dzREC=" << dzRec <<
"\n"
886 <<
"thetaREC=" << track.
theta() <<
"\n" <<
"phiREC=" << phiRec <<
"\n"
888 <<
"qoverpError()=" << qoverpErrorRec <<
"\n" <<
"dxyError()=" << track.
dxyError() <<
"\n"<<
"dzError()="
890 <<
"thetaError()=" << lambdaErrorRec <<
"\n" <<
"phiError()=" << phiErrorRec <<
"\n"
892 <<
"ptSIM=" <<
sqrt(momentumTP.perp2()) <<
"\n"<<
"etaSIM=" << momentumTP.Eta() <<
"\n"<<
"qoverpSIM=" << qoverpSim <<
"\n"
893 <<
"dxySIM=" << dxySim <<
"\n"<<
"dzSIM=" << dzSim <<
"\n" <<
"thetaSIM=" <<
M_PI/2-lambdaSim <<
"\n"
894 <<
"phiSIM=" << phiSim <<
"\n"
896 <<
"contrib_Qoverp=" << contrib_Qoverp <<
"\n"<<
"contrib_dxy=" << contrib_dxy <<
"\n"<<
"contrib_dz=" << contrib_dz <<
"\n"
897 <<
"contrib_theta=" << contrib_theta <<
"\n"<<
"contrib_phi=" << contrib_phi <<
"\n"
899 <<
"chi2PULL="<<contrib_Qoverp+contrib_dxy+contrib_dz+contrib_theta+contrib_phi<<
"\n";
953 double& qoverp,
double& qoverpError,
double& lambda,
double& lambdaError,
954 double&
phi,
double& phiError )
const {
971 double& qoverp,
double& qoverpError,
double& lambda,
double& lambdaError,
972 double&
phi,
double& phiError )
const {
double qoverp() const
q/p
double phiModeError() const
error on phi from mode
T getParameter(std::string const &) const
TrackingParticleSelector * generalTpSelector
std::vector< MonitorElement * > h_assoc2hit
T getUntrackedParameter(std::string const &, T const &) const
std::vector< MonitorElement * > h_dedx_estim2
std::vector< MonitorElement * > h_dzpulletamean
std::vector< MonitorElement * > h_recodxy
std::vector< MonitorElement * > h_assochit
std::vector< MonitorElement * > h_efficPt
std::vector< MonitorElement * > h_fakes
std::vector< std::vector< double > > zposintervals
std::vector< MonitorElement * > h_PXFhits_eta
std::vector< MonitorElement * > h_nchi2_prob
std::vector< MonitorElement * > h_pullDz
virtual ~MTVHistoProducerAlgoForTracker()
TrackingParticleSelector * TpSelectorForEfficiencyVsPhi
void fillPlotFromVectors(MonitorElement *h, std::vector< int > &numerator, std::vector< int > &denominator, std::string type)
std::vector< MonitorElement * > ptpull_vs_phi
std::vector< MonitorElement * > h_assoczpos
std::vector< std::vector< int > > totASS_phi
std::vector< MonitorElement * > nPXFhits_vs_eta
const Vector & momentum() const
track momentum vector
std::vector< MonitorElement * > h_fake_vs_hit
std::vector< MonitorElement * > h_dzmeanh
std::vector< std::vector< int > > totRECeta
void doProfileX(TH2 *th2, MonitorElement *me)
std::vector< MonitorElement * > h_simulzpos
std::vector< std::vector< int > > totASSeta
std::vector< MonitorElement * > nrecHit_vs_nsimHit_rec2sim
std::vector< std::vector< double > > vertposintervals
std::vector< MonitorElement * > h_assoc2pT
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
double lambdaMode() const
Lambda angle from mode.
std::vector< MonitorElement * > h_simulpT
void fillPlotFromVector(MonitorElement *h, std::vector< int > &vec)
std::vector< MonitorElement * > h_ptshifteta
double normalizedChi2() const
chi-squared divided by n.d.o.f. (or chi-squared * 1e6 if n.d.o.f. is zero)
void getRecoMomentum(const reco::Track &track, double &pt, double &ptError, double &qoverp, double &qoverpError, double &lambda, double &lambdaError, double &phi, double &phiError) const
retrieval of reconstructed momentum components from reco::Track (== mean values for GSF) ...
std::vector< MonitorElement * > nTEChits_vs_eta
std::vector< MonitorElement * > h_fake_vs_dz
std::vector< MonitorElement * > h_hits
std::vector< MonitorElement * > h_effic_vs_vertpos
std::vector< std::vector< double > > dxyintervals
double theta() const
polar angle
double dxyError() const
error on dxy
std::vector< MonitorElement * > nLayersWithMeas_vs_eta
std::vector< MonitorElement * > h_pullPhi
std::vector< MonitorElement * > h_fake_vs_dxy
std::vector< MonitorElement * > phipull_vs_phi
std::vector< MonitorElement * > h_dedx_sat1
std::vector< MonitorElement * > h_hits_eta
std::vector< MonitorElement * > h_thetapullphi
void fill_dedx_recoTrack_histos(int count, edm::RefToBase< reco::Track > &trackref, std::vector< edm::ValueMap< reco::DeDxData > > v_dEdx)
Sin< T >::type sin(const T &t)
double getEta(double eta)
std::vector< MonitorElement * > nrec_vs_nsim
std::vector< MonitorElement * > h_ptrmshPt
void fillProfileHistosFromVectors(int counter)
std::vector< MonitorElement * > h_assocdz
std::vector< std::vector< int > > totREC_dz
std::vector< std::vector< int > > totASS2_phi
std::vector< MonitorElement * > nTIDhits_vs_eta
std::vector< MonitorElement * > h_ptSIM
std::vector< MonitorElement * > h_dxypulletamean
std::vector< MonitorElement * > phires_vs_eta
std::vector< MonitorElement * > h_pullDxy
std::vector< MonitorElement * > h_assoc2phi
std::vector< std::vector< int > > totASS_dxy
std::vector< MonitorElement * > h_phipullphi
std::vector< MonitorElement * > h_nchi2
std::vector< MonitorElement * > h_fakeratePt
double phi() const
azimuthal angle of momentum vector
unsigned short numberOfLostHits() const
number of cases where track crossed a layer without getting a hit.
TrackingParticleSelector * TpSelectorForEfficiencyVsVTXZ
std::vector< MonitorElement * > h_dxyrmsh
math::XYZVectorD Vector
point in the space
std::vector< MonitorElement * > h_dzrmshPt
std::vector< MonitorElement * > h_vertposSIM
std::vector< MonitorElement * > h_simuleta
std::vector< std::vector< int > > totSIM_dz
std::vector< MonitorElement * > h_ptpulleta
math::Vector< dimension >::type ParameterVector
parameter vector
int pixelLayersWithMeasurement() const
int numberOfValidStripLayersWithMonoAndStereo() const
std::vector< MonitorElement * > h_TIBhits_eta
std::vector< MonitorElement * > h_thetapullphimean
std::vector< MonitorElement * > h_cotThetameanhPt
std::vector< MonitorElement * > h_phimeanhPhi
void bookRecoHistosForStandaloneRunning()
void fillHistosFromVectors(int counter)
std::vector< MonitorElement * > h_assoc2dz
int trackerLayersWithMeasurement() const
double cotThetaRes_rangeMax
std::vector< MonitorElement * > chi2_vs_phi
int numberOfValidStripTIDHits() const
std::vector< MonitorElement * > h_LayersWithMeas_eta
std::vector< std::vector< int > > totASS_zpos
std::vector< MonitorElement * > h_chi2mean_vs_phi
std::vector< MonitorElement * > h_assocphi
std::vector< MonitorElement * > h_cotThetarmsh
std::vector< MonitorElement * > phires_vs_phi
std::vector< MonitorElement * > dzres_vs_eta
std::vector< MonitorElement * > h_losthits_eta
double qoverpMode() const
q/p from mode
std::vector< MonitorElement * > h_ptmeanhPhi
std::vector< std::vector< int > > totSIM_hit
std::vector< MonitorElement * > nlosthits_vs_eta
std::vector< MonitorElement * > nSTRIPlayersWith1dMeas_vs_eta
std::vector< MonitorElement * > h_phimeanh
double ptModeError() const
error on Pt (set to 1000 TeV if charge==0 for safety) from mode
std::vector< MonitorElement * > h_recohit
std::vector< MonitorElement * > h_thetapulleta
void fill_ResoAndPull_recoTrack_histos(int count, ParticleBase::Vector momentumTP, ParticleBase::Point vertexTP, int chargeTP, const reco::Track &track, math::XYZPoint bsPosition)
std::vector< std::vector< int > > totSIM_zpos
std::vector< std::vector< int > > totASSpT
std::vector< MonitorElement * > h_phipullphimean
std::vector< MonitorElement * > h_dedx_estim1
std::vector< MonitorElement * > h_hits_phi
std::vector< MonitorElement * > phires_vs_pt
SingleObjectSelector< TrackingParticleCollection,::TrackingParticleSelector > TrackingParticleSelector
math::XYZPointD Point
point in the space
std::vector< MonitorElement * > h_STRIPlayersWithMeas_eta
std::vector< std::vector< int > > totASS2eta
std::vector< MonitorElement * > nPXBhits_vs_eta
double eta() const
pseudorapidity of momentum vector
std::vector< std::vector< int > > totASS_hit
std::vector< MonitorElement * > h_assoc2dxy
std::vector< MonitorElement * > h_dxyrmshPt
std::vector< MonitorElement * > h_STRIPlayersWith1dMeas_eta
std::vector< MonitorElement * > h_pullQoverp
int numberOfValidPixelEndcapHits() const
std::vector< std::vector< int > > totSIM_phi
std::vector< std::vector< int > > totASS2pT
std::vector< MonitorElement * > h_fake_vs_phi
void fill_recoAssociated_simTrack_histos(int count, const TrackingParticle &tp, ParticleBase::Vector momentumTP, ParticleBase::Point vertexTP, double dxy, double dz, int nSimHits, const reco::Track *track)
std::vector< MonitorElement * > h_ptpulletamean
double chi2() const
chi-squared of the fit
ParameterVector parameters() const
Track parameters with one-to-one correspondence to the covariance matrix.
std::vector< MonitorElement * > nSTRIPlayersWithMeas_vs_eta
std::vector< MonitorElement * > nTOBhits_vs_eta
std::vector< std::vector< int > > totASS_dz
double ndof() const
number of degrees of freedom of the fit
std::vector< MonitorElement * > ptpull_vs_eta
std::vector< MonitorElement * > etares_vs_eta
void finalHistoFits(int counter)
double pt() const
track transverse momentum
std::vector< MonitorElement * > h_recophi
std::vector< MonitorElement * > h_assocpT
Cos< T >::type cos(const T &t)
std::vector< MonitorElement * > h_ptpullphimean
double ptError() const
error on Pt (set to 1000 TeV if charge==0 for safety)
std::vector< MonitorElement * > nSTRIPlayersWith2dMeas_vs_eta
std::vector< MonitorElement * > h_tracks
std::vector< MonitorElement * > h_chi2meanh
double phiError() const
error on phi
std::vector< MonitorElement * > h_TIDhits_eta
std::vector< MonitorElement * > h_tracksSIM
std::vector< MonitorElement * > h_effic
Tan< T >::type tan(const T &t)
std::vector< MonitorElement * > nhits_vs_phi
std::vector< std::vector< int > > totASS2_dz
double lambda() const
Lambda angle.
std::vector< std::vector< int > > totSIM_vertpos
std::vector< MonitorElement * > h_ptmeanhPt
std::vector< MonitorElement * > h_phirmsh
std::vector< MonitorElement * > nrecHit_vs_nsimHit_sim2rec
int numberOfValidStripTECHits() const
std::vector< std::vector< int > > totRECpT
unsigned short numberOfValidHits() const
number of valid hits found
void fill_simAssociated_recoTrack_histos(int count, const reco::Track &track)
MonitorElement * bookProfile(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, const char *option="s")
std::vector< MonitorElement * > h_phirmshPt
std::vector< MonitorElement * > phimean_vs_eta_phi
std::vector< MonitorElement * > h_charge
const HitPattern & hitPattern() const
Access the hit pattern, indicating in which Tracker layers the track has hits.
std::vector< std::vector< int > > totASS2_hit
std::vector< std::vector< int > > totREC_dxy
std::vector< std::vector< double > > phiintervals
std::vector< MonitorElement * > chi2_vs_nhits
int numberOfValidStripTIBHits() const
double cotThetaRes_rangeMin
std::vector< MonitorElement * > dzpull_vs_eta
std::vector< MonitorElement * > h_simuldz
std::vector< MonitorElement * > h_fakerate
double qoverpError() const
error on signed transverse curvature
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...
double dzError() const
error on dz
std::vector< MonitorElement * > h_ptpullphi
std::vector< MonitorElement * > thetapull_vs_phi
TrackingParticleSelector * TpSelectorForEfficiencyVsPt
std::vector< MonitorElement * > h_simulvertpos
std::vector< MonitorElement * > h_STRIPlayersWith2dMeas_eta
std::vector< MonitorElement * > dxyres_vs_eta
std::vector< MonitorElement * > h_effic_vs_phi
std::vector< MonitorElement * > h_ptrmsh
std::vector< std::vector< int > > totASS_vertpos
std::vector< MonitorElement * > h_chi2meanhitsh
std::vector< MonitorElement * > h_dxymeanhPt
std::vector< MonitorElement * > h_dzpulleta
std::vector< MonitorElement * > nPXLlayersWithMeas_vs_eta
std::vector< std::vector< int > > totSIMpT
std::vector< MonitorElement * > nTIBhits_vs_eta
std::vector< MonitorElement * > h_dxypulleta
std::vector< std::vector< double > > etaintervals
std::vector< MonitorElement * > h_effic_vs_dz
XYZPointD XYZPoint
point in space with cartesian internal representation
std::vector< MonitorElement * > h_phirmshPhi
double qoverpModeError() const
error on signed transverse curvature from mode
std::vector< MonitorElement * > h_eta
std::vector< MonitorElement * > h_pt
std::vector< MonitorElement * > h_PXBhits_eta
std::vector< MonitorElement * > h_phimeanhPt
std::vector< MonitorElement * > h_dedx_nom2
std::vector< MonitorElement * > cotThetares_vs_pt
std::vector< MonitorElement * > h_effic_vs_zpos
std::vector< MonitorElement * > h_etaSIM
std::vector< MonitorElement * > h_simulphi
int stripLayersWithMeasurement() const
std::vector< MonitorElement * > h_pullTheta
int numberOfValidStripTOBHits() const
std::vector< std::vector< int > > totREC_hit
std::vector< MonitorElement * > ptmean_vs_eta_phi
std::vector< std::vector< double > > tmp
double lambdaError() const
error on lambda
std::vector< std::vector< int > > totSIMeta
std::vector< MonitorElement * > dxypull_vs_eta
std::vector< MonitorElement * > ptres_vs_eta
std::vector< MonitorElement * > h_cotThetameanh
std::vector< MonitorElement * > h_dzrmsh
std::vector< MonitorElement * > h_effic_vs_dxy
std::vector< MonitorElement * > phipull_vs_eta
unsigned short found() const
Number of valid hits on track.
std::vector< MonitorElement * > h_TOBhits_eta
std::vector< MonitorElement * > h_TEChits_eta
std::vector< MonitorElement * > h_simulhit
void fill_generic_simTrack_histos(int counter, ParticleBase::Vector, ParticleBase::Point vertex)
std::vector< MonitorElement * > h_dzmeanhPt
std::vector< MonitorElement * > h_recopT
std::vector< std::vector< double > > pTintervals
std::vector< MonitorElement * > h_assocdxy
double phiMode() const
azimuthal angle of momentum vector from mode
int numberOfValidPixelBarrelHits() const
int charge() const
track electric charge
std::vector< MonitorElement * > cotThetares_vs_eta
std::vector< MonitorElement * > h_assocFraction
std::vector< MonitorElement * > h_cotThetarmshPt
std::vector< std::vector< int > > totREC_phi
double lambdaModeError() const
error on lambda from mode
std::vector< MonitorElement * > h_recodz
std::vector< MonitorElement * > ptres_vs_pt
std::vector< MonitorElement * > h_dedx_sat2
MonitorElement * book2D(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY)
Book 2D histogram.
std::vector< MonitorElement * > h_phipulleta
double dxy() const
dxy parameter. (This is the transverse impact parameter w.r.t. to (0,0,0) ONLY if refPoint is close t...
std::vector< MonitorElement * > h_assoceta
std::vector< MonitorElement * > ptres_vs_phi
TrackingParticleSelector * TpSelectorForEfficiencyVsVTXR
std::vector< MonitorElement * > h_assocSharedHit
std::vector< MonitorElement * > h_dxymeanh
std::vector< MonitorElement * > nhits_vs_eta
std::vector< MonitorElement * > h_ptrmshPhi
double ptMode() const
track transverse momentum from mode
std::vector< MonitorElement * > h_effic_vs_hit
std::vector< MonitorElement * > h_simuldxy
std::vector< MonitorElement * > h_assocvertpos
Power< A, B >::type pow(const A &a, const B &b)
void fill_generic_recoTrack_histos(int count, const reco::Track &track, math::XYZPoint bsPosition, bool isMatched)
MTVHistoProducerAlgoForTracker(const edm::ParameterSet &pset)
std::vector< MonitorElement * > h_recoeta
std::vector< MonitorElement * > thetapull_vs_eta
std::vector< std::vector< int > > totSIM_dxy
std::vector< MonitorElement * > chi2_vs_eta
std::vector< MonitorElement * > h_phipulletamean
std::vector< MonitorElement * > h_PXLlayersWithMeas_eta
std::vector< std::vector< double > > dzintervals
std::vector< MonitorElement * > dxyres_vs_pt
std::vector< MonitorElement * > h_dedx_nom1
std::vector< std::vector< int > > totASS2_dxy
std::vector< MonitorElement * > h_losthits
TrackingParticleSelector * TpSelectorForEfficiencyVsEta
std::vector< MonitorElement * > h_assoc2eta
std::vector< MonitorElement * > h_thetapulletamean
MonitorElement * bookProfile2D(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, int nchZ, double lowZ, double highZ, const char *option="s")
std::vector< MonitorElement * > dzres_vs_pt