13 thePedestalCovarianceSum(0),
16 thePedestalPlot(
dbe_->book1D(
"CSCPedestal",
"CSC Pedestal ", 400, 550, 650) ),
17 thePedestalTimeCorrelationPlot(0),
18 thePedestalNeighborCorrelationPlot(0),
19 theAmplitudePlot(
dbe_->book1D(
"CSCStripAmplitude",
"CSC Strip Amplitude", 200, 0, 2000) ),
20 theRatio4to5Plot(
dbe_->book1D(
"CSCStrip4to5",
"CSC Strip Ratio tbin 4 to tbin 5", 100, 0, 1) ),
21 theRatio6to5Plot(
dbe_->book1D(
"CSCStrip6to5",
"CSC Strip Ratio tbin 6 to tbin 5", 120, 0, 1.2) ),
22 theNDigisPerLayerPlot(
dbe_->book1D(
"CSCStripDigisPerLayer",
"Number of CSC Strip Digis per layer", 48, 0, 48) ),
23 theNDigisPerChamberPlot(0),
24 theNDigisPerEventPlot(
dbe_->book1D(
"CSCStripDigisPerEvent",
"Number of CSC Strip Digis per event", 100, 0, 500) )
29 for(
int i = 0;
i < 10; ++
i)
32 sprintf(title1,
"CSCStripDigiResolution%d",
i+1);
55 edm::LogError(
"CSCDigiValidation") <<
"Cannot get strips by label "
59 unsigned nDigisPerEvent = 0;
62 std::vector<CSCStripDigi>::const_iterator digiItr = (*j).second.first;
63 std::vector<CSCStripDigi>::const_iterator
last = (*j).second.second;
64 int nDigis = last-digiItr;
65 nDigisPerEvent += nDigis;
68 double maxAmplitude = 0.;
71 for( ; digiItr !=
last; ++digiItr) {
73 std::vector<int> adcCounts = digiItr->getADCCounts();
78 if(adcCounts[4]-pedestal > maxAmplitude)
81 maxAmplitude = adcCounts[4]-pedestal;
135 const CSCLayer * layer,
int chamberType)
edm::InputTag theInputTag
MonitorElement * theNDigisPerEventPlot
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
MonitorElement * theRatio4to5Plot
std::vector< int > getADCCounts() const
Get ADC readings.
bool getByToken(EDGetToken token, Handle< PROD > &result) const
MonitorElement * theRatio6to5Plot
void analyze(const edm::Event &e, const edm::EventSetup &)
void fillSignalPlots(const CSCStripDigi &digi)
float xOfStrip(int strip, float y=0.) const
Local3DPoint localPosition() const
edm::EDGetTokenT< CSCStripDigiCollection > strips_Token_
MonitorElement * thePedestalPlot
MonitorElement * theNDigisPerLayerPlot
void plotResolution(const PSimHit &hit, int strip, const CSCLayer *layer, int chamberType)
MonitorElement * theAmplitudePlot
MonitorElement * theResolutionPlots[10]
~CSCStripDigiValidation()
CSCStripDigiValidation(DQMStore *dbe, const edm::InputTag &inputTag, edm::ConsumesCollector &&iC, bool doSim)
void fillPedestalPlots(const CSCStripDigi &digi)
const CSCLayerGeometry * geometry() const