CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Private Types | Private Member Functions | Private Attributes | Static Private Attributes
EcalDisplaysByEvent Class Reference

#include <EcalDisplaysByEvent.h>

Inheritance diagram for EcalDisplaysByEvent:
edm::one::EDAnalyzer< edm::one::WatchRuns > edm::one::EDAnalyzerBase edm::EDConsumerBase

Public Member Functions

 EcalDisplaysByEvent (const edm::ParameterSet &)
 
 ~EcalDisplaysByEvent () override
 
- Public Member Functions inherited from edm::one::EDAnalyzer< edm::one::WatchRuns >
 EDAnalyzer ()=default
 
 EDAnalyzer (const EDAnalyzer &)=delete
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
const EDAnalyzeroperator= (const EDAnalyzer &)=delete
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
bool wantsInputProcessBlocks () const final
 
bool wantsProcessBlocks () const final
 
- Public Member Functions inherited from edm::one::EDAnalyzerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDAnalyzerBase () override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESProxyIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex >
const & 
esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector
< ProductResolverIndexAndSkipBit >
const & 
itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::array< std::vector< ModuleDescription const * > *, NumBranchTypes > &modulesAll, std::vector< ModuleProcessName > &modulesInPreviousProcesses, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase)
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Types

enum  Ecal2DHistSubDetType {
  EB_FINE = 0, EB_COARSE = 1, EEM_FINE = 2, EEM_COARSE = 3,
  EEP_FINE = 4, EEP_COARSE = 5
}
 

Private Member Functions

void analyze (edm::Event const &, edm::EventSetup const &) override
 
void beginRun (edm::Run const &, edm::EventSetup const &) override
 
void deleteEvtByEvtHists ()
 
void drawCanvas (TCanvas *canvas, TH1F *hist1, TH1F *hist2, TH1F *hist3)
 
void drawCanvas (TCanvas *canvas, TH2F *hist1, TH2F *hist2, TH2F *hist3)
 
void drawCanvas (TCanvas *canvas, TH3F *hist1, TH3F *hist2, TH3F *hist3)
 
void drawEELines ()
 
void drawHistos ()
 
void drawTimingErrors (TProfile2D *profile)
 
void endJob () override
 
void endRun (edm::Run const &, edm::EventSetup const &) override
 
std::string floatToString (float num)
 
int getEEIndex (EcalElectronicsId elecId)
 
TCanvas * init2DEcalCanvas (std::string canvasName)
 
TH2F * init2DEcalHist (std::string histTypeName, int subDet)
 
TH3F * init3DEcalHist (std::string histTypeName, int dubDet)
 
void initAllEventHistos ()
 
void initEvtByEvtHists (int naiveEvtNum_, int ievt)
 
void initHists (int)
 
std::string intToString (int num)
 
void makeHistos (edm::Handle< EBDigiCollection > ebDigis)
 
void makeHistos (edm::Handle< EEDigiCollection > eeDigis)
 
void makeHistos (edm::Handle< EcalRecHitCollection > hits)
 
TGraph * selectDigi (DetId det, int ievt)
 
void selectHits (edm::Handle< EcalRecHitCollection > hits, int ievt)
 

Private Attributes

int abscissa [10]
 
TH1F * allFedsTimingHist_
 
const CaloTopologycaloTopo_
 
TTree * canvasNames_
 
std::map< int, float > crysAndAmplitudesMap_
 
TCanvas * digiOccupancyCanvas_
 
TCanvas * digiOccupancyCanvasAll_
 
TCanvas * digiOccupancyCoarseCanvas_
 
TCanvas * digiOccupancyCoarseCanvasAll_
 
TH2F * digiOccupancyEB_
 
TH2F * digiOccupancyEBAll_
 
TH2F * digiOccupancyEBcoarse_
 
TH2F * digiOccupancyEBcoarseAll_
 
TH2F * digiOccupancyEEM_
 
TH2F * digiOccupancyEEMAll_
 
TH2F * digiOccupancyEEMcoarse_
 
TH2F * digiOccupancyEEMcoarseAll_
 
TH2F * digiOccupancyEEP_
 
TH2F * digiOccupancyEEPAll_
 
TH2F * digiOccupancyEEPcoarse_
 
TH2F * digiOccupancyEEPcoarseAll_
 
const edm::InputTag EBDigis_
 
edm::Handle< EBDigiCollectionEBdigisHandle
 
const edm::EDGetTokenT
< EBDigiCollection
ebDigiToken_
 
const edm::InputTag EBRecHitCollection_
 
const edm::EDGetTokenT
< EcalRecHitCollection
ebRecHitToken_
 
const EcalElectronicsMappingecalElectronicsMap_
 
const edm::ESGetToken
< EcalElectronicsMapping,
EcalMappingRcd
ecalMappingToken_
 
const edm::InputTag EEDigis_
 
edm::Handle< EEDigiCollectionEEdigisHandle
 
const edm::EDGetTokenT
< EEDigiCollection
eeDigiToken_
 
const edm::InputTag EERecHitCollection_
 
const edm::EDGetTokenT
< EcalRecHitCollection
eeRecHitToken_
 
TCanvas * energyCanvas_
 
TCanvas * energyCanvasAll_
 
TH1F * energyEB_
 
TH1F * energyEBAll_
 
TH1F * energyEEM_
 
TH1F * energyEEMAll_
 
TH1F * energyEEP_
 
TH1F * energyEEPAll_
 
TCanvas * energyMapCanvas_
 
TCanvas * energyMapCanvasAll_
 
TCanvas * energyMapCoarseCanvas_
 
TCanvas * energyMapCoarseCanvasAll_
 
TH2F * energyMapEB_
 
TH2F * energyMapEBAll_
 
TH2F * energyMapEBcoarse_
 
TH2F * energyMapEBcoarseAll_
 
TH2F * energyMapEEM_
 
TH2F * energyMapEEMAll_
 
TH2F * energyMapEEMcoarse_
 
TH2F * energyMapEEMcoarseAll_
 
TH2F * energyMapEEP_
 
TH2F * energyMapEEPAll_
 
TH2F * energyMapEEPcoarse_
 
TH2F * energyMapEEPcoarseAll_
 
EcalFedMapfedMap_
 
std::map< int, EcalDCCHeaderBlockFEDsAndDCCHeaders_
 
std::map< int, TH1F * > FEDsAndTimingHists_
 
const edm::InputTag headerProducer_
 
TTree * histoCanvasNames_
 
std::vector< std::string > * histoCanvasNamesVector
 
const double histRangeMax_
 
const double histRangeMin_
 
std::set< EBDetIdlistEBChannels
 
std::set< EEDetIdlistEEChannels
 
const bool makeDigiGraphs_
 
const bool makeEnergyHistos_
 
const bool makeOccupancyHistos_
 
const bool makeTimingHistos_
 
std::vector< int > maskedChannels_
 
std::vector< std::string > maskedEBs_
 
std::vector< int > maskedFEDs_
 
const double minTimingAmp_
 
const double minTimingEnergyEB_
 
const double minTimingEnergyEE_
 
int naiveEvtNum_
 
std::vector< std::string > * names
 
int ordinate [10]
 
const edm::EDGetTokenT
< EcalRawDataCollection
rawDataToken_
 
TCanvas * recHitOccupancyCanvas_
 
TCanvas * recHitOccupancyCanvasAll_
 
TCanvas * recHitOccupancyCoarseCanvas_
 
TCanvas * recHitOccupancyCoarseCanvasAll_
 
TH2F * recHitOccupancyEB_
 
TH2F * recHitOccupancyEBAll_
 
TH2F * recHitOccupancyEBcoarse_
 
TH2F * recHitOccupancyEBcoarseAll_
 
TH2F * recHitOccupancyEEM_
 
TH2F * recHitOccupancyEEMAll_
 
TH2F * recHitOccupancyEEMcoarse_
 
TH2F * recHitOccupancyEEMcoarseAll_
 
TH2F * recHitOccupancyEEP_
 
TH2F * recHitOccupancyEEPAll_
 
TH2F * recHitOccupancyEEPcoarse_
 
TH2F * recHitOccupancyEEPcoarseAll_
 
int runNum_
 
std::vector< int > seedCrys_
 
std::map< std::string, int > seedFrequencyMap_
 
const int side_
 
const double threshold_
 
TCanvas * timingCanvas_
 
TCanvas * timingCanvasAll_
 
TH1F * timingEB_
 
TH1F * timingEBAll_
 
TH1F * timingEEM_
 
TH1F * timingEEMAll_
 
TH1F * timingEEP_
 
TH1F * timingEEPAll_
 
TCanvas * timingMapCanvas_
 
TCanvas * timingMapCanvasAll_
 
TCanvas * timingMapCoarseCanvas_
 
TCanvas * timingMapCoarseCanvasAll_
 
TH3F * timingMapEB_
 
TH3F * timingMapEBAll_
 
TH3F * timingMapEBCoarse_
 
TH3F * timingMapEBCoarseAll_
 
TH3F * timingMapEEM_
 
TH3F * timingMapEEMAll_
 
TH3F * timingMapEEMCoarse_
 
TH3F * timingMapEEMCoarseAll_
 
TH3F * timingMapEEP_
 
TH3F * timingMapEEPAll_
 
TH3F * timingMapEEPCoarse_
 
TH3F * timingMapEEPCoarseAll_
 
const edm::ESGetToken
< CaloTopology,
CaloTopologyRecord
topologyToken_
 

Static Private Attributes

static edm::Service< TFileServicefileService
 
static float gainRatio [3] = {1., 2., 12.}
 

Additional Inherited Members

- Public Types inherited from edm::one::EDAnalyzerBase
typedef EDAnalyzerBase ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::one::EDAnalyzerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< B > consumes (edm::InputTag tag) noexcept
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes () noexcept
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag) noexcept
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
void resetItemsToGetFrom (BranchType iType)
 

Detailed Description

Description: <one line="" class="" summary>="">

Implementation: <Notes on="" implementation>="">

Definition at line 62 of file EcalDisplaysByEvent.h.

Member Enumeration Documentation

Constructor & Destructor Documentation

EcalDisplaysByEvent::EcalDisplaysByEvent ( const edm::ParameterSet iConfig)
explicit

Definition at line 41 of file EcalDisplaysByEvent.cc.

References abscissa, allFedsTimingHist_, fedMap_, fileService, edm::ParameterSet::getUntrackedParameter(), mps_fire::i, initAllEventHistos(), TFileService::make(), maskedChannels_, maskedEBs_, maskedFEDs_, naiveEvtNum_, and seedCrys_.

42  : EBRecHitCollection_(iConfig.getParameter<edm::InputTag>("EcalRecHitCollectionEB")),
43  EERecHitCollection_(iConfig.getParameter<edm::InputTag>("EcalRecHitCollectionEE")),
44  EBDigis_(iConfig.getParameter<edm::InputTag>("EBDigiCollection")),
45  EEDigis_(iConfig.getParameter<edm::InputTag>("EEDigiCollection")),
46  headerProducer_(iConfig.getParameter<edm::InputTag>("headerProducer")),
47  rawDataToken_(consumes<EcalRawDataCollection>(headerProducer_)),
48  ebRecHitToken_(consumes<EcalRecHitCollection>(EBRecHitCollection_)),
49  eeRecHitToken_(consumes<EcalRecHitCollection>(EERecHitCollection_)),
50  ebDigiToken_(consumes<EBDigiCollection>(EBDigis_)),
51  eeDigiToken_(consumes<EEDigiCollection>(EEDigis_)),
52  ecalMappingToken_(esConsumes<edm::Transition::BeginRun>()),
54  runNum_(-1),
55  side_(iConfig.getUntrackedParameter<int>("side", 3)),
56  threshold_(iConfig.getUntrackedParameter<double>("amplitudeThreshold", 0.5)),
57  minTimingAmp_(iConfig.getUntrackedParameter<double>("minimumTimingAmplitude", 0.100)),
58  makeDigiGraphs_(iConfig.getUntrackedParameter<bool>("makeDigiGraphs", false)),
59  makeTimingHistos_(iConfig.getUntrackedParameter<bool>("makeTimingHistos", true)),
60  makeEnergyHistos_(iConfig.getUntrackedParameter<bool>("makeEnergyHistos", true)),
61  makeOccupancyHistos_(iConfig.getUntrackedParameter<bool>("makeOccupancyHistos", true)),
62  histRangeMin_(iConfig.getUntrackedParameter<double>("histogramMinRange", 0.0)),
63  histRangeMax_(iConfig.getUntrackedParameter<double>("histogramMaxRange", 1.8)),
64  minTimingEnergyEB_(iConfig.getUntrackedParameter<double>("minTimingEnergyEB", 0.0)),
65  minTimingEnergyEE_(iConfig.getUntrackedParameter<double>("minTimingEnergyEE", 0.0)) {
66  vector<int> listDefaults;
67  listDefaults.push_back(-1);
68 
69  maskedChannels_ = iConfig.getUntrackedParameter<vector<int> >("maskedChannels", listDefaults);
70  maskedFEDs_ = iConfig.getUntrackedParameter<vector<int> >("maskedFEDs", listDefaults);
71  seedCrys_ = iConfig.getUntrackedParameter<vector<int> >("seedCrys", listDefaults);
72 
73  vector<string> defaultMaskedEBs;
74  defaultMaskedEBs.push_back("none");
75  maskedEBs_ = iConfig.getUntrackedParameter<vector<string> >("maskedEBs", defaultMaskedEBs);
76 
77  fedMap_ = new EcalFedMap();
78 
79  string title1 = "Jitter for all FEDs all events";
80  string name1 = "JitterAllFEDsAllEvents";
81  allFedsTimingHist_ = fileService->make<TH1F>(name1.c_str(), title1.c_str(), 150, -7, 7);
82 
83  // load up the maskedFED list with the proper FEDids
84  if (maskedFEDs_[0] == -1) {
85  //if "actual" EB id given, then convert to FEDid and put in listFEDs_
86  if (maskedEBs_[0] != "none") {
87  maskedFEDs_.clear();
88  for (vector<string>::const_iterator ebItr = maskedEBs_.begin(); ebItr != maskedEBs_.end(); ++ebItr) {
89  maskedFEDs_.push_back(fedMap_->getFedFromSlice(*ebItr));
90  }
91  }
92  }
93 
94  for (int i = 0; i < 10; i++)
95  abscissa[i] = i;
96 
97  naiveEvtNum_ = 0;
98 
100 }
std::vector< std::string > maskedEBs_
T getUntrackedParameter(std::string const &, T const &) const
const edm::InputTag headerProducer_
const edm::EDGetTokenT< EcalRawDataCollection > rawDataToken_
std::vector< int > maskedChannels_
const double minTimingEnergyEB_
T * make(const Args &...args) const
make new ROOT object
Definition: TFileService.h:64
const edm::InputTag EBRecHitCollection_
const edm::InputTag EEDigis_
const edm::InputTag EERecHitCollection_
const edm::EDGetTokenT< EcalRecHitCollection > ebRecHitToken_
std::vector< int > maskedFEDs_
const edm::EDGetTokenT< EEDigiCollection > eeDigiToken_
const edm::InputTag EBDigis_
const edm::ESGetToken< EcalElectronicsMapping, EcalMappingRcd > ecalMappingToken_
const edm::EDGetTokenT< EcalRecHitCollection > eeRecHitToken_
static edm::Service< TFileService > fileService
const double minTimingEnergyEE_
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
const edm::ESGetToken< CaloTopology, CaloTopologyRecord > topologyToken_
std::vector< int > seedCrys_
const edm::EDGetTokenT< EBDigiCollection > ebDigiToken_
EcalDisplaysByEvent::~EcalDisplaysByEvent ( )
override

Definition at line 102 of file EcalDisplaysByEvent.cc.

102 {}

Member Function Documentation

void EcalDisplaysByEvent::analyze ( edm::Event const &  iEvent,
edm::EventSetup const &  iSetup 
)
overrideprivatevirtual

Implements edm::one::EDAnalyzerBase.

Definition at line 116 of file EcalDisplaysByEvent.cc.

References caloTopo_, canvasNames_, deleteEvtByEvtHists(), drawHistos(), EBdigisHandle, ebDigiToken_, ebRecHitToken_, EEdigisHandle, eeDigiToken_, eeRecHitToken_, edm::EventID::event(), FEDsAndDCCHeaders_, fileService, edm::Event::getByToken(), edm::EventSetup::getData(), histoCanvasNames_, histoCanvasNamesVector, edm::EventBase::id(), initEvtByEvtHists(), listEBChannels, listEEChannels, TFileService::make(), makeDigiGraphs_, makeHistos(), naiveEvtNum_, names, rawDataToken_, edm::EventID::run(), runNum_, selectHits(), and topologyToken_.

116  {
117  // get the headers
118  // (one header for each supermodule)
120  iEvent.getByToken(rawDataToken_, DCCHeaders);
121 
122  for (EcalRawDataCollection::const_iterator headerItr = DCCHeaders->begin(); headerItr != DCCHeaders->end();
123  ++headerItr) {
124  FEDsAndDCCHeaders_[headerItr->id() + 600] = *headerItr;
125  }
126 
127  int ievt = iEvent.id().event();
128  naiveEvtNum_++;
129 
130  if (runNum_ == -1) {
131  runNum_ = iEvent.id().run();
132  canvasNames_ = fileService->make<TTree>("canvasNames", "Names of written canvases");
133  names = new std::vector<string>();
134  canvasNames_->Branch("names", "vector<string>", &names);
135 
136  histoCanvasNames_ = fileService->make<TTree>("histoCanvasNames", "Names of written canvases with histos");
137  histoCanvasNamesVector = new std::vector<string>();
138  histoCanvasNames_->Branch("histoCanvasNamesVector", "vector<string>", &histoCanvasNamesVector);
139  }
140 
141  //We only want the 3x3's for this event...
142  listEBChannels.clear();
143  listEEChannels.clear();
144 
145  //Get hits, digis, caloTopology from event/eventSetup
146  caloTopo_ = &iSetup.getData(topologyToken_);
147 
150  iEvent.getByToken(ebRecHitToken_, EBhits);
151  iEvent.getByToken(eeRecHitToken_, EEhits);
152  iEvent.getByToken(ebDigiToken_, EBdigisHandle);
153  iEvent.getByToken(eeDigiToken_, EEdigisHandle);
154 
155  // Initialize histos for this event
157 
158  bool hasEBdigis = false;
159  bool hasEEdigis = false;
160  if (!EBdigisHandle->empty())
161  hasEBdigis = true;
162  if (!EEdigisHandle->empty())
163  hasEEdigis = true;
164 
165  // Produce the digi graphs
166  if (makeDigiGraphs_) {
167  if (hasEBdigis) //if event has digis, it should have hits
168  selectHits(EBhits, ievt);
169  if (hasEEdigis)
170  selectHits(EEhits, ievt);
171  }
172 
173  // Produce the histos
174  if (hasEBdigis) {
176  makeHistos(EBhits);
177  }
178  if (hasEEdigis) {
180  makeHistos(EEhits);
181  }
182 
183  if (hasEBdigis || hasEEdigis)
184  drawHistos();
185 
187 }
std::set< EBDetId > listEBChannels
edm::Handle< EEDigiCollection > EEdigisHandle
const edm::EDGetTokenT< EcalRawDataCollection > rawDataToken_
std::vector< std::string > * names
std::vector< T >::const_iterator const_iterator
std::map< int, EcalDCCHeaderBlock > FEDsAndDCCHeaders_
T * make(const Args &...args) const
make new ROOT object
Definition: TFileService.h:64
std::set< EEDetId > listEEChannels
std::vector< std::string > * histoCanvasNamesVector
const edm::EDGetTokenT< EcalRecHitCollection > ebRecHitToken_
int iEvent
Definition: GenABIO.cc:224
const edm::EDGetTokenT< EEDigiCollection > eeDigiToken_
void selectHits(edm::Handle< EcalRecHitCollection > hits, int ievt)
const edm::EDGetTokenT< EcalRecHitCollection > eeRecHitToken_
static edm::Service< TFileService > fileService
const CaloTopology * caloTopo_
void makeHistos(edm::Handle< EBDigiCollection > ebDigis)
edm::Handle< EBDigiCollection > EBdigisHandle
const edm::ESGetToken< CaloTopology, CaloTopologyRecord > topologyToken_
void initEvtByEvtHists(int naiveEvtNum_, int ievt)
const edm::EDGetTokenT< EBDigiCollection > ebDigiToken_
void EcalDisplaysByEvent::beginRun ( edm::Run const &  ,
edm::EventSetup const &  c 
)
overrideprivate

Definition at line 109 of file EcalDisplaysByEvent.cc.

References ecalElectronicsMap_, ecalMappingToken_, and edm::EventSetup::getData().

109  {
111 }
const edm::EventSetup & c
const EcalElectronicsMapping * ecalElectronicsMap_
bool getData(T &iHolder) const
Definition: EventSetup.h:128
const edm::ESGetToken< EcalElectronicsMapping, EcalMappingRcd > ecalMappingToken_
void EcalDisplaysByEvent::deleteEvtByEvtHists ( )
private

Definition at line 660 of file EcalDisplaysByEvent.cc.

References digiOccupancyCanvas_, digiOccupancyCoarseCanvas_, digiOccupancyEB_, digiOccupancyEBcoarse_, digiOccupancyEEM_, digiOccupancyEEMcoarse_, digiOccupancyEEP_, digiOccupancyEEPcoarse_, energyCanvas_, energyEB_, energyEEM_, energyEEP_, energyMapCanvas_, energyMapCoarseCanvas_, energyMapEB_, energyMapEBcoarse_, energyMapEEM_, energyMapEEMcoarse_, energyMapEEP_, energyMapEEPcoarse_, recHitOccupancyCanvas_, recHitOccupancyCoarseCanvas_, recHitOccupancyEB_, recHitOccupancyEBcoarse_, recHitOccupancyEEM_, recHitOccupancyEEMcoarse_, recHitOccupancyEEP_, recHitOccupancyEEPcoarse_, timingCanvas_, timingEB_, timingEEM_, timingEEP_, timingMapCanvas_, timingMapEB_, timingMapEEM_, and timingMapEEP_.

Referenced by analyze().

660  {
661  delete timingEB_;
662  delete timingEEM_;
663  delete timingEEP_;
664  delete timingMapEB_;
665  delete timingMapEEM_;
666  delete timingMapEEP_;
667  delete timingCanvas_;
668  delete timingMapCanvas_;
669  delete energyEB_;
670  delete energyEEM_;
671  delete energyEEP_;
672  delete energyMapEB_;
673  delete energyMapEEM_;
674  delete energyMapEEP_;
675  delete energyMapEBcoarse_;
676  delete energyMapEEMcoarse_;
677  delete energyMapEEPcoarse_;
678  delete energyCanvas_;
679  delete energyMapCanvas_;
680  delete energyMapCoarseCanvas_;
681  delete recHitOccupancyEB_;
682  delete recHitOccupancyEEP_;
683  delete recHitOccupancyEEM_;
687  delete digiOccupancyEB_;
688  delete digiOccupancyEEM_;
689  delete digiOccupancyEEP_;
690  delete digiOccupancyEBcoarse_;
693  delete recHitOccupancyCanvas_;
695  delete digiOccupancyCanvas_;
697 }
TCanvas * digiOccupancyCoarseCanvas_
TCanvas * recHitOccupancyCoarseCanvas_
void EcalDisplaysByEvent::drawCanvas ( TCanvas *  canvas,
TH1F *  hist1,
TH1F *  hist2,
TH1F *  hist3 
)
private

Definition at line 879 of file EcalDisplaysByEvent.cc.

References histoCanvasNamesVector.

Referenced by drawHistos(), and endJob().

879  {
880  canvas->Divide(1, 2);
881  canvas->cd(1)->Divide(2, 1);
882  canvas->cd(1)->cd(1);
883  hist1->Draw();
884  canvas->cd(2);
885  hist2->Draw();
886  canvas->cd(1)->cd(2);
887  hist3->Draw();
888  histoCanvasNamesVector->push_back(canvas->GetName());
889  canvas->SetCanvasSize(500, 500);
890  canvas->SetFixedAspectRatio(true);
891  canvas->Write();
892 }
def canvas
Definition: svgfig.py:482
std::vector< std::string > * histoCanvasNamesVector
void EcalDisplaysByEvent::drawCanvas ( TCanvas *  canvas,
TH2F *  hist1,
TH2F *  hist2,
TH2F *  hist3 
)
private

Definition at line 894 of file EcalDisplaysByEvent.cc.

References drawEELines(), and histoCanvasNamesVector.

894  {
895  canvas->Divide(1, 2);
896  canvas->cd(1)->Divide(2, 1);
897  // EEM
898  canvas->cd(1)->cd(1);
899  hist1->Draw("colz");
900  drawEELines();
901  // EB
902  canvas->cd(2);
903  hist2->Draw("colz");
904  hist2->GetXaxis()->SetNdivisions(-18);
905  hist2->GetYaxis()->SetNdivisions(2);
906  canvas->GetPad(2)->SetGridx(1);
907  canvas->GetPad(2)->SetGridy(1);
908  // EEP
909  canvas->cd(1)->cd(2);
910  hist3->Draw("colz");
911  drawEELines();
912  histoCanvasNamesVector->push_back(canvas->GetName());
913  canvas->SetCanvasSize(500, 500);
914  canvas->SetFixedAspectRatio(true);
915  canvas->Write();
916 }
def canvas
Definition: svgfig.py:482
std::vector< std::string > * histoCanvasNamesVector
void EcalDisplaysByEvent::drawCanvas ( TCanvas *  canvas,
TH3F *  hist1,
TH3F *  hist2,
TH3F *  hist3 
)
private

Definition at line 918 of file EcalDisplaysByEvent.cc.

References drawEELines(), drawTimingErrors(), histoCanvasNamesVector, and timingMapCoarseCanvas_.

918  {
920  canvas->cd();
921  TProfile2D* profile2 = (TProfile2D*)hist2->Project3DProfile("yx");
922  profile2->Draw("colz");
923  drawTimingErrors(profile2);
924  } else {
925  canvas->Divide(1, 2);
926  canvas->cd(1)->Divide(2, 1);
927  // EEM
928  canvas->cd(1)->cd(1);
929  TProfile2D* profile1 = (TProfile2D*)hist1->Project3DProfile("yx");
930  profile1->Draw("colz");
931  drawEELines();
932  // EB
933  canvas->cd(2);
934  TProfile2D* profile2 = (TProfile2D*)hist2->Project3DProfile("yx");
935  profile2->Draw("colz");
936  profile2->GetXaxis()->SetNdivisions(-18);
937  profile2->GetYaxis()->SetNdivisions(2);
938  canvas->GetPad(2)->SetGridx(1);
939  canvas->GetPad(2)->SetGridy(1);
940  // EEP
941  canvas->cd(1)->cd(2);
942  TProfile2D* profile3 = (TProfile2D*)hist3->Project3DProfile("yx");
943  profile3->Draw("colz");
944  drawEELines();
945  }
946  histoCanvasNamesVector->push_back(canvas->GetName());
947  canvas->SetCanvasSize(500, 500);
948  canvas->SetFixedAspectRatio(true);
949  canvas->Write();
950 }
void drawTimingErrors(TProfile2D *profile)
def canvas
Definition: svgfig.py:482
std::vector< std::string > * histoCanvasNamesVector
void EcalDisplaysByEvent::drawEELines ( )
private

Definition at line 989 of file EcalDisplaysByEvent.cc.

References mps_fire::i, and cmsLHEtoEOSManager::l.

Referenced by drawCanvas().

989  {
990  int ixSectorsEE[202] = {
991  61, 61, 60, 60, 59, 59, 58, 58, 57, 57, 55, 55, 45, 45, 43, 43, 42, 42, 41, 41, 40, 40, 39, 39, 40, 40,
992  41, 41, 42, 42, 43, 43, 45, 45, 55, 55, 57, 57, 58, 58, 59, 59, 60, 60, 61, 61, 0, 100, 100, 97, 97, 95,
993  95, 92, 92, 87, 87, 85, 85, 80, 80, 75, 75, 65, 65, 60, 60, 40, 40, 35, 35, 25, 25, 20, 20, 15, 15, 13,
994  13, 8, 8, 5, 5, 3, 3, 0, 0, 3, 3, 5, 5, 8, 8, 13, 13, 15, 15, 20, 20, 25, 25, 35, 35, 40,
995  40, 60, 60, 65, 65, 75, 75, 80, 80, 85, 85, 87, 87, 92, 92, 95, 95, 97, 97, 100, 100, 0, 61, 65, 65, 70,
996  70, 80, 80, 90, 90, 92, 0, 61, 65, 65, 90, 90, 97, 0, 57, 60, 60, 65, 65, 70, 70, 75, 75, 80, 80, 0,
997  50, 50, 0, 43, 40, 40, 35, 35, 30, 30, 25, 25, 20, 20, 0, 39, 35, 35, 10, 10, 3, 0, 39, 35, 35, 30,
998  30, 20, 20, 10, 10, 8, 0, 45, 45, 40, 40, 35, 35, 0, 55, 55, 60, 60, 65, 65};
999 
1000  int iySectorsEE[202] = {50, 55, 55, 57, 57, 58, 58, 59, 59, 60, 60, 61, 61, 60, 60, 59, 59, 58, 58, 57, 57, 55, 55,
1001  45, 45, 43, 43, 42, 42, 41, 41, 40, 40, 39, 39, 40, 40, 41, 41, 42, 42, 43, 43, 45, 45, 50,
1002  0, 50, 60, 60, 65, 65, 75, 75, 80, 80, 85, 85, 87, 87, 92, 92, 95, 95, 97, 97, 100, 100, 97,
1003  97, 95, 95, 92, 92, 87, 87, 85, 85, 80, 80, 75, 75, 65, 65, 60, 60, 40, 40, 35, 35, 25, 25,
1004  20, 20, 15, 15, 13, 13, 8, 8, 5, 5, 3, 3, 0, 0, 3, 3, 5, 5, 8, 8, 13, 13, 15,
1005  15, 20, 20, 25, 25, 35, 35, 40, 40, 50, 0, 45, 45, 40, 40, 35, 35, 30, 30, 25, 25, 0, 50,
1006  50, 55, 55, 60, 60, 0, 60, 60, 65, 65, 70, 70, 75, 75, 85, 85, 87, 0, 61, 100, 0, 60, 60,
1007  65, 65, 70, 70, 75, 75, 85, 85, 87, 0, 50, 50, 55, 55, 60, 60, 0, 45, 45, 40, 40, 35, 35,
1008  30, 30, 25, 25, 0, 39, 30, 30, 15, 15, 5, 0, 39, 30, 30, 15, 15, 5};
1009 
1010  for (int i = 0; i < 202; i++) {
1011  ixSectorsEE[i] += 1;
1012  iySectorsEE[i] += 1;
1013  // std::cout << i << " " << ixSectorsEE[i] << " " << iySectorsEE[i] << std::endl;
1014  }
1015 
1016  TLine l;
1017  l.SetLineWidth(1);
1018  for (int i = 0; i < 201; i = i + 1) {
1019  if ((ixSectorsEE[i] != 1 || iySectorsEE[i] != 1) && (ixSectorsEE[i + 1] != 1 || iySectorsEE[i + 1] != 1)) {
1020  l.DrawLine(ixSectorsEE[i], iySectorsEE[i], ixSectorsEE[i + 1], iySectorsEE[i + 1]);
1021  }
1022  }
1023 }
void EcalDisplaysByEvent::drawHistos ( )
private

Definition at line 854 of file EcalDisplaysByEvent.cc.

References digiOccupancyCanvas_, digiOccupancyCoarseCanvas_, digiOccupancyEB_, digiOccupancyEBcoarse_, digiOccupancyEEM_, digiOccupancyEEMcoarse_, digiOccupancyEEP_, digiOccupancyEEPcoarse_, drawCanvas(), energyCanvas_, energyEB_, energyEEM_, energyEEP_, energyMapCanvas_, energyMapCoarseCanvas_, energyMapEB_, energyMapEBcoarse_, energyMapEEM_, energyMapEEMcoarse_, energyMapEEP_, energyMapEEPcoarse_, makeEnergyHistos_, makeOccupancyHistos_, makeTimingHistos_, recHitOccupancyCanvas_, recHitOccupancyCoarseCanvas_, recHitOccupancyEB_, recHitOccupancyEBcoarse_, recHitOccupancyEEM_, recHitOccupancyEEMcoarse_, recHitOccupancyEEP_, recHitOccupancyEEPcoarse_, timingCanvas_, timingEB_, timingEEM_, timingEEP_, timingMapCanvas_, timingMapEB_, timingMapEEM_, and timingMapEEP_.

Referenced by analyze().

854  {
855  if (makeTimingHistos_) {
856  // Put the timing canvas together
858  // drawCanvas(timingMapCoarseCanvas_,timingMapEEMCoarse_,timingMapEBCoarse_,timingMapEEPCoarse_);
860  }
861  if (makeEnergyHistos_) {
862  // Put the energy canvas together
864  // Put the energy map canvas together
867  }
868  if (makeOccupancyHistos_) {
869  // Put the occupancy canvas together
871  drawCanvas(
873  // And the same for the digis
876  }
877 }
void drawCanvas(TCanvas *canvas, TH1F *hist1, TH1F *hist2, TH1F *hist3)
TCanvas * digiOccupancyCoarseCanvas_
TCanvas * recHitOccupancyCoarseCanvas_
void EcalDisplaysByEvent::drawTimingErrors ( TProfile2D *  profile)
private

Definition at line 952 of file EcalDisplaysByEvent.cc.

References mps_fire::i, dqmiolumiharvest::j, and cuy::tex.

Referenced by drawCanvas().

952  {
953  int nxb = profile->GetNbinsX();
954  int nyb = profile->GetNbinsY();
955  char tempErr[200];
956  for (int i = 0; i != nxb; ++i) {
957  for (int j = 0; j != nyb; ++j) {
958  int xb = i + 1;
959  int yb = j + 1;
960  // std::cout << "xb: " << xb << "\tyb: " << yb << std::endl;
961  double xcorr = profile->GetBinCenter(xb);
962  double ycorr = profile->GetBinCenter(yb);
963  sprintf(tempErr, "%0.2f", profile->GetBinError(xb, yb));
964  int nBin = profile->GetBin(xb, yb, 0);
965  int nBinEntries = (int)profile->GetBinEntries(nBin);
966  if (nBinEntries != 0) {
967  TLatex* tex = new TLatex(xcorr, ycorr, tempErr);
968  tex->SetTextAlign(23);
969  tex->SetTextSize(42);
970  tex->SetTextSize(0.025);
971  tex->SetLineWidth(2);
972  tex->Draw();
973  delete tex;
974  }
975  sprintf(tempErr, "%i", nBinEntries);
976  if (nBinEntries != 0) {
977  TLatex* tex = new TLatex(xcorr, ycorr, tempErr);
978  tex->SetTextAlign(21);
979  tex->SetTextFont(42);
980  tex->SetTextSize(0.025);
981  tex->SetLineWidth(2);
982  tex->Draw();
983  delete tex;
984  }
985  }
986  }
987 }
tuple tex
Definition: cuy.py:773
void EcalDisplaysByEvent::endJob ( void  )
overrideprivatevirtual

Reimplemented from edm::one::EDAnalyzerBase.

Definition at line 526 of file EcalDisplaysByEvent.cc.

References canvasNames_, digiOccupancyCanvasAll_, digiOccupancyCoarseCanvasAll_, digiOccupancyEBAll_, digiOccupancyEBcoarseAll_, digiOccupancyEEMAll_, digiOccupancyEEMcoarseAll_, digiOccupancyEEPAll_, digiOccupancyEEPcoarseAll_, drawCanvas(), energyCanvasAll_, energyEBAll_, energyEEMAll_, energyEEPAll_, energyMapCanvasAll_, energyMapCoarseCanvasAll_, energyMapEBAll_, energyMapEBcoarseAll_, energyMapEEMAll_, energyMapEEMcoarseAll_, energyMapEEPAll_, energyMapEEPcoarseAll_, unpackBuffers-CaloStage1::feds, histoCanvasNames_, intToString(), maskedChannels_, maskedFEDs_, recHitOccupancyCanvasAll_, recHitOccupancyCoarseCanvasAll_, recHitOccupancyEBAll_, recHitOccupancyEBcoarseAll_, recHitOccupancyEEMAll_, recHitOccupancyEEMcoarseAll_, recHitOccupancyEEPAll_, recHitOccupancyEEPcoarseAll_, runNum_, seedFrequencyMap_, AlCaHLTBitMon_QueryRunRegistry::string, timingCanvasAll_, timingEBAll_, timingEEMAll_, timingEEPAll_, timingMapCanvasAll_, timingMapEBAll_, timingMapEEMAll_, and timingMapEEPAll_.

Referenced by o2olib.O2ORunMgr::executeJob().

526  {
527  //All-event canvases
539  drawCanvas(
541 
542  if (runNum_ != -1) {
543  canvasNames_->Fill();
544  histoCanvasNames_->Fill();
545  }
546 
547  string frequencies = "";
548  for (std::map<std::string, int>::const_iterator itr = seedFrequencyMap_.begin(); itr != seedFrequencyMap_.end();
549  ++itr) {
550  if (itr->second > 1) {
551  frequencies += itr->first;
552  frequencies += " Frequency: ";
553  frequencies += intToString(itr->second);
554  frequencies += "\n";
555  }
556  }
557  LogWarning("EcalDisplaysByEvent") << "Found seeds with frequency > 1: "
558  << "\n\n"
559  << frequencies;
560 
561  std::string channels;
562  for (std::vector<int>::const_iterator itr = maskedChannels_.begin(); itr != maskedChannels_.end(); ++itr) {
563  channels += intToString(*itr);
564  channels += ",";
565  }
566 
568  for (std::vector<int>::const_iterator itr = maskedFEDs_.begin(); itr != maskedFEDs_.end(); ++itr) {
569  feds += intToString(*itr);
570  feds += ",";
571  }
572 
573  LogWarning("EcalDisplaysByEvent") << "Masked channels are: " << channels;
574  LogWarning("EcalDisplaysByEvent") << "Masked FEDs are: " << feds << " and that is all!";
575 }
std::vector< int > maskedChannels_
TCanvas * digiOccupancyCoarseCanvasAll_
void drawCanvas(TCanvas *canvas, TH1F *hist1, TH1F *hist2, TH1F *hist3)
std::vector< int > maskedFEDs_
TCanvas * recHitOccupancyCoarseCanvasAll_
std::string intToString(int num)
std::map< std::string, int > seedFrequencyMap_
Log< level::Warning, false > LogWarning
void EcalDisplaysByEvent::endRun ( edm::Run const &  ,
edm::EventSetup const &  c 
)
overrideprivate

Definition at line 113 of file EcalDisplaysByEvent.cc.

113 {}
std::string EcalDisplaysByEvent::floatToString ( float  num)
private

Definition at line 584 of file EcalDisplaysByEvent.cc.

Referenced by selectDigi().

584  {
585  using namespace std;
586  ostringstream myStream;
587  myStream << num << flush;
588  return (myStream.str()); //returns the string form of the stringstream object
589 }
int EcalDisplaysByEvent::getEEIndex ( EcalElectronicsId  elecId)
private

Definition at line 356 of file EcalDisplaysByEvent.cc.

References EcalElectronicsId::dccId(), EcalElectronicsId::stripId(), EcalElectronicsId::towerId(), and EcalElectronicsId::xtalId().

Referenced by selectDigi(), and selectHits().

356  {
357  int FEDid = 600 + elecId.dccId();
358  return 10000 * FEDid + 100 * elecId.towerId() + 5 * (elecId.stripId() - 1) + elecId.xtalId();
359 }
int xtalId() const
get the channel id
int stripId() const
get the tower id
int towerId() const
get the tower id
int dccId() const
get the DCC (Ecal Local DCC value not global one) id
TCanvas * EcalDisplaysByEvent::init2DEcalCanvas ( std::string  canvasName)
private

Definition at line 849 of file EcalDisplaysByEvent.cc.

References svgfig::canvas().

Referenced by initAllEventHistos(), and initEvtByEvtHists().

849  {
850  TCanvas* canvas = new TCanvas(canvasTitle.c_str(), canvasTitle.c_str(), 300, 60, 500, 200);
851  return canvas;
852 }
def canvas
Definition: svgfig.py:482
TH2F * EcalDisplaysByEvent::init2DEcalHist ( std::string  histTypeName,
int  subDet 
)
private

Definition at line 809 of file EcalDisplaysByEvent.cc.

References EB_COARSE, EB_FINE, EEM_COARSE, EEM_FINE, EEP_COARSE, gpuVertexFinder::hist, PixelPluginsPhase0_cfi::isBarrel, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by initAllEventHistos(), and initEvtByEvtHists().

809  {
810  TH2F* hist;
811  bool isBarrel = (subDet == EB_FINE || subDet == EB_COARSE) ? true : false;
812  bool isCoarse = (subDet == EB_COARSE || subDet == EEM_COARSE || subDet == EEP_COARSE) ? true : false;
813  bool isEEM = (subDet == EEM_FINE || subDet == EEM_COARSE) ? true : false;
814  std::string histName = histTypeName;
815  std::string histTitle = histTypeName;
816  if (isBarrel) {
817  histName = histName + "EB";
818  histTitle = histTitle + " EB";
819  if (isCoarse) {
820  histName = histName + "Coarse";
821  histTitle = histTitle + " Coarse;iphi;ieta";
822  double ttEtaBins[36] = {-85, -80, -75, -70, -65, -60, -55, -50, -45, -40, -35, -30, -25, -20, -15, -10, -5, 0,
823  1, 6, 11, 16, 21, 26, 31, 36, 41, 46, 51, 56, 61, 66, 71, 76, 81, 86};
824  hist = new TH2F(histName.c_str(), histTitle.c_str(), 360 / 5, 1, 361., 35, ttEtaBins);
825  } else {
826  histTitle = histTitle + ";iphi;ieta";
827  hist = new TH2F(histName.c_str(), histTitle.c_str(), 360, 1, 361., 172, -86, 86);
828  }
829  } else {
830  if (isEEM) {
831  histName = histName + "EEM";
832  histTitle = histTitle + " EEM";
833  } else {
834  histName = histName + "EEP";
835  histTitle = histTitle + " EEP";
836  }
837  if (isCoarse) {
838  histName = histName + "Coarse";
839  histTitle = histTitle + " Coarse;ix;iy";
840  hist = new TH2F(histName.c_str(), histTitle.c_str(), 20, 1, 101, 20, 1, 101);
841  } else {
842  histTitle = histTitle + ";ix;iy";
843  hist = new TH2F(histName.c_str(), histTitle.c_str(), 100, 1, 101, 100, 1, 101);
844  }
845  }
846  return hist;
847 }
__shared__ Hist hist
TH3F * EcalDisplaysByEvent::init3DEcalHist ( std::string  histTypeName,
int  dubDet 
)
private

Definition at line 749 of file EcalDisplaysByEvent.cc.

References EB_COARSE, EB_FINE, EEM_COARSE, EEM_FINE, EEP_COARSE, gpuVertexFinder::hist, mps_fire::i, PixelPluginsPhase0_cfi::isBarrel, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by initAllEventHistos(), and initEvtByEvtHists().

749  {
750  TH3F* hist;
751  bool isBarrel = (subDet == EB_FINE || subDet == EB_COARSE) ? true : false;
752  bool isCoarse = (subDet == EB_COARSE || subDet == EEM_COARSE || subDet == EEP_COARSE) ? true : false;
753  bool isEEM = (subDet == EEM_FINE || subDet == EEM_COARSE) ? true : false;
754  std::string histName = histTypeName;
755  std::string histTitle = histTypeName;
756  double ttEtaBins[36] = {-85, -80, -75, -70, -65, -60, -55, -50, -45, -40, -35, -30, -25, -20, -15, -10, -5, 0,
757  1, 6, 11, 16, 21, 26, 31, 36, 41, 46, 51, 56, 61, 66, 71, 76, 81, 86};
758  double modEtaBins[10] = {-85, -65, -45, -25, 0, 1, 26, 46, 66, 86};
759  double ttPhiBins[73];
760  double modPhiBins[19];
761  double timingBins[79];
762  for (int i = 0; i < 79; ++i) {
763  timingBins[i] = 6 - 7. + double(i) * 14. / 78.;
764  if (i < 73) {
765  ttPhiBins[i] = 1 + 5 * i;
766  if (i < 19) {
767  modPhiBins[i] = 1 + 20 * i;
768  }
769  }
770  }
771 
772  if (isBarrel) {
773  histName = histName + "EB";
774  histTitle = histTitle + " EB";
775  if (isCoarse) {
776  histName = histName + "Coarse";
777  histTitle = histTitle + " by Module Nominal value = 6;iphi;ieta ";
778  hist = new TH3F(histName.c_str(), histTitle.c_str(), 18, modPhiBins, 9, modEtaBins, 78, timingBins);
779  } else {
780  histTitle = histTitle + " by TT Nominal value = 6;iphi;ieta";
781  hist = new TH3F(histName.c_str(), histTitle.c_str(), 360 / 5, ttPhiBins, 35, ttEtaBins, 78, timingBins);
782  }
783  } else {
784  double ttXBins[21];
785  double ttYBins[21];
786  for (int i = 0; i != 21; ++i) {
787  ttXBins[i] = 1 + 5 * i;
788  ttYBins[i] = 1 + 5 * i;
789  }
790  if (isEEM) {
791  histName = histName + "EEM";
792  histTitle = histTitle + " EEM";
793  } else {
794  histName = histName + "EEP";
795  histTitle = histTitle + " EEP";
796  }
797  if (isCoarse) {
798  histName = histName + "Coarse";
799  histTitle = histTitle + " by Module Nominal value = 6;ix;iy";
800  hist = new TH3F(histName.c_str(), histTitle.c_str(), 20, ttXBins, 20, ttYBins, 78, timingBins);
801  } else {
802  histTitle = histTitle + " by TT Nominal value = 6;ix;iy";
803  hist = new TH3F(histName.c_str(), histTitle.c_str(), 20, ttXBins, 20, ttYBins, 78, timingBins);
804  }
805  }
806  return hist;
807 }
__shared__ Hist hist
void EcalDisplaysByEvent::initAllEventHistos ( )
private

Definition at line 699 of file EcalDisplaysByEvent.cc.

References digiOccupancyCanvasAll_, digiOccupancyCoarseCanvasAll_, digiOccupancyEBAll_, digiOccupancyEBcoarseAll_, digiOccupancyEEMAll_, digiOccupancyEEMcoarseAll_, digiOccupancyEEPAll_, digiOccupancyEEPcoarseAll_, EB_COARSE, EB_FINE, EEM_COARSE, EEM_FINE, EEP_COARSE, EEP_FINE, energyCanvasAll_, energyEBAll_, energyEEMAll_, energyEEPAll_, energyMapCanvasAll_, energyMapCoarseCanvasAll_, energyMapEBAll_, energyMapEBcoarseAll_, energyMapEEMAll_, energyMapEEMcoarseAll_, energyMapEEPAll_, energyMapEEPcoarseAll_, histRangeMax_, histRangeMin_, init2DEcalCanvas(), init2DEcalHist(), init3DEcalHist(), recHitOccupancyCanvasAll_, recHitOccupancyCoarseCanvasAll_, recHitOccupancyEBAll_, recHitOccupancyEBcoarseAll_, recHitOccupancyEEMAll_, recHitOccupancyEEMcoarseAll_, recHitOccupancyEEPAll_, recHitOccupancyEEPcoarseAll_, timingCanvasAll_, timingEBAll_, timingEEMAll_, timingEEPAll_, timingMapCanvasAll_, timingMapEBAll_, timingMapEBCoarseAll_, timingMapEEMAll_, timingMapEEMCoarseAll_, timingMapEEPAll_, and timingMapEEPCoarseAll_.

Referenced by EcalDisplaysByEvent().

699  {
700  string canvasTitle = "Timing_AllEvents";
701  timingEBAll_ = new TH1F("timeForAllFedsEBAll", "timeForAllFeds;Relative Time (1 clock = 25ns)", 78, -7, 7);
702  timingEEMAll_ = new TH1F("timeForAllFedsEEMAll", "timeForAllFeds_EEM;Relative Time (1 clock = 25ns)", 78, -7, 7);
703  timingEEPAll_ = new TH1F("timeForAllFedsEEPAll", "timeForAllFeds_EEP;Relative Time (1 clock = 25ns)", 78, -7, 7);
704  timingCanvasAll_ = new TCanvas(canvasTitle.c_str(), canvasTitle.c_str(), 300, 60, 500, 200);
705  timingMapEBAll_ = init3DEcalHist("TimingMapA", EB_FINE);
706  timingMapEEMAll_ = init3DEcalHist("TimingMapA", EEM_FINE);
707  timingMapEEPAll_ = init3DEcalHist("TimingMapA", EEP_FINE);
708  timingMapCanvasAll_ = init2DEcalCanvas("TimingMap_AllEvents");
712  //timingMapCoarseCanvasAll_ = init2DEcalCanvas("TimingMapCoarse_AllEvents");
713  energyEBAll_ = new TH1F("energyEBAllEvents", "Energy for EB Feds (GeV)", 200, histRangeMin_, histRangeMax_);
714  energyEEMAll_ = new TH1F("energyEEMAllEvents", "Energy for EEM Feds (GeV)", 200, histRangeMin_, 10.0);
715  energyEEPAll_ = new TH1F("energyEEPAllEvents", "Energy for EEP Feds (GeV)", 200, histRangeMin_, 10.0);
716  canvasTitle = "Energy_AllEvents";
717  energyCanvasAll_ = new TCanvas(canvasTitle.c_str(), canvasTitle.c_str(), 300, 60, 500, 200);
718 
719  // Energy map hists
720  energyMapEBAll_ = init2DEcalHist("EnergyMapA", EB_FINE);
723  energyMapEEMAll_ = init2DEcalHist("EnergyMapA", EEM_FINE);
725  energyMapEEPAll_ = init2DEcalHist("EnergyMapA", EEP_FINE);
726  energyMapCanvasAll_ = init2DEcalCanvas("EnergyMap_AllEvents");
727  energyMapCoarseCanvasAll_ = init2DEcalCanvas("EnergyMapCoarse_AllEvents");
728  // RecHit Occupancy
729  recHitOccupancyEBAll_ = init2DEcalHist("RecHitOccupancyA", EB_FINE);
732  recHitOccupancyEEMAll_ = init2DEcalHist("RecHitOccupancyA", EEM_FINE);
734  recHitOccupancyEEPAll_ = init2DEcalHist("RecHitOccupancyA", EEP_FINE);
735  recHitOccupancyCanvasAll_ = init2DEcalCanvas("RecHitOccupancy_AllEvents");
736  recHitOccupancyCoarseCanvasAll_ = init2DEcalCanvas("RecHitOccupancyCoarse_AllEvents");
737 
738  //DigiOccupancy
739  digiOccupancyEBAll_ = init2DEcalHist("DigiOccupancyA", EB_FINE);
742  digiOccupancyEEMAll_ = init2DEcalHist("DigiOccupancyA", EEM_FINE);
744  digiOccupancyEEPAll_ = init2DEcalHist("DigiOccupancyA", EEP_FINE);
745  digiOccupancyCanvasAll_ = init2DEcalCanvas("DigiOccupancy_AllEvents");
746  digiOccupancyCoarseCanvasAll_ = init2DEcalCanvas("DigiOccupancyCoarse_AllEvents");
747 }
TH2F * init2DEcalHist(std::string histTypeName, int subDet)
TCanvas * digiOccupancyCoarseCanvasAll_
TCanvas * recHitOccupancyCoarseCanvasAll_
TH3F * init3DEcalHist(std::string histTypeName, int dubDet)
TCanvas * init2DEcalCanvas(std::string canvasName)
void EcalDisplaysByEvent::initEvtByEvtHists ( int  naiveEvtNum_,
int  ievt 
)
private

Definition at line 603 of file EcalDisplaysByEvent.cc.

References digiOccupancyCanvas_, digiOccupancyCoarseCanvas_, digiOccupancyEB_, digiOccupancyEBcoarse_, digiOccupancyEEM_, digiOccupancyEEMcoarse_, digiOccupancyEEP_, digiOccupancyEEPcoarse_, EB_COARSE, EB_FINE, EEM_COARSE, EEM_FINE, EEP_COARSE, EEP_FINE, energyCanvas_, energyEB_, energyEEM_, energyEEP_, energyMapCanvas_, energyMapCoarseCanvas_, energyMapEB_, energyMapEBcoarse_, energyMapEEM_, energyMapEEMcoarse_, energyMapEEP_, energyMapEEPcoarse_, histRangeMax_, histRangeMin_, init2DEcalCanvas(), init2DEcalHist(), init3DEcalHist(), intToString(), makeEnergyHistos_, makeOccupancyHistos_, makeTimingHistos_, recHitOccupancyCanvas_, recHitOccupancyCoarseCanvas_, recHitOccupancyEB_, recHitOccupancyEBcoarse_, recHitOccupancyEEM_, recHitOccupancyEEMcoarse_, recHitOccupancyEEP_, recHitOccupancyEEPcoarse_, timingCanvas_, timingEB_, timingEEM_, timingEEP_, timingMapCanvas_, timingMapEB_, timingMapEEM_, timingMapEEMCoarse_, timingMapEEP_, and timingMapEEPCoarse_.

Referenced by analyze().

603  {
604  string lastPart = intToString(naiveEvtNum_) + "_LV1a" + intToString(ievt);
605  if (makeTimingHistos_) {
606  string canvasTitle = "Timing_Event" + lastPart;
607  timingEB_ = new TH1F("timeForAllFedsEB", "timeForAllFeds;Relative Time (1 clock = 25ns)", 78, -7, 7);
608  timingEEM_ = new TH1F("timeForAllFedsEEM", "timeForAllFeds_EEM;Relative Time (1 clock = 25ns)", 78, -7, 7);
609  timingEEP_ = new TH1F("timeForAllFedsEEP", "timeForAllFeds_EEP;Relative Time (1 clock = 25ns)", 78, -7, 7);
610  timingCanvas_ = new TCanvas(canvasTitle.c_str(), canvasTitle.c_str(), 300, 60, 500, 200);
611  timingMapEB_ = init3DEcalHist("TimingMap", EB_FINE);
612  timingMapEEM_ = init3DEcalHist("TimingMap", EEM_FINE);
613  timingMapEEP_ = init3DEcalHist("TimingMap", EEP_FINE);
614  timingMapCanvas_ = init2DEcalCanvas("TimingMap_Event" + lastPart);
615  //timingMapEBCoarse_ = init3DEcalHist("TimingMap", EB_COARSE);
618  //timingMapCoarseCanvas_ = init2DEcalCanvas("TimingMapCoarse_Event"+lastPart);
619  }
620  if (makeEnergyHistos_) {
621  energyEB_ = new TH1F("energyEB", "Energy for EB Feds (GeV)", 200, histRangeMin_, histRangeMax_);
622  energyEEM_ = new TH1F("energyEEM", "Energy for EEM Feds (GeV)", 200, histRangeMin_, 10.0);
623  energyEEP_ = new TH1F("energyEEP", "Energy for EEP Feds (GeV)", 200, histRangeMin_, 10.0);
624  string canvasTitle = "Energy_Event" + lastPart;
625  energyCanvas_ = new TCanvas(canvasTitle.c_str(), canvasTitle.c_str(), 300, 60, 500, 200);
626 
627  // Energy map hists
628  energyMapEB_ = init2DEcalHist("EnergyMap", EB_FINE);
631  energyMapEEM_ = init2DEcalHist("EnergyMap", EEM_FINE);
633  energyMapEEP_ = init2DEcalHist("EnergyMap", EEP_FINE);
634  energyMapCanvas_ = init2DEcalCanvas("EnergyMap_Event" + lastPart);
635  energyMapCoarseCanvas_ = init2DEcalCanvas("EnergyMapCoarse_Event" + lastPart);
636  }
637  if (makeOccupancyHistos_) {
638  // RecHit Occupancy
639  recHitOccupancyEB_ = init2DEcalHist("RecHitOccupancy", EB_FINE);
640  recHitOccupancyEBcoarse_ = init2DEcalHist("RecHitOccupancy", EB_COARSE);
642  recHitOccupancyEEM_ = init2DEcalHist("RecHitOccupancy", EEM_FINE);
644  recHitOccupancyEEP_ = init2DEcalHist("RecHitOccupancy", EEP_FINE);
645  recHitOccupancyCanvas_ = init2DEcalCanvas("RecHitOccupancy_Event" + lastPart);
646  recHitOccupancyCoarseCanvas_ = init2DEcalCanvas("RecHitOccupancyCoarse_Event" + lastPart);
647 
648  //DigiOccupancy
649  digiOccupancyEB_ = init2DEcalHist("DigiOccupancy", EB_FINE);
650  digiOccupancyEBcoarse_ = init2DEcalHist("DigiOccupancy", EB_COARSE);
652  digiOccupancyEEM_ = init2DEcalHist("DigiOccupancy", EEM_FINE);
654  digiOccupancyEEP_ = init2DEcalHist("DigiOccupancy", EEP_FINE);
655  digiOccupancyCanvas_ = init2DEcalCanvas("DigiOccupancy_Event" + lastPart);
656  digiOccupancyCoarseCanvas_ = init2DEcalCanvas("DigiOccupancyCoarse_Event" + lastPart);
657  }
658 }
TH2F * init2DEcalHist(std::string histTypeName, int subDet)
std::string intToString(int num)
TCanvas * digiOccupancyCoarseCanvas_
TH3F * init3DEcalHist(std::string histTypeName, int dubDet)
TCanvas * init2DEcalCanvas(std::string canvasName)
TCanvas * recHitOccupancyCoarseCanvas_
void EcalDisplaysByEvent::initHists ( int  FED)
private

Definition at line 592 of file EcalDisplaysByEvent.cc.

References fedMap_, FEDsAndTimingHists_, fileService, EcalFedMap::getSliceFromFed(), intToString(), and TFileService::make().

Referenced by makeHistos().

592  {
593  using namespace std;
594 
595  string title1 = "Jitter for ";
596  title1.append(fedMap_->getSliceFromFed(FED));
597  string name1 = "JitterFED";
598  name1.append(intToString(FED));
599  TH1F* timingHist = fileService->make<TH1F>(name1.c_str(), title1.c_str(), 150, -7, 7);
600  FEDsAndTimingHists_[FED] = timingHist;
601 }
T * make(const Args &...args) const
make new ROOT object
Definition: TFileService.h:64
std::string getSliceFromFed(int)
Definition: EcalFedMap.cc:86
std::map< int, TH1F * > FEDsAndTimingHists_
static edm::Service< TFileService > fileService
std::string intToString(int num)
std::string EcalDisplaysByEvent::intToString ( int  num)
private

Definition at line 577 of file EcalDisplaysByEvent.cc.

Referenced by endJob(), initEvtByEvtHists(), initHists(), selectDigi(), and selectHits().

577  {
578  using namespace std;
579  ostringstream myStream;
580  myStream << num << flush;
581  return (myStream.str()); //returns the string form of the stringstream object
582 }
void EcalDisplaysByEvent::makeHistos ( edm::Handle< EBDigiCollection ebDigis)
private

Definition at line 361 of file EcalDisplaysByEvent.cc.

References edm::DataFrameContainer::begin(), digiOccupancyEB_, digiOccupancyEBAll_, digiOccupancyEBcoarse_, digiOccupancyEBcoarseAll_, edm::DataFrameContainer::end(), EBDetId::ieta(), EBDetId::iphi(), makeOccupancyHistos_, and edm::Handle< T >::product().

Referenced by analyze().

361  {
362  const EBDigiCollection* ebDigis = ebDigiHandle.product();
363  for (EBDigiCollection::const_iterator digiItr = ebDigis->begin(); digiItr != ebDigis->end(); ++digiItr) {
364  EBDetId digiId = digiItr->id();
365  int ieta = digiId.ieta();
366  int iphi = digiId.iphi();
367  digiOccupancyEBAll_->Fill(iphi, ieta);
368  digiOccupancyEBcoarseAll_->Fill(iphi, ieta);
369  if (makeOccupancyHistos_) {
370  digiOccupancyEB_->Fill(iphi, ieta);
371  digiOccupancyEBcoarse_->Fill(iphi, ieta);
372  }
373  }
374 }
const_iterator begin() const
The iterator returned can not safely be used across threads.
int iphi() const
get the crystal iphi
Definition: EBDetId.h:51
int ieta() const
get the crystal ieta
Definition: EBDetId.h:49
T const * product() const
Definition: Handle.h:70
boost::transform_iterator< IterHelp, boost::counting_iterator< int > > const_iterator
const_iterator end() const
void EcalDisplaysByEvent::makeHistos ( edm::Handle< EEDigiCollection eeDigis)
private

Definition at line 376 of file EcalDisplaysByEvent.cc.

References edm::DataFrameContainer::begin(), EcalElectronicsId::dccId(), digiOccupancyEEM_, digiOccupancyEEMAll_, digiOccupancyEEMcoarse_, digiOccupancyEEMcoarseAll_, digiOccupancyEEP_, digiOccupancyEEPAll_, digiOccupancyEEPcoarse_, digiOccupancyEEPcoarseAll_, ecalElectronicsMap_, HGCalRawToDigi_cfi::eeDigis, edm::DataFrameContainer::end(), EcalElectronicsMapping::getElectronicsId(), EEDetId::ix(), EEDetId::iy(), makeOccupancyHistos_, and edm::Handle< T >::product().

376  {
377  const EEDigiCollection* eeDigis = eeDigiHandle.product();
378  for (EEDigiCollection::const_iterator digiItr = eeDigis->begin(); digiItr != eeDigis->end(); ++digiItr) {
379  DetId det = digiItr->id();
381  size_t FEDid = 600 + elecId.dccId();
382  bool isEEM = false;
383  if (FEDid < 610)
384  isEEM = true;
385  EEDetId digiId = digiItr->id();
386  int ieta = digiId.iy();
387  int iphi = digiId.ix();
388  if (isEEM) {
389  digiOccupancyEEMAll_->Fill(iphi, ieta);
390  digiOccupancyEEMcoarseAll_->Fill(iphi, ieta);
391  if (makeOccupancyHistos_) {
392  digiOccupancyEEMcoarse_->Fill(iphi, ieta);
393  digiOccupancyEEM_->Fill(iphi, ieta);
394  }
395  } else {
396  digiOccupancyEEPAll_->Fill(iphi, ieta);
397  digiOccupancyEEPcoarseAll_->Fill(iphi, ieta);
398  if (makeOccupancyHistos_) {
399  digiOccupancyEEP_->Fill(iphi, ieta);
400  digiOccupancyEEPcoarse_->Fill(iphi, ieta);
401  }
402  }
403  }
404 }
int ix() const
Definition: EEDetId.h:77
Ecal readout channel identification [32:20] Unused (so far) [19:13] DCC id [12:6] tower [5:3] strip [...
const EcalElectronicsMapping * ecalElectronicsMap_
const_iterator begin() const
The iterator returned can not safely be used across threads.
EcalElectronicsId getElectronicsId(const DetId &id) const
Get the electronics id for this det id.
int iy() const
Definition: EEDetId.h:83
int dccId() const
get the DCC (Ecal Local DCC value not global one) id
Definition: DetId.h:17
T const * product() const
Definition: Handle.h:70
boost::transform_iterator< IterHelp, boost::counting_iterator< int > > const_iterator
const_iterator end() const
void EcalDisplaysByEvent::makeHistos ( edm::Handle< EcalRecHitCollection hits)
private

Definition at line 406 of file EcalDisplaysByEvent.cc.

References allFedsTimingHist_, EcalElectronicsId::dccId(), ecalElectronicsMap_, relval_parameters_module::energy, EcalRecHit::energy(), energyEB_, energyEBAll_, energyEEM_, energyEEMAll_, energyEEP_, energyEEPAll_, energyMapEB_, energyMapEBAll_, energyMapEBcoarse_, energyMapEBcoarseAll_, energyMapEEM_, energyMapEEMAll_, energyMapEEMcoarse_, energyMapEEMcoarseAll_, energyMapEEP_, energyMapEEPAll_, energyMapEEPcoarse_, energyMapEEPcoarseAll_, FEDsAndTimingHists_, EcalElectronicsMapping::getElectronicsId(), EcalRecHit::id(), initHists(), PixelPluginsPhase0_cfi::isBarrel, makeEnergyHistos_, makeOccupancyHistos_, makeTimingHistos_, minTimingAmp_, minTimingEnergyEB_, minTimingEnergyEE_, recHitOccupancyEB_, recHitOccupancyEBAll_, recHitOccupancyEBcoarse_, recHitOccupancyEBcoarseAll_, recHitOccupancyEEM_, recHitOccupancyEEMAll_, recHitOccupancyEEMcoarse_, recHitOccupancyEEMcoarseAll_, recHitOccupancyEEP_, recHitOccupancyEEPAll_, recHitOccupancyEEPcoarse_, recHitOccupancyEEPcoarseAll_, EcalRecHit::time(), timingEB_, timingEBAll_, timingEEM_, timingEEMAll_, timingEEP_, timingEEPAll_, timingMapEB_, timingMapEBAll_, timingMapEBCoarseAll_, timingMapEEM_, timingMapEEMAll_, timingMapEEMCoarseAll_, timingMapEEP_, timingMapEEPAll_, and timingMapEEPCoarseAll_.

406  {
407  for (EcalRecHitCollection::const_iterator hitItr = hits->begin(); hitItr != hits->end(); ++hitItr) {
408  EcalRecHit hit = (*hitItr);
409  DetId det = hit.id();
411  int FEDid = 600 + elecId.dccId();
412  bool isBarrel = true;
413  bool isEEM = false;
414  if (FEDid < 610 || FEDid > 645) {
415  isBarrel = false;
416  if (FEDid < 610)
417  isEEM = true;
418  }
419  int iphi = isBarrel ? ((EBDetId)det).iphi() : ((EEDetId)det).ix();
420  int ieta = isBarrel ? ((EBDetId)det).ieta() : ((EEDetId)det).iy();
421  float energy = hit.energy();
422  float time = hit.time();
423 
424  // Fill energy histos
425  if (makeEnergyHistos_) {
426  if (isBarrel) {
427  energyEB_->Fill(energy);
428  energyMapEB_->Fill(iphi, ieta, energy);
429  energyMapEBcoarse_->Fill(iphi, ieta, energy);
430  } else if (isEEM) {
431  energyEEM_->Fill(energy);
432  energyMapEEM_->Fill(iphi, ieta, energy);
433  energyMapEEMcoarse_->Fill(iphi, ieta, energy);
434  } else {
435  energyEEP_->Fill(energy);
436  energyMapEEP_->Fill(iphi, ieta, energy);
437  energyMapEEPcoarse_->Fill(iphi, ieta, energy);
438  }
439  }
440  // Fill occupancy histos
441  if (makeOccupancyHistos_) {
442  if (isBarrel) {
443  recHitOccupancyEB_->Fill(iphi, ieta);
444  recHitOccupancyEBcoarse_->Fill(iphi, ieta);
445  } else if (isEEM) {
446  recHitOccupancyEEM_->Fill(iphi, ieta);
447  recHitOccupancyEEMcoarse_->Fill(iphi, ieta);
448  } else {
449  recHitOccupancyEEP_->Fill(iphi, ieta);
450  recHitOccupancyEEPcoarse_->Fill(iphi, ieta);
451  }
452  }
453 
454  // Fill timing histos
455  if (makeTimingHistos_) {
456  if (isBarrel) {
457  timingEB_->Fill(time);
458  if (energy > minTimingEnergyEB_) {
459  timingMapEB_->Fill(iphi, ieta, time);
460  //timingMapEBCoarse_->Fill(iphi,ieta,time);
461  }
462  } else if (isEEM) {
463  timingEEM_->Fill(time);
464  if (energy > minTimingEnergyEE_) {
465  timingMapEEM_->Fill(iphi, ieta, time);
466  //timingMapEEMCoarse_->Fill(iphi,ieta,time);
467  }
468  } else {
469  timingEEP_->Fill(time);
470  if (energy > minTimingEnergyEE_) {
471  timingMapEEP_->Fill(iphi, ieta, time);
472  //timingMapEEPCoarse_->Fill(iphi,ieta,time);
473  }
474  }
475  }
476 
477  //All events
478  if (isBarrel) {
479  energyEBAll_->Fill(energy);
480  energyMapEBAll_->Fill(iphi, ieta, energy);
481  energyMapEBcoarseAll_->Fill(iphi, ieta, energy);
482  recHitOccupancyEBAll_->Fill(iphi, ieta);
483  recHitOccupancyEBcoarseAll_->Fill(iphi, ieta);
484  timingEBAll_->Fill(time);
485  if (energy > minTimingEnergyEB_) {
486  timingMapEBAll_->Fill(iphi, ieta, time);
487  timingMapEBCoarseAll_->Fill(iphi, ieta, time);
488  }
489  } else if (isEEM) {
490  energyEEMAll_->Fill(energy);
491  energyMapEEMAll_->Fill(iphi, ieta, energy);
492  energyMapEEMcoarseAll_->Fill(iphi, ieta, energy);
493  recHitOccupancyEEMAll_->Fill(iphi, ieta);
494  recHitOccupancyEEMcoarseAll_->Fill(iphi, ieta);
495  timingEEMAll_->Fill(time);
496  if (energy > minTimingEnergyEE_) {
497  timingMapEEMAll_->Fill(iphi, ieta, time);
498  timingMapEEMCoarseAll_->Fill(iphi, ieta, time);
499  }
500  } else {
501  energyEEPAll_->Fill(energy);
502  energyMapEEPAll_->Fill(iphi, ieta, energy);
503  energyMapEEPcoarseAll_->Fill(iphi, ieta, energy);
504  recHitOccupancyEEPAll_->Fill(iphi, ieta);
505  recHitOccupancyEEPcoarseAll_->Fill(iphi, ieta);
506  timingEEPAll_->Fill(time);
507  if (energy > minTimingEnergyEE_) {
508  timingMapEEPAll_->Fill(iphi, ieta, time);
509  timingMapEEPCoarseAll_->Fill(iphi, ieta, time);
510  }
511  }
512  // Fill FED-by-FED timing histos (all events)
513  TH1F* timingHist = FEDsAndTimingHists_[FEDid];
514  if (timingHist == nullptr) {
515  initHists(FEDid);
516  timingHist = FEDsAndTimingHists_[FEDid];
517  }
518  if (energy > minTimingAmp_) {
519  timingHist->Fill(hit.time());
520  allFedsTimingHist_->Fill(hit.time());
521  }
522  }
523 }
Ecal readout channel identification [32:20] Unused (so far) [19:13] DCC id [12:6] tower [5:3] strip [...
const EcalElectronicsMapping * ecalElectronicsMap_
std::vector< EcalRecHit >::const_iterator const_iterator
const double minTimingEnergyEB_
float time() const
Definition: EcalRecHit.h:70
EcalElectronicsId getElectronicsId(const DetId &id) const
Get the electronics id for this det id.
float energy() const
Definition: EcalRecHit.h:68
std::map< int, TH1F * > FEDsAndTimingHists_
int dccId() const
get the DCC (Ecal Local DCC value not global one) id
Definition: DetId.h:17
DetId id() const
get the id
Definition: EcalRecHit.h:77
const double minTimingEnergyEE_
TGraph * EcalDisplaysByEvent::selectDigi ( DetId  det,
int  ievt 
)
private

Definition at line 255 of file EcalDisplaysByEvent.cc.

References abscissa, EcalMGPASample::adc(), crysAndAmplitudesMap_, EcalElectronicsId::dccId(), DetId::det(), isotrackApplyRegressor::df, EBdigisHandle, DetId::Ecal, ecalElectronicsMap_, EEdigisHandle, relval_parameters_module::energy, fedMap_, FEDsAndDCCHeaders_, fileService, floatToString(), ecalLiteDTU::gainId(), EcalMGPASample::gainId(), gainRatio, getEEIndex(), EcalElectronicsMapping::getElectronicsId(), EcalFedMap::getSliceFromFed(), mps_fire::i, intToString(), PixelPluginsPhase0_cfi::isBarrel, TFileService::make(), naiveEvtNum_, mergeVDriftHistosByStation::name, ordinate, EcalCondDBWriter_cfi::pedestal, EcalDataFrame::sample(), EcalDataFrame::size(), and runGCPTkAlMap::title.

Referenced by selectHits().

255  {
256  int emptyY[10];
257  for (int i = 0; i < 10; i++)
258  emptyY[i] = 0;
259  TGraph* emptyGraph = fileService->make<TGraph>(10, abscissa, emptyY);
260  emptyGraph->SetTitle("NOT ECAL");
261 
262  //If the DetId is not from Ecal, return
263  if (thisDet.det() != DetId::Ecal)
264  return emptyGraph;
265 
266  emptyGraph->SetTitle("NO DIGIS");
267  //find digi we need -- can't get find() to work; need DataFrame(DetId det) to work?
269  int FEDid = 600 + elecId.dccId();
270  bool isBarrel = true;
271  if (FEDid < 610 || FEDid > 645)
272  isBarrel = false;
273  int cryIndex = isBarrel ? ((EBDetId)thisDet).hashedIndex() : getEEIndex(elecId);
274  int ic = isBarrel ? ((EBDetId)thisDet).ic() : cryIndex;
275 
276  string sliceName = fedMap_->getSliceFromFed(FEDid);
278  if (isBarrel) {
280  while (digiItr != EBdigisHandle->end() && ((*digiItr).id() != (EBDetId)thisDet)) {
281  ++digiItr;
282  }
283  if (digiItr == EBdigisHandle->end()) {
284  //LogWarning("EcalDisplaysByEvent") << "Cannot find digi for ic:" << ic
285  // << " FED:" << FEDid << " evt:" << naiveEvtNum_;
286  return emptyGraph;
287  } else
288  df = *digiItr;
289  } else {
291  while (digiItr != EEdigisHandle->end() && ((*digiItr).id() != (EEDetId)thisDet)) {
292  ++digiItr;
293  }
294  if (digiItr == EEdigisHandle->end()) {
295  //LogWarning("EcalDisplaysByEvent") << "Cannot find digi for ic:" << ic
296  // << " FED:" << FEDid << " evt:" << naiveEvtNum_;
297  return emptyGraph;
298  } else
299  df = *digiItr;
300  }
301 
302  int gainId = FEDsAndDCCHeaders_[FEDid].getMgpaGain();
303  int gainHuman;
304  if (gainId == 1)
305  gainHuman = 12;
306  else if (gainId == 2)
307  gainHuman = 6;
308  else if (gainId == 3)
309  gainHuman = 1;
310  else
311  gainHuman = -1;
312 
313  double pedestal = 200;
314 
315  emptyGraph->SetTitle("FIRST TWO SAMPLES NOT GAIN12");
316  if (df.sample(0).gainId() != 1 || df.sample(1).gainId() != 1)
317  return emptyGraph; //goes to the next digi
318  else {
319  ordinate[0] = df.sample(0).adc();
320  ordinate[1] = df.sample(1).adc();
321  pedestal = (double)(ordinate[0] + ordinate[1]) / (double)2;
322  }
323 
324  for (int i = 0; i < df.size(); ++i) {
325  if (df.sample(i).gainId() != 0)
326  ordinate[i] = (int)(pedestal + (df.sample(i).adc() - pedestal) * gainRatio[df.sample(i).gainId() - 1]);
327  else
328  ordinate[i] = 49152; //Saturation of gain1
329  }
330 
331  TGraph* oneGraph = fileService->make<TGraph>(10, abscissa, ordinate);
332  string name = "Graph_ev" + intToString(naiveEvtNum_) + "_ic" + intToString(ic) + "_FED" + intToString(FEDid);
333  string gainString = (gainId == 1) ? "Free" : intToString(gainHuman);
334  string title = "Event" + intToString(naiveEvtNum_) + "_lv1a" + intToString(ievt) + "_ic" + intToString(ic) + "_" +
335  sliceName + "_gain" + gainString;
336 
337  float energy = 0;
338  map<int, float>::const_iterator itr;
339  itr = crysAndAmplitudesMap_.find(cryIndex);
340  if (itr != crysAndAmplitudesMap_.end()) {
341  //edm::LogWarning("EcalDisplaysByEvent")<< "itr->second(ampli)="<< itr->second;
342  energy = (float)itr->second;
343  }
344  //else
345  //edm::LogWarning("EcalDisplaysByEvent") << "cry " << ic << "not found in ampMap";
346 
347  title += "_Energy" + floatToString(round(energy * 1000));
348 
349  oneGraph->SetTitle(title.c_str());
350  oneGraph->SetName(name.c_str());
351  oneGraph->GetXaxis()->SetTitle("sample");
352  oneGraph->GetYaxis()->SetTitle("ADC");
353  return oneGraph;
354 }
edm::Handle< EEDigiCollection > EEdigisHandle
Ecal readout channel identification [32:20] Unused (so far) [19:13] DCC id [12:6] tower [5:3] strip [...
const EcalElectronicsMapping * ecalElectronicsMap_
int getEEIndex(EcalElectronicsId elecId)
EcalMGPASample sample(int i) const
Definition: EcalDataFrame.h:29
std::map< int, EcalDCCHeaderBlock > FEDsAndDCCHeaders_
T * make(const Args &...args) const
make new ROOT object
Definition: TFileService.h:64
int gainId() const
get the gainId (2 bits)
int size() const
Definition: EcalDataFrame.h:26
std::string getSliceFromFed(int)
Definition: EcalFedMap.cc:86
EcalElectronicsId getElectronicsId(const DetId &id) const
Get the electronics id for this det id.
static edm::Service< TFileService > fileService
int dccId() const
get the DCC (Ecal Local DCC value not global one) id
std::string intToString(int num)
static float gainRatio[3]
constexpr int gainId(sample_type sample)
get the gainId (2 bits)
edm::Handle< EBDigiCollection > EBdigisHandle
boost::transform_iterator< IterHelp, boost::counting_iterator< int > > const_iterator
std::string floatToString(float num)
std::map< int, float > crysAndAmplitudesMap_
int adc() const
get the ADC sample (12 bits)
void EcalDisplaysByEvent::selectHits ( edm::Handle< EcalRecHitCollection hits,
int  ievt 
)
private

Definition at line 189 of file EcalDisplaysByEvent.cc.

References caloTopo_, timingPdfMaker::can, crysAndAmplitudesMap_, EcalElectronicsId::dccId(), ecalElectronicsMap_, EcalRecHit::energy(), spr::find(), getEEIndex(), EcalElectronicsMapping::getElectronicsId(), CaloTopology::getSubdetectorTopology(), CaloNavigator< T, TOPO >::home(), mps_fire::i, EcalRecHit::id(), intToString(), PixelPluginsPhase0_cfi::isBarrel, dqmiolumiharvest::j, maskedChannels_, maskedFEDs_, naiveEvtNum_, mergeVDriftHistosByStation::name, names, CaloNavigator< T, TOPO >::offsetBy(), mps_fire::result, fileCollector::seed, seedCrys_, seedFrequencyMap_, selectDigi(), side_, threshold_, and runGCPTkAlMap::title.

Referenced by analyze().

189  {
190  for (EcalRecHitCollection::const_iterator hitItr = hits->begin(); hitItr != hits->end(); ++hitItr) {
191  EcalRecHit hit = (*hitItr);
192  DetId det = hit.id();
194  int FEDid = 600 + elecId.dccId();
195  bool isBarrel = true;
196  if (FEDid < 610 || FEDid > 645)
197  isBarrel = false;
198  int cryIndex = isBarrel ? ((EBDetId)det).hashedIndex() : getEEIndex(elecId);
199  int ic = isBarrel ? ((EBDetId)det).ic() : getEEIndex(elecId);
200 
201  float ampli = hit.energy();
202 
203  vector<int>::iterator result;
204  result = find(maskedFEDs_.begin(), maskedFEDs_.end(), FEDid);
205  if (result != maskedFEDs_.end()) {
206  //LogWarning("EcalDisplaysByEvent") << "skipping uncalRecHit for FED " << FEDid << " ; amplitude " << ampli;
207  continue;
208  }
209  result = find(maskedChannels_.begin(), maskedChannels_.end(), cryIndex);
210  if (result != maskedChannels_.end()) {
211  //LogWarning("EcalDisplaysByEvent") << "skipping uncalRecHit for channel: " << cryIndex << " in fed: " << FEDid << " with amplitude " << ampli ;
212  continue;
213  }
214  bool cryIsInList = false;
215  result = find(seedCrys_.begin(), seedCrys_.end(), cryIndex);
216  if (result != seedCrys_.end())
217  cryIsInList = true;
218 
219  // Either we must have a user-requested cry (in which case there is no amplitude selection)
220  // Or we pick all crys that pass the amplitude cut (in which case there is no fixed crystal selection)
221  if (cryIsInList || (seedCrys_.empty() && ampli > threshold_)) {
222  // We have a winner!
223  crysAndAmplitudesMap_[cryIndex] = ampli;
224  string name = "Digis_Event" + intToString(naiveEvtNum_) + "_ic" + intToString(ic) + "_FED" + intToString(FEDid);
225  string title = "Digis";
226  string seed = "ic" + intToString(ic) + "_FED" + intToString(FEDid);
227  int freq = 1;
228  pair<map<string, int>::iterator, bool> pair = seedFrequencyMap_.insert(make_pair(seed, freq));
229  if (!pair.second) {
230  ++(pair.first->second);
231  }
232 
233  //TODO: move this also to TFileService
234  TCanvas can(name.c_str(), title.c_str(), 200, 50, 900, 900);
235  can.Divide(side_, side_);
236  TGraph* myGraph;
237 
239  //Now put each graph in one by one
240  for (int j = side_ / 2; j >= -side_ / 2; --j) {
241  for (int i = -side_ / 2; i <= side_ / 2; ++i) {
242  cursor.home();
243  cursor.offsetBy(i, j);
244  can.cd(i + 1 + side_ / 2 + side_ * (1 - j));
245  myGraph = selectDigi(*cursor, ievt);
246  myGraph->Draw("A*");
247  }
248  }
249  can.Write();
250  names->push_back(name);
251  }
252  }
253 }
std::vector< int > maskedChannels_
Ecal readout channel identification [32:20] Unused (so far) [19:13] DCC id [12:6] tower [5:3] strip [...
std::vector< std::string > * names
const EcalElectronicsMapping * ecalElectronicsMap_
int getEEIndex(EcalElectronicsId elecId)
std::vector< EcalRecHit >::const_iterator const_iterator
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:19
tuple result
Definition: mps_fire.py:311
EcalElectronicsId getElectronicsId(const DetId &id) const
Get the electronics id for this det id.
T offsetBy(int deltaX, int deltaY) const
Free movement of arbitray steps.
Definition: CaloNavigator.h:66
std::vector< int > maskedFEDs_
float energy() const
Definition: EcalRecHit.h:68
const CaloTopology * caloTopo_
int dccId() const
get the DCC (Ecal Local DCC value not global one) id
std::string intToString(int num)
void home() const
move the navigator back to the starting point
Definition: CaloNavigator.h:96
Definition: DetId.h:17
DetId id() const
get the id
Definition: EcalRecHit.h:77
const CaloSubdetectorTopology * getSubdetectorTopology(const DetId &id) const
access the subdetector Topology for the given subdetector directly
Definition: CaloTopology.cc:17
std::map< std::string, int > seedFrequencyMap_
std::vector< int > seedCrys_
TGraph * selectDigi(DetId det, int ievt)
std::map< int, float > crysAndAmplitudesMap_

Member Data Documentation

int EcalDisplaysByEvent::abscissa[10]
private

Definition at line 131 of file EcalDisplaysByEvent.h.

Referenced by EcalDisplaysByEvent(), and selectDigi().

TH1F* EcalDisplaysByEvent::allFedsTimingHist_
private

Definition at line 148 of file EcalDisplaysByEvent.h.

Referenced by EcalDisplaysByEvent(), and makeHistos().

const CaloTopology* EcalDisplaysByEvent::caloTopo_
private

Definition at line 237 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and selectHits().

TTree* EcalDisplaysByEvent::canvasNames_
private

Definition at line 233 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and endJob().

std::map<int, float> EcalDisplaysByEvent::crysAndAmplitudesMap_
private

Definition at line 144 of file EcalDisplaysByEvent.h.

Referenced by selectDigi(), and selectHits().

TCanvas* EcalDisplaysByEvent::digiOccupancyCanvas_
private

Definition at line 186 of file EcalDisplaysByEvent.h.

Referenced by deleteEvtByEvtHists(), drawHistos(), and initEvtByEvtHists().

TCanvas* EcalDisplaysByEvent::digiOccupancyCanvasAll_
private

Definition at line 228 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

TCanvas* EcalDisplaysByEvent::digiOccupancyCoarseCanvas_
private

Definition at line 187 of file EcalDisplaysByEvent.h.

Referenced by deleteEvtByEvtHists(), drawHistos(), and initEvtByEvtHists().

TCanvas* EcalDisplaysByEvent::digiOccupancyCoarseCanvasAll_
private

Definition at line 229 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

TH2F* EcalDisplaysByEvent::digiOccupancyEB_
private
TH2F* EcalDisplaysByEvent::digiOccupancyEBAll_
private

Definition at line 210 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::digiOccupancyEBcoarse_
private
TH2F* EcalDisplaysByEvent::digiOccupancyEBcoarseAll_
private

Definition at line 211 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::digiOccupancyEEM_
private
TH2F* EcalDisplaysByEvent::digiOccupancyEEMAll_
private

Definition at line 212 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::digiOccupancyEEMcoarse_
private
TH2F* EcalDisplaysByEvent::digiOccupancyEEMcoarseAll_
private

Definition at line 213 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::digiOccupancyEEP_
private
TH2F* EcalDisplaysByEvent::digiOccupancyEEPAll_
private

Definition at line 214 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::digiOccupancyEEPcoarse_
private
TH2F* EcalDisplaysByEvent::digiOccupancyEEPcoarseAll_
private

Definition at line 215 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

const edm::InputTag EcalDisplaysByEvent::EBDigis_
private

Definition at line 99 of file EcalDisplaysByEvent.h.

edm::Handle<EBDigiCollection> EcalDisplaysByEvent::EBdigisHandle
private

Definition at line 103 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and selectDigi().

const edm::EDGetTokenT<EBDigiCollection> EcalDisplaysByEvent::ebDigiToken_
private

Definition at line 109 of file EcalDisplaysByEvent.h.

Referenced by analyze().

const edm::InputTag EcalDisplaysByEvent::EBRecHitCollection_
private

Definition at line 97 of file EcalDisplaysByEvent.h.

const edm::EDGetTokenT<EcalRecHitCollection> EcalDisplaysByEvent::ebRecHitToken_
private

Definition at line 107 of file EcalDisplaysByEvent.h.

Referenced by analyze().

const EcalElectronicsMapping* EcalDisplaysByEvent::ecalElectronicsMap_
private

Definition at line 236 of file EcalDisplaysByEvent.h.

Referenced by beginRun(), makeHistos(), selectDigi(), and selectHits().

const edm::ESGetToken<EcalElectronicsMapping, EcalMappingRcd> EcalDisplaysByEvent::ecalMappingToken_
private

Definition at line 112 of file EcalDisplaysByEvent.h.

Referenced by beginRun().

const edm::InputTag EcalDisplaysByEvent::EEDigis_
private

Definition at line 100 of file EcalDisplaysByEvent.h.

edm::Handle<EEDigiCollection> EcalDisplaysByEvent::EEdigisHandle
private

Definition at line 104 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and selectDigi().

const edm::EDGetTokenT<EEDigiCollection> EcalDisplaysByEvent::eeDigiToken_
private

Definition at line 110 of file EcalDisplaysByEvent.h.

Referenced by analyze().

const edm::InputTag EcalDisplaysByEvent::EERecHitCollection_
private

Definition at line 98 of file EcalDisplaysByEvent.h.

const edm::EDGetTokenT<EcalRecHitCollection> EcalDisplaysByEvent::eeRecHitToken_
private

Definition at line 108 of file EcalDisplaysByEvent.h.

Referenced by analyze().

TCanvas* EcalDisplaysByEvent::energyCanvas_
private

Definition at line 181 of file EcalDisplaysByEvent.h.

Referenced by deleteEvtByEvtHists(), drawHistos(), and initEvtByEvtHists().

TCanvas* EcalDisplaysByEvent::energyCanvasAll_
private

Definition at line 223 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

TH1F* EcalDisplaysByEvent::energyEB_
private
TH1F* EcalDisplaysByEvent::energyEBAll_
private

Definition at line 195 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH1F* EcalDisplaysByEvent::energyEEM_
private
TH1F* EcalDisplaysByEvent::energyEEMAll_
private

Definition at line 196 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH1F* EcalDisplaysByEvent::energyEEP_
private
TH1F* EcalDisplaysByEvent::energyEEPAll_
private

Definition at line 197 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TCanvas* EcalDisplaysByEvent::energyMapCanvas_
private

Definition at line 182 of file EcalDisplaysByEvent.h.

Referenced by deleteEvtByEvtHists(), drawHistos(), and initEvtByEvtHists().

TCanvas* EcalDisplaysByEvent::energyMapCanvasAll_
private

Definition at line 224 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

TCanvas* EcalDisplaysByEvent::energyMapCoarseCanvas_
private

Definition at line 183 of file EcalDisplaysByEvent.h.

Referenced by deleteEvtByEvtHists(), drawHistos(), and initEvtByEvtHists().

TCanvas* EcalDisplaysByEvent::energyMapCoarseCanvasAll_
private

Definition at line 225 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

TH2F* EcalDisplaysByEvent::energyMapEB_
private
TH2F* EcalDisplaysByEvent::energyMapEBAll_
private

Definition at line 198 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::energyMapEBcoarse_
private
TH2F* EcalDisplaysByEvent::energyMapEBcoarseAll_
private

Definition at line 199 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::energyMapEEM_
private
TH2F* EcalDisplaysByEvent::energyMapEEMAll_
private

Definition at line 200 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::energyMapEEMcoarse_
private
TH2F* EcalDisplaysByEvent::energyMapEEMcoarseAll_
private

Definition at line 201 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::energyMapEEP_
private
TH2F* EcalDisplaysByEvent::energyMapEEPAll_
private

Definition at line 202 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::energyMapEEPcoarse_
private
TH2F* EcalDisplaysByEvent::energyMapEEPcoarseAll_
private

Definition at line 203 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

EcalFedMap* EcalDisplaysByEvent::fedMap_
private

Definition at line 235 of file EcalDisplaysByEvent.h.

Referenced by EcalDisplaysByEvent(), initHists(), and selectDigi().

std::map<int, EcalDCCHeaderBlock> EcalDisplaysByEvent::FEDsAndDCCHeaders_
private

Definition at line 145 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and selectDigi().

std::map<int, TH1F*> EcalDisplaysByEvent::FEDsAndTimingHists_
private

Definition at line 143 of file EcalDisplaysByEvent.h.

Referenced by initHists(), and makeHistos().

edm::Service< TFileService > EcalDisplaysByEvent::fileService
staticprivate

Definition at line 135 of file EcalDisplaysByEvent.h.

Referenced by analyze(), EcalDisplaysByEvent(), initHists(), and selectDigi().

float EcalDisplaysByEvent::gainRatio = {1., 2., 12.}
staticprivate

Definition at line 134 of file EcalDisplaysByEvent.h.

Referenced by selectDigi().

const edm::InputTag EcalDisplaysByEvent::headerProducer_
private

Definition at line 101 of file EcalDisplaysByEvent.h.

TTree* EcalDisplaysByEvent::histoCanvasNames_
private

Definition at line 234 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and endJob().

std::vector<std::string>* EcalDisplaysByEvent::histoCanvasNamesVector
private

Definition at line 138 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and drawCanvas().

const double EcalDisplaysByEvent::histRangeMax_
private

Definition at line 124 of file EcalDisplaysByEvent.h.

Referenced by initAllEventHistos(), and initEvtByEvtHists().

const double EcalDisplaysByEvent::histRangeMin_
private

Definition at line 123 of file EcalDisplaysByEvent.h.

Referenced by initAllEventHistos(), and initEvtByEvtHists().

std::set<EBDetId> EcalDisplaysByEvent::listEBChannels
private

Definition at line 128 of file EcalDisplaysByEvent.h.

Referenced by analyze().

std::set<EEDetId> EcalDisplaysByEvent::listEEChannels
private

Definition at line 129 of file EcalDisplaysByEvent.h.

Referenced by analyze().

const bool EcalDisplaysByEvent::makeDigiGraphs_
private

Definition at line 119 of file EcalDisplaysByEvent.h.

Referenced by analyze().

const bool EcalDisplaysByEvent::makeEnergyHistos_
private

Definition at line 121 of file EcalDisplaysByEvent.h.

Referenced by drawHistos(), initEvtByEvtHists(), and makeHistos().

const bool EcalDisplaysByEvent::makeOccupancyHistos_
private

Definition at line 122 of file EcalDisplaysByEvent.h.

Referenced by drawHistos(), initEvtByEvtHists(), and makeHistos().

const bool EcalDisplaysByEvent::makeTimingHistos_
private

Definition at line 120 of file EcalDisplaysByEvent.h.

Referenced by drawHistos(), initEvtByEvtHists(), and makeHistos().

std::vector<int> EcalDisplaysByEvent::maskedChannels_
private

Definition at line 139 of file EcalDisplaysByEvent.h.

Referenced by EcalDisplaysByEvent(), endJob(), and selectHits().

std::vector<std::string> EcalDisplaysByEvent::maskedEBs_
private

Definition at line 142 of file EcalDisplaysByEvent.h.

Referenced by EcalDisplaysByEvent().

std::vector<int> EcalDisplaysByEvent::maskedFEDs_
private

Definition at line 140 of file EcalDisplaysByEvent.h.

Referenced by EcalDisplaysByEvent(), endJob(), and selectHits().

const double EcalDisplaysByEvent::minTimingAmp_
private

Definition at line 118 of file EcalDisplaysByEvent.h.

Referenced by makeHistos().

const double EcalDisplaysByEvent::minTimingEnergyEB_
private

Definition at line 125 of file EcalDisplaysByEvent.h.

Referenced by makeHistos().

const double EcalDisplaysByEvent::minTimingEnergyEE_
private

Definition at line 126 of file EcalDisplaysByEvent.h.

Referenced by makeHistos().

int EcalDisplaysByEvent::naiveEvtNum_
private

Definition at line 239 of file EcalDisplaysByEvent.h.

Referenced by analyze(), EcalDisplaysByEvent(), selectDigi(), and selectHits().

std::vector<std::string>* EcalDisplaysByEvent::names
private

Definition at line 137 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and selectHits().

int EcalDisplaysByEvent::ordinate[10]
private

Definition at line 132 of file EcalDisplaysByEvent.h.

Referenced by selectDigi().

const edm::EDGetTokenT<EcalRawDataCollection> EcalDisplaysByEvent::rawDataToken_
private

Definition at line 106 of file EcalDisplaysByEvent.h.

Referenced by analyze().

TCanvas* EcalDisplaysByEvent::recHitOccupancyCanvas_
private

Definition at line 184 of file EcalDisplaysByEvent.h.

Referenced by deleteEvtByEvtHists(), drawHistos(), and initEvtByEvtHists().

TCanvas* EcalDisplaysByEvent::recHitOccupancyCanvasAll_
private

Definition at line 226 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

TCanvas* EcalDisplaysByEvent::recHitOccupancyCoarseCanvas_
private

Definition at line 185 of file EcalDisplaysByEvent.h.

Referenced by deleteEvtByEvtHists(), drawHistos(), and initEvtByEvtHists().

TCanvas* EcalDisplaysByEvent::recHitOccupancyCoarseCanvasAll_
private

Definition at line 227 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

TH2F* EcalDisplaysByEvent::recHitOccupancyEB_
private
TH2F* EcalDisplaysByEvent::recHitOccupancyEBAll_
private

Definition at line 204 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::recHitOccupancyEBcoarse_
private
TH2F* EcalDisplaysByEvent::recHitOccupancyEBcoarseAll_
private

Definition at line 205 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::recHitOccupancyEEM_
private
TH2F* EcalDisplaysByEvent::recHitOccupancyEEMAll_
private

Definition at line 206 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::recHitOccupancyEEMcoarse_
private
TH2F* EcalDisplaysByEvent::recHitOccupancyEEMcoarseAll_
private

Definition at line 207 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::recHitOccupancyEEP_
private
TH2F* EcalDisplaysByEvent::recHitOccupancyEEPAll_
private

Definition at line 208 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH2F* EcalDisplaysByEvent::recHitOccupancyEEPcoarse_
private
TH2F* EcalDisplaysByEvent::recHitOccupancyEEPcoarseAll_
private

Definition at line 209 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

int EcalDisplaysByEvent::runNum_
private

Definition at line 115 of file EcalDisplaysByEvent.h.

Referenced by analyze(), and endJob().

std::vector<int> EcalDisplaysByEvent::seedCrys_
private

Definition at line 141 of file EcalDisplaysByEvent.h.

Referenced by EcalDisplaysByEvent(), and selectHits().

std::map<std::string, int> EcalDisplaysByEvent::seedFrequencyMap_
private

Definition at line 146 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and selectHits().

const int EcalDisplaysByEvent::side_
private

Definition at line 116 of file EcalDisplaysByEvent.h.

Referenced by selectHits().

const double EcalDisplaysByEvent::threshold_
private

Definition at line 117 of file EcalDisplaysByEvent.h.

Referenced by selectHits().

TCanvas* EcalDisplaysByEvent::timingCanvas_
private

Definition at line 180 of file EcalDisplaysByEvent.h.

Referenced by deleteEvtByEvtHists(), drawHistos(), and initEvtByEvtHists().

TCanvas* EcalDisplaysByEvent::timingCanvasAll_
private

Definition at line 222 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

TH1F* EcalDisplaysByEvent::timingEB_
private
TH1F* EcalDisplaysByEvent::timingEBAll_
private

Definition at line 192 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH1F* EcalDisplaysByEvent::timingEEM_
private
TH1F* EcalDisplaysByEvent::timingEEMAll_
private

Definition at line 193 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH1F* EcalDisplaysByEvent::timingEEP_
private
TH1F* EcalDisplaysByEvent::timingEEPAll_
private

Definition at line 194 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TCanvas* EcalDisplaysByEvent::timingMapCanvas_
private

Definition at line 189 of file EcalDisplaysByEvent.h.

Referenced by deleteEvtByEvtHists(), drawHistos(), and initEvtByEvtHists().

TCanvas* EcalDisplaysByEvent::timingMapCanvasAll_
private

Definition at line 231 of file EcalDisplaysByEvent.h.

Referenced by endJob(), and initAllEventHistos().

TCanvas* EcalDisplaysByEvent::timingMapCoarseCanvas_
private

Definition at line 188 of file EcalDisplaysByEvent.h.

Referenced by drawCanvas().

TCanvas* EcalDisplaysByEvent::timingMapCoarseCanvasAll_
private

Definition at line 230 of file EcalDisplaysByEvent.h.

TH3F* EcalDisplaysByEvent::timingMapEB_
private
TH3F* EcalDisplaysByEvent::timingMapEBAll_
private

Definition at line 219 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH3F* EcalDisplaysByEvent::timingMapEBCoarse_
private

Definition at line 174 of file EcalDisplaysByEvent.h.

TH3F* EcalDisplaysByEvent::timingMapEBCoarseAll_
private

Definition at line 216 of file EcalDisplaysByEvent.h.

Referenced by initAllEventHistos(), and makeHistos().

TH3F* EcalDisplaysByEvent::timingMapEEM_
private
TH3F* EcalDisplaysByEvent::timingMapEEMAll_
private

Definition at line 220 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH3F* EcalDisplaysByEvent::timingMapEEMCoarse_
private

Definition at line 175 of file EcalDisplaysByEvent.h.

Referenced by initEvtByEvtHists().

TH3F* EcalDisplaysByEvent::timingMapEEMCoarseAll_
private

Definition at line 217 of file EcalDisplaysByEvent.h.

Referenced by initAllEventHistos(), and makeHistos().

TH3F* EcalDisplaysByEvent::timingMapEEP_
private
TH3F* EcalDisplaysByEvent::timingMapEEPAll_
private

Definition at line 221 of file EcalDisplaysByEvent.h.

Referenced by endJob(), initAllEventHistos(), and makeHistos().

TH3F* EcalDisplaysByEvent::timingMapEEPCoarse_
private

Definition at line 176 of file EcalDisplaysByEvent.h.

Referenced by initEvtByEvtHists().

TH3F* EcalDisplaysByEvent::timingMapEEPCoarseAll_
private

Definition at line 218 of file EcalDisplaysByEvent.h.

Referenced by initAllEventHistos(), and makeHistos().

const edm::ESGetToken<CaloTopology, CaloTopologyRecord> EcalDisplaysByEvent::topologyToken_
private

Definition at line 113 of file EcalDisplaysByEvent.h.

Referenced by analyze().