CMS 3D CMS Logo

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

#include <TrackAnalyzer.h>

Classes

struct  TkParameterMEs
 

Public Member Functions

virtual void analyze (const edm::Event &iEvent, const edm::EventSetup &iSetup, const reco::Track &track)
 
virtual void beginJob (DQMStore *dqmStore_)
 
void doReset (DQMStore *dqmStore_)
 
void doSoftReset (DQMStore *dqmStore_)
 
void setLumiFlag ()
 
 TrackAnalyzer (const edm::ParameterSet &)
 
void undoSoftReset (DQMStore *dqmStore_)
 
virtual ~TrackAnalyzer ()
 

Private Member Functions

void bookHistosForState (std::string sname, DQMStore *dqmStore_)
 
void doTrackerSpecificFillHists (const reco::Track &track)
 
void doTrackerSpecificInitialization (DQMStore *dqmStore_)
 
void fillHistosForState (const edm::EventSetup &iSetup, const reco::Track &track, std::string sname)
 

Private Attributes

MonitorElementalgorithm
 
MonitorElementChi2
 
MonitorElementChi2oNDF
 
MonitorElementChi2oNDF_lumiFlag
 
MonitorElementChi2Prob
 
edm::ParameterSet conf_
 
MonitorElementDistanceOfClosestApproach
 
MonitorElementDistanceOfClosestApproachToBS
 
MonitorElementDistanceOfClosestApproachToBSVsPhi
 
MonitorElementDistanceOfClosestApproachVsEta
 
MonitorElementDistanceOfClosestApproachVsPhi
 
MonitorElementDistanceOfClosestApproachVsTheta
 
bool doAllPlots_
 
bool doBSPlots_
 
bool doDCAPlots_
 
bool doDCAwrt000Plots_
 
bool doGeneralPropertiesPlots_
 
bool doGoodTrack2DChi2Plots_
 
bool doGoodTrackLayersVsPhiVsEtaPerTrack_
 
bool doGoodTrackPlots_
 
bool doGoodTrackRecHitVsPhiVsEtaPerTrack_
 
bool doHitPropertiesPlots_
 
bool doLayersVsPhiVsEtaPerTrack_
 
bool doLumiAnalysis_
 
bool doMeasurementStatePlots_
 
bool doRecHitVsPhiVsEtaPerTrack_
 
bool doTestPlots_
 
bool doThetaPlots_
 
bool doTrackerSpecific_
 
bool doTrackPxPyPlots_
 
MonitorElementGoodTrackAlgorithm
 
MonitorElementGoodTrackChi2oNDF
 
MonitorElementGoodTrackChi2oNDF_lumiFlag
 
MonitorElementGoodTrackChi2oNDFVsEta
 
MonitorElementGoodTrackChi2oNDFVsPhi
 
MonitorElementGoodTrackChi2Prob
 
MonitorElementGoodTrackChi2ProbVsEta
 
MonitorElementGoodTrackChi2ProbVsPhi
 
MonitorElementGoodTrackNumberOfFoundRecHitsPerTrack
 
MonitorElementGoodTrackNumberOfFoundRecHitsPerTrackVsEtaProfile
 
MonitorElementGoodTrackNumberOfFoundRecHitsPerTrackVsPhiProfile
 
MonitorElementGoodTrackNumberOfLayersVsPhiVsEtaPerTrack
 
MonitorElementGoodTrackNumberOfRecHitsPerTrack
 
MonitorElementGoodTrackNumberOfRecHitsPerTrack_lumiFlag
 
MonitorElementGoodTrackNumberOfRecHitsPerTrackVsEtaProfile
 
MonitorElementGoodTrackNumberOfRecHitsPerTrackVsPhiProfile
 
MonitorElementGoodTrackNumberOfRecHitVsPhiVsEtaPerTrack
 
std::string histname
 
MonitorElementNumberOfLayersPerTrack
 
MonitorElementNumberOfLayersVsPhiVsEtaPerTrack
 
MonitorElementNumberOfPixBarrelLayersPerTrack
 
MonitorElementNumberOfPixBarrelLayersPerTrackVsEtaProfile
 
MonitorElementNumberOfPixBarrelLayersPerTrackVsPhiProfile
 
MonitorElementNumberOfPixBarrelRecHitsPerTrack
 
MonitorElementNumberOfPixBarrelRecHitsPerTrackVsEtaProfile
 
MonitorElementNumberOfPixBarrelRecHitsPerTrackVsPhiProfile
 
MonitorElementNumberOfPixEndcapLayersPerTrack
 
MonitorElementNumberOfPixEndcapLayersPerTrackVsEtaProfile
 
MonitorElementNumberOfPixEndcapLayersPerTrackVsPhiProfile
 
MonitorElementNumberOfPixEndcapRecHitsPerTrack
 
MonitorElementNumberOfPixEndcapRecHitsPerTrackVsEtaProfile
 
MonitorElementNumberOfPixEndcapRecHitsPerTrackVsPhiProfile
 
MonitorElementNumberOfRecHitsFoundPerTrack
 
MonitorElementNumberOfRecHitsLostPerTrack
 
MonitorElementNumberOfRecHitsPerTrack
 
MonitorElementNumberOfRecHitsPerTrack_lumiFlag
 
MonitorElementNumberOfRecHitVsPhiVsEtaPerTrack
 
MonitorElementNumberOfTECLayersPerTrack
 
MonitorElementNumberOfTECLayersPerTrackVsEtaProfile
 
MonitorElementNumberOfTECLayersPerTrackVsPhiProfile
 
MonitorElementNumberOfTECRecHitsPerTrack
 
MonitorElementNumberOfTECRecHitsPerTrackVsEtaProfile
 
MonitorElementNumberOfTECRecHitsPerTrackVsPhiProfile
 
MonitorElementNumberOfTIBLayersPerTrack
 
MonitorElementNumberOfTIBLayersPerTrackVsEtaProfile
 
MonitorElementNumberOfTIBLayersPerTrackVsPhiProfile
 
MonitorElementNumberOfTIBRecHitsPerTrack
 
MonitorElementNumberOfTIBRecHitsPerTrackVsEtaProfile
 
MonitorElementNumberOfTIBRecHitsPerTrackVsPhiProfile
 
MonitorElementNumberOfTIDLayersPerTrack
 
MonitorElementNumberOfTIDLayersPerTrackVsEtaProfile
 
MonitorElementNumberOfTIDLayersPerTrackVsPhiProfile
 
MonitorElementNumberOfTIDRecHitsPerTrack
 
MonitorElementNumberOfTIDRecHitsPerTrackVsEtaProfile
 
MonitorElementNumberOfTIDRecHitsPerTrackVsPhiProfile
 
MonitorElementNumberOfTOBLayersPerTrack
 
MonitorElementNumberOfTOBLayersPerTrackVsEtaProfile
 
MonitorElementNumberOfTOBLayersPerTrackVsPhiProfile
 
MonitorElementNumberOfTOBRecHitsPerTrack
 
MonitorElementNumberOfTOBRecHitsPerTrackVsEtaProfile
 
MonitorElementNumberOfTOBRecHitsPerTrackVsPhiProfile
 
MonitorElementTESTDistanceOfClosestApproachToBS
 
MonitorElementTESTDistanceOfClosestApproachToBSVsPhi
 
std::map< std::string,
TkParameterMEs
TkParameterMEMap
 
MonitorElementxPointOfClosestApproach
 
MonitorElementxPointOfClosestApproachVsZ0wrt000
 
MonitorElementxPointOfClosestApproachVsZ0wrtBS
 
MonitorElementyPointOfClosestApproach
 
MonitorElementyPointOfClosestApproachVsZ0wrt000
 
MonitorElementyPointOfClosestApproachVsZ0wrtBS
 
MonitorElementzPointOfClosestApproach
 
MonitorElementzPointOfClosestApproachVsPhi
 

Detailed Description

Definition at line 26 of file TrackAnalyzer.h.

Constructor & Destructor Documentation

TrackAnalyzer::TrackAnalyzer ( const edm::ParameterSet iConfig)

Definition at line 23 of file TrackAnalyzer.cc.

24  : conf_( iConfig )
25  , doTrackerSpecific_ ( conf_.getParameter<bool>("doTrackerSpecific") )
26  , doAllPlots_ ( conf_.getParameter<bool>("doAllPlots") )
27  , doBSPlots_ ( conf_.getParameter<bool>("doBeamSpotPlots") )
28  , doGoodTrackPlots_ ( conf_.getParameter<bool>("doGoodTrackPlots") )
29  , doDCAPlots_ ( conf_.getParameter<bool>("doDCAPlots") )
30  , doGeneralPropertiesPlots_ ( conf_.getParameter<bool>("doGeneralPropertiesPlots") )
31  , doMeasurementStatePlots_ ( conf_.getParameter<bool>("doMeasurementStatePlots") )
32  , doHitPropertiesPlots_ ( conf_.getParameter<bool>("doHitPropertiesPlots") )
33  , doRecHitVsPhiVsEtaPerTrack_ ( conf_.getParameter<bool>("doRecHitVsPhiVsEtaPerTrack") )
34  , doLayersVsPhiVsEtaPerTrack_ ( conf_.getParameter<bool>("doLayersVsPhiVsEtaPerTrack") )
35  , doGoodTrackRecHitVsPhiVsEtaPerTrack_ ( conf_.getParameter<bool>("doGoodTrackRecHitVsPhiVsEtaPerTrack") )
36  , doGoodTrackLayersVsPhiVsEtaPerTrack_ ( conf_.getParameter<bool>("doGoodTrackLayersVsPhiVsEtaPerTrack") )
37  , doGoodTrack2DChi2Plots_ ( conf_.getParameter<bool>("doGoodTrack2DChi2Plots") )
38  , doThetaPlots_ ( conf_.getParameter<bool>("doThetaPlots") )
39  , doTrackPxPyPlots_ ( conf_.getParameter<bool>("doTrackPxPyPlots") )
40  , doDCAwrt000Plots_ ( conf_.getParameter<bool>("doDCAwrt000Plots") )
41  , doLumiAnalysis_ ( conf_.getParameter<bool>("doLumiAnalysis") )
42  , doTestPlots_ ( conf_.getParameter<bool>("doTestPlots") )
49  , Chi2(NULL)
50  , Chi2Prob(NULL)
51  , Chi2oNDF(NULL)
66  , algorithm(NULL)
67  // TESTING MEs
70  // add by mia in order to deal w/ LS transitions
75 
82 
89 
96 
103 
110 
117 
133 {
134 
135  // std::cout << "TrackAnalyzer::TrackAnalyzer() - doGoodTrackPlots_ = " << doGoodTrackPlots_ << std::endl;
136 
137 }
T getParameter(std::string const &) const
MonitorElement * NumberOfPixEndcapLayersPerTrackVsEtaProfile
MonitorElement * NumberOfRecHitsFoundPerTrack
Definition: TrackAnalyzer.h:80
MonitorElement * NumberOfRecHitVsPhiVsEtaPerTrack
Definition: TrackAnalyzer.h:83
bool doTrackerSpecific_
Definition: TrackAnalyzer.h:51
MonitorElement * NumberOfPixEndcapLayersPerTrack
MonitorElement * NumberOfPixBarrelLayersPerTrack
MonitorElement * GoodTrackNumberOfRecHitsPerTrackVsPhiProfile
MonitorElement * GoodTrackChi2ProbVsPhi
MonitorElement * GoodTrackNumberOfRecHitsPerTrack
MonitorElement * NumberOfTOBLayersPerTrackVsPhiProfile
MonitorElement * GoodTrackNumberOfLayersVsPhiVsEtaPerTrack
MonitorElement * NumberOfTIDRecHitsPerTrackVsPhiProfile
MonitorElement * GoodTrackChi2oNDFVsPhi
MonitorElement * Chi2oNDF_lumiFlag
MonitorElement * NumberOfRecHitsLostPerTrack
Definition: TrackAnalyzer.h:81
MonitorElement * NumberOfTIBLayersPerTrack
MonitorElement * NumberOfTOBRecHitsPerTrack
MonitorElement * NumberOfPixEndcapRecHitsPerTrack
MonitorElement * NumberOfTECRecHitsPerTrackVsPhiProfile
MonitorElement * NumberOfPixBarrelRecHitsPerTrackVsPhiProfile
MonitorElement * NumberOfTIBRecHitsPerTrackVsPhiProfile
MonitorElement * NumberOfTIDRecHitsPerTrackVsEtaProfile
edm::ParameterSet conf_
Definition: TrackAnalyzer.h:49
bool doGeneralPropertiesPlots_
Definition: TrackAnalyzer.h:56
MonitorElement * NumberOfPixBarrelRecHitsPerTrackVsEtaProfile
MonitorElement * GoodTrackNumberOfRecHitVsPhiVsEtaPerTrack
MonitorElement * DistanceOfClosestApproachVsPhi
Definition: TrackAnalyzer.h:91
MonitorElement * GoodTrackNumberOfRecHitsPerTrack_lumiFlag
#define NULL
Definition: scimark2.h:8
MonitorElement * GoodTrackNumberOfRecHitsPerTrackVsEtaProfile
MonitorElement * algorithm
bool doHitPropertiesPlots_
Definition: TrackAnalyzer.h:58
MonitorElement * DistanceOfClosestApproach
Definition: TrackAnalyzer.h:88
MonitorElement * NumberOfPixEndcapLayersPerTrackVsPhiProfile
bool doRecHitVsPhiVsEtaPerTrack_
Definition: TrackAnalyzer.h:59
MonitorElement * NumberOfTIBLayersPerTrackVsEtaProfile
MonitorElement * NumberOfRecHitsPerTrack_lumiFlag
bool doMeasurementStatePlots_
Definition: TrackAnalyzer.h:57
MonitorElement * NumberOfRecHitsPerTrack
Definition: TrackAnalyzer.h:79
MonitorElement * NumberOfPixEndcapRecHitsPerTrackVsEtaProfile
MonitorElement * GoodTrackChi2oNDF
MonitorElement * GoodTrackChi2Prob
MonitorElement * TESTDistanceOfClosestApproachToBSVsPhi
MonitorElement * NumberOfTECLayersPerTrackVsEtaProfile
MonitorElement * NumberOfPixBarrelLayersPerTrackVsPhiProfile
MonitorElement * xPointOfClosestApproachVsZ0wrt000
Definition: TrackAnalyzer.h:95
MonitorElement * GoodTrackChi2ProbVsEta
MonitorElement * NumberOfTOBLayersPerTrack
MonitorElement * NumberOfTECLayersPerTrack
bool doDCAwrt000Plots_
Definition: TrackAnalyzer.h:72
MonitorElement * xPointOfClosestApproach
Definition: TrackAnalyzer.h:94
MonitorElement * GoodTrackAlgorithm
MonitorElement * NumberOfTIDRecHitsPerTrack
MonitorElement * xPointOfClosestApproachVsZ0wrtBS
Definition: TrackAnalyzer.h:96
MonitorElement * NumberOfTIDLayersPerTrack
MonitorElement * NumberOfTECRecHitsPerTrackVsEtaProfile
MonitorElement * NumberOfTIDLayersPerTrackVsPhiProfile
bool doGoodTrack2DChi2Plots_
Definition: TrackAnalyzer.h:64
MonitorElement * GoodTrackNumberOfFoundRecHitsPerTrackVsEtaProfile
MonitorElement * DistanceOfClosestApproachVsEta
Definition: TrackAnalyzer.h:93
MonitorElement * zPointOfClosestApproachVsPhi
MonitorElement * NumberOfPixBarrelLayersPerTrackVsEtaProfile
MonitorElement * NumberOfTOBRecHitsPerTrackVsPhiProfile
MonitorElement * Chi2
Definition: TrackAnalyzer.h:85
bool doLumiAnalysis_
Definition: TrackAnalyzer.h:74
MonitorElement * NumberOfTIBLayersPerTrackVsPhiProfile
bool doGoodTrackPlots_
Definition: TrackAnalyzer.h:54
MonitorElement * GoodTrackChi2oNDFVsEta
MonitorElement * yPointOfClosestApproachVsZ0wrtBS
Definition: TrackAnalyzer.h:99
MonitorElement * NumberOfLayersPerTrack
Definition: TrackAnalyzer.h:82
MonitorElement * NumberOfTIBRecHitsPerTrackVsEtaProfile
MonitorElement * NumberOfPixEndcapRecHitsPerTrackVsPhiProfile
MonitorElement * DistanceOfClosestApproachVsTheta
Definition: TrackAnalyzer.h:90
MonitorElement * GoodTrackNumberOfFoundRecHitsPerTrackVsPhiProfile
MonitorElement * NumberOfTECLayersPerTrackVsPhiProfile
MonitorElement * NumberOfTIDLayersPerTrackVsEtaProfile
MonitorElement * NumberOfTOBLayersPerTrackVsEtaProfile
bool doTrackPxPyPlots_
Definition: TrackAnalyzer.h:69
MonitorElement * DistanceOfClosestApproachToBSVsPhi
Definition: TrackAnalyzer.h:92
bool doLayersVsPhiVsEtaPerTrack_
Definition: TrackAnalyzer.h:61
MonitorElement * NumberOfTECRecHitsPerTrack
MonitorElement * yPointOfClosestApproachVsZ0wrt000
Definition: TrackAnalyzer.h:98
bool doGoodTrackRecHitVsPhiVsEtaPerTrack_
Definition: TrackAnalyzer.h:62
MonitorElement * TESTDistanceOfClosestApproachToBS
bool doGoodTrackLayersVsPhiVsEtaPerTrack_
Definition: TrackAnalyzer.h:63
MonitorElement * yPointOfClosestApproach
Definition: TrackAnalyzer.h:97
MonitorElement * NumberOfPixBarrelRecHitsPerTrack
MonitorElement * NumberOfLayersVsPhiVsEtaPerTrack
Definition: TrackAnalyzer.h:84
MonitorElement * Chi2Prob
Definition: TrackAnalyzer.h:86
MonitorElement * zPointOfClosestApproach
MonitorElement * GoodTrackNumberOfFoundRecHitsPerTrack
MonitorElement * DistanceOfClosestApproachToBS
Definition: TrackAnalyzer.h:89
MonitorElement * Chi2oNDF
Definition: TrackAnalyzer.h:87
MonitorElement * GoodTrackChi2oNDF_lumiFlag
MonitorElement * NumberOfTOBRecHitsPerTrackVsEtaProfile
MonitorElement * NumberOfTIBRecHitsPerTrack
TrackAnalyzer::~TrackAnalyzer ( )
virtual

Definition at line 139 of file TrackAnalyzer.cc.

140 {
141 }

Member Function Documentation

void TrackAnalyzer::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup,
const reco::Track track 
)
virtual

Definition at line 573 of file TrackAnalyzer.cc.

References reco::TrackBase::algo(), algorithm, reco::TrackBase::chi2(), Chi2oNDF, Chi2oNDF_lumiFlag, Chi2Prob, conf_, reco::TrackBase::d0(), DistanceOfClosestApproach, DistanceOfClosestApproachToBS, DistanceOfClosestApproachToBSVsPhi, DistanceOfClosestApproachVsEta, DistanceOfClosestApproachVsPhi, DistanceOfClosestApproachVsTheta, doAllPlots_, doBSPlots_, doDCAPlots_, doDCAwrt000Plots_, doGeneralPropertiesPlots_, doGoodTrackLayersVsPhiVsEtaPerTrack_, doGoodTrackPlots_, doGoodTrackRecHitVsPhiVsEtaPerTrack_, doHitPropertiesPlots_, doLayersVsPhiVsEtaPerTrack_, doLumiAnalysis_, doMeasurementStatePlots_, doRecHitVsPhiVsEtaPerTrack_, doTestPlots_, doThetaPlots_, doTrackerSpecific_, doTrackerSpecificFillHists(), reco::TrackBase::dxy(), reco::TrackBase::dz(), reco::TrackBase::eta(), MonitorElement::Fill(), HcalObjRepresent::Fill(), fillHistosForState(), edm::Event::getByLabel(), edm::ParameterSet::getParameter(), GoodTrackAlgorithm, GoodTrackChi2oNDF, GoodTrackChi2oNDF_lumiFlag, GoodTrackChi2oNDFVsEta, GoodTrackChi2oNDFVsPhi, GoodTrackChi2Prob, GoodTrackChi2ProbVsEta, GoodTrackChi2ProbVsPhi, GoodTrackNumberOfFoundRecHitsPerTrack, GoodTrackNumberOfFoundRecHitsPerTrackVsEtaProfile, GoodTrackNumberOfFoundRecHitsPerTrackVsPhiProfile, GoodTrackNumberOfLayersVsPhiVsEtaPerTrack, GoodTrackNumberOfRecHitsPerTrack, GoodTrackNumberOfRecHitsPerTrack_lumiFlag, GoodTrackNumberOfRecHitsPerTrackVsEtaProfile, GoodTrackNumberOfRecHitsPerTrackVsPhiProfile, GoodTrackNumberOfRecHitVsPhiVsEtaPerTrack, reco::TrackBase::highPurity, reco::TrackBase::hitPattern(), reco::TrackBase::ndof(), reco::TrackBase::normalizedChi2(), reco::HitPattern::numberOfHits(), NumberOfLayersPerTrack, NumberOfLayersVsPhiVsEtaPerTrack, reco::TrackBase::numberOfLostHits(), NumberOfRecHitsFoundPerTrack, NumberOfRecHitsLostPerTrack, NumberOfRecHitsPerTrack, NumberOfRecHitsPerTrack_lumiFlag, NumberOfRecHitVsPhiVsEtaPerTrack, reco::TrackBase::numberOfValidHits(), reco::TrackBase::phi(), reco::BeamSpot::position(), reco::TrackBase::pt(), reco::TrackBase::quality(), reco::TrackBase::referencePoint(), TESTDistanceOfClosestApproachToBS, TESTDistanceOfClosestApproachToBSVsPhi, reco::TrackBase::theta(), reco::HitPattern::trackerLayersWithMeasurement(), reco::TrackBase::vx(), reco::TrackBase::vy(), reco::TrackBase::vz(), x, xPointOfClosestApproach, xPointOfClosestApproachVsZ0wrt000, xPointOfClosestApproachVsZ0wrtBS, detailsBasic3DVector::y, yPointOfClosestApproach, yPointOfClosestApproachVsZ0wrt000, yPointOfClosestApproachVsZ0wrtBS, zPointOfClosestApproach, and zPointOfClosestApproachVsPhi.

Referenced by TrackingMonitor::analyze().

574 {
575 
577  // rec hits
578  // originally it was track.recHitsSize(), but it is exploiting extra
579  // therefore it is moved to track.hitPattern().numberOfHits()
583 
584  // 2D plots
587 
588  // layers
590  // 2D plots
593 
594 
595  }
596 
598  // fitting
599  Chi2->Fill(track.chi2());
600  Chi2Prob->Fill(TMath::Prob(track.chi2(),(int)track.ndof()));
601  Chi2oNDF->Fill(track.normalizedChi2());
602 
603  // DCA
604  // temporary patch in order to put back those MEs in Muon Workspace
605  if (doDCAwrt000Plots_) {
607  DistanceOfClosestApproachVsPhi->Fill(track.phi(), track.dxy());
608  }
609  /*
610  http://cmssw.cvs.cern.ch/cgi-bin/cmssw.cgi/CMSSW/DataFormats/TrackReco/interface/TrackBase.h?view=markup
611  vertex() is DEPRECATED !!
612  xPointOfClosestApproach->Fill(track.vertex().x());
613  yPointOfClosestApproach->Fill(track.vertex().y());
614  zPointOfClosestApproach->Fill(track.vertex().z());
615  */
616 
617  // PCA
621 
622  // algorithm
623  algorithm->Fill(static_cast<double>(track.algo()));
624 
625  }
626 
627  if ( doLumiAnalysis_ ) {
630  }
631 
632  if(doBSPlots_ || doAllPlots_)
633  {
634  edm::InputTag bsSrc = conf_.getParameter< edm::InputTag >("beamSpot");
635 
636  edm::Handle<reco::BeamSpot> recoBeamSpotHandle;
637  iEvent.getByLabel(bsSrc,recoBeamSpotHandle);
638  reco::BeamSpot bs = *recoBeamSpotHandle;
639 
641  DistanceOfClosestApproachToBSVsPhi->Fill(track.phi(), track.dxy(bs.position()));
642  zPointOfClosestApproachVsPhi->Fill(track.phi(),track.vz());
643  xPointOfClosestApproachVsZ0wrt000->Fill(track.dz(),track.vx());
644  yPointOfClosestApproachVsZ0wrt000->Fill(track.dz(),track.vy());
645  xPointOfClosestApproachVsZ0wrtBS->Fill(track.dz(bs.position()),(track.vx()-bs.position(track.vz()).x()));
646  yPointOfClosestApproachVsZ0wrtBS->Fill(track.dz(bs.position()),(track.vy()-bs.position(track.vz()).y()));
647  if (doTestPlots_) {
649  TESTDistanceOfClosestApproachToBSVsPhi->Fill(track.phi(), track.dxy(bs.position(track.vz())));
650  }
651  }
652 
653  if(doDCAPlots_ || doAllPlots_)
654  {
655  if (doDCAwrt000Plots_) {
656  if (doThetaPlots_) {
657  DistanceOfClosestApproachVsTheta->Fill(track.theta(), track.d0());
658  }
659  DistanceOfClosestApproachVsEta->Fill(track.eta(), track.d0());
660  }
661  }
662  //Tracker Specific Histograms
664  {
666  }
667 
669  std::string StateName = conf_.getParameter<std::string>("MeasurementState");
670  if (StateName == "All")
671  {
672  fillHistosForState(iSetup, track, std::string("OuterSurface"));
673  fillHistosForState(iSetup, track, std::string("InnerSurface"));
674  fillHistosForState(iSetup, track, std::string("ImpactPoint"));
675  }
676  else if
677  (
678  StateName != "OuterSurface" &&
679  StateName != "InnerSurface" &&
680  StateName != "ImpactPoint" &&
681  StateName != "default"
682  )
683  {
684  fillHistosForState(iSetup, track, std::string("default"));
685  }
686  else
687  {
688  fillHistosForState(iSetup, track, StateName);
689  }
690  }
691 
692  // Good Tracks plots
693  if ( track.quality(reco::TrackBase::highPurity) && track.pt() > 1. ) {
694  if ( doGoodTrackPlots_ || doAllPlots_ ) {
696  GoodTrackChi2Prob->Fill(TMath::Prob(track.chi2(),(int)track.ndof()));
697  GoodTrackChi2oNDFVsPhi->Fill(track.phi(),track.normalizedChi2());
698  GoodTrackChi2ProbVsPhi->Fill(track.phi(),TMath::Prob(track.chi2(),(int)track.ndof()));
699  GoodTrackChi2oNDFVsEta->Fill(track.eta(),track.normalizedChi2());
700  GoodTrackChi2ProbVsEta->Fill(track.eta(),TMath::Prob(track.chi2(),(int)track.ndof()));
701 
702  // originally it was track.recHitsSize(), but it is exploiting extra
703  // therefore it is moved to track.hitPattern().numberOfHits()
706  // algorithm
707  GoodTrackAlgorithm->Fill(static_cast<double>(track.algo()));
712 
715 
718  }
719  if ( doLumiAnalysis_ ) {
722  }
723  }
724 
725 }
T getParameter(std::string const &) const
MonitorElement * NumberOfRecHitsFoundPerTrack
Definition: TrackAnalyzer.h:80
MonitorElement * NumberOfRecHitVsPhiVsEtaPerTrack
Definition: TrackAnalyzer.h:83
bool doTrackerSpecific_
Definition: TrackAnalyzer.h:51
MonitorElement * GoodTrackNumberOfRecHitsPerTrackVsPhiProfile
MonitorElement * GoodTrackChi2ProbVsPhi
double d0() const
dxy parameter in perigee convention (d0 = - dxy)
Definition: TrackBase.h:123
MonitorElement * GoodTrackNumberOfRecHitsPerTrack
MonitorElement * GoodTrackNumberOfLayersVsPhiVsEtaPerTrack
MonitorElement * GoodTrackChi2oNDFVsPhi
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:111
MonitorElement * Chi2oNDF_lumiFlag
MonitorElement * NumberOfRecHitsLostPerTrack
Definition: TrackAnalyzer.h:81
double theta() const
polar angle
Definition: TrackBase.h:117
edm::ParameterSet conf_
Definition: TrackAnalyzer.h:49
bool doGeneralPropertiesPlots_
Definition: TrackAnalyzer.h:56
MonitorElement * GoodTrackNumberOfRecHitVsPhiVsEtaPerTrack
MonitorElement * DistanceOfClosestApproachVsPhi
Definition: TrackAnalyzer.h:91
MonitorElement * GoodTrackNumberOfRecHitsPerTrack_lumiFlag
double phi() const
azimuthal angle of momentum vector
Definition: TrackBase.h:139
unsigned short numberOfLostHits() const
number of cases where track crossed a layer without getting a hit.
Definition: TrackBase.h:234
MonitorElement * GoodTrackNumberOfRecHitsPerTrackVsEtaProfile
MonitorElement * algorithm
bool doHitPropertiesPlots_
Definition: TrackAnalyzer.h:58
MonitorElement * DistanceOfClosestApproach
Definition: TrackAnalyzer.h:88
bool doRecHitVsPhiVsEtaPerTrack_
Definition: TrackAnalyzer.h:59
const Point & referencePoint() const
Reference point on the track.
Definition: TrackBase.h:153
MonitorElement * NumberOfRecHitsPerTrack_lumiFlag
bool doMeasurementStatePlots_
Definition: TrackAnalyzer.h:57
MonitorElement * NumberOfRecHitsPerTrack
Definition: TrackAnalyzer.h:79
void Fill(long long x)
MonitorElement * GoodTrackChi2oNDF
MonitorElement * GoodTrackChi2Prob
TrackAlgorithm algo() const
Definition: TrackBase.h:332
MonitorElement * TESTDistanceOfClosestApproachToBSVsPhi
MonitorElement * xPointOfClosestApproachVsZ0wrt000
Definition: TrackAnalyzer.h:95
double eta() const
pseudorapidity of momentum vector
Definition: TrackBase.h:141
MonitorElement * GoodTrackChi2ProbVsEta
bool doDCAwrt000Plots_
Definition: TrackAnalyzer.h:72
MonitorElement * xPointOfClosestApproach
Definition: TrackAnalyzer.h:94
double chi2() const
chi-squared of the fit
Definition: TrackBase.h:107
MonitorElement * GoodTrackAlgorithm
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
void doTrackerSpecificFillHists(const reco::Track &track)
double ndof() const
number of degrees of freedom of the fit
Definition: TrackBase.h:109
int trackerLayersWithMeasurement() const
Definition: HitPattern.h:705
double pt() const
track transverse momentum
Definition: TrackBase.h:131
MonitorElement * xPointOfClosestApproachVsZ0wrtBS
Definition: TrackAnalyzer.h:96
int numberOfHits() const
Definition: HitPattern.cc:213
unsigned short numberOfValidHits() const
number of valid hits found
Definition: TrackBase.h:232
MonitorElement * GoodTrackNumberOfFoundRecHitsPerTrackVsEtaProfile
const HitPattern & hitPattern() const
Access the hit pattern, indicating in which Tracker layers the track has hits.
Definition: TrackBase.h:223
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
Definition: Event.h:356
MonitorElement * DistanceOfClosestApproachVsEta
Definition: TrackAnalyzer.h:93
MonitorElement * zPointOfClosestApproachVsPhi
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:127
double vz() const
z coordinate of the reference point on track
Definition: TrackBase.h:147
void fillHistosForState(const edm::EventSetup &iSetup, const reco::Track &track, std::string sname)
bool doLumiAnalysis_
Definition: TrackAnalyzer.h:74
bool doGoodTrackPlots_
Definition: TrackAnalyzer.h:54
MonitorElement * GoodTrackChi2oNDFVsEta
MonitorElement * yPointOfClosestApproachVsZ0wrtBS
Definition: TrackAnalyzer.h:99
MonitorElement * NumberOfLayersPerTrack
Definition: TrackAnalyzer.h:82
MonitorElement * DistanceOfClosestApproachVsTheta
Definition: TrackAnalyzer.h:90
MonitorElement * GoodTrackNumberOfFoundRecHitsPerTrackVsPhiProfile
bool quality(const TrackQuality) const
Track quality.
Definition: TrackBase.h:377
double vy() const
y coordinate of the reference point on track
Definition: TrackBase.h:145
MonitorElement * DistanceOfClosestApproachToBSVsPhi
Definition: TrackAnalyzer.h:92
bool doLayersVsPhiVsEtaPerTrack_
Definition: TrackAnalyzer.h:61
MonitorElement * yPointOfClosestApproachVsZ0wrt000
Definition: TrackAnalyzer.h:98
bool doGoodTrackRecHitVsPhiVsEtaPerTrack_
Definition: TrackAnalyzer.h:62
MonitorElement * TESTDistanceOfClosestApproachToBS
bool doGoodTrackLayersVsPhiVsEtaPerTrack_
Definition: TrackAnalyzer.h:63
const Point & position() const
position
Definition: BeamSpot.h:63
MonitorElement * yPointOfClosestApproach
Definition: TrackAnalyzer.h:97
MonitorElement * NumberOfLayersVsPhiVsEtaPerTrack
Definition: TrackAnalyzer.h:84
Definition: DDAxes.h:10
MonitorElement * Chi2Prob
Definition: TrackAnalyzer.h:86
Definition: Chi2.h:17
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:121
MonitorElement * zPointOfClosestApproach
MonitorElement * GoodTrackNumberOfFoundRecHitsPerTrack
MonitorElement * DistanceOfClosestApproachToBS
Definition: TrackAnalyzer.h:89
MonitorElement * Chi2oNDF
Definition: TrackAnalyzer.h:87
MonitorElement * GoodTrackChi2oNDF_lumiFlag
double vx() const
x coordinate of the reference point on track
Definition: TrackBase.h:143
void TrackAnalyzer::beginJob ( DQMStore dqmStore_)
virtual

Definition at line 143 of file TrackAnalyzer.cc.

References algorithm, DQMStore::book1D(), bookHistosForState(), DQMStore::bookProfile(), DQMStore::bookProfile2D(), Chi2oNDF, Chi2oNDF_lumiFlag, Chi2Prob, conf_, DistanceOfClosestApproach, DistanceOfClosestApproachToBS, DistanceOfClosestApproachToBSVsPhi, DistanceOfClosestApproachVsEta, DistanceOfClosestApproachVsPhi, DistanceOfClosestApproachVsTheta, doAllPlots_, doBSPlots_, doDCAPlots_, doDCAwrt000Plots_, doGeneralPropertiesPlots_, doGoodTrackLayersVsPhiVsEtaPerTrack_, doGoodTrackPlots_, doGoodTrackRecHitVsPhiVsEtaPerTrack_, doHitPropertiesPlots_, doLayersVsPhiVsEtaPerTrack_, doLumiAnalysis_, doMeasurementStatePlots_, doRecHitVsPhiVsEtaPerTrack_, doTestPlots_, doThetaPlots_, doTrackerSpecific_, doTrackerSpecificInitialization(), Gflash::EtaMax, Gflash::EtaMin, edm::ParameterSet::getParameter(), MonitorElement::getTH1(), GoodTrackAlgorithm, GoodTrackChi2oNDF, GoodTrackChi2oNDF_lumiFlag, GoodTrackChi2oNDFVsEta, GoodTrackChi2oNDFVsPhi, GoodTrackChi2Prob, GoodTrackChi2ProbVsEta, GoodTrackChi2ProbVsPhi, GoodTrackNumberOfFoundRecHitsPerTrack, GoodTrackNumberOfFoundRecHitsPerTrackVsEtaProfile, GoodTrackNumberOfFoundRecHitsPerTrackVsPhiProfile, GoodTrackNumberOfLayersVsPhiVsEtaPerTrack, GoodTrackNumberOfRecHitsPerTrack, GoodTrackNumberOfRecHitsPerTrack_lumiFlag, GoodTrackNumberOfRecHitsPerTrackVsEtaProfile, GoodTrackNumberOfRecHitsPerTrackVsPhiProfile, GoodTrackNumberOfRecHitVsPhiVsEtaPerTrack, histname, NumberOfLayersPerTrack, NumberOfLayersVsPhiVsEtaPerTrack, NumberOfRecHitsFoundPerTrack, NumberOfRecHitsLostPerTrack, NumberOfRecHitsPerTrack, NumberOfRecHitsPerTrack_lumiFlag, NumberOfRecHitVsPhiVsEtaPerTrack, MonitorElement::setAxisTitle(), DQMStore::setCurrentFolder(), TESTDistanceOfClosestApproachToBS, TESTDistanceOfClosestApproachToBSVsPhi, xPointOfClosestApproach, xPointOfClosestApproachVsZ0wrt000, xPointOfClosestApproachVsZ0wrtBS, yPointOfClosestApproach, yPointOfClosestApproachVsZ0wrt000, yPointOfClosestApproachVsZ0wrtBS, zPointOfClosestApproach, and zPointOfClosestApproachVsPhi.

Referenced by TrackingMonitor::beginJob().

144 {
145 
146  // parameters from the configuration
147  std::string QualName = conf_.getParameter<std::string>("Quality");
148  std::string AlgoName = conf_.getParameter<std::string>("AlgoName");
149  std::string MEFolderName = conf_.getParameter<std::string>("FolderName");
150  std::string MEBSFolderName = conf_.getParameter<std::string>("BSFolderName");
151 
152  // use the AlgoName and Quality Name
153  std::string CatagoryName = QualName != "" ? AlgoName + "_" + QualName : AlgoName;
154 
155  // get binning from the configuration
156  double RecHitMin = conf_.getParameter<double>("RecHitMin");
157  double RecHitMax = conf_.getParameter<double>("RecHitMax");
158 
159  int TKHitBin = conf_.getParameter<int>( "RecHitBin");
160  double TKHitMin = conf_.getParameter<double>("RecHitMin");
161  double TKHitMax = conf_.getParameter<double>("RecHitMax");
162 
163  int TKLostBin = conf_.getParameter<int>( "RecLostBin");
164  double TKLostMin = conf_.getParameter<double>("RecLostMin");
165  double TKLostMax = conf_.getParameter<double>("RecLostMax");
166 
167  int TKLayBin = conf_.getParameter<int>( "RecLayBin");
168  double TKLayMin = conf_.getParameter<double>("RecLayMin");
169  double TKLayMax = conf_.getParameter<double>("RecLayMax");
170 
171  int Chi2Bin = conf_.getParameter<int>( "Chi2Bin");
172  double Chi2Min = conf_.getParameter<double>("Chi2Min");
173  double Chi2Max = conf_.getParameter<double>("Chi2Max");
174 
175  int Chi2NDFBin = conf_.getParameter<int>( "Chi2NDFBin");
176  double Chi2NDFMin = conf_.getParameter<double>("Chi2NDFMin");
177  double Chi2NDFMax = conf_.getParameter<double>("Chi2NDFMax");
178 
179  int Chi2ProbBin = conf_.getParameter<int>( "Chi2ProbBin");
180  double Chi2ProbMin = conf_.getParameter<double>("Chi2ProbMin");
181  double Chi2ProbMax = conf_.getParameter<double>("Chi2ProbMax");
182 
183  int PhiBin = conf_.getParameter<int>( "PhiBin");
184  double PhiMin = conf_.getParameter<double>("PhiMin");
185  double PhiMax = conf_.getParameter<double>("PhiMax");
186 
187  int EtaBin = conf_.getParameter<int>( "EtaBin");
188  double EtaMin = conf_.getParameter<double>("EtaMin");
189  double EtaMax = conf_.getParameter<double>("EtaMax");
190 
191  int ThetaBin = conf_.getParameter<int>( "ThetaBin");
192  double ThetaMin = conf_.getParameter<double>("ThetaMin");
193  double ThetaMax = conf_.getParameter<double>("ThetaMax");
194 
195  int DxyBin = conf_.getParameter<int>( "DxyBin");
196  double DxyMin = conf_.getParameter<double>("DxyMin");
197  double DxyMax = conf_.getParameter<double>("DxyMax");
198 
199  int VXBin = conf_.getParameter<int>( "VXBin");
200  double VXMin = conf_.getParameter<double>("VXMin");
201  double VXMax = conf_.getParameter<double>("VXMax");
202 
203  int VYBin = conf_.getParameter<int>( "VYBin");
204  double VYMin = conf_.getParameter<double>("VYMin");
205  double VYMax = conf_.getParameter<double>("VYMax");
206 
207  int VZBin = conf_.getParameter<int>( "VZBin");
208  double VZMin = conf_.getParameter<double>("VZMin");
209  double VZMax = conf_.getParameter<double>("VZMax");
210 
211  int X0Bin = conf_.getParameter<int>( "X0Bin");
212  double X0Min = conf_.getParameter<double>("X0Min");
213  double X0Max = conf_.getParameter<double>("X0Max");
214 
215  int Y0Bin = conf_.getParameter<int>( "Y0Bin");
216  double Y0Min = conf_.getParameter<double>("Y0Min");
217  double Y0Max = conf_.getParameter<double>("Y0Max");
218 
219  int Z0Bin = conf_.getParameter<int>( "Z0Bin");
220  double Z0Min = conf_.getParameter<double>("Z0Min");
221  double Z0Max = conf_.getParameter<double>("Z0Max");
222 
223  dqmStore_->setCurrentFolder(MEFolderName);
224 
225  // book the Hit Property histograms
226  // ---------------------------------------------------------------------------------//
227 
229 
230  dqmStore_->setCurrentFolder(MEFolderName+"/HitProperties");
231 
232  histname = "NumberOfRecHitsPerTrack_";
233  NumberOfRecHitsPerTrack = dqmStore_->book1D(histname+CatagoryName, histname+CatagoryName, TKHitBin, TKHitMin, TKHitMax);
234  NumberOfRecHitsPerTrack->setAxisTitle("Number of all RecHits of each Track");
235  NumberOfRecHitsPerTrack->setAxisTitle("Number of Tracks", 2);
236 
237  histname = "NumberOfRecHitsFoundPerTrack_";
238  NumberOfRecHitsFoundPerTrack = dqmStore_->book1D(histname+CatagoryName, histname+CatagoryName, TKHitBin, TKHitMin, TKHitMax);
239  NumberOfRecHitsFoundPerTrack->setAxisTitle("Number of RecHits found for each Track");
240  NumberOfRecHitsFoundPerTrack->setAxisTitle("Number of Tracks", 2);
241 
242  histname = "NumberOfRecHitsLostPerTrack_";
243  NumberOfRecHitsLostPerTrack = dqmStore_->book1D(histname+CatagoryName, histname+CatagoryName, TKLostBin, TKLostMin, TKLostMax);
244  NumberOfRecHitsLostPerTrack->setAxisTitle("Number of RecHits lost for each Track");
245  NumberOfRecHitsLostPerTrack->setAxisTitle("Number of Tracks", 2);
246 
247  histname = "NumberOfLayersPerTrack_";
248  NumberOfLayersPerTrack = dqmStore_->book1D(histname+CatagoryName, histname+CatagoryName, TKLayBin, TKLayMin, TKLayMax);
249  NumberOfLayersPerTrack->setAxisTitle("Number of Layers of each Track", 1);
250  NumberOfLayersPerTrack->setAxisTitle("Number of Tracks", 2);
251 
253 
254  histname = "NumberOfRecHitVsPhiVsEtaPerTrack_";
255  NumberOfRecHitVsPhiVsEtaPerTrack = dqmStore_->bookProfile2D(histname+CatagoryName, histname+CatagoryName,
256  EtaBin, EtaMin, EtaMax, PhiBin, PhiMin, PhiMax, 0, 40., "");
259  }
261 
262  histname = "NumberOfLayersVsPhiVsEtaPerTrack_";
263  NumberOfLayersVsPhiVsEtaPerTrack = dqmStore_->bookProfile2D(histname+CatagoryName, histname+CatagoryName,
264  EtaBin, EtaMin, EtaMax, PhiBin, PhiMin, PhiMax, 0, 40., "");
267  }
268  }
269 
270 
271  // book the General Property histograms
272  // ---------------------------------------------------------------------------------//
273 
275 
276  dqmStore_->setCurrentFolder(MEFolderName+"/GeneralProperties");
277 
278  histname = "Chi2_";
279  Chi2 = dqmStore_->book1D(histname+CatagoryName, histname+CatagoryName, Chi2Bin, Chi2Min, Chi2Max);
280  Chi2->setAxisTitle("Track #chi^{2}" ,1);
281  Chi2->setAxisTitle("Number of Tracks",2);
282 
283  histname = "Chi2Prob_";
284  Chi2Prob = dqmStore_->book1D(histname+CatagoryName, histname+CatagoryName, Chi2ProbBin, Chi2ProbMin, Chi2ProbMax);
285  Chi2Prob->setAxisTitle("Track #chi^{2} probability",1);
286  Chi2Prob->setAxisTitle("Number of Tracks" ,2);
287 
288  histname = "Chi2oNDF_";
289  Chi2oNDF = dqmStore_->book1D(histname+CatagoryName, histname+CatagoryName, Chi2NDFBin, Chi2NDFMin, Chi2NDFMax);
290  Chi2oNDF->setAxisTitle("Track #chi^{2}/ndf",1);
291  Chi2oNDF->setAxisTitle("Number of Tracks" ,2);
292 
293  histname = "xPointOfClosestApproach_";
294  xPointOfClosestApproach = dqmStore_->book1D(histname+CatagoryName, histname+CatagoryName, VXBin, VXMin, VXMax);
295  xPointOfClosestApproach->setAxisTitle("x component of Track PCA to beam line (cm)",1);
296  xPointOfClosestApproach->setAxisTitle("Number of Tracks",2);
297 
298  histname = "yPointOfClosestApproach_";
299  yPointOfClosestApproach = dqmStore_->book1D(histname+CatagoryName, histname+CatagoryName, VYBin, VYMin, VYMax);
300  yPointOfClosestApproach->setAxisTitle("y component of Track PCA to beam line (cm)",1);
301  yPointOfClosestApproach->setAxisTitle("Number of Tracks",2);
302 
303  histname = "zPointOfClosestApproach_";
304  zPointOfClosestApproach = dqmStore_->book1D(histname+CatagoryName, histname+CatagoryName, VZBin, VZMin, VZMax);
305  zPointOfClosestApproach->setAxisTitle("z component of Track PCA to beam line (cm)",1);
306  zPointOfClosestApproach->setAxisTitle("Number of Tracks",2);
307 
308  // See DataFormats/TrackReco/interface/TrackBase.h for track algorithm enum definition
309  // http://cmssw.cvs.cern.ch/cgi-bin/cmssw.cgi/CMSSW/DataFormats/TrackReco/interface/TrackBase.h?view=log
310  histname = "algorithm_";
311  algorithm = dqmStore_->book1D(histname+CatagoryName, histname+CatagoryName, 32, 0., 32.);
312  algorithm->setAxisTitle("Tracking algorithm",1);
313  algorithm->setAxisTitle("Number of Tracks",2);
314 
315  }
316 
317  // book LS analysis related histograms
318  // -----------------------------------
319  if ( doLumiAnalysis_ ) {
320  // add by Mia in order to deal w/ LS transitions
321  dqmStore_->setCurrentFolder(MEFolderName+"/LSanalysis");
322 
323  histname = "NumberOfRecHitsPerTrack_lumiFlag_";
324  NumberOfRecHitsPerTrack_lumiFlag = dqmStore_->book1D(histname+CatagoryName, histname+CatagoryName, TKHitBin, TKHitMin, TKHitMax);
325  NumberOfRecHitsPerTrack_lumiFlag->setAxisTitle("Number of all RecHits of each Track");
326  NumberOfRecHitsPerTrack_lumiFlag->setAxisTitle("Number of Tracks", 2);
327 
328  histname = "Chi2oNDF_lumiFlag_";
329  Chi2oNDF_lumiFlag = dqmStore_->book1D(histname+CatagoryName, histname+CatagoryName, Chi2NDFBin, Chi2NDFMin, Chi2NDFMax);
330  Chi2oNDF_lumiFlag->setAxisTitle("Track #chi^{2}/ndf",1);
331  Chi2oNDF_lumiFlag->setAxisTitle("Number of Tracks" ,2);
332 
333  histname = "GoodTrackNumberOfRecHitsPerTrack_lumiFlag_";
334  GoodTrackNumberOfRecHitsPerTrack_lumiFlag = dqmStore_->book1D(histname+CatagoryName, histname+CatagoryName, TKHitBin, TKHitMin, TKHitMax);
335  GoodTrackNumberOfRecHitsPerTrack_lumiFlag->setAxisTitle("Number of all RecHits of each Good Track");
336  GoodTrackNumberOfRecHitsPerTrack_lumiFlag->setAxisTitle("Number of Good Tracks", 2);
337 
338  histname = "GoodTrackChi2oNDF_lumiFlag_";
339  GoodTrackChi2oNDF_lumiFlag = dqmStore_->book1D(histname+CatagoryName, histname+CatagoryName, Chi2NDFBin, Chi2NDFMin, Chi2NDFMax);
340  GoodTrackChi2oNDF_lumiFlag->setAxisTitle("Good Track #chi^{2}/ndf",1);
341  GoodTrackChi2oNDF_lumiFlag->setAxisTitle("Number of Good Tracks" ,2);
342  }
343 
344 
345  // book the Beam Spot related histograms
346  // ---------------------------------------------------------------------------------//
347 
348  if(doBSPlots_ || doAllPlots_)
349  {
350  // dqmStore_->setCurrentFolder(MEBSFolderName);
351  dqmStore_->setCurrentFolder(MEFolderName+"/GeneralProperties");
352 
353  histname = "DistanceOfClosestApproachToBS_";
354  DistanceOfClosestApproachToBS = dqmStore_->book1D(histname+CatagoryName,histname+CatagoryName,DxyBin,DxyMin,DxyMax);
355  DistanceOfClosestApproachToBS->setAxisTitle("Track d_{xy} wrt beam spot (cm)",1);
356  DistanceOfClosestApproachToBS->setAxisTitle("Number of Tracks",2);
357 
358  histname = "DistanceOfClosestApproachToBSVsPhi_";
359  DistanceOfClosestApproachToBSVsPhi = dqmStore_->bookProfile(histname+CatagoryName,histname+CatagoryName, PhiBin, PhiMin, PhiMax, DxyBin, DxyMin, DxyMax,"");
360  DistanceOfClosestApproachToBSVsPhi->getTH1()->SetBit(TH1::kCanRebin);
362  DistanceOfClosestApproachToBSVsPhi->setAxisTitle("Track d_{xy} wrt beam spot (cm)",2);
363 
364  histname = "xPointOfClosestApproachVsZ0wrt000_";
365  xPointOfClosestApproachVsZ0wrt000 = dqmStore_->bookProfile(histname+CatagoryName, histname+CatagoryName, Z0Bin, Z0Min, Z0Max, X0Bin, X0Min, X0Max,"");
367  xPointOfClosestApproachVsZ0wrt000->setAxisTitle("x component of Track PCA to beam line (cm)",2);
368 
369  histname = "yPointOfClosestApproachVsZ0wrt000_";
370  yPointOfClosestApproachVsZ0wrt000 = dqmStore_->bookProfile(histname+CatagoryName, histname+CatagoryName, Z0Bin, Z0Min, Z0Max, Y0Bin, Y0Min, Y0Max,"");
372  yPointOfClosestApproachVsZ0wrt000->setAxisTitle("y component of Track PCA to beam line (cm)",2);
373 
374  histname = "xPointOfClosestApproachVsZ0wrtBS_";
375  xPointOfClosestApproachVsZ0wrtBS = dqmStore_->bookProfile(histname+CatagoryName, histname+CatagoryName, Z0Bin, Z0Min, Z0Max, X0Bin, X0Min, X0Max,"");
376  xPointOfClosestApproachVsZ0wrtBS->setAxisTitle("d_{z} w.r.t. Beam Spot (cm)",1);
377  xPointOfClosestApproachVsZ0wrtBS->setAxisTitle("x component of Track PCA to BS (cm)",2);
378 
379  histname = "yPointOfClosestApproachVsZ0wrtBS_";
380  yPointOfClosestApproachVsZ0wrtBS = dqmStore_->bookProfile(histname+CatagoryName, histname+CatagoryName, Z0Bin, Z0Min, Z0Max, Y0Bin, Y0Min, Y0Max,"");
381  yPointOfClosestApproachVsZ0wrtBS->setAxisTitle("d_{z} w.r.t. Beam Spot (cm)",1);
382  yPointOfClosestApproachVsZ0wrtBS->setAxisTitle("y component of Track PCA to BS (cm)",2);
383 
384  histname = "zPointOfClosestApproachVsPhi_";
385  zPointOfClosestApproachVsPhi = dqmStore_->bookProfile(histname+CatagoryName, histname+CatagoryName, PhiBin, PhiMin, PhiMax, VZBin, VZMin, VZMax, "");
387  zPointOfClosestApproachVsPhi->setAxisTitle("y component of Track PCA to beam line (cm)",2);
388 
389  if (doTestPlots_) {
390 
391  histname = "TESTDistanceOfClosestApproachToBS_";
392  TESTDistanceOfClosestApproachToBS = dqmStore_->book1D(histname+CatagoryName,histname+CatagoryName,DxyBin,DxyMin,DxyMax);
393  TESTDistanceOfClosestApproachToBS->setAxisTitle("Track d_{xy} wrt beam spot (cm)",1);
394  TESTDistanceOfClosestApproachToBS->setAxisTitle("Number of Tracks",2);
395 
396  histname = "TESTDistanceOfClosestApproachToBSVsPhi_";
397  TESTDistanceOfClosestApproachToBSVsPhi = dqmStore_->bookProfile(histname+CatagoryName,histname+CatagoryName, PhiBin, PhiMin, PhiMax, DxyBin, DxyMin, DxyMax,"");
398  TESTDistanceOfClosestApproachToBSVsPhi->getTH1()->SetBit(TH1::kCanRebin);
400  TESTDistanceOfClosestApproachToBSVsPhi->setAxisTitle("Track d_{xy} wrt beam spot (cm)",2);
401 
402  }
403 
404  }
405 
406  // book the Profile plots for DCA related histograms
407  // ---------------------------------------------------------------------------------//
408  if(doDCAPlots_ || doAllPlots_)
409  {
410  if (doDCAwrt000Plots_) {
411  if (doThetaPlots_) {
412  dqmStore_->setCurrentFolder(MEFolderName+"/GeneralProperties");
413  histname = "DistanceOfClosestApproachVsTheta_";
414  DistanceOfClosestApproachVsTheta = dqmStore_->bookProfile(histname+CatagoryName,histname+CatagoryName, ThetaBin, ThetaMin, ThetaMax, DxyMin,DxyMax,"");
416  DistanceOfClosestApproachVsTheta->setAxisTitle("Track d_{xy} wrt (0,0,0) (cm)",2);
417  }
418 
419  histname = "DistanceOfClosestApproachVsEta_";
420  DistanceOfClosestApproachVsEta = dqmStore_->bookProfile(histname+CatagoryName,histname+CatagoryName, EtaBin, EtaMin, EtaMax, DxyMin, DxyMax,"");
422  DistanceOfClosestApproachVsEta->setAxisTitle("Track d_{xy} wrt (0,0,0) (cm)",2);
423  // temporary patch in order to put back those MEs in Muon Workspace
424 
425  histname = "DistanceOfClosestApproach_";
426  DistanceOfClosestApproach = dqmStore_->book1D(histname+CatagoryName,histname+CatagoryName,DxyBin,DxyMin,DxyMax);
427  DistanceOfClosestApproach->setAxisTitle("Track d_{xy} wrt (0,0,0) (cm)",1);
428  DistanceOfClosestApproach->setAxisTitle("Number of Tracks",2);
429 
430  histname = "DistanceOfClosestApproachVsPhi_";
431  DistanceOfClosestApproachVsPhi = dqmStore_->bookProfile(histname+CatagoryName,histname+CatagoryName, PhiBin, PhiMin, PhiMax, DxyMin,DxyMax,"");
432  DistanceOfClosestApproachVsPhi->getTH1()->SetBit(TH1::kCanRebin);
434  DistanceOfClosestApproachVsPhi->setAxisTitle("Track d_{xy} wrt (0,0,0) (cm)",2);
435  }
436  }
437 
438 
439  // book tracker specific related histograms
440  // ---------------------------------------------------------------------------------//
442  {
444  }
445 
446  // book state related histograms
447  // ---------------------------------------------------------------------------------//
449 
450  std::string StateName = conf_.getParameter<std::string>("MeasurementState");
451 
452  if (StateName == "All")
453  {
454  bookHistosForState("OuterSurface", dqmStore_);
455  bookHistosForState("InnerSurface", dqmStore_);
456  bookHistosForState("ImpactPoint" , dqmStore_);
457  }
458  else if
459  (
460  StateName != "OuterSurface" &&
461  StateName != "InnerSurface" &&
462  StateName != "ImpactPoint" &&
463  StateName != "default"
464  )
465  {
466  bookHistosForState("default", dqmStore_);
467  }
468  else
469  {
470  bookHistosForState(StateName, dqmStore_);
471  }
472  }
473 
474  // book histos for good tracks (HP + Pt>1GeV)
475  // ---------------------------------------------------------------------------------//
476 
477  if ( doGoodTrackPlots_ || doAllPlots_ ) {
478 
479  dqmStore_->setCurrentFolder(MEFolderName+"/GeneralProperties/GoodTracks");
480 
481  histname = "GoodTrackChi2oNDF_";
482  GoodTrackChi2oNDF = dqmStore_->book1D(histname+CatagoryName, histname+CatagoryName, Chi2NDFBin, Chi2NDFMin, Chi2NDFMax);
483  GoodTrackChi2oNDF->setAxisTitle("Good Track #chi^{2}/ndf",1);
484  GoodTrackChi2oNDF->setAxisTitle("Number of Good Tracks" ,2);
485 
486  histname = "GoodTrackChi2Prob_";
487  GoodTrackChi2Prob = dqmStore_->book1D(histname+CatagoryName, histname+CatagoryName, Chi2ProbBin, Chi2ProbMin, Chi2ProbMax);
488  GoodTrackChi2Prob->setAxisTitle("Good Track #chi^{2} probability",1);
489  GoodTrackChi2Prob->setAxisTitle("Number of Good Tracks" ,2);
490 
491  histname = "GoodTrackChi2oNDFVsPhi_";
492  GoodTrackChi2oNDFVsPhi = dqmStore_->bookProfile(histname+CatagoryName, histname+CatagoryName, PhiBin, PhiMin, PhiMax, Chi2NDFMin, Chi2NDFMax);
493  GoodTrackChi2oNDFVsPhi->setAxisTitle("Good Tracks #phi" ,1);
494  GoodTrackChi2oNDFVsPhi->setAxisTitle("Good Track #chi^{2}/ndf",2);
495 
496  histname = "GoodTrackChi2ProbVsPhi_";
497  GoodTrackChi2ProbVsPhi = dqmStore_->bookProfile(histname+CatagoryName, histname+CatagoryName, PhiBin, PhiMin, PhiMax, Chi2ProbMin, Chi2ProbMax);
498  GoodTrackChi2ProbVsPhi->setAxisTitle("Good Tracks #phi" ,1);
499  GoodTrackChi2ProbVsPhi->setAxisTitle("Good Track #chi^{2} probability",2);
500 
501  histname = "GoodTrackChi2oNDFVsEta_";
502  GoodTrackChi2oNDFVsEta = dqmStore_->bookProfile(histname+CatagoryName, histname+CatagoryName, EtaBin, EtaMin, EtaMax, Chi2NDFMin, Chi2NDFMax);
503  GoodTrackChi2oNDFVsEta->setAxisTitle("Good Tracks #eta" ,1);
504  GoodTrackChi2oNDFVsEta->setAxisTitle("Good Track #chi^{2}/ndf",2);
505 
506  histname = "GoodTrackChi2ProbVsEta_";
507  GoodTrackChi2ProbVsEta = dqmStore_->bookProfile(histname+CatagoryName, histname+CatagoryName, EtaBin, EtaMin, EtaMax, Chi2ProbMin, Chi2ProbMax);
508  GoodTrackChi2ProbVsEta->setAxisTitle("Good Tracks #eta" ,1);
509  GoodTrackChi2ProbVsEta->setAxisTitle("Good Track #chi^{2} probability",2);
510 
511  histname = "GoodTrackAlgorithm_";
512  GoodTrackAlgorithm = dqmStore_->book1D(histname+CatagoryName, histname+CatagoryName, 32, 0., 32.);
513  GoodTrackAlgorithm->setAxisTitle("Good Track tracking algorithm",1);
514  GoodTrackAlgorithm->setAxisTitle("Number of Good Tracks",2);
515 
516 
517  dqmStore_->setCurrentFolder(MEFolderName+"/HitProperties/GoodTracks");
518 
519  histname = "GoodTrackNumberOfRecHitsPerTrack_";
520  GoodTrackNumberOfRecHitsPerTrack = dqmStore_->book1D(histname+CatagoryName, histname+CatagoryName, TKHitBin, TKHitMin, TKHitMax);
521  GoodTrackNumberOfRecHitsPerTrack->setAxisTitle("Number of all RecHits of each Good Track");
522  GoodTrackNumberOfRecHitsPerTrack->setAxisTitle("Number of Good Tracks", 2);
523 
524  histname = "GoodTrackNumberOfRecHitsFoundPerTrack_";
525  GoodTrackNumberOfFoundRecHitsPerTrack = dqmStore_->book1D(histname+CatagoryName, histname+CatagoryName, TKHitBin, TKHitMin, TKHitMax);
526  GoodTrackNumberOfFoundRecHitsPerTrack->setAxisTitle("Number of found RecHits of each Good Track");
527  GoodTrackNumberOfFoundRecHitsPerTrack->setAxisTitle("Number of Good Tracks", 2);
528 
530 
531  histname = "GoodTrackNumberOfRecHitVsPhiVsEtaPerTrack_";
532  GoodTrackNumberOfRecHitVsPhiVsEtaPerTrack = dqmStore_->bookProfile2D(histname+CatagoryName, histname+CatagoryName,
533  EtaBin, EtaMin, EtaMax, PhiBin, PhiMin, PhiMax, 0, 40., "");
536  }
537 
539 
540  histname = "GoodTrackNumberOfLayersVsPhiVsEtaPerTrack_";
541  GoodTrackNumberOfLayersVsPhiVsEtaPerTrack = dqmStore_->bookProfile2D(histname+CatagoryName, histname+CatagoryName,
542  EtaBin, EtaMin, EtaMax, PhiBin, PhiMin, PhiMax, 0, 40., "");
545  }
546  // rechits
547  histname = "GoodTrackNumberOfRecHitsPerTrackVsPhiProfile_";
548  GoodTrackNumberOfRecHitsPerTrackVsPhiProfile = dqmStore_->bookProfile(histname+CatagoryName, histname+CatagoryName, PhiBin, PhiMin, PhiMax, RecHitMin, RecHitMax,"");
550  GoodTrackNumberOfRecHitsPerTrackVsPhiProfile->setAxisTitle("Number of RecHits of each Track",2);
551 
552  histname = "GoodTrackNumberOfRecHitsPerTrackVsEtaProfile_";
553  GoodTrackNumberOfRecHitsPerTrackVsEtaProfile = dqmStore_->bookProfile(histname+CatagoryName, histname+CatagoryName, EtaBin, EtaMin, EtaMax, RecHitMin, RecHitMax,"");
555  GoodTrackNumberOfRecHitsPerTrackVsEtaProfile->setAxisTitle("Number of RecHits of each Track",2);
556 
557  histname = "GoodTrackNumberOfFoundRecHitsPerTrackVsPhiProfile_";
558  GoodTrackNumberOfFoundRecHitsPerTrackVsPhiProfile = dqmStore_->bookProfile(histname+CatagoryName, histname+CatagoryName, PhiBin, PhiMin, PhiMax, RecHitMin, RecHitMax,"");
560  GoodTrackNumberOfFoundRecHitsPerTrackVsPhiProfile->setAxisTitle("Number of found RecHits of each Track",2);
561 
562  histname = "GoodTrackNumberOfFoundRecHitsPerTrackVsEtaProfile_";
563  GoodTrackNumberOfFoundRecHitsPerTrackVsEtaProfile = dqmStore_->bookProfile(histname+CatagoryName, histname+CatagoryName, EtaBin, EtaMin, EtaMax, RecHitMin, RecHitMax,"");
565  GoodTrackNumberOfFoundRecHitsPerTrackVsEtaProfile->setAxisTitle("Number of found RecHits of each Track",2);
566 
567  }
568 
569 }
T getParameter(std::string const &) const
MonitorElement * NumberOfRecHitsFoundPerTrack
Definition: TrackAnalyzer.h:80
MonitorElement * NumberOfRecHitVsPhiVsEtaPerTrack
Definition: TrackAnalyzer.h:83
bool doTrackerSpecific_
Definition: TrackAnalyzer.h:51
MonitorElement * GoodTrackNumberOfRecHitsPerTrackVsPhiProfile
MonitorElement * GoodTrackChi2ProbVsPhi
MonitorElement * GoodTrackNumberOfRecHitsPerTrack
MonitorElement * GoodTrackNumberOfLayersVsPhiVsEtaPerTrack
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
Definition: DQMStore.cc:717
MonitorElement * GoodTrackChi2oNDFVsPhi
MonitorElement * Chi2oNDF_lumiFlag
MonitorElement * NumberOfRecHitsLostPerTrack
Definition: TrackAnalyzer.h:81
edm::ParameterSet conf_
Definition: TrackAnalyzer.h:49
bool doGeneralPropertiesPlots_
Definition: TrackAnalyzer.h:56
MonitorElement * GoodTrackNumberOfRecHitVsPhiVsEtaPerTrack
MonitorElement * DistanceOfClosestApproachVsPhi
Definition: TrackAnalyzer.h:91
MonitorElement * GoodTrackNumberOfRecHitsPerTrack_lumiFlag
MonitorElement * GoodTrackNumberOfRecHitsPerTrackVsEtaProfile
MonitorElement * algorithm
const double EtaMax[kNumberCalorimeter]
bool doHitPropertiesPlots_
Definition: TrackAnalyzer.h:58
MonitorElement * DistanceOfClosestApproach
Definition: TrackAnalyzer.h:88
bool doRecHitVsPhiVsEtaPerTrack_
Definition: TrackAnalyzer.h:59
MonitorElement * NumberOfRecHitsPerTrack_lumiFlag
bool doMeasurementStatePlots_
Definition: TrackAnalyzer.h:57
MonitorElement * NumberOfRecHitsPerTrack
Definition: TrackAnalyzer.h:79
MonitorElement * GoodTrackChi2oNDF
MonitorElement * GoodTrackChi2Prob
void bookHistosForState(std::string sname, DQMStore *dqmStore_)
MonitorElement * TESTDistanceOfClosestApproachToBSVsPhi
MonitorElement * xPointOfClosestApproachVsZ0wrt000
Definition: TrackAnalyzer.h:95
MonitorElement * GoodTrackChi2ProbVsEta
bool doDCAwrt000Plots_
Definition: TrackAnalyzer.h:72
void doTrackerSpecificInitialization(DQMStore *dqmStore_)
MonitorElement * xPointOfClosestApproach
Definition: TrackAnalyzer.h:94
MonitorElement * GoodTrackAlgorithm
MonitorElement * xPointOfClosestApproachVsZ0wrtBS
Definition: TrackAnalyzer.h:96
TH1 * getTH1(void) const
const double EtaMin[kNumberCalorimeter]
MonitorElement * GoodTrackNumberOfFoundRecHitsPerTrackVsEtaProfile
MonitorElement * bookProfile(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, const char *option="s")
Definition: DQMStore.cc:1031
MonitorElement * DistanceOfClosestApproachVsEta
Definition: TrackAnalyzer.h:93
MonitorElement * zPointOfClosestApproachVsPhi
bool doLumiAnalysis_
Definition: TrackAnalyzer.h:74
bool doGoodTrackPlots_
Definition: TrackAnalyzer.h:54
MonitorElement * GoodTrackChi2oNDFVsEta
MonitorElement * yPointOfClosestApproachVsZ0wrtBS
Definition: TrackAnalyzer.h:99
MonitorElement * NumberOfLayersPerTrack
Definition: TrackAnalyzer.h:82
MonitorElement * DistanceOfClosestApproachVsTheta
Definition: TrackAnalyzer.h:90
MonitorElement * GoodTrackNumberOfFoundRecHitsPerTrackVsPhiProfile
MonitorElement * DistanceOfClosestApproachToBSVsPhi
Definition: TrackAnalyzer.h:92
bool doLayersVsPhiVsEtaPerTrack_
Definition: TrackAnalyzer.h:61
MonitorElement * yPointOfClosestApproachVsZ0wrt000
Definition: TrackAnalyzer.h:98
bool doGoodTrackRecHitVsPhiVsEtaPerTrack_
Definition: TrackAnalyzer.h:62
MonitorElement * TESTDistanceOfClosestApproachToBS
bool doGoodTrackLayersVsPhiVsEtaPerTrack_
Definition: TrackAnalyzer.h:63
MonitorElement * yPointOfClosestApproach
Definition: TrackAnalyzer.h:97
MonitorElement * NumberOfLayersVsPhiVsEtaPerTrack
Definition: TrackAnalyzer.h:84
MonitorElement * Chi2Prob
Definition: TrackAnalyzer.h:86
Definition: Chi2.h:17
MonitorElement * zPointOfClosestApproach
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
MonitorElement * GoodTrackNumberOfFoundRecHitsPerTrack
MonitorElement * DistanceOfClosestApproachToBS
Definition: TrackAnalyzer.h:89
MonitorElement * Chi2oNDF
Definition: TrackAnalyzer.h:87
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:429
std::string histname
MonitorElement * GoodTrackChi2oNDF_lumiFlag
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")
Definition: DQMStore.cc:1175
void TrackAnalyzer::bookHistosForState ( std::string  sname,
DQMStore dqmStore_ 
)
private

Definition at line 730 of file TrackAnalyzer.cc.

References DQMStore::book1D(), DQMStore::bookProfile(), TrackAnalyzer::TkParameterMEs::Chi2oNDFVsEta, TrackAnalyzer::TkParameterMEs::Chi2oNDFVsPhi, TrackAnalyzer::TkParameterMEs::Chi2oNDFVsTheta, conf_, doAllPlots_, doGoodTrackPlots_, doThetaPlots_, doTrackPxPyPlots_, Gflash::EtaMax, Gflash::EtaMin, edm::ParameterSet::getParameter(), TrackAnalyzer::TkParameterMEs::GoodTrackEta, TrackAnalyzer::TkParameterMEs::GoodTrackPhi, TrackAnalyzer::TkParameterMEs::GoodTrackPt, histname, TrackAnalyzer::TkParameterMEs::NumberOfLayersPerTrackVsEtaProfile, TrackAnalyzer::TkParameterMEs::NumberOfLayersPerTrackVsPhiProfile, TrackAnalyzer::TkParameterMEs::NumberOfLayersPerTrackVsThetaProfile, TrackAnalyzer::TkParameterMEs::NumberOfRecHitsPerTrackVsEtaProfile, TrackAnalyzer::TkParameterMEs::NumberOfRecHitsPerTrackVsPhiProfile, TrackAnalyzer::TkParameterMEs::NumberOfRecHitsPerTrackVsThetaProfile, MonitorElement::setAxisTitle(), DQMStore::setCurrentFolder(), TkParameterMEMap, TrackAnalyzer::TkParameterMEs::TrackEta, TrackAnalyzer::TkParameterMEs::TrackEtaErr, TrackAnalyzer::TkParameterMEs::TrackP, TrackAnalyzer::TkParameterMEs::TrackPErr, TrackAnalyzer::TkParameterMEs::TrackPhi, TrackAnalyzer::TkParameterMEs::TrackPhiErr, TrackAnalyzer::TkParameterMEs::TrackPt, TrackAnalyzer::TkParameterMEs::TrackPtErr, TrackAnalyzer::TkParameterMEs::TrackPtErrVsEta, TrackAnalyzer::TkParameterMEs::TrackPx, TrackAnalyzer::TkParameterMEs::TrackPxErr, TrackAnalyzer::TkParameterMEs::TrackPy, TrackAnalyzer::TkParameterMEs::TrackPyErr, TrackAnalyzer::TkParameterMEs::TrackPz, TrackAnalyzer::TkParameterMEs::TrackPzErr, TrackAnalyzer::TkParameterMEs::TrackQ, and TrackAnalyzer::TkParameterMEs::TrackTheta.

Referenced by beginJob().

731 {
732 
733 
734  // parameters from the configuration
735  std::string QualName = conf_.getParameter<std::string>("Quality");
736  std::string AlgoName = conf_.getParameter<std::string>("AlgoName");
737  std::string MEFolderName = conf_.getParameter<std::string>("FolderName");
738 
739  // use the AlgoName and Quality Name
740  std::string CatagoryName = QualName != "" ? AlgoName + "_" + QualName : AlgoName;
741 
742  // get binning from the configuration
743  double Chi2NDFMin = conf_.getParameter<double>("Chi2NDFMin");
744  double Chi2NDFMax = conf_.getParameter<double>("Chi2NDFMax");
745 
746  int RecHitBin = conf_.getParameter<int>( "RecHitBin");
747  double RecHitMin = conf_.getParameter<double>("RecHitMin");
748  double RecHitMax = conf_.getParameter<double>("RecHitMax");
749 
750  int RecLayBin = conf_.getParameter<int>( "RecHitBin");
751  double RecLayMin = conf_.getParameter<double>("RecHitMin");
752  double RecLayMax = conf_.getParameter<double>("RecHitMax");
753 
754 
755  int PhiBin = conf_.getParameter<int>( "PhiBin");
756  double PhiMin = conf_.getParameter<double>("PhiMin");
757  double PhiMax = conf_.getParameter<double>("PhiMax");
758 
759  int EtaBin = conf_.getParameter<int>( "EtaBin");
760  double EtaMin = conf_.getParameter<double>("EtaMin");
761  double EtaMax = conf_.getParameter<double>("EtaMax");
762 
763  int ThetaBin = conf_.getParameter<int>( "ThetaBin");
764  double ThetaMin = conf_.getParameter<double>("ThetaMin");
765  double ThetaMax = conf_.getParameter<double>("ThetaMax");
766 
767  int TrackQBin = conf_.getParameter<int>( "TrackQBin");
768  double TrackQMin = conf_.getParameter<double>("TrackQMin");
769  double TrackQMax = conf_.getParameter<double>("TrackQMax");
770 
771  int TrackPtBin = conf_.getParameter<int>( "TrackPtBin");
772  double TrackPtMin = conf_.getParameter<double>("TrackPtMin");
773  double TrackPtMax = conf_.getParameter<double>("TrackPtMax");
774 
775  int TrackPBin = conf_.getParameter<int>( "TrackPBin");
776  double TrackPMin = conf_.getParameter<double>("TrackPMin");
777  double TrackPMax = conf_.getParameter<double>("TrackPMax");
778 
779  int TrackPxBin = conf_.getParameter<int>( "TrackPxBin");
780  double TrackPxMin = conf_.getParameter<double>("TrackPxMin");
781  double TrackPxMax = conf_.getParameter<double>("TrackPxMax");
782 
783  int TrackPyBin = conf_.getParameter<int>( "TrackPyBin");
784  double TrackPyMin = conf_.getParameter<double>("TrackPyMin");
785  double TrackPyMax = conf_.getParameter<double>("TrackPyMax");
786 
787  int TrackPzBin = conf_.getParameter<int>( "TrackPzBin");
788  double TrackPzMin = conf_.getParameter<double>("TrackPzMin");
789  double TrackPzMax = conf_.getParameter<double>("TrackPzMax");
790 
791  int ptErrBin = conf_.getParameter<int>( "ptErrBin");
792  double ptErrMin = conf_.getParameter<double>("ptErrMin");
793  double ptErrMax = conf_.getParameter<double>("ptErrMax");
794 
795  int pxErrBin = conf_.getParameter<int>( "pxErrBin");
796  double pxErrMin = conf_.getParameter<double>("pxErrMin");
797  double pxErrMax = conf_.getParameter<double>("pxErrMax");
798 
799  int pyErrBin = conf_.getParameter<int>( "pyErrBin");
800  double pyErrMin = conf_.getParameter<double>("pyErrMin");
801  double pyErrMax = conf_.getParameter<double>("pyErrMax");
802 
803  int pzErrBin = conf_.getParameter<int>( "pzErrBin");
804  double pzErrMin = conf_.getParameter<double>("pzErrMin");
805  double pzErrMax = conf_.getParameter<double>("pzErrMax");
806 
807  int pErrBin = conf_.getParameter<int>( "pErrBin");
808  double pErrMin = conf_.getParameter<double>("pErrMin");
809  double pErrMax = conf_.getParameter<double>("pErrMax");
810 
811  int phiErrBin = conf_.getParameter<int>( "phiErrBin");
812  double phiErrMin = conf_.getParameter<double>("phiErrMin");
813  double phiErrMax = conf_.getParameter<double>("phiErrMax");
814 
815  int etaErrBin = conf_.getParameter<int>( "etaErrBin");
816  double etaErrMin = conf_.getParameter<double>("etaErrMin");
817  double etaErrMax = conf_.getParameter<double>("etaErrMax");
818 
819 
820  dqmStore_->setCurrentFolder(MEFolderName);
821 
822  TkParameterMEs tkmes;
823 
824  std::string histTag = (sname == "default") ? CatagoryName : sname + "_" + CatagoryName;
825 
826  if(doAllPlots_)
827  {
828 
829  // COMMENTED BEACUSE THERE IS ALREADY THE PROFILE !!! (blablaProfile)
830  /*
831  // hit properties
832  dqmStore_->setCurrentFolder(MEFolderName+"/HitProperties");
833  // rechits
834  histname = "NumberOfRecHitsPerTrackVsPhi_" + histTag;
835  tkmes.NumberOfRecHitsPerTrackVsPhi = dqmStore_->bookProfile(histname, histname, PhiBin, PhiMin, PhiMax, RecHitMin, RecHitMax,"");
836  tkmes.NumberOfRecHitsPerTrackVsPhi->setAxisTitle("Track #phi",1);
837  tkmes.NumberOfRecHitsPerTrackVsPhi->setAxisTitle("Number of found RecHits of each Track",2);
838 
839  if (doThetaPlots_) {
840  histname = "NumberOfRecHitsPerTrackVsTheta_" + histTag;
841  tkmes.NumberOfRecHitsPerTrackVsTheta = dqmStore_->bookProfile(histname, histname, ThetaBin, ThetaMin, ThetaMax, RecHitMin, RecHitMax,"");
842  tkmes.NumberOfRecHitsPerTrackVsTheta->setAxisTitle("Track #theta",1);
843  tkmes.NumberOfRecHitsPerTrackVsTheta->setAxisTitle("Number of found RecHits of each Track",2);
844  }
845  histname = "NumberOfRecHitsPerTrackVsEta_" + histTag;
846  tkmes.NumberOfRecHitsPerTrackVsEta = dqmStore_->bookProfile(histname, histname, EtaBin, EtaMin, EtaMax, RecHitMin, RecHitMax,"");
847  tkmes.NumberOfRecHitsPerTrackVsEta->setAxisTitle("Track #eta",1);
848  tkmes.NumberOfRecHitsPerTrackVsEta->setAxisTitle("Number of found RecHits of each Track",2);
849 
850  histname = "NumberOfLayersPerTrackVsPhi_" + histTag;
851  tkmes.NumberOfLayersPerTrackVsPhi = dqmStore_->bookProfile(histname, histname, PhiBin, PhiMin, PhiMax, RecLayMin, RecLayMax,"");
852  tkmes.NumberOfLayersPerTrackVsPhi->setAxisTitle("Track #phi",1);
853  tkmes.NumberOfLayersPerTrackVsPhi->setAxisTitle("Number of Layers of each Track",2);
854 
855  if (doThetaPlots_) {
856  histname = "NumberOfLayersPerTrackVsTheta_" + histTag;
857  tkmes.NumberOfLayersPerTrackVsTheta = dqmStore_->bookProfile(histname, histname, ThetaBin, ThetaMin, ThetaMax, RecLayMin, RecLayMax,"");
858  tkmes.NumberOfLayersPerTrackVsTheta->setAxisTitle("Track #theta",1);
859  tkmes.NumberOfLayersPerTrackVsTheta->setAxisTitle("Number of Layers of each Track",2);
860  }
861  histname = "NumberOfLayersPerTrackVsEta_" + histTag;
862  tkmes.NumberOfLayersPerTrackVsEta = dqmStore_->bookProfile(histname, histname, EtaBin, EtaMin, EtaMax, RecLayMin, RecLayMax,"");
863  tkmes.NumberOfLayersPerTrackVsEta->setAxisTitle("Track #eta",1);
864  tkmes.NumberOfLayersPerTrackVsEta->setAxisTitle("Number of Layers of each Track",2);
865  */
866 
867  // general properties
868  dqmStore_->setCurrentFolder(MEFolderName+"/GeneralProperties");
869 
870  if (doThetaPlots_) {
871  histname = "Chi2oNDFVsTheta_" + histTag;
872  tkmes.Chi2oNDFVsTheta = dqmStore_->bookProfile(histname, histname, ThetaBin, ThetaMin, ThetaMax, Chi2NDFMin, Chi2NDFMax,"");
873  tkmes.Chi2oNDFVsTheta->setAxisTitle("Track #theta",1);
874  tkmes.Chi2oNDFVsTheta->setAxisTitle("Track #chi^{2}/ndf",2);
875  }
876  histname = "Chi2oNDFVsPhi_" + histTag;
877  tkmes.Chi2oNDFVsPhi = dqmStore_->bookProfile(histname, histname, PhiBin, PhiMin, PhiMax, Chi2NDFMin, Chi2NDFMax,"");
878  tkmes.Chi2oNDFVsPhi->setAxisTitle("Track #phi",1);
879  tkmes.Chi2oNDFVsPhi->setAxisTitle("Track #chi^{2}/ndf",2);
880 
881  histname = "Chi2oNDFVsEta_" + histTag;
882  tkmes.Chi2oNDFVsEta = dqmStore_->bookProfile(histname, histname, EtaBin, EtaMin, EtaMax, Chi2NDFMin, Chi2NDFMax,"");
883  tkmes.Chi2oNDFVsEta->setAxisTitle("Track #eta",1);
884  tkmes.Chi2oNDFVsEta->setAxisTitle("Track #chi^{2}/ndf",2);
885  }
886 
887  // general properties
888  dqmStore_->setCurrentFolder(MEFolderName+"/GeneralProperties");
889 
890  histname = "TrackP_" + histTag;
891 
892  tkmes.TrackP = dqmStore_->book1D(histname, histname, TrackPBin, TrackPMin, TrackPMax);
893  tkmes.TrackP->setAxisTitle("Track |p| (GeV/c)", 1);
894  tkmes.TrackP->setAxisTitle("Number of Tracks",2);
895 
896  histname = "TrackPt_" + histTag;
897  tkmes.TrackPt = dqmStore_->book1D(histname, histname, TrackPtBin, TrackPtMin, TrackPtMax);
898  tkmes.TrackPt->setAxisTitle("Track p_{T} (GeV/c)", 1);
899  tkmes.TrackPt->setAxisTitle("Number of Tracks",2);
900 
901  if (doTrackPxPyPlots_) {
902  histname = "TrackPx_" + histTag;
903  tkmes.TrackPx = dqmStore_->book1D(histname, histname, TrackPxBin, TrackPxMin, TrackPxMax);
904  tkmes.TrackPx->setAxisTitle("Track p_{x} (GeV/c)", 1);
905  tkmes.TrackPx->setAxisTitle("Number of Tracks",2);
906 
907  histname = "TrackPy_" + histTag;
908  tkmes.TrackPy = dqmStore_->book1D(histname, histname, TrackPyBin, TrackPyMin, TrackPyMax);
909  tkmes.TrackPy->setAxisTitle("Track p_{y} (GeV/c)", 1);
910  tkmes.TrackPy->setAxisTitle("Number of Tracks",2);
911  }
912  histname = "TrackPz_" + histTag;
913  tkmes.TrackPz = dqmStore_->book1D(histname, histname, TrackPzBin, TrackPzMin, TrackPzMax);
914  tkmes.TrackPz->setAxisTitle("Track p_{z} (GeV/c)", 1);
915  tkmes.TrackPz->setAxisTitle("Number of Tracks",2);
916 
917  histname = "TrackPhi_" + histTag;
918  tkmes.TrackPhi = dqmStore_->book1D(histname, histname, PhiBin, PhiMin, PhiMax);
919  tkmes.TrackPhi->setAxisTitle("Track #phi", 1);
920  tkmes.TrackPhi->setAxisTitle("Number of Tracks",2);
921 
922  histname = "TrackEta_" + histTag;
923  tkmes.TrackEta = dqmStore_->book1D(histname, histname, EtaBin, EtaMin, EtaMax);
924  tkmes.TrackEta->setAxisTitle("Track #eta", 1);
925  tkmes.TrackEta->setAxisTitle("Number of Tracks",2);
926 
927  if (doThetaPlots_) {
928  histname = "TrackTheta_" + histTag;
929  tkmes.TrackTheta = dqmStore_->book1D(histname, histname, ThetaBin, ThetaMin, ThetaMax);
930  tkmes.TrackTheta->setAxisTitle("Track #theta", 1);
931  tkmes.TrackTheta->setAxisTitle("Number of Tracks",2);
932  }
933  histname = "TrackQ_" + histTag;
934  tkmes.TrackQ = dqmStore_->book1D(histname, histname, TrackQBin, TrackQMin, TrackQMax);
935  tkmes.TrackQ->setAxisTitle("Track Charge", 1);
936  tkmes.TrackQ->setAxisTitle("Number of Tracks",2);
937 
938  histname = "TrackPErrOverP_" + histTag;
939  tkmes.TrackPErr = dqmStore_->book1D(histname, histname, pErrBin, pErrMin, pErrMax);
940  tkmes.TrackPErr->setAxisTitle("error(p)/p", 1);
941  tkmes.TrackPErr->setAxisTitle("Number of Tracks",2);
942 
943  histname = "TrackPtErrOverPt_" + histTag;
944  tkmes.TrackPtErr = dqmStore_->book1D(histname, histname, ptErrBin, ptErrMin, ptErrMax);
945  tkmes.TrackPtErr->setAxisTitle("error(p_{T})/p_{T}", 1);
946  tkmes.TrackPtErr->setAxisTitle("Number of Tracks",2);
947 
948  histname = "TrackPtErrOverPtVsEta_" + histTag;
949  tkmes.TrackPtErrVsEta = dqmStore_->bookProfile(histname, histname, EtaBin, EtaMin, EtaMax, ptErrMin, ptErrMax);
950  tkmes.TrackPtErrVsEta->setAxisTitle("Track #eta",1);
951  tkmes.TrackPtErrVsEta->setAxisTitle("error(p_{T})/p_{T}", 2);
952 
953  if (doTrackPxPyPlots_) {
954  histname = "TrackPxErrOverPx_" + histTag;
955  tkmes.TrackPxErr = dqmStore_->book1D(histname, histname, pxErrBin, pxErrMin, pxErrMax);
956  tkmes.TrackPxErr->setAxisTitle("error(p_{x})/p_{x}", 1);
957  tkmes.TrackPxErr->setAxisTitle("Number of Tracks",2);
958 
959  histname = "TrackPyErrOverPy_" + histTag;
960  tkmes.TrackPyErr = dqmStore_->book1D(histname, histname, pyErrBin, pyErrMin, pyErrMax);
961  tkmes.TrackPyErr->setAxisTitle("error(p_{y})/p_{y}", 1);
962  tkmes.TrackPyErr->setAxisTitle("Number of Tracks",2);
963  }
964  histname = "TrackPzErrOverPz_" + histTag;
965  tkmes.TrackPzErr = dqmStore_->book1D(histname, histname, pzErrBin, pzErrMin, pzErrMax);
966  tkmes.TrackPzErr->setAxisTitle("error(p_{z})/p_{z}", 1);
967  tkmes.TrackPzErr->setAxisTitle("Number of Tracks",2);
968 
969  histname = "TrackPhiErr_" + histTag;
970  tkmes.TrackPhiErr = dqmStore_->book1D(histname, histname, phiErrBin, phiErrMin, phiErrMax);
971  tkmes.TrackPhiErr->setAxisTitle("error(#phi)");
972  tkmes.TrackPhiErr->setAxisTitle("Number of Tracks",2);
973 
974  histname = "TrackEtaErr_" + histTag;
975  tkmes.TrackEtaErr = dqmStore_->book1D(histname, histname, etaErrBin, etaErrMin, etaErrMax);
976  tkmes.TrackEtaErr->setAxisTitle("error(#eta)");
977  tkmes.TrackEtaErr->setAxisTitle("Number of Tracks",2);
978 
979  // rec hit profiles
980  histname = "NumberOfRecHitsPerTrackVsPhiProfile_" + histTag;
981  tkmes.NumberOfRecHitsPerTrackVsPhiProfile = dqmStore_->bookProfile(histname, histname, PhiBin, PhiMin, PhiMax, RecHitBin, RecHitMin, RecHitMax,"");
982  tkmes.NumberOfRecHitsPerTrackVsPhiProfile->setAxisTitle("Track #phi",1);
983  tkmes.NumberOfRecHitsPerTrackVsPhiProfile->setAxisTitle("Number of found RecHits of each Track",2);
984 
985  if (doThetaPlots_) {
986  histname = "NumberOfRecHitsPerTrackVsThetaProfile_" + histTag;
987  tkmes.NumberOfRecHitsPerTrackVsThetaProfile = dqmStore_->bookProfile(histname, histname, ThetaBin, ThetaMin, ThetaMax, RecHitBin, RecHitMin, RecHitMax,"");
988  tkmes.NumberOfRecHitsPerTrackVsThetaProfile->setAxisTitle("Track #phi",1);
989  tkmes.NumberOfRecHitsPerTrackVsThetaProfile->setAxisTitle("Number of found RecHits of each Track",2);
990  }
991  histname = "NumberOfRecHitsPerTrackVsEtaProfile_" + histTag;
992  tkmes.NumberOfRecHitsPerTrackVsEtaProfile = dqmStore_->bookProfile(histname, histname, EtaBin, EtaMin, EtaMax, RecHitBin, RecHitMin, RecHitMax,"");
993  tkmes.NumberOfRecHitsPerTrackVsEtaProfile->setAxisTitle("Track #eta",1);
994  tkmes.NumberOfRecHitsPerTrackVsEtaProfile->setAxisTitle("Number of found RecHits of each Track",2);
995 
996  histname = "NumberOfLayersPerTrackVsPhiProfile_" + histTag;
997  tkmes.NumberOfLayersPerTrackVsPhiProfile = dqmStore_->bookProfile(histname, histname, PhiBin, PhiMin, PhiMax, RecLayBin, RecLayMin, RecLayMax,"");
998  tkmes.NumberOfLayersPerTrackVsPhiProfile->setAxisTitle("Track #phi",1);
999  tkmes.NumberOfLayersPerTrackVsPhiProfile->setAxisTitle("Number of Layers of each Track",2);
1000 
1001  if (doThetaPlots_) {
1002  histname = "NumberOfLayersPerTrackVsThetaProfile_" + histTag;
1003  tkmes.NumberOfLayersPerTrackVsThetaProfile = dqmStore_->bookProfile(histname, histname, ThetaBin, ThetaMin, ThetaMax, RecLayBin, RecLayMin, RecLayMax,"");
1004  tkmes.NumberOfLayersPerTrackVsThetaProfile->setAxisTitle("Track #phi",1);
1005  tkmes.NumberOfLayersPerTrackVsThetaProfile->setAxisTitle("Number of Layers of each Track",2);
1006  }
1007  histname = "NumberOfLayersPerTrackVsEtaProfile_" + histTag;
1008  tkmes.NumberOfLayersPerTrackVsEtaProfile = dqmStore_->bookProfile(histname, histname, EtaBin, EtaMin, EtaMax, RecLayBin, RecLayMin, RecLayMax,"");
1009  tkmes.NumberOfLayersPerTrackVsEtaProfile->setAxisTitle("Track #eta",1);
1010  tkmes.NumberOfLayersPerTrackVsEtaProfile->setAxisTitle("Number of Layers of each Track",2);
1011 
1012  if ( doGoodTrackPlots_ || doAllPlots_ ) {
1013 
1014  dqmStore_->setCurrentFolder(MEFolderName+"/GeneralProperties/GoodTracks");
1015 
1016  histname = "GoodTrackPt_" + histTag;
1017  tkmes.GoodTrackPt = dqmStore_->book1D(histname, histname, TrackPtBin, TrackPtMin, TrackPtMax);
1018  tkmes.GoodTrackPt->setAxisTitle("Good Track p_{T} (GeV/c)", 1);
1019  tkmes.GoodTrackPt->setAxisTitle("Number of Tracks",2);
1020 
1021  histname = "GoodTrackEta_" + histTag;
1022  tkmes.GoodTrackEta = dqmStore_->book1D(histname, histname, EtaBin, EtaMin, EtaMax);
1023  tkmes.GoodTrackEta->setAxisTitle("Good Track #eta", 1);
1024  tkmes.GoodTrackEta->setAxisTitle("Number of Tracks",2);
1025 
1026  histname = "GoodTrackPhi_" + histTag;
1027  tkmes.GoodTrackPhi = dqmStore_->book1D(histname, histname, PhiBin, PhiMin, PhiMax);
1028  tkmes.GoodTrackPhi->setAxisTitle("Good Track #phi", 1);
1029  tkmes.GoodTrackPhi->setAxisTitle("Number of Tracks",2);
1030 
1031  }
1032 
1033  // now put the MEs in the map
1034  TkParameterMEMap.insert( std::make_pair(sname, tkmes) );
1035 }
T getParameter(std::string const &) const
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
Definition: DQMStore.cc:717
edm::ParameterSet conf_
Definition: TrackAnalyzer.h:49
std::map< std::string, TkParameterMEs > TkParameterMEMap
const double EtaMax[kNumberCalorimeter]
const double EtaMin[kNumberCalorimeter]
MonitorElement * bookProfile(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, const char *option="s")
Definition: DQMStore.cc:1031
bool doGoodTrackPlots_
Definition: TrackAnalyzer.h:54
bool doTrackPxPyPlots_
Definition: TrackAnalyzer.h:69
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:429
std::string histname
void TrackAnalyzer::doReset ( DQMStore dqmStore_)
void TrackAnalyzer::doSoftReset ( DQMStore dqmStore_)

Definition at line 1559 of file TrackAnalyzer.cc.

References Chi2oNDF, GoodTrackChi2oNDF, GoodTrackNumberOfRecHitsPerTrack, NumberOfRecHitsPerTrack, and DQMStore::softReset().

1559  {
1560  dqmStore_->softReset(Chi2oNDF);
1561  dqmStore_->softReset(NumberOfRecHitsPerTrack);
1562  dqmStore_->softReset(GoodTrackChi2oNDF);
1564 }
MonitorElement * GoodTrackNumberOfRecHitsPerTrack
MonitorElement * NumberOfRecHitsPerTrack
Definition: TrackAnalyzer.h:79
MonitorElement * GoodTrackChi2oNDF
void softReset(MonitorElement *me)
Definition: DQMStore.cc:2734
MonitorElement * Chi2oNDF
Definition: TrackAnalyzer.h:87
void TrackAnalyzer::doTrackerSpecificFillHists ( const reco::Track track)
private

Definition at line 1479 of file TrackAnalyzer.cc.

References reco::TrackBase::eta(), eta(), MonitorElement::Fill(), reco::TrackBase::hitPattern(), NumberOfPixBarrelLayersPerTrack, NumberOfPixBarrelLayersPerTrackVsEtaProfile, NumberOfPixBarrelLayersPerTrackVsPhiProfile, NumberOfPixBarrelRecHitsPerTrack, NumberOfPixBarrelRecHitsPerTrackVsEtaProfile, NumberOfPixBarrelRecHitsPerTrackVsPhiProfile, NumberOfPixEndcapLayersPerTrack, NumberOfPixEndcapLayersPerTrackVsEtaProfile, NumberOfPixEndcapLayersPerTrackVsPhiProfile, NumberOfPixEndcapRecHitsPerTrack, NumberOfPixEndcapRecHitsPerTrackVsEtaProfile, NumberOfPixEndcapRecHitsPerTrackVsPhiProfile, NumberOfTECLayersPerTrack, NumberOfTECLayersPerTrackVsEtaProfile, NumberOfTECLayersPerTrackVsPhiProfile, NumberOfTECRecHitsPerTrack, NumberOfTECRecHitsPerTrackVsEtaProfile, NumberOfTECRecHitsPerTrackVsPhiProfile, NumberOfTIBLayersPerTrack, NumberOfTIBLayersPerTrackVsEtaProfile, NumberOfTIBLayersPerTrackVsPhiProfile, NumberOfTIBRecHitsPerTrack, NumberOfTIBRecHitsPerTrackVsEtaProfile, NumberOfTIBRecHitsPerTrackVsPhiProfile, NumberOfTIDLayersPerTrack, NumberOfTIDLayersPerTrackVsEtaProfile, NumberOfTIDLayersPerTrackVsPhiProfile, NumberOfTIDRecHitsPerTrack, NumberOfTIDRecHitsPerTrackVsEtaProfile, NumberOfTIDRecHitsPerTrackVsPhiProfile, NumberOfTOBLayersPerTrack, NumberOfTOBLayersPerTrackVsEtaProfile, NumberOfTOBLayersPerTrackVsPhiProfile, NumberOfTOBRecHitsPerTrack, NumberOfTOBRecHitsPerTrackVsEtaProfile, NumberOfTOBRecHitsPerTrackVsPhiProfile, reco::HitPattern::numberOfValidPixelBarrelHits(), reco::HitPattern::numberOfValidPixelEndcapHits(), reco::HitPattern::numberOfValidStripTECHits(), reco::HitPattern::numberOfValidStripTIBHits(), reco::HitPattern::numberOfValidStripTIDHits(), reco::HitPattern::numberOfValidStripTOBHits(), phi, reco::TrackBase::phi(), reco::HitPattern::pixelBarrelLayersWithMeasurement(), reco::HitPattern::pixelEndcapLayersWithMeasurement(), reco::HitPattern::stripTECLayersWithMeasurement(), reco::HitPattern::stripTIBLayersWithMeasurement(), reco::HitPattern::stripTIDLayersWithMeasurement(), and reco::HitPattern::stripTOBLayersWithMeasurement().

Referenced by analyze().

1480 {
1481  double phi = track.phi();
1482  double eta = track.eta();
1483 
1484  //Fill TIB Layers and RecHits
1488 
1492 
1493  //Fill TOB Layers and RecHits
1497 
1501 
1502 
1503  //Fill TID Layers and RecHits
1507 
1511 
1512 
1513  //Fill TEC Layers and RecHits
1517 
1521 
1522  //Fill PixBarrel Layers and RecHits
1526 
1530 
1531  //Fill PixEndcap Layers and RecHits
1535 
1539 
1540 }
int stripTOBLayersWithMeasurement() const
Definition: HitPattern.cc:373
MonitorElement * NumberOfPixEndcapLayersPerTrackVsEtaProfile
MonitorElement * NumberOfPixEndcapLayersPerTrack
MonitorElement * NumberOfPixBarrelLayersPerTrack
MonitorElement * NumberOfTOBLayersPerTrackVsPhiProfile
MonitorElement * NumberOfTIDRecHitsPerTrackVsPhiProfile
int stripTIBLayersWithMeasurement() const
Definition: HitPattern.cc:355
MonitorElement * NumberOfTIBLayersPerTrack
MonitorElement * NumberOfTOBRecHitsPerTrack
MonitorElement * NumberOfPixEndcapRecHitsPerTrack
MonitorElement * NumberOfTECRecHitsPerTrackVsPhiProfile
MonitorElement * NumberOfPixBarrelRecHitsPerTrackVsPhiProfile
MonitorElement * NumberOfTIBRecHitsPerTrackVsPhiProfile
MonitorElement * NumberOfTIDRecHitsPerTrackVsEtaProfile
MonitorElement * NumberOfPixBarrelRecHitsPerTrackVsEtaProfile
double phi() const
azimuthal angle of momentum vector
Definition: TrackBase.h:139
T eta() const
MonitorElement * NumberOfPixEndcapLayersPerTrackVsPhiProfile
MonitorElement * NumberOfTIBLayersPerTrackVsEtaProfile
int pixelEndcapLayersWithMeasurement() const
Definition: HitPattern.cc:346
int numberOfValidStripTOBHits() const
Definition: HitPattern.h:590
void Fill(long long x)
MonitorElement * NumberOfPixEndcapRecHitsPerTrackVsEtaProfile
MonitorElement * NumberOfTECLayersPerTrackVsEtaProfile
MonitorElement * NumberOfPixBarrelLayersPerTrackVsPhiProfile
double eta() const
pseudorapidity of momentum vector
Definition: TrackBase.h:141
int numberOfValidPixelBarrelHits() const
Definition: HitPattern.h:570
MonitorElement * NumberOfTOBLayersPerTrack
MonitorElement * NumberOfTECLayersPerTrack
MonitorElement * NumberOfTIDRecHitsPerTrack
int stripTIDLayersWithMeasurement() const
Definition: HitPattern.cc:364
MonitorElement * NumberOfTIDLayersPerTrack
MonitorElement * NumberOfTECRecHitsPerTrackVsEtaProfile
MonitorElement * NumberOfTIDLayersPerTrackVsPhiProfile
int numberOfValidStripTIDHits() const
Definition: HitPattern.h:586
int numberOfValidStripTECHits() const
Definition: HitPattern.h:594
const HitPattern & hitPattern() const
Access the hit pattern, indicating in which Tracker layers the track has hits.
Definition: TrackBase.h:223
MonitorElement * NumberOfPixBarrelLayersPerTrackVsEtaProfile
MonitorElement * NumberOfTOBRecHitsPerTrackVsPhiProfile
MonitorElement * NumberOfTIBLayersPerTrackVsPhiProfile
MonitorElement * NumberOfTIBRecHitsPerTrackVsEtaProfile
int pixelBarrelLayersWithMeasurement() const
Definition: HitPattern.cc:337
MonitorElement * NumberOfPixEndcapRecHitsPerTrackVsPhiProfile
int numberOfValidStripTIBHits() const
Definition: HitPattern.h:582
int numberOfValidPixelEndcapHits() const
Definition: HitPattern.h:574
MonitorElement * NumberOfTECLayersPerTrackVsPhiProfile
MonitorElement * NumberOfTIDLayersPerTrackVsEtaProfile
MonitorElement * NumberOfTOBLayersPerTrackVsEtaProfile
MonitorElement * NumberOfTECRecHitsPerTrack
int stripTECLayersWithMeasurement() const
Definition: HitPattern.cc:382
MonitorElement * NumberOfPixBarrelRecHitsPerTrack
MonitorElement * NumberOfTOBRecHitsPerTrackVsEtaProfile
MonitorElement * NumberOfTIBRecHitsPerTrack
Definition: DDAxes.h:10
void TrackAnalyzer::doTrackerSpecificInitialization ( DQMStore dqmStore_)
private

Definition at line 1197 of file TrackAnalyzer.cc.

References DQMStore::book1D(), DQMStore::bookProfile(), conf_, Gflash::EtaMax, Gflash::EtaMin, edm::ParameterSet::getParameter(), histname, NumberOfPixBarrelLayersPerTrack, NumberOfPixBarrelLayersPerTrackVsEtaProfile, NumberOfPixBarrelLayersPerTrackVsPhiProfile, NumberOfPixBarrelRecHitsPerTrack, NumberOfPixBarrelRecHitsPerTrackVsEtaProfile, NumberOfPixBarrelRecHitsPerTrackVsPhiProfile, NumberOfPixEndcapLayersPerTrack, NumberOfPixEndcapLayersPerTrackVsEtaProfile, NumberOfPixEndcapLayersPerTrackVsPhiProfile, NumberOfPixEndcapRecHitsPerTrack, NumberOfPixEndcapRecHitsPerTrackVsEtaProfile, NumberOfPixEndcapRecHitsPerTrackVsPhiProfile, NumberOfTECLayersPerTrack, NumberOfTECLayersPerTrackVsEtaProfile, NumberOfTECLayersPerTrackVsPhiProfile, NumberOfTECRecHitsPerTrack, NumberOfTECRecHitsPerTrackVsEtaProfile, NumberOfTECRecHitsPerTrackVsPhiProfile, NumberOfTIBLayersPerTrack, NumberOfTIBLayersPerTrackVsEtaProfile, NumberOfTIBLayersPerTrackVsPhiProfile, NumberOfTIBRecHitsPerTrack, NumberOfTIBRecHitsPerTrackVsEtaProfile, NumberOfTIBRecHitsPerTrackVsPhiProfile, NumberOfTIDLayersPerTrack, NumberOfTIDLayersPerTrackVsEtaProfile, NumberOfTIDLayersPerTrackVsPhiProfile, NumberOfTIDRecHitsPerTrack, NumberOfTIDRecHitsPerTrackVsEtaProfile, NumberOfTIDRecHitsPerTrackVsPhiProfile, NumberOfTOBLayersPerTrack, NumberOfTOBLayersPerTrackVsEtaProfile, NumberOfTOBLayersPerTrackVsPhiProfile, NumberOfTOBRecHitsPerTrack, NumberOfTOBRecHitsPerTrackVsEtaProfile, NumberOfTOBRecHitsPerTrackVsPhiProfile, MonitorElement::setAxisTitle(), and DQMStore::setCurrentFolder().

Referenced by beginJob().

1198 {
1199 
1200  // parameters from the configuration
1201  std::string QualName = conf_.getParameter<std::string>("Quality");
1202  std::string AlgoName = conf_.getParameter<std::string>("AlgoName");
1203  std::string MEFolderName = conf_.getParameter<std::string>("FolderName");
1204 
1205  // use the AlgoName and Quality Name
1206  std::string CatagoryName = QualName != "" ? AlgoName + "_" + QualName : AlgoName;
1207 
1208  // get binning from the configuration
1209  int TOBHitBin = conf_.getParameter<int>( "TOBHitBin");
1210  double TOBHitMin = conf_.getParameter<double>("TOBHitMin");
1211  double TOBHitMax = conf_.getParameter<double>("TOBHitMax");
1212 
1213  int TIBHitBin = conf_.getParameter<int>( "TIBHitBin");
1214  double TIBHitMin = conf_.getParameter<double>("TIBHitMin");
1215  double TIBHitMax = conf_.getParameter<double>("TIBHitMax");
1216 
1217  int TIDHitBin = conf_.getParameter<int>( "TIDHitBin");
1218  double TIDHitMin = conf_.getParameter<double>("TIDHitMin");
1219  double TIDHitMax = conf_.getParameter<double>("TIDHitMax");
1220 
1221  int TECHitBin = conf_.getParameter<int>( "TECHitBin");
1222  double TECHitMin = conf_.getParameter<double>("TECHitMin");
1223  double TECHitMax = conf_.getParameter<double>("TECHitMax");
1224 
1225  int PXBHitBin = conf_.getParameter<int>( "PXBHitBin");
1226  double PXBHitMin = conf_.getParameter<double>("PXBHitMin");
1227  double PXBHitMax = conf_.getParameter<double>("PXBHitMax");
1228 
1229  int PXFHitBin = conf_.getParameter<int>( "PXFHitBin");
1230  double PXFHitMin = conf_.getParameter<double>("PXFHitMin");
1231  double PXFHitMax = conf_.getParameter<double>("PXFHitMax");
1232 
1233  int TOBLayBin = conf_.getParameter<int>( "TOBLayBin");
1234  double TOBLayMin = conf_.getParameter<double>("TOBLayMin");
1235  double TOBLayMax = conf_.getParameter<double>("TOBLayMax");
1236 
1237  int TIBLayBin = conf_.getParameter<int>( "TIBLayBin");
1238  double TIBLayMin = conf_.getParameter<double>("TIBLayMin");
1239  double TIBLayMax = conf_.getParameter<double>("TIBLayMax");
1240 
1241  int TIDLayBin = conf_.getParameter<int>( "TIDLayBin");
1242  double TIDLayMin = conf_.getParameter<double>("TIDLayMin");
1243  double TIDLayMax = conf_.getParameter<double>("TIDLayMax");
1244 
1245  int TECLayBin = conf_.getParameter<int>( "TECLayBin");
1246  double TECLayMin = conf_.getParameter<double>("TECLayMin");
1247  double TECLayMax = conf_.getParameter<double>("TECLayMax");
1248 
1249  int PXBLayBin = conf_.getParameter<int>( "PXBLayBin");
1250  double PXBLayMin = conf_.getParameter<double>("PXBLayMin");
1251  double PXBLayMax = conf_.getParameter<double>("PXBLayMax");
1252 
1253  int PXFLayBin = conf_.getParameter<int>( "PXFLayBin");
1254  double PXFLayMin = conf_.getParameter<double>("PXFLayMin");
1255  double PXFLayMax = conf_.getParameter<double>("PXFLayMax");
1256 
1257 
1258  int PhiBin = conf_.getParameter<int>( "PhiBin");
1259  double PhiMin = conf_.getParameter<double>("PhiMin");
1260  double PhiMax = conf_.getParameter<double>("PhiMax");
1261 
1262  int EtaBin = conf_.getParameter<int>( "EtaBin");
1263  double EtaMin = conf_.getParameter<double>("EtaMin");
1264  double EtaMax = conf_.getParameter<double>("EtaMax");
1265 
1266  // book hit property histograms
1267  // ---------------------------------------------------------------------------------//
1268  dqmStore_->setCurrentFolder(MEFolderName+"/HitProperties");
1269 
1270 
1271  TkParameterMEs tkmes;
1272 
1273  // TOB hits properties
1274  dqmStore_->setCurrentFolder(MEFolderName+"/HitProperties/TOB");
1275 
1276  histname = "NumberOfTOBRecHitsPerTrack_" + CatagoryName;
1277  NumberOfTOBRecHitsPerTrack = dqmStore_->book1D(histname, histname, TOBHitBin, TOBHitMin, TOBHitMax);
1278  NumberOfTOBRecHitsPerTrack->setAxisTitle("Number of TOB found RecHits of each Track",1);
1279  NumberOfTOBRecHitsPerTrack->setAxisTitle("Number of Tracks", 2);
1280 
1281  histname = "NumberOfTOBRecHitsPerTrackVsPhiProfile_" + CatagoryName;
1282  NumberOfTOBRecHitsPerTrackVsPhiProfile = dqmStore_->bookProfile(histname, histname, PhiBin, PhiMin, PhiMax, TOBHitBin, TOBHitMin, TOBHitMax,"");
1284  NumberOfTOBRecHitsPerTrackVsPhiProfile->setAxisTitle("Number of TOB found RecHits of each Track",2);
1285 
1286  histname = "NumberOfTOBRecHitsPerTrackVsEtaProfile_" + CatagoryName;
1287  NumberOfTOBRecHitsPerTrackVsEtaProfile = dqmStore_->bookProfile(histname, histname, EtaBin, EtaMin, EtaMax, TOBHitBin, TOBHitMin, TOBHitMax,"");
1289  NumberOfTOBRecHitsPerTrackVsEtaProfile->setAxisTitle("Number of TOB found RecHits of each Track",2);
1290 
1291  histname = "NumberOfTOBLayersPerTrack_" + CatagoryName;
1292  NumberOfTOBLayersPerTrack = dqmStore_->book1D(histname, histname, TOBLayBin, TOBLayMin, TOBLayMax);
1293  NumberOfTOBLayersPerTrack->setAxisTitle("Number of TOB Layers of each Track",1);
1294  NumberOfTOBLayersPerTrack->setAxisTitle("Number of Tracks", 2);
1295 
1296  histname = "NumberOfTOBLayersPerTrackVsPhiProfile_" + CatagoryName;
1297  NumberOfTOBLayersPerTrackVsPhiProfile = dqmStore_->bookProfile(histname, histname, PhiBin, PhiMin, PhiMax, TOBLayBin, TOBLayMin, TOBLayMax,"");
1299  NumberOfTOBLayersPerTrackVsPhiProfile->setAxisTitle("Number of TOB Layers of each Track",2);
1300 
1301  histname = "NumberOfTOBLayersPerTrackVsEtaProfile_" + CatagoryName;
1302  NumberOfTOBLayersPerTrackVsEtaProfile = dqmStore_->bookProfile(histname, histname, EtaBin, EtaMin, EtaMax, TOBLayBin, TOBLayMin, TOBLayMax,"");
1304  NumberOfTOBLayersPerTrackVsEtaProfile->setAxisTitle("Number of TOB Layers of each Track",2);
1305 
1306 
1307  // TIB hits properties
1308  dqmStore_->setCurrentFolder(MEFolderName+"/HitProperties/TIB");
1309 
1310  histname = "NumberOfTIBRecHitsPerTrack_" + CatagoryName;
1311  NumberOfTIBRecHitsPerTrack = dqmStore_->book1D(histname, histname, TIBHitBin, TIBHitMin, TIBHitMax);
1312  NumberOfTIBRecHitsPerTrack->setAxisTitle("Number of TIB found RecHits of each Track",1);
1313  NumberOfTIBRecHitsPerTrack->setAxisTitle("Number of Tracks", 2);
1314 
1315  histname = "NumberOfTIBRecHitsPerTrackVsPhiProfile_" + CatagoryName;
1316  NumberOfTIBRecHitsPerTrackVsPhiProfile = dqmStore_->bookProfile(histname, histname, PhiBin, PhiMin, PhiMax, TIBHitBin, TIBHitMin, TIBHitMax,"");
1318  NumberOfTIBRecHitsPerTrackVsPhiProfile->setAxisTitle("Number of TIB found RecHits of each Track",2);
1319 
1320  histname = "NumberOfTIBRecHitsPerTrackVsEtaProfile_" + CatagoryName;
1321  NumberOfTIBRecHitsPerTrackVsEtaProfile = dqmStore_->bookProfile(histname, histname, EtaBin, EtaMin, EtaMax, TIBHitBin, TIBHitMin, TIBHitMax,"");
1323  NumberOfTIBRecHitsPerTrackVsEtaProfile->setAxisTitle("Number of TIB found RecHits of each Track",2);
1324 
1325  histname = "NumberOfTIBLayersPerTrack_" + CatagoryName;
1326  NumberOfTIBLayersPerTrack = dqmStore_->book1D(histname, histname, TIBLayBin, TIBLayMin, TIBLayMax);
1327  NumberOfTIBLayersPerTrack->setAxisTitle("Number of TIB Layers of each Track",1);
1328  NumberOfTIBLayersPerTrack->setAxisTitle("Number of Tracks", 2);
1329 
1330  histname = "NumberOfTIBLayersPerTrackVsPhiProfile_" + CatagoryName;
1331  NumberOfTIBLayersPerTrackVsPhiProfile = dqmStore_->bookProfile(histname, histname, PhiBin, PhiMin, PhiMax, TIBLayBin, TIBLayMin, TIBLayMax,"");
1333  NumberOfTIBLayersPerTrackVsPhiProfile->setAxisTitle("Number of TIB Layers of each Track",2);
1334 
1335  histname = "NumberOfTIBLayersPerTrackVsEtaProfile_" + CatagoryName;
1336  NumberOfTIBLayersPerTrackVsEtaProfile = dqmStore_->bookProfile(histname, histname, EtaBin, EtaMin, EtaMax, TIBLayBin, TIBLayMin, TIBLayMax,"");
1338  NumberOfTIBLayersPerTrackVsEtaProfile->setAxisTitle("Number of TIB Layers of each Track",2);
1339 
1340 
1341  // TID hit properties
1342  dqmStore_->setCurrentFolder(MEFolderName+"/HitProperties/TID");
1343 
1344  histname = "NumberOfTIDRecHitsPerTrack_" + CatagoryName;
1345  NumberOfTIDRecHitsPerTrack = dqmStore_->book1D(histname, histname, TIDHitBin, TIDHitMin, TIDHitMax);
1346  NumberOfTIDRecHitsPerTrack->setAxisTitle("Number of TID found RecHits of each Track",1);
1347  NumberOfTIDRecHitsPerTrack->setAxisTitle("Number of Tracks", 2);
1348 
1349  histname = "NumberOfTIDRecHitsPerTrackVsPhiProfile_" + CatagoryName;
1350  NumberOfTIDRecHitsPerTrackVsPhiProfile = dqmStore_->bookProfile(histname, histname, PhiBin, PhiMin, PhiMax, TIDHitBin, TIDHitMin, TIDHitMax,"");
1352  NumberOfTIDRecHitsPerTrackVsPhiProfile->setAxisTitle("Number of TID found RecHits of each Track",2);
1353 
1354  histname = "NumberOfTIDRecHitsPerTrackVsEtaProfile_" + CatagoryName;
1355  NumberOfTIDRecHitsPerTrackVsEtaProfile = dqmStore_->bookProfile(histname, histname, EtaBin, EtaMin, EtaMax, TIDHitBin, TIDHitMin, TIDHitMax,"");
1357  NumberOfTIDRecHitsPerTrackVsEtaProfile->setAxisTitle("Number of TID found RecHits of each Track",2);
1358 
1359  histname = "NumberOfTIDLayersPerTrack_" + CatagoryName;
1360  NumberOfTIDLayersPerTrack = dqmStore_->book1D(histname, histname, TIDLayBin, TIDLayMin, TIDLayMax);
1361  NumberOfTIDLayersPerTrack->setAxisTitle("Number of TID Layers of each Track",1);
1362  NumberOfTIDLayersPerTrack->setAxisTitle("Number of Tracks", 2);
1363 
1364  histname = "NumberOfTIDLayersPerTrackVsPhiProfile_" + CatagoryName;
1365  NumberOfTIDLayersPerTrackVsPhiProfile = dqmStore_->bookProfile(histname, histname, PhiBin, PhiMin, PhiMax, TIDLayBin, TIDLayMin, TIDLayMax,"");
1367  NumberOfTIDLayersPerTrackVsPhiProfile->setAxisTitle("Number of TID Layers of each Track",2);
1368 
1369  histname = "NumberOfTIDLayersPerTrackVsEtaProfile_" + CatagoryName;
1370  NumberOfTIDLayersPerTrackVsEtaProfile = dqmStore_->bookProfile(histname, histname, EtaBin, EtaMin, EtaMax, TIDLayBin, TIDLayMin, TIDLayMax,"");
1372  NumberOfTIDLayersPerTrackVsEtaProfile->setAxisTitle("Number of TID Layers of each Track",2);
1373 
1374 
1375  // TEC hits properties
1376  dqmStore_->setCurrentFolder(MEFolderName+"/HitProperties/TEC");
1377 
1378  histname = "NumberOfTECRecHitsPerTrack_"+ CatagoryName;
1379  NumberOfTECRecHitsPerTrack = dqmStore_->book1D(histname, histname, TECHitBin, TECHitMin, TECHitMax);
1380  NumberOfTECRecHitsPerTrack->setAxisTitle("Number of TEC found RecHits of each Track",1);
1381  NumberOfTECRecHitsPerTrack->setAxisTitle("Number of Tracks", 2);
1382 
1383  histname = "NumberOfTECRecHitsPerTrackVsPhiProfile_" + CatagoryName;
1384  NumberOfTECRecHitsPerTrackVsPhiProfile = dqmStore_->bookProfile(histname, histname, PhiBin, PhiMin, PhiMax, TECHitBin, TECHitMin, TECHitMax,"");
1386  NumberOfTECRecHitsPerTrackVsPhiProfile->setAxisTitle("Number of TEC found RecHits of each Track",2);
1387 
1388  histname = "NumberOfTECRecHitsPerTrackVsEtaProfile_" + CatagoryName;
1389  NumberOfTECRecHitsPerTrackVsEtaProfile = dqmStore_->bookProfile(histname, histname, EtaBin, EtaMin, EtaMax, TECHitBin, TECHitMin, TECHitMax,"");
1391  NumberOfTECRecHitsPerTrackVsEtaProfile->setAxisTitle("Number of TEC found RecHits of each Track",2);
1392 
1393  histname = "NumberOfTECLayersPerTrack_"+ CatagoryName;
1394  NumberOfTECLayersPerTrack = dqmStore_->book1D(histname, histname, TECLayBin, TECLayMin, TECLayMax);
1395  NumberOfTECLayersPerTrack->setAxisTitle("Number of TEC Layers of each Track",1);
1396  NumberOfTECLayersPerTrack->setAxisTitle("Number of Tracks", 2);
1397 
1398  histname = "NumberOfTECLayersPerTrackVsPhiProfile_" + CatagoryName;
1399  NumberOfTECLayersPerTrackVsPhiProfile = dqmStore_->bookProfile(histname, histname, PhiBin, PhiMin, PhiMax, TECLayBin, TECLayMin, TECLayMax,"");
1401  NumberOfTECLayersPerTrackVsPhiProfile->setAxisTitle("Number of TEC Layers of each Track",2);
1402 
1403  histname = "NumberOfTECLayersPerTrackVsEtaProfile_" + CatagoryName;
1404  NumberOfTECLayersPerTrackVsEtaProfile = dqmStore_->bookProfile(histname, histname, EtaBin, EtaMin, EtaMax, TECLayBin, TECLayMin, TECLayMax,"");
1406  NumberOfTECLayersPerTrackVsEtaProfile->setAxisTitle("Number of TEC Layers of each Track",2);
1407 
1408 
1409  // PixBarrel hits properties
1410  dqmStore_->setCurrentFolder(MEFolderName+"/HitProperties/PixBarrel");
1411 
1412  histname = "NumberOfPixBarrelRecHitsPerTrack_" + CatagoryName;
1413  NumberOfPixBarrelRecHitsPerTrack = dqmStore_->book1D(histname, histname, PXBHitBin, PXBHitMin, PXBHitMax);
1414  NumberOfPixBarrelRecHitsPerTrack->setAxisTitle("Number of Pixel Barrel found RecHits of each Track",1);
1415  NumberOfPixBarrelRecHitsPerTrack->setAxisTitle("Number of Tracks", 2);
1416 
1417  histname = "NumberOfPixBarrelRecHitsPerTrackVsPhiProfile_" + CatagoryName;
1418  NumberOfPixBarrelRecHitsPerTrackVsPhiProfile = dqmStore_->bookProfile(histname, histname, PhiBin, PhiMin, PhiMax, PXBHitBin, PXBHitMin, PXBHitMax,"");
1420  NumberOfPixBarrelRecHitsPerTrackVsPhiProfile->setAxisTitle("Number of Pixel Barrel found RecHits of each Track",2);
1421 
1422  histname = "NumberOfPixBarrelRecHitsPerTrackVsEtaProfile_" + CatagoryName;
1423  NumberOfPixBarrelRecHitsPerTrackVsEtaProfile = dqmStore_->bookProfile(histname, histname, EtaBin, EtaMin, EtaMax, PXBHitBin, PXBHitMin, PXBHitMax,"");
1425  NumberOfPixBarrelRecHitsPerTrackVsEtaProfile->setAxisTitle("Number of Pixel Barrel found RecHits of each Track",2);
1426 
1427  histname = "NumberOfPixBarrelLayersPerTrack_" + CatagoryName;
1428  NumberOfPixBarrelLayersPerTrack = dqmStore_->book1D(histname, histname, PXBLayBin, PXBLayMin, PXBLayMax);
1429  NumberOfPixBarrelLayersPerTrack->setAxisTitle("Number of Pixel Barrel Layers of each Track",1);
1430  NumberOfPixBarrelLayersPerTrack->setAxisTitle("Number of Tracks", 2);
1431 
1432  histname = "NumberOfPixBarrelLayersPerTrackVsPhiProfile_" + CatagoryName;
1433  NumberOfPixBarrelLayersPerTrackVsPhiProfile = dqmStore_->bookProfile(histname, histname, PhiBin, PhiMin, PhiMax, PXBLayBin, PXBLayMin, PXBLayMax,"");
1435  NumberOfPixBarrelLayersPerTrackVsPhiProfile->setAxisTitle("Number of Pixel Barrel Layers of each Track",2);
1436 
1437  histname = "NumberOfPixBarrelLayersPerTrackVsEtaProfile_" + CatagoryName;
1438  NumberOfPixBarrelLayersPerTrackVsEtaProfile = dqmStore_->bookProfile(histname, histname, EtaBin, EtaMin, EtaMax, PXBLayBin, PXBLayMin, PXBLayMax,"");
1440  NumberOfPixBarrelLayersPerTrackVsEtaProfile->setAxisTitle("Number of Pixel Barrel Layers of each Track",2);
1441 
1442 
1443  // PixEndcap hits profiles
1444  dqmStore_->setCurrentFolder(MEFolderName+"/HitProperties/PixEndcap");
1445 
1446  histname = "NumberOfPixEndcapRecHitsPerTrack_" + CatagoryName;
1447  NumberOfPixEndcapRecHitsPerTrack = dqmStore_->book1D(histname, histname, PXFHitBin, PXFHitMin, PXFHitMax);
1448  NumberOfPixEndcapRecHitsPerTrack->setAxisTitle("Number of Pixel Endcap found RecHits of each Track",1);
1449  NumberOfPixEndcapRecHitsPerTrack->setAxisTitle("Number of Tracks", 2);
1450 
1451  histname = "NumberOfPixEndcapRecHitsPerTrackVsPhiProfile_" + CatagoryName;
1452  NumberOfPixEndcapRecHitsPerTrackVsPhiProfile = dqmStore_->bookProfile(histname, histname, PhiBin, PhiMin, PhiMax, PXBHitBin, PXBHitMin, PXBHitMax,"");
1454  NumberOfPixEndcapRecHitsPerTrackVsPhiProfile->setAxisTitle("Number of Pixel Endcap found RecHits of each Track",2);
1455 
1456  histname = "NumberOfPixEndcapRecHitsPerTrackVsEtaProfile_" + CatagoryName;
1457  NumberOfPixEndcapRecHitsPerTrackVsEtaProfile = dqmStore_->bookProfile(histname, histname, EtaBin, EtaMin, EtaMax, PXBHitBin, PXBHitMin, PXBHitMax,"");
1459  NumberOfPixEndcapRecHitsPerTrackVsEtaProfile->setAxisTitle("Number of Pixel Endcap found RecHits of each Track",2);
1460 
1461  histname = "NumberOfPixEndcapLayersPerTrack_" + CatagoryName;
1462  NumberOfPixEndcapLayersPerTrack = dqmStore_->book1D(histname, histname, PXFLayBin, PXFLayMin, PXFLayMax);
1463  NumberOfPixEndcapLayersPerTrack->setAxisTitle("Number of Pixel Endcap Layers of each Track",1);
1464  NumberOfPixEndcapLayersPerTrack->setAxisTitle("Number of Tracks", 2);
1465 
1466  histname = "NumberOfPixEndcapLayersPerTrackVsPhiProfile_" + CatagoryName;
1467  NumberOfPixEndcapLayersPerTrackVsPhiProfile = dqmStore_->bookProfile(histname, histname, PhiBin, PhiMin, PhiMax, PXBLayBin, PXBLayMin, PXBLayMax,"");
1469  NumberOfPixEndcapLayersPerTrackVsPhiProfile->setAxisTitle("Number of Pixel Endcap Layers of each Track",2);
1470 
1471  histname = "NumberOfPixEndcapLayersPerTrackVsEtaProfile_" + CatagoryName;
1472  NumberOfPixEndcapLayersPerTrackVsEtaProfile = dqmStore_->bookProfile(histname, histname, EtaBin, EtaMin, EtaMax, PXBLayBin, PXBLayMin, PXBLayMax,"");
1474  NumberOfPixEndcapLayersPerTrackVsEtaProfile->setAxisTitle("Number of Pixel Endcap Layers of each Track",2);
1475 
1476 }
T getParameter(std::string const &) const
MonitorElement * NumberOfPixEndcapLayersPerTrackVsEtaProfile
MonitorElement * NumberOfPixEndcapLayersPerTrack
MonitorElement * NumberOfPixBarrelLayersPerTrack
MonitorElement * NumberOfTOBLayersPerTrackVsPhiProfile
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
Definition: DQMStore.cc:717
MonitorElement * NumberOfTIDRecHitsPerTrackVsPhiProfile
MonitorElement * NumberOfTIBLayersPerTrack
MonitorElement * NumberOfTOBRecHitsPerTrack
MonitorElement * NumberOfPixEndcapRecHitsPerTrack
MonitorElement * NumberOfTECRecHitsPerTrackVsPhiProfile
MonitorElement * NumberOfPixBarrelRecHitsPerTrackVsPhiProfile
MonitorElement * NumberOfTIBRecHitsPerTrackVsPhiProfile
MonitorElement * NumberOfTIDRecHitsPerTrackVsEtaProfile
edm::ParameterSet conf_
Definition: TrackAnalyzer.h:49
MonitorElement * NumberOfPixBarrelRecHitsPerTrackVsEtaProfile
const double EtaMax[kNumberCalorimeter]
MonitorElement * NumberOfPixEndcapLayersPerTrackVsPhiProfile
MonitorElement * NumberOfTIBLayersPerTrackVsEtaProfile
MonitorElement * NumberOfPixEndcapRecHitsPerTrackVsEtaProfile
MonitorElement * NumberOfTECLayersPerTrackVsEtaProfile
MonitorElement * NumberOfPixBarrelLayersPerTrackVsPhiProfile
MonitorElement * NumberOfTOBLayersPerTrack
MonitorElement * NumberOfTECLayersPerTrack
MonitorElement * NumberOfTIDRecHitsPerTrack
MonitorElement * NumberOfTIDLayersPerTrack
MonitorElement * NumberOfTECRecHitsPerTrackVsEtaProfile
MonitorElement * NumberOfTIDLayersPerTrackVsPhiProfile
const double EtaMin[kNumberCalorimeter]
MonitorElement * bookProfile(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, const char *option="s")
Definition: DQMStore.cc:1031
MonitorElement * NumberOfPixBarrelLayersPerTrackVsEtaProfile
MonitorElement * NumberOfTOBRecHitsPerTrackVsPhiProfile
MonitorElement * NumberOfTIBLayersPerTrackVsPhiProfile
MonitorElement * NumberOfTIBRecHitsPerTrackVsEtaProfile
MonitorElement * NumberOfPixEndcapRecHitsPerTrackVsPhiProfile
MonitorElement * NumberOfTECLayersPerTrackVsPhiProfile
MonitorElement * NumberOfTIDLayersPerTrackVsEtaProfile
MonitorElement * NumberOfTOBLayersPerTrackVsEtaProfile
MonitorElement * NumberOfTECRecHitsPerTrack
MonitorElement * NumberOfPixBarrelRecHitsPerTrack
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:429
std::string histname
MonitorElement * NumberOfTOBRecHitsPerTrackVsEtaProfile
MonitorElement * NumberOfTIBRecHitsPerTrack
void TrackAnalyzer::fillHistosForState ( const edm::EventSetup iSetup,
const reco::Track track,
std::string  sname 
)
private

Definition at line 1040 of file TrackAnalyzer.cc.

References TrajectoryStateOnSurface::cartesianError(), reco::TrackBase::charge(), TrajectoryStateOnSurface::charge(), TrackAnalyzer::TkParameterMEs::Chi2oNDFVsEta, TrackAnalyzer::TkParameterMEs::Chi2oNDFVsPhi, TrackAnalyzer::TkParameterMEs::Chi2oNDFVsTheta, TrajectoryStateOnSurface::curvilinearError(), doAllPlots_, doGoodTrackPlots_, doThetaPlots_, doTrackPxPyPlots_, benchmark_cfg::errors, PV3DBase< T, PVType, FrameType >::eta(), reco::TrackBase::eta(), eta(), reco::TrackBase::etaError(), MonitorElement::Fill(), edm::EventSetup::get(), TrajectoryStateOnSurface::globalMomentum(), TrackAnalyzer::TkParameterMEs::GoodTrackEta, TrackAnalyzer::TkParameterMEs::GoodTrackPhi, TrackAnalyzer::TkParameterMEs::GoodTrackPt, reco::TrackBase::highPurity, reco::TrackBase::hitPattern(), reco::TransientTrack::impactPointState(), reco::TransientTrack::innermostMeasurementState(), PV3DBase< T, PVType, FrameType >::mag(), CartesianTrajectoryError::matrix(), CurvilinearTrajectoryError::matrix(), reco::TrackBase::normalizedChi2(), TrackAnalyzer::TkParameterMEs::NumberOfLayersPerTrackVsEtaProfile, TrackAnalyzer::TkParameterMEs::NumberOfLayersPerTrackVsPhiProfile, TrackAnalyzer::TkParameterMEs::NumberOfLayersPerTrackVsThetaProfile, TrackAnalyzer::TkParameterMEs::NumberOfRecHitsPerTrackVsEtaProfile, TrackAnalyzer::TkParameterMEs::NumberOfRecHitsPerTrackVsPhiProfile, TrackAnalyzer::TkParameterMEs::NumberOfRecHitsPerTrackVsThetaProfile, reco::HitPattern::numberOfValidHits(), reco::TransientTrack::outermostMeasurementState(), reco::TrackBase::p(), AlCaHLTBitMon_ParallelJobs::p, PV3DBase< T, PVType, FrameType >::perp(), phi, PV3DBase< T, PVType, FrameType >::phi(), reco::TrackBase::phi(), reco::TrackBase::phiError(), funct::pow(), reco::TrackBase::pt(), reco::TrackBase::ptError(), reco::TrackBase::px(), reco::TrackBase::py(), reco::TrackBase::pz(), lumiQueryAPI::q, reco::TrackBase::quality(), funct::sin(), mathSSE::sqrt(), reco::HitPattern::stripLayersWithMeasurement(), PV3DBase< T, PVType, FrameType >::theta(), reco::TrackBase::theta(), theta(), TkParameterMEMap, TrackAnalyzer::TkParameterMEs::TrackEta, TrackAnalyzer::TkParameterMEs::TrackEtaErr, TrackAnalyzer::TkParameterMEs::TrackP, TrackAnalyzer::TkParameterMEs::TrackPErr, TrackAnalyzer::TkParameterMEs::TrackPhi, TrackAnalyzer::TkParameterMEs::TrackPhiErr, TrackAnalyzer::TkParameterMEs::TrackPt, TrackAnalyzer::TkParameterMEs::TrackPtErr, TrackAnalyzer::TkParameterMEs::TrackPtErrVsEta, TrackAnalyzer::TkParameterMEs::TrackPx, TrackAnalyzer::TkParameterMEs::TrackPxErr, TrackAnalyzer::TkParameterMEs::TrackPy, TrackAnalyzer::TkParameterMEs::TrackPyErr, TrackAnalyzer::TkParameterMEs::TrackPz, TrackAnalyzer::TkParameterMEs::TrackPzErr, TrackAnalyzer::TkParameterMEs::TrackQ, TrackAnalyzer::TkParameterMEs::TrackTheta, PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().

Referenced by analyze().

1041 {
1042  //get the kinematic parameters
1043  double p, px, py, pz, pt, theta, phi, eta, q;
1044  double pxerror, pyerror, pzerror, pterror, perror, phierror, etaerror;
1045 
1046  bool isHighPurity = track.quality(reco::TrackBase::highPurity);
1047 
1048  if (sname == "default")
1049  {
1050  p = track.p();
1051  px = track.px();
1052  py = track.py();
1053  pz = track.pz();
1054  pt = track.pt();
1055  phi = track.phi();
1056  theta = track.theta();
1057  eta = track.eta();
1058  q = track.charge();
1059 
1060  // pterror = (pt) ? track.ptError()/pt : 0.0;
1061  pterror = (pt) ? track.ptError()/(pt*pt) : 0.0;
1062  pxerror = -1.0;
1063  pyerror = -1.0;
1064  pzerror = -1.0;
1065  perror = -1.0;
1066  phierror = track.phiError();
1067  etaerror = track.etaError();
1068 
1069  }
1070  else
1071  {
1073  iSetup.get<TransientTrackRecord>().get("TransientTrackBuilder",theB);
1074  reco::TransientTrack TransTrack = theB->build(track);
1075 
1077 
1078  if (sname == "OuterSurface") TSOS = TransTrack.outermostMeasurementState();
1079  else if (sname == "InnerSurface") TSOS = TransTrack.innermostMeasurementState();
1080  else if (sname == "ImpactPoint") TSOS = TransTrack.impactPointState();
1081 
1082  p = TSOS.globalMomentum().mag();
1083  px = TSOS.globalMomentum().x();
1084  py = TSOS.globalMomentum().y();
1085  pz = TSOS.globalMomentum().z();
1086  pt = TSOS.globalMomentum().perp();
1087  phi = TSOS.globalMomentum().phi();
1088  theta = TSOS.globalMomentum().theta();
1089  eta = TSOS.globalMomentum().eta();
1090  q = TSOS.charge();
1091 
1092  //get the error of the kinimatic parameters
1094  double partialPterror = errors(3,3)*pow(TSOS.globalMomentum().x(),2) + errors(4,4)*pow(TSOS.globalMomentum().y(),2);
1095  pterror = sqrt(partialPterror)/TSOS.globalMomentum().perp();
1096  pxerror = sqrt(errors(3,3))/TSOS.globalMomentum().x();
1097  pyerror = sqrt(errors(4,4))/TSOS.globalMomentum().y();
1098  pzerror = sqrt(errors(5,5))/TSOS.globalMomentum().z();
1099  perror = sqrt(partialPterror+errors(5,5)*pow(TSOS.globalMomentum().z(),2))/TSOS.globalMomentum().mag();
1100  phierror = sqrt(TSOS.curvilinearError().matrix()(2,2));
1101  etaerror = sqrt(TSOS.curvilinearError().matrix()(1,1))*fabs(sin(TSOS.globalMomentum().theta()));
1102 
1103  }
1104 
1105  std::map<std::string, TkParameterMEs>::iterator iPos = TkParameterMEMap.find(sname);
1106  if (iPos != TkParameterMEMap.end())
1107  {
1108  TkParameterMEs tkmes = iPos->second;
1109 
1110  // momentum
1111  tkmes.TrackP->Fill(p);
1112  if (doTrackPxPyPlots_) {
1113  tkmes.TrackPx->Fill(px);
1114  tkmes.TrackPy->Fill(py);
1115  }
1116  tkmes.TrackPz->Fill(pz);
1117  tkmes.TrackPt->Fill(pt);
1118 
1119  // angles
1120  tkmes.TrackPhi->Fill(phi);
1121  tkmes.TrackEta->Fill(eta);
1122  if (doThetaPlots_) {
1123  tkmes.TrackTheta->Fill(theta);
1124  }
1125  tkmes.TrackQ->Fill(q);
1126 
1127  // errors
1128  tkmes.TrackPtErr->Fill(pterror);
1129  tkmes.TrackPtErrVsEta->Fill(eta,pterror);
1130  if (doTrackPxPyPlots_) {
1131  tkmes.TrackPxErr->Fill(pxerror);
1132  tkmes.TrackPyErr->Fill(pyerror);
1133  }
1134  tkmes.TrackPzErr->Fill(pzerror);
1135  tkmes.TrackPErr->Fill(perror);
1136  tkmes.TrackPhiErr->Fill(phierror);
1137  tkmes.TrackEtaErr->Fill(etaerror);
1138 
1139  // rec hits
1140  tkmes.NumberOfRecHitsPerTrackVsPhiProfile->Fill(phi, track.hitPattern().numberOfValidHits());
1141  if (doThetaPlots_) {
1142  tkmes.NumberOfRecHitsPerTrackVsThetaProfile->Fill(theta,track.hitPattern().numberOfValidHits());
1143  }
1144  tkmes.NumberOfRecHitsPerTrackVsEtaProfile->Fill(eta, track.hitPattern().numberOfValidHits());
1145 
1146 
1147  // rec layers
1148  tkmes.NumberOfLayersPerTrackVsPhiProfile->Fill(phi, track.hitPattern().stripLayersWithMeasurement());
1149  if (doThetaPlots_) {
1150  tkmes.NumberOfLayersPerTrackVsThetaProfile->Fill(theta, track.hitPattern().stripLayersWithMeasurement());
1151  }
1152  tkmes.NumberOfLayersPerTrackVsEtaProfile->Fill(eta, track.hitPattern().stripLayersWithMeasurement());
1153 
1154  if(doAllPlots_)
1155  {
1156  /*
1157  // COMMENTED because the same MEs are already fill below !!!!
1158  // hit related
1159  tkmes.NumberOfRecHitsPerTrackVsPhi->Fill(phi, track.found());
1160  if (doThetaPlots_) {
1161  tkmes.NumberOfRecHitsPerTrackVsTheta->Fill(theta, track.found());
1162  }
1163  tkmes.NumberOfRecHitsPerTrackVsEta->Fill(eta, track.found());
1164  */
1165 
1166  // general properties
1167  if (doThetaPlots_) {
1168  tkmes.Chi2oNDFVsTheta->Fill(theta, track.normalizedChi2());
1169  }
1170  tkmes.Chi2oNDFVsPhi->Fill(phi, track.normalizedChi2());
1171  tkmes.Chi2oNDFVsEta->Fill(eta, track.normalizedChi2());
1172 
1173  // COMMENTED because there are already those quantity in blablaProfile !!
1174  /*
1175  // rec hits
1176  tkmes.NumberOfRecHitsPerTrackVsPhi->Fill(phi, track.hitPattern().numberOfValidHits());
1177  if (doThetaPlots_) {
1178  tkmes.NumberOfRecHitsPerTrackVsTheta->Fill(theta, track.hitPattern().numberOfValidHits());
1179  }
1180  tkmes.NumberOfRecHitsPerTrackVsEta->Fill(eta, track.hitPattern().numberOfValidHits());
1181  */
1182 
1183  }
1184 
1185  if ( doGoodTrackPlots_ || doAllPlots_ ) {
1186  if ( isHighPurity && pt > 1. ) {
1187  tkmes.GoodTrackPt->Fill(pt);
1188  tkmes.GoodTrackEta->Fill(eta);
1189  tkmes.GoodTrackPhi->Fill(phi);
1190  }
1191  }
1192 
1193  }
1194 }
double p() const
momentum vector magnitude
Definition: TrackBase.h:129
T perp() const
Definition: PV3DBase.h:71
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:111
double theta() const
polar angle
Definition: TrackBase.h:117
int numberOfValidHits() const
Definition: HitPattern.h:554
const CurvilinearTrajectoryError & curvilinearError() const
Sin< T >::type sin(const T &t)
Definition: Sin.h:22
ROOT::Math::SMatrix< double, 6, 6, ROOT::Math::MatRepSym< double, 6 > > AlgebraicSymMatrix66
Geom::Phi< T > phi() const
Definition: PV3DBase.h:68
const CartesianTrajectoryError cartesianError() const
Geom::Theta< T > theta() const
T y() const
Definition: PV3DBase.h:62
double etaError() const
error on eta
Definition: TrackBase.h:205
double phi() const
azimuthal angle of momentum vector
Definition: TrackBase.h:139
std::map< std::string, TkParameterMEs > TkParameterMEMap
double px() const
x coordinate of momentum vector
Definition: TrackBase.h:133
T eta() const
TrajectoryStateOnSurface innermostMeasurementState() const
Geom::Theta< T > theta() const
Definition: PV3DBase.h:74
T mag() const
Definition: PV3DBase.h:66
double eta() const
pseudorapidity of momentum vector
Definition: TrackBase.h:141
T sqrt(T t)
Definition: SSEVec.h:46
double pt() const
track transverse momentum
Definition: TrackBase.h:131
T z() const
Definition: PV3DBase.h:63
double ptError() const
error on Pt (set to 1000 TeV if charge==0 for safety)
Definition: TrackBase.h:194
double phiError() const
error on phi
Definition: TrackBase.h:207
TrajectoryStateOnSurface outermostMeasurementState() const
const HitPattern & hitPattern() const
Access the hit pattern, indicating in which Tracker layers the track has hits.
Definition: TrackBase.h:223
const AlgebraicSymMatrix66 & matrix() const
double pz() const
z coordinate of momentum vector
Definition: TrackBase.h:137
TrajectoryStateOnSurface TSOS
Definition: TestHits.cc:23
bool doGoodTrackPlots_
Definition: TrackAnalyzer.h:54
const T & get() const
Definition: EventSetup.h:55
int stripLayersWithMeasurement() const
Definition: HitPattern.h:715
bool quality(const TrackQuality) const
Track quality.
Definition: TrackBase.h:377
T eta() const
Definition: PV3DBase.h:75
bool doTrackPxPyPlots_
Definition: TrackAnalyzer.h:69
const AlgebraicSymMatrix55 & matrix() const
GlobalVector globalMomentum() const
int charge() const
track electric charge
Definition: TrackBase.h:113
TrajectoryStateOnSurface impactPointState() const
T x() const
Definition: PV3DBase.h:61
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:40
double py() const
y coordinate of momentum vector
Definition: TrackBase.h:135
Definition: DDAxes.h:10
void TrackAnalyzer::setLumiFlag ( )

Definition at line 1544 of file TrackAnalyzer.cc.

References Chi2oNDF_lumiFlag, GoodTrackChi2oNDF_lumiFlag, GoodTrackNumberOfRecHitsPerTrack_lumiFlag, and NumberOfRecHitsPerTrack_lumiFlag.

Referenced by TrackingMonitor::beginJob().

1544  {
1545  /*
1546  if (Chi2oNDF) Chi2oNDF->setLumiFlag();
1547  if (NumberOfRecHitsPerTrack) NumberOfRecHitsPerTrack->setLumiFlag();
1548  if (GoodTrackChi2oNDF) GoodTrackChi2oNDF->setLumiFlag();
1549  if (GoodTrackNumberOfRecHitsPerTrack) GoodTrackNumberOfRecHitsPerTrack->setLumiFlag();
1550  */
1555 }
MonitorElement * Chi2oNDF_lumiFlag
MonitorElement * GoodTrackNumberOfRecHitsPerTrack_lumiFlag
MonitorElement * NumberOfRecHitsPerTrack_lumiFlag
MonitorElement * GoodTrackChi2oNDF_lumiFlag
void TrackAnalyzer::undoSoftReset ( DQMStore dqmStore_)

Definition at line 1577 of file TrackAnalyzer.cc.

References Chi2oNDF, DQMStore::disableSoftReset(), GoodTrackChi2oNDF, GoodTrackNumberOfRecHitsPerTrack, and NumberOfRecHitsPerTrack.

1577  {
1578  dqmStore_->disableSoftReset(Chi2oNDF);
1580  dqmStore_->disableSoftReset(GoodTrackChi2oNDF);
1582 }
MonitorElement * GoodTrackNumberOfRecHitsPerTrack
MonitorElement * NumberOfRecHitsPerTrack
Definition: TrackAnalyzer.h:79
MonitorElement * GoodTrackChi2oNDF
void disableSoftReset(MonitorElement *me)
Definition: DQMStore.cc:2742
MonitorElement * Chi2oNDF
Definition: TrackAnalyzer.h:87

Member Data Documentation

MonitorElement* TrackAnalyzer::algorithm
private

Definition at line 102 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::Chi2
private

Definition at line 85 of file TrackAnalyzer.h.

MonitorElement* TrackAnalyzer::Chi2oNDF
private

Definition at line 87 of file TrackAnalyzer.h.

Referenced by analyze(), beginJob(), doSoftReset(), and undoSoftReset().

MonitorElement* TrackAnalyzer::Chi2oNDF_lumiFlag
private

Definition at line 108 of file TrackAnalyzer.h.

Referenced by analyze(), beginJob(), doReset(), and setLumiFlag().

MonitorElement* TrackAnalyzer::Chi2Prob
private

Definition at line 86 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

edm::ParameterSet TrackAnalyzer::conf_
private
MonitorElement* TrackAnalyzer::DistanceOfClosestApproach
private

Definition at line 88 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::DistanceOfClosestApproachToBS
private

Definition at line 89 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::DistanceOfClosestApproachToBSVsPhi
private

Definition at line 92 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::DistanceOfClosestApproachVsEta
private

Definition at line 93 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::DistanceOfClosestApproachVsPhi
private

Definition at line 91 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::DistanceOfClosestApproachVsTheta
private

Definition at line 90 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

bool TrackAnalyzer::doAllPlots_
private

Definition at line 52 of file TrackAnalyzer.h.

Referenced by analyze(), beginJob(), bookHistosForState(), and fillHistosForState().

bool TrackAnalyzer::doBSPlots_
private

Definition at line 53 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

bool TrackAnalyzer::doDCAPlots_
private

Definition at line 55 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

bool TrackAnalyzer::doDCAwrt000Plots_
private

Definition at line 72 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

bool TrackAnalyzer::doGeneralPropertiesPlots_
private

Definition at line 56 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

bool TrackAnalyzer::doGoodTrack2DChi2Plots_
private

Definition at line 64 of file TrackAnalyzer.h.

bool TrackAnalyzer::doGoodTrackLayersVsPhiVsEtaPerTrack_
private

Definition at line 63 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

bool TrackAnalyzer::doGoodTrackPlots_
private

Definition at line 54 of file TrackAnalyzer.h.

Referenced by analyze(), beginJob(), bookHistosForState(), and fillHistosForState().

bool TrackAnalyzer::doGoodTrackRecHitVsPhiVsEtaPerTrack_
private

Definition at line 62 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

bool TrackAnalyzer::doHitPropertiesPlots_
private

Definition at line 58 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

bool TrackAnalyzer::doLayersVsPhiVsEtaPerTrack_
private

Definition at line 61 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

bool TrackAnalyzer::doLumiAnalysis_
private

Definition at line 74 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

bool TrackAnalyzer::doMeasurementStatePlots_
private

Definition at line 57 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

bool TrackAnalyzer::doRecHitVsPhiVsEtaPerTrack_
private

Definition at line 59 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

bool TrackAnalyzer::doTestPlots_
private

Definition at line 77 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

bool TrackAnalyzer::doThetaPlots_
private

Definition at line 68 of file TrackAnalyzer.h.

Referenced by analyze(), beginJob(), bookHistosForState(), and fillHistosForState().

bool TrackAnalyzer::doTrackerSpecific_
private

Definition at line 51 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

bool TrackAnalyzer::doTrackPxPyPlots_
private

Definition at line 69 of file TrackAnalyzer.h.

Referenced by bookHistosForState(), and fillHistosForState().

MonitorElement* TrackAnalyzer::GoodTrackAlgorithm
private

Definition at line 169 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::GoodTrackChi2oNDF
private

Definition at line 161 of file TrackAnalyzer.h.

Referenced by analyze(), beginJob(), doSoftReset(), and undoSoftReset().

MonitorElement* TrackAnalyzer::GoodTrackChi2oNDF_lumiFlag
private

Definition at line 110 of file TrackAnalyzer.h.

Referenced by analyze(), beginJob(), doReset(), and setLumiFlag().

MonitorElement* TrackAnalyzer::GoodTrackChi2oNDFVsEta
private

Definition at line 165 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::GoodTrackChi2oNDFVsPhi
private

Definition at line 163 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::GoodTrackChi2Prob
private

Definition at line 162 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::GoodTrackChi2ProbVsEta
private

Definition at line 166 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::GoodTrackChi2ProbVsPhi
private

Definition at line 164 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::GoodTrackNumberOfFoundRecHitsPerTrack
private

Definition at line 168 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::GoodTrackNumberOfFoundRecHitsPerTrackVsEtaProfile
private

Definition at line 160 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::GoodTrackNumberOfFoundRecHitsPerTrackVsPhiProfile
private

Definition at line 159 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::GoodTrackNumberOfLayersVsPhiVsEtaPerTrack
private

Definition at line 156 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::GoodTrackNumberOfRecHitsPerTrack
private

Definition at line 167 of file TrackAnalyzer.h.

Referenced by analyze(), beginJob(), doSoftReset(), and undoSoftReset().

MonitorElement* TrackAnalyzer::GoodTrackNumberOfRecHitsPerTrack_lumiFlag
private

Definition at line 111 of file TrackAnalyzer.h.

Referenced by analyze(), beginJob(), doReset(), and setLumiFlag().

MonitorElement* TrackAnalyzer::GoodTrackNumberOfRecHitsPerTrackVsEtaProfile
private

Definition at line 158 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::GoodTrackNumberOfRecHitsPerTrackVsPhiProfile
private

Definition at line 157 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::GoodTrackNumberOfRecHitVsPhiVsEtaPerTrack
private

Definition at line 155 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

std::string TrackAnalyzer::histname
private

Definition at line 274 of file TrackAnalyzer.h.

Referenced by beginJob(), bookHistosForState(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfLayersPerTrack
private

Definition at line 82 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::NumberOfLayersVsPhiVsEtaPerTrack
private

Definition at line 84 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::NumberOfPixBarrelLayersPerTrack
private

Definition at line 144 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfPixBarrelLayersPerTrackVsEtaProfile
private

Definition at line 146 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfPixBarrelLayersPerTrackVsPhiProfile
private

Definition at line 145 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfPixBarrelRecHitsPerTrack
private

Definition at line 141 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfPixBarrelRecHitsPerTrackVsEtaProfile
private

Definition at line 143 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfPixBarrelRecHitsPerTrackVsPhiProfile
private

Definition at line 142 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfPixEndcapLayersPerTrack
private

Definition at line 151 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfPixEndcapLayersPerTrackVsEtaProfile
private

Definition at line 153 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfPixEndcapLayersPerTrackVsPhiProfile
private

Definition at line 152 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfPixEndcapRecHitsPerTrack
private

Definition at line 148 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfPixEndcapRecHitsPerTrackVsEtaProfile
private

Definition at line 150 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfPixEndcapRecHitsPerTrackVsPhiProfile
private

Definition at line 149 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfRecHitsFoundPerTrack
private

Definition at line 80 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::NumberOfRecHitsLostPerTrack
private

Definition at line 81 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::NumberOfRecHitsPerTrack
private

Definition at line 79 of file TrackAnalyzer.h.

Referenced by analyze(), beginJob(), doSoftReset(), and undoSoftReset().

MonitorElement* TrackAnalyzer::NumberOfRecHitsPerTrack_lumiFlag
private

Definition at line 109 of file TrackAnalyzer.h.

Referenced by analyze(), beginJob(), doReset(), and setLumiFlag().

MonitorElement* TrackAnalyzer::NumberOfRecHitVsPhiVsEtaPerTrack
private

Definition at line 83 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::NumberOfTECLayersPerTrack
private

Definition at line 137 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTECLayersPerTrackVsEtaProfile
private

Definition at line 139 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTECLayersPerTrackVsPhiProfile
private

Definition at line 138 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTECRecHitsPerTrack
private

Definition at line 134 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTECRecHitsPerTrackVsEtaProfile
private

Definition at line 136 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTECRecHitsPerTrackVsPhiProfile
private

Definition at line 135 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTIBLayersPerTrack
private

Definition at line 123 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTIBLayersPerTrackVsEtaProfile
private

Definition at line 125 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTIBLayersPerTrackVsPhiProfile
private

Definition at line 124 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTIBRecHitsPerTrack
private

Definition at line 120 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTIBRecHitsPerTrackVsEtaProfile
private

Definition at line 122 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTIBRecHitsPerTrackVsPhiProfile
private

Definition at line 121 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTIDLayersPerTrack
private

Definition at line 130 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTIDLayersPerTrackVsEtaProfile
private

Definition at line 132 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTIDLayersPerTrackVsPhiProfile
private

Definition at line 131 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTIDRecHitsPerTrack
private

Definition at line 127 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTIDRecHitsPerTrackVsEtaProfile
private

Definition at line 129 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTIDRecHitsPerTrackVsPhiProfile
private

Definition at line 128 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTOBLayersPerTrack
private

Definition at line 116 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTOBLayersPerTrackVsEtaProfile
private

Definition at line 118 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTOBLayersPerTrackVsPhiProfile
private

Definition at line 117 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTOBRecHitsPerTrack
private

Definition at line 113 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTOBRecHitsPerTrackVsEtaProfile
private

Definition at line 115 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::NumberOfTOBRecHitsPerTrackVsPhiProfile
private

Definition at line 114 of file TrackAnalyzer.h.

Referenced by doTrackerSpecificFillHists(), and doTrackerSpecificInitialization().

MonitorElement* TrackAnalyzer::TESTDistanceOfClosestApproachToBS
private

Definition at line 104 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::TESTDistanceOfClosestApproachToBSVsPhi
private

Definition at line 105 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

std::map<std::string, TkParameterMEs> TrackAnalyzer::TkParameterMEMap
private

Definition at line 272 of file TrackAnalyzer.h.

Referenced by bookHistosForState(), and fillHistosForState().

MonitorElement* TrackAnalyzer::xPointOfClosestApproach
private

Definition at line 94 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::xPointOfClosestApproachVsZ0wrt000
private

Definition at line 95 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::xPointOfClosestApproachVsZ0wrtBS
private

Definition at line 96 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::yPointOfClosestApproach
private

Definition at line 97 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::yPointOfClosestApproachVsZ0wrt000
private

Definition at line 98 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::yPointOfClosestApproachVsZ0wrtBS
private

Definition at line 99 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::zPointOfClosestApproach
private

Definition at line 100 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().

MonitorElement* TrackAnalyzer::zPointOfClosestApproachVsPhi
private

Definition at line 101 of file TrackAnalyzer.h.

Referenced by analyze(), and beginJob().