CMS 3D CMS Logo

DTNoiseAnalysisTest.h
Go to the documentation of this file.
1 #ifndef DTNoiseAnalysisTest_H
2 #define DTNoiseAnalysisTest_H
3 
20 
21 #include <iostream>
22 #include <string>
23 #include <map>
24 
25 class DTGeometry;
26 class DTChamberId;
27 class DTSuperLayerId;
28 
30 public:
33 
35  ~DTNoiseAnalysisTest() override;
36 
37 protected:
39  void beginRun(edm::Run const& run, edm::EventSetup const& context) override;
40 
42 
44 
48  edm::LuminosityBlock const&,
49  edm::EventSetup const&) override;
50 
52 
53 private:
55  std::string getMEName(const DTChamberId& chID);
56  std::string getSynchNoiseMEName(int wheelId) const;
57 
58  int nevents;
59  int nMinEvts;
60 
62 
63  // the dt geometry
66 
67  // paramaters from cfg
69  bool isCosmics;
74 
75  // wheel summary histograms
76  std::map<int, MonitorElement*> noiseHistos;
77  std::map<int, MonitorElement*> noisyCellHistos;
82 
83  //values based on F. Romana research, estimate the background rate per chamber and set a threshold to spot noisy wires with a safety factor
84  static constexpr float cellW = 4.2; //cm
85  static constexpr float instLumi = 20; //E33 cm-2 s-1, reference for Run3
86  static constexpr std::array<std::array<float, 4>, 3> kW_MB = {
87  {{{0.41, 0.08, 0.01, 0.15}},
88  {{0.17, 0.04, 0.01, 0.15}},
89  {{0.06, 0.02, 0.01, 0.15}}}}; // in units of E33 cm-2 s-1, 3 wheel types x 4 MB stations
90  static constexpr std::array<std::array<float, 4>, 2> lenghtSL_MB = {
91  {{{206, 252, 302, 0}}, {{240, 240, 240, 240}}}}; //Theta and Phi SL1 SL3
92 };
93 
94 #endif
MonitorElement * threshChannelsHisto
static constexpr std::array< std::array< float, 4 >, 2 > lenghtSL_MB
void beginRun(edm::Run const &run, edm::EventSetup const &context) override
BeginRun.
std::map< int, MonitorElement * > noisyCellHistos
void dqmEndJob(DQMStore::IBooker &, DQMStore::IGetter &) override
std::string getSynchNoiseMEName(int wheelId) const
static constexpr float cellW
static constexpr std::array< std::array< float, 4 >, 3 > kW_MB
void bookHistos(DQMStore::IBooker &)
book the summary histograms
void dqmEndLuminosityBlock(DQMStore::IBooker &, DQMStore::IGetter &, edm::LuminosityBlock const &, edm::EventSetup const &) override
DQM Client Diagnostic.
static constexpr float instLumi
edm::ESGetToken< DTGeometry, MuonGeometryRecord > muonGeomToken_
std::string getMEName(const DTChamberId &chID)
Get the ME name.
MonitorElement * summarySynchNoiseHisto
std::map< int, MonitorElement * > noiseHistos
const DTGeometry * muonGeom
MonitorElement * glbSummarySynchNoiseHisto
~DTNoiseAnalysisTest() override
Destructor.
MonitorElement * summaryNoiseHisto
DTNoiseAnalysisTest(const edm::ParameterSet &ps)
Constructor.
Definition: Run.h:45