31 Pixel(
double x = 0,
double y = 0,
double z = 0,
double eta = 0,
32 double phi = 0,
double adc = 0,
double sx = 0,
double sy = 0)
36 rho_(
TMath::Sqrt(x_ * x_ + y_ * y_)),
46 rho_(
TMath::Sqrt(x_ * x_ + y_ * y_)),
52 double adc()
const {
return adc_; }
53 double eta()
const {
return eta_; }
54 double rho()
const {
return rho_; }
55 double phi()
const {
return phi_; }
56 double sizex()
const {
return sizex_; }
57 double sizey()
const {
return sizey_; }
58 double x()
const {
return x_; }
59 double y()
const {
return y_; }
60 double z()
const {
return z_; }
63 double x_, y_,
z_, rho_, eta_, phi_;
68 Tracklet() : i1_(-1), i2_(-2), deta_(0), dphi_(0) {}
74 deta_(p1.
eta() - p2.
eta()),
76 double deta()
const {
return deta_; }
77 double dphi()
const {
return dphi_; }
78 int i1()
const {
return i1_; }
79 int i2()
const {
return i2_; }
80 double eta()
const {
return p1_.eta(); }
83 void seti1(
int i1) { i1_ = i1; }
84 void seti2(
int i2) { i2_ = i2; }
93 Vertex(
double x = 0,
double y = 0,
double z = 0,
double xs = 0,
94 double ys = 0,
double zs = 0,
int n = 0)
95 : x_(x), y_(y), z_(z), xs_(xs), ys_(ys), zs_(zs), n_(
n) {}
96 int n()
const {
return n_; }
97 double x()
const {
return x_; }
98 double y()
const {
return y_; }
99 double z()
const {
return z_; }
100 double xs()
const {
return xs_; }
101 double ys()
const {
return ys_; }
102 double zs()
const {
return zs_; }
103 void set(
int n,
double z,
double zs) {
108 void set(
int n,
double x,
double y,
double z,
double xs,
double ys,
120 double x_, y_, z_, xs_, ys_,
zs_;
139 bool sumw2 =
true,
bool sbox =
true);
142 double y1,
double y2,
bool sumw2 =
true,
bool sbox =
true);
145 bool sumw2 =
true,
bool sbox =
true);
148 double y1,
double y2,
bool sumw2 =
true,
bool sbox =
true);
149 void fill1D(std::vector<TH1F *> &hs,
double val,
double w = 1.);
150 void fill1D(std::vector<MonitorElement *> &mes,
double val,
double w = 1.);
151 void fill2D(std::vector<TH2F *> &hs,
double valx,
double valy,
double w = 1.);
152 void fill2D(std::vector<MonitorElement *> &mes,
double valx,
double valy,
154 void fill3D(std::vector<TH3F *> &hs,
int gbin,
double w = 1.);
155 void filldNdeta(
const TH3F *AlphaTracklets,
156 const std::vector<TH3F *> &NsigTracklets,
157 const std::vector<TH3F *> &NbkgTracklets,
158 const std::vector<TH1F *> &NEvsPerEta,
159 std::vector<MonitorElement *> &hdNdEtaRawTrkl,
160 std::vector<MonitorElement *> &hdNdEtaSubTrkl,
161 std::vector<MonitorElement *> &hdNdEtaTrklets);
165 void fillPixelClusterInfos(
const double vz,
const std::vector<Pixel> &pix,
166 std::vector<MonitorElement *> &hClusterYSize,
167 std::vector<MonitorElement *> &hClusterADC);
169 void fillTracklets(std::vector<Tracklet> &tracklets,
170 const std::vector<Pixel> &pix1,
171 const std::vector<Pixel> &pix2,
const Vertex &trackletV);
173 const std::vector<Tracklet> &tracklets,
const std::vector<Pixel> &pixels,
174 const Vertex &trackletV,
const TH3F *AlphaTracklets,
175 std::vector<TH3F *> &NsigTracklets, std::vector<TH3F *> &NbkgTracklets,
176 std::vector<TH1F *> &eventpereta, std::vector<MonitorElement *> &detaphi,
177 std::vector<MonitorElement *> &deta, std::vector<MonitorElement *> &dphi,
178 std::vector<MonitorElement *> &etavsvtx);
179 template <
typename TYPE>
182 template <
typename TYPE>
187 void reallyPrint(
int level,
const char *
msg);
189 void trackletVertexUnbinned(std::vector<Pixel> &pix1,
191 double vertexZFromClusters(
const std::vector<Pixel> &pix)
const;
192 void yieldAlphaHistogram(
int which = 12);
317 template <
typename TYPE>
328 "QcdLowPtDQM::GetProduct()\n")
329 <<
"Collection with label " << name <<
" is not valid" << std::endl;
333 template <
typename TYPE>
341 if (name.empty())
return false;
345 if (!prod.
isValid())
return false;
356 if (level >= verbose_) reallyPrint(level, msg);
Pixel(double x=0, double y=0, double z=0, double eta=0, double phi=0, double adc=0, double sx=0, double sy=0)
std::vector< std::string > hltProcNames_
std::vector< MonitorElement * > hdNdPhiHitsL2_
std::vector< Tracklet > btracklets23_
std::vector< MonitorElement * > hNhitsL3_
std::vector< MonitorElement * > hTrkRawDetaDphi13_
HLTConfigProvider hltConfig_
std::vector< TH3F * > NbkgTracklets12_
std::vector< MonitorElement * > hdNdEtaRawTrkl13_
std::vector< MonitorElement * > hdNdEtaRawTrkl23_
std::vector< bool > hltTrgDeci_
T const * getProduct(RefCore const &ref)
std::vector< MonitorElement * > hRawTrkEtaVtxZ12_
std::vector< TH3F * > NsigTracklets12_
void print(int level, const std::string &msg)
std::vector< TH1F * > hEvtCountsPerEta12_
std::vector< MonitorElement * > hNhitsL2z_
Pixel(const GlobalPoint &p, double adc=0, double sx=0, double sy=0)
std::vector< TH3F * > NsigTracklets23_
std::vector< MonitorElement * > hTrkRawDeta23_
std::vector< MonitorElement * > hdNdEtaHitsL1_
S & print(S &os, JobReport::InputFile const &f)
std::vector< MonitorElement * > hdNdEtaSubTrkl23_
std::vector< MonitorElement * > hClusterADC1_
std::vector< TH3F * > NsigTracklets13_
std::vector< MonitorElement * > hRawTrkEtaVtxZ23_
std::vector< MonitorElement * > hClusterYSize2_
example_stream void analyze(const edm::Event &, const edm::EventSetup &) override
MonitorElement * repSummary_
std::vector< MonitorElement * > hTrkVtxZ12_
std::vector< MonitorElement * > hTrkVtxZ13_
std::vector< TH3F * > NbkgTracklets13_
std::vector< Tracklet > btracklets12_
std::vector< MonitorElement * > hTrkRawDeta12_
std::vector< MonitorElement * > hdNdEtaHitsL2_
std::vector< MonitorElement * > hdNdEtaSubTrkl13_
void getProduct(const std::string name, edm::Handle< TYPE > &prod, const edm::Event &event) const
MonitorElement * repSumMap_
std::vector< MonitorElement * > hClusterVertexZ_
std::vector< std::string > hltTrgUsedNames_
std::vector< MonitorElement * > hNhitsL1_
std::vector< MonitorElement * > hTrkRawDphi23_
std::vector< Pixel > bpix3_
std::vector< MonitorElement * > hNhitsL1z_
std::vector< MonitorElement * > hTrkRawDphi12_
std::vector< MonitorElement * > hClusterYSize3_
constexpr int adc(sample_type sample)
get the ADC sample (12 bits)
std::vector< MonitorElement * > hdNdEtaTrklets23_
std::vector< MonitorElement * > hTrkRawDetaDphi12_
std::vector< MonitorElement * > hClusterADC3_
bool getProductSafe(const std::string name, edm::Handle< TYPE > &prod, const edm::Event &event) const
void print(int level, const char *msg)
std::string clusterVtxName_
std::vector< MonitorElement * > hdNdEtaTrklets13_
std::vector< MonitorElement * > hTrkRawDetaDphi23_
std::vector< MonitorElement * > hdNdPhiHitsL1_
std::vector< MonitorElement * > hdNdEtaTrklets12_
example_stream void bookHistograms(DQMStore::IBooker &,@example_stream edm::Run const &,@example_stream edm::EventSetup const &) override
std::vector< MonitorElement * > hRawTrkEtaVtxZ13_
MonitorElement * h2TrigCorr_
std::vector< MonitorElement * > hNhitsL3z_
std::vector< MonitorElement * > hdNdEtaRawTrkl12_
std::vector< MonitorElement * > hClusterADC2_
std::vector< MonitorElement * > hdNdEtaHitsL3_
std::vector< MonitorElement * > hClusterYSize1_
const TrackerGeometry * tgeo_
Tracklet(const Pixel &p1, const Pixel &p2)
std::vector< Pixel > bpix2_
Vertex(double x=0, double y=0, double z=0, double xs=0, double ys=0, double zs=0, int n=0)
std::string hltUsedResName_
std::vector< Pixel > bpix1_
std::vector< TH1F * > hEvtCountsPerEta23_
std::vector< MonitorElement * > hTrkRawDeta13_
std::vector< MonitorElement * > hdNdPhiHitsL3_
std::vector< std::string > hltTrgNames_
std::vector< MonitorElement * > hTrkRawDphi13_
std::vector< TH1F * > hEvtCountsPerEta13_
std::vector< Tracklet > btracklets13_
std::vector< MonitorElement * > hdNdEtaSubTrkl12_
std::vector< TH3F * > NbkgTracklets23_
std::vector< MonitorElement * > hNhitsL2_
std::vector< int > hltTrgBits_
std::vector< MonitorElement * > hTrkVtxZ23_