Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hcal Plan1 validation plots #18159

Merged
merged 15 commits into from Apr 25, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
28 changes: 28 additions & 0 deletions DQMOffline/Hcal/interface/CaloTowersAnalyzer.h
Expand Up @@ -15,6 +15,15 @@
#include "DQMServices/Core/interface/DQMStore.h"
#include "DQMServices/Core/interface/DQMEDAnalyzer.h"

#include "DataFormats/HcalDetId/interface/HcalElectronicsId.h"
#include "DataFormats/HcalDetId/interface/HcalDetId.h"
#include "DataFormats/HcalDigi/interface/HcalDigiCollections.h"
#include "Geometry/CaloGeometry/interface/CaloGeometry.h"
#include "Geometry/CaloGeometry/interface/CaloSubdetectorGeometry.h"
#include "Geometry/CaloGeometry/interface/CaloCellGeometry.h"
#include "Geometry/CaloTopology/interface/HcalTopology.h"
#include "Geometry/HcalTowerAlgo/interface/HcalGeometry.h"

#include "DataFormats/DetId/interface/DetId.h"
#include "DataFormats/CaloTowers/interface/CaloTowerDetId.h"
#include "DataFormats/Math/interface/Vector3D.h"
Expand All @@ -38,6 +47,7 @@ class CaloTowersAnalyzer : public DQMEDAnalyzer {
virtual void beginJob() ;
virtual void endJob() ;
virtual void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
virtual void dqmBeginRun(const edm::Run& run, const edm::EventSetup& c) override;

private:
double dR(double eta1, double phi1, double eta2, double phi2);
Expand All @@ -60,6 +70,15 @@ class CaloTowersAnalyzer : public DQMEDAnalyzer {
double etaMax[3];
double etaMin[3];

// Geometry from DB
const HcalDDDRecConstants *hcons;

int iphi_bins_;
float iphi_min_, iphi_max_;

int ieta_bins_;
float ieta_min_, ieta_max_;

// ieta scan
MonitorElement* emean_vs_ieta_E;
MonitorElement* emean_vs_ieta_H;
Expand Down Expand Up @@ -108,6 +127,9 @@ class CaloTowersAnalyzer : public DQMEDAnalyzer {
MonitorElement* meEnergyHcalTower_HB;
MonitorElement* meTotEnergy_HB;

MonitorElement* meIphiHcalTower_HBP;
MonitorElement* meIphiHcalTower_HBM;

MonitorElement* mapEnergy_HB;
MonitorElement* mapEnergyEcal_HB;
MonitorElement* mapEnergyHcal_HB;
Expand Down Expand Up @@ -143,6 +165,9 @@ class CaloTowersAnalyzer : public DQMEDAnalyzer {
MonitorElement* meEnergyHcalTower_HE;
MonitorElement* meTotEnergy_HE;

MonitorElement* meIphiHcalTower_HEP;
MonitorElement* meIphiHcalTower_HEM;

MonitorElement* mapEnergy_HE;
MonitorElement* mapEnergyEcal_HE;
MonitorElement* mapEnergyHcal_HE;
Expand Down Expand Up @@ -174,6 +199,9 @@ class CaloTowersAnalyzer : public DQMEDAnalyzer {
MonitorElement* meEnergyHcalTower_HF;
MonitorElement* meTotEnergy_HF;

MonitorElement* meIphiCaloTower_HFP;
MonitorElement* meIphiCaloTower_HFM;

MonitorElement* mapEnergy_HF;
MonitorElement* mapEnergyEcal_HF;
MonitorElement* mapEnergyHcal_HF;
Expand Down
15 changes: 11 additions & 4 deletions DQMOffline/Hcal/interface/HcalRecHitsAnalyzer.h
Expand Up @@ -75,6 +75,7 @@ class HcalRecHitsAnalyzer : public DQMEDAnalyzer {
std::string ecalselector_;
std::string eventype_;
std::string sign_;
bool hep17_;
std::string mc_;
bool famos_;

Expand Down Expand Up @@ -141,6 +142,9 @@ class HcalRecHitsAnalyzer : public DQMEDAnalyzer {
std::vector<MonitorElement*> emean_vs_ieta_HE;
std::vector<MonitorElement*> emean_vs_ieta_HEM0;
std::vector<MonitorElement*> emean_vs_ieta_HEM3;
std::vector<MonitorElement*> emean_vs_ieta_HEP17;
std::vector<MonitorElement*> emean_vs_ieta_HEP17M0;
std::vector<MonitorElement*> emean_vs_ieta_HEP17M3;
std::vector<MonitorElement*> emean_vs_ieta_HF;
MonitorElement *emean_vs_ieta_HO;

Expand All @@ -149,10 +153,10 @@ class HcalRecHitsAnalyzer : public DQMEDAnalyzer {
std::vector<MonitorElement*> occupancy_map_HF;
MonitorElement *occupancy_map_HO;

std::vector<MonitorElement*> occupancy_vs_ieta_HB;
std::vector<MonitorElement*> occupancy_vs_ieta_HE;
std::vector<MonitorElement*> occupancy_vs_ieta_HF;
MonitorElement *occupancy_vs_ieta_HO;
std::vector<MonitorElement*> nrechits_vs_iphi_HBP, nrechits_vs_iphi_HBM;
std::vector<MonitorElement*> nrechits_vs_iphi_HEP, nrechits_vs_iphi_HEM;
std::vector<MonitorElement*> nrechits_vs_iphi_HFP, nrechits_vs_iphi_HFM;
MonitorElement *nrechits_vs_iphi_HOP, *nrechits_vs_iphi_HOM;

// for single monoenergetic particles - cone collection profile vs ieta.
MonitorElement* meEnConeEtaProfile;
Expand Down Expand Up @@ -180,6 +184,9 @@ class HcalRecHitsAnalyzer : public DQMEDAnalyzer {
MonitorElement* meRecHitsEnergyHE;
MonitorElement* meRecHitsEnergyHEM0;
MonitorElement* meRecHitsEnergyHEM3;
std::vector<MonitorElement*> meRecHitsEnergyHEP17;
std::vector<MonitorElement*> meRecHitsEnergyHEP17M0;
std::vector<MonitorElement*> meRecHitsEnergyHEP17M3;
MonitorElement* meRecHitsEnergyM2vM0HE;
MonitorElement* meRecHitsEnergyM3vM0HE;
MonitorElement* meRecHitsEnergyM3vM2HE;
Expand Down
5 changes: 5 additions & 0 deletions DQMOffline/Hcal/python/HcalRecHitParam_cfi.py
Expand Up @@ -11,6 +11,11 @@
eventype = cms.untracked.string('multi'),
ecalselector = cms.untracked.string('yes'),
hcalselector = cms.untracked.string('all'),
hep17 = cms.untracked.bool(False)
# useAllHistos = cms.untracked.bool(False)
)

from Configuration.Eras.Modifier_run2_HEPlan1_2017_cff import run2_HEPlan1_2017
run2_HEPlan1_2017.toModify(hcalRecHitsAnalyzer,
hep17 = cms.untracked.bool(True)
)
122 changes: 93 additions & 29 deletions DQMOffline/Hcal/src/CaloTowersAnalyzer.cc
Expand Up @@ -15,7 +15,39 @@ CaloTowersAnalyzer::CaloTowersAnalyzer(edm::ParameterSet const& conf){
useAllHistos_ = conf.getUntrackedParameter<bool>("useAllHistos", false);
}

void CaloTowersAnalyzer::bookHistograms(DQMStore::IBooker & ibooker, edm::Run const & /* iRun*/, edm::EventSetup const & /* iSetup */)
void CaloTowersAnalyzer::dqmBeginRun(const edm::Run& run, const edm::EventSetup& es){

edm::ESHandle<HcalDDDRecConstants> pHRNDC;
es.get<HcalRecNumberingRecord>().get( pHRNDC );
hcons = &(*pHRNDC);

//Get Phi segmentation from geometry, use the max phi number so that all iphi values are included.

int NphiMax = hcons->getNPhi(0);

NphiMax = (hcons->getNPhi(1) > NphiMax ? hcons->getNPhi(1) : NphiMax);
NphiMax = (hcons->getNPhi(2) > NphiMax ? hcons->getNPhi(2) : NphiMax);
NphiMax = (hcons->getNPhi(3) > NphiMax ? hcons->getNPhi(3) : NphiMax);

//Center the iphi bins on the integers
iphi_min_ = 0.5;
iphi_max_ = NphiMax + 0.5;
iphi_bins_ = (int) (iphi_max_ - iphi_min_);

//Retain classic behavior, all plots have same ieta range.

int iEtaMax = (hcons->getEtaRange(0).second > hcons->getEtaRange(1).second ? hcons->getEtaRange(0).second : hcons->getEtaRange(1).second);
iEtaMax = (iEtaMax > hcons->getEtaRange(2).second ? iEtaMax : hcons->getEtaRange(2).second);
iEtaMax = (iEtaMax > hcons->getEtaRange(3).second ? iEtaMax : hcons->getEtaRange(3).second);

//Give an empty bin around the subdet ieta range to make it clear that all ieta rings have been included
ieta_min_ = -iEtaMax - 1.5;
ieta_max_ = iEtaMax + 1.5;
ieta_bins_ = (int) (ieta_max_ - ieta_min_);

}

void CaloTowersAnalyzer::bookHistograms(DQMStore::IBooker & ibooker, edm::Run const & /* iRun*/, edm::EventSetup const & /* iSetup */)
{

etaMin[0] = 0.;
Expand Down Expand Up @@ -47,40 +79,40 @@ CaloTowersAnalyzer::CaloTowersAnalyzer(edm::ParameterSet const& conf){
//in the EndJob for norms and such so I am leaving them alone for now
//-------------------------------------------------------------------------------------------
sprintf (histo, "Ntowers_per_event_vs_ieta" );
Ntowers_vs_ieta = ibooker.book1D(histo, histo, 82, -41., 41.);
Ntowers_vs_ieta = ibooker.book1D(histo, histo, ieta_bins_, ieta_min_, ieta_max_);

sprintf (histo, "CaloTowersTask_map_Nentries" );
mapEnergy_N = ibooker.book2D(histo, histo, 82, -41., 41., 72, 0., 72.);
mapEnergy_N = ibooker.book2D(histo, histo, ieta_bins_, ieta_min_, ieta_max_, iphi_bins_, iphi_min_, iphi_max_);
//-------------------------------------------------------------------------------------------

//These the single pion scan histos
//-------------------------------------------------------------------------------------------
//The first three are not used
if (useAllHistos_){
sprintf (histo, "emean_vs_ieta_E" );
emean_vs_ieta_E = ibooker.bookProfile(histo, histo, 82, -41., 41., 2100, -100., 2000.);
emean_vs_ieta_E = ibooker.bookProfile(histo, histo, ieta_bins_, ieta_min_, ieta_max_, 2100, -100., 2000.);
sprintf (histo, "emean_vs_ieta_H" );
emean_vs_ieta_H = ibooker.bookProfile(histo, histo, 82, -41., 41., 2100, -100., 2000.);
emean_vs_ieta_H = ibooker.bookProfile(histo, histo, ieta_bins_, ieta_min_, ieta_max_, 2100, -100., 2000.);
sprintf (histo, "emean_vs_ieta_EH" );
emean_vs_ieta_EH = ibooker.bookProfile(histo, histo, 82, -41., 41., 2100, -100., 2000.);
emean_vs_ieta_EH = ibooker.bookProfile(histo, histo, ieta_bins_, ieta_min_, ieta_max_, 2100, -100., 2000.);
}
//These are drawn
sprintf (histo, "emean_vs_ieta_E1" );
emean_vs_ieta_E1 = ibooker.bookProfile(histo, histo, 82, -41., 41., 2100, -100., 2000.);
emean_vs_ieta_E1 = ibooker.bookProfile(histo, histo, ieta_bins_, ieta_min_, ieta_max_, 2100, -100., 2000.);
sprintf (histo, "emean_vs_ieta_H1" );
emean_vs_ieta_H1 = ibooker.bookProfile(histo, histo, 82, -41., 41., 2100, -100., 2000.);
emean_vs_ieta_H1 = ibooker.bookProfile(histo, histo, ieta_bins_, ieta_min_, ieta_max_, 2100, -100., 2000.);
sprintf (histo, "emean_vs_ieta_EH1" );
emean_vs_ieta_EH1 = ibooker.bookProfile(histo, histo, 82, -41., 41., 2100, -100., 2000.);
emean_vs_ieta_EH1 = ibooker.bookProfile(histo, histo, ieta_bins_, ieta_min_, ieta_max_, 2100, -100., 2000.);
//-------------------------------------------------------------------------------------------

//Map energy histos are not drawn
if (useAllHistos_){
sprintf (histo, "CaloTowersTask_map_energy_E" );
mapEnergy_E = ibooker.book2D(histo, histo, 82, -41., 41., 72, 0., 72.);
mapEnergy_E = ibooker.book2D(histo, histo, ieta_bins_, ieta_min_, ieta_max_, iphi_bins_, iphi_min_, iphi_max_);
sprintf (histo, "CaloTowersTask_map_energy_H");
mapEnergy_H = ibooker.book2D(histo, histo, 82, -41., 41., 72, 0., 72.);
mapEnergy_H = ibooker.book2D(histo, histo, ieta_bins_, ieta_min_, ieta_max_, iphi_bins_, iphi_min_, iphi_max_);
sprintf (histo, "CaloTowersTask_map_energy_EH" );
mapEnergy_EH = ibooker.book2D(histo, histo, 82, -41., 41., 72, 0., 72.);
mapEnergy_EH = ibooker.book2D(histo, histo, ieta_bins_, ieta_min_, ieta_max_, iphi_bins_, iphi_min_, iphi_max_);
}

//All ECAL cell histos are used
Expand All @@ -100,10 +132,10 @@ CaloTowersAnalyzer::CaloTowersAnalyzer(edm::ParameterSet const& conf){

//Occupancy vs. ieta is drawn, occupancy map is needed to draw it
sprintf (histo, "CaloTowersTask_map_occupancy" );
occupancy_map = ibooker.book2D(histo, histo, 82, -41., 41., 72, 0., 72.);
occupancy_map = ibooker.book2D(histo, histo, ieta_bins_, ieta_min_, ieta_max_, iphi_bins_, iphi_min_, iphi_max_);

sprintf (histo, "CaloTowersTask_occupancy_vs_ieta" );
occupancy_vs_ieta = ibooker.book1D(histo, histo, 82, -41, 41);
occupancy_vs_ieta = ibooker.book1D(histo, histo, ieta_bins_, -41, 41);

if( isub == 1 || isub == 0) {
//All cell histos are used
Expand Down Expand Up @@ -180,6 +212,13 @@ CaloTowersAnalyzer::CaloTowersAnalyzer(edm::ParameterSet const& conf){
hadEnergyTiming_profile_High_HB = ibooker.bookProfile(histo, histo, 300, 0. , 3000., 70, -48., 92. ) ;
//-------------------------------------------------------------------------------------------

sprintf (histo, "CaloTowersTask_Iphi_HCAL_component_of_tower_HBP" ) ;
meIphiHcalTower_HBP = ibooker.book1D(histo, histo, iphi_bins_, iphi_min_, iphi_max_);
sprintf (histo, "CaloTowersTask_Iphi_HCAL_component_of_tower_HBM" ) ;
meIphiHcalTower_HBM = ibooker.book1D(histo, histo, iphi_bins_, iphi_min_, iphi_max_);

//-------------------------------------------------------------------------------------------

//Everything else is not drawn
if (useAllHistos_){
sprintf (histo, "CaloTowersTask_sum_of_energy_HCAL_vs_ECAL_HB") ;
Expand All @@ -198,11 +237,11 @@ CaloTowersAnalyzer::CaloTowersAnalyzer(edm::ParameterSet const& conf){
meTotEnergy_HB = ibooker.book1D(histo, histo,400, 0., 2000.) ;

sprintf (histo, "CaloTowersTask_map_energy_HB" );
mapEnergy_HB = ibooker.book2D(histo, histo, 82, -41., 41., 72, 0., 72.);
mapEnergy_HB = ibooker.book2D(histo, histo, ieta_bins_, ieta_min_, ieta_max_, iphi_bins_, iphi_min_, iphi_max_);
sprintf (histo, "CaloTowersTask_map_energy_HCAL_HB");
mapEnergyHcal_HB = ibooker.book2D(histo, histo, 82, -41., 41., 72, 0., 72.);
mapEnergyHcal_HB = ibooker.book2D(histo, histo, ieta_bins_, ieta_min_, ieta_max_, iphi_bins_, iphi_min_, iphi_max_);
sprintf (histo, "CaloTowersTask_map_energy_ECAL_HB" );
mapEnergyEcal_HB = ibooker.book2D(histo, histo, 82, -41., 41., 72, 0., 72.);
mapEnergyEcal_HB = ibooker.book2D(histo, histo, ieta_bins_, ieta_min_, ieta_max_, iphi_bins_, iphi_min_, iphi_max_);

sprintf (histo, "CaloTowersTask_phi_MET_HB" ) ;
phiMET_HB = ibooker.book1D(histo, histo, 72, -3.1415926535898, 3.1415926535898 ) ;
Expand Down Expand Up @@ -272,6 +311,13 @@ CaloTowersAnalyzer::CaloTowersAnalyzer(edm::ParameterSet const& conf){
hadEnergyTiming_profile_HE = ibooker.bookProfile(histo, histo, 200, 0. , 800., 70, -48., 92. ) ;
//-------------------------------------------------------------------------------------------

sprintf (histo, "CaloTowersTask_Iphi_HCAL_component_of_tower_HEP" ) ;
meIphiHcalTower_HEP = ibooker.book1D(histo, histo, iphi_bins_, iphi_min_, iphi_max_);
sprintf (histo, "CaloTowersTask_Iphi_HCAL_component_of_tower_HEM" ) ;
meIphiHcalTower_HEM = ibooker.book1D(histo, histo, iphi_bins_, iphi_min_, iphi_max_);

//-------------------------------------------------------------------------------------------

//Everything else is not drawn
if (useAllHistos_){
sprintf (histo, "CaloTowersTask_sum_of_energy_HCAL_vs_ECAL_HE") ;
Expand All @@ -290,11 +336,11 @@ CaloTowersAnalyzer::CaloTowersAnalyzer(edm::ParameterSet const& conf){
meTotEnergy_HE = ibooker.book1D(histo, histo,400, 0., 2000.) ;

sprintf (histo, "CaloTowersTask_map_energy_HE" );
mapEnergy_HE = ibooker.book2D(histo, histo, 82, -41., 41., 72, 0., 72.);
mapEnergy_HE = ibooker.book2D(histo, histo, ieta_bins_, ieta_min_, ieta_max_, iphi_bins_, iphi_min_, iphi_max_);
sprintf (histo, "CaloTowersTask_map_energy_HCAL_HE");
mapEnergyHcal_HE = ibooker.book2D(histo, histo, 82, -41., 41., 72, 0., 72.);
mapEnergyHcal_HE = ibooker.book2D(histo, histo, ieta_bins_, ieta_min_, ieta_max_, iphi_bins_, iphi_min_, iphi_max_);
sprintf (histo, "CaloTowersTask_map_energy_ECAL_HE" );
mapEnergyEcal_HE = ibooker.book2D(histo, histo, 82, -41., 41., 72, 0., 72.);
mapEnergyEcal_HE = ibooker.book2D(histo, histo, ieta_bins_, ieta_min_, ieta_max_, iphi_bins_, iphi_min_, iphi_max_);

sprintf (histo, "CaloTowersTask_phi_MET_HE" ) ;
phiMET_HE = ibooker.book1D(histo, histo, 72, -3.1415926535898, 3.1415926535898 ) ;
Expand Down Expand Up @@ -358,6 +404,13 @@ CaloTowersAnalyzer::CaloTowersAnalyzer(edm::ParameterSet const& conf){
hadEnergyTiming_profile_HF = ibooker.bookProfile(histo, histo, 200, 0. , 600., 70, -48., 92. ) ;
//-------------------------------------------------------------------------------------------

sprintf (histo, "CaloTowersTask_Iphi_tower_HFP" ) ;
meIphiCaloTower_HFP = ibooker.book1D(histo, histo, iphi_bins_, iphi_min_, iphi_max_);
sprintf (histo, "CaloTowersTask_Iphi_tower_HFM" ) ;
meIphiCaloTower_HFM = ibooker.book1D(histo, histo, iphi_bins_, iphi_min_, iphi_max_);

//-------------------------------------------------------------------------------------------

//Everything else is not drawn
if (useAllHistos_){
sprintf (histo, "CaloTowersTask_sum_of_energy_HCAL_vs_ECAL_HF") ;
Expand All @@ -376,11 +429,11 @@ CaloTowersAnalyzer::CaloTowersAnalyzer(edm::ParameterSet const& conf){
meTotEnergy_HF = ibooker.book1D(histo, histo, 400, 0., 2000.) ;

sprintf (histo, "CaloTowersTask_map_energy_HF" );
mapEnergy_HF = ibooker.book2D(histo, histo, 82, -41., 41., 72, 0., 72.);
mapEnergy_HF = ibooker.book2D(histo, histo, ieta_bins_, ieta_min_, ieta_max_, iphi_bins_, iphi_min_, iphi_max_);
sprintf (histo, "CaloTowersTask_map_energy_HCAL_HF");
mapEnergyHcal_HF = ibooker.book2D(histo, histo, 82, -41., 41., 72, 0., 72.);
mapEnergyHcal_HF = ibooker.book2D(histo, histo, ieta_bins_, ieta_min_, ieta_max_, iphi_bins_, iphi_min_, iphi_max_);
sprintf (histo, "CaloTowersTask_map_energy_ECAL_HF" );
mapEnergyEcal_HF = ibooker.book2D(histo, histo, 82, -41., 41., 72, 0., 72.);
mapEnergyEcal_HF = ibooker.book2D(histo, histo, ieta_bins_, ieta_min_, ieta_max_, iphi_bins_, iphi_min_, iphi_max_);

sprintf (histo, "CaloTowersTask_phi_MET_HF" ) ;
phiMET_HF = ibooker.book1D(histo, histo, 72, -3.1415926535898, 3.1415926535898 ) ;
Expand Down Expand Up @@ -474,7 +527,6 @@ void CaloTowersAnalyzer::analyze(edm::Event const& event, edm::EventSetup const&
// cell properties
CaloTowerDetId idT = cal->id();
int ieta = idT.ieta();
if(ieta > 0) ieta -= 1;
int iphi = idT.iphi();

// ecal: 0 EcalBarrel 1 EcalEndcap
Expand Down Expand Up @@ -507,8 +559,7 @@ void CaloTowersAnalyzer::analyze(edm::Event const& event, edm::EventSetup const&

//Ntowers is used in EndJob, occupancy_map is used for occupancy vs ieta
Ntowers_vs_ieta -> Fill(double(ieta),1.);
occupancy_map -> Fill(double(ieta),double(iphi));

occupancy_map -> Fill(double(ieta),double(iphi));

if((isub == 0 || isub == 1)
&& (fabs(etaT) < etaMax[0] && fabs(etaT) >= etaMin[0] )) {
Expand All @@ -526,13 +577,18 @@ void CaloTowersAnalyzer::analyze(edm::Event const& event, edm::EventSetup const&
}
// std::cout << " e_ecal = " << eE << std::endl;

if (eH>0.){ // iphi of HCAL component of calotower
if (ieta>0) meIphiHcalTower_HBP -> Fill(double(iphi));
else meIphiHcalTower_HBM -> Fill(double(iphi));
}

// simple sums
sumEnergyHcal_HB += eH;
sumEnergyEcal_HB += eE;
sumEnergyHO_HB += eHO;

numFiredTowers_HB++;

//Not used
if (useAllHistos_){
meEnergyEcalTower_HB->Fill(eE);
Expand Down Expand Up @@ -580,6 +636,11 @@ void CaloTowersAnalyzer::analyze(edm::Event const& event, edm::EventSetup const&
}
// std::cout << " e_ecal = " << eE << std::endl;

if (eH>0.){ // iphi of HCAL component of calotower
if (ieta>0) meIphiHcalTower_HEP -> Fill(double(iphi));
else meIphiHcalTower_HEM -> Fill(double(iphi));
}

// simple sums
sumEnergyHcal_HE += eH;
sumEnergyEcal_HE += eE;
Expand Down Expand Up @@ -628,14 +689,17 @@ void CaloTowersAnalyzer::analyze(edm::Event const& event, edm::EventSetup const&
mapEnergyEcal_HF -> Fill(double(ieta), double(iphi), eE);
}
// std::cout << " e_ecal = " << eE << std::endl;


if (ieta>0) meIphiCaloTower_HFP -> Fill(double(iphi));
else meIphiCaloTower_HFM -> Fill(double(iphi));

// simple sums
sumEnergyHcal_HF += eH;
sumEnergyEcal_HF += eE;
sumEnergyHO_HF += eHO;

numFiredTowers_HF++;

//Not used
if (useAllHistos_){
meEnergyEcalTower_HF->Fill(eE);
Expand Down