CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
cms::Analyzer_minbias Class Reference

#include <Analyzer_minbias.h>

Inheritance diagram for cms::Analyzer_minbias:
edm::one::EDAnalyzer< edm::one::WatchRuns, edm::one::SharedResources > edm::one::EDAnalyzerBase edm::EDConsumerBase

Public Member Functions

void analyze (edm::Event const &, edm::EventSetup const &) override
 
 Analyzer_minbias (const edm::ParameterSet &)
 
void beginJob () override
 
void beginRun (edm::Run const &, edm::EventSetup const &) override
 
void endJob () override
 
void endRun (edm::Run const &, edm::EventSetup const &) override
 
 ~Analyzer_minbias () override
 
- Public Member Functions inherited from edm::one::EDAnalyzer< edm::one::WatchRuns, edm::one::SharedResources >
 EDAnalyzer ()=default
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () 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
 
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::vector< ModuleDescription const * > &modules, 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
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Attributes

int depth
 
float eta
 
std::string fOutputFileName
 
edm::Service< TFileServicefs
 
TH1F * hbheNoiseE
 
TH1F * hbheSignalE
 
std::string hcalfile_
 
TH1F * hCalo1 [73][43]
 
TH1F * hCalo1mom2 [73][43]
 
TH1F * hCalo2 [73][43]
 
TH1F * hCalo2mom2 [73][43]
 
TH1F * hfNoiseE
 
TH1F * hfSignalE
 
TH2F * hHBHEsize_vs_run
 
TH2F * hHFsize_vs_run
 
TFile * hOutputFile
 
int ieta
 
int iphi
 
double meannoise_min [73][43]
 
double meannoise_pl [73][43]
 
float mom0_Diff
 
float mom0_MB
 
float mom0_Noise
 
float mom1_Diff
 
float mom1_MB
 
float mom1_Noise
 
float mom2_Diff
 
float mom2_MB
 
float mom2_Noise
 
float mom3_Diff
 
float mom3_MB
 
float mom3_Noise
 
float mom4_Diff
 
float mom4_MB
 
float mom4_Noise
 
int mydet
 
std::ofstream * myout_hcal
 
int mysubd
 
TTree * myTree
 
double nevent
 
int nevent_run
 
double noise_min [73][43]
 
double noise_pl [73][43]
 
float occup
 
float phi
 
double theDFFillDetMapMin0 [5][5][73][43]
 
double theDFFillDetMapMin1 [5][5][73][43]
 
double theDFFillDetMapMin2 [5][5][73][43]
 
double theDFFillDetMapPl0 [5][5][73][43]
 
double theDFFillDetMapPl1 [5][5][73][43]
 
double theDFFillDetMapPl2 [5][5][73][43]
 
double theMBFillDetMapMin0 [5][5][73][43]
 
double theMBFillDetMapMin1 [5][5][73][43]
 
double theMBFillDetMapMin2 [5][5][73][43]
 
double theMBFillDetMapMin4 [5][5][73][43]
 
double theMBFillDetMapPl0 [5][5][73][43]
 
double theMBFillDetMapPl1 [5][5][73][43]
 
double theMBFillDetMapPl2 [5][5][73][43]
 
double theMBFillDetMapPl4 [5][5][73][43]
 
double theNSFillDetMapMin0 [5][5][73][43]
 
double theNSFillDetMapMin1 [5][5][73][43]
 
double theNSFillDetMapMin2 [5][5][73][43]
 
double theNSFillDetMapMin4 [5][5][73][43]
 
double theNSFillDetMapPl0 [5][5][73][43]
 
double theNSFillDetMapPl1 [5][5][73][43]
 
double theNSFillDetMapPl2 [5][5][73][43]
 
double theNSFillDetMapPl4 [5][5][73][43]
 
bool theRecalib
 
edm::EDGetTokenT< FEDRawDataCollectiontok_data_
 
edm::EDGetTokenT< L1GlobalTriggerReadoutRecordtok_gtRec_
 
edm::EDGetTokenT< HBHERecHitCollectiontok_hbhe_
 
edm::EDGetTokenT< HBHERecHitCollectiontok_hbheNoise_
 
edm::EDGetTokenT< HBHERecHitCollectiontok_hbheNorm_
 
edm::EDGetTokenT< HFRecHitCollectiontok_hf_
 
edm::EDGetTokenT< HFRecHitCollectiontok_hfNoise_
 
edm::EDGetTokenT< HORecHitCollectiontok_ho_
 
edm::EDGetTokenT< HORecHitCollectiontok_hoNoise_
 

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)
 
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<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)
 

Detailed Description

Definition at line 59 of file Analyzer_minbias.h.

Constructor & Destructor Documentation

cms::Analyzer_minbias::Analyzer_minbias ( const edm::ParameterSet iConfig)
explicit

Definition at line 43 of file Analyzer_minbias.cc.

References fOutputFileName, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), mps_fire::i, TFileService::kSharedResource, noise_min, noise_pl, AlCaHLTBitMon_QueryRunRegistry::string, theRecalib, tok_data_, tok_gtRec_, tok_hbhe_, tok_hbheNoise_, tok_hbheNorm_, tok_hf_, tok_hfNoise_, tok_ho_, and tok_hoNoise_.

43  {
44  usesResource(TFileService::kSharedResource);
45  // get name of output file with histogramms
46  fOutputFileName = iConfig.getUntrackedParameter<std::string>("HistOutFile");
47  // get names of modules, producing object collections
48 
49  tok_hbhe_ = consumes<HBHERecHitCollection>(iConfig.getParameter<edm::InputTag>("hbheInputMB"));
50  tok_ho_ = consumes<HORecHitCollection>(iConfig.getParameter<edm::InputTag>("hoInputMB"));
51  tok_hf_ = consumes<HFRecHitCollection>(iConfig.getParameter<edm::InputTag>("hfInputMB"));
52  tok_data_ = consumes<FEDRawDataCollection>(edm::InputTag(iConfig.getParameter<std::string>("InputLabel")));
53 
54  tok_hbheNoise_ = consumes<HBHERecHitCollection>(iConfig.getParameter<edm::InputTag>("hbheInputNoise"));
55  tok_hoNoise_ = consumes<HORecHitCollection>(iConfig.getParameter<edm::InputTag>("hoInputNoise"));
56  tok_hfNoise_ = consumes<HFRecHitCollection>(iConfig.getParameter<edm::InputTag>("hfInputNoise"));
57 
58  // this was hardcodded..
59  tok_gtRec_ = consumes<L1GlobalTriggerReadoutRecord>(edm::InputTag("gtDigisAlCaMB"));
60  tok_hbheNorm_ = consumes<HBHERecHitCollection>(edm::InputTag("hbhereco"));
61 
62  theRecalib = iConfig.getParameter<bool>("Recalib");
63 
64  //
65  //
66  for (int i = 0; i < 73; i++) {
67  for (int j = 0; j < 43; j++) {
68  noise_min[i][j] = 0.;
69  noise_pl[i][j] = 0.;
70  }
71  }
72  //
73  //
74  }
static const std::string kSharedResource
Definition: TFileService.h:76
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
edm::EDGetTokenT< HORecHitCollection > tok_hoNoise_
edm::EDGetTokenT< HFRecHitCollection > tok_hf_
edm::EDGetTokenT< L1GlobalTriggerReadoutRecord > tok_gtRec_
edm::EDGetTokenT< HBHERecHitCollection > tok_hbheNoise_
double noise_min[73][43]
edm::EDGetTokenT< HFRecHitCollection > tok_hfNoise_
edm::EDGetTokenT< HBHERecHitCollection > tok_hbhe_
edm::EDGetTokenT< HBHERecHitCollection > tok_hbheNorm_
edm::EDGetTokenT< FEDRawDataCollection > tok_data_
edm::EDGetTokenT< HORecHitCollection > tok_ho_
cms::Analyzer_minbias::~Analyzer_minbias ( )
override

Definition at line 76 of file Analyzer_minbias.cc.

76  {
77  // do anything here that needs to be done at desctruction time
78  // (e.g. close files, deallocate resources etc.)
79  }

Member Function Documentation

void cms::Analyzer_minbias::analyze ( edm::Event const &  ,
edm::EventSetup const &   
)
overridevirtual

Implements edm::one::EDAnalyzerBase.

Definition at line 319 of file Analyzer_minbias.cc.

References funct::abs(), edm::SortedCollection< T, SORT >::begin(), DEFINE_FWK_MODULE, HcalDetId::depth(), edm::SortedCollection< T, SORT >::end(), CaloRecHit::energy(), HcalObjRepresent::Fill(), objects.autophobj::float, edm::EventSetup::get(), edm::Event::getAllStableProvenance(), edm::Event::getByToken(), HcalRespCorr::getValue(), HcalCondObjectContainer< Item >::getValues(), hbheNoiseE, hbheSignalE, hCalo1, hCalo1mom2, hCalo2, hCalo2mom2, hfNoiseE, hfSignalE, hHBHEsize_vs_run, hHFsize_vs_run, mps_fire::i, HcalDetId::ieta(), HcalDetId::iphi(), edm::HandleBase::isValid(), gen::k, checklumidiff::l, nevent, nevent_run, funct::pow(), edm::Handle< T >::product(), edm::ESHandle< T >::product(), DetId::rawId(), edm::Event::run(), edm::SortedCollection< T, SORT >::size(), DetId::subdetId(), theDFFillDetMapMin1, theDFFillDetMapMin2, theDFFillDetMapPl1, theDFFillDetMapPl2, theMBFillDetMapMin0, theMBFillDetMapMin1, theMBFillDetMapMin2, theMBFillDetMapMin4, theMBFillDetMapPl0, theMBFillDetMapPl1, theMBFillDetMapPl2, theMBFillDetMapPl4, theNSFillDetMapMin0, theNSFillDetMapMin1, theNSFillDetMapMin2, theNSFillDetMapMin4, theNSFillDetMapPl0, theNSFillDetMapPl1, theNSFillDetMapPl2, theNSFillDetMapPl4, theRecalib, tok_hbhe_, tok_hbheNoise_, tok_hbheNorm_, tok_hf_, and tok_hfNoise_.

319  {
320  edm::LogInfo("AnalyzerMB") << " Start Analyzer_minbias::analyze " << nevent;
321  nevent++;
322  nevent_run++;
323  using namespace edm;
324 
325  float rnnum = (float)iEvent.run();
326 
327  std::vector<StableProvenance const*> theProvenance;
328  iEvent.getAllStableProvenance(theProvenance);
329 
330  for (auto const& provenance : theProvenance) {
331  edm::LogInfo("AnalyzerMB") << " Print all process/modulelabel/product names " << provenance->processName()
332  << " , " << provenance->moduleLabel() << " , " << provenance->productInstanceName();
333  }
334  /*
335  edm::Handle<FEDRawDataCollection> rawdata;
336  iEvent.getByToken(tok_data_,rawdata);
337 
338  if (!rawdata.isValid()) {
339  edm::LogInfo("AnalyzerMB")<<" No valid collection ";
340  } else {
341  edm::LogInfo("AnalyzerMB")<<" Valid collection ";
342  int calibType = -1 ; int numEmptyFEDs = 0 ;
343  std::vector<int> calibTypeCounter(8,0) ;
344  for (int i=FEDNumbering::MINHCALFEDID;
345  i<=FEDNumbering::MAXHCALFEDID; i++) {
346  const FEDRawData& fedData = rawdata->FEDData(i) ;
347  if ( fedData.size() < 24 ) numEmptyFEDs++ ;
348  if ( fedData.size() < 24 ) continue ;
349  // int value = ((const HcalDCCHeader*)(fedData.data()))->getCalibType() ;
350  // calibTypeCounter.at(value)++ ; // increment the counter for this calib type
351  }
352  edm::LogInfo("AnalyzerMB")<<" NumFed "<<numEmptyFEDs<<" "<<calibType;
353  }
354  */
355  /*
356  std::vector<edm::Handle<FEDRawDataCollection> > rawdata1;
357  iEvent.getManyByType(rawdata1);
358 
359  for(std::vector<edm::Handle<FEDRawDataCollection> >::const_iterator it = rawdata1.begin();it != rawdata1.end(); it++) {
360 
361  edm::LogInfo("AnalyzerMB")<<" Many by Type product name "<< (*it).provenance()->processName()<<
362  " "<<(*it).provenance()->moduleLabel();
363 
364  if((*it).provenance()->moduleLabel() == "hltHcalCalibrationRaw") {
365  int calibType = -1 ; int numEmptyFEDs = 0 ;
366 
367  for (int i=FEDNumbering::MINHCALFEDID;
368  i<=FEDNumbering::MAXHCALFEDID; i++) {
369  const FEDRawData& fedData = (*it)->FEDData(i) ;
370  edm::LogInfo("AnalyzerMB")<<" FED size "<<fedData.size();
371  if ( fedData.size() < 24 ) numEmptyFEDs++ ;
372  if ( fedData.size() < 24 ) continue ;
373  int value = ((const HcalDCCHeader*)(fedData.data()))->getCalibType() ;
374  edm::LogInfo("AnalyzerMB")<<" Value "<<value;
375  }
376  edm::LogInfo("AnalyzerMB")<<" Many by Type NumFed "<<numEmptyFEDs<<" "<<calibType;
377  }
378  }
379 
380 
381  */
382 
383  // Geometry
384  // edm::ESHandle<CaloGeometry> pG;
385  // iSetup.get<CaloGeometryRecord>().get(pG);
386  // ======
387 
388  /*
389  edm::ESHandle<L1GtTriggerMenu> menuRcd;
390  iSetup.get<L1GtTriggerMenuRcd>().get(menuRcd) ;
391  const L1GtTriggerMenu* menu = menuRcd.product();
392  const AlgorithmMap& bitMap = menu->gtAlgorithmMap();
393 
394  edm::Handle<L1GlobalTriggerReadoutRecord> gtRecord;
395  iEvent.getByToken(tok_gtRec_, gtRecord);
396 
397  if (!gtRecord.isValid()) {
398 
399  // LogDebug("L1GlobalTriggerRecordProducer")
400  // << "\n\n Error: no L1GlobalTriggerReadoutRecord found with input tag "
401  // << m_l1GtReadoutRecord
402  // << "\n Returning empty L1GlobalTriggerRecord.\n\n";
403  edm::LogInfo("AnalyzerMB")<<" No L1 trigger record ";
404  } else {
405 
406  const DecisionWord dWord = gtRecord->decisionWord();
407 
408  for (CItAlgo itAlgo = bitMap.begin(); itAlgo != bitMap.end(); itAlgo++) {
409  bool decision=menu->gtAlgorithmResult(itAlgo->first,dWord);
410  if(decision == 1) edm::LogInfo("AnalyzerMB")<<" Trigger "<<itAlgo->first<<" "<<decision;
411  }
412 
413  }
414  */
415 
416  const HcalRespCorrs* myRecalib = nullptr;
417  if (theRecalib) {
418  // Radek:
419  edm::ESHandle<HcalRespCorrs> recalibCorrs;
420  iSetup.get<HcalRespCorrsRcd>().get("recalibrate", recalibCorrs);
421  myRecalib = recalibCorrs.product();
422  // end
423  } // theRecalib
424 
425  // Noise part for HB HE
426 
427  double tmpNSFillDetMapPl1[5][5][73][43];
428  double tmpNSFillDetMapMin1[5][5][73][43];
429 
430  for (int i = 0; i < 5; i++) {
431  for (int j = 0; j < 5; j++) {
432  for (int k = 0; k < 73; k++) {
433  for (int l = 0; l < 43; l++) {
434  tmpNSFillDetMapPl1[i][j][k][l] = 0.;
435  tmpNSFillDetMapMin1[i][j][k][l] = 0.;
436  }
437  }
438  }
439  }
440 
442  iEvent.getByToken(tok_hbheNorm_, hbheNormal);
443  if (!hbheNormal.isValid()) {
444  edm::LogWarning("AnalyzerMB") << " hbheNormal failed ";
445  } else {
446  edm::LogInfo("AnalyzerMB") << " The size of the normal collection " << hbheNormal->size();
447  }
448 
450  iEvent.getByToken(tok_hbheNoise_, hbheNS);
451 
452  if (!hbheNS.isValid()) {
453  edm::LogWarning("AnalyzerMB") << "HcalCalibAlgos: Error! can't get hbhe"
454  << " product! No HBHE MS ";
455  return;
456  }
457 
458  const HBHERecHitCollection HithbheNS = *(hbheNS.product());
459  edm::LogInfo("AnalyzerMB") << " HBHE NS size of collection " << HithbheNS.size();
460  hHBHEsize_vs_run->Fill(rnnum, (float)HithbheNS.size());
461 
462  if (HithbheNS.size() != 5184) {
463  edm::LogWarning("AnalyzerMB") << " HBHE problem " << rnnum << " " << HithbheNS.size();
464  // return;
465  }
467  iEvent.getByToken(tok_hbhe_, hbheMB);
468 
469  if (!hbheMB.isValid()) {
470  edm::LogWarning("AnalyzerMB") << "HcalCalibAlgos: Error! can't get hbhe"
471  << " product! No HBHE MB";
472  // return ;
473  }
474 
475  const HBHERecHitCollection HithbheMB = *(hbheMB.product());
476  edm::LogInfo("AnalyzerMB") << " HBHE MB size of collection " << HithbheMB.size();
477  if (HithbheMB.size() != 5184) {
478  edm::LogWarning("AnalyzerMB") << " HBHE problem " << rnnum << " " << HithbheMB.size();
479  // return;
480  }
481 
483  iEvent.getByToken(tok_hfNoise_, hfNS);
484 
485  if (!hfNS.isValid()) {
486  edm::LogWarning("AnalyzerMB") << "HcalCalibAlgos: Error! can't get hf"
487  << " product! No HF NS ";
488  // return ;
489  }
490 
491  const HFRecHitCollection HithfNS = *(hfNS.product());
492  edm::LogInfo("AnalyzerMB") << " HFE NS size of collection " << HithfNS.size();
493  hHFsize_vs_run->Fill(rnnum, (float)HithfNS.size());
494  if (HithfNS.size() != 1728) {
495  edm::LogWarning("AnalyzerMB") << " HF problem " << rnnum << " " << HithfNS.size();
496  // return;
497  }
498 
500  iEvent.getByToken(tok_hf_, hfMB);
501 
502  if (!hfMB.isValid()) {
503  edm::LogWarning("AnalyzerMB") << "HcalCalibAlgos: Error! can't get hf"
504  << " product! No HF MB";
505  // return ;
506  }
507 
508  const HFRecHitCollection HithfMB = *(hfMB.product());
509  edm::LogInfo("AnalyzerMB") << " HF MB size of collection " << HithfMB.size();
510  if (HithfMB.size() != 1728) {
511  edm::LogWarning("AnalyzerMB") << " HF problem " << rnnum << " " << HithfMB.size();
512  // return;
513  }
514 
515  for (HBHERecHitCollection::const_iterator hbheItr = HithbheNS.begin(); hbheItr != HithbheNS.end(); hbheItr++) {
516  // Recalibration of energy
517  float icalconst = 1.;
518  DetId mydetid = hbheItr->id().rawId();
519  if (theRecalib)
520  icalconst = myRecalib->getValues(mydetid)->getValue();
521 
522  HBHERecHit aHit(hbheItr->id(), hbheItr->energy() * icalconst, hbheItr->time());
523 
524  double energyhit = aHit.energy();
525 
526  DetId id = (*hbheItr).detid();
527  HcalDetId hid = HcalDetId(id);
528 
529  int mysu = ((hid).rawId() >> 25) & 0x7;
530  if (hid.ieta() > 0) {
531  theNSFillDetMapPl0[mysu][hid.depth()][hid.iphi()][hid.ieta()] =
532  theNSFillDetMapPl0[mysu][hid.depth()][hid.iphi()][hid.ieta()] + 1.;
533  theNSFillDetMapPl1[mysu][hid.depth()][hid.iphi()][hid.ieta()] =
534  theNSFillDetMapPl1[mysu][hid.depth()][hid.iphi()][hid.ieta()] + energyhit;
535  theNSFillDetMapPl2[mysu][hid.depth()][hid.iphi()][hid.ieta()] =
536  theNSFillDetMapPl2[mysu][hid.depth()][hid.iphi()][hid.ieta()] + pow(energyhit, 2);
537  theNSFillDetMapPl4[mysu][hid.depth()][hid.iphi()][hid.ieta()] =
538  theNSFillDetMapPl4[mysu][hid.depth()][hid.iphi()][hid.ieta()] + pow(energyhit, 4);
539 
540  tmpNSFillDetMapPl1[mysu][hid.depth()][hid.iphi()][hid.ieta()] = energyhit;
541 
542  } else {
543  theNSFillDetMapMin0[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] =
544  theNSFillDetMapMin0[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] + 1.;
545  theNSFillDetMapMin1[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] =
546  theNSFillDetMapMin1[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] + energyhit;
547  theNSFillDetMapMin2[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] =
548  theNSFillDetMapMin2[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] + pow(energyhit, 2);
549  theNSFillDetMapMin4[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] =
550  theNSFillDetMapMin4[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] + pow(energyhit, 4);
551 
552  tmpNSFillDetMapMin1[mysu][hid.depth()][hid.iphi()][hid.ieta()] = energyhit;
553  }
554 
555  if (hid.depth() == 1) {
556  hbheNoiseE->Fill(energyhit);
557 
558  if (energyhit < -2.)
559  edm::LogInfo("AnalyzerMB") << " Run " << rnnum << " ieta,iphi " << hid.ieta() << " " << hid.iphi()
560  << energyhit;
561 
562  // if( hid.ieta() > 0 ) {
563  // hCalo1[hid.iphi()][hid.ieta()]->Fill(energyhit-noise_pl[hid.iphi()][hid.ieta()]);
564  // hCalo1mom2[hid.iphi()][hid.ieta()]->Fill(pow(energyhit,2));
565  // } else {
566  // hCalo2[hid.iphi()][abs(hid.ieta())]->Fill(energyhit-noise_min[hid.iphi()][abs(hid.ieta())]);
567  // hCalo2mom2[hid.iphi()][abs(hid.ieta())]->Fill(pow(energyhit,2));
568  // } // eta><0
569 
570  } // depth=1
571 
572  } // HBHE_NS
573 
574  // Signal part for HB HE
575 
576  for (HBHERecHitCollection::const_iterator hbheItr = HithbheMB.begin(); hbheItr != HithbheMB.end(); hbheItr++) {
577  // Recalibration of energy
578  float icalconst = 1.;
579  DetId mydetid = hbheItr->id().rawId();
580  if (theRecalib)
581  icalconst = myRecalib->getValues(mydetid)->getValue();
582 
583  HBHERecHit aHit(hbheItr->id(), hbheItr->energy() * icalconst, hbheItr->time());
584 
585  double energyhit = aHit.energy();
586 
587  DetId id = (*hbheItr).detid();
588  HcalDetId hid = HcalDetId(id);
589 
590  int mysu = ((hid).rawId() >> 25) & 0x7;
591  if (hid.ieta() > 0) {
592  theMBFillDetMapPl0[mysu][hid.depth()][hid.iphi()][hid.ieta()] += 1.;
593  theMBFillDetMapPl1[mysu][hid.depth()][hid.iphi()][hid.ieta()] += energyhit;
594  theMBFillDetMapPl2[mysu][hid.depth()][hid.iphi()][hid.ieta()] += pow(energyhit, 2);
595  theMBFillDetMapPl4[mysu][hid.depth()][hid.iphi()][hid.ieta()] += pow(energyhit, 4);
596  float mydiff = energyhit - tmpNSFillDetMapPl1[mysu][hid.depth()][hid.iphi()][hid.ieta()];
597 
598  theDFFillDetMapPl1[mysu][hid.depth()][hid.iphi()][hid.ieta()] =
599  theDFFillDetMapPl1[mysu][hid.depth()][hid.iphi()][hid.ieta()] + mydiff;
600  theDFFillDetMapPl2[mysu][hid.depth()][hid.iphi()][hid.ieta()] =
601  theDFFillDetMapPl2[mysu][hid.depth()][hid.iphi()][hid.ieta()] + pow(mydiff, 2);
602  } else {
603  theMBFillDetMapMin0[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] =
604  theMBFillDetMapMin0[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] + 1.;
605  theMBFillDetMapMin1[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] =
606  theMBFillDetMapMin1[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] + energyhit;
607  theMBFillDetMapMin2[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] =
608  theMBFillDetMapMin2[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] + pow(energyhit, 2);
609  theMBFillDetMapMin4[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] =
610  theMBFillDetMapMin4[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] + pow(energyhit, 4);
611 
612  float mydiff = energyhit - tmpNSFillDetMapMin1[mysu][hid.depth()][hid.iphi()][hid.ieta()];
613  theDFFillDetMapMin1[mysu][hid.depth()][hid.iphi()][hid.ieta()] =
614  theDFFillDetMapMin1[mysu][hid.depth()][hid.iphi()][hid.ieta()] + mydiff;
615  theDFFillDetMapMin2[mysu][hid.depth()][hid.iphi()][hid.ieta()] =
616  theDFFillDetMapMin2[mysu][hid.depth()][hid.iphi()][hid.ieta()] + pow(mydiff, 2);
617  }
618 
619  if (hid.depth() == 1) {
620  hbheSignalE->Fill(energyhit);
621 
622  if (hid.ieta() > 0) {
623  hCalo1[hid.iphi()][hid.ieta()]->Fill(energyhit);
624  hCalo1mom2[hid.iphi()][hid.ieta()]->Fill(pow(energyhit, 2));
625  } else {
626  hCalo2[hid.iphi()][abs(hid.ieta())]->Fill(energyhit);
627  hCalo2mom2[hid.iphi()][abs(hid.ieta())]->Fill(pow(energyhit, 2));
628  } // eta><0
629 
630  } // depth=1
631 
632  } // HBHE_MB
633 
634  // HF
635 
636  for (HFRecHitCollection::const_iterator hbheItr = HithfNS.begin(); hbheItr != HithfNS.end(); hbheItr++) {
637  // Recalibration of energy
638  float icalconst = 1.;
639  DetId mydetid = hbheItr->id().rawId();
640  if (theRecalib)
641  icalconst = myRecalib->getValues(mydetid)->getValue();
642 
643  HFRecHit aHit(hbheItr->id(), hbheItr->energy() * icalconst, hbheItr->time());
644 
645  double energyhit = aHit.energy();
646  //
647  // Remove PMT hits
648  //
649  DetId id = (*hbheItr).detid();
650  HcalDetId hid = HcalDetId(id);
651 
652  if (fabs(energyhit) > 40.)
653  continue;
654 
655  int mysu = hid.subdetId();
656  if (hid.ieta() > 0) {
657  theNSFillDetMapPl0[mysu][hid.depth()][hid.iphi()][hid.ieta()] =
658  theNSFillDetMapPl0[mysu][hid.depth()][hid.iphi()][hid.ieta()] + 1.;
659  theNSFillDetMapPl1[mysu][hid.depth()][hid.iphi()][hid.ieta()] =
660  theNSFillDetMapPl1[mysu][hid.depth()][hid.iphi()][hid.ieta()] + energyhit;
661  theNSFillDetMapPl2[mysu][hid.depth()][hid.iphi()][hid.ieta()] =
662  theNSFillDetMapPl2[mysu][hid.depth()][hid.iphi()][hid.ieta()] + pow(energyhit, 2);
663  theNSFillDetMapPl4[mysu][hid.depth()][hid.iphi()][hid.ieta()] =
664  theNSFillDetMapPl4[mysu][hid.depth()][hid.iphi()][hid.ieta()] + pow(energyhit, 4);
665 
666  tmpNSFillDetMapPl1[mysu][hid.depth()][hid.iphi()][hid.ieta()] = energyhit;
667 
668  } else {
669  theNSFillDetMapMin0[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] =
670  theNSFillDetMapMin0[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] + 1.;
671  theNSFillDetMapMin1[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] =
672  theNSFillDetMapMin1[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] + energyhit;
673  theNSFillDetMapMin2[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] =
674  theNSFillDetMapMin2[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] + pow(energyhit, 2);
675  theNSFillDetMapMin4[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] =
676  theNSFillDetMapMin4[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] + pow(energyhit, 4);
677 
678  tmpNSFillDetMapMin1[mysu][hid.depth()][hid.iphi()][hid.ieta()] = energyhit;
679  }
680 
681  if (hid.depth() == 1) {
682  hfNoiseE->Fill(energyhit);
683 
684  //if( hid.ieta() > 0 ) {
685  // hCalo1[hid.iphi()][hid.ieta()]->Fill(energyhit-noise_pl[hid.iphi()][hid.ieta()]);
686  // hCalo1mom2[hid.iphi()][hid.ieta()]->Fill(pow(energyhit,2));
687  //} else {
688  // hCalo2[hid.iphi()][abs(hid.ieta())]->Fill(energyhit-noise_min[hid.iphi()][abs(hid.ieta())]);
689  // hCalo2mom2[hid.iphi()][abs(hid.ieta())]->Fill(pow(energyhit,2));
690  //} // eta><0
691 
692  } // depth=1
693 
694  } // HBHE_NS
695 
696  // Signal part for HB HE
697 
698  for (HFRecHitCollection::const_iterator hbheItr = HithfMB.begin(); hbheItr != HithfMB.end(); hbheItr++) {
699  // Recalibration of energy
700  float icalconst = 1.;
701  DetId mydetid = hbheItr->id().rawId();
702  if (theRecalib)
703  icalconst = myRecalib->getValues(mydetid)->getValue();
704 
705  HFRecHit aHit(hbheItr->id(), hbheItr->energy() * icalconst, hbheItr->time());
706 
707  double energyhit = aHit.energy();
708  //
709  // Remove PMT hits
710  //
711  if (fabs(energyhit) > 40.)
712  continue;
713 
714  DetId id = (*hbheItr).detid();
715  HcalDetId hid = HcalDetId(id);
716 
717  int mysu = ((hid).rawId() >> 25) & 0x7;
718  if (hid.ieta() > 0) {
719  theMBFillDetMapPl0[mysu][hid.depth()][hid.iphi()][hid.ieta()] =
720  theMBFillDetMapPl0[mysu][hid.depth()][hid.iphi()][hid.ieta()] + 1.;
721  theMBFillDetMapPl1[mysu][hid.depth()][hid.iphi()][hid.ieta()] =
722  theMBFillDetMapPl1[mysu][hid.depth()][hid.iphi()][hid.ieta()] + energyhit;
723  theMBFillDetMapPl2[mysu][hid.depth()][hid.iphi()][hid.ieta()] =
724  theMBFillDetMapPl2[mysu][hid.depth()][hid.iphi()][hid.ieta()] + pow(energyhit, 2);
725  theMBFillDetMapPl4[mysu][hid.depth()][hid.iphi()][hid.ieta()] =
726  theMBFillDetMapPl4[mysu][hid.depth()][hid.iphi()][hid.ieta()] + pow(energyhit, 4);
727 
728  theDFFillDetMapPl1[mysu][hid.depth()][hid.iphi()][hid.ieta()] =
729  theDFFillDetMapPl1[mysu][hid.depth()][hid.iphi()][hid.ieta()] + energyhit -
730  tmpNSFillDetMapPl1[mysu][hid.depth()][hid.iphi()][hid.ieta()];
731  theDFFillDetMapPl2[mysu][hid.depth()][hid.iphi()][hid.ieta()] =
732  theDFFillDetMapPl2[mysu][hid.depth()][hid.iphi()][hid.ieta()] +
733  pow((energyhit - tmpNSFillDetMapPl1[mysu][hid.depth()][hid.iphi()][hid.ieta()]), 2);
734  } else {
735  theMBFillDetMapMin0[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] =
736  theMBFillDetMapMin0[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] + 1.;
737  theMBFillDetMapMin1[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] =
738  theMBFillDetMapMin1[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] + energyhit;
739  theMBFillDetMapMin2[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] =
740  theMBFillDetMapMin2[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] + pow(energyhit, 2);
741  theMBFillDetMapMin4[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] =
742  theMBFillDetMapMin4[mysu][hid.depth()][hid.iphi()][abs(hid.ieta())] + pow(energyhit, 4);
743 
744  theDFFillDetMapMin1[mysu][hid.depth()][hid.iphi()][hid.ieta()] =
745  theDFFillDetMapMin1[mysu][hid.depth()][hid.iphi()][hid.ieta()] + energyhit -
746  tmpNSFillDetMapMin1[mysu][hid.depth()][hid.iphi()][hid.ieta()];
747  theDFFillDetMapMin2[mysu][hid.depth()][hid.iphi()][hid.ieta()] =
748  theDFFillDetMapMin2[mysu][hid.depth()][hid.iphi()][hid.ieta()] +
749  pow((energyhit - tmpNSFillDetMapMin1[mysu][hid.depth()][hid.iphi()][hid.ieta()]), 2);
750  }
751 
752  if (hid.depth() == 1) {
753  hfSignalE->Fill(energyhit);
754 
755  if (hid.ieta() > 0) {
756  hCalo1[hid.iphi()][hid.ieta()]->Fill(energyhit);
757  hCalo1mom2[hid.iphi()][hid.ieta()]->Fill(pow(energyhit, 2));
758  } else {
759  hCalo2[hid.iphi()][abs(hid.ieta())]->Fill(energyhit);
760  hCalo2mom2[hid.iphi()][abs(hid.ieta())]->Fill(pow(energyhit, 2));
761  } // eta><0
762 
763  } // depth=1
764 
765  } // HF_MB
766 
767  edm::LogInfo("AnalyzerMB") << " Event is finished ";
768  }
constexpr float energy() const
Definition: CaloRecHit.h:31
double theMBFillDetMapMin0[5][5][73][43]
double theMBFillDetMapMin2[5][5][73][43]
double theDFFillDetMapPl2[5][5][73][43]
double theMBFillDetMapMin1[5][5][73][43]
double theNSFillDetMapPl4[5][5][73][43]
double theNSFillDetMapPl0[5][5][73][43]
double theNSFillDetMapMin0[5][5][73][43]
double theMBFillDetMapPl0[5][5][73][43]
TH1F * hCalo2mom2[73][43]
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:50
std::vector< T >::const_iterator const_iterator
double theDFFillDetMapPl1[5][5][73][43]
edm::EDGetTokenT< HFRecHitCollection > tok_hf_
const Item * getValues(DetId fId, bool throwOnFail=true) const
edm::EDGetTokenT< HBHERecHitCollection > tok_hbheNoise_
double theNSFillDetMapPl2[5][5][73][43]
double theDFFillDetMapMin2[5][5][73][43]
TH1F * hCalo1mom2[73][43]
edm::EDGetTokenT< HFRecHitCollection > tok_hfNoise_
double theNSFillDetMapPl1[5][5][73][43]
double theMBFillDetMapPl1[5][5][73][43]
int depth() const
get the tower depth
Definition: HcalDetId.h:166
int iEvent
Definition: GenABIO.cc:224
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
edm::EDGetTokenT< HBHERecHitCollection > tok_hbhe_
int ieta() const
get the cell ieta
Definition: HcalDetId.h:159
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:41
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
double theMBFillDetMapPl4[5][5][73][43]
double theNSFillDetMapMin1[5][5][73][43]
double theNSFillDetMapMin4[5][5][73][43]
bool isValid() const
Definition: HandleBase.h:74
double theMBFillDetMapPl2[5][5][73][43]
edm::EDGetTokenT< HBHERecHitCollection > tok_hbheNorm_
int k[5][pyjets_maxn]
const_iterator end() const
int iphi() const
get the cell iphi
Definition: HcalDetId.h:161
Definition: DetId.h:18
T const * product() const
Definition: Handle.h:74
double theMBFillDetMapMin4[5][5][73][43]
HLT enums.
float getValue() const
Definition: HcalRespCorr.h:20
size_type size() const
double theNSFillDetMapMin2[5][5][73][43]
double theDFFillDetMapMin1[5][5][73][43]
T const * product() const
Definition: ESHandle.h:86
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:40
const_iterator begin() const
void cms::Analyzer_minbias::beginJob ( void  )
overridevirtual

Reimplemented from edm::one::EDAnalyzerBase.

Definition at line 86 of file Analyzer_minbias.cc.

References depth, eta, fs, hbheNoiseE, hbheSignalE, hCalo1, hCalo1mom2, hCalo2, hCalo2mom2, hfNoiseE, hfSignalE, hHBHEsize_vs_run, hHFsize_vs_run, mps_fire::i, ieta, iphi, gen::k, checklumidiff::l, TFileService::make(), meannoise_min, meannoise_pl, mom0_Diff, mom0_MB, mom0_Noise, mom1_Diff, mom1_MB, mom1_Noise, mom2_Diff, mom2_MB, mom2_Noise, mom4_MB, mom4_Noise, mydet, myout_hcal, mysubd, myTree, nevent, occup, phi, AlCaHLTBitMon_QueryRunRegistry::string, theDFFillDetMapMin0, theDFFillDetMapMin1, theDFFillDetMapMin2, theDFFillDetMapPl0, theDFFillDetMapPl1, theDFFillDetMapPl2, theMBFillDetMapMin0, theMBFillDetMapMin1, theMBFillDetMapMin2, theMBFillDetMapMin4, theMBFillDetMapPl0, theMBFillDetMapPl1, theMBFillDetMapPl2, theMBFillDetMapPl4, theNSFillDetMapMin0, theNSFillDetMapMin1, theNSFillDetMapMin2, theNSFillDetMapMin4, theNSFillDetMapPl0, theNSFillDetMapPl1, theNSFillDetMapPl2, and theNSFillDetMapPl4.

86  {
87  // hOutputFile = new TFile( fOutputFileName.c_str(), "RECREATE" ) ;
88  myTree = fs->make<TTree>("RecJet", "RecJet Tree");
89  myTree->Branch("mydet", &mydet, "mydet/I");
90  myTree->Branch("mysubd", &mysubd, "mysubd/I");
91  myTree->Branch("depth", &depth, "depth/I");
92  myTree->Branch("ieta", &ieta, "ieta/I");
93  myTree->Branch("iphi", &iphi, "iphi/I");
94  myTree->Branch("eta", &eta, "eta/F");
95  myTree->Branch("phi", &phi, "phi/F");
96 
97  myTree->Branch("mom0_MB", &mom0_MB, "mom0_MB/F");
98  myTree->Branch("mom1_MB", &mom1_MB, "mom1_MB/F");
99  myTree->Branch("mom2_MB", &mom2_MB, "mom2_MB/F");
100  myTree->Branch("mom4_MB", &mom4_MB, "mom4_MB/F");
101 
102  myTree->Branch("mom0_Noise", &mom0_Noise, "mom0_Noise/F");
103  myTree->Branch("mom1_Noise", &mom1_Noise, "mom1_Noise/F");
104  myTree->Branch("mom2_Noise", &mom2_Noise, "mom2_Noise/F");
105  myTree->Branch("mom4_Noise", &mom4_Noise, "mom4_Noise/F");
106 
107  myTree->Branch("mom0_Diff", &mom0_Diff, "mom0_Diff/F");
108  myTree->Branch("mom1_Diff", &mom1_Diff, "mom1_Diff/F");
109  myTree->Branch("mom2_Diff", &mom2_Diff, "mom2_Diff/F");
110 
111  myTree->Branch("occup", &occup, "occup/F");
112 
113  edm::LogInfo("AnalyzerMB") << " Before ordering Histos ";
114 
115  char str0[15];
116  char str1[15];
117 
118  char str10[15];
119  char str11[15];
120 
121  int k = 0;
122  nevent = 0;
123  // Size of collections
124 
126  fs->make<TH2F>("hHBHEsize_vs_run", "hHBHEsize_vs_run", 500, 111500., 112000., 6101, -100.5, 6000.5);
127  hHFsize_vs_run = fs->make<TH2F>("hHFsize_vs_run", "hHFsize_vs_run", 500, 111500., 112000., 6101, -100.5, 6000.5);
128 
129  for (int i = 1; i < 73; i++) {
130  for (int j = 1; j < 43; j++) {
131  meannoise_pl[i][j] = 0.;
132  meannoise_min[i][j] = 0.;
133 
134  // for(int l=1;l<5;l++){
135  k = i * 1000 + j;
136  sprintf(str0, "mpl%d", k);
137  sprintf(str1, "mmin%d", k);
138 
139  sprintf(str10, "vpl%d", k);
140  sprintf(str11, "vmin%d", k);
141  // edm::LogInfo("AnalyzerMB")<<" "<<i<<" "<<j;
142  if (j < 30) {
143  // first order moment
144  hCalo1[i][j] = fs->make<TH1F>(str0, "h0", 320, -10., 10.);
145  hCalo2[i][j] = fs->make<TH1F>(str1, "h1", 320, -10., 10.);
146 
147  // second order moment
148  hCalo1mom2[i][j] = fs->make<TH1F>(str10, "h10", 320, 0., 20.);
149  hCalo2mom2[i][j] = fs->make<TH1F>(str11, "h11", 320, 0., 20.);
150  } else {
151  // HF
152  // first order moment
153  // edm::LogInfo("AnalyzerMB")<<" "<<i<<" "<<j<<" "<<k;
154  if (j < 40) {
155  hCalo1[i][j] = fs->make<TH1F>(str0, "h0", 320, -10., 10.);
156  hCalo2[i][j] = fs->make<TH1F>(str1, "h1", 320, -10., 10.);
157  //
158  // second order moment
159  hCalo1mom2[i][j] = fs->make<TH1F>(str10, "h10", 320, 0., 40.);
160  hCalo2mom2[i][j] = fs->make<TH1F>(str11, "h11", 320, 0., 40.);
161  } else {
162  hCalo1[i][j] = fs->make<TH1F>(str0, "h0", 320, -10., 10.);
163  hCalo2[i][j] = fs->make<TH1F>(str1, "h1", 320, -10., 10.);
164 
165  // second order moment
166  hCalo1mom2[i][j] = fs->make<TH1F>(str10, "h10", 320, 0., 120.);
167  hCalo2mom2[i][j] = fs->make<TH1F>(str11, "h11", 320, 0., 120.);
168  }
169  } // HE/HF boundary
170  // } // l
171  } // j
172  } // i
173 
174  hbheNoiseE = fs->make<TH1F>("hbheNoiseE", "hbheNoiseE", 320, -10., 10.);
175  hfNoiseE = fs->make<TH1F>("hfNoiseE", "hfNoiseE", 320, -10., 10.);
176  hbheSignalE = fs->make<TH1F>("hbheSignalE", "hbheSignalE", 320, -10., 10.);
177  hfSignalE = fs->make<TH1F>("hfSignalE", "hfSignalE", 320, -10., 10.);
178 
179  edm::LogInfo("AnalyzerMB") << " After ordering Histos ";
180 
181  std::string ccc = "noise_0.dat";
182 
183  myout_hcal = new std::ofstream(ccc.c_str());
184  if (!myout_hcal)
185  edm::LogInfo("AnalyzerMB") << " Output file not open!!! ";
186 
187  //
188  for (int i = 0; i < 5; i++) {
189  for (int j = 0; j < 5; j++) {
190  for (int k = 0; k < 73; k++) {
191  for (int l = 0; l < 43; l++) {
192  theMBFillDetMapPl0[i][j][k][l] = 0.;
193  theMBFillDetMapPl1[i][j][k][l] = 0.;
194  theMBFillDetMapPl2[i][j][k][l] = 0.;
195  theMBFillDetMapPl4[i][j][k][l] = 0.;
196 
197  theMBFillDetMapMin0[i][j][k][l] = 0.;
198  theMBFillDetMapMin1[i][j][k][l] = 0.;
199  theMBFillDetMapMin2[i][j][k][l] = 0.;
200  theMBFillDetMapMin4[i][j][k][l] = 0.;
201 
202  theNSFillDetMapPl0[i][j][k][l] = 0.;
203  theNSFillDetMapPl1[i][j][k][l] = 0.;
204  theNSFillDetMapPl2[i][j][k][l] = 0.;
205  theNSFillDetMapPl4[i][j][k][l] = 0.;
206 
207  theNSFillDetMapMin0[i][j][k][l] = 0.;
208  theNSFillDetMapMin1[i][j][k][l] = 0.;
209  theNSFillDetMapMin2[i][j][k][l] = 0.;
210  theNSFillDetMapMin4[i][j][k][l] = 0.;
211 
212  theDFFillDetMapPl0[i][j][k][l] = 0.;
213  theDFFillDetMapPl1[i][j][k][l] = 0.;
214  theDFFillDetMapPl2[i][j][k][l] = 0.;
215  theDFFillDetMapMin0[i][j][k][l] = 0.;
216  theDFFillDetMapMin1[i][j][k][l] = 0.;
217  theDFFillDetMapMin2[i][j][k][l] = 0.;
218  }
219  }
220  }
221  }
222 
223  return;
224  }
double theMBFillDetMapMin0[5][5][73][43]
double theMBFillDetMapMin2[5][5][73][43]
double theDFFillDetMapPl2[5][5][73][43]
double theMBFillDetMapMin1[5][5][73][43]
edm::Service< TFileService > fs
double theNSFillDetMapPl4[5][5][73][43]
double theNSFillDetMapPl0[5][5][73][43]
double theNSFillDetMapMin0[5][5][73][43]
double theMBFillDetMapPl0[5][5][73][43]
TH1F * hCalo2mom2[73][43]
double theDFFillDetMapPl1[5][5][73][43]
std::ofstream * myout_hcal
T * make(const Args &...args) const
make new ROOT object
Definition: TFileService.h:64
double meannoise_pl[73][43]
double theNSFillDetMapPl2[5][5][73][43]
double theDFFillDetMapMin2[5][5][73][43]
TH1F * hCalo1mom2[73][43]
double theNSFillDetMapPl1[5][5][73][43]
double theMBFillDetMapPl1[5][5][73][43]
double theDFFillDetMapPl0[5][5][73][43]
double theMBFillDetMapPl4[5][5][73][43]
double theNSFillDetMapMin1[5][5][73][43]
double theNSFillDetMapMin4[5][5][73][43]
double theDFFillDetMapMin0[5][5][73][43]
double theMBFillDetMapPl2[5][5][73][43]
int k[5][pyjets_maxn]
double theMBFillDetMapMin4[5][5][73][43]
double meannoise_min[73][43]
double theNSFillDetMapMin2[5][5][73][43]
double theDFFillDetMapMin1[5][5][73][43]
void cms::Analyzer_minbias::beginRun ( edm::Run const &  ,
edm::EventSetup const &   
)
override

Definition at line 81 of file Analyzer_minbias.cc.

References nevent_run.

void cms::Analyzer_minbias::endJob ( void  )
overridevirtual

Reimplemented from edm::one::EDAnalyzerBase.

Definition at line 228 of file Analyzer_minbias.cc.

References depth, hCalo1, hCalo1mom2, hCalo2, hCalo2mom2, mps_fire::i, ieta, cuy::ii, iphi, gen::k, checklumidiff::l, mom0_Diff, mom0_MB, mom0_Noise, mom1_Diff, mom1_MB, mom1_Noise, mom2_Diff, mom2_MB, mom2_Noise, mom4_MB, mom4_Noise, mysubd, myTree, theDFFillDetMapMin0, theDFFillDetMapMin1, theDFFillDetMapMin2, theDFFillDetMapPl0, theDFFillDetMapPl1, theDFFillDetMapPl2, theMBFillDetMapMin0, theMBFillDetMapMin1, theMBFillDetMapMin2, theMBFillDetMapMin4, theMBFillDetMapPl0, theMBFillDetMapPl1, theMBFillDetMapPl2, theMBFillDetMapPl4, theNSFillDetMapMin0, theNSFillDetMapMin1, theNSFillDetMapMin2, theNSFillDetMapMin4, theNSFillDetMapPl0, theNSFillDetMapPl1, theNSFillDetMapPl2, and theNSFillDetMapPl4.

Referenced by o2olib.O2ORunMgr::executeJob().

228  {
229  int ii = 0;
230 
231  for (int i = 1; i < 5; i++) {
232  for (int j = 1; j < 5; j++) {
233  for (int k = 1; k < 73; k++) {
234  for (int l = 1; l < 43; l++) {
235  if (theMBFillDetMapPl0[i][j][k][l] > 0) {
236  mom0_MB = theMBFillDetMapPl0[i][j][k][l];
237  mom1_MB = theMBFillDetMapPl1[i][j][k][l];
238  mom2_MB = theMBFillDetMapPl2[i][j][k][l];
239  mom4_MB = theMBFillDetMapPl4[i][j][k][l];
244  mom0_Diff = theDFFillDetMapPl0[i][j][k][l];
245  mom1_Diff = theDFFillDetMapPl1[i][j][k][l];
246  mom2_Diff = theDFFillDetMapPl2[i][j][k][l];
247 
248  mysubd = i;
249  depth = j;
250  ieta = l;
251  iphi = k;
252  edm::LogInfo("AnalyzerMB") << " Result Plus= " << mysubd << " " << ieta << " " << iphi << " mom0 "
253  << mom0_MB << " mom1 " << mom1_MB << " mom2 " << mom2_MB;
254  myTree->Fill();
255  ii++;
256  } // Pl > 0
257 
258  if (theMBFillDetMapMin0[i][j][k][l] > 0) {
259  mom0_MB = theMBFillDetMapMin0[i][j][k][l];
260  mom1_MB = theMBFillDetMapMin1[i][j][k][l];
261  mom2_MB = theMBFillDetMapMin2[i][j][k][l];
262  mom4_MB = theMBFillDetMapMin4[i][j][k][l];
270 
271  mysubd = i;
272  depth = j;
273  ieta = -1 * l;
274  iphi = k;
275  edm::LogInfo("AnalyzerMB") << " Result Minus= " << mysubd << " " << ieta << " " << iphi << " mom0 "
276  << mom0_MB << " mom1 " << mom1_MB << " mom2 " << mom2_MB;
277  myTree->Fill();
278  ii++;
279 
280  } // Min>0
281  } // ieta
282  } // iphi
283  } // depth
284  } //subd
285 
286  edm::LogInfo("AnalyzerMB") << " Number of cells " << ii;
287 
288  // hOutputFile->Write();
289  // hOutputFile->cd();
290  // myTree->Write();
291  // hHBHEsize_vs_run->Write() ;
292  // hHFsize_vs_run->Write() ;
293 
294  for (int i = 1; i < 73; i++) {
295  for (int j = 1; j < 43; j++) {
296  hCalo1[i][j]->Write();
297  hCalo2[i][j]->Write();
298  hCalo1mom2[i][j]->Write();
299  hCalo2mom2[i][j]->Write();
300  }
301  }
302 
303  // hbheNoiseE->Write() ;
304  // hfNoiseE->Write() ;
305  // hbheSignalE->Write() ;
306  // hfSignalE->Write() ;
307  // hOutputFile->Close() ;
308 
309  edm::LogInfo("AnalyzerMB") << " File is closed ";
310 
311  return;
312  }
double theMBFillDetMapMin0[5][5][73][43]
double theMBFillDetMapMin2[5][5][73][43]
double theDFFillDetMapPl2[5][5][73][43]
double theMBFillDetMapMin1[5][5][73][43]
double theNSFillDetMapPl4[5][5][73][43]
double theNSFillDetMapPl0[5][5][73][43]
double theNSFillDetMapMin0[5][5][73][43]
double theMBFillDetMapPl0[5][5][73][43]
TH1F * hCalo2mom2[73][43]
double theDFFillDetMapPl1[5][5][73][43]
double theNSFillDetMapPl2[5][5][73][43]
double theDFFillDetMapMin2[5][5][73][43]
TH1F * hCalo1mom2[73][43]
double theNSFillDetMapPl1[5][5][73][43]
double theMBFillDetMapPl1[5][5][73][43]
double theDFFillDetMapPl0[5][5][73][43]
double theMBFillDetMapPl4[5][5][73][43]
double theNSFillDetMapMin1[5][5][73][43]
double theNSFillDetMapMin4[5][5][73][43]
double theDFFillDetMapMin0[5][5][73][43]
double theMBFillDetMapPl2[5][5][73][43]
ii
Definition: cuy.py:590
int k[5][pyjets_maxn]
double theMBFillDetMapMin4[5][5][73][43]
double theNSFillDetMapMin2[5][5][73][43]
double theDFFillDetMapMin1[5][5][73][43]
void cms::Analyzer_minbias::endRun ( edm::Run const &  ,
edm::EventSetup const &   
)
override

Definition at line 82 of file Analyzer_minbias.cc.

References nevent_run, and edm::RunBase::run().

82  {
83  edm::LogInfo("AnalyzerMB") << " Runnumber " << r.run() << " Nevents " << nevent_run;
84  }

Member Data Documentation

int cms::Analyzer_minbias::depth
private
float cms::Analyzer_minbias::eta
private
std::string cms::Analyzer_minbias::fOutputFileName
private

Definition at line 72 of file Analyzer_minbias.h.

Referenced by Analyzer_minbias().

edm::Service<TFileService> cms::Analyzer_minbias::fs
private

Definition at line 79 of file Analyzer_minbias.h.

Referenced by beginJob().

TH1F* cms::Analyzer_minbias::hbheNoiseE
private

Definition at line 87 of file Analyzer_minbias.h.

Referenced by analyze(), and beginJob().

TH1F* cms::Analyzer_minbias::hbheSignalE
private

Definition at line 88 of file Analyzer_minbias.h.

Referenced by analyze(), and beginJob().

std::string cms::Analyzer_minbias::hcalfile_
private

Definition at line 73 of file Analyzer_minbias.h.

TH1F* cms::Analyzer_minbias::hCalo1[73][43]
private

Definition at line 83 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* cms::Analyzer_minbias::hCalo1mom2[73][43]
private

Definition at line 85 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* cms::Analyzer_minbias::hCalo2[73][43]
private

Definition at line 84 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* cms::Analyzer_minbias::hCalo2mom2[73][43]
private

Definition at line 86 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* cms::Analyzer_minbias::hfNoiseE
private

Definition at line 89 of file Analyzer_minbias.h.

Referenced by analyze(), and beginJob().

TH1F* cms::Analyzer_minbias::hfSignalE
private

Definition at line 90 of file Analyzer_minbias.h.

Referenced by analyze(), and beginJob().

TH2F* cms::Analyzer_minbias::hHBHEsize_vs_run
private

Definition at line 92 of file Analyzer_minbias.h.

Referenced by analyze(), and beginJob().

TH2F* cms::Analyzer_minbias::hHFsize_vs_run
private

Definition at line 93 of file Analyzer_minbias.h.

Referenced by analyze(), and beginJob().

TFile* cms::Analyzer_minbias::hOutputFile
private

Definition at line 81 of file Analyzer_minbias.h.

int cms::Analyzer_minbias::ieta
private

Definition at line 96 of file Analyzer_minbias.h.

Referenced by beginJob(), and endJob().

int cms::Analyzer_minbias::iphi
private

Definition at line 96 of file Analyzer_minbias.h.

Referenced by beginJob(), and endJob().

double cms::Analyzer_minbias::meannoise_min[73][43]
private

Definition at line 104 of file Analyzer_minbias.h.

Referenced by beginJob().

double cms::Analyzer_minbias::meannoise_pl[73][43]
private

Definition at line 104 of file Analyzer_minbias.h.

Referenced by beginJob().

float cms::Analyzer_minbias::mom0_Diff
private

Definition at line 100 of file Analyzer_minbias.h.

Referenced by beginJob(), and endJob().

float cms::Analyzer_minbias::mom0_MB
private

Definition at line 98 of file Analyzer_minbias.h.

Referenced by beginJob(), and endJob().

float cms::Analyzer_minbias::mom0_Noise
private

Definition at line 99 of file Analyzer_minbias.h.

Referenced by beginJob(), and endJob().

float cms::Analyzer_minbias::mom1_Diff
private

Definition at line 100 of file Analyzer_minbias.h.

Referenced by beginJob(), and endJob().

float cms::Analyzer_minbias::mom1_MB
private

Definition at line 98 of file Analyzer_minbias.h.

Referenced by beginJob(), and endJob().

float cms::Analyzer_minbias::mom1_Noise
private

Definition at line 99 of file Analyzer_minbias.h.

Referenced by beginJob(), and endJob().

float cms::Analyzer_minbias::mom2_Diff
private

Definition at line 100 of file Analyzer_minbias.h.

Referenced by beginJob(), and endJob().

float cms::Analyzer_minbias::mom2_MB
private

Definition at line 98 of file Analyzer_minbias.h.

Referenced by beginJob(), and endJob().

float cms::Analyzer_minbias::mom2_Noise
private

Definition at line 99 of file Analyzer_minbias.h.

Referenced by beginJob(), and endJob().

float cms::Analyzer_minbias::mom3_Diff
private

Definition at line 100 of file Analyzer_minbias.h.

float cms::Analyzer_minbias::mom3_MB
private

Definition at line 98 of file Analyzer_minbias.h.

float cms::Analyzer_minbias::mom3_Noise
private

Definition at line 99 of file Analyzer_minbias.h.

float cms::Analyzer_minbias::mom4_Diff
private

Definition at line 100 of file Analyzer_minbias.h.

float cms::Analyzer_minbias::mom4_MB
private

Definition at line 98 of file Analyzer_minbias.h.

Referenced by beginJob(), and endJob().

float cms::Analyzer_minbias::mom4_Noise
private

Definition at line 99 of file Analyzer_minbias.h.

Referenced by beginJob(), and endJob().

int cms::Analyzer_minbias::mydet
private

Definition at line 96 of file Analyzer_minbias.h.

Referenced by beginJob().

std::ofstream* cms::Analyzer_minbias::myout_hcal
private

Definition at line 74 of file Analyzer_minbias.h.

Referenced by beginJob().

int cms::Analyzer_minbias::mysubd
private

Definition at line 96 of file Analyzer_minbias.h.

Referenced by beginJob(), and endJob().

TTree* cms::Analyzer_minbias::myTree
private

Definition at line 82 of file Analyzer_minbias.h.

Referenced by beginJob(), and endJob().

double cms::Analyzer_minbias::nevent
private

Definition at line 109 of file Analyzer_minbias.h.

Referenced by analyze(), and beginJob().

int cms::Analyzer_minbias::nevent_run
private

Definition at line 95 of file Analyzer_minbias.h.

Referenced by analyze(), beginRun(), and endRun().

double cms::Analyzer_minbias::noise_min[73][43]
private

Definition at line 105 of file Analyzer_minbias.h.

Referenced by Analyzer_minbias().

double cms::Analyzer_minbias::noise_pl[73][43]
private

Definition at line 105 of file Analyzer_minbias.h.

Referenced by Analyzer_minbias().

float cms::Analyzer_minbias::occup
private

Definition at line 98 of file Analyzer_minbias.h.

Referenced by beginJob().

float cms::Analyzer_minbias::phi
private
double cms::Analyzer_minbias::theDFFillDetMapMin0[5][5][73][43]
private

Definition at line 133 of file Analyzer_minbias.h.

Referenced by beginJob(), and endJob().

double cms::Analyzer_minbias::theDFFillDetMapMin1[5][5][73][43]
private

Definition at line 134 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

double cms::Analyzer_minbias::theDFFillDetMapMin2[5][5][73][43]
private

Definition at line 135 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

double cms::Analyzer_minbias::theDFFillDetMapPl0[5][5][73][43]
private

Definition at line 130 of file Analyzer_minbias.h.

Referenced by beginJob(), and endJob().

double cms::Analyzer_minbias::theDFFillDetMapPl1[5][5][73][43]
private

Definition at line 131 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

double cms::Analyzer_minbias::theDFFillDetMapPl2[5][5][73][43]
private

Definition at line 132 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

double cms::Analyzer_minbias::theMBFillDetMapMin0[5][5][73][43]
private

Definition at line 115 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

double cms::Analyzer_minbias::theMBFillDetMapMin1[5][5][73][43]
private

Definition at line 116 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

double cms::Analyzer_minbias::theMBFillDetMapMin2[5][5][73][43]
private

Definition at line 117 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

double cms::Analyzer_minbias::theMBFillDetMapMin4[5][5][73][43]
private

Definition at line 118 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

double cms::Analyzer_minbias::theMBFillDetMapPl0[5][5][73][43]
private

Definition at line 110 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

double cms::Analyzer_minbias::theMBFillDetMapPl1[5][5][73][43]
private

Definition at line 111 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

double cms::Analyzer_minbias::theMBFillDetMapPl2[5][5][73][43]
private

Definition at line 112 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

double cms::Analyzer_minbias::theMBFillDetMapPl4[5][5][73][43]
private

Definition at line 113 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

double cms::Analyzer_minbias::theNSFillDetMapMin0[5][5][73][43]
private

Definition at line 125 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

double cms::Analyzer_minbias::theNSFillDetMapMin1[5][5][73][43]
private

Definition at line 126 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

double cms::Analyzer_minbias::theNSFillDetMapMin2[5][5][73][43]
private

Definition at line 127 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

double cms::Analyzer_minbias::theNSFillDetMapMin4[5][5][73][43]
private

Definition at line 128 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

double cms::Analyzer_minbias::theNSFillDetMapPl0[5][5][73][43]
private

Definition at line 120 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

double cms::Analyzer_minbias::theNSFillDetMapPl1[5][5][73][43]
private

Definition at line 121 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

double cms::Analyzer_minbias::theNSFillDetMapPl2[5][5][73][43]
private

Definition at line 122 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

double cms::Analyzer_minbias::theNSFillDetMapPl4[5][5][73][43]
private

Definition at line 123 of file Analyzer_minbias.h.

Referenced by analyze(), beginJob(), and endJob().

bool cms::Analyzer_minbias::theRecalib
private

Definition at line 149 of file Analyzer_minbias.h.

Referenced by analyze(), and Analyzer_minbias().

edm::EDGetTokenT<FEDRawDataCollection> cms::Analyzer_minbias::tok_data_
private

Definition at line 76 of file Analyzer_minbias.h.

Referenced by Analyzer_minbias().

edm::EDGetTokenT<L1GlobalTriggerReadoutRecord> cms::Analyzer_minbias::tok_gtRec_
private

Definition at line 146 of file Analyzer_minbias.h.

Referenced by Analyzer_minbias().

edm::EDGetTokenT<HBHERecHitCollection> cms::Analyzer_minbias::tok_hbhe_
private

Definition at line 137 of file Analyzer_minbias.h.

Referenced by analyze(), and Analyzer_minbias().

edm::EDGetTokenT<HBHERecHitCollection> cms::Analyzer_minbias::tok_hbheNoise_
private

Definition at line 141 of file Analyzer_minbias.h.

Referenced by analyze(), and Analyzer_minbias().

edm::EDGetTokenT<HBHERecHitCollection> cms::Analyzer_minbias::tok_hbheNorm_
private

Definition at line 147 of file Analyzer_minbias.h.

Referenced by analyze(), and Analyzer_minbias().

edm::EDGetTokenT<HFRecHitCollection> cms::Analyzer_minbias::tok_hf_
private

Definition at line 139 of file Analyzer_minbias.h.

Referenced by analyze(), and Analyzer_minbias().

edm::EDGetTokenT<HFRecHitCollection> cms::Analyzer_minbias::tok_hfNoise_
private

Definition at line 143 of file Analyzer_minbias.h.

Referenced by analyze(), and Analyzer_minbias().

edm::EDGetTokenT<HORecHitCollection> cms::Analyzer_minbias::tok_ho_
private

Definition at line 138 of file Analyzer_minbias.h.

Referenced by Analyzer_minbias().

edm::EDGetTokenT<HORecHitCollection> cms::Analyzer_minbias::tok_hoNoise_
private

Definition at line 142 of file Analyzer_minbias.h.

Referenced by Analyzer_minbias().