71 edm::LogInfo(
"OutputInfo") <<
" Hcal RecHit Task histograms will NOT be saved";
81 sprintf(histo,
"Ntowers_per_event_vs_ieta");
84 sprintf(histo,
"CaloTowersTask_map_Nentries");
92 sprintf(histo,
"emean_vs_ieta_E");
94 sprintf(histo,
"emean_vs_ieta_H");
96 sprintf(histo,
"emean_vs_ieta_EH");
100 sprintf(histo,
"emean_vs_ieta_E1");
102 sprintf(histo,
"emean_vs_ieta_H1");
104 sprintf(histo,
"emean_vs_ieta_EH1");
110 sprintf(histo,
"CaloTowersTask_map_energy_E");
112 sprintf(histo,
"CaloTowersTask_map_energy_H");
114 sprintf(histo,
"CaloTowersTask_map_energy_EH");
120 sprintf(histo,
"number_of_bad_cells_Ecal_EB");
122 sprintf(histo,
"number_of_bad_cells_Ecal_EE");
124 sprintf(histo,
"number_of_recovered_cells_Ecal_EB");
126 sprintf(histo,
"number_of_recovered_cells_Ecal_EE");
128 sprintf(histo,
"number_of_problematic_cells_Ecal_EB");
130 sprintf(histo,
"number_of_problematic_cells_Ecal_EE");
134 sprintf(histo,
"CaloTowersTask_map_occupancy");
137 sprintf(histo,
"CaloTowersTask_occupancy_vs_ieta");
142 sprintf(histo,
"number_of_bad_cells_Hcal_HB");
144 sprintf(histo,
"number_of_recovered_cells_Hcal_HB");
146 sprintf(histo,
"number_of_problematic_cells_Hcal_HB");
152 sprintf(histo,
"CaloTowersTask_energy_HCAL_HB");
155 sprintf(histo,
"CaloTowersTask_energy_ECAL_HB");
158 sprintf(histo,
"CaloTowersTask_number_of_fired_towers_HB");
161 sprintf(histo,
"CaloTowersTask_MET_HB");
164 sprintf(histo,
"CaloTowersTask_SET_HB");
170 sprintf(histo,
"CaloTowersTask_EM_Timing_HB");
173 sprintf(histo,
"CaloTowersTask_HAD_Timing_HB");
178 sprintf(histo,
"CaloTowersTask_EM_Energy_Timing_Low_HB");
181 sprintf(histo,
"CaloTowersTask_EM_Energy_Timing_HB");
184 sprintf(histo,
"CaloTowersTask_EM_Energy_Timing_High_HB");
187 sprintf(histo,
"CaloTowersTask_EM_Energy_Timing_profile_Low_HB");
190 sprintf(histo,
"CaloTowersTask_EM_Energy_Timing_profile_HB");
193 sprintf(histo,
"CaloTowersTask_EM_Energy_Timing_profile_High_HB");
197 sprintf(histo,
"CaloTowersTask_HAD_Energy_Timing_Low_HB");
200 sprintf(histo,
"CaloTowersTask_HAD_Energy_Timing_HB");
203 sprintf(histo,
"CaloTowersTask_HAD_Energy_Timing_High_HB");
206 sprintf(histo,
"CaloTowersTask_HAD_Energy_Timing_profile_Low_HB");
209 sprintf(histo,
"CaloTowersTask_HAD_Energy_Timing_profile_HB");
212 sprintf(histo,
"CaloTowersTask_HAD_Energy_Timing_profile_High_HB");
216 sprintf(histo,
"CaloTowersTask_Iphi_HCAL_component_of_tower_HBP");
218 sprintf(histo,
"CaloTowersTask_Iphi_HCAL_component_of_tower_HBM");
225 sprintf(histo,
"CaloTowersTask_sum_of_energy_HCAL_vs_ECAL_HB");
228 sprintf(histo,
"CaloTowersTask_energy_OUTER_HB");
231 sprintf(histo,
"CaloTowersTask_energy_of_ECAL_component_of_tower_HB");
234 sprintf(histo,
"CaloTowersTask_energy_of_HCAL_component_of_tower_HB");
237 sprintf(histo,
"CaloTowersTask_energy_HcalPlusEcalPlusHO_HB");
240 sprintf(histo,
"CaloTowersTask_map_energy_HB");
242 sprintf(histo,
"CaloTowersTask_map_energy_HCAL_HB");
245 sprintf(histo,
"CaloTowersTask_map_energy_ECAL_HB");
249 sprintf(histo,
"CaloTowersTask_phi_MET_HB");
250 phiMET_HB = ibooker.
book1D(histo, histo, 72, -3.1415926535898, 3.1415926535898);
256 sprintf(histo,
"number_of_bad_cells_Hcal_HE");
258 sprintf(histo,
"number_of_recovered_cells_Hcal_HE");
260 sprintf(histo,
"number_of_problematic_cells_Hcal_HE");
266 sprintf(histo,
"CaloTowersTask_energy_HCAL_HE");
269 sprintf(histo,
"CaloTowersTask_energy_ECAL_HE");
272 sprintf(histo,
"CaloTowersTask_number_of_fired_towers_HE");
275 sprintf(histo,
"CaloTowersTask_MET_HE");
278 sprintf(histo,
"CaloTowersTask_SET_HE");
284 sprintf(histo,
"CaloTowersTask_EM_Timing_HE");
287 sprintf(histo,
"CaloTowersTask_HAD_Timing_HE");
292 sprintf(histo,
"CaloTowersTask_EM_Energy_Timing_Low_HE");
295 sprintf(histo,
"CaloTowersTask_EM_Energy_Timing_HE");
298 sprintf(histo,
"CaloTowersTask_EM_Energy_Timing_profile_Low_HE");
301 sprintf(histo,
"CaloTowersTask_EM_Energy_Timing_profile_HE");
305 sprintf(histo,
"CaloTowersTask_HAD_Energy_Timing_Low_HE");
308 sprintf(histo,
"CaloTowersTask_HAD_Energy_Timing_HE");
311 sprintf(histo,
"CaloTowersTask_HAD_Energy_Timing_profile_Low_HE");
314 sprintf(histo,
"CaloTowersTask_HAD_Energy_Timing_profile_HE");
318 sprintf(histo,
"CaloTowersTask_Iphi_HCAL_component_of_tower_HEP");
320 sprintf(histo,
"CaloTowersTask_Iphi_HCAL_component_of_tower_HEM");
327 sprintf(histo,
"CaloTowersTask_sum_of_energy_HCAL_vs_ECAL_HE");
330 sprintf(histo,
"CaloTowersTask_energy_OUTER_HE");
333 sprintf(histo,
"CaloTowersTask_energy_of_ECAL_component_of_tower_HE");
336 sprintf(histo,
"CaloTowersTask_energy_of_HCAL_component_of_tower_HE");
339 sprintf(histo,
"CaloTowersTask_energy_HcalPlusEcalPlusHO_HE");
342 sprintf(histo,
"CaloTowersTask_map_energy_HE");
344 sprintf(histo,
"CaloTowersTask_map_energy_HCAL_HE");
347 sprintf(histo,
"CaloTowersTask_map_energy_ECAL_HE");
351 sprintf(histo,
"CaloTowersTask_phi_MET_HE");
352 phiMET_HE = ibooker.
book1D(histo, histo, 72, -3.1415926535898, 3.1415926535898);
358 sprintf(histo,
"number_of_bad_cells_Hcal_HF");
360 sprintf(histo,
"number_of_recovered_cells_Hcal_HF");
362 sprintf(histo,
"number_of_problematic_cells_Hcal_HF");
368 sprintf(histo,
"CaloTowersTask_energy_HCAL_HF");
371 sprintf(histo,
"CaloTowersTask_energy_ECAL_HF");
374 sprintf(histo,
"CaloTowersTask_number_of_fired_towers_HF");
377 sprintf(histo,
"CaloTowersTask_MET_HF");
380 sprintf(histo,
"CaloTowersTask_SET_HF");
386 sprintf(histo,
"CaloTowersTask_EM_Timing_HF");
389 sprintf(histo,
"CaloTowersTask_HAD_Timing_HF");
393 sprintf(histo,
"CaloTowersTask_EM_Energy_Timing_HF");
396 sprintf(histo,
"CaloTowersTask_EM_Energy_Timing_profile_HF");
400 sprintf(histo,
"CaloTowersTask_HAD_Energy_Timing_Low_HF");
403 sprintf(histo,
"CaloTowersTask_HAD_Energy_Timing_HF");
406 sprintf(histo,
"CaloTowersTask_HAD_Energy_Timing_profile_Low_HF");
409 sprintf(histo,
"CaloTowersTask_HAD_Energy_Timing_profile_HF");
413 sprintf(histo,
"CaloTowersTask_Iphi_tower_HFP");
415 sprintf(histo,
"CaloTowersTask_Iphi_tower_HFM");
422 sprintf(histo,
"CaloTowersTask_sum_of_energy_HCAL_vs_ECAL_HF");
425 sprintf(histo,
"CaloTowersTask_energy_OUTER_HF");
428 sprintf(histo,
"CaloTowersTask_energy_of_ECAL_component_of_tower_HF");
431 sprintf(histo,
"CaloTowersTask_energy_of_HCAL_component_of_tower_HF");
434 sprintf(histo,
"CaloTowersTask_energy_HcalPlusEcalPlusHO_HF");
437 sprintf(histo,
"CaloTowersTask_map_energy_HF");
439 sprintf(histo,
"CaloTowersTask_map_energy_HCAL_HF");
442 sprintf(histo,
"CaloTowersTask_map_energy_ECAL_HF");
446 sprintf(histo,
"CaloTowersTask_phi_MET_HF");
447 phiMET_HF = ibooker.
book1D(histo, histo, 72, -3.1415926535898, 3.1415926535898);
475 double ieta_MC = 9999;
476 double iphi_MC = 9999;
479 double sumEnergyHcal_HB = 0.;
480 double sumEnergyEcal_HB = 0.;
481 double sumEnergyHO_HB = 0.;
482 Int_t numFiredTowers_HB = 0;
488 double sumEnergyHcal_HE = 0.;
489 double sumEnergyEcal_HE = 0.;
490 double sumEnergyHO_HE = 0.;
491 Int_t numFiredTowers_HE = 0;
497 double sumEnergyHcal_HF = 0.;
498 double sumEnergyEcal_HF = 0.;
499 double sumEnergyHO_HF = 0.;
500 Int_t numFiredTowers_HF = 0;
506 for (cal = towers->
begin(); cal != towers->
end(); ++cal) {
507 double eE = cal->emEnergy();
508 double eH = cal->hadEnergy();
509 double eHO = cal->outerEnergy();
510 double etaT = cal->eta();
512 double en = cal->energy();
513 double etT = cal->et();
514 double had_tm = cal->hcalTime();
515 double em_tm = cal->ecalTime();
517 int numBadEcalCells = cal->numBadEcalCells();
518 int numRcvEcalCells = cal->numRecoveredEcalCells();
519 int numPrbEcalCells = cal->numProblematicEcalCells();
521 int numBadHcalCells = cal->numBadHcalCells();
522 int numRcvHcalCells = cal->numRecoveredHcalCells();
523 int numPrbHcalCells = cal->numProblematicHcalCells();
530 int ieta = idT.
ieta();
531 int iphi = idT.iphi();
535 std::vector<int> inEcals(2), inHcals(3);
536 unsigned int constitSize = cal->constituentsSize();
537 for (
unsigned int ic = 0; ic < constitSize; ic++) {
538 DetId detId = cal->constituent(ic);
592 sumEnergyHcal_HB += eH;
593 sumEnergyEcal_HB += eE;
594 sumEnergyHO_HB += eHO;
651 sumEnergyHcal_HE += eH;
652 sumEnergyEcal_HE += eE;
653 sumEnergyHO_HE += eHO;
703 sumEnergyHcal_HF += eH;
704 sumEnergyEcal_HF += eE;
705 sumEnergyHO_HF += eHO;
739 met =
sqrt(metx_HB * metx_HB + mety_HB * mety_HB);
740 Vector metv(metx_HB, mety_HB, metz_HB);
759 met =
sqrt(metx_HE * metx_HE + mety_HE * mety_HE);
760 Vector metv(metx_HE, mety_HE, metz_HE);
779 met =
sqrt(metx_HF * metx_HF + mety_HF * mety_HF);
780 Vector metv(metx_HF, mety_HF, metz_HF);
800 double PI = 3.1415926535898;
801 double deltaphi = phi1 - phi2;
803 deltaphi = phi2 - phi1;
806 deltaphi = 2. * PI - deltaphi;
808 double deltaeta = eta2 - eta1;
809 double tmp =
sqrt(deltaeta * deltaeta + deltaphi * deltaphi);
MonitorElement * emean_vs_ieta_EH1
MonitorElement * mapEnergyEcal_HF
void dqmBeginRun(const edm::Run &run, const edm::EventSetup &c) override
T getUntrackedParameter(std::string const &, T const &) const
MonitorElement * meNumFiredTowers_HF
MonitorElement * hadEnergyTiming_profile_High_HB
MonitorElement * hadEnergyTiming_HF
MonitorElement * meEnergyHcalTower_HF
MonitorElement * meEnergyHcalvsEcal_HE
HcalSubdetector subdet() const
get the subdetector
MonitorElement * hadEnergyTiming_Low_HE
MonitorElement * meEnergyHcalTower_HE
MonitorElement * numRcvCellsHcal_HF
MonitorElement * phiMET_HF
MonitorElement * emEnergyTiming_profile_Low_HB
MonitorElement * bookProfile(Args &&...args)
MonitorElement * phiMET_HE
MonitorElement * meEnergyEcalTower_HF
MonitorElement * hadEnergyTiming_profile_Low_HE
CaloTowersAnalyzer(edm::ParameterSet const &conf)
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
MonitorElement * emEnergyTiming_Low_HB
MonitorElement * emTiming_HE
MonitorElement * meEnergyEcalTower_HE
MonitorElement * numRcvCellsEcal_EB
std::vector< CaloTower >::const_iterator const_iterator
MonitorElement * meEnergyHcalTower_HB
MonitorElement * emEnergyTiming_profile_Low_HE
MonitorElement * meIphiHcalTower_HEM
MonitorElement * numRcvCellsEcal_EE
MonitorElement * meIphiHcalTower_HEP
MonitorElement * meEnergyHcal_HF
MonitorElement * meEnergyHcal_HB
MonitorElement * meEnergyHO_HB
MonitorElement * emTiming_HB
MonitorElement * occupancy_map
std::string hcalselector_
MonitorElement * emEnergyTiming_HE
MonitorElement * hadEnergyTiming_Low_HB
MonitorElement * hadEnergyTiming_profile_Low_HB
MonitorElement * emean_vs_ieta_H
RhoEtaPhiVectorD RhoEtaPhiVector
spatial vector with cylindrical internal representation using pseudorapidity
std::pair< int, int > getEtaRange(const int &i) const
MonitorElement * hadTiming_HE
MonitorElement * mapEnergyEcal_HB
MonitorElement * meEnergyHO_HF
MonitorElement * occupancy_vs_ieta
MonitorElement * mapEnergy_EH
#define DEFINE_FWK_MODULE(type)
MonitorElement * phiMET_HB
void setCurrentFolder(std::string const &fullpath)
MonitorElement * meEnergyEcal_HE
MonitorElement * hadEnergyTiming_profile_HB
MonitorElement * meEnergyEcal_HB
MonitorElement * numBadCellsHcal_HE
MonitorElement * meTotEnergy_HE
MonitorElement * mapEnergy_E
MonitorElement * hadEnergyTiming_Low_HF
MonitorElement * numRcvCellsHcal_HB
MonitorElement * meNumFiredTowers_HB
MonitorElement * numPrbCellsHcal_HB
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum) ...
MonitorElement * mapEnergyHcal_HF
MonitorElement * book1D(Args &&...args)
MonitorElement * meEnergyHcal_HE
void analyze(edm::Event const &e, edm::EventSetup const &c) override
MonitorElement * hadTiming_HB
edm::EDGetTokenT< CaloTowerCollection > tok_towers_
MonitorElement * numBadCellsEcal_EE
MonitorElement * numPrbCellsEcal_EE
MonitorElement * mapEnergy_HE
MonitorElement * mapEnergy_HF
MonitorElement * mapEnergy_HB
MonitorElement * meEnergyEcalTower_HB
MonitorElement * meIphiHcalTower_HBP
MonitorElement * emean_vs_ieta_H1
MonitorElement * emEnergyTiming_High_HB
math::RhoEtaPhiVector Vector
MonitorElement * numRcvCellsHcal_HE
MonitorElement * emEnergyTiming_profile_HF
MonitorElement * hadEnergyTiming_HE
MonitorElement * numPrbCellsHcal_HE
MonitorElement * emEnergyTiming_profile_High_HB
MonitorElement * meTotEnergy_HB
MonitorElement * meTotEnergy_HF
MonitorElement * hadEnergyTiming_High_HB
MonitorElement * mapEnergyHcal_HE
const_iterator end() const
MonitorElement * hadEnergyTiming_HB
MonitorElement * numPrbCellsHcal_HF
MonitorElement * hadEnergyTiming_profile_HF
MonitorElement * numBadCellsHcal_HB
MonitorElement * book2D(Args &&...args)
MonitorElement * Ntowers_vs_ieta
MonitorElement * emEnergyTiming_HB
MonitorElement * meEnergyHO_HE
MonitorElement * hadEnergyTiming_profile_HE
MonitorElement * emEnergyTiming_Low_HE
MonitorElement * emean_vs_ieta_E
MonitorElement * numPrbCellsEcal_EB
MonitorElement * emean_vs_ieta_EH
std::vector< std::vector< double > > tmp
MonitorElement * numBadCellsHcal_HF
double dR(double eta1, double phi1, double eta2, double phi2)
MonitorElement * hadTiming_HF
MonitorElement * numBadCellsEcal_EB
~CaloTowersAnalyzer() override
MonitorElement * mapEnergyEcal_HE
MonitorElement * emTiming_HF
MonitorElement * meIphiCaloTower_HFM
const HcalDDDRecConstants * hcons
MonitorElement * emEnergyTiming_profile_HE
MonitorElement * mapEnergy_N
int ieta() const
get the tower ieta
MonitorElement * meEnergyHcalvsEcal_HB
MonitorElement * mapEnergyHcal_HB
MonitorElement * emEnergyTiming_profile_HB
MonitorElement * meEnergyHcalvsEcal_HF
MonitorElement * emean_vs_ieta_E1
MonitorElement * meNumFiredTowers_HE
const_iterator begin() const
MonitorElement * emEnergyTiming_HF
MonitorElement * hadEnergyTiming_profile_Low_HF
MonitorElement * mapEnergy_H
MonitorElement * meIphiCaloTower_HFP
int getNPhi(const int &type) const
MonitorElement * meIphiHcalTower_HBM
constexpr Detector det() const
get the detector field from this detid
MonitorElement * meEnergyEcal_HF