Go to the documentation of this file.
19 #ifndef CalibTracker_SiStripQuality_SiStripBadAPVandHotStripAlgorithmFromClusterOccupancy_H
20 #define CalibTracker_SiStripQuality_SiStripBadAPVandHotStripAlgorithmFromClusterOccupancy_H
66 bool WriteDQMHistograms) {
91 std::pair<double, double>*,
92 std::vector<unsigned int>&,
253 std::stringstream
ss;
std::vector< Apv > medianValues_TIDMinus_Disc2
std::vector< TH2F * > distanceVsStripNumber
std::vector< std::string > subDetName
std::pair< double, double > MeanAndRms_TECMinus_Disc2[7]
float strip_global_position_z
void extractBadAPVSandStrips(SiStripQuality *, HistoMap &, edm::ESHandle< SiStripQuality > &)
std::pair< double, double > MeanAndRms_TIB_Layer2[7]
std::vector< Apv > medianValues_TIB_Layer3
std::vector< TH1F * > projYDistanceVsStripNumber
double stripoccupancy[128]
std::pair< double, double > MeanAndRms_TIDPlus_Disc3[7]
std::pair< double, double > MeanAndRms_TECMinus_Disc5[7]
std::pair< double, double > MeanAndRms_TECMinus_Disc3[7]
std::vector< Apv > medianValues_TECMinus_Disc9
std::vector< Apv > medianValues_TIB_Layer1
void setBasicTreeParameters(int detid)
std::vector< Apv > medianValues_TECPlus_Disc2
std::vector< Apv > medianValues_TECPlus_Disc8
void CalculateMeanAndRMS(const std::vector< Apv > &, std::pair< double, double > *, int)
void initializeDQMHistograms()
std::vector< TH1F * > projXNHitsHotStripsVsStripNumber
std::vector< Apv > medianValues_TOB_Layer2
std::vector< Apv > medianValues_TIB_Layer2
std::vector< TH2F * > poissonProbGoodStripsVsStripNumber
std::pair< double, double > MeanAndRms_TIB_Layer1[7]
std::vector< Apv > medianValues_TOB_Layer6
void setAbsoluteLowThreshold(long double absolute_low)
std::vector< unsigned int > nLayers
std::vector< Apv > medianValues_TECPlus_Disc1
std::vector< TProfile * > pfxNHitsGoodStripsVsStripNumber
std::vector< Apv > medianValues_TECMinus_Disc4
void setHighOccupancyThreshold(long double high_occupancy)
std::pair< double, double > MeanAndRms_TIDPlus_Disc1[7]
std::vector< TProfile * > pfxPoissonProbGoodStripsVsStripNumber
dqm::legacy::MonitorElement MonitorElement
std::pair< double, double > MeanAndRms_TOB_Layer2[7]
std::pair< double, double > MeanAndRms_TOB_Layer1[7]
std::vector< TProfile * > pfxDistanceVsStripNumber
std::vector< TH1F * > projYPoissonProbGoodStripsVsStripNumber
std::pair< double, double > MeanAndRms_TECMinus_Disc4[7]
unsigned short MinNumEntries_
std::vector< Apv > medianValues_TECPlus_Disc4
std::vector< Apv > medianValues_TECPlus_Disc6
std::pair< double, double > MeanAndRms_TOB_Layer3[7]
std::vector< TH1F * > projYOccupancyVsStripNumber
double singleStripOccupancy
std::pair< double, double > MeanAndRms_TECMinus_Disc8[7]
std::vector< TH1F * > projYOccupancyHotStripsVsStripNumber
std::vector< TProfile * > pfxPoissonProbHotStripsVsStripNumber
void setAbsoluteOccupancyThreshold(long double absolute_occupancy)
const TrackerGeometry * TkGeom
void setLowOccupancyThreshold(long double low_occupancy)
std::vector< Apv > medianValues_TIDMinus_Disc3
std::vector< TProfile * > pfxNHitsHotStripsVsStripNumber
std::vector< Apv > medianValues_TIDPlus_Disc3
void setNumberOfEvents(double Nevents)
std::pair< double, double > MeanAndRms_TIB_Layer3[7]
std::vector< Apv > medianValues_TOB_Layer5
std::pair< double, double > MeanAndRms_TECMinus_Disc1[7]
std::vector< Apv > medianValues_TECMinus_Disc1
std::pair< double, double > MeanAndRms_TECMinus_Disc7[7]
double stripWeight[6][128]
long double absolute_occupancy_
std::pair< double, double > MeanAndRms_TIDPlus_Disc2[7]
std::pair< double, double > MeanAndRms_TOB_Layer6[7]
std::vector< TH1F * > projYNHitsHotStripsVsStripNumber
std::vector< TH1F * > projYOccupancyGoodStripsVsStripNumber
std::vector< TH1F * > projYNHitsVsStripNumber
std::vector< Apv > medianValues_TECMinus_Disc8
__gnu_cxx::hash_map< unsigned int, std::shared_ptr< TH1F > > QualityHistosMap
std::string DQMOutfileName_
std::vector< TProfile * > pfxOccupancyGoodStripsVsStripNumber
std::pair< double, double > MeanAndRms_TECMinus_Disc6[7]
void setTrackerGeometry(const TrackerGeometry *tkgeom)
std::vector< TH1F * > projXNHitsVsStripNumber
unsigned short MinNumEntriesPerStrip_
std::vector< std::string > layerName
std::vector< TProfile * > pfxPoissonProbVsStripNumber
std::vector< Apv > medianValues_TECMinus_Disc5
void fillStripDQMHistograms()
std::vector< Apv > medianValues_TECMinus_Disc6
std::pair< double, double > MeanAndRms_TIDMinus_Disc2[7]
int apvabsoluteOccupancy[6]
long double lowoccupancy_
std::pair< double, double > MeanAndRms_TECPlus_Disc2[7]
std::vector< Apv > medianValues_TECMinus_Disc7
SiStrip::QualityHistosMap HistoMap
std::vector< TH1F * > projYNHitsGoodStripsVsStripNumber
std::vector< TH1F * > projXDistanceVsStripNumber
std::pair< double, double > MeanAndRms_TECPlus_Disc3[7]
void iterativeSearch(Apv &, std::vector< unsigned int > &, int)
std::pair< double, double > MeanAndRms_TECPlus_Disc5[7]
TH1F * medianOccupancy[5][10]
WriteOutputFile
Name of root file for histograms.
float strip_global_position_x
void setProbabilityThreshold(long double prob)
std::vector< Apv > medianValues_TIDMinus_Disc1
std::vector< TH1F * > projYPoissonProbVsStripNumber
std::vector< Apv > medianValues_TIDPlus_Disc2
std::vector< TProfile * > pfxNHitsVsStripNumber
std::vector< TH2F * > occupancyHotStripsVsStripNumber
std::vector< TH2F * > poissonProbHotStripsVsStripNumber
std::vector< Apv > medianValues_TECMinus_Disc2
std::pair< double, double > MeanAndRms_TIDMinus_Disc1[7]
std::pair< double, double > MeanAndRms_TOB_Layer4[7]
double stripOccupancy[6][128]
std::pair< double, double > MeanAndRms_TIDMinus_Disc3[7]
std::vector< Apv > medianValues_TIB_Layer4
std::vector< Apv > medianValues_TIDPlus_Disc1
TH1F * absoluteOccupancy[5][10]
std::pair< double, double > MeanAndRms_TOB_Layer5[7]
const TrackerTopology * tTopo
SiStripBadAPVandHotStripAlgorithmFromClusterOccupancy(const edm::ParameterSet &, const TrackerTopology *)
virtual ~SiStripBadAPVandHotStripAlgorithmFromClusterOccupancy()
std::vector< TH2F * > occupancyGoodStripsVsStripNumber
double apvMedianOccupancy
std::vector< Apv > medianValues_TECPlus_Disc3
std::pair< double, double > MeanAndRms_TECPlus_Disc7[7]
std::vector< TProfile * > pfxOccupancyHotStripsVsStripNumber
void setMinNumEntries(unsigned short m)
SiStripQuality * pQuality
dqm::legacy::DQMStore DQMStore
void setNumberIterations(int number_iterations)
std::vector< Apv > medianValues_TOB_Layer3
std::pair< double, double > MeanAndRms_TECPlus_Disc8[7]
std::vector< Apv > medianValues_TOB_Layer1
void AnalyzeOccupancy(SiStripQuality *, std::vector< Apv > &, std::pair< double, double > *, std::vector< unsigned int > &, edm::ESHandle< SiStripQuality > &)
std::vector< TH2F * > occupancyVsStripNumber
std::vector< TH2F * > nHitsHotStripsVsStripNumber
std::vector< TH2F * > nHitsGoodStripsVsStripNumber
std::pair< double, double > MeanAndRms_TECPlus_Disc9[7]
std::vector< Apv > medianValues_TECPlus_Disc5
std::vector< Apv > medianValues_TECPlus_Disc9
long double highoccupancy_
std::vector< TH1F * > projXNHitsGoodStripsVsStripNumber
std::vector< TH2F * > poissonProbVsStripNumber
void evaluatePoissonian(std::vector< long double > &, long double &meanVal)
std::vector< Apv > medianValues_TOB_Layer4
std::vector< TH1F * > projYPoissonProbHotStripsVsStripNumber
std::pair< double, double > MeanAndRms_TIB_Layer4[7]
std::vector< TH2F * > nHitsVsStripNumber
TH2F * medianVsAbsoluteOccupancy[5][10]
void setMinNumEntriesPerStrip(unsigned short m)
float strip_global_position_y
std::vector< unsigned int > vHotStripsInModule
std::vector< Apv > medianValues_TECPlus_Disc7
std::vector< TProfile * > pfxOccupancyVsStripNumber
std::pair< double, double > MeanAndRms_TECPlus_Disc4[7]
std::vector< Apv > medianValues_TECMinus_Disc3
std::pair< double, double > MeanAndRms_TECMinus_Disc9[7]
std::pair< double, double > MeanAndRms_TECPlus_Disc6[7]
void setOutputFileName(std::string OutputFileName, bool WriteOutputFile, std::string DQMOutfileName, bool WriteDQMHistograms)
std::pair< double, double > MeanAndRms_TECPlus_Disc1[7]