CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HcalNoiseMonitor.h
Go to the documentation of this file.
1 #ifndef DQM_HCALMONITORTASKS_HCALNoiseMONITOR_H
2 #define DQM_HCALMONITORTASKS_HCALNoiseMONITOR_H
3 
9 
10 class HcalNoiseMonitor;
11 struct TriangleFitResult;
12 
14 {
15 public:
18 
19 
20  void setup();
21  void beginRun(const edm::Run& run, const edm::EventSetup& c);
22  void analyze(edm::Event const&e, edm::EventSetup const&s);
23 
24  void unpack(const FEDRawData& raw, const HcalElectronicsMap& emap);
25  void cleanup();
26  void reset();
27 
28 private:
29  std::vector<std::string> triggers_;
30  int period_;
31 
32 private:
35  double mMinE2E10;
36  double mMaxE2E10;
41 
42 private:
43  // Monitoring elements
49 
50  // Double-chi2 related stuff
56 
61 
65 
66  // Isolation Filter
68 
69  // Jason variable
72 
73  // Hcal noise summary object variable
82 
87 
88  std::vector<double> CumulativeIdealPulse;
89 
90 private:
91  double PerformNominalFit(double Charge[10]);
92  double PerformDualNominalFit(double Charge[10]);
93  double DualNominalFitSingleTry(double Charge[10], int Offset, int Distance);
94  double PerformLinearFit(double Charge[10]);
95  double CalculateRMS8Max(double Charge[10]);
96  TriangleFitResult PerformTriangleFit(double Charge[10]);
97  void ReadHcalPulse();
98 };
99 
101 {
102  double Chi2;
103  double LeftSlope;
104  double RightSlope;
105 };
106 
107 
108 
109 #endif
110 
MonitorElement * hBadCountHPD
MonitorElement * hE2OverE10Digi
MonitorElement * hBadNoOtherCountHPD
MonitorElement * hTS4TS5RelativeDifferenceVsCharge
double PerformNominalFit(double Charge[10])
MonitorElement * hE2OverE10RBX
edm::InputTag noiseLabel_
MonitorElement * hMaxZeros
TriangleFitResult PerformTriangleFit(double Charge[10])
MonitorElement * hLambdaRMS8MaxVsTotalCharge
double CalculateRMS8Max(double Charge[10])
MonitorElement * hHcalNoiseCategory
MonitorElement * hNominalChi2
EtaPhiHists hFailRMSMaxEtaPhi
MonitorElement * hTotalZeros
edm::InputTag hbheDigiLabel_
MonitorElement * hLinearChi2
MonitorElement * hLinearTestStatistics
edm::InputTag hltresultsLabel_
MonitorElement * hBadE2E10RBX
EtaPhiHists hFailTriangleEtaPhi
MonitorElement * hBadZeroRBX
void beginRun(const edm::Run &run, const edm::EventSetup &c)
MonitorElement * hTriangleRightSlopeVsTS4
MonitorElement * hRMS8OverMaxTestStatistics
MonitorElement * hTS4TS5RelativeDifference
double PerformDualNominalFit(double Charge[10])
double DualNominalFitSingleTry(double Charge[10], int Offset, int Distance)
MonitorElement * hRBXHitCount
MonitorElement * hE2OverE10Digi5
MonitorElement * hRMS8OverMax
MonitorElement * hTriangleLeftSlopeVsTS4
std::vector< double > CumulativeIdealPulse
void analyze(edm::Event const &e, edm::EventSetup const &s)
MonitorElement * hHPDHitCount
EtaPhiHists hFailIsolationEtaPhi
std::vector< std::string > triggers_
edm::InputTag hbheRechitLabel_
edm::InputTag rawdataLabel_
HcalNoiseMonitor(const edm::ParameterSet &ps)
MonitorElement * hLambdaLinearVsTotalCharge
Definition: Run.h:33
void unpack(const FEDRawData &raw, const HcalElectronicsMap &emap)
double PerformLinearFit(double Charge[10])
EtaPhiHists hFailLinearEtaPhi