CMS 3D CMS Logo

GEMEtaPartitionSpecs.cc
Go to the documentation of this file.
3 
4 using namespace GeomDetEnumerators;
5 using namespace angle_units::operators;
6 
8  : GeomDetType(name, rss), _p(pars), _n(name) {
9  if (rss == GEM) {
10  float b = _p[0];
11  float B = _p[1];
12  float h = _p[2];
13  float r0 = h * (B + b) / (B - b);
14  float striplength = h * 2;
15  float strips = _p[3];
16  float dphi = _p[5];
17  float phiPitch = dphi / strips;
18 
19  int nstrip = static_cast<int>(strips);
20  _top = new GEMStripTopology(nstrip, phiPitch, striplength, r0);
21 
22  float pads = _p[4];
23  float padPhiPitch = dphi / pads;
24 
25  int npad = static_cast<int>(pads);
26  _top_pad = new GEMStripTopology(npad, padPhiPitch, striplength, r0);
27  } else {
28  _top = nullptr;
29  _top_pad = nullptr;
30  }
31 }
32 
34  if (_top)
35  delete _top;
36  if (_top_pad)
37  delete _top_pad;
38 }
39 
40 const Topology& GEMEtaPartitionSpecs::topology() const { return *_top; }
41 
43 
45 
47 
48 const std::string& GEMEtaPartitionSpecs::detName() const { return _n; }
49 
50 const std::vector<float>& GEMEtaPartitionSpecs::parameters() const { return _p; }
Definition: APVGainStruct.h:7
const Topology & padTopology() const
const GEMSpecs & parameters() const
StripTopology * _top_pad
topology of trigger pads (pad = bundle of strips, basically, a "fat" strip)
const Topology & topology() const override
std::vector< float > _p
std::vector< float > GEMSpecs
const StripTopology & specificPadTopology() const
GEMEtaPartitionSpecs(SubDetector rss, const std::string &name, const GEMSpecs &pars)
double b
Definition: hdecay.h:118
StripTopology * _top
topology of strips
strips
#turn off noise in all subdetectors simHcalUnsuppressedDigis.doNoise = False mix.digitizers.hcal.doNoise = False simEcalUnsuppressedDigis.doNoise = False mix.digitizers.ecal.doNoise = False simEcalUnsuppressedDigis.doESNoise = False simSiPixelDigis.AddNoise = False mix.digitizers.pixel.AddNoise = False simSiStripDigis.Noise = False mix.digitizers.strip.AddNoise = False
Definition: DigiDM_cff.py:32
const StripTopology & specificTopology() const
The Signals That Services Can Subscribe To This is based on ActivityRegistry h
Helper function to determine trigger accepts.
Definition: Activities.doc:4
const std::string & detName() const