CMS 3D CMS Logo

ME0EtaPartitionSpecs.cc
Go to the documentation of this file.
4 
5 using namespace GeomDetEnumerators;
6 
8  : GeomDetType(name, rss), _p(pars), _n(name) {
9  if (rss == ME0) {
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 pitch = (b + B) / strips;
17  int nstrip = static_cast<int>(strips);
18  _top = new TrapezoidalStripTopology(nstrip, pitch, striplength, r0);
19 
20  float pads = _p[4];
21  float pad_pitch = (b + B) / pads;
22  int npad = static_cast<int>(pads);
23  _top_pad = new TrapezoidalStripTopology(npad, pad_pitch, striplength, r0);
24  } else {
25  _top = nullptr;
26  _top_pad = nullptr;
27  }
28 }
29 
31  if (_top)
32  delete _top;
33  if (_top_pad)
34  delete _top_pad;
35 }
36 
37 const Topology& ME0EtaPartitionSpecs::topology() const { return *_top; }
38 
40 
42 
44 
45 const std::string& ME0EtaPartitionSpecs::detName() const { return _n; }
46 
47 const std::vector<float>& ME0EtaPartitionSpecs::parameters() const { return _p; }
GeomDetEnumerators::SubDetector
SubDetector
Definition: GeomDetEnumerators.h:10
ME0EtaPartitionSpecs::ME0EtaPartitionSpecs
ME0EtaPartitionSpecs(SubDetector rss, const std::string &name, const ME0Specs &pars)
Definition: ME0EtaPartitionSpecs.cc:7
GeomDetType
Definition: GeomDetType.h:9
ME0EtaPartitionSpecs.h
ME0EtaPartitionSpecs::_n
std::string _n
Definition: ME0EtaPartitionSpecs.h:46
RectangularStripTopology.h
ME0EtaPartitionSpecs::specificTopology
const StripTopology & specificTopology() const
Definition: ME0EtaPartitionSpecs.cc:39
h
ME0EtaPartitionSpecs::parameters
const ME0Specs & parameters() const
Definition: ME0EtaPartitionSpecs.cc:47
ME0EtaPartitionSpecs::_p
std::vector< float > _p
Definition: ME0EtaPartitionSpecs.h:45
TrapezoidalStripTopology
Definition: TrapezoidalStripTopology.h:21
ME0EtaPartitionSpecs::specificPadTopology
const StripTopology & specificPadTopology() const
Definition: ME0EtaPartitionSpecs.cc:43
b
double b
Definition: hdecay.h:118
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
ME0EtaPartitionSpecs::topology
const Topology & topology() const override
Definition: ME0EtaPartitionSpecs.cc:37
ME0EtaPartitionSpecs::_top_pad
StripTopology * _top_pad
topology of trigger pads (pad = bundle of strips, basically, a "fat" strip)
Definition: ME0EtaPartitionSpecs.h:43
ME0EtaPartitionSpecs::ME0Specs
std::vector< float > ME0Specs
Definition: ME0EtaPartitionSpecs.h:20
GeomDetEnumerators
Definition: GeomDetEnumerators.h:8
ME0EtaPartitionSpecs::~ME0EtaPartitionSpecs
~ME0EtaPartitionSpecs() override
Definition: ME0EtaPartitionSpecs.cc:30
TtFullHadDaughter::B
static const std::string B
Definition: TtFullHadronicEvent.h:9
TrapezoidalStripTopology.h
ME0EtaPartitionSpecs::_top
StripTopology * _top
topology of strips
Definition: ME0EtaPartitionSpecs.h:40
Skims_PA_cff.name
name
Definition: Skims_PA_cff.py:17
gen::npad
int npad
Definition: Cascade2Hadronizer.cc:73
Topology
Definition: Topology.h:39
GeomDetEnumerators::ME0
Definition: GeomDetEnumerators.h:22
ME0EtaPartitionSpecs::detName
const std::string & detName() const
Definition: ME0EtaPartitionSpecs.cc:45
StripTopology
Definition: StripTopology.h:11
ME0EtaPartitionSpecs::padTopology
const Topology & padTopology() const
Definition: ME0EtaPartitionSpecs.cc:41
DigiDM_cff.strips
strips
#turn off noise in all subdetectors simHcalUnsuppressedDigis.doNoise = False mix.digitizers....
Definition: DigiDM_cff.py:32