#include <HLTAlCaMonPi0.h>
Public Member Functions | |
HLTAlCaMonPi0 (const edm::ParameterSet &) | |
~HLTAlCaMonPi0 () | |
Protected Member Functions | |
void | analyze (const edm::Event &e, const edm::EventSetup &c) |
void | beginJob () |
void | beginLuminosityBlock (const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &context) |
void | beginRun (const edm::Run &r, const edm::EventSetup &c) |
void | convxtalid (int &, int &) |
int | diff_neta_s (int, int) |
int | diff_nphi_s (int, int) |
void | endJob () |
void | endLuminosityBlock (const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c) |
void | endRun (const edm::Run &r, const edm::EventSetup &c) |
Private Attributes | |
int | clusEtaSize_ |
int | clusPhiSize_ |
double | clusSeedThr_ |
double | clusSeedThrEndCap_ |
DQMStore * | dbe_ |
std::vector< EBDetId > | detIdEBRecHits |
std::vector< EEDetId > | detIdEERecHits |
std::vector< EcalRecHit > | EBRecHits |
std::vector< EcalRecHit > | EERecHits |
int | eventCounter_ |
std::string | fileName_ |
Output file name if required. | |
std::string | folderName_ |
DQM folder name. | |
int | gammaCandEtaSize_ |
int | gammaCandPhiSize_ |
MonitorElement * | hEventEnergyEBeta_ |
Distribution of total event energy EB (eta) | |
MonitorElement * | hEventEnergyEBpi0_ |
Distribution of total event energy EB (pi0) | |
MonitorElement * | hEventEnergyEEeta_ |
Distribution of total event energy EE (eta) | |
MonitorElement * | hEventEnergyEEpi0_ |
Distribution of total event energy EE (pi0) | |
MonitorElement * | hiEtaDistrEBeta_ |
Distribution of rechits in iEta (eta) | |
MonitorElement * | hiEtaDistrEBpi0_ |
Distribution of rechits in iEta (pi0) | |
MonitorElement * | hiPhiDistrEBeta_ |
Distribution of rechits in iPhi (eta) | |
MonitorElement * | hiPhiDistrEBpi0_ |
Distribution of rechits in iPhi (pi0) | |
MonitorElement * | hIsoEtaEB_ |
Eta Iso EB. | |
MonitorElement * | hIsoEtaEE_ |
Eta Iso EE. | |
MonitorElement * | hIsoPi0EB_ |
Pi0 Iso EB. | |
MonitorElement * | hIsoPi0EE_ |
Pi0 Iso EE. | |
MonitorElement * | hiXDistrEEeta_ |
Distribution of rechits in ix EE (eta) | |
MonitorElement * | hiXDistrEEpi0_ |
Distribution of rechits in ix EE (pi0) | |
MonitorElement * | hiYDistrEEeta_ |
Distribution of rechits in iy EE (eta) | |
MonitorElement * | hiYDistrEEpi0_ |
Distribution of rechits in iy EE (pi0) | |
MonitorElement * | hMeanRecHitEnergyEBeta_ |
Distribution of Mean energy per rechit EB (eta) | |
MonitorElement * | hMeanRecHitEnergyEBpi0_ |
Distribution of Mean energy per rechit EB (pi0) | |
MonitorElement * | hMeanRecHitEnergyEEeta_ |
Distribution of Mean energy per rechit EE (eta) | |
MonitorElement * | hMeanRecHitEnergyEEpi0_ |
Distribution of Mean energy per rechit EE (pi0) | |
MonitorElement * | hMinvEtaEB_ |
Eta invariant mass in EB. | |
MonitorElement * | hMinvEtaEE_ |
Eta invariant mass in EE. | |
MonitorElement * | hMinvPi0EB_ |
Pi0 invariant mass in EB. | |
MonitorElement * | hMinvPi0EE_ |
Pi0 invariant mass in EE. | |
MonitorElement * | hNRecHitsEBeta_ |
Distribution of number of RecHits EB (eta) | |
MonitorElement * | hNRecHitsEBpi0_ |
Distribution of number of RecHits EB (pi0) | |
MonitorElement * | hNRecHitsEEeta_ |
Distribution of number of RecHits EE (eta) | |
MonitorElement * | hNRecHitsEEpi0_ |
Distribution of number of RecHits EE (pi0) | |
MonitorElement * | hPt1EtaEB_ |
Pt of the 1st most energetic Eta photon in EB. | |
MonitorElement * | hPt1EtaEE_ |
Pt of the 1st most energetic Eta photon in EE. | |
MonitorElement * | hPt1Pi0EB_ |
Pt of the 1st most energetic Pi0 photon in EB. | |
MonitorElement * | hPt1Pi0EE_ |
Pt of the 1st most energetic Pi0 photon in EE. | |
MonitorElement * | hPt2EtaEB_ |
Pt of the 2nd most energetic Eta photon in EB. | |
MonitorElement * | hPt2EtaEE_ |
Pt of the 2nd most energetic Eta photon in EE. | |
MonitorElement * | hPt2Pi0EB_ |
Pt of the 2nd most energetic Pi0 photon in EB. | |
MonitorElement * | hPt2Pi0EE_ |
Pt of the 2nd most energetic Pi0 photon in EE. | |
MonitorElement * | hPtEtaEB_ |
Eta Pt in EB. | |
MonitorElement * | hPtEtaEE_ |
Eta Pt in EE. | |
MonitorElement * | hPtPi0EB_ |
Pi0 Pt in EB. | |
MonitorElement * | hPtPi0EE_ |
Pi0 Pt in EE. | |
MonitorElement * | hRechitEnergyEBeta_ |
Energy Distribution of rechits EB (eta) | |
MonitorElement * | hRechitEnergyEBpi0_ |
Energy Distribution of rechits EB (pi0) | |
MonitorElement * | hRechitEnergyEEeta_ |
Energy Distribution of rechits EE (eta) | |
MonitorElement * | hRechitEnergyEEpi0_ |
Energy Distribution of rechits EE (pi0) | |
MonitorElement * | hS4S91EtaEB_ |
S4S9 of the 1st most energetic eta photon. | |
MonitorElement * | hS4S91EtaEE_ |
S4S9 of the 1st most energetic eta photon EE. | |
MonitorElement * | hS4S91Pi0EB_ |
S4S9 of the 1st most energetic pi0 photon. | |
MonitorElement * | hS4S91Pi0EE_ |
S4S9 of the 1st most energetic pi0 photon EE. | |
MonitorElement * | hS4S92EtaEB_ |
S4S9 of the 2nd most energetic eta photon. | |
MonitorElement * | hS4S92EtaEE_ |
S4S9 of the 2nd most energetic eta photon EE. | |
MonitorElement * | hS4S92Pi0EB_ |
S4S9 of the 2nd most energetic pi0 photon. | |
MonitorElement * | hS4S92Pi0EE_ |
S4S9 of the 2nd most energetic pi0 photon EE. | |
bool | isMonEBeta_ |
bool | isMonEBpi0_ |
which subdet will be monitored | |
bool | isMonEEeta_ |
bool | isMonEEpi0_ |
bool | ParameterLogWeighted_ |
double | ParameterT0_barl_ |
double | ParameterT0_endc_ |
double | ParameterT0_endcPresh_ |
double | ParameterW0_ |
double | ParameterX0_ |
PositionCalc | posCalculator_ |
unsigned int | prescaleFactor_ |
Monitor every prescaleFactor_ events. | |
edm::InputTag | productMonitoredEBeta_ |
edm::InputTag | productMonitoredEBpi0_ |
object to monitor | |
edm::InputTag | productMonitoredEEeta_ |
edm::InputTag | productMonitoredEEpi0_ |
object to monitor | |
double | ptMinForIsolation_ |
double | ptMinForIsolationEndCap_ |
double | ptMinForIsolationEta_ |
double | ptMinForIsolationEtaEndCap_ |
bool | saveToFile_ |
Write to file. | |
double | seleEtaBeltDeta_ |
double | seleEtaBeltDetaEndCap_ |
double | seleEtaBeltDR_ |
double | seleEtaBeltDREndCap_ |
double | seleEtaIso_ |
double | seleEtaIsoEndCap_ |
double | seleMinvMaxEta_ |
double | seleMinvMaxEtaEndCap_ |
double | seleMinvMaxPi0_ |
double | seleMinvMaxPi0EndCap_ |
double | seleMinvMinEta_ |
double | seleMinvMinEtaEndCap_ |
double | seleMinvMinPi0_ |
double | seleMinvMinPi0EndCap_ |
double | selePi0BeltDeta_ |
double | selePi0BeltDetaEndCap_ |
double | selePi0BeltDR_ |
double | selePi0BeltDREndCap_ |
double | selePi0Iso_ |
double | selePi0IsoEndCap_ |
double | selePtEta_ |
double | selePtEtaEndCap_ |
double | selePtGamma_ |
double | selePtGammaEndCap_ |
for pi0->gg endcap | |
double | selePtGammaEta_ |
for eta->gg barrel | |
double | selePtGammaEtaEndCap_ |
for eta->gg endcap | |
double | selePtPi0_ |
double | selePtPi0EndCap_ |
double | seleS4S9Gamma_ |
double | seleS4S9GammaEndCap_ |
double | seleS4S9GammaEta_ |
double | seleS4S9GammaEtaEndCap_ |
double | seleS9S25GammaEta_ |
double | seleS9S25GammaEtaEndCap_ |
double | seleXtalMinEnergy_ |
double | seleXtalMinEnergyEndCap_ |
Definition at line 41 of file HLTAlCaMonPi0.h.
HLTAlCaMonPi0::HLTAlCaMonPi0 | ( | const edm::ParameterSet & | ps | ) |
for Pi0 barrel selection
for Pi0 endcap selection
for Eta barrel selection
for Eta endcap selection
Definition at line 54 of file HLTAlCaMonPi0.cc.
References clusEtaSize_, clusPhiSize_, clusSeedThr_, clusSeedThrEndCap_, dbe_, fileName_, folderName_, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), isMonEBeta_, isMonEBpi0_, isMonEEeta_, isMonEEpi0_, cppFunctionSkipper::operator, posCalculator_, prescaleFactor_, productMonitoredEBeta_, productMonitoredEBpi0_, productMonitoredEEeta_, productMonitoredEEpi0_, ptMinForIsolation_, ptMinForIsolationEndCap_, ptMinForIsolationEta_, ptMinForIsolationEtaEndCap_, saveToFile_, seleEtaBeltDeta_, seleEtaBeltDetaEndCap_, seleEtaBeltDR_, seleEtaBeltDREndCap_, seleEtaIso_, seleEtaIsoEndCap_, seleMinvMaxEta_, seleMinvMaxEtaEndCap_, seleMinvMaxPi0_, seleMinvMaxPi0EndCap_, seleMinvMinEta_, seleMinvMinEtaEndCap_, seleMinvMinPi0_, seleMinvMinPi0EndCap_, selePi0BeltDeta_, selePi0BeltDetaEndCap_, selePi0BeltDR_, selePi0BeltDREndCap_, selePi0Iso_, selePi0IsoEndCap_, selePtEta_, selePtEtaEndCap_, selePtGamma_, selePtGammaEndCap_, selePtGammaEta_, selePtGammaEtaEndCap_, selePtPi0_, selePtPi0EndCap_, seleS4S9Gamma_, seleS4S9GammaEndCap_, seleS4S9GammaEta_, seleS4S9GammaEtaEndCap_, seleS9S25GammaEta_, seleS9S25GammaEtaEndCap_, seleXtalMinEnergy_, and seleXtalMinEnergyEndCap_.
: eventCounter_(0) { dbe_ = Service<DQMStore>().operator->(); folderName_ = ps.getUntrackedParameter<std::string>("FolderName","HLT/AlCaEcalPi0"); prescaleFactor_ = ps.getUntrackedParameter<int>("prescaleFactor",1); productMonitoredEBpi0_= ps.getUntrackedParameter<edm::InputTag>("AlCaStreamEBpi0Tag"); productMonitoredEBeta_= ps.getUntrackedParameter<edm::InputTag>("AlCaStreamEBetaTag"); productMonitoredEEpi0_= ps.getUntrackedParameter<edm::InputTag>("AlCaStreamEEpi0Tag"); productMonitoredEEeta_= ps.getUntrackedParameter<edm::InputTag>("AlCaStreamEEetaTag"); isMonEBpi0_ = ps.getUntrackedParameter<bool>("isMonEBpi0",false); isMonEBeta_ = ps.getUntrackedParameter<bool>("isMonEBeta",false); isMonEEpi0_ = ps.getUntrackedParameter<bool>("isMonEEpi0",false); isMonEEeta_ = ps.getUntrackedParameter<bool>("isMonEEeta",false); saveToFile_=ps.getUntrackedParameter<bool>("SaveToFile",false); fileName_= ps.getUntrackedParameter<std::string>("FileName","MonitorAlCaEcalPi0.root"); clusSeedThr_ = ps.getParameter<double> ("clusSeedThr"); clusSeedThrEndCap_ = ps.getParameter<double> ("clusSeedThrEndCap"); clusEtaSize_ = ps.getParameter<int> ("clusEtaSize"); clusPhiSize_ = ps.getParameter<int> ("clusPhiSize"); if ( clusPhiSize_ % 2 == 0 || clusEtaSize_ % 2 == 0) edm::LogError("AlCaPi0RecHitsProducerError") << "Size of eta/phi for simple clustering should be odd numbers"; seleXtalMinEnergy_ = ps.getParameter<double>("seleXtalMinEnergy"); seleXtalMinEnergyEndCap_ = ps.getParameter<double>("seleXtalMinEnergyEndCap"); selePtGamma_ = ps.getParameter<double> ("selePtGamma"); selePtPi0_ = ps.getParameter<double> ("selePtPi0"); seleMinvMaxPi0_ = ps.getParameter<double> ("seleMinvMaxPi0"); seleMinvMinPi0_ = ps.getParameter<double> ("seleMinvMinPi0"); seleS4S9Gamma_ = ps.getParameter<double> ("seleS4S9Gamma"); selePi0Iso_ = ps.getParameter<double> ("selePi0Iso"); ptMinForIsolation_ = ps.getParameter<double> ("ptMinForIsolation"); selePi0BeltDR_ = ps.getParameter<double> ("selePi0BeltDR"); selePi0BeltDeta_ = ps.getParameter<double> ("selePi0BeltDeta"); selePtGammaEndCap_ = ps.getParameter<double> ("selePtGammaEndCap"); selePtPi0EndCap_ = ps.getParameter<double> ("selePtPi0EndCap"); seleS4S9GammaEndCap_ = ps.getParameter<double> ("seleS4S9GammaEndCap"); seleMinvMaxPi0EndCap_ = ps.getParameter<double> ("seleMinvMaxPi0EndCap"); seleMinvMinPi0EndCap_ = ps.getParameter<double> ("seleMinvMinPi0EndCap"); ptMinForIsolationEndCap_ = ps.getParameter<double> ("ptMinForIsolationEndCap"); selePi0BeltDREndCap_ = ps.getParameter<double> ("selePi0BeltDREndCap"); selePi0BeltDetaEndCap_ = ps.getParameter<double> ("selePi0BeltDetaEndCap"); selePi0IsoEndCap_ = ps.getParameter<double> ("selePi0IsoEndCap"); selePtGammaEta_ = ps.getParameter<double> ("selePtGammaEta"); selePtEta_ = ps.getParameter<double> ("selePtEta"); seleS4S9GammaEta_ = ps.getParameter<double> ("seleS4S9GammaEta"); seleS9S25GammaEta_ = ps.getParameter<double> ("seleS9S25GammaEta"); seleMinvMaxEta_ = ps.getParameter<double> ("seleMinvMaxEta"); seleMinvMinEta_ = ps.getParameter<double> ("seleMinvMinEta"); ptMinForIsolationEta_ = ps.getParameter<double> ("ptMinForIsolationEta"); seleEtaIso_ = ps.getParameter<double> ("seleEtaIso"); seleEtaBeltDR_ = ps.getParameter<double> ("seleEtaBeltDR"); seleEtaBeltDeta_ = ps.getParameter<double> ("seleEtaBeltDeta"); selePtGammaEtaEndCap_ = ps.getParameter<double> ("selePtGammaEtaEndCap"); selePtEtaEndCap_ = ps.getParameter<double> ("selePtEtaEndCap"); seleS4S9GammaEtaEndCap_ = ps.getParameter<double> ("seleS4S9GammaEtaEndCap"); seleS9S25GammaEtaEndCap_ = ps.getParameter<double> ("seleS9S25GammaEtaEndCap"); seleMinvMaxEtaEndCap_ = ps.getParameter<double> ("seleMinvMaxEtaEndCap"); seleMinvMinEtaEndCap_ = ps.getParameter<double> ("seleMinvMinEtaEndCap"); ptMinForIsolationEtaEndCap_ = ps.getParameter<double> ("ptMinForIsolationEtaEndCap"); seleEtaIsoEndCap_ = ps.getParameter<double> ("seleEtaIsoEndCap"); seleEtaBeltDREndCap_ = ps.getParameter<double> ("seleEtaBeltDREndCap"); seleEtaBeltDetaEndCap_ = ps.getParameter<double> ("seleEtaBeltDetaEndCap"); // Parameters for the position calculation: edm::ParameterSet posCalcParameters = ps.getParameter<edm::ParameterSet>("posCalcParameters"); posCalculator_ = PositionCalc(posCalcParameters); }
HLTAlCaMonPi0::~HLTAlCaMonPi0 | ( | ) |
Definition at line 142 of file HLTAlCaMonPi0.cc.
{}
void HLTAlCaMonPi0::analyze | ( | const edm::Event & | e, |
const edm::EventSetup & | c | ||
) | [protected, virtual] |
check s4s9
calculate e5x5
already clustered
check s4s9
calculate e5x5
already clustered
Implements edm::EDAnalyzer.
Definition at line 345 of file HLTAlCaMonPi0.cc.
References abs, PositionCalc::Calculate_Location(), clusEtaSize_, clusPhiSize_, clusSeedThr_, clusSeedThrEndCap_, convxtalid(), funct::cos(), detIdEBRecHits, detIdEERecHits, diff_neta_s(), diff_nphi_s(), EBRecHits, DetId::Ecal, EcalBarrel, EcalEndcap, EcalPreshower, EERecHits, relval_parameters_module::energy, edm::EventAuxiliary::event(), edm::Event::eventAuxiliary(), eventCounter_, exception, funct::exp(), MonitorElement::Fill(), spr::find(), edm::EventSetup::get(), edm::Event::getByLabel(), CaloSubdetectorTopology::getWindow(), hEventEnergyEBeta_, hEventEnergyEBpi0_, hEventEnergyEEeta_, hEventEnergyEEpi0_, hiEtaDistrEBeta_, hiEtaDistrEBpi0_, hiPhiDistrEBeta_, hiPhiDistrEBpi0_, hIsoEtaEB_, hIsoEtaEE_, hIsoPi0EB_, hIsoPi0EE_, hiXDistrEEeta_, hiXDistrEEpi0_, hiYDistrEEeta_, hiYDistrEEpi0_, hMeanRecHitEnergyEBeta_, hMeanRecHitEnergyEBpi0_, hMeanRecHitEnergyEEeta_, hMeanRecHitEnergyEEpi0_, hMinvEtaEB_, hMinvEtaEE_, hMinvPi0EB_, hMinvPi0EE_, hNRecHitsEBeta_, hNRecHitsEBpi0_, hNRecHitsEEeta_, hNRecHitsEEpi0_, hPt1EtaEB_, hPt1EtaEE_, hPt1Pi0EB_, hPt1Pi0EE_, hPt2EtaEB_, hPt2EtaEE_, hPt2Pi0EB_, hPt2Pi0EE_, hPtEtaEB_, hPtEtaEE_, hPtPi0EB_, hPtPi0EE_, hRechitEnergyEBeta_, hRechitEnergyEBpi0_, hRechitEnergyEEeta_, hRechitEnergyEEpi0_, hS4S91EtaEB_, hS4S91EtaEE_, hS4S91Pi0EB_, hS4S91Pi0EE_, hS4S92EtaEB_, hS4S92EtaEE_, hS4S92Pi0EB_, hS4S92Pi0EE_, i, EBDetId::ieta(), EBDetId::iphi(), isMonEBeta_, isMonEBpi0_, isMonEEeta_, isMonEEpi0_, edm::HandleBase::isValid(), EEDetId::ix(), EEDetId::iy(), j, gen::k, LogDebug, posCalculator_, prescaleFactor_, edm::Handle< T >::product(), productMonitoredEBeta_, productMonitoredEBpi0_, productMonitoredEEeta_, productMonitoredEEpi0_, ptMinForIsolation_, ptMinForIsolationEndCap_, ptMinForIsolationEta_, ptMinForIsolationEtaEndCap_, edm::EventAuxiliary::run(), seleEtaBeltDeta_, seleEtaBeltDetaEndCap_, seleEtaBeltDR_, seleEtaBeltDREndCap_, seleEtaIso_, seleEtaIsoEndCap_, seleMinvMaxEta_, seleMinvMaxEtaEndCap_, seleMinvMaxPi0_, seleMinvMaxPi0EndCap_, seleMinvMinEta_, seleMinvMinEtaEndCap_, seleMinvMinPi0_, seleMinvMinPi0EndCap_, selePi0BeltDeta_, selePi0BeltDetaEndCap_, selePi0BeltDR_, selePi0BeltDREndCap_, selePi0Iso_, selePi0IsoEndCap_, selePtEta_, selePtEtaEndCap_, selePtGamma_, selePtGammaEndCap_, selePtGammaEta_, selePtGammaEtaEndCap_, selePtPi0_, selePtPi0EndCap_, seleS4S9Gamma_, seleS4S9GammaEndCap_, seleS4S9GammaEta_, seleS4S9GammaEtaEndCap_, seleXtalMinEnergy_, seleXtalMinEnergyEndCap_, funct::sin(), python::multivaluedict::sort(), and mathSSE::sqrt().
{ if (eventCounter_% prescaleFactor_ ) return; eventCounter_++; edm::ESHandle<CaloTopology> theCaloTopology; iSetup.get<CaloTopologyRecord>().get(theCaloTopology); std::vector<EcalRecHit> seeds; seeds.clear(); std::vector<EBDetId> usedXtals; usedXtals.clear(); detIdEBRecHits.clear(); EBRecHits.clear(); edm::Handle<EcalRecHitCollection> rhEBpi0; edm::Handle<EcalRecHitCollection> rhEBeta; edm::Handle<EcalRecHitCollection> rhEEpi0; edm::Handle<EcalRecHitCollection> rhEEeta; bool GetRecHitsCollectionEBpi0 = true; if(isMonEBpi0_) { try { iEvent.getByLabel(productMonitoredEBpi0_, rhEBpi0); }catch( cms::Exception& exception ) { LogDebug("HLTAlCaPi0DQMSource") << "no EcalRecHits EB_pi0, can not run all stuffs" << iEvent.eventAuxiliary ().event() <<" run: "<<iEvent.eventAuxiliary ().run() << std::endl; GetRecHitsCollectionEBpi0 = false; } } bool GetRecHitsCollectionEBeta = true; if(isMonEBeta_) { try { if(isMonEBeta_) iEvent.getByLabel(productMonitoredEBeta_, rhEBeta); if(isMonEEpi0_) iEvent.getByLabel(productMonitoredEEpi0_, rhEEpi0); if(isMonEEeta_) iEvent.getByLabel(productMonitoredEEeta_, rhEEeta); }catch( cms::Exception& exception ) { LogDebug("HLTAlCaPi0DQMSource") << "no EcalRecHits EB_Eta, can not run all stuffs" << iEvent.eventAuxiliary ().event() <<" run: "<<iEvent.eventAuxiliary ().run() << std::endl; GetRecHitsCollectionEBeta = false; } } bool GetRecHitsCollectionEEpi0 = true; if(isMonEEpi0_) { try { if(isMonEEpi0_) iEvent.getByLabel(productMonitoredEEpi0_, rhEEpi0); }catch( cms::Exception& exception ) { LogDebug("HLTAlCaPi0DQMSource") << "no EcalRecHits EE_Pi0, can not run all stuffs" << iEvent.eventAuxiliary ().event() <<" run: "<<iEvent.eventAuxiliary ().run() << std::endl; GetRecHitsCollectionEEpi0 = false; } } bool GetRecHitsCollectionEEeta = true; if(isMonEEeta_) { try { if(isMonEEeta_) iEvent.getByLabel(productMonitoredEEeta_, rhEEeta); }catch( cms::Exception& exception ) { LogDebug("HLTAlCaPi0DQMSource") << "no EcalRecHits EE_Eta, can not run all stuffs" << iEvent.eventAuxiliary ().event() <<" run: "<<iEvent.eventAuxiliary ().run() << std::endl; GetRecHitsCollectionEEeta = false; } } // Initialize the Position Calc const CaloSubdetectorGeometry *geometry_p; const CaloSubdetectorGeometry *geometryEE_p; const CaloSubdetectorGeometry *geometryES_p; const CaloSubdetectorTopology *topology_p; const CaloSubdetectorTopology *topology_ee; edm::ESHandle<CaloGeometry> geoHandle; iSetup.get<CaloGeometryRecord>().get(geoHandle); geometry_p = geoHandle->getSubdetectorGeometry(DetId::Ecal,EcalBarrel); geometryEE_p = geoHandle->getSubdetectorGeometry(DetId::Ecal,EcalEndcap); geometryES_p = geoHandle->getSubdetectorGeometry(DetId::Ecal, EcalPreshower); topology_p = theCaloTopology->getSubdetectorTopology(DetId::Ecal,EcalBarrel); topology_ee = theCaloTopology->getSubdetectorTopology(DetId::Ecal,EcalEndcap); EcalRecHitCollection::const_iterator itb; // fill EB pi0 histos if(isMonEBpi0_ ){ if (rhEBpi0.isValid() && (rhEBpi0->size() > 0) && GetRecHitsCollectionEBpi0){ const EcalRecHitCollection *hitCollection_p = rhEBpi0.product(); float etot =0; for(itb=rhEBpi0->begin(); itb!=rhEBpi0->end(); ++itb){ EBDetId id(itb->id()); double energy = itb->energy(); if( energy < seleXtalMinEnergy_) continue; EBDetId det = itb->id(); detIdEBRecHits.push_back(det); EBRecHits.push_back(*itb); if (energy > clusSeedThr_) seeds.push_back(*itb); hiPhiDistrEBpi0_->Fill(id.iphi()); hiEtaDistrEBpi0_->Fill(id.ieta()); hRechitEnergyEBpi0_->Fill(itb->energy()); etot+= itb->energy(); } // Eb rechits hNRecHitsEBpi0_->Fill(rhEBpi0->size()); hMeanRecHitEnergyEBpi0_->Fill(etot/rhEBpi0->size()); hEventEnergyEBpi0_->Fill(etot); // std::cout << " EB RH Pi0 collection: #, mean rh_e, event E "<<rhEBpi0->size()<<" "<<etot/rhEBpi0->size()<<" "<<etot<<std::endl; // Pi0 maker //std::cout<< " RH coll size: "<<rhEBpi0->size()<<std::endl; //std::cout<< " Pi0 seeds: "<<seeds.size()<<std::endl; int nClus; std::vector<float> eClus; std::vector<float> etClus; std::vector<float> etaClus; std::vector<float> thetaClus; std::vector<float> phiClus; std::vector<EBDetId> max_hit; std::vector< std::vector<EcalRecHit> > RecHitsCluster; std::vector< std::vector<EcalRecHit> > RecHitsCluster5x5; std::vector<float> s4s9Clus; std::vector<float> s9s25Clus; nClus=0; // Make own simple clusters (3x3, 5x5 or clusPhiSize_ x clusEtaSize_) sort(seeds.begin(), seeds.end(), ecalRecHitLess()); for (std::vector<EcalRecHit>::iterator itseed=seeds.begin(); itseed!=seeds.end(); itseed++) { EBDetId seed_id = itseed->id(); std::vector<EBDetId>::const_iterator usedIds; bool seedAlreadyUsed=false; for(usedIds=usedXtals.begin(); usedIds!=usedXtals.end(); usedIds++){ if(*usedIds==seed_id){ seedAlreadyUsed=true; //std::cout<< " Seed with energy "<<itseed->energy()<<" was used !"<<std::endl; break; } } if(seedAlreadyUsed)continue; std::vector<DetId> clus_v = topology_p->getWindow(seed_id,clusEtaSize_,clusPhiSize_); std::vector< std::pair<DetId, float> > clus_used; //Reject the seed if not able to build the cluster around it correctly //if(clus_v.size() < clusEtaSize_*clusPhiSize_){std::cout<<" Not enough RecHits "<<std::endl; continue;} vector<EcalRecHit> RecHitsInWindow; vector<EcalRecHit> RecHitsInWindow5x5; double simple_energy = 0; for (std::vector<DetId>::iterator det=clus_v.begin(); det!=clus_v.end(); det++) { EBDetId EBdet = *det; // std::cout<<" det "<< EBdet<<" ieta "<<EBdet.ieta()<<" iphi "<<EBdet.iphi()<<std::endl; bool HitAlreadyUsed=false; for(usedIds=usedXtals.begin(); usedIds!=usedXtals.end(); usedIds++){ if(*usedIds==*det){ HitAlreadyUsed=true; break; } } if(HitAlreadyUsed)continue; std::vector<EBDetId>::iterator itdet = find( detIdEBRecHits.begin(),detIdEBRecHits.end(),EBdet); if(itdet == detIdEBRecHits.end()) continue; int nn = int(itdet - detIdEBRecHits.begin()); usedXtals.push_back(*det); RecHitsInWindow.push_back(EBRecHits[nn]); clus_used.push_back(std::pair<DetId, float>(*det, 1) ); simple_energy = simple_energy + EBRecHits[nn].energy(); } if(simple_energy <= 0) continue; math::XYZPoint clus_pos = posCalculator_.Calculate_Location(clus_used,hitCollection_p,geometry_p,geometryES_p); //std::cout<< " Simple Clustering: Total energy for this simple cluster : "<<simple_energy<<std::endl; //std::cout<< " Simple Clustering: eta phi : "<<clus_pos.eta()<<" "<<clus_pos.phi()<<std::endl; //std::cout<< " Simple Clustering: x y z : "<<clus_pos.x()<<" "<<clus_pos.y()<<" "<<clus_pos.z()<<std::endl; float theta_s = 2. * atan(exp(-clus_pos.eta())); // float p0x_s = simple_energy * sin(theta_s) * cos(clus_pos.phi()); //float p0y_s = simple_energy * sin(theta_s) * sin(clus_pos.phi()); // float p0z_s = simple_energy * cos(theta_s); //float et_s = sqrt( p0x_s*p0x_s + p0y_s*p0y_s); float et_s = simple_energy * sin(theta_s); //std::cout << " Simple Clustering: E,Et,px,py,pz: "<<simple_energy<<" "<<et_s<<" "<<p0x_s<<" "<<p0y_s<<" "<<std::endl; //Compute S4/S9 variable //We are not sure to have 9 RecHits so need to check eta and phi: float s4s9_tmp[4]; for(int i=0;i<4;i++)s4s9_tmp[i]= 0; int seed_ieta = seed_id.ieta(); int seed_iphi = seed_id.iphi(); convxtalid( seed_iphi,seed_ieta); float e3x3 = 0; float e5x5 = 0; for(unsigned int j=0; j<RecHitsInWindow.size();j++){ EBDetId det = (EBDetId)RecHitsInWindow[j].id(); int ieta = det.ieta(); int iphi = det.iphi(); convxtalid(iphi,ieta); float en = RecHitsInWindow[j].energy(); int dx = diff_neta_s(seed_ieta,ieta); int dy = diff_nphi_s(seed_iphi,iphi); if(dx <= 0 && dy <=0) s4s9_tmp[0] += en; if(dx >= 0 && dy <=0) s4s9_tmp[1] += en; if(dx <= 0 && dy >=0) s4s9_tmp[2] += en; if(dx >= 0 && dy >=0) s4s9_tmp[3] += en; if(abs(dx)<=1 && abs(dy)<=1) e3x3 += en; if(abs(dx)<=2 && abs(dy)<=2) e5x5 += en; } if(e3x3 <= 0) continue; float s4s9_max = *max_element( s4s9_tmp,s4s9_tmp+4)/e3x3; std::vector<DetId> clus_v5x5 = topology_p->getWindow(seed_id,5,5); for( std::vector<DetId>::const_iterator idItr = clus_v5x5.begin(); idItr != clus_v5x5.end(); idItr++){ EBDetId det = *idItr; std::vector<EBDetId>::iterator itdet0 = find(usedXtals.begin(),usedXtals.end(),det); if(itdet0 != usedXtals.end()) continue; //inside collections std::vector<EBDetId>::iterator itdet = find( detIdEBRecHits.begin(),detIdEBRecHits.end(),det); if(itdet == detIdEBRecHits.end()) continue; int nn = int(itdet - detIdEBRecHits.begin()); RecHitsInWindow5x5.push_back(EBRecHits[nn]); e5x5 += EBRecHits[nn].energy(); } if(e5x5 <= 0) continue; eClus.push_back(simple_energy); etClus.push_back(et_s); etaClus.push_back(clus_pos.eta()); thetaClus.push_back(theta_s); phiClus.push_back(clus_pos.phi()); s4s9Clus.push_back(s4s9_max); s9s25Clus.push_back(e3x3/e5x5); RecHitsCluster.push_back(RecHitsInWindow); RecHitsCluster5x5.push_back(RecHitsInWindow5x5); // std::cout<<" EB pi0 cluster (n,nxt,e,et eta,phi,s4s9) "<<nClus<<" "<<int(RecHitsInWindow.size())<<" "<<eClus[nClus]<<" "<<" "<<etClus[nClus]<<" "<<etaClus[nClus]<<" "<<phiClus[nClus]<<" "<<s4s9Clus[nClus]<<std::endl; nClus++; } // std::cout<< " Pi0 clusters: "<<nClus<<std::endl; // Selection, based on Simple clustering //pi0 candidates int npi0_s=0; // if (nClus <= 1) return; for(Int_t i=0 ; i<nClus ; i++){ for(Int_t j=i+1 ; j<nClus ; j++){ // std::cout<<" i "<<i<<" etClus[i] "<<etClus[i]<<" j "<<j<<" etClus[j] "<<etClus[j]<<std::endl; if( etClus[i]>selePtGamma_ && etClus[j]>selePtGamma_ && s4s9Clus[i]>seleS4S9Gamma_ && s4s9Clus[j]>seleS4S9Gamma_){ float p0x = etClus[i] * cos(phiClus[i]); float p1x = etClus[j] * cos(phiClus[j]); float p0y = etClus[i] * sin(phiClus[i]); float p1y = etClus[j] * sin(phiClus[j]); float p0z = eClus[i] * cos(thetaClus[i]); float p1z = eClus[j] * cos(thetaClus[j]); float pt_pair = sqrt( (p0x+p1x)*(p0x+p1x) + (p0y+p1y)*(p0y+p1y)); if (pt_pair < selePtPi0_)continue; float m_inv = sqrt ( (eClus[i] + eClus[j])*(eClus[i] + eClus[j]) - (p0x+p1x)*(p0x+p1x) - (p0y+p1y)*(p0y+p1y) - (p0z+p1z)*(p0z+p1z) ); if ( (m_inv<seleMinvMaxPi0_) && (m_inv>seleMinvMinPi0_) ){ //New Loop on cluster to measure isolation: std::vector<int> IsoClus; IsoClus.clear(); float Iso = 0; TVector3 pairVect = TVector3((p0x+p1x), (p0y+p1y), (p0z+p1z)); for(Int_t k=0 ; k<nClus ; k++){ if(etClus[k] < ptMinForIsolation_) continue; if(k==i || k==j)continue; TVector3 ClusVect = TVector3(etClus[k] *cos(phiClus[k]), etClus[k] * sin(phiClus[k]) , eClus[k] * cos(thetaClus[k])); float dretacl = fabs(etaClus[k] - pairVect.Eta()); float drcl = ClusVect.DeltaR(pairVect); // std::cout<< " Iso: k, E, drclpi0, detaclpi0, dphiclpi0 "<<k<<" "<<eClus[k]<<" "<<drclpi0<<" "<<dretaclpi0<<std::endl; if((drcl<selePi0BeltDR_) && (dretacl<selePi0BeltDeta_) ){ // std::cout<< " ... good iso cluster #: "<<k<<" etClus[k] "<<etClus[k] <<std::endl; Iso = Iso + etClus[k]; IsoClus.push_back(k); } } // std::cout<<" Iso/pt_pi0 "<<Iso/pt_pi0<<std::endl; if(Iso/pt_pair<selePi0Iso_){ //for(unsigned int Rec=0;Rec<RecHitsCluster[i].size();Rec++)pi0EBRecHitCollection->push_back(RecHitsCluster[i][Rec]); //for(unsigned int Rec2=0;Rec2<RecHitsCluster[j].size();Rec2++)pi0EBRecHitCollection->push_back(RecHitsCluster[j][Rec2]); hMinvPi0EB_->Fill(m_inv); hPt1Pi0EB_->Fill(etClus[i]); hPt2Pi0EB_->Fill(etClus[j]); hPtPi0EB_->Fill(pt_pair); hIsoPi0EB_->Fill(Iso/pt_pair); hS4S91Pi0EB_->Fill(s4s9Clus[i]); hS4S92Pi0EB_->Fill(s4s9Clus[j]); // cout <<" EB Simple Clustering: pi0 Candidate pt, eta, phi, Iso, m_inv, i, j : "<<pt_pair<<" "<<pairVect.Eta()<<" "<<pairVect.Phi()<<" "<<Iso<<" "<<m_inv<<" "<<i<<" "<<j<<" "<<std::endl; npi0_s++; } } } } // End of the "j" loop over Simple Clusters } // End of the "i" loop over Simple Clusters // std::cout<<" (Simple Clustering) EB Pi0 candidates #: "<<npi0_s<<std::endl; } // rhEBpi0.valid() ends } // isMonEBpi0 ends //------------------ End of pi0 in EB --------------------------// // fill EB eta histos if(isMonEBeta_ ){ if (rhEBeta.isValid() && (rhEBeta->size() > 0) && GetRecHitsCollectionEBeta){ const EcalRecHitCollection *hitCollection_p = rhEBeta.product(); float etot =0; for(itb=rhEBeta->begin(); itb!=rhEBeta->end(); ++itb){ EBDetId id(itb->id()); double energy = itb->energy(); if( energy < seleXtalMinEnergy_) continue; EBDetId det = itb->id(); detIdEBRecHits.push_back(det); EBRecHits.push_back(*itb); if (energy > clusSeedThr_) seeds.push_back(*itb); hiPhiDistrEBeta_->Fill(id.iphi()); hiEtaDistrEBeta_->Fill(id.ieta()); hRechitEnergyEBeta_->Fill(itb->energy()); etot+= itb->energy(); } // Eb rechits hNRecHitsEBeta_->Fill(rhEBeta->size()); hMeanRecHitEnergyEBeta_->Fill(etot/rhEBeta->size()); hEventEnergyEBeta_->Fill(etot); // std::cout << " EB RH Eta collection: #, mean rh_e, event E "<<rhEBeta->size()<<" "<<etot/rhEBeta->size()<<" "<<etot<<std::endl; // Eta maker //std::cout<< " RH coll size: "<<rhEBeta->size()<<std::endl; //std::cout<< " Eta seeds: "<<seeds.size()<<std::endl; int nClus; std::vector<float> eClus; std::vector<float> etClus; std::vector<float> etaClus; std::vector<float> thetaClus; std::vector<float> phiClus; std::vector<EBDetId> max_hit; std::vector< std::vector<EcalRecHit> > RecHitsCluster; std::vector< std::vector<EcalRecHit> > RecHitsCluster5x5; std::vector<float> s4s9Clus; std::vector<float> s9s25Clus; nClus=0; // Make own simple clusters (3x3, 5x5 or clusPhiSize_ x clusEtaSize_) sort(seeds.begin(), seeds.end(), ecalRecHitLess()); for (std::vector<EcalRecHit>::iterator itseed=seeds.begin(); itseed!=seeds.end(); itseed++) { EBDetId seed_id = itseed->id(); std::vector<EBDetId>::const_iterator usedIds; bool seedAlreadyUsed=false; for(usedIds=usedXtals.begin(); usedIds!=usedXtals.end(); usedIds++){ if(*usedIds==seed_id){ seedAlreadyUsed=true; //std::cout<< " Seed with energy "<<itseed->energy()<<" was used !"<<std::endl; break; } } if(seedAlreadyUsed)continue; std::vector<DetId> clus_v = topology_p->getWindow(seed_id,clusEtaSize_,clusPhiSize_); std::vector< std::pair<DetId, float> > clus_used; //Reject the seed if not able to build the cluster around it correctly //if(clus_v.size() < clusEtaSize_*clusPhiSize_){std::cout<<" Not enough RecHits "<<std::endl; continue;} vector<EcalRecHit> RecHitsInWindow; vector<EcalRecHit> RecHitsInWindow5x5; double simple_energy = 0; for (std::vector<DetId>::iterator det=clus_v.begin(); det!=clus_v.end(); det++) { EBDetId EBdet = *det; // std::cout<<" det "<< EBdet<<" ieta "<<EBdet.ieta()<<" iphi "<<EBdet.iphi()<<std::endl; bool HitAlreadyUsed=false; for(usedIds=usedXtals.begin(); usedIds!=usedXtals.end(); usedIds++){ if(*usedIds==*det){ HitAlreadyUsed=true; break; } } if(HitAlreadyUsed)continue; std::vector<EBDetId>::iterator itdet = find( detIdEBRecHits.begin(),detIdEBRecHits.end(),EBdet); if(itdet == detIdEBRecHits.end()) continue; int nn = int(itdet - detIdEBRecHits.begin()); usedXtals.push_back(*det); RecHitsInWindow.push_back(EBRecHits[nn]); clus_used.push_back(std::pair<DetId, float>(*det, 1)); simple_energy = simple_energy + EBRecHits[nn].energy(); } if(simple_energy <= 0) continue; math::XYZPoint clus_pos = posCalculator_.Calculate_Location(clus_used,hitCollection_p,geometry_p,geometryES_p); //std::cout<< " Simple Clustering: Total energy for this simple cluster : "<<simple_energy<<std::endl; //std::cout<< " Simple Clustering: eta phi : "<<clus_pos.eta()<<" "<<clus_pos.phi()<<std::endl; //std::cout<< " Simple Clustering: x y z : "<<clus_pos.x()<<" "<<clus_pos.y()<<" "<<clus_pos.z()<<std::endl; float theta_s = 2. * atan(exp(-clus_pos.eta())); // float p0x_s = simple_energy * sin(theta_s) * cos(clus_pos.phi()); //float p0y_s = simple_energy * sin(theta_s) * sin(clus_pos.phi()); // float p0z_s = simple_energy * cos(theta_s); //float et_s = sqrt( p0x_s*p0x_s + p0y_s*p0y_s); float et_s = simple_energy * sin(theta_s); //std::cout << " Simple Clustering: E,Et,px,py,pz: "<<simple_energy<<" "<<et_s<<" "<<p0x_s<<" "<<p0y_s<<" "<<std::endl; //Compute S4/S9 variable //We are not sure to have 9 RecHits so need to check eta and phi: float s4s9_tmp[4]; for(int i=0;i<4;i++)s4s9_tmp[i]= 0; int seed_ieta = seed_id.ieta(); int seed_iphi = seed_id.iphi(); convxtalid( seed_iphi,seed_ieta); float e3x3 = 0; float e5x5 = 0; for(unsigned int j=0; j<RecHitsInWindow.size();j++){ EBDetId det = (EBDetId)RecHitsInWindow[j].id(); int ieta = det.ieta(); int iphi = det.iphi(); convxtalid(iphi,ieta); float en = RecHitsInWindow[j].energy(); int dx = diff_neta_s(seed_ieta,ieta); int dy = diff_nphi_s(seed_iphi,iphi); if(dx <= 0 && dy <=0) s4s9_tmp[0] += en; if(dx >= 0 && dy <=0) s4s9_tmp[1] += en; if(dx <= 0 && dy >=0) s4s9_tmp[2] += en; if(dx >= 0 && dy >=0) s4s9_tmp[3] += en; if(abs(dx)<=1 && abs(dy)<=1) e3x3 += en; if(abs(dx)<=2 && abs(dy)<=2) e5x5 += en; } if(e3x3 <= 0) continue; float s4s9_max = *max_element( s4s9_tmp,s4s9_tmp+4)/e3x3; std::vector<DetId> clus_v5x5 = topology_p->getWindow(seed_id,5,5); for( std::vector<DetId>::const_iterator idItr = clus_v5x5.begin(); idItr != clus_v5x5.end(); idItr++){ EBDetId det = *idItr; std::vector<EBDetId>::iterator itdet0 = find(usedXtals.begin(),usedXtals.end(),det); if(itdet0 != usedXtals.end()) continue; //inside collections std::vector<EBDetId>::iterator itdet = find( detIdEBRecHits.begin(),detIdEBRecHits.end(),det); if(itdet == detIdEBRecHits.end()) continue; int nn = int(itdet - detIdEBRecHits.begin()); RecHitsInWindow5x5.push_back(EBRecHits[nn]); e5x5 += EBRecHits[nn].energy(); } if(e5x5 <= 0) continue; eClus.push_back(simple_energy); etClus.push_back(et_s); etaClus.push_back(clus_pos.eta()); thetaClus.push_back(theta_s); phiClus.push_back(clus_pos.phi()); s4s9Clus.push_back(s4s9_max); s9s25Clus.push_back(e3x3/e5x5); RecHitsCluster.push_back(RecHitsInWindow); RecHitsCluster5x5.push_back(RecHitsInWindow5x5); // std::cout<<" EB Eta cluster (n,nxt,e,et eta,phi,s4s9) "<<nClus<<" "<<int(RecHitsInWindow.size())<<" "<<eClus[nClus]<<" "<<" "<<etClus[nClus]<<" "<<etaClus[nClus]<<" "<<phiClus[nClus]<<" "<<s4s9Clus[nClus]<<std::endl; nClus++; } // std::cout<< " Eta clusters: "<<nClus<<std::endl; // Selection, based on Simple clustering //eta candidates int npi0_s=0; // if (nClus <= 1) return; for(Int_t i=0 ; i<nClus ; i++){ for(Int_t j=i+1 ; j<nClus ; j++){ // std::cout<<" i "<<i<<" etClus[i] "<<etClus[i]<<" j "<<j<<" etClus[j] "<<etClus[j]<<std::endl; if( etClus[i]>selePtGammaEta_ && etClus[j]>selePtGammaEta_ && s4s9Clus[i]>seleS4S9GammaEta_ && s4s9Clus[j]>seleS4S9GammaEta_){ float p0x = etClus[i] * cos(phiClus[i]); float p1x = etClus[j] * cos(phiClus[j]); float p0y = etClus[i] * sin(phiClus[i]); float p1y = etClus[j] * sin(phiClus[j]); float p0z = eClus[i] * cos(thetaClus[i]); float p1z = eClus[j] * cos(thetaClus[j]); float pt_pair = sqrt( (p0x+p1x)*(p0x+p1x) + (p0y+p1y)*(p0y+p1y)); if (pt_pair < selePtEta_)continue; float m_inv = sqrt ( (eClus[i] + eClus[j])*(eClus[i] + eClus[j]) - (p0x+p1x)*(p0x+p1x) - (p0y+p1y)*(p0y+p1y) - (p0z+p1z)*(p0z+p1z) ); if ( (m_inv<seleMinvMaxEta_) && (m_inv>seleMinvMinEta_) ){ //New Loop on cluster to measure isolation: std::vector<int> IsoClus; IsoClus.clear(); float Iso = 0; TVector3 pairVect = TVector3((p0x+p1x), (p0y+p1y), (p0z+p1z)); for(Int_t k=0 ; k<nClus ; k++){ if(etClus[k] < ptMinForIsolationEta_) continue; if(k==i || k==j)continue; TVector3 ClusVect = TVector3(etClus[k] *cos(phiClus[k]), etClus[k] * sin(phiClus[k]) , eClus[k] * cos(thetaClus[k])); float dretacl = fabs(etaClus[k] - pairVect.Eta()); float drcl = ClusVect.DeltaR(pairVect); // std::cout<< " Iso: k, E, drclpi0, detaclpi0, dphiclpi0 "<<k<<" "<<eClus[k]<<" "<<drclpi0<<" "<<dretaclpi0<<std::endl; if((drcl<seleEtaBeltDR_) && (dretacl<seleEtaBeltDeta_) ){ // std::cout<< " ... good iso cluster #: "<<k<<" etClus[k] "<<etClus[k] <<std::endl; Iso = Iso + etClus[k]; IsoClus.push_back(k); } } // std::cout<<" Iso/pt_pi0 "<<Iso/pt_pi0<<std::endl; if(Iso/pt_pair<seleEtaIso_){ //for(unsigned int Rec=0;Rec<RecHitsCluster[i].size();Rec++)pi0EBRecHitCollection->push_back(RecHitsCluster[i][Rec]); //for(unsigned int Rec2=0;Rec2<RecHitsCluster[j].size();Rec2++)pi0EBRecHitCollection->push_back(RecHitsCluster[j][Rec2]); hMinvEtaEB_->Fill(m_inv); hPt1EtaEB_->Fill(etClus[i]); hPt2EtaEB_->Fill(etClus[j]); hPtEtaEB_->Fill(pt_pair); hIsoEtaEB_->Fill(Iso/pt_pair); hS4S91EtaEB_->Fill(s4s9Clus[i]); hS4S92EtaEB_->Fill(s4s9Clus[j]); // cout <<" EB Simple Clustering: Eta Candidate pt, eta, phi, Iso, m_inv, i, j : "<<pt_pair<<" "<<pairVect.Eta()<<" "<<pairVect.Phi()<<" "<<Iso<<" "<<m_inv<<" "<<i<<" "<<j<<" "<<std::endl; npi0_s++; } } } } // End of the "j" loop over Simple Clusters } // End of the "i" loop over Simple Clusters // std::cout<<" (Simple Clustering) EB Eta candidates #: "<<npi0_s<<std::endl; } // rhEBeta.valid() ends } // isMonEBeta ends //------------------ End of Eta in EB --------------------------// //----------------- End of the EB --------------------------// //----------------- Start of the EE --------------------// // fill pi0 EE histos if(isMonEEpi0_){ if (rhEEpi0.isValid() && (rhEEpi0->size() > 0) && GetRecHitsCollectionEEpi0){ const EcalRecHitCollection *hitCollection_ee = rhEEpi0.product(); float etot =0; detIdEERecHits.clear(); EERecHits.clear(); std::vector<EcalRecHit> seedsEndCap; seedsEndCap.clear(); std::vector<EEDetId> usedXtalsEndCap; usedXtalsEndCap.clear(); EERecHitCollection::const_iterator ite; for (ite=rhEEpi0->begin(); ite!=rhEEpi0->end(); ite++) { double energy = ite->energy(); if( energy < seleXtalMinEnergyEndCap_) continue; EEDetId det = ite->id(); EEDetId id(ite->id()); detIdEERecHits.push_back(det); EERecHits.push_back(*ite); hiXDistrEEpi0_->Fill(id.ix()); hiYDistrEEpi0_->Fill(id.iy()); hRechitEnergyEEpi0_->Fill(ite->energy()); if (energy > clusSeedThrEndCap_) seedsEndCap.push_back(*ite); etot+= ite->energy(); } // EE rechits hNRecHitsEEpi0_->Fill(rhEEpi0->size()); hMeanRecHitEnergyEEpi0_->Fill(etot/rhEEpi0->size()); hEventEnergyEEpi0_->Fill(etot); // std::cout << " EE RH Pi0 collection: #, mean rh_e, event E "<<rhEEpi0->size()<<" "<<etot/rhEEpi0->size()<<" "<<etot<<std::endl; int nClusEndCap; std::vector<float> eClusEndCap; std::vector<float> etClusEndCap; std::vector<float> etaClusEndCap; std::vector<float> thetaClusEndCap; std::vector<float> phiClusEndCap; std::vector< std::vector<EcalRecHit> > RecHitsClusterEndCap; std::vector< std::vector<EcalRecHit> > RecHitsCluster5x5EndCap; std::vector<float> s4s9ClusEndCap; std::vector<float> s9s25ClusEndCap; nClusEndCap=0; // Make own simple clusters (3x3, 5x5 or clusPhiSize_ x clusEtaSize_) sort(seedsEndCap.begin(), seedsEndCap.end(), ecalRecHitLess()); for (std::vector<EcalRecHit>::iterator itseed=seedsEndCap.begin(); itseed!=seedsEndCap.end(); itseed++) { EEDetId seed_id = itseed->id(); std::vector<EEDetId>::const_iterator usedIds; bool seedAlreadyUsed=false; for(usedIds=usedXtalsEndCap.begin(); usedIds!=usedXtalsEndCap.end(); usedIds++){ if(*usedIds==seed_id){ seedAlreadyUsed=true; break; } } if(seedAlreadyUsed)continue; std::vector<DetId> clus_v = topology_ee->getWindow(seed_id,clusEtaSize_,clusPhiSize_); std::vector< std::pair<DetId, float> > clus_used; vector<EcalRecHit> RecHitsInWindow; vector<EcalRecHit> RecHitsInWindow5x5; float simple_energy = 0; for (std::vector<DetId>::iterator det=clus_v.begin(); det!=clus_v.end(); det++) { EEDetId EEdet = *det; bool HitAlreadyUsed=false; for(usedIds=usedXtalsEndCap.begin(); usedIds!=usedXtalsEndCap.end(); usedIds++){ if(*usedIds==*det){ HitAlreadyUsed=true; break; } } if(HitAlreadyUsed)continue; std::vector<EEDetId>::iterator itdet = find( detIdEERecHits.begin(),detIdEERecHits.end(),EEdet); if(itdet == detIdEERecHits.end()) continue; int nn = int(itdet - detIdEERecHits.begin()); usedXtalsEndCap.push_back(*det); RecHitsInWindow.push_back(EERecHits[nn]); clus_used.push_back(std::pair<DetId, float>(*det, 1)); simple_energy = simple_energy + EERecHits[nn].energy(); } if( simple_energy <= 0) continue; math::XYZPoint clus_pos = posCalculator_.Calculate_Location(clus_used,hitCollection_ee,geometryEE_p,geometryES_p); float theta_s = 2. * atan(exp(-clus_pos.eta())); float et_s = simple_energy * sin(theta_s); // float p0x_s = simple_energy * sin(theta_s) * cos(clus_pos.phi()); //float p0y_s = simple_energy * sin(theta_s) * sin(clus_pos.phi()); //float et_s = sqrt( p0x_s*p0x_s + p0y_s*p0y_s); //Compute S4/S9 variable //We are not sure to have 9 RecHits so need to check eta and phi: float s4s9_tmp[4]; for(int i=0;i<4;i++) s4s9_tmp[i]= 0; int ixSeed = seed_id.ix(); int iySeed = seed_id.iy(); float e3x3 = 0; float e5x5 = 0; for(unsigned int j=0; j<RecHitsInWindow.size();j++){ EEDetId det_this = (EEDetId)RecHitsInWindow[j].id(); int dx = ixSeed - det_this.ix(); int dy = iySeed - det_this.iy(); float en = RecHitsInWindow[j].energy(); if(dx <= 0 && dy <=0) s4s9_tmp[0] += en; if(dx >= 0 && dy <=0) s4s9_tmp[1] += en; if(dx <= 0 && dy >=0) s4s9_tmp[2] += en; if(dx >= 0 && dy >=0) s4s9_tmp[3] += en; if( abs(dx)<=1 && abs(dy)<=1) e3x3 += en; if( abs(dx)<=2 && abs(dy)<=2) e5x5 += en; } if(e3x3 <= 0) continue; eClusEndCap.push_back(simple_energy); etClusEndCap.push_back(et_s); etaClusEndCap.push_back(clus_pos.eta()); thetaClusEndCap.push_back(theta_s); phiClusEndCap.push_back(clus_pos.phi()); s4s9ClusEndCap.push_back(*max_element( s4s9_tmp,s4s9_tmp+4)/e3x3); s9s25ClusEndCap.push_back(e3x3/e5x5); RecHitsClusterEndCap.push_back(RecHitsInWindow); RecHitsCluster5x5EndCap.push_back(RecHitsInWindow5x5); // std::cout<<" EE pi0 cluster (n,nxt,e,et eta,phi,s4s9) "<<nClusEndCap<<" "<<int(RecHitsInWindow.size())<<" "<<eClusEndCap[nClusEndCap]<<" "<<" "<<etClusEndCap[nClusEndCap]<<" "<<etaClusEndCap[nClusEndCap]<<" "<<phiClusEndCap[nClusEndCap]<<" "<<s4s9ClusEndCap[nClusEndCap]<<std::endl; nClusEndCap++; } // Selection, based on Simple clustering //pi0 candidates int npi0_se=0; for(Int_t i=0 ; i<nClusEndCap ; i++){ for(Int_t j=i+1 ; j<nClusEndCap ; j++){ if( etClusEndCap[i]>selePtGammaEndCap_ && etClusEndCap[j]>selePtGammaEndCap_ && s4s9ClusEndCap[i]>seleS4S9GammaEndCap_ && s4s9ClusEndCap[j]>seleS4S9GammaEndCap_){ float p0x = etClusEndCap[i] * cos(phiClusEndCap[i]); float p1x = etClusEndCap[j] * cos(phiClusEndCap[j]); float p0y = etClusEndCap[i] * sin(phiClusEndCap[i]); float p1y = etClusEndCap[j] * sin(phiClusEndCap[j]); float p0z = eClusEndCap[i] * cos(thetaClusEndCap[i]); float p1z = eClusEndCap[j] * cos(thetaClusEndCap[j]); float pt_pair = sqrt( (p0x+p1x)*(p0x+p1x) + (p0y+p1y)*(p0y+p1y)); if (pt_pair < selePtPi0EndCap_)continue; float m_inv = sqrt ( (eClusEndCap[i] + eClusEndCap[j])*(eClusEndCap[i] + eClusEndCap[j]) - (p0x+p1x)*(p0x+p1x) - (p0y+p1y)*(p0y+p1y) - (p0z+p1z)*(p0z+p1z) ); if ( (m_inv<seleMinvMaxPi0EndCap_) && (m_inv>seleMinvMinPi0EndCap_) ){ //New Loop on cluster to measure isolation: std::vector<int> IsoClus; IsoClus.clear(); float Iso = 0; TVector3 pairVect = TVector3((p0x+p1x), (p0y+p1y), (p0z+p1z)); for(Int_t k=0 ; k<nClusEndCap ; k++){ if(etClusEndCap[k] < ptMinForIsolationEndCap_) continue; if(k==i || k==j)continue; TVector3 clusVect = TVector3(etClusEndCap[k] * cos(phiClusEndCap[k]), etClusEndCap[k] * sin(phiClusEndCap[k]) , eClusEndCap[k] * cos(thetaClusEndCap[k]) ) ; float dretacl = fabs(etaClusEndCap[k] - pairVect.Eta()); float drcl = clusVect.DeltaR(pairVect); if(drcl < selePi0BeltDREndCap_ && dretacl < selePi0BeltDetaEndCap_ ){ Iso = Iso + etClusEndCap[k]; IsoClus.push_back(k); } } if(Iso/pt_pair<selePi0IsoEndCap_){ //std::cout <<" EE Simple Clustering: pi0 Candidate pt, eta, phi, Iso, m_inv, i, j : "<<pt_pair<<" "<<pairVect.Eta()<<" "<<pairVect.Phi()<<" "<<Iso<<" "<<m_inv<<" "<<i<<" "<<j<<" "<<std::endl; hMinvPi0EE_->Fill(m_inv); hPt1Pi0EE_->Fill(etClusEndCap[i]); hPt2Pi0EE_->Fill(etClusEndCap[j]); hPtPi0EE_->Fill(pt_pair); hIsoPi0EE_->Fill(Iso/pt_pair); hS4S91Pi0EE_->Fill(s4s9ClusEndCap[i]); hS4S92Pi0EE_->Fill(s4s9ClusEndCap[j]); npi0_se++; } } } } // End of the "j" loop over Simple Clusters } // End of the "i" loop over Simple Clusters // std::cout<<" (Simple Clustering) EE Pi0 candidates #: "<<npi0_se<<std::endl; } //rhEEpi0 } //isMonEEpi0 //================End of Pi0 endcap=======================// //================ Eta in EE===============================// // fill pi0 EE histos if(isMonEEeta_){ if (rhEEeta.isValid() && (rhEEeta->size() > 0) && GetRecHitsCollectionEEeta){ const EcalRecHitCollection *hitCollection_ee = rhEEeta.product(); float etot =0; detIdEERecHits.clear(); EERecHits.clear(); std::vector<EcalRecHit> seedsEndCap; seedsEndCap.clear(); std::vector<EEDetId> usedXtalsEndCap; usedXtalsEndCap.clear(); EERecHitCollection::const_iterator ite; for (ite=rhEEeta->begin(); ite!=rhEEeta->end(); ite++) { double energy = ite->energy(); if( energy < seleXtalMinEnergyEndCap_) continue; EEDetId det = ite->id(); EEDetId id(ite->id()); detIdEERecHits.push_back(det); EERecHits.push_back(*ite); hiXDistrEEeta_->Fill(id.ix()); hiYDistrEEeta_->Fill(id.iy()); hRechitEnergyEEeta_->Fill(ite->energy()); if (energy > clusSeedThrEndCap_) seedsEndCap.push_back(*ite); etot+= ite->energy(); } // EE rechits hNRecHitsEEeta_->Fill(rhEEeta->size()); hMeanRecHitEnergyEEeta_->Fill(etot/rhEEeta->size()); hEventEnergyEEeta_->Fill(etot); // std::cout << " EE RH Eta collection: #, mean rh_e, event E "<<rhEEeta->size()<<" "<<etot/rhEEeta->size()<<" "<<etot<<std::endl; int nClusEndCap; std::vector<float> eClusEndCap; std::vector<float> etClusEndCap; std::vector<float> etaClusEndCap; std::vector<float> thetaClusEndCap; std::vector<float> phiClusEndCap; std::vector< std::vector<EcalRecHit> > RecHitsClusterEndCap; std::vector< std::vector<EcalRecHit> > RecHitsCluster5x5EndCap; std::vector<float> s4s9ClusEndCap; std::vector<float> s9s25ClusEndCap; nClusEndCap=0; // Make own simple clusters (3x3, 5x5 or clusPhiSize_ x clusEtaSize_) sort(seedsEndCap.begin(), seedsEndCap.end(), ecalRecHitLess()); for (std::vector<EcalRecHit>::iterator itseed=seedsEndCap.begin(); itseed!=seedsEndCap.end(); itseed++) { EEDetId seed_id = itseed->id(); std::vector<EEDetId>::const_iterator usedIds; bool seedAlreadyUsed=false; for(usedIds=usedXtalsEndCap.begin(); usedIds!=usedXtalsEndCap.end(); usedIds++){ if(*usedIds==seed_id){ seedAlreadyUsed=true; break; } } if(seedAlreadyUsed)continue; std::vector<DetId> clus_v = topology_ee->getWindow(seed_id,clusEtaSize_,clusPhiSize_); std::vector< std::pair<DetId, float> > clus_used; vector<EcalRecHit> RecHitsInWindow; vector<EcalRecHit> RecHitsInWindow5x5; float simple_energy = 0; for (std::vector<DetId>::iterator det=clus_v.begin(); det!=clus_v.end(); det++) { EEDetId EEdet = *det; bool HitAlreadyUsed=false; for(usedIds=usedXtalsEndCap.begin(); usedIds!=usedXtalsEndCap.end(); usedIds++){ if(*usedIds==*det){ HitAlreadyUsed=true; break; } } if(HitAlreadyUsed)continue; std::vector<EEDetId>::iterator itdet = find( detIdEERecHits.begin(),detIdEERecHits.end(),EEdet); if(itdet == detIdEERecHits.end()) continue; int nn = int(itdet - detIdEERecHits.begin()); usedXtalsEndCap.push_back(*det); RecHitsInWindow.push_back(EERecHits[nn]); clus_used.push_back(std::pair<DetId, float>(*det, 1)); simple_energy = simple_energy + EERecHits[nn].energy(); } if( simple_energy <= 0) continue; math::XYZPoint clus_pos = posCalculator_.Calculate_Location(clus_used,hitCollection_ee,geometryEE_p,geometryES_p); float theta_s = 2. * atan(exp(-clus_pos.eta())); float et_s = simple_energy * sin(theta_s); // float p0x_s = simple_energy * sin(theta_s) * cos(clus_pos.phi()); //float p0y_s = simple_energy * sin(theta_s) * sin(clus_pos.phi()); //float et_s = sqrt( p0x_s*p0x_s + p0y_s*p0y_s); //Compute S4/S9 variable //We are not sure to have 9 RecHits so need to check eta and phi: float s4s9_tmp[4]; for(int i=0;i<4;i++) s4s9_tmp[i]= 0; int ixSeed = seed_id.ix(); int iySeed = seed_id.iy(); float e3x3 = 0; float e5x5 = 0; for(unsigned int j=0; j<RecHitsInWindow.size();j++){ EEDetId det_this = (EEDetId)RecHitsInWindow[j].id(); int dx = ixSeed - det_this.ix(); int dy = iySeed - det_this.iy(); float en = RecHitsInWindow[j].energy(); if(dx <= 0 && dy <=0) s4s9_tmp[0] += en; if(dx >= 0 && dy <=0) s4s9_tmp[1] += en; if(dx <= 0 && dy >=0) s4s9_tmp[2] += en; if(dx >= 0 && dy >=0) s4s9_tmp[3] += en; if( abs(dx)<=1 && abs(dy)<=1) e3x3 += en; if( abs(dx)<=2 && abs(dy)<=2) e5x5 += en; } if(e3x3 <= 0) continue; eClusEndCap.push_back(simple_energy); etClusEndCap.push_back(et_s); etaClusEndCap.push_back(clus_pos.eta()); thetaClusEndCap.push_back(theta_s); phiClusEndCap.push_back(clus_pos.phi()); s4s9ClusEndCap.push_back(*max_element( s4s9_tmp,s4s9_tmp+4)/e3x3); s9s25ClusEndCap.push_back(e3x3/e5x5); RecHitsClusterEndCap.push_back(RecHitsInWindow); RecHitsCluster5x5EndCap.push_back(RecHitsInWindow5x5); // std::cout<<" EE Eta cluster (n,nxt,e,et eta,phi,s4s9) "<<nClusEndCap<<" "<<int(RecHitsInWindow.size())<<" "<<eClusEndCap[nClusEndCap]<<" "<<" "<<etClusEndCap[nClusEndCap]<<" "<<etaClusEndCap[nClusEndCap]<<" "<<phiClusEndCap[nClusEndCap]<<" "<<s4s9ClusEndCap[nClusEndCap]<<std::endl; nClusEndCap++; } // Selection, based on Simple clustering //pi0 candidates int npi0_se=0; for(Int_t i=0 ; i<nClusEndCap ; i++){ for(Int_t j=i+1 ; j<nClusEndCap ; j++){ if( etClusEndCap[i]>selePtGammaEtaEndCap_ && etClusEndCap[j]>selePtGammaEtaEndCap_ && s4s9ClusEndCap[i]>seleS4S9GammaEtaEndCap_ && s4s9ClusEndCap[j]>seleS4S9GammaEtaEndCap_){ float p0x = etClusEndCap[i] * cos(phiClusEndCap[i]); float p1x = etClusEndCap[j] * cos(phiClusEndCap[j]); float p0y = etClusEndCap[i] * sin(phiClusEndCap[i]); float p1y = etClusEndCap[j] * sin(phiClusEndCap[j]); float p0z = eClusEndCap[i] * cos(thetaClusEndCap[i]); float p1z = eClusEndCap[j] * cos(thetaClusEndCap[j]); float pt_pair = sqrt( (p0x+p1x)*(p0x+p1x) + (p0y+p1y)*(p0y+p1y)); if (pt_pair < selePtEtaEndCap_)continue; float m_inv = sqrt ( (eClusEndCap[i] + eClusEndCap[j])*(eClusEndCap[i] + eClusEndCap[j]) - (p0x+p1x)*(p0x+p1x) - (p0y+p1y)*(p0y+p1y) - (p0z+p1z)*(p0z+p1z) ); if ( (m_inv<seleMinvMaxEtaEndCap_) && (m_inv>seleMinvMinEtaEndCap_) ){ //New Loop on cluster to measure isolation: std::vector<int> IsoClus; IsoClus.clear(); float Iso = 0; TVector3 pairVect = TVector3((p0x+p1x), (p0y+p1y), (p0z+p1z)); for(Int_t k=0 ; k<nClusEndCap ; k++){ if(etClusEndCap[k] < ptMinForIsolationEtaEndCap_) continue; if(k==i || k==j)continue; TVector3 clusVect = TVector3(etClusEndCap[k] * cos(phiClusEndCap[k]), etClusEndCap[k] * sin(phiClusEndCap[k]) , eClusEndCap[k] * cos(thetaClusEndCap[k]) ) ; float dretacl = fabs(etaClusEndCap[k] - pairVect.Eta()); float drcl = clusVect.DeltaR(pairVect); if(drcl < seleEtaBeltDREndCap_ && dretacl < seleEtaBeltDetaEndCap_ ){ Iso = Iso + etClusEndCap[k]; IsoClus.push_back(k); } } if(Iso/pt_pair<seleEtaIsoEndCap_){ // cout <<" EE Simple Clustering: Eta Candidate pt, eta, phi, Iso, m_inv, i, j : "<<pt_pair<<" "<<pairVect.Eta()<<" "<<pairVect.Phi()<<" "<<Iso<<" "<<m_inv<<" "<<i<<" "<<j<<" "<<std::endl; hMinvEtaEE_->Fill(m_inv); hPt1EtaEE_->Fill(etClusEndCap[i]); hPt2EtaEE_->Fill(etClusEndCap[j]); hPtEtaEE_->Fill(pt_pair); hIsoEtaEE_->Fill(Iso/pt_pair); hS4S91EtaEE_->Fill(s4s9ClusEndCap[i]); hS4S92EtaEE_->Fill(s4s9ClusEndCap[j]); npi0_se++; } } } } // End of the "j" loop over Simple Clusters } // End of the "i" loop over Simple Clusters // std::cout<<" (Simple Clustering) EE Eta candidates #: "<<npi0_se<<std::endl; } //rhEEeta } //isMonEEeta //================End of Pi0 endcap=======================// }
void HLTAlCaMonPi0::beginJob | ( | void | ) | [protected, virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 147 of file HLTAlCaMonPi0.cc.
References DQMStore::book1D(), dbe_, folderName_, hEventEnergyEBeta_, hEventEnergyEBpi0_, hEventEnergyEEeta_, hEventEnergyEEpi0_, hiEtaDistrEBeta_, hiEtaDistrEBpi0_, hiPhiDistrEBeta_, hiPhiDistrEBpi0_, hIsoEtaEB_, hIsoEtaEE_, hIsoPi0EB_, hIsoPi0EE_, hiXDistrEEeta_, hiXDistrEEpi0_, hiYDistrEEeta_, hiYDistrEEpi0_, hMeanRecHitEnergyEBeta_, hMeanRecHitEnergyEBpi0_, hMeanRecHitEnergyEEeta_, hMeanRecHitEnergyEEpi0_, hMinvEtaEB_, hMinvEtaEE_, hMinvPi0EB_, hMinvPi0EE_, hNRecHitsEBeta_, hNRecHitsEBpi0_, hNRecHitsEEeta_, hNRecHitsEEpi0_, hPt1EtaEB_, hPt1EtaEE_, hPt1Pi0EB_, hPt1Pi0EE_, hPt2EtaEB_, hPt2EtaEE_, hPt2Pi0EB_, hPt2Pi0EE_, hPtEtaEB_, hPtEtaEE_, hPtPi0EB_, hPtPi0EE_, hRechitEnergyEBeta_, hRechitEnergyEBpi0_, hRechitEnergyEEeta_, hRechitEnergyEEpi0_, hS4S91EtaEB_, hS4S91EtaEE_, hS4S91Pi0EB_, hS4S91Pi0EE_, hS4S92EtaEB_, hS4S92EtaEE_, hS4S92Pi0EB_, hS4S92Pi0EE_, MonitorElement::setAxisTitle(), and DQMStore::setCurrentFolder().
{ // create and cd into new folder dbe_->setCurrentFolder(folderName_); // book some histograms 1D hiPhiDistrEBpi0_ = dbe_->book1D("iphiDistributionEBpi0", "RechitEB pi0 iphi", 361, 1,361); hiPhiDistrEBpi0_->setAxisTitle("i#phi ", 1); hiPhiDistrEBpi0_->setAxisTitle("# rechits", 2); hiXDistrEEpi0_ = dbe_->book1D("iXDistributionEEpi0", "RechitEE pi0 ix", 100, 0,100); hiXDistrEEpi0_->setAxisTitle("ix ", 1); hiXDistrEEpi0_->setAxisTitle("# rechits", 2); hiPhiDistrEBeta_ = dbe_->book1D("iphiDistributionEBeta", "RechitEB eta iphi", 361, 1,361); hiPhiDistrEBeta_->setAxisTitle("i#phi ", 1); hiPhiDistrEBeta_->setAxisTitle("# rechits", 2); hiXDistrEEeta_ = dbe_->book1D("iXDistributionEEeta", "RechitEE eta ix", 100, 0,100); hiXDistrEEeta_->setAxisTitle("ix ", 1); hiXDistrEEeta_->setAxisTitle("# rechits", 2); hiEtaDistrEBpi0_ = dbe_->book1D("iEtaDistributionEBpi0", "RechitEB pi0 ieta", 171, -85, 86); hiEtaDistrEBpi0_->setAxisTitle("i#eta", 1); hiEtaDistrEBpi0_->setAxisTitle("#rechits", 2); hiYDistrEEpi0_ = dbe_->book1D("iYDistributionEBpi0", "RechitEE pi0 iY", 100, 0, 100); hiYDistrEEpi0_->setAxisTitle("iy", 1); hiYDistrEEpi0_->setAxisTitle("#rechits", 2); hiEtaDistrEBeta_ = dbe_->book1D("iEtaDistributionEBeta", "RechitEB eta ieta", 171, -85, 86); hiEtaDistrEBeta_->setAxisTitle("i#eta", 1); hiEtaDistrEBeta_->setAxisTitle("#rechits", 2); hiYDistrEEeta_ = dbe_->book1D("iYDistributionEBeta", "RechitEE eta iY", 100, 0, 100); hiYDistrEEeta_->setAxisTitle("iy", 1); hiYDistrEEeta_->setAxisTitle("#rechits", 2); hRechitEnergyEBpi0_ = dbe_->book1D("rhEnergyEBpi0","Pi0 rechits energy EB",160,0.,2.0); hRechitEnergyEBpi0_->setAxisTitle("energy (GeV) ",1); hRechitEnergyEBpi0_->setAxisTitle("#rechits",2); hRechitEnergyEEpi0_ = dbe_->book1D("rhEnergyEEpi0","Pi0 rechits energy EE",160,0.,3.0); hRechitEnergyEEpi0_->setAxisTitle("energy (GeV) ",1); hRechitEnergyEEpi0_->setAxisTitle("#rechits",2); hRechitEnergyEBeta_ = dbe_->book1D("rhEnergyEBeta","Eta rechits energy EB",160,0.,2.0); hRechitEnergyEBeta_->setAxisTitle("energy (GeV) ",1); hRechitEnergyEBeta_->setAxisTitle("#rechits",2); hRechitEnergyEEeta_ = dbe_->book1D("rhEnergyEEeta","Eta rechits energy EE",160,0.,3.0); hRechitEnergyEEeta_->setAxisTitle("energy (GeV) ",1); hRechitEnergyEEeta_->setAxisTitle("#rechits",2); hEventEnergyEBpi0_ = dbe_->book1D("eventEnergyEBpi0","Pi0 event energy EB",100,0.,20.0); hEventEnergyEBpi0_->setAxisTitle("energy (GeV) ",1); hEventEnergyEEpi0_ = dbe_->book1D("eventEnergyEEpi0","Pi0 event energy EE",100,0.,50.0); hEventEnergyEEpi0_->setAxisTitle("energy (GeV) ",1); hEventEnergyEBeta_ = dbe_->book1D("eventEnergyEBeta","Eta event energy EB",100,0.,20.0); hEventEnergyEBeta_->setAxisTitle("energy (GeV) ",1); hEventEnergyEEeta_ = dbe_->book1D("eventEnergyEEeta","Eta event energy EE",100,0.,50.0); hEventEnergyEEeta_->setAxisTitle("energy (GeV) ",1); hNRecHitsEBpi0_ = dbe_->book1D("nRechitsEBpi0","#rechits in pi0 collection EB",100,0.,250.); hNRecHitsEBpi0_->setAxisTitle("rechits ",1); hNRecHitsEEpi0_ = dbe_->book1D("nRechitsEEpi0","#rechits in pi0 collection EE",100,0.,250.); hNRecHitsEEpi0_->setAxisTitle("rechits ",1); hNRecHitsEBeta_ = dbe_->book1D("nRechitsEBeta","#rechits in eta collection EB",100,0.,250.); hNRecHitsEBeta_->setAxisTitle("rechits ",1); hNRecHitsEEeta_ = dbe_->book1D("nRechitsEEeta","#rechits in eta collection EE",100,0.,250.); hNRecHitsEEeta_->setAxisTitle("rechits ",1); hMeanRecHitEnergyEBpi0_ = dbe_->book1D("meanEnergyEBpi0","Mean rechit energy in pi0 collection EB",50,0.,2.); hMeanRecHitEnergyEBpi0_->setAxisTitle("Mean Energy [GeV] ",1); hMeanRecHitEnergyEEpi0_ = dbe_->book1D("meanEnergyEEpi0","Mean rechit energy in pi0 collection EE",100,0.,5.); hMeanRecHitEnergyEEpi0_->setAxisTitle("Mean Energy [GeV] ",1); hMeanRecHitEnergyEBeta_ = dbe_->book1D("meanEnergyEBeta","Mean rechit energy in eta collection EB",50,0.,2.); hMeanRecHitEnergyEBeta_->setAxisTitle("Mean Energy [GeV] ",1); hMeanRecHitEnergyEEeta_ = dbe_->book1D("meanEnergyEEeta","Mean rechit energy in eta collection EE",100,0.,5.); hMeanRecHitEnergyEEeta_->setAxisTitle("Mean Energy [GeV] ",1); hMinvPi0EB_ = dbe_->book1D("Pi0InvmassEB","Pi0 Invariant Mass in EB",100,0.,0.5); hMinvPi0EB_->setAxisTitle("Inv Mass [GeV] ",1); hMinvPi0EE_ = dbe_->book1D("Pi0InvmassEE","Pi0 Invariant Mass in EE",100,0.,0.5); hMinvPi0EE_->setAxisTitle("Inv Mass [GeV] ",1); hMinvEtaEB_ = dbe_->book1D("EtaInvmassEB","Eta Invariant Mass in EB",100,0.,0.85); hMinvEtaEB_->setAxisTitle("Inv Mass [GeV] ",1); hMinvEtaEE_ = dbe_->book1D("EtaInvmassEE","Eta Invariant Mass in EE",100,0.,0.85); hMinvEtaEE_->setAxisTitle("Inv Mass [GeV] ",1); hPt1Pi0EB_ = dbe_->book1D("Pt1Pi0EB","Pt 1st most energetic Pi0 photon in EB",100,0.,20.); hPt1Pi0EB_->setAxisTitle("1st photon Pt [GeV] ",1); hPt1Pi0EE_ = dbe_->book1D("Pt1Pi0EE","Pt 1st most energetic Pi0 photon in EE",100,0.,20.); hPt1Pi0EE_->setAxisTitle("1st photon Pt [GeV] ",1); hPt1EtaEB_ = dbe_->book1D("Pt1EtaEB","Pt 1st most energetic Eta photon in EB",100,0.,20.); hPt1EtaEB_->setAxisTitle("1st photon Pt [GeV] ",1); hPt1EtaEE_ = dbe_->book1D("Pt1EtaEE","Pt 1st most energetic Eta photon in EE",100,0.,20.); hPt1EtaEE_->setAxisTitle("1st photon Pt [GeV] ",1); hPt2Pi0EB_ = dbe_->book1D("Pt2Pi0EB","Pt 2nd most energetic Pi0 photon in EB",100,0.,20.); hPt2Pi0EB_->setAxisTitle("2nd photon Pt [GeV] ",1); hPt2Pi0EE_ = dbe_->book1D("Pt2Pi0EE","Pt 2nd most energetic Pi0 photon in EE",100,0.,20.); hPt2Pi0EE_->setAxisTitle("2nd photon Pt [GeV] ",1); hPt2EtaEB_ = dbe_->book1D("Pt2EtaEB","Pt 2nd most energetic Eta photon in EB",100,0.,20.); hPt2EtaEB_->setAxisTitle("2nd photon Pt [GeV] ",1); hPt2EtaEE_ = dbe_->book1D("Pt2EtaEE","Pt 2nd most energetic Eta photon in EE",100,0.,20.); hPt2EtaEE_->setAxisTitle("2nd photon Pt [GeV] ",1); hPtPi0EB_ = dbe_->book1D("PtPi0EB","Pi0 Pt in EB",100,0.,20.); hPtPi0EB_->setAxisTitle("Pi0 Pt [GeV] ",1); hPtPi0EE_ = dbe_->book1D("PtPi0EE","Pi0 Pt in EE",100,0.,20.); hPtPi0EE_->setAxisTitle("Pi0 Pt [GeV] ",1); hPtEtaEB_ = dbe_->book1D("PtEtaEB","Eta Pt in EB",100,0.,20.); hPtEtaEB_->setAxisTitle("Eta Pt [GeV] ",1); hPtEtaEE_ = dbe_->book1D("PtEtaEE","Eta Pt in EE",100,0.,20.); hPtEtaEE_->setAxisTitle("Eta Pt [GeV] ",1); hIsoPi0EB_ = dbe_->book1D("IsoPi0EB","Pi0 Iso in EB",50,0.,1.); hIsoPi0EB_->setAxisTitle("Pi0 Iso",1); hIsoPi0EE_ = dbe_->book1D("IsoPi0EE","Pi0 Iso in EE",50,0.,1.); hIsoPi0EE_->setAxisTitle("Pi0 Iso",1); hIsoEtaEB_ = dbe_->book1D("IsoEtaEB","Eta Iso in EB",50,0.,1.); hIsoEtaEB_->setAxisTitle("Eta Iso",1); hIsoEtaEE_ = dbe_->book1D("IsoEtaEE","Eta Iso in EE",50,0.,1.); hIsoEtaEE_->setAxisTitle("Eta Iso",1); hS4S91Pi0EB_ = dbe_->book1D("S4S91Pi0EB","S4S9 1st most energetic Pi0 photon in EB",50,0.,1.); hS4S91Pi0EB_->setAxisTitle("S4S9 of the 1st Pi0 Photon ",1); hS4S91Pi0EE_ = dbe_->book1D("S4S91Pi0EE","S4S9 1st most energetic Pi0 photon in EE",50,0.,1.); hS4S91Pi0EE_->setAxisTitle("S4S9 of the 1st Pi0 Photon ",1); hS4S91EtaEB_ = dbe_->book1D("S4S91EtaEB","S4S9 1st most energetic Eta photon in EB",50,0.,1.); hS4S91EtaEB_->setAxisTitle("S4S9 of the 1st Eta Photon ",1); hS4S91EtaEE_ = dbe_->book1D("S4S91EtaEE","S4S9 1st most energetic Eta photon in EE",50,0.,1.); hS4S91EtaEE_->setAxisTitle("S4S9 of the 1st Eta Photon ",1); hS4S92Pi0EB_ = dbe_->book1D("S4S92Pi0EB","S4S9 2nd most energetic Pi0 photon in EB",50,0.,1.); hS4S92Pi0EB_->setAxisTitle("S4S9 of the 2nd Pi0 Photon",1); hS4S92Pi0EE_ = dbe_->book1D("S4S92Pi0EE","S4S9 2nd most energetic Pi0 photon in EE",50,0.,1.); hS4S92Pi0EE_->setAxisTitle("S4S9 of the 2nd Pi0 Photon",1); hS4S92EtaEB_ = dbe_->book1D("S4S92EtaEB","S4S9 2nd most energetic Pi0 photon in EB",50,0.,1.); hS4S92EtaEB_->setAxisTitle("S4S9 of the 2nd Eta Photon",1); hS4S92EtaEE_ = dbe_->book1D("S4S92EtaEE","S4S9 2nd most energetic Pi0 photon in EE",50,0.,1.); hS4S92EtaEE_->setAxisTitle("S4S9 of the 2nd Eta Photon",1); }
void HLTAlCaMonPi0::beginLuminosityBlock | ( | const edm::LuminosityBlock & | lumiSeg, |
const edm::EventSetup & | context | ||
) | [protected, virtual] |
void HLTAlCaMonPi0::beginRun | ( | const edm::Run & | r, |
const edm::EventSetup & | c | ||
) | [protected, virtual] |
void HLTAlCaMonPi0::convxtalid | ( | int & | , |
int & | |||
) | [protected] |
Referenced by analyze().
int HLTAlCaMonPi0::diff_neta_s | ( | int | , |
int | |||
) | [protected] |
Referenced by analyze().
int HLTAlCaMonPi0::diff_nphi_s | ( | int | , |
int | |||
) | [protected] |
Referenced by analyze().
void HLTAlCaMonPi0::endJob | ( | void | ) | [protected, virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 1564 of file HLTAlCaMonPi0.cc.
References dbe_, fileName_, DQMStore::save(), and saveToFile_.
{ if(dbe_) { if (saveToFile_) { dbe_->save(fileName_); } } }
void HLTAlCaMonPi0::endLuminosityBlock | ( | const edm::LuminosityBlock & | lumiSeg, |
const edm::EventSetup & | c | ||
) | [protected, virtual] |
void HLTAlCaMonPi0::endRun | ( | const edm::Run & | r, |
const edm::EventSetup & | c | ||
) | [protected, virtual] |
int HLTAlCaMonPi0::clusEtaSize_ [private] |
Definition at line 255 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
int HLTAlCaMonPi0::clusPhiSize_ [private] |
Definition at line 256 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::clusSeedThr_ [private] |
Definition at line 254 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::clusSeedThrEndCap_ [private] |
Definition at line 258 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
DQMStore* HLTAlCaMonPi0::dbe_ [private] |
Definition at line 75 of file HLTAlCaMonPi0.h.
Referenced by beginJob(), endJob(), and HLTAlCaMonPi0().
std::vector<EBDetId> HLTAlCaMonPi0::detIdEBRecHits [private] |
Definition at line 316 of file HLTAlCaMonPi0.h.
Referenced by analyze().
std::vector<EEDetId> HLTAlCaMonPi0::detIdEERecHits [private] |
Definition at line 320 of file HLTAlCaMonPi0.h.
Referenced by analyze().
std::vector<EcalRecHit> HLTAlCaMonPi0::EBRecHits [private] |
Definition at line 317 of file HLTAlCaMonPi0.h.
Referenced by analyze().
std::vector<EcalRecHit> HLTAlCaMonPi0::EERecHits [private] |
Definition at line 321 of file HLTAlCaMonPi0.h.
Referenced by analyze().
int HLTAlCaMonPi0::eventCounter_ [private] |
Definition at line 76 of file HLTAlCaMonPi0.h.
Referenced by analyze().
std::string HLTAlCaMonPi0::fileName_ [private] |
Output file name if required.
Definition at line 341 of file HLTAlCaMonPi0.h.
Referenced by endJob(), and HLTAlCaMonPi0().
std::string HLTAlCaMonPi0::folderName_ [private] |
DQM folder name.
Definition at line 329 of file HLTAlCaMonPi0.h.
Referenced by beginJob(), and HLTAlCaMonPi0().
int HLTAlCaMonPi0::gammaCandEtaSize_ [private] |
Definition at line 248 of file HLTAlCaMonPi0.h.
int HLTAlCaMonPi0::gammaCandPhiSize_ [private] |
Definition at line 249 of file HLTAlCaMonPi0.h.
MonitorElement* HLTAlCaMonPi0::hEventEnergyEBeta_ [private] |
Distribution of total event energy EB (eta)
Definition at line 122 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hEventEnergyEBpi0_ [private] |
Distribution of total event energy EB (pi0)
Definition at line 116 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hEventEnergyEEeta_ [private] |
Distribution of total event energy EE (eta)
Definition at line 125 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hEventEnergyEEpi0_ [private] |
Distribution of total event energy EE (pi0)
Definition at line 119 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hiEtaDistrEBeta_ [private] |
Distribution of rechits in iEta (eta)
Definition at line 98 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hiEtaDistrEBpi0_ [private] |
Distribution of rechits in iEta (pi0)
Definition at line 92 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hiPhiDistrEBeta_ [private] |
Distribution of rechits in iPhi (eta)
Definition at line 86 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hiPhiDistrEBpi0_ [private] |
Distribution of rechits in iPhi (pi0)
Definition at line 80 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hIsoEtaEB_ [private] |
Eta Iso EB.
Definition at line 208 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hIsoEtaEE_ [private] |
Eta Iso EE.
Definition at line 211 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hIsoPi0EB_ [private] |
Pi0 Iso EB.
Definition at line 202 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hIsoPi0EE_ [private] |
Pi0 Iso EE.
Definition at line 205 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hiXDistrEEeta_ [private] |
Distribution of rechits in ix EE (eta)
Definition at line 89 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hiXDistrEEpi0_ [private] |
Distribution of rechits in ix EE (pi0)
Definition at line 83 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hiYDistrEEeta_ [private] |
Distribution of rechits in iy EE (eta)
Definition at line 101 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hiYDistrEEpi0_ [private] |
Distribution of rechits in iy EE (pi0)
Definition at line 95 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
Distribution of Mean energy per rechit EB (eta)
Definition at line 146 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
Distribution of Mean energy per rechit EB (pi0)
Definition at line 140 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
Distribution of Mean energy per rechit EE (eta)
Definition at line 149 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
Distribution of Mean energy per rechit EE (pi0)
Definition at line 143 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hMinvEtaEB_ [private] |
Eta invariant mass in EB.
Definition at line 158 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hMinvEtaEE_ [private] |
Eta invariant mass in EE.
Definition at line 161 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hMinvPi0EB_ [private] |
Pi0 invariant mass in EB.
Definition at line 152 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hMinvPi0EE_ [private] |
Pi0 invariant mass in EE.
Definition at line 155 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hNRecHitsEBeta_ [private] |
Distribution of number of RecHits EB (eta)
Definition at line 134 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hNRecHitsEBpi0_ [private] |
Distribution of number of RecHits EB (pi0)
Definition at line 128 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hNRecHitsEEeta_ [private] |
Distribution of number of RecHits EE (eta)
Definition at line 137 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hNRecHitsEEpi0_ [private] |
Distribution of number of RecHits EE (pi0)
Definition at line 131 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hPt1EtaEB_ [private] |
Pt of the 1st most energetic Eta photon in EB.
Definition at line 170 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hPt1EtaEE_ [private] |
Pt of the 1st most energetic Eta photon in EE.
Definition at line 173 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hPt1Pi0EB_ [private] |
Pt of the 1st most energetic Pi0 photon in EB.
Definition at line 164 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hPt1Pi0EE_ [private] |
Pt of the 1st most energetic Pi0 photon in EE.
Definition at line 167 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hPt2EtaEB_ [private] |
Pt of the 2nd most energetic Eta photon in EB.
Definition at line 183 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hPt2EtaEE_ [private] |
Pt of the 2nd most energetic Eta photon in EE.
Definition at line 186 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hPt2Pi0EB_ [private] |
Pt of the 2nd most energetic Pi0 photon in EB.
Definition at line 177 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hPt2Pi0EE_ [private] |
Pt of the 2nd most energetic Pi0 photon in EE.
Definition at line 180 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hPtEtaEB_ [private] |
Eta Pt in EB.
Definition at line 196 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hPtEtaEE_ [private] |
Eta Pt in EE.
Definition at line 199 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hPtPi0EB_ [private] |
Pi0 Pt in EB.
Definition at line 190 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hPtPi0EE_ [private] |
Pi0 Pt in EE.
Definition at line 193 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hRechitEnergyEBeta_ [private] |
Energy Distribution of rechits EB (eta)
Definition at line 110 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hRechitEnergyEBpi0_ [private] |
Energy Distribution of rechits EB (pi0)
Definition at line 104 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hRechitEnergyEEeta_ [private] |
Energy Distribution of rechits EE (eta)
Definition at line 113 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hRechitEnergyEEpi0_ [private] |
Energy Distribution of rechits EE (pi0)
Definition at line 107 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hS4S91EtaEB_ [private] |
S4S9 of the 1st most energetic eta photon.
Definition at line 220 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hS4S91EtaEE_ [private] |
S4S9 of the 1st most energetic eta photon EE.
Definition at line 223 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hS4S91Pi0EB_ [private] |
S4S9 of the 1st most energetic pi0 photon.
Definition at line 214 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hS4S91Pi0EE_ [private] |
S4S9 of the 1st most energetic pi0 photon EE.
Definition at line 217 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hS4S92EtaEB_ [private] |
S4S9 of the 2nd most energetic eta photon.
Definition at line 232 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hS4S92EtaEE_ [private] |
S4S9 of the 2nd most energetic eta photon EE.
Definition at line 235 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hS4S92Pi0EB_ [private] |
S4S9 of the 2nd most energetic pi0 photon.
Definition at line 226 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
MonitorElement* HLTAlCaMonPi0::hS4S92Pi0EE_ [private] |
S4S9 of the 2nd most energetic pi0 photon EE.
Definition at line 229 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and beginJob().
bool HLTAlCaMonPi0::isMonEBeta_ [private] |
Definition at line 336 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
bool HLTAlCaMonPi0::isMonEBpi0_ [private] |
which subdet will be monitored
Definition at line 335 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
bool HLTAlCaMonPi0::isMonEEeta_ [private] |
Definition at line 338 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
bool HLTAlCaMonPi0::isMonEEpi0_ [private] |
Definition at line 337 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
bool HLTAlCaMonPi0::ParameterLogWeighted_ [private] |
Definition at line 307 of file HLTAlCaMonPi0.h.
double HLTAlCaMonPi0::ParameterT0_barl_ [private] |
Definition at line 309 of file HLTAlCaMonPi0.h.
double HLTAlCaMonPi0::ParameterT0_endc_ [private] |
Definition at line 310 of file HLTAlCaMonPi0.h.
double HLTAlCaMonPi0::ParameterT0_endcPresh_ [private] |
Definition at line 311 of file HLTAlCaMonPi0.h.
double HLTAlCaMonPi0::ParameterW0_ [private] |
Definition at line 312 of file HLTAlCaMonPi0.h.
double HLTAlCaMonPi0::ParameterX0_ [private] |
Definition at line 308 of file HLTAlCaMonPi0.h.
PositionCalc HLTAlCaMonPi0::posCalculator_ [private] |
Definition at line 77 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
unsigned int HLTAlCaMonPi0::prescaleFactor_ [private] |
Monitor every prescaleFactor_ events.
Definition at line 326 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
Definition at line 242 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
object to monitor
Definition at line 241 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
Definition at line 246 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
object to monitor
Definition at line 245 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::ptMinForIsolation_ [private] |
Definition at line 269 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::ptMinForIsolationEndCap_ [private] |
Definition at line 280 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::ptMinForIsolationEta_ [private] |
Definition at line 289 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::ptMinForIsolationEtaEndCap_ [private] |
Definition at line 301 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
bool HLTAlCaMonPi0::saveToFile_ [private] |
Write to file.
Definition at line 332 of file HLTAlCaMonPi0.h.
Referenced by endJob(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleEtaBeltDeta_ [private] |
Definition at line 292 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleEtaBeltDetaEndCap_ [private] |
Definition at line 304 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleEtaBeltDR_ [private] |
Definition at line 291 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleEtaBeltDREndCap_ [private] |
Definition at line 303 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleEtaIso_ [private] |
Definition at line 290 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleEtaIsoEndCap_ [private] |
Definition at line 302 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleMinvMaxEta_ [private] |
Definition at line 287 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleMinvMaxEtaEndCap_ [private] |
Definition at line 299 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleMinvMaxPi0_ [private] |
Definition at line 263 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleMinvMaxPi0EndCap_ [private] |
Definition at line 274 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleMinvMinEta_ [private] |
Definition at line 288 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleMinvMinEtaEndCap_ [private] |
Definition at line 300 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleMinvMinPi0_ [private] |
Definition at line 264 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleMinvMinPi0EndCap_ [private] |
Definition at line 275 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::selePi0BeltDeta_ [private] |
Definition at line 267 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::selePi0BeltDetaEndCap_ [private] |
Definition at line 279 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::selePi0BeltDR_ [private] |
Definition at line 266 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::selePi0BeltDREndCap_ [private] |
Definition at line 278 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::selePi0Iso_ [private] |
Definition at line 268 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::selePi0IsoEndCap_ [private] |
Definition at line 277 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::selePtEta_ [private] |
Definition at line 284 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::selePtEtaEndCap_ [private] |
Definition at line 298 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::selePtGamma_ [private] |
Definition at line 261 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::selePtGammaEndCap_ [private] |
for pi0->gg endcap
Definition at line 272 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::selePtGammaEta_ [private] |
for eta->gg barrel
Definition at line 283 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::selePtGammaEtaEndCap_ [private] |
for eta->gg endcap
Definition at line 295 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::selePtPi0_ [private] |
Definition at line 262 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::selePtPi0EndCap_ [private] |
Definition at line 273 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleS4S9Gamma_ [private] |
Definition at line 265 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleS4S9GammaEndCap_ [private] |
Definition at line 276 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleS4S9GammaEta_ [private] |
Definition at line 285 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleS4S9GammaEtaEndCap_ [private] |
Definition at line 296 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleS9S25GammaEta_ [private] |
Definition at line 286 of file HLTAlCaMonPi0.h.
Referenced by HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleS9S25GammaEtaEndCap_ [private] |
Definition at line 297 of file HLTAlCaMonPi0.h.
Referenced by HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleXtalMinEnergy_ [private] |
Definition at line 251 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().
double HLTAlCaMonPi0::seleXtalMinEnergyEndCap_ [private] |
Definition at line 252 of file HLTAlCaMonPi0.h.
Referenced by analyze(), and HLTAlCaMonPi0().