CMS 3D CMS Logo

EcalEleCalibLooper.h
Go to the documentation of this file.
1 
8 #ifndef __CINT__
9 #ifndef EcalEleCalibLooper_H
10 #define EcalEleCalibLooper_H
16 #include <string>
17 #include <vector>
18 
28 
29 #include "CLHEP/Matrix/GenMatrix.h"
30 #include "CLHEP/Matrix/Matrix.h"
31 #include "CLHEP/Matrix/Vector.h"
33 public:
35  explicit EcalEleCalibLooper(const edm::ParameterSet &);
37  ~EcalEleCalibLooper() override;
38  void beginOfJob() override;
39  void endOfJob() override;
40  void startingNewLoop(unsigned int) override;
41  Status duringLoop(const edm::Event &, const edm::EventSetup &) override;
42  Status endOfLoop(const edm::EventSetup &, unsigned int iCounter) override;
43 
44 private:
45  //DS to divide in Regions
46  int EBRegionId(const int, const int) const;
47  int EERegionId(const int, const int) const;
48  //DS to define the regions for each cristal
49  void EBRegionDefinition();
50  void EERegionDefinition();
51  //DS defines the limit for the tan of phi
52  double giveLimit(int);
53 
54  //DS checks if the values of ics and ips are in EE or not
55  int EEregionCheck(const int, const int) const;
56  int EBregionCheck(const int eta, const int phi) const;
57 
59  int etaShifter(const int) const;
60 
61 private:
66 
70 
72  int m_etaWidth; //PG sub matrix size and borders
74  // int m_etaBorder ; //FIXME
78  // int m_phiBorderEB //FIXME;
79 
81  int m_etaStart; //PG ECAL region to be calibrated
83  int m_etaEnd;
90  int m_radEnd;
92  //FIXME int m_radBorder ;
96 
99 
101  std::vector<VEcalCalibBlock *> m_EcalCalibBlocks;
107  double m_minCoeff;
109  double m_maxCoeff;
112 
116 
118  unsigned int m_loops;
121  //The map Filler
123 
124  //DS number of regions in the Endcap
125  inline int EEregionsNum() const;
126  //DS number of regions in the barrel
127  inline int EBregionsNum() const;
128 
129  std::vector<int> m_regions;
130 
131  std::vector<DetId> m_barrelCells;
132  std::vector<DetId> m_endcapCells;
133 
134  std::map<int, int> m_xtalRegionId;
135  std::map<int, int> m_xtalPositionInRegion;
136  std::map<int, int> m_xtalNumOfHits;
137 
139 };
140 #endif
141 #endif
~EcalEleCalibLooper() override
dtor
std::vector< DetId > m_barrelCells
double giveLimit(int)
copes with the infinitives of the tangent
int EEregionsNum() const
DS Number of regions in EE.
std::vector< VEcalCalibBlock * > m_EcalCalibBlocks
single blocks calibrators
edm::InputTag m_endcapAlCa
EcalEndcap Input Collection name.
Status endOfLoop(const edm::EventSetup &, unsigned int iCounter) override
unsigned int m_loops
DS sets the number of loops to do.
int EBregionCheck(const int eta, const int phi) const
Tells if you are in the region to be calibrated.
ECAL TB 2006 calibration with matrix inversion technique.
int m_phiWidthEB
eta size of the additive border to the sub-matrix
int m_maxSelectedNumPerXtal
maximum number of events per crystal
double m_minEnergyPerCrystal
minimum energy per crystal cut
double m_maxCoeff
maximum coefficient accepted (RAW)
std::vector< DetId > m_endcapCells
int m_usingBlockSolver
to exclude the blocksolver
int m_radStart
DS For the EE.
edm::InputTag m_ElectronLabel
To take the electrons.
void endOfJob() override
Status duringLoop(const edm::Event &, const edm::EventSetup &) override
int m_etaStart
phi size of the additive border to the sub-matrix
EcalIntercalibConstantMap m_barrelMap
the maps of recalib coeffs
int EEregionCheck(const int, const int) const
returns zero if the coordinates are in the right place.
int m_recoWindowSidex
reconstruction window size
std::map< int, int > m_xtalRegionId
void EBRegionDefinition()
DS EB Region Definition.
int EERegionId(const int, const int) const
Gives the id of the region.
double m_minCoeff
minimum coefficient accepted (RAW)
int m_etaWidth
eta size of the sub-matrix
std::map< int, int > m_xtalNumOfHits
std::vector< int > m_regions
int etaShifter(const int) const
LP Change the coordinate system.
int m_phiEndEB
phi end of the region of interest
std::map< int, int > m_xtalPositionInRegion
int m_phiStartEB
phi start of the region of interest
void startingNewLoop(unsigned int) override
EcalIntercalibConstantMap m_endcapMap
edm::InputTag m_barrelAlCa
EcalBarrel Input Collection name.
EcalEleCalibLooper(const edm::ParameterSet &)
ctor
int m_etaEnd
eta end of the region of interest
int EBRegionId(const int, const int) const
Reg Id generator EB --— for the barrel.
void beginOfJob() override
BeginOfJob.
int EBregionsNum() const
DS number of regions in EB.
double m_maxEnergyPerCrystal
maximum energy per crystal cut