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; }
GeomDetEnumerators::SubDetector
SubDetector
Definition: GeomDetEnumerators.h:10
GEMEtaPartitionSpecs::parameters
const GEMSpecs & parameters() const
Definition: GEMEtaPartitionSpecs.cc:50
GEMStripTopology.h
GeomDetType
Definition: GeomDetType.h:9
GEMEtaPartitionSpecs::padTopology
const Topology & padTopology() const
Definition: GEMEtaPartitionSpecs.cc:44
GEMStripTopology
Definition: GEMStripTopology.h:11
GEMEtaPartitionSpecs::topology
const Topology & topology() const override
Definition: GEMEtaPartitionSpecs.cc:40
h
GEMEtaPartitionSpecs::_top_pad
StripTopology * _top_pad
topology of trigger pads (pad = bundle of strips, basically, a "fat" strip)
Definition: GEMEtaPartitionSpecs.h:43
b
double b
Definition: hdecay.h:118
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
GEMEtaPartitionSpecs::GEMSpecs
std::vector< float > GEMSpecs
Definition: GEMEtaPartitionSpecs.h:20
l1t::mtf7::GEM
GEM Data Record : block->header().getID() = 7.
Definition: Block.h:21
GEMEtaPartitionSpecs::_n
std::string _n
Definition: GEMEtaPartitionSpecs.h:46
GEMEtaPartitionSpecs.h
angle_units::operators
Definition: angle_units.h:11
GEMEtaPartitionSpecs::specificPadTopology
const StripTopology & specificPadTopology() const
Definition: GEMEtaPartitionSpecs.cc:46
GEMEtaPartitionSpecs::_p
std::vector< float > _p
Definition: GEMEtaPartitionSpecs.h:45
GEMEtaPartitionSpecs::_top
StripTopology * _top
topology of strips
Definition: GEMEtaPartitionSpecs.h:40
GeomDetEnumerators
Definition: GeomDetEnumerators.h:8
TtFullHadDaughter::B
static const std::string B
Definition: TtFullHadronicEvent.h:9
GEMEtaPartitionSpecs::GEMEtaPartitionSpecs
GEMEtaPartitionSpecs(SubDetector rss, const std::string &name, const GEMSpecs &pars)
Definition: GEMEtaPartitionSpecs.cc:7
Skims_PA_cff.name
name
Definition: Skims_PA_cff.py:17
GEMEtaPartitionSpecs::specificTopology
const StripTopology & specificTopology() const
Definition: GEMEtaPartitionSpecs.cc:42
GEMEtaPartitionSpecs::~GEMEtaPartitionSpecs
~GEMEtaPartitionSpecs() override
Definition: GEMEtaPartitionSpecs.cc:33
gen::npad
int npad
Definition: Cascade2Hadronizer.cc:75
Topology
Definition: Topology.h:39
StripTopology
Definition: StripTopology.h:11
DigiDM_cff.strips
strips
#turn off noise in all subdetectors simHcalUnsuppressedDigis.doNoise = False mix.digitizers....
Definition: DigiDM_cff.py:32
GEMEtaPartitionSpecs::detName
const std::string & detName() const
Definition: GEMEtaPartitionSpecs.cc:48