121 iConfig.getParameter<
std::vector<
edm::
InputTag> >(
"multiplicityMaps"),
124 iConfig.getParameter<std::vector<edm::InputTag> >(
"occupancyMaps"),
125 [
this](
edm::InputTag const&
tag) { return consumes<std::map<unsigned int, int> >(tag); })),
127 "file",
edm::FileInPath(
"CalibTracker/SiPixelESProducers/data/PixelSkimmedGeometry.txt"))),
128 m_rhm(consumesCollector()),
132 m_avemultiplicity = m_rhm.makeTProfile(
"avemult",
"Average Multiplicty", 6000, 0.5, 6000.5);
133 m_aveoccupancy = m_rhm.makeTProfile(
"aveoccu",
"Average Occupancy", 6000, 0.5, 6000.5);
135 m_nchannels_ideal = m_rhm.makeTH1F(
"nchannels_ideal",
"Number of channels (ideal)", 6000, 0.5, 6000.5);
136 m_nchannels_real = m_rhm.makeTH1F(
"nchannels_real",
"Number of channels (real)", 6000, 0.5, 6000.5);
138 m_averadius = m_rhm.makeTProfile(
"averadius",
"Average Module Radius", 6000, 0.5, 6000.5);
139 m_avez = m_rhm.makeTProfile(
"avez",
"Average Module z coordinate", 6000, 0.5, 6000.5);
140 m_avex = m_rhm.makeTProfile(
"avex",
"Average Module x coordinate", 6000, 0.5, 6000.5);
141 m_avey = m_rhm.makeTProfile(
"avey",
"Average Module y coordinate", 6000, 0.5, 6000.5);
143 m_zavedr = m_rhm.makeTProfile(
"zavedr",
"Average z unit vector dr", 6000, 0.5, 6000.5);
144 m_zavedz = m_rhm.makeTProfile(
"zavedz",
"Average z unit vector dz", 6000, 0.5, 6000.5);
145 m_zavedrphi = m_rhm.makeTProfile(
"zavedrphi",
"Average z unit vector drphi", 6000, 0.5, 6000.5);
146 m_xavedr = m_rhm.makeTProfile(
"xavedr",
"Average x unit vector dr", 6000, 0.5, 6000.5);
147 m_xavedz = m_rhm.makeTProfile(
"xavedz",
"Average x unit vctor dz", 6000, 0.5, 6000.5);
148 m_xavedrphi = m_rhm.makeTProfile(
"xavedrphi",
"Average Module x unit vector drphi", 6000, 0.5, 6000.5);
149 m_yavedr = m_rhm.makeTProfile(
"yavedr",
"Average y unit vector dr", 6000, 0.5, 6000.5);
150 m_yavedz = m_rhm.makeTProfile(
"yavedz",
"Average y unit vector dz", 6000, 0.5, 6000.5);
151 m_yavedrphi = m_rhm.makeTProfile(
"yavedrphi",
"Average y unit vector drphi", 6000, 0.5, 6000.5);
153 std::vector<edm::ParameterSet> wantedsubdets_ps =
154 iConfig.getParameter<std::vector<edm::ParameterSet> >(
"wantedSubDets");
156 for (std::vector<edm::ParameterSet>::const_iterator wsdps = wantedsubdets_ps.begin(); wsdps != wantedsubdets_ps.end();
158 unsigned int detsel = wsdps->getParameter<
unsigned int>(
"detSelection");
159 std::vector<std::string> selstr = wsdps->getUntrackedParameter<std::vector<std::string> >(
"selection");
177 for (std::vector<
edm::EDGetTokenT<std::map<unsigned int, int> > >::const_iterator mapToken =
182 iEvent.getByToken(*mapToken, mults);
184 for (std::map<unsigned int, int>::const_iterator
mult = mults->begin();
mult != mults->end();
mult++) {
186 (*m_avemultiplicity)->Fill(
mult->first,
mult->second);
190 for (std::vector<
edm::EDGetTokenT<std::map<unsigned int, int> > >::const_iterator mapToken =
195 iEvent.getByToken(*mapToken, occus);
197 for (std::map<unsigned int, int>::const_iterator occu = occus->begin(); occu != occus->end(); occu++) {
199 (*m_aveoccupancy)->Fill(occu->first, occu->second);
216 LogDebug(
"IsThereTest") <<
"Test of TrackerGeometry::isThere";
238 for (TrackingGeometry::DetIdContainer::const_iterator det = detunits.begin(); det != detunits.end(); ++det) {
253 double dzdr = posvect.
perp() > 0 ? (
dz.x() * posvect.
x() +
dz.y() * posvect.
y()) / posvect.
perp() : 0.;
254 double dxdr = posvect.
perp() > 0 ? (
dx.x() * posvect.
x() +
dx.y() * posvect.
y()) / posvect.
perp() : 0.;
255 double dydr = posvect.
perp() > 0 ? (
dy.x() * posvect.
x() +
dy.y() * posvect.
y()) / posvect.
perp() : 0.;
257 double dzdrphi = posvect.
perp() > 0 ? (
dz.y() * posvect.
x() -
dz.x() * posvect.
y()) / posvect.
perp() : 0.;
258 double dxdrphi = posvect.
perp() > 0 ? (
dx.y() * posvect.
x() -
dx.x() * posvect.
y()) / posvect.
perp() : 0.;
259 double dydrphi = posvect.
perp() > 0 ? (
dy.y() * posvect.
x() -
dy.x() * posvect.
y()) / posvect.
perp() : 0.;
261 for (std::map<unsigned int, DetIdSelector>::const_iterator
sel =
m_wantedsubdets.begin();
264 if (
sel->second.isSelected(*det)) {
276 (*m_zavedr)->Fill(
sel->first, dzdr);
278 (*m_zavedz)->Fill(
sel->first,
dz.z());
280 (*m_zavedrphi)->Fill(
sel->first, dzdrphi);
282 (*m_xavedr)->Fill(
sel->first, dxdr);
284 (*m_xavedz)->Fill(
sel->first,
dx.z());
286 (*m_xavedrphi)->Fill(
sel->first, dxdrphi);
288 (*m_yavedr)->Fill(
sel->first, dydr);
290 (*m_yavedz)->Fill(
sel->first,
dy.z());
292 (*m_yavedrphi)->Fill(
sel->first, dydrphi);
302 (*m_nchannels_ideal)->Reset();
304 (*m_nchannels_real)->Reset();
309 for (
const auto det : trkgeo->
detUnits()) {
310 const StripGeomDetUnit* stripDet = dynamic_cast<const StripGeomDetUnit*>(det);
311 if (stripDet !=
nullptr) {
322 for (std::map<unsigned int, DetIdSelector>::const_iterator
sel =
m_wantedsubdets.begin();
325 if (
sel->second.isSelected(detid)) {
327 (*m_nchannels_ideal)->Fill(
sel->first, nchannideal);
329 (*m_nchannels_real)->Fill(
sel->first, nchannreal);
340 const std::vector<uint32_t>& pxldetids = pxlreader.
getAllDetIds();
342 for (std::vector<uint32_t>::const_iterator detid = pxldetids.begin(); detid != pxldetids.end(); ++detid) {
343 int nchannideal = pxlreader.getDetUnitDimensions(*detid).first * pxlreader.getDetUnitDimensions(*detid).second;
346 nchannreal = pxlreader.getDetUnitDimensions(*detid).first * pxlreader.getDetUnitDimensions(*detid).second;
355 for (std::map<unsigned int, DetIdSelector>::const_iterator
sel =
m_wantedsubdets.begin();
358 if (
sel->second.isSelected(*detid)) {
360 (*m_nchannels_ideal)->Fill(
sel->first, nchannideal);
362 (*m_nchannels_real)->Fill(
sel->first, nchannreal);