CMS 3D CMS Logo

InvRingCalib.h
Go to the documentation of this file.
1 
8 #ifndef __CINT__
9 #ifndef InvRingCalib_H
10 #define InvRingCalib_H
24 
25 #include <string>
26 #include <vector>
27 
29 
30 class InvRingCalib : public edm::EDLooper {
31 public:
33  explicit InvRingCalib(const edm::ParameterSet &);
35  ~InvRingCalib() override;
36  void beginOfJob() override;
37  void endOfJob() override;
38  void startingNewLoop(unsigned int) override;
39  Status duringLoop(const edm::Event &, const edm::EventSetup &) override;
40  Status endOfLoop(const edm::EventSetup &, unsigned int iCounter) override;
41 
42  //end
43 
44 private:
46  inline int EERegionNum() const;
48  int EBRegionNum() const;
50  void EBRegionDef();
52  void EERingDef(const edm::EventSetup &);
54  void EERegionDef();
56  void RegPrepare();
58  int EBRegId(const int);
60  int EERegId(int);
61 
64 
65 private:
73  const int m_recoWindowSidex;
74  const int m_recoWindowSidey;
76  const double m_minEnergyPerCrystal;
78  const double m_maxEnergyPerCrystal;
80  const int m_etaStart;
82  const int m_etaEnd;
84  const int m_etaWidth;
85  // std::map<int,float> m_eta;
89  std::map<int, int> m_RingNumOfHits;
91  std::vector<VEcalCalibBlock *> m_IMACalibBlocks;
93  const double m_minCoeff;
95  const double m_maxCoeff;
97  const int m_usingBlockSolver;
99  std::map<int, GlobalPoint> m_cellPos;
100  std::map<int, int> m_cellPhi;
106  unsigned int m_loops;
108  const int m_startRing;
109  const int m_endRing;
111  std::map<int, int> m_xtalRing;
113  std::map<int, int> m_xtalRegionId;
115  std::map<int, int> m_RinginRegion;
116 
118  std::vector<DetId> m_barrelCells;
119  std::vector<DetId> m_endcapCells;
124  const int m_EEZone;
126  std::map<int, int> m_Reg;
129 
136 };
137 #endif
138 #endif
const edm::InputTag m_ElectronLabel
To take the electrons.
Definition: InvRingCalib.h:71
const double m_maxEnergyPerCrystal
maximum energy per crystal cut
Definition: InvRingCalib.h:78
const int m_etaWidth
eta size of the regions
Definition: InvRingCalib.h:84
void startingNewLoop(unsigned int) override
startingNewLoop
const edm::EDGetTokenT< EBRecHitCollection > m_ebRecHitToken
ED token.
Definition: InvRingCalib.h:131
void EERingDef(const edm::EventSetup &)
Defines the rins in the endcap.
std::map< int, int > m_xtalRegionId
association map between raw detIds and Region
Definition: InvRingCalib.h:113
void EBRegionDef()
Defines the regions in the barrel.
const int m_endRing
Definition: InvRingCalib.h:109
const int m_usingBlockSolver
to exclude the blocksolver
Definition: InvRingCalib.h:97
const int m_startRing
LP define the EE region to calibrate.
Definition: InvRingCalib.h:108
InvRingCalib(const edm::ParameterSet &)
ctor
Definition: InvRingCalib.cc:26
const int m_EEZone
endcap zone to be calibrated
Definition: InvRingCalib.h:124
EcalIntercalibConstantMap m_endcapMap
Definition: InvRingCalib.h:104
void EERegionDef()
Defines the regions in the endcap.
int EERegionNum() const
The number of regions in EE.
void beginOfJob() override
BeginOfJob.
std::vector< VEcalCalibBlock * > m_IMACalibBlocks
single blocks calibrators
Definition: InvRingCalib.h:91
Status duringLoop(const edm::Event &, const edm::EventSetup &) override
duringLoop
int EERegId(int)
gives back in which region of the endcap you are.
Status endOfLoop(const edm::EventSetup &, unsigned int iCounter) override
const double m_maxCoeff
maximum coefficient accepted (RAW)
Definition: InvRingCalib.h:95
const edm::EDGetTokenT< reco::GsfElectronCollection > m_gsfElectronToken
Definition: InvRingCalib.h:133
const double m_minCoeff
minimum coefficient accepted (RAW)
Definition: InvRingCalib.h:93
EcalIntercalibConstantMap m_barrelMap
Definition: InvRingCalib.h:103
int EBRegionNum() const
Number of regions in EB.
void endOfJob() override
const edm::InputTag m_barrelAlCa
EcalBarrel Input Collection name.
Definition: InvRingCalib.h:67
std::map< int, GlobalPoint > m_cellPos
position of the cell, borders, coords etc...
Definition: InvRingCalib.h:99
const int m_recoWindowSidey
Definition: InvRingCalib.h:74
const edm::ESGetToken< CaloGeometry, CaloGeometryRecord > m_geometryToken
ES token.
Definition: InvRingCalib.h:135
VFillMap * m_MapFiller
The class that fills the map!
Definition: InvRingCalib.h:63
const int m_etaEnd
eta end of the zone of interest
Definition: InvRingCalib.h:82
std::map< int, int > m_Reg
EB regions vs. eta index.
Definition: InvRingCalib.h:126
std::vector< DetId > m_barrelCells
geometry things used all over the file
Definition: InvRingCalib.h:118
const int m_etaStart
eta start of the zone of interest
Definition: InvRingCalib.h:80
std::map< int, int > m_RinginRegion
association map between raw detIds and the number of the ring inside the region
Definition: InvRingCalib.h:115
~InvRingCalib() override
dtor
void RegPrepare()
Prepares the EB regions;.
unsigned int m_loops
LP sets the number of loops to do.
Definition: InvRingCalib.h:106
std::map< int, int > m_xtalRing
association map between Raw detIds and Rings
Definition: InvRingCalib.h:111
const edm::InputTag m_endcapAlCa
EcalEndcap Input Collection name.
Definition: InvRingCalib.h:69
const edm::EDGetTokenT< EERecHitCollection > m_eeRecHitToken
Definition: InvRingCalib.h:132
const double m_minEnergyPerCrystal
minimum energy per crystal cut
Definition: InvRingCalib.h:76
const int m_recoWindowSidex
reconstruction window size
Definition: InvRingCalib.h:73
const int m_maxSelectedNumPerRing
maximum number of events per Ring
Definition: InvRingCalib.h:87
std::map< int, int > m_cellPhi
Definition: InvRingCalib.h:100
const std::string m_EEcoeffFile
Definition: InvRingCalib.h:122
const std::string m_EBcoeffFile
coeffs filenames
Definition: InvRingCalib.h:121
ECAL TB 2006 calibration with matrix inversion technique.
Definition: InvRingCalib.h:30
std::vector< DetId > m_endcapCells
Definition: InvRingCalib.h:119
std::map< int, int > m_RingNumOfHits
number of events already read per Ring
Definition: InvRingCalib.h:89
std::string m_mapFillerType
Definition: InvRingCalib.h:127
int EBRegId(const int)
Gives back in which region you are: