CMS 3D CMS Logo

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

#include <MuonHOAcceptance.h>

Classes

struct  deadIdRegion
 
struct  deadRegion
 

Static Public Member Functions

static TMultiGraph * graphDeadRegions ()
 
static TMultiGraph * graphSiPMRegions ()
 
static bool inGeomAccept (double eta, double phi, double delta_eta=0., double delta_phi=0.)
 
static bool Inited ()
 
static void initIds (edm::EventSetup const &eSetup)
 
static bool inNotDeadGeom (double eta, double phi, double delta_eta=0., double delta_phi=0.)
 
static bool inSiPMGeom (double eta, double phi, double delta_eta=0., double delta_phi=0.)
 
static bool isChannelDead (uint32_t id)
 
static bool isChannelSiPM (uint32_t id)
 

Static Private Member Functions

static void buildDeadAreas ()
 
static void buildSiPMAreas ()
 
static void convertRegions (std::list< deadIdRegion > const &idregions, std::vector< deadRegion > &regions)
 
static TMultiGraph * graphRegions (std::vector< deadRegion > const &regions)
 
static void mergeRegionLists (std::list< deadIdRegion > &didregions)
 

Static Private Attributes

static std::vector< uint32_t > deadIds
 
static std::vector< deadRegiondeadRegions
 
static int const etaBounds = 5
 
static double const etaMax []
 
static double const etaMin []
 
static bool inited = false
 
static double const phiMaxR0 []
 
static double const phiMaxR12 []
 
static double const phiMinR0 []
 
static double const phiMinR12 []
 
static int const phiSectors = 12
 
static std::vector< uint32_t > SiPMIds
 
static std::vector< deadRegionSiPMRegions
 
static double const twopi = 2.*3.14159265358979323846
 

Detailed Description

Definition at line 9 of file MuonHOAcceptance.h.

Member Function Documentation

void MuonHOAcceptance::buildDeadAreas ( )
staticprivate

Definition at line 217 of file MuonHOAcceptance.cc.

References convertRegions(), deadIds, deadRegions, HcalDetId::ieta(), HcalDetId::iphi(), and mergeRegionLists().

Referenced by initIds().

217  {
218  std::vector<uint32_t>::iterator did;
219  std::list<deadIdRegion> didregions;
220  for (did = deadIds.begin(); did != deadIds.end(); ++did) {
221  HcalDetId tmpId(*did);
222  didregions.push_back( deadIdRegion( tmpId.ieta(), tmpId.ieta(),
223  tmpId.iphi(), tmpId.iphi() ) );
224  }
225  // std::cout << "dead regions: " << didregions.size() << '\n';
226 
227  mergeRegionLists(didregions);
228  convertRegions(didregions, deadRegions);
229 }
static void mergeRegionLists(std::list< deadIdRegion > &didregions)
static std::vector< uint32_t > deadIds
static std::vector< deadRegion > deadRegions
static void convertRegions(std::list< deadIdRegion > const &idregions, std::vector< deadRegion > &regions)
void MuonHOAcceptance::buildSiPMAreas ( )
staticprivate

Definition at line 231 of file MuonHOAcceptance.cc.

References convertRegions(), HcalDetId::ieta(), HcalDetId::iphi(), mergeRegionLists(), SiPMIds, and SiPMRegions.

Referenced by initIds().

231  {
232  std::vector<uint32_t>::iterator sid;
233  std::list<deadIdRegion> idregions;
234 
235  for (sid = SiPMIds.begin(); sid != SiPMIds.end(); ++sid) {
236  HcalDetId tmpId(*sid);
237  idregions.push_back( deadIdRegion( tmpId.ieta(), tmpId.ieta(),
238  tmpId.iphi(), tmpId.iphi() ) );
239  }
240 
241  mergeRegionLists(idregions);
242  convertRegions(idregions,SiPMRegions);
243 }
static void mergeRegionLists(std::list< deadIdRegion > &didregions)
static std::vector< uint32_t > SiPMIds
static void convertRegions(std::list< deadIdRegion > const &idregions, std::vector< deadRegion > &regions)
static std::vector< deadRegion > SiPMRegions
void MuonHOAcceptance::convertRegions ( std::list< deadIdRegion > const &  idregions,
std::vector< deadRegion > &  regions 
)
staticprivate

Definition at line 285 of file MuonHOAcceptance.cc.

References funct::abs(), reco::e1, reco::e2, etaMax, etaMin, bookConverter::max, min(), hltrates_dqm_sourceclient-live_cfg::offset, phiMaxR0, phiMaxR12, phiMinR0, phiMinR12, phiSectors, HLT_25ns10e33_v2_cff::pMin, and twopi.

Referenced by buildDeadAreas(), and buildSiPMAreas().

286  {
287  double e1, e2;
288  double eMin,eMax,pMin,pMax;
289  static double const etaStep = 0.087;
290  static double const phiStep = twopi/72.;
291  double const offset = 2.;
292  double const * mins;
293  double const * maxes;
294  std::list<deadIdRegion>::const_iterator curr;
295  double zero;
296  for (curr = idregions.begin(); curr != idregions.end(); ++curr) {
297  // std::cout << "region boundaries: ieta,iphi\n"
298  // << " min: " << curr->etaMin << ',' << curr->phiMin << '\n'
299  // << " max: " << curr->etaMax << ',' << curr->phiMax << '\n';
300  if (curr->etaMin == -4) {
301  eMin = etaMax[1];
302  } else if (curr->etaMin == 5) {
303  eMin = etaMin[3];
304  } else {
305  e1 = (std::abs(curr->etaMin)-1)*etaStep*
306  (-(curr->etaMin<0) + (curr->etaMin>0));
307  e2 = std::abs(curr->etaMin)*etaStep*
308  (-(curr->etaMin<0) + (curr->etaMin>0));
309  eMin = std::min(e1,e2);
310  }
311  if (curr->etaMax == 4) {
312  eMax = etaMin[3];
313  } else if (curr->etaMax == -5) {
314  eMax = etaMax[1];
315  } else {
316  e1 = (std::abs(curr->etaMax)-1)*etaStep*
317  (-(curr->etaMax<0) + (curr->etaMax>0));
318  e2 = std::abs(curr->etaMax)*etaStep*
319  (-(curr->etaMax<0) + (curr->etaMax>0));
320  eMax = std::max(e1,e2);
321  }
322  mins = ((std::abs(curr->etaMin)>4) ? phiMinR12 : phiMinR0);
323  maxes = ((std::abs(curr->etaMin)>4) ? phiMaxR12 : phiMaxR0);
324  zero = (mins[0] + maxes[phiSectors-1] - twopi)/2.;
325  pMin = (curr->phiMin-1)*phiStep + zero + phiStep*offset;
326  pMax = curr->phiMax*phiStep + zero + phiStep*offset;
327  while (pMax < mins[0])
328  pMax += twopi;
329  while (pMax > mins[0]+twopi)
330  pMax -= twopi;
331  while (pMin < mins[0])
332  pMin += twopi;
333  while (pMin > mins[0]+twopi)
334  pMin -= twopi;
335 
336  regions.push_back( deadRegion(eMin, eMax, pMin, pMax) );
337  // std::cout << " : eta,phi\n"
338  // << " min: " << tmp.etaMin << ',' << tmp.phiMin << '\n'
339  // << " max: " << tmp.etaMax << ',' << tmp.phiMax << '\n';
340  }
341 }
static double const twopi
static double const phiMaxR0[]
static double const phiMinR12[]
static double const phiMinR0[]
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
T min(T a, T b)
Definition: MathUtil.h:58
static double const etaMax[]
Float e1
Definition: deltaR.h:20
static double const etaMin[]
static double const phiMaxR12[]
Float e2
Definition: deltaR.h:21
static int const phiSectors
static TMultiGraph* MuonHOAcceptance::graphDeadRegions ( )
inlinestatic

Definition at line 21 of file MuonHOAcceptance.h.

References deadRegions, and graphRegions().

21 { return graphRegions(deadRegions); }
static TMultiGraph * graphRegions(std::vector< deadRegion > const &regions)
static std::vector< deadRegion > deadRegions
TMultiGraph * MuonHOAcceptance::graphRegions ( std::vector< deadRegion > const &  regions)
staticprivate

Definition at line 343 of file MuonHOAcceptance.cc.

References HLT_25ns10e33_v2_cff::pMin, HLT_25ns10e33_v2_cff::region, and twopi.

Referenced by graphDeadRegions(), and graphSiPMRegions().

343  {
344  TMultiGraph * bounds = new TMultiGraph("bounds", "bounds");
345  std::vector<deadRegion>::const_iterator region;
346  TGraph * gr;
347  for (region = regions.begin(); region != regions.end(); ++region) {
348  // std::cout << "region eta range:(" << region->etaMin << ',' << region->etaMax
349  // << ") phi range: (" << region->phiMin << ',' << region->phiMax << ")\n";
350  double pMin = region->phiMin;
351  while (pMin > twopi/2.) pMin -= twopi;
352  double pMax = region->phiMax;
353  while (pMax > twopi/2.) pMax -= twopi;
354 
355  if (pMin < pMax) {
356  gr = new TGraph(5);
357  gr->SetLineColor(kRed);
358  gr->SetPoint(0, region->etaMin, pMin);
359  gr->SetPoint(1, region->etaMin, pMax);
360  gr->SetPoint(2, region->etaMax, pMax);
361  gr->SetPoint(3, region->etaMax, pMin);
362  gr->SetPoint(4, region->etaMin, pMin);
363  bounds->Add(gr, "l");
364  } else {
365  gr = new TGraph(5);
366  gr->SetLineColor(kRed);
367  gr->SetPoint(0, region->etaMin, pMin);
368  gr->SetPoint(1, region->etaMin, twopi/2.);
369  gr->SetPoint(2, region->etaMax, twopi/2.);
370  gr->SetPoint(3, region->etaMax, pMin);
371  gr->SetPoint(4, region->etaMin, pMin);
372  bounds->Add(gr, "l");
373  gr = new TGraph(5);
374  gr->SetLineColor(kRed);
375  gr->SetPoint(0, region->etaMin, -twopi/2.);
376  gr->SetPoint(1, region->etaMin, pMax);
377  gr->SetPoint(2, region->etaMax, pMax);
378  gr->SetPoint(3, region->etaMax, -twopi/2.);
379  gr->SetPoint(4, region->etaMin, -twopi/2.);
380  bounds->Add(gr, "l");
381  }
382  }
383  return bounds;
384 }
static double const twopi
static TMultiGraph* MuonHOAcceptance::graphSiPMRegions ( )
inlinestatic

Definition at line 22 of file MuonHOAcceptance.h.

References graphRegions(), and SiPMRegions.

22 { return graphRegions(SiPMRegions); }
static TMultiGraph * graphRegions(std::vector< deadRegion > const &regions)
static std::vector< deadRegion > SiPMRegions
bool MuonHOAcceptance::inGeomAccept ( double  eta,
double  phi,
double  delta_eta = 0.,
double  delta_phi = 0. 
)
static

Definition at line 100 of file MuonHOAcceptance.cc.

References kinem::delta_phi(), etaBounds, etaMax, etaMin, phiMaxR0, phiMaxR12, phiMinR0, phiMinR12, phiSectors, and twopi.

102 {
103  for (int ieta = 0; ieta<etaBounds; ++ieta) {
104  if ( (eta > etaMin[ieta]+delta_eta) &&
105  (eta < etaMax[ieta]-delta_eta) ) {
106  for (int iphi = 0; iphi<phiSectors; ++iphi) {
107  double const * mins = ((ieta == 2) ? phiMinR0 : phiMinR12);
108  double const * maxes = ((ieta == 2) ? phiMaxR0 : phiMaxR12);
109  while (phi < mins[0])
110  phi += twopi;
111  while (phi > mins[0]+twopi)
112  phi -= twopi;
113  if ( ( phi > mins[iphi] + delta_phi ) &&
114  ( phi < maxes[iphi] - delta_phi ) ) {
115  return true;
116  }
117  }
118  return false;
119  }
120  }
121  return false;
122 }
static double const twopi
double delta_eta(double eta1, double eta2)
Definition: AnglesUtil.h:98
static double const phiMaxR0[]
static double const phiMinR12[]
static int const etaBounds
static double const phiMinR0[]
static double const etaMax[]
double delta_phi(double ph11, double phi2)
Definition: AnglesUtil.h:91
static double const etaMin[]
static double const phiMaxR12[]
static int const phiSectors
static bool MuonHOAcceptance::Inited ( )
inlinestatic

Definition at line 20 of file MuonHOAcceptance.h.

References inited.

20 { return inited; }
static bool inited
void MuonHOAcceptance::initIds ( edm::EventSetup const &  eSetup)
static

Definition at line 165 of file MuonHOAcceptance.cc.

References buildDeadAreas(), buildSiPMAreas(), deadIds, HcalSeverityLevelComputer::dropChannel(), edm::EventSetup::get(), HcalChannelStatus::getValue(), HcalCondObjectContainer< Item >::getValues(), HcalOuter, inited, AlCaHLTBitMon_ParallelJobs::p, edm::ESHandle< class >::product(), DetId::rawId(), and SiPMIds.

165  {
166  deadIds.clear();
167 
169  eSetup.get<HcalChannelQualityRcd>().get("withTopo",p);
170  const HcalChannelQuality *myqual = p.product();
171 
173  eSetup.get<HcalSeverityLevelComputerRcd>().get(mycomputer);
174  const HcalSeverityLevelComputer *mySeverity = mycomputer.product();
175 
176  // TTree * deads = new TTree("deads", "deads");
177  // deads->ReadFile("HOdeadnessChannels.txt", "ieta/I:iphi/I:deadness/D");
178  int ieta, iphi;
179  // double deadness;
180  // deads->SetBranchAddress("ieta", &ieta);
181  // deads->SetBranchAddress("iphi", &iphi);
182  // deads->SetBranchAddress("deadness", &deadness);
183  // deads->Print();
184  //std::cout << "ieta\tiphi\n";
185  for (ieta=-15; ieta <= 15; ieta++) {
186  if (ieta != 0) {
187  for (iphi = 1; iphi <= 72; iphi++) {
188  // for (int i=0; i<deads->GetEntries(); ++i) {
189  // deads->GetEntry(i);
190  // if (deadness > 0.4) {
191  HcalDetId did(HcalOuter,ieta,iphi,4);
192  const HcalChannelStatus *mystatus = myqual->getValues(did.rawId());
193  if (mySeverity->dropChannel(mystatus->getValue())) {
194  deadIds.push_back(did.rawId());
195  // std::cout << did.ieta() << '\t' << did.iphi() << '\n';
196  }
197  //HO +1 RBX 10
198  if ( (ieta>=5) && (ieta<=10) && (iphi >= 47) && (iphi <= 58) ) {
199  SiPMIds.push_back(did.rawId());
200  }
201  //HO +2 RBX 12
202  if ( (ieta>=11) && (ieta<=15) && (iphi >= 59) && (iphi <= 70) ) {
203  SiPMIds.push_back(did.rawId());
204  }
205  }
206  }
207  }
208  std::sort(deadIds.begin(), deadIds.end());
209  std::sort(SiPMIds.begin(), SiPMIds.end());
210  // std::cout << "SiPMIds: " << SiPMIds.size() << '\n';
211  // delete deads;
212  buildDeadAreas();
213  buildSiPMAreas();
214  inited = true;
215 }
static std::vector< uint32_t > deadIds
const Item * getValues(DetId fId, bool throwOnFail=true) const
static void buildDeadAreas()
bool dropChannel(const uint32_t &mystatus) const
static void buildSiPMAreas()
T const * product() const
Definition: ESHandle.h:86
static bool inited
static std::vector< uint32_t > SiPMIds
uint32_t getValue() const
bool MuonHOAcceptance::inNotDeadGeom ( double  eta,
double  phi,
double  delta_eta = 0.,
double  delta_phi = 0. 
)
static

Definition at line 124 of file MuonHOAcceptance.cc.

References funct::abs(), deadRegions, kinem::delta_eta(), kinem::delta_phi(), etaMax, inited, phiMinR0, phiMinR12, HLT_25ns10e33_v2_cff::region, and twopi.

125  {
126  if (!inited) return true;
127  int ieta = int(eta/0.087) + ((eta>0) ? 1 : -1);
128  double const * mins = ((std::abs(ieta) > 4) ? phiMinR12 : phiMinR0);
129  while (phi < mins[0])
130  phi += twopi;
131  while (phi > mins[0]+twopi)
132  phi -= twopi;
133  std::vector<deadRegion>::const_iterator region;
134  for (region = deadRegions.begin(); region != deadRegions.end(); ++region) {
135  if ( (phi < region->phiMax + delta_phi) &&
136  (phi > region->phiMin - delta_phi) &&
137  (eta < region->etaMax + delta_eta) &&
138  (eta > region->etaMin - delta_eta) )
139  return false;
140  }
141  return true;
142 }
static double const twopi
double delta_eta(double eta1, double eta2)
Definition: AnglesUtil.h:98
static double const phiMinR12[]
static double const phiMinR0[]
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
static double const etaMax[]
double delta_phi(double ph11, double phi2)
Definition: AnglesUtil.h:91
static std::vector< deadRegion > deadRegions
static bool inited
bool MuonHOAcceptance::inSiPMGeom ( double  eta,
double  phi,
double  delta_eta = 0.,
double  delta_phi = 0. 
)
static

Definition at line 144 of file MuonHOAcceptance.cc.

References funct::abs(), kinem::delta_eta(), kinem::delta_phi(), etaMax, inited, phiMinR0, phiMinR12, HLT_25ns10e33_v2_cff::region, SiPMRegions, and twopi.

145  {
146  if (!inited) return false;
147  int ieta = int(eta/0.087) + ((eta>0) ? 1 : -1);
148  double const * mins = ((std::abs(ieta) > 4) ? phiMinR12 : phiMinR0);
149  while (phi < mins[0])
150  phi += twopi;
151  while (phi > mins[0]+twopi)
152  phi -= twopi;
153  std::vector<deadRegion>::const_iterator region;
154  for (region = SiPMRegions.begin(); region != SiPMRegions.end(); ++region) {
155  if ( (phi < region->phiMax - delta_phi) &&
156  (phi > region->phiMin + delta_phi) &&
157  (eta < region->etaMax - delta_eta) &&
158  (eta > region->etaMin + delta_eta) ) {
159  return true;
160  }
161  }
162  return false;
163 }
static double const twopi
double delta_eta(double eta1, double eta2)
Definition: AnglesUtil.h:98
static double const phiMinR12[]
static double const phiMinR0[]
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
static double const etaMax[]
double delta_phi(double ph11, double phi2)
Definition: AnglesUtil.h:91
static bool inited
static std::vector< deadRegion > SiPMRegions
bool MuonHOAcceptance::isChannelDead ( uint32_t  id)
static

Definition at line 84 of file MuonHOAcceptance.cc.

References deadIds, spr::find(), newFWLiteAna::found, and inited.

84  {
85  if (!inited) return false;
86  std::vector<uint32_t>::const_iterator found =
87  std::find(deadIds.begin(), deadIds.end(), id);
88  if ((found != deadIds.end()) && (*found == id)) return true;
89  else return false;
90 }
static std::vector< uint32_t > deadIds
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:7
static bool inited
bool MuonHOAcceptance::isChannelSiPM ( uint32_t  id)
static

Definition at line 92 of file MuonHOAcceptance.cc.

References spr::find(), newFWLiteAna::found, inited, and SiPMIds.

92  {
93  if (!inited) return false;
94  std::vector<uint32_t>::const_iterator found =
95  std::find(SiPMIds.begin(), SiPMIds.end(), id);
96  if ((found != SiPMIds.end()) && (*found == id)) return true;
97  else return false;
98 }
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:7
static bool inited
static std::vector< uint32_t > SiPMIds
void MuonHOAcceptance::mergeRegionLists ( std::list< deadIdRegion > &  didregions)
staticprivate

Definition at line 245 of file MuonHOAcceptance.cc.

References MuonHOAcceptance::deadIdRegion::adjacentEta(), MuonHOAcceptance::deadIdRegion::adjacentPhi(), MuonHOAcceptance::deadIdRegion::merge(), MuonHOAcceptance::deadIdRegion::sameEta(), and MuonHOAcceptance::deadIdRegion::samePhi().

Referenced by buildDeadAreas(), and buildSiPMAreas().

245  {
246  std::list<deadIdRegion>::iterator curr;
247  std::list<deadIdRegion> list2;
248  unsigned int startSize;
249  do {
250  startSize = didregions.size();
251 
252  // std::cout << "regions: " << startSize << '\n';
253  //merge in phi
254  curr = didregions.begin();
255  while (curr != didregions.end()) {
256  deadIdRegion merger(*curr);
257  curr = didregions.erase(curr);
258  while (curr != didregions.end()) {
259  if ( (merger.sameEta(*curr)) && (merger.adjacentPhi(*curr)) ) {
260  merger.merge(*curr);
261  curr = didregions.erase(curr);
262  } else ++curr;
263  }
264  list2.push_back(merger);
265  curr = didregions.begin();
266  }
267 
268  //merge in eta
269  curr = list2.begin();
270  while (curr != list2.end()) {
271  deadIdRegion merger(*curr);
272  curr = list2.erase(curr);
273  while (curr != list2.end()) {
274  if ( (merger.samePhi(*curr)) && (merger.adjacentEta(*curr)) ) {
275  merger.merge(*curr);
276  curr = list2.erase(curr);
277  } else ++curr;
278  }
279  didregions.push_back(merger);
280  curr = list2.begin();
281  }
282  } while (startSize > didregions.size());
283 }

Member Data Documentation

std::vector< uint32_t > MuonHOAcceptance::deadIds
staticprivate

Definition at line 81 of file MuonHOAcceptance.h.

Referenced by buildDeadAreas(), initIds(), and isChannelDead().

std::vector< MuonHOAcceptance::deadRegion > MuonHOAcceptance::deadRegions
staticprivate

Definition at line 82 of file MuonHOAcceptance.h.

Referenced by buildDeadAreas(), graphDeadRegions(), and inNotDeadGeom().

int const MuonHOAcceptance::etaBounds = 5
staticprivate

Definition at line 86 of file MuonHOAcceptance.h.

Referenced by inGeomAccept().

double const MuonHOAcceptance::etaMax
staticprivate
Initial value:
=
{-0.8796, -0.3425, 0.3017, 0.8542, 1.2544}

Definition at line 88 of file MuonHOAcceptance.h.

Referenced by convertRegions(), inGeomAccept(), inNotDeadGeom(), and inSiPMGeom().

double const MuonHOAcceptance::etaMin
staticprivate
Initial value:
=
{-1.2544, -0.8542, -0.3017, 0.3425, 0.8796}

Definition at line 87 of file MuonHOAcceptance.h.

Referenced by convertRegions(), and inGeomAccept().

bool MuonHOAcceptance::inited = false
staticprivate
double const MuonHOAcceptance::phiMaxR0
staticprivate
Initial value:
= { 0.317395374,
0.84099415,
1.364592925,
1.888191701,
2.411790477,
2.935389252,
3.458988028,
3.982586803,
4.506185579,
5.029784355,
5.55338313,
6.076981906 }

Definition at line 92 of file MuonHOAcceptance.h.

Referenced by convertRegions(), and inGeomAccept().

double const MuonHOAcceptance::phiMaxR12
staticprivate
Initial value:
= { 0.34398862,
0.867587396,
1.391186172,
1.914784947,
2.438383723,
2.961982498,
3.485581274,
4.00918005,
4.532778825,
5.056377601,
5.579976376,
6.103575152 }

Definition at line 94 of file MuonHOAcceptance.h.

Referenced by convertRegions(), and inGeomAccept().

double const MuonHOAcceptance::phiMinR0
staticprivate
Initial value:
= {-0.16172,
0.3618786,
0.8854773,
1.409076116,
1.932674892,
2.456273667,
2.979872443,
3.503471219,
4.027069994,
4.55066877,
5.074267545,
5.597866321 }

Definition at line 91 of file MuonHOAcceptance.h.

Referenced by convertRegions(), inGeomAccept(), inNotDeadGeom(), and inSiPMGeom().

double const MuonHOAcceptance::phiMinR12
staticprivate
Initial value:
= {-0.166264081,
0.357334694,
0.88093347,
1.404532245,
1.928131021,
2.451729797,
2.975328572,
3.498927348,
4.022526123,
4.546124899,
5.069723674,
5.59332245 }

Definition at line 93 of file MuonHOAcceptance.h.

Referenced by convertRegions(), inGeomAccept(), inNotDeadGeom(), and inSiPMGeom().

int const MuonHOAcceptance::phiSectors = 12
staticprivate

Definition at line 90 of file MuonHOAcceptance.h.

Referenced by convertRegions(), and inGeomAccept().

std::vector< uint32_t > MuonHOAcceptance::SiPMIds
staticprivate

Definition at line 83 of file MuonHOAcceptance.h.

Referenced by buildSiPMAreas(), initIds(), and isChannelSiPM().

std::vector< MuonHOAcceptance::deadRegion > MuonHOAcceptance::SiPMRegions
staticprivate

Definition at line 84 of file MuonHOAcceptance.h.

Referenced by buildSiPMAreas(), graphSiPMRegions(), and inSiPMGeom().

double const MuonHOAcceptance::twopi = 2.*3.14159265358979323846
staticprivate