66 prof_name =
"bcEE_PV";
67 title =
"Basic Clusters EE vs. PV";
72 prof_name =
"scEB_PV";
73 title =
"Super Clusters EB vs. PV";
78 prof_name =
"scEE_PV";
79 title =
"Super Clusters EE vs. PV";
84 prof_name =
"scEtEB_PV";
85 title =
"Super Clusters Et EB vs. PV";
90 prof_name =
"scEtEE_PV";
91 title =
"Super Clusters Et EE vs. PV";
96 prof_name =
"recHitEtEB_PV";
97 title =
"Reconstructed Hit Et EB vs. PV";
102 prof_name =
"recHitEtEE_PV";
103 title =
"Reconstructed Hit Et EE vs. PV";
108 prof_name =
"emIso_PV";
109 title =
"EM Isolation vs. PV";
115 title =
"EM Isolation";
116 emIso = ibooker.
book1D(prof_name, title, 50, 0, 50);
120 prof_name =
"scHitEtEB";
121 title =
"Super Cluster Hit Et EB";
126 prof_name =
"scHitEtEE";
127 title =
"Super Cluster Hit Et EE";
172 prof_name =
"scSigmaIetaIeta_EB";
173 title =
"Super Cluster sigmaIetaIeta EB";
178 prof_name =
"scSigmaIetaIeta_EE";
179 title =
"Super Cluster sigmaIetaIeta EE";
185 prof_name =
"scSigmaIetaIphi_EB";
186 title =
"Super Cluster sigmaIetaIphi EB";
191 prof_name =
"scSigmaIetaIphi_EE";
192 title =
"Super Cluster sigmaIetaIphi EE";
200 r9_EB = ibooker.
book1D(prof_name, title, 50, 0, 1.5);
206 r9_EE = ibooker.
book1D(prof_name, title, 50, 0, 1.5);
212 prof_name =
"recHitEtEB";
213 title =
"RecHit Et EB";
218 prof_name =
"recHitEtEE";
219 title =
"RecHit Et EE";
231 if (!PVCollection_h.
isValid()) {
237 if (!electronCollection_h.
isValid()) {
245 if (!basicClusters_EB_h.
isValid()) {
249 bcEB_PV->
Fill(PVCollection_h->size(), basicClusters_EB_h->size());
255 if (!basicClusters_EE_h.
isValid()) {
259 bcEE_PV->
Fill(PVCollection_h->size(), basicClusters_EE_h->size());
264 if (!basicClusters_h.
isValid()) {
301 if (!superClusters_EE_h.
isValid()) {
307 if (electronCollection_h.
isValid()) {
308 for (reco::GsfElectronCollection::const_iterator recoElectron = electronCollection_h->begin();
309 recoElectron != electronCollection_h->end();
311 double IsoEcal = recoElectron->dr03EcalRecHitSumEt();
318 scEE_PV->
Fill(PVCollection_h->size(), superClusters_EE_h->size());
320 for (reco::SuperClusterCollection::const_iterator itSC = superClusters_EE_h->begin();
321 itSC != superClusters_EE_h->end();
323 double scEE_Et = itSC->energy() *
sin(2. * atan(
exp(-itSC->position().eta())));
336 const auto &cov = EcalClusterTools::localCovariances(seedCluster, eeRecHits, p_topology);
338 float sigmaIetaIphi = cov[1];
340 float e3x3 = EcalClusterTools::e3x3(seedCluster, eeRecHits, p_topology);
341 float r9 = e3x3 / itSC->rawEnergy();
358 if (!superClusters_EB_h.
isValid()) {
361 scEB_PV->
Fill(PVCollection_h->size(), superClusters_EB_h->size());
363 for (reco::SuperClusterCollection::const_iterator itSC = superClusters_EB_h->begin();
364 itSC != superClusters_EB_h->end();
366 double scEB_Et = itSC->energy() *
sin(2. * atan(
exp(-itSC->position().eta())));
379 const auto &cov = EcalClusterTools::localCovariances(seedCluster, ebRecHits, p_topology);
381 float sigmaIetaIphi = cov[1];
383 float e3x3 = EcalClusterTools::e3x3(seedCluster, ebRecHits, p_topology);
384 float r9 = e3x3 / itSC->rawEnergy();
396 double RecHitEt_EB = 0;
402 RecHitEt_EB += itr->energy() *
sin(position.
theta());
409 double RecHitEt_EE = 0;
413 RecHitEt_EE += itr->energy() *
sin(position.
theta());
MonitorElement * recHitEtEE_PV
MonitorElement * recHitEtEB
~EcalPileUpDepMonitor() override
Destructor.
MonitorElement * scEtEB_PV
bool existsAs(std::string const ¶meterName, bool trackiness=true) const
checks if a parameter exists as a given type
edm::EDGetTokenT< reco::GsfElectronCollection > EleTag_
edm::EDGetTokenT< edm::View< reco::CaloCluster > > basicClusterCollection_
virtual void setCurrentFolder(std::string const &fullpath)
bool getByToken(EDGetToken token, Handle< PROD > &result) const
MonitorElement * scHitEtEE
edm::EDGetTokenT< EcalRecHitCollection > RecHitCollection_EE_
#define DEFINE_FWK_MODULE(type)
MonitorElement * scSigmaIetaIphi_EB
Sin< T >::type sin(const T &t)
MonitorElement * recHitEtEE
constexpr bool isUninitialized() const noexcept
std::vector< EcalRecHit >::const_iterator const_iterator
edm::EDGetTokenT< EcalRecHitCollection > RecHitCollection_EB_
edm::EDGetTokenT< reco::VertexCollection > VertexCollection_
Exp< T >::type exp(const T &t)
edm::EDGetTokenT< edm::View< reco::CaloCluster > > basicClusterCollection_EB_
MonitorElement * scHitEtEB
edm::EDGetTokenT< reco::SuperClusterCollection > superClusterCollection_EB_
Geom::Theta< T > theta() const
bool getData(T &iHolder) const
void analyze(const edm::Event &, const edm::EventSetup &) override
Analyze.
MonitorElement * emIso_PV
MonitorElement * bookProfile(TString const &name, TString const &title, int nchX, double lowX, double highX, int, double lowY, double highY, char const *option="s", FUNC onbooking=NOOP())
EcalPileUpDepMonitor(const edm::ParameterSet &ps)
Constructor.
MonitorElement * recHitEtEB_PV
MonitorElement * scSigmaIetaIphi_EE
edm::ESGetToken< CaloGeometry, CaloGeometryRecord > geomH
edm::ESGetToken< CaloTopology, CaloTopologyRecord > caloTop
T const * product() const
MonitorElement * scSigmaIetaIeta_EE
T getParameter(std::string const &) const
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
MonitorElement * scEtEE_PV
boost::indirect_iterator< typename seq_t::const_iterator > const_iterator
static int position[264][3]
MonitorElement * scSigmaIetaIeta_EB
std::shared_ptr< const CaloCellGeometry > getGeometry(const DetId &id) const
Get the cell geometry of a given detector id.
edm::EDGetTokenT< reco::SuperClusterCollection > superClusterCollection_EE_
Log< level::Warning, false > LogWarning
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
edm::EDGetTokenT< edm::View< reco::CaloCluster > > basicClusterCollection_EE_
virtual void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)