125 unsigned int numAllTracks = 0;
126 unsigned int numHQTracks = 0;
133 unsigned int tkCnt = 0;
134 for (
const auto &iterTTTrack : *TTTrackHandle) {
137 unsigned int nStubs = tempTrackPtr->getStubRefs().size();
138 int nBarrelStubs = 0;
141 float track_eta = tempTrackPtr->momentum().eta();
142 float track_d0 = tempTrackPtr->d0();
143 float track_bendchi2 = tempTrackPtr->stubPtConsistency();
144 float track_chi2 = tempTrackPtr->chi2();
145 float track_chi2dof = tempTrackPtr->chi2Red();
146 float track_chi2rz = tempTrackPtr->chi2Z();
147 float track_chi2rphi = tempTrackPtr->chi2XY();
148 float track_MVA1 = tempTrackPtr->trkMVA1();
149 int nLayersMissed = 0;
150 unsigned int hitPattern_ = (
unsigned int)tempTrackPtr->hitPattern();
152 int nbits = floor(log2(hitPattern_)) + 1;
155 for (
int i = 0;
i < nbits;
i++) {
156 lay_i = ((1 <<
i) & hitPattern_) >>
i;
164 theStubs = iterTTTrack.getStubRefs();
165 for (
const auto &istub : theStubs) {
166 bool inBarrel =
false;
396 HistoName =
"Track_All_Chi2_Probability";
399 psTrack_Chi2_Probability.
getParameter<int32_t>(
"Nbinsx"),
618 psTrack_Chi2_Probability.
getParameter<int32_t>(
"Nbinsx"),
693 psd0.
add<
int>(
"Nbinsx", 8);
694 psd0.
add<
double>(
"xmax", 8);
695 psd0.
add<
double>(
"xmin", 0);
700 psd0.
add<
int>(
"Nbinsx", 100);
701 psd0.
add<
double>(
"xmax", 399);
702 psd0.
add<
double>(
"xmin", 0);
707 psd0.
add<
int>(
"Nbinsx", 50);
708 psd0.
add<
double>(
"xmax", 100);
709 psd0.
add<
double>(
"xmin", 0);
714 psd0.
add<
int>(
"Nbinsx", 60);
715 psd0.
add<
double>(
"xmax", 3.5);
716 psd0.
add<
double>(
"xmin", -3.5);
721 psd0.
add<
int>(
"Nbinsx", 50);
722 psd0.
add<
double>(
"xmax", 5.0);
723 psd0.
add<
double>(
"xmin", -5.0);
728 psd0.
add<
int>(
"Nbinsx", 45);
729 psd0.
add<
double>(
"xmax", 3.0);
730 psd0.
add<
double>(
"xmin", -3.0);
735 psd0.
add<
int>(
"Nbinsx", 41);
736 psd0.
add<
double>(
"xmax", 20);
737 psd0.
add<
double>(
"xmin", -20);
742 psd0.
add<
int>(
"Nbinsx", 100);
743 psd0.
add<
double>(
"xmax", 50);
744 psd0.
add<
double>(
"xmin", 0);
749 psd0.
add<
int>(
"Nbinsx", 100);
750 psd0.
add<
double>(
"xmax", 10);
751 psd0.
add<
double>(
"xmin", 0);
756 psd0.
add<
int>(
"Nbinsx", 100);
757 psd0.
add<
double>(
"xmax", 1);
758 psd0.
add<
double>(
"xmin", 0);
763 psd0.
add<
int>(
"Nbinsx", 100);
764 psd0.
add<
double>(
"xmax", 1);
765 psd0.
add<
double>(
"xmin", 0);
770 psd0.
add<
int>(
"Nbinsx", 5);
771 psd0.
add<
double>(
"xmax", 8);
772 psd0.
add<
double>(
"xmin", 3);
773 psd0.
add<
int>(
"Nbinsy", 15);
774 psd0.
add<
double>(
"ymax", 10);
775 psd0.
add<
double>(
"ymin", 0);
780 psd0.
add<
int>(
"Nbinsx", 15);
781 psd0.
add<
double>(
"xmax", 3.0);
782 psd0.
add<
double>(
"xmin", -3.0);
783 psd0.
add<
int>(
"Nbinsy", 15);
784 psd0.
add<
double>(
"ymax", 10);
785 psd0.
add<
double>(
"ymin", 0);
790 psd0.
add<
int>(
"Nbinsx", 15);
791 psd0.
add<
double>(
"xmax", 3.0);
792 psd0.
add<
double>(
"xmin", -3.0);
793 psd0.
add<
int>(
"Nbinsy", 5);
794 psd0.
add<
double>(
"ymax", 8);
795 psd0.
add<
double>(
"ymin", 3);
800 desc.add<
int>(
"HQNStubs", 4);
801 desc.add<
double>(
"HQChi2dof", 10.0);
802 desc.add<
double>(
"HQBendChi2", 2.2);
803 descriptions.
add(
"Phase2OTMonitorTTTrack",
desc);
MonitorElement * Track_All_NLayersMissed
T getParameter(std::string const &) const
MonitorElement * Track_HQ_Chi2Red_Eta
MonitorElement * Track_HQ_NStubs
MonitorElement * Track_All_Pt
MonitorElement * Track_HQ_Chi2Red
MonitorElement * Track_All_D0
virtual void setCurrentFolder(std::string const &fullpath)
MonitorElement * Track_All_VtxZ
MonitorElement * Track_All_Eta
MonitorElement * Track_HQ_VtxZ
MonitorElement * Track_All_MVA1
MonitorElement * Track_HQ_Chi2Red_NStubs
Phase2OTMonitorTTTrack(const edm::ParameterSet &)
MonitorElement * Track_All_Chi2_Probability
MonitorElement * Track_HQ_N
High-quality TTTracks; different depending on prompt vs displaced tracks.
MonitorElement * Track_HQ_Chi2RPhi
MonitorElement * Track_All_NStubs
MonitorElement * Track_HQ_MVA1
std::string topFolderName_
MonitorElement * Track_HQ_NLayersMissed
MonitorElement * Track_HQ_Eta_ECStubs
MonitorElement * Track_All_Eta_ECStubs
MonitorElement * Track_HQ_Chi2_Probability
MonitorElement * Track_HQ_BendChi2
MonitorElement * Track_All_BendChi2
MonitorElement * Track_HQ_D0
MonitorElement * Track_HQ_Eta_BarrelStubs
MonitorElement * Track_All_Chi2Red_NStubs
MonitorElement * Track_All_Chi2RZ
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
void analyze(const edm::Event &, const edm::EventSetup &) override
float ChiSquaredProbability(double chiSquared, double nrDOF)
#define DEFINE_FWK_MODULE(type)
static constexpr auto TOB
ParameterDescriptionBase * add(U const &iLabel, T const &value)
Class to store the L1 Track Trigger stubs.
MonitorElement * Track_All_Chi2
MonitorElement * Track_All_N
Low-quality TTTracks (All tracks)
MonitorElement * Track_HQ_Pt
MonitorElement * book2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, FUNC onbooking=NOOP())
MonitorElement * Track_All_Eta_BarrelStubs
void add(std::string const &label, ParameterSetDescription const &psetDescription)
MonitorElement * Track_HQ_Eta
MonitorElement * Track_HQ_Chi2
edm::EDGetTokenT< std::vector< TTTrack< Ref_Phase2TrackerDigi_ > > > ttTrackToken_
MonitorElement * Track_HQ_Chi2RZ
MonitorElement * Track_All_Chi2Red
MonitorElement * Track_HQ_Phi
MonitorElement * Track_HQ_Eta_NStubs
MonitorElement * Track_All_Chi2RPhi
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
MonitorElement * Track_All_Chi2Red_Eta
MonitorElement * Track_All_Eta_NStubs
static constexpr auto TID
~Phase2OTMonitorTTTrack() override
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
MonitorElement * Track_All_Phi
virtual void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)