CMS 3D CMS Logo

GEMEtaPartition.cc
Go to the documentation of this file.
4 
6  : GeomDet(bp), id_(id), specs_(rrs) {
7  setDetId(id);
8 }
9 
11  delete specs_; //Assume the roll owns it specs (specs are not shared)
12 }
13 
14 const Topology& GEMEtaPartition::topology() const { return specs_->topology(); }
15 
17 
19 
21 
22 const GeomDetType& GEMEtaPartition::type() const { return (*specs_); }
23 
24 int GEMEtaPartition::nstrips() const { return this->specificTopology().nstrips(); }
25 
27  float s = static_cast<float>(strip) + 0.5f;
28  return this->specificTopology().localPosition(s);
29 }
30 
32 
33 LocalError GEMEtaPartition::localError(float strip, float cluster_size) const {
34  return this->specificTopology().localError(strip, cluster_size * cluster_size / 12.);
35 }
36 
37 float GEMEtaPartition::strip(const LocalPoint& lp) const { return this->specificTopology().strip(lp); }
38 
39 float GEMEtaPartition::localPitch(const LocalPoint& lp) const { return this->specificTopology().localPitch(lp); }
40 
41 float GEMEtaPartition::pitch() const { return this->specificTopology().pitch(); }
42 
44 
46  float p = static_cast<float>(pad) + 0.5f;
48 }
49 
51 
52 float GEMEtaPartition::pad(const LocalPoint& lp) const { return specificPadTopology().strip(lp); }
53 
55 
57 
60  return pad(c_o_s);
61 }
62 
64  float p = static_cast<float>(pad) - 0.9999f;
66  return static_cast<int>(strip(lp));
67 }
68 
69 int GEMEtaPartition::lastStripInPad(int pad) const {
70  float p = static_cast<float>(pad) - 0.0001f;
72  return static_cast<int>(strip(lp));
73 }
74 
76 
77 bool GEMEtaPartition::isGE11() const { return id_.isGE11(); }
78 
79 bool GEMEtaPartition::isGE21() const { return id_.isGE21(); }
80 
81 bool GEMEtaPartition::isME0() const { return id_.isME0(); }
float padPitch() const
pad pitch in a center
virtual int nstrips() const =0
LocalError localError(float strip, float cluster_size=1.) const
bool isGE11() const
Definition: GEMDetId.cc:9
const Topology & padTopology() const
GEMSubDetId::Station subsystem() const
int firstStripInPad(int pad) const
returns first strip (INT number [0,nstrip-1]) for pad (an integer [0,npads-1])
void setDetId(DetId id)
Definition: GeomDet.h:99
bool isGE21() const
float strip(const LocalPoint &lp) const
float padOfStrip(int strip) const
returns FRACTIONAL pad number [0.,npads) for an integer strip [0,nstrip-1]
float localPadPitch(const LocalPoint &lp) const
pad pitch at a particular point
bool isME0() const
const Topology & padTopology() const
virtual float strip(const LocalPoint &) const =0
const Topology & topology() const override
const StripTopology & specificPadTopology() const
virtual float localPitch(const LocalPoint &) const =0
int npads() const
number of GEM-CSC trigger readout pads in partition
GEMEtaPartition(GEMDetId id, const BoundPlane::BoundPlanePointer &bp, GEMEtaPartitionSpecs *rrs)
bool isME0() const
Definition: GEMDetId.cc:13
double f[11][100]
GEMEtaPartitionSpecs * specs_
const GeomDetType & type() const override
const StripTopology & specificPadTopology() const
bool isGE21() const
Definition: GEMDetId.cc:11
~GEMEtaPartition() override
float pitch() const
const Topology & topology() const override
GEMSubDetId::Station subsystem() const
Definition: GEMDetId.cc:7
int lastStripInPad(int pad) const
returns last strip (INT number [0,nstrip-1]) for pad (an integer [0,npads-1])
bool isGE11() const
const StripTopology & specificTopology() const
LocalPoint centreOfPad(int pad) const
virtual LocalError localError(float strip, float stripErr2) const =0
float localPitch(const LocalPoint &lp) const
int nstrips() const
number of readout strips in partition
virtual float pitch() const =0
virtual LocalPoint localPosition(float strip) const =0
const StripTopology & specificTopology() const
float pad(const LocalPoint &lp) const
returns FRACTIONAL pad number [0.,npads) for a point
LocalPoint centreOfStrip(int strip) const