CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes
SiStripHotStripAlgorithmFromClusterOccupancy Class Reference

#include <CalibTracker/SiStripQuality/src/SiStripHotStripAlgorithmFromClusterOccupancy.cc>

Classes

struct  pHisto
 

Public Types

typedef SiStrip::QualityHistosMap HistoMap
 

Public Member Functions

void extractBadStrips (SiStripQuality *, HistoMap &, edm::ESHandle< SiStripQuality > &)
 
void setMinNumEntries (unsigned short m)
 
void setMinNumEntriesPerStrip (unsigned short m)
 
void setNumberOfEvents (double Nevents)
 
void setOccupancyThreshold (long double occupancy)
 
void setOutputFileName (std::string OutputFileName, bool WriteOutputFile)
 
void setProbabilityThreshold (long double prob)
 
void setTrackerGeometry (const TrackerGeometry *tkgeom)
 
 SiStripHotStripAlgorithmFromClusterOccupancy (const edm::ParameterSet &, const TrackerTopology *)
 
virtual ~SiStripHotStripAlgorithmFromClusterOccupancy ()
 

Private Member Functions

void evaluatePoissonian (std::vector< long double > &, long double &meanVal)
 
void iterativeSearch (pHisto &, std::vector< unsigned int > &, int)
 

Private Attributes

int apv_channel
 
int detrawid
 
int disc
 
TFile * f
 
float global_position_x
 
float global_position_y
 
float global_position_z
 
int hotStripsPerAPV
 
int hotstripsperapv [6]
 
int hotStripsPerModule
 
int hotstripspermodule
 
int isback
 
int isexternalstring
 
int isHot
 
int ishot [768]
 
int isstereo
 
int iszminusside
 
int layer_ring
 
double minNevents_
 
unsigned short MinNumEntries_
 
unsigned short MinNumEntriesPerStrip_
 
int module_position
 
double Nevents_
 
int number_strips
 
long double occupancy_
 
std::string OutFileName_
 
double poissonProb
 
double poissonprob [768]
 
SiStripQualitypQuality
 
long double prob_
 
int rodstringpetal
 
std::stringstream ss
 
int strip_number
 
int stripHits
 
int striphits [768]
 
double stripOccupancy
 
double stripoccupancy [768]
 
TTree * striptree
 
int subdetid
 
const TrackerGeometryTkGeom
 
const TrackerTopologytTopo
 
bool UseInputDB_
 
bool WriteOutputFile_
 

Detailed Description

Description: <one line="" class="" summary>="">

Implementation: <Notes on="" implementation>="">

Definition at line 52 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Member Typedef Documentation

Constructor & Destructor Documentation

SiStripHotStripAlgorithmFromClusterOccupancy::SiStripHotStripAlgorithmFromClusterOccupancy ( const edm::ParameterSet iConfig,
const TrackerTopology theTopo 
)

Definition at line 10 of file SiStripHotStripAlgorithmFromClusterOccupancy.cc.

References minNevents_, Nevents_, and occupancy_.

10  :
11  prob_(1.E-7),
12  MinNumEntries_(0),
14  Nevents_(0),
15  occupancy_(0),
16  OutFileName_("Occupancy.root"),
17  tTopo(theTopo),
18  UseInputDB_(iConfig.getUntrackedParameter<bool>("UseInputDB",false))
19  {
21  }
T getUntrackedParameter(std::string const &, T const &) const
SiStripHotStripAlgorithmFromClusterOccupancy::~SiStripHotStripAlgorithmFromClusterOccupancy ( )
virtual

Definition at line 24 of file SiStripHotStripAlgorithmFromClusterOccupancy.cc.

References LogTrace.

24  {
25  LogTrace("SiStripHotStripAlgorithmFromClusterOccupancy")<<"[SiStripHotStripAlgorithmFromClusterOccupancy::~SiStripHotStripAlgorithmFromClusterOccupancy] "<<std::endl;
26 }
#define LogTrace(id)

Member Function Documentation

void SiStripHotStripAlgorithmFromClusterOccupancy::evaluatePoissonian ( std::vector< long double > &  vPoissonProbs,
long double &  meanVal 
)
private

Definition at line 283 of file SiStripHotStripAlgorithmFromClusterOccupancy.cc.

References i.

Referenced by iterativeSearch().

283  {
284  for(size_t i=0;i<vPoissonProbs.size();++i){
285  vPoissonProbs[i]= (i==0)?TMath::Poisson(i,meanVal):vPoissonProbs[i-1]+TMath::Poisson(i,meanVal);
286  }
287 }
int i
Definition: DBlmapReader.cc:9
void SiStripHotStripAlgorithmFromClusterOccupancy::extractBadStrips ( SiStripQuality OutSiStripQuality,
HistoMap DM,
edm::ESHandle< SiStripQuality > &  InSiStripQuality 
)

Definition at line 28 of file SiStripHotStripAlgorithmFromClusterOccupancy.cc.

References SiStripHotStripAlgorithmFromClusterOccupancy::pHisto::_NEntries, SiStripHotStripAlgorithmFromClusterOccupancy::pHisto::_SubdetId, SiStripHotStripAlgorithmFromClusterOccupancy::pHisto::_th1f, apv_channel, SiStripQuality::clear(), SiStripQuality::compact(), gather_cfg::cout, cond::rpcobgas::detid, detrawid, disc, f, SiStripQuality::fillBadComponents(), global_position_x, global_position_y, global_position_z, hotStripsPerAPV, hotstripsperapv, hotStripsPerModule, hotstripspermodule, i, TrackerGeometry::idToDet(), isback, edm::isDebugEnabled(), isexternalstring, isHot, ishot, isstereo, iszminusside, iterativeSearch(), layer_ring, StripTopology::localPosition(), LogTrace, module_position, number_strips, OutFileName_, poissonProb, poissonprob, pQuality, SiStripBadStrip::put(), rodstringpetal, StripGeomDetUnit::specificTopology(), ss, SiStripDetId::stereo(), strip_number, stripHits, striphits, stripOccupancy, stripoccupancy, striptree, DetId::subdetId(), subdetid, StripSubdetector::TEC, TrackerTopology::tecIsBackPetal(), TrackerTopology::tecIsZMinusSide(), TrackerTopology::tecModule(), TrackerTopology::tecPetalNumber(), TrackerTopology::tecRing(), TrackerTopology::tecWheel(), StripSubdetector::TIB, TrackerTopology::tibIsExternalString(), TrackerTopology::tibIsZMinusSide(), TrackerTopology::tibLayer(), TrackerTopology::tibModule(), TrackerTopology::tibString(), StripSubdetector::TID, TrackerTopology::tidIsBackRing(), TrackerTopology::tidIsZMinusSide(), TrackerTopology::tidModule(), TrackerTopology::tidRing(), TrackerTopology::tidWheel(), TkGeom, StripSubdetector::TOB, TrackerTopology::tobIsZMinusSide(), TrackerTopology::tobLayer(), TrackerTopology::tobModule(), TrackerTopology::tobRod(), tTopo, UseInputDB_, WriteOutputFile_, PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().

Referenced by SiStripQualityHotStripIdentifier::getNewObject(), and SiStripQualityHotStripIdentifierRoot::getNewObject().

28  {
29 
30  LogTrace("SiStripHotStripAlgorithmFromClusterOccupancy")<<"[SiStripHotStripAlgorithmFromClusterOccupancy::extractBadStrips] "<<std::endl;
31 
32 
33 
34  if (WriteOutputFile_==true){
35  f = new TFile(OutFileName_.c_str(),"RECREATE");
36  f->cd();
37 
38  striptree = new TTree("stripOccupancy","tree");
39 
40  striptree->Branch("DetRawId", &detrawid, "DetRawId/I");
41  striptree->Branch("SubDetId", &subdetid, "SubDetId/I");
42  striptree->Branch("Layer_Ring", &layer_ring, "Layer_Ring/I");
43  striptree->Branch("Disc", &disc, "Disc/I");
44  striptree->Branch("IsBack", &isback, "IsBack/I");
45  striptree->Branch("IsExternalString", &isexternalstring, "IsExternalString/I");
46  striptree->Branch("IsZMinusSide", &iszminusside, "IsZMinusSide/I");
47  striptree->Branch("RodStringPetal", &rodstringpetal, "RodStringPetal/I");
48  striptree->Branch("IsStereo", &isstereo, "IsStereo/I");
49  striptree->Branch("ModulePosition", &module_position, "ModulePosition/I");
50  striptree->Branch("NumberOfStrips", &number_strips, "NumberOfStrips/I");
51  striptree->Branch("StripNumber", &strip_number, "StripNumber/I");
52  striptree->Branch("APVChannel", &apv_channel, "APVChannel/I");
53  striptree->Branch("StripGlobalPositionX", &global_position_x, "StripGlobalPositionX/F");
54  striptree->Branch("StripGlobalPositionY", &global_position_y, "StripGlobalPositionY/F");
55  striptree->Branch("StripGlobalPositionZ", &global_position_z, "StripGlobalPositionZ/F");
56  striptree->Branch("IsHot", &isHot, "IsHot/I");
57  striptree->Branch("HotStripsPerAPV", &hotStripsPerAPV, "HotStripsPerAPV/I");
58  striptree->Branch("HotStripsPerModule", &hotStripsPerModule,"HotStripsPerModule/I");
59  striptree->Branch("StripOccupancy", &stripOccupancy, "StripOccupancy/D");
60  striptree->Branch("StripHits", &stripHits, "StripHits/I");
61  striptree->Branch("PoissonProb", &poissonProb, "PoissonProb/D");
62  }
63 
64 
65  HistoMap::iterator it=DM.begin();
66  HistoMap::iterator itEnd=DM.end();
67  std::vector<unsigned int> badStripList;
68  uint32_t detid;
69  for (;it!=itEnd;++it){
70  pHisto phisto;
71  detid=it->first;
72 
73  DetId detectorId=DetId(detid);
74  phisto._SubdetId=detectorId.subdetId();
75 
76  if (edm::isDebugEnabled())
77  LogTrace("SiStripHotStrip") << "Analyzing detid " << detid<< std::endl;
78 
79  int numberAPVs = (int)(it->second.get())->GetNbinsX()/128;
80 
81  // Set the values for the tree:
82 
83  detrawid = detid;
84  subdetid = detectorId.subdetId();
85  number_strips = (int)(it->second.get())->GetNbinsX();
86  if (SiStripDetId(detrawid).stereo() !=0 ) isstereo = 1; // It's a stereo module
87  else isstereo = 0; // It's an rphi module
88  switch (detectorId.subdetId())
89  {
92  disc = -1;
93  isback = -1;
95  else isexternalstring = 0;
97  else iszminusside = 0;
100  break;
101 
102  case StripSubdetector::TID :
105  if (tTopo->tidIsBackRing(detrawid)) isback = 1;
106  else isback = 0;
108  else iszminusside = 0;
109  isexternalstring = -1;
110  rodstringpetal = -1;
112  break;
113 
114  case StripSubdetector::TOB :
116  disc = -1;
117  isback = -1;
119  else iszminusside = 0;
120  isexternalstring = -1;
123  break;
124 
125  case StripSubdetector::TEC :
128  if (tTopo->tecIsBackPetal(detrawid)) isback = 1;
129  else isback = 0;
131  else iszminusside = 0;
132  isexternalstring = -1;
135  break;
136 
137  default :
138  std::cout << "### Detector does not belong to TIB, TID, TOB or TEC !? ###" << std::endl;
139  std::cout << "### DetRawId: " << detrawid << " ###" << std::endl;
140  }
141 
142  // End: Set the values for the tree.
143 
144 
145  pQuality=OutSiStripQuality;
146  badStripList.clear();
147 
148  for (int i=0; i<768; i++){
149  ishot[i] = 0;
150  stripoccupancy[i] = 0;
151  striphits[i] = 0;
152  poissonprob[i] = 0;
153  hotstripsperapv[i/128] = 0;
154  }
155 
156  hotstripspermodule = 0;
157 
158  for (int apv=0; apv<numberAPVs; apv++){
159  if(UseInputDB_){
160  if(InSiStripQuality->IsApvBad(detid,apv) ){
161  if(edm::isDebugEnabled())
162  LogTrace("SiStripHotStrip")<<"(Module and Apv number) "<<detid<<" , "<<apv<<" excluded by input ESetup."<<std::endl;
163  continue;//if the apv is already flagged as bad, continue.
164  }
165  else{
166  if(edm::isDebugEnabled())
167  LogTrace("SiStripHotStrip")<<"(Module and Apv number) "<<detid<<" , "<<apv<<" good by input ESetup."<<std::endl;
168  }
169  }
170 
171  phisto._th1f = new TH1F("tmp","tmp",128,0.5,128.5);
172  int NumberEntriesPerAPV=0;
173 
174  for (int strip=0; strip<128; strip++){
175  phisto._th1f->SetBinContent(strip+1,(it->second.get())->GetBinContent((apv*128)+strip+1));
176  NumberEntriesPerAPV += (int)(it->second.get())->GetBinContent((apv*128)+strip+1);
177  }
178 
179  phisto._th1f->SetEntries(NumberEntriesPerAPV);
180  phisto._NEntries=(int)phisto._th1f->GetEntries();
181 
182  LogTrace("SiStripHotStrip") << "Number of clusters in APV " << apv << ": " << NumberEntriesPerAPV << std::endl;
183 
184  iterativeSearch(phisto,badStripList,apv);
185 
186  delete phisto._th1f;
187  }
188 
189  const StripGeomDetUnit* theStripDet = dynamic_cast<const StripGeomDetUnit*>( (TkGeom->idToDet(detectorId)) );
190  const StripTopology* theStripTopol = dynamic_cast<const StripTopology*>( &(theStripDet->specificTopology()) );
191 
192  for (int strip=0; strip<number_strips; strip++)
193  {
194  strip_number = strip+1;
195  apv_channel = (strip%128)+1;
196  isHot = ishot[strip];
198  stripHits = striphits[strip];
199  poissonProb = poissonprob[strip];
200 
202  hotStripsPerAPV = hotstripsperapv[strip/128];
203 
204  LocalPoint pos_strip_local = theStripTopol->localPosition(strip);
205  GlobalPoint pos_strip_global = (TkGeom->idToDet(detectorId))->surface().toGlobal(pos_strip_local);
206 
207  global_position_x = pos_strip_global.x();
208  global_position_y = pos_strip_global.y();
209  global_position_z = pos_strip_global.z();
210 
211  if (WriteOutputFile_==true) striptree->Fill();
212  }
213 
214  if (badStripList.begin()==badStripList.end())
215  continue;
216 
217  OutSiStripQuality->compact(detid,badStripList);
218 
219  SiStripQuality::Range range(badStripList.begin(),badStripList.end());
220  if ( ! OutSiStripQuality->put(detid,range) )
221  edm::LogError("SiStripHotStrip")<<"[SiStripHotStripAlgorithmFromClusterOccupancy::extractBadStrips] detid already exists"<<std::endl;
222  }
223  OutSiStripQuality->fillBadComponents();
224 
225  if (WriteOutputFile_==true){
226  f->cd();
227  striptree->Write();
228  f->Close();
229  }
230 
231  LogTrace("SiStripHotStrip") << ss.str() << std::endl;
232 }
bool isDebugEnabled()
int i
Definition: DBlmapReader.cc:9
unsigned int tibLayer(const DetId &id) const
unsigned int tibString(const DetId &id) const
unsigned int tidRing(const DetId &id) const
uint32_t stereo() const
Definition: SiStripDetId.h:162
unsigned int tecRing(const DetId &id) const
ring id
T y() const
Definition: PV3DBase.h:63
unsigned int tidWheel(const DetId &id) const
virtual const StripTopology & specificTopology() const
Returns a reference to the strip proxy topology.
bool tecIsZMinusSide(const DetId &id) const
bool tidIsZMinusSide(const DetId &id) const
bool tibIsExternalString(const DetId &id) const
bool tibIsZMinusSide(const DetId &id) const
unsigned int tidModule(const DetId &id) const
bool tidIsBackRing(const DetId &id) const
T z() const
Definition: PV3DBase.h:64
void compact(unsigned int &, std::vector< unsigned int > &)
bool tobIsZMinusSide(const DetId &id) const
void fillBadComponents()
int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:37
#define LogTrace(id)
unsigned int tibModule(const DetId &id) const
unsigned int tecModule(const DetId &id) const
Detector identifier class for the strip tracker.
Definition: SiStripDetId.h:17
bool tecIsBackPetal(const DetId &id) const
Definition: DetId.h:18
void iterativeSearch(pHisto &, std::vector< unsigned int > &, int)
unsigned int tobModule(const DetId &id) const
std::pair< ContainerIterator, ContainerIterator > Range
virtual LocalPoint localPosition(float strip) const =0
unsigned int tecPetalNumber(const DetId &id) const
tuple cout
Definition: gather_cfg.py:121
unsigned int tobRod(const DetId &id) const
bool put(const uint32_t &detID, const InputVector &vect)
T x() const
Definition: PV3DBase.h:62
unsigned int tecWheel(const DetId &id) const
unsigned int tobLayer(const DetId &id) const
virtual const TrackerGeomDet * idToDet(DetId) const
void SiStripHotStripAlgorithmFromClusterOccupancy::iterativeSearch ( pHisto histo,
std::vector< unsigned int > &  vect,
int  apv 
)
private

Definition at line 235 of file SiStripHotStripAlgorithmFromClusterOccupancy.cc.

References SiStripHotStripAlgorithmFromClusterOccupancy::pHisto::_NEmptyBins, SiStripHotStripAlgorithmFromClusterOccupancy::pHisto::_NEntries, SiStripHotStripAlgorithmFromClusterOccupancy::pHisto::_th1f, diffTreeTool::diff, SiStripBadStrip::encode(), python.tagInventory::entries, evaluatePoissonian(), hotstripsperapv, hotstripspermodule, i, edm::isDebugEnabled(), ishot, LogTrace, minNevents_, MinNumEntries_, MinNumEntriesPerStrip_, SiStripMonitorClusterAlca_cfi::Nbins, Nevents_, poissonprob, pQuality, prob_, striphits, and stripoccupancy.

Referenced by extractBadStrips().

235  {
236  if (!histo._NEntries || histo._NEntries <=MinNumEntries_ || histo._NEntries <= minNevents_)
237  return;
238 
239  size_t startingSize=vect.size();
240  long double diff=1.-prob_;
241 
242  size_t Nbins = histo._th1f->GetNbinsX();
243  size_t ibinStart = 1;
244  size_t ibinStop = Nbins+1;
245  int MaxEntry = (int)histo._th1f->GetMaximum();
246 
247  std::vector<long double> vPoissonProbs(MaxEntry+1,0);
248  long double meanVal=1.*histo._NEntries/(1.*Nbins-histo._NEmptyBins);
249  evaluatePoissonian(vPoissonProbs,meanVal);
250 
251  for (size_t i=ibinStart; i<ibinStop; ++i){
252  unsigned int entries= (unsigned int)histo._th1f->GetBinContent(i);
253 
254  if (ishot[(apv*128)+i-1]==0){
255  stripoccupancy[(apv*128)+i-1] = entries/(double) Nevents_;
256  striphits[(apv*128)+i-1] = entries;
257  poissonprob[(apv*128)+i-1] = 1-vPoissonProbs[entries];
258  }
259 
260  if (entries<=MinNumEntriesPerStrip_ || entries <= minNevents_)
261  continue;
262 
263  if(diff<vPoissonProbs[entries]){
264  ishot[(apv*128)+i-1] = 1;
266  hotstripsperapv[apv]++;
267  histo._th1f->SetBinContent(i,0.);
268  histo._NEntries-=entries;
269  histo._NEmptyBins++;
270  if (edm::isDebugEnabled())
271  LogTrace("SiStripHotStrip")<< " rejecting strip " << (apv*128)+i-1 << " value " << entries << " diff " << diff << " prob " << vPoissonProbs[entries]<< std::endl;
272  vect.push_back(pQuality->encode((apv*128)+i-1,1,0));
273  }
274 
275  }
276  if (edm::isDebugEnabled())
277  LogTrace("SiStripHotStrip") << " [SiStripHotStripAlgorithmFromClusterOccupancy::iterativeSearch] Nbins="<< Nbins << " MaxEntry="<<MaxEntry << " meanVal=" << meanVal << " NEmptyBins="<<histo._NEmptyBins<< " NEntries=" << histo._NEntries << " thEntries " << histo._th1f->GetEntries()<< " startingSize " << startingSize << " vector.size " << vect.size() << std::endl;
278 
279  if (vect.size()!=startingSize)
280  iterativeSearch(histo,vect,apv);
281 }
bool isDebugEnabled()
int i
Definition: DBlmapReader.cc:9
void evaluatePoissonian(std::vector< long double > &, long double &meanVal)
#define LogTrace(id)
void iterativeSearch(pHisto &, std::vector< unsigned int > &, int)
if(conf.exists("allCellsPositionCalc"))
unsigned int encode(const unsigned short &first, const unsigned short &NconsecutiveBadStrips, const unsigned short &flag=0)
void SiStripHotStripAlgorithmFromClusterOccupancy::setMinNumEntries ( unsigned short  m)
inline
void SiStripHotStripAlgorithmFromClusterOccupancy::setMinNumEntriesPerStrip ( unsigned short  m)
inline
void SiStripHotStripAlgorithmFromClusterOccupancy::setNumberOfEvents ( double  Nevents)

Definition at line 289 of file SiStripHotStripAlgorithmFromClusterOccupancy.cc.

References edm::isDebugEnabled(), LogTrace, minNevents_, Nevents_, and occupancy_.

Referenced by SiStripQualityHotStripIdentifierRoot::getNewObject().

289  {
290  Nevents_=Nevents;
292  if (edm::isDebugEnabled())
293  LogTrace("SiStripHotStrip")<<" [SiStripHotStripAlgorithmFromClusterOccupancy::setNumberOfEvents] minNumber of Events per strip used to consider a strip bad" << minNevents_ << " for occupancy " << occupancy_ << std::endl;
294 }
bool isDebugEnabled()
#define LogTrace(id)
void SiStripHotStripAlgorithmFromClusterOccupancy::setOccupancyThreshold ( long double  occupancy)
inline
void SiStripHotStripAlgorithmFromClusterOccupancy::setOutputFileName ( std::string  OutputFileName,
bool  WriteOutputFile 
)
inline
void SiStripHotStripAlgorithmFromClusterOccupancy::setProbabilityThreshold ( long double  prob)
inline
void SiStripHotStripAlgorithmFromClusterOccupancy::setTrackerGeometry ( const TrackerGeometry tkgeom)
inline

Member Data Documentation

int SiStripHotStripAlgorithmFromClusterOccupancy::apv_channel
private

Definition at line 118 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

int SiStripHotStripAlgorithmFromClusterOccupancy::detrawid
private

Definition at line 106 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

int SiStripHotStripAlgorithmFromClusterOccupancy::disc
private

Definition at line 109 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

TFile* SiStripHotStripAlgorithmFromClusterOccupancy::f
private
float SiStripHotStripAlgorithmFromClusterOccupancy::global_position_x
private

Definition at line 120 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

float SiStripHotStripAlgorithmFromClusterOccupancy::global_position_y
private

Definition at line 121 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

float SiStripHotStripAlgorithmFromClusterOccupancy::global_position_z
private

Definition at line 122 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

int SiStripHotStripAlgorithmFromClusterOccupancy::hotStripsPerAPV
private

Definition at line 125 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

int SiStripHotStripAlgorithmFromClusterOccupancy::hotstripsperapv[6]
private
int SiStripHotStripAlgorithmFromClusterOccupancy::hotStripsPerModule
private

Definition at line 126 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

int SiStripHotStripAlgorithmFromClusterOccupancy::hotstripspermodule
private
int SiStripHotStripAlgorithmFromClusterOccupancy::isback
private

Definition at line 110 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

int SiStripHotStripAlgorithmFromClusterOccupancy::isexternalstring
private

Definition at line 111 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

int SiStripHotStripAlgorithmFromClusterOccupancy::isHot
private

Definition at line 124 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

int SiStripHotStripAlgorithmFromClusterOccupancy::ishot[768]
private
int SiStripHotStripAlgorithmFromClusterOccupancy::isstereo
private

Definition at line 114 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

int SiStripHotStripAlgorithmFromClusterOccupancy::iszminusside
private

Definition at line 112 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

int SiStripHotStripAlgorithmFromClusterOccupancy::layer_ring
private

Definition at line 108 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

double SiStripHotStripAlgorithmFromClusterOccupancy::minNevents_
private
unsigned short SiStripHotStripAlgorithmFromClusterOccupancy::MinNumEntries_
private
unsigned short SiStripHotStripAlgorithmFromClusterOccupancy::MinNumEntriesPerStrip_
private
int SiStripHotStripAlgorithmFromClusterOccupancy::module_position
private

Definition at line 115 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

double SiStripHotStripAlgorithmFromClusterOccupancy::Nevents_
private
int SiStripHotStripAlgorithmFromClusterOccupancy::number_strips
private

Definition at line 116 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

long double SiStripHotStripAlgorithmFromClusterOccupancy::occupancy_
private
std::string SiStripHotStripAlgorithmFromClusterOccupancy::OutFileName_
private
double SiStripHotStripAlgorithmFromClusterOccupancy::poissonProb
private

Definition at line 129 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

double SiStripHotStripAlgorithmFromClusterOccupancy::poissonprob[768]
private
SiStripQuality* SiStripHotStripAlgorithmFromClusterOccupancy::pQuality
private
long double SiStripHotStripAlgorithmFromClusterOccupancy::prob_
private
int SiStripHotStripAlgorithmFromClusterOccupancy::rodstringpetal
private

Definition at line 113 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

std::stringstream SiStripHotStripAlgorithmFromClusterOccupancy::ss
private

Definition at line 139 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

int SiStripHotStripAlgorithmFromClusterOccupancy::strip_number
private

Definition at line 117 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

int SiStripHotStripAlgorithmFromClusterOccupancy::stripHits
private

Definition at line 128 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

int SiStripHotStripAlgorithmFromClusterOccupancy::striphits[768]
private
double SiStripHotStripAlgorithmFromClusterOccupancy::stripOccupancy
private

Definition at line 127 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

double SiStripHotStripAlgorithmFromClusterOccupancy::stripoccupancy[768]
private
TTree* SiStripHotStripAlgorithmFromClusterOccupancy::striptree
private

Definition at line 104 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

int SiStripHotStripAlgorithmFromClusterOccupancy::subdetid
private

Definition at line 107 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

const TrackerGeometry* SiStripHotStripAlgorithmFromClusterOccupancy::TkGeom
private
const TrackerTopology* SiStripHotStripAlgorithmFromClusterOccupancy::tTopo
private

Definition at line 99 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

bool SiStripHotStripAlgorithmFromClusterOccupancy::UseInputDB_
private

Definition at line 105 of file SiStripHotStripAlgorithmFromClusterOccupancy.h.

Referenced by extractBadStrips().

bool SiStripHotStripAlgorithmFromClusterOccupancy::WriteOutputFile_
private