Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:08:28

0001 #ifndef DQM_SiStripCommissioningAnalysis_PedsFullNoiseAlgorithm_H
0002 #define DQM_SiStripCommissioningAnalysis_PedsFullNoiseAlgorithm_H
0003 
0004 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0005 #include "DQM/SiStripCommissioningAnalysis/interface/CommissioningAlgorithm.h"
0006 #include <vector>
0007 
0008 class PedsFullNoiseAnalysis;
0009 class TH1;
0010 
0011 /** 
0012     @class PedsFullNoiseAlgorithm
0013     @author M. Wingham, R.Bainbridge
0014     @brief Histogram-based analysis for pedestal run.
0015 */
0016 
0017 class PedsFullNoiseAlgorithm : public CommissioningAlgorithm {
0018 public:
0019   PedsFullNoiseAlgorithm(const edm::ParameterSet& pset, PedsFullNoiseAnalysis* const);
0020 
0021   ~PedsFullNoiseAlgorithm() override { ; }
0022 
0023   inline const Histo& hPeds() const;
0024   inline const Histo& hNoise() const;
0025   inline const Histo& hNoise2D() const;
0026 
0027 private:
0028   PedsFullNoiseAlgorithm() { ; }
0029 
0030   /** Extracts and organises histograms. */
0031   void extract(const std::vector<TH1*>&) override;
0032 
0033   /** Performs histogram anaysis. */
0034   void analyse() override;
0035 
0036   /** reset vector */
0037   void reset(PedsFullNoiseAnalysis*);
0038 
0039 private:
0040   /** Pedestals and raw noise */
0041   Histo hPeds_;
0042   /** Noise and residuals */
0043   Histo hNoise_;
0044   Histo hNoise2D_;
0045 
0046   /** Analysis parameters */
0047   float maxDriftResidualCut_;
0048   float minStripNoiseCut_;
0049   float maxStripNoiseCut_;
0050   float maxStripNoiseSignificanceCut_;
0051   float adProbabCut_;
0052   float ksProbabCut_;
0053   bool generateRandomHisto_;
0054   float jbProbabCut_;
0055   float chi2ProbabCut_;
0056   float kurtosisCut_;
0057   float integralTailCut_;
0058   int integralNsigma_;
0059   float ashmanDistance_;
0060   float amplitudeRatio_;
0061 };
0062 
0063 const PedsFullNoiseAlgorithm::Histo& PedsFullNoiseAlgorithm::hPeds() const { return hPeds_; }
0064 const PedsFullNoiseAlgorithm::Histo& PedsFullNoiseAlgorithm::hNoise2D() const { return hNoise2D_; }
0065 const PedsFullNoiseAlgorithm::Histo& PedsFullNoiseAlgorithm::hNoise() const { return hNoise_; }
0066 
0067 #endif  // DQM_SiStripCommissioningAnalysis_PedsFullNoiseAlgorithm_H