CMS 3D CMS Logo

List of all members | Classes | Public Member Functions | Private Member Functions | Private Attributes | Friends
PPSPixelTopology Class Reference

#include <CondFormats/PPSObjects/src/PPSPixelTopology.cc>

Classes

class  PixelInfo
 

Public Member Functions

double getActiveEdgeSigma () const
 
double getActiveEdgeX () const
 
double getActiveEdgeY () const
 
double getDeadEdgeWidth () const
 
unsigned short getNoPixels () const
 
unsigned short getNoPixelsSimX () const
 
unsigned short getNoPixelsSimY () const
 
double getPhysActiveEdgeDist () const
 
double getPitchSimX () const
 
double getPitchSimY () const
 
PixelInfo getPixelsInvolved (double x, double y, double sigma, double &hit_pos_x, double &hit_pos_y) const
 
std::string getRunType () const
 
double getSimXWidth () const
 
double getSimYWidth () const
 
double getThickness () const
 
bool isPixelHit (float xLocalCoordinate, float yLocalCoordinate, bool is3x2) const
 
unsigned short pixelIndex (PixelInfo pI) const
 
void pixelRange (unsigned int arow, unsigned int acol, double &lower_x, double &higher_x, double &lower_y, double &higher_y) const
 
 PPSPixelTopology ()
 
void printInfo (std::stringstream &s)
 
void setActiveEdgeSigma (double aes)
 
void setActiveEdgeX (double aex)
 
void setActiveEdgeY (double aey)
 
void setDeadEdgeWidth (double dew)
 
void setNoPixels (unsigned short np)
 
void setNoPixelsSimX (unsigned short npx)
 
void setNoPixelsSimY (unsigned short npy)
 
void setPhysActiveEdgeDist (double pae)
 
void setPitchSimX (double psx)
 
void setPitchSimY (double psy)
 
void setRunType (std::string rt)
 
void setSimXWidth (double sxw)
 
void setSimYWidth (double syw)
 
void setThickness (double tss)
 
 ~PPSPixelTopology ()
 

Private Member Functions

double activeEdgeFactor (double x, double y) const
 
unsigned int col (double y) const
 
double distanceFromBottomActiveEdge (double x, double y) const
 
double distanceFromLeftActiveEdge (double x, double y) const
 
double distanceFromRightActiveEdge (double x, double y) const
 
double distanceFromTopActiveEdge (double x, double y) const
 
void index2RowCol (unsigned int &arow, unsigned int &acol, unsigned int index) const
 
unsigned int row (double x) const
 
void rowCol2Index (unsigned int arow, unsigned int acol, unsigned int &index) const
 
template<class Archive >
void serialize (Archive &ar, const unsigned int version)
 

Private Attributes

double active_edge_sigma_
 
double active_edge_x_
 
double active_edge_y_
 
double dead_edge_width_
 
unsigned short no_of_pixels_
 
unsigned short no_of_pixels_simX_
 
unsigned short no_of_pixels_simY_
 
double phys_active_edge_dist_
 
double pitch_simX_
 
double pitch_simY_
 
std::string runType_
 
double simX_width_
 
double simY_width_
 
double thickness_
 

Friends

class boost::serialization::access
 
template<typename CondSerializationT , typename Enabled >
struct cond::serialization::access
 

Detailed Description

Description: Internal topology of PPS detectors

Implementation: <Notes on="" implementation>="">

Definition at line 22 of file PPSPixelTopology.h.

Constructor & Destructor Documentation

◆ PPSPixelTopology()

PPSPixelTopology::PPSPixelTopology ( )

Definition at line 5 of file PPSPixelTopology.cc.

6  : runType_(""),
7  pitch_simY_(0.),
8  pitch_simX_(0.),
9  thickness_(0.),
12  no_of_pixels_(0.),
13  simX_width_(0.),
14  simY_width_(0.),
15  dead_edge_width_(0.),
18  active_edge_x_(0.),
19  active_edge_y_(0.) {}
unsigned short no_of_pixels_simX_
std::string runType_
unsigned short no_of_pixels_simY_
unsigned short no_of_pixels_

◆ ~PPSPixelTopology()

PPSPixelTopology::~PPSPixelTopology ( )

Definition at line 22 of file PPSPixelTopology.cc.

22 {}

Member Function Documentation

◆ activeEdgeFactor()

double PPSPixelTopology::activeEdgeFactor ( double  x,
double  y 
) const
private

Definition at line 134 of file PPSPixelTopology.cc.

References active_edge_sigma_, distanceFromBottomActiveEdge(), distanceFromLeftActiveEdge(), distanceFromRightActiveEdge(), distanceFromTopActiveEdge(), Exception, x, and y.

Referenced by getPixelsInvolved().

134  {
135  const double inv_sigma = 1. / active_edge_sigma_; // precaching
136  const double topEdgeFactor = std::erf(-distanceFromTopActiveEdge(x, y) * inv_sigma) * 0.5 + 0.5;
137  const double bottomEdgeFactor = std::erf(-distanceFromBottomActiveEdge(x, y) * inv_sigma) * 0.5 + 0.5;
138  const double rightEdgeFactor = std::erf(-distanceFromRightActiveEdge(x, y) * inv_sigma) * 0.5 + 0.5;
139  const double leftEdgeFactor = std::erf(-distanceFromLeftActiveEdge(x, y) * inv_sigma) * 0.5 + 0.5;
140 
141  const double aEF = topEdgeFactor * bottomEdgeFactor * rightEdgeFactor * leftEdgeFactor;
142 
143  if (aEF > 1.)
144  throw cms::Exception("PPSPixelTopology") << " pixel active edge factor > 1";
145 
146  return aEF;
147 }
double distanceFromBottomActiveEdge(double x, double y) const
double distanceFromTopActiveEdge(double x, double y) const
double distanceFromRightActiveEdge(double x, double y) const
double distanceFromLeftActiveEdge(double x, double y) const

◆ col()

unsigned int PPSPixelTopology::col ( double  y) const
private

Definition at line 184 of file PPSPixelTopology.cc.

References dead_edge_width_, Exception, createfilelist::int, pitch_simY_, rpixValues::ROCSizeInY, simY_width_, and y.

Referenced by python.rootplot.root2matplotlib.Hist2D::colz(), and getPixelsInvolved().

184  {
185  // y in the G4 simulation system
186  unsigned int column;
187 
188  // columns (y segmentation)
189  // now y in the system centered in the bottom left corner of the sensor (sensor view, rocs behind)
190  y = y + simY_width_ / 2.;
191  if (y < 0. || y > simY_width_)
192  throw cms::Exception("PPSPixelTopology") << "pixel out of reference frame";
193 
194  if (y <= (dead_edge_width_ + pitch_simY_))
195  column = 0;
196  else if (y <= (dead_edge_width_ + (rpixValues::ROCSizeInY - 1) * pitch_simY_))
198  else if (y <= (dead_edge_width_ + (rpixValues::ROCSizeInY + 1) * pitch_simY_))
200  else if (y <= (dead_edge_width_ + (rpixValues::ROCSizeInY + 3) * pitch_simY_))
202  else if (y <= (dead_edge_width_ + (2 * rpixValues::ROCSizeInY + 1) * pitch_simY_))
204  else if (y <= (dead_edge_width_ + (2 * rpixValues::ROCSizeInY + 3) * pitch_simY_))
205  column = 2 * rpixValues::ROCSizeInY - 1;
206  else if (y <= (dead_edge_width_ + (2 * rpixValues::ROCSizeInY + 5) * pitch_simY_))
208  else if (y <= (dead_edge_width_ + (3 * rpixValues::ROCSizeInY + 3) * pitch_simY_))
210  else
211  column = (3 * rpixValues::ROCSizeInY - 1);
212 
213  return column;
214 }
constexpr int ROCSizeInY

◆ distanceFromBottomActiveEdge()

double PPSPixelTopology::distanceFromBottomActiveEdge ( double  x,
double  y 
) const
private

Definition at line 150 of file PPSPixelTopology.cc.

References active_edge_y_, and y.

Referenced by activeEdgeFactor().

150 { return (-y - active_edge_y_); }

◆ distanceFromLeftActiveEdge()

double PPSPixelTopology::distanceFromLeftActiveEdge ( double  x,
double  y 
) const
private

Definition at line 152 of file PPSPixelTopology.cc.

References active_edge_x_, and x.

Referenced by activeEdgeFactor().

152 { return (-x - active_edge_x_); }

◆ distanceFromRightActiveEdge()

double PPSPixelTopology::distanceFromRightActiveEdge ( double  x,
double  y 
) const
private

Definition at line 151 of file PPSPixelTopology.cc.

References active_edge_x_, and x.

Referenced by activeEdgeFactor().

151 { return (x - active_edge_x_); }

◆ distanceFromTopActiveEdge()

double PPSPixelTopology::distanceFromTopActiveEdge ( double  x,
double  y 
) const
private

Definition at line 149 of file PPSPixelTopology.cc.

References active_edge_y_, and y.

Referenced by activeEdgeFactor().

149 { return (y - active_edge_y_); }

◆ getActiveEdgeSigma()

double PPSPixelTopology::getActiveEdgeSigma ( ) const

Definition at line 237 of file PPSPixelTopology.cc.

References active_edge_sigma_.

237 { return active_edge_sigma_; }

◆ getActiveEdgeX()

double PPSPixelTopology::getActiveEdgeX ( ) const

Definition at line 239 of file PPSPixelTopology.cc.

References active_edge_x_.

239 { return active_edge_x_; }

◆ getActiveEdgeY()

double PPSPixelTopology::getActiveEdgeY ( ) const

Definition at line 240 of file PPSPixelTopology.cc.

References active_edge_y_.

240 { return active_edge_y_; }

◆ getDeadEdgeWidth()

double PPSPixelTopology::getDeadEdgeWidth ( ) const

Definition at line 236 of file PPSPixelTopology.cc.

References dead_edge_width_.

236 { return dead_edge_width_; }

◆ getNoPixels()

unsigned short PPSPixelTopology::getNoPixels ( ) const

Definition at line 233 of file PPSPixelTopology.cc.

References no_of_pixels_.

Referenced by RPixChargeShare::RPixChargeShare().

233 { return no_of_pixels_; }
unsigned short no_of_pixels_

◆ getNoPixelsSimX()

unsigned short PPSPixelTopology::getNoPixelsSimX ( ) const

Definition at line 231 of file PPSPixelTopology.cc.

References no_of_pixels_simX_.

Referenced by RPixChargeShare::Share().

231 { return no_of_pixels_simX_; }
unsigned short no_of_pixels_simX_

◆ getNoPixelsSimY()

unsigned short PPSPixelTopology::getNoPixelsSimY ( ) const

Definition at line 232 of file PPSPixelTopology.cc.

References no_of_pixels_simY_.

Referenced by RPixChargeShare::Share().

232 { return no_of_pixels_simY_; }
unsigned short no_of_pixels_simY_

◆ getPhysActiveEdgeDist()

double PPSPixelTopology::getPhysActiveEdgeDist ( ) const

Definition at line 238 of file PPSPixelTopology.cc.

References phys_active_edge_dist_.

Referenced by RPixChargeShare::Share().

238 { return phys_active_edge_dist_; }

◆ getPitchSimX()

double PPSPixelTopology::getPitchSimX ( ) const

Definition at line 229 of file PPSPixelTopology.cc.

References pitch_simX_.

Referenced by RPixChargeShare::Share().

229 { return pitch_simX_; }

◆ getPitchSimY()

double PPSPixelTopology::getPitchSimY ( ) const

Definition at line 228 of file PPSPixelTopology.cc.

References pitch_simY_.

Referenced by RPixChargeShare::Share().

228 { return pitch_simY_; }

◆ getPixelsInvolved()

PPSPixelTopology::PixelInfo PPSPixelTopology::getPixelsInvolved ( double  x,
double  y,
double  sigma,
double &  hit_pos_x,
double &  hit_pos_y 
) const

Definition at line 46 of file PPSPixelTopology.cc.

References activeEdgeFactor(), col(), Exception, pixelRange(), row(), simX_width_, simY_width_, x, and y.

Referenced by RPixChargeShare::Share().

47  {
48  //hit position wrt the bottom left corner of the sensor (-8.3, -12.2) in sensor view, rocs behind
49  hit_pos_x = x + simX_width_ / 2.;
50  hit_pos_y = y + simY_width_ / 2.;
51  if (!(hit_pos_x * hit_pos_y > 0))
52  throw cms::Exception("PPSPixelTopology") << "pixel out of reference frame";
53 
54  double hit_factor = activeEdgeFactor(x, y);
55 
56  unsigned int interested_row = row(x);
57  unsigned int interested_col = col(y);
58  double low_pixel_range_x, high_pixel_range_x, low_pixel_range_y, high_pixel_range_y;
59  pixelRange(
60  interested_row, interested_col, low_pixel_range_x, high_pixel_range_x, low_pixel_range_y, high_pixel_range_y);
61 
62  return PPSPixelTopology::PixelInfo(low_pixel_range_x,
63  high_pixel_range_x,
64  low_pixel_range_y,
65  high_pixel_range_y,
66  hit_factor,
67  interested_row,
68  interested_col);
69 }
unsigned int col(double y) const
unsigned int row(double x) const
double activeEdgeFactor(double x, double y) const
void pixelRange(unsigned int arow, unsigned int acol, double &lower_x, double &higher_x, double &lower_y, double &higher_y) const

◆ getRunType()

std::string PPSPixelTopology::getRunType ( ) const

Definition at line 227 of file PPSPixelTopology.cc.

References runType_.

227 { return runType_; }
std::string runType_

◆ getSimXWidth()

double PPSPixelTopology::getSimXWidth ( ) const

Definition at line 234 of file PPSPixelTopology.cc.

References simX_width_.

Referenced by RPixChargeShare::Share().

234 { return simX_width_; }

◆ getSimYWidth()

double PPSPixelTopology::getSimYWidth ( ) const

Definition at line 235 of file PPSPixelTopology.cc.

References simY_width_.

Referenced by RPixChargeShare::Share().

235 { return simY_width_; }

◆ getThickness()

double PPSPixelTopology::getThickness ( ) const

◆ index2RowCol()

void PPSPixelTopology::index2RowCol ( unsigned int &  arow,
unsigned int &  acol,
unsigned int  index 
) const
private

Definition at line 220 of file PPSPixelTopology.cc.

References no_of_pixels_simX_.

220  {
221  acol = index / no_of_pixels_simX_;
222  arow = index % no_of_pixels_simX_;
223 }
unsigned short no_of_pixels_simX_

◆ isPixelHit()

bool PPSPixelTopology::isPixelHit ( float  xLocalCoordinate,
float  yLocalCoordinate,
bool  is3x2 = true 
) const

Definition at line 28 of file PPSPixelTopology.cc.

References dead_edge_width_, no_of_pixels_simX_, no_of_pixels_simY_, pitch_simX_, pitch_simY_, and runType_.

Referenced by PPSDirectProtonSimulation::processProton().

28  {
29  // check hit fiducial boundaries
30  const double xModuleSize = 2 * ((no_of_pixels_simX_ / 2. + 1) * pitch_simX_ + dead_edge_width_);
31  if (xLocalCoordinate < -xModuleSize / 2. || xLocalCoordinate > xModuleSize / 2.)
32  return false;
33 
34  const double yModuleSize = (no_of_pixels_simY_ + 4.) * pitch_simY_ + 2. * dead_edge_width_;
35  const double y2x2top = no_of_pixels_simY_ / 6. * pitch_simY_ + dead_edge_width_;
36  if (is3x2 && (yLocalCoordinate < -yModuleSize / 2. || yLocalCoordinate > yModuleSize / 2.))
37  return false;
38  if (!is3x2 && (runType_ == "Run2") && (yLocalCoordinate < -yModuleSize / 2. || yLocalCoordinate > y2x2top))
39  return false;
40  if (!is3x2 && (runType_ == "Run3") && (yLocalCoordinate < -yModuleSize / 2. || yLocalCoordinate > yModuleSize / 2.))
41  return false;
42 
43  return true;
44 }
unsigned short no_of_pixels_simX_
std::string runType_
unsigned short no_of_pixels_simY_

◆ pixelIndex()

unsigned short PPSPixelTopology::pixelIndex ( PixelInfo  pI) const

Definition at line 24 of file PPSPixelTopology.cc.

References no_of_pixels_simX_, PPSPixelTopology::PixelInfo::pixelColNo(), and PPSPixelTopology::PixelInfo::pixelRowNo().

Referenced by RPixChargeShare::Share().

24  {
25  return no_of_pixels_simX_ * pI.pixelColNo() + pI.pixelRowNo();
26 }
unsigned short no_of_pixels_simX_

◆ pixelRange()

void PPSPixelTopology::pixelRange ( unsigned int  arow,
unsigned int  acol,
double &  lower_x,
double &  higher_x,
double &  lower_y,
double &  higher_y 
) const

Definition at line 71 of file PPSPixelTopology.cc.

References dead_edge_width_, Exception, phys_active_edge_dist_, pitch_simX_, pitch_simY_, rpixValues::ROCSizeInX, rpixValues::ROCSizeInY, simX_width_, and simY_width_.

Referenced by PPSPixelDigiAnalyzer::analyze(), getPixelsInvolved(), RPixClusterToHit::make_hit(), and RPixChargeShare::Share().

72  {
73  // x and y in the system of Geant4 SIMULATION
74  arow = (2 * rpixValues::ROCSizeInX - 1) - arow;
75  if (arow > (2 * rpixValues::ROCSizeInX - 1) || acol > (3 * rpixValues::ROCSizeInY - 1))
76  throw cms::Exception("PPSPixelTopology") << "pixel rows or columns exceeding limits";
77 
78  // rows (x segmentation)
79  if (arow == 0) {
80  lower_x = dead_edge_width_ - phys_active_edge_dist_; // 50 um
81  higher_x = dead_edge_width_ + pitch_simX_; // 300 um
82  } else if (arow <= (rpixValues::ROCSizeInX - 2)) {
83  lower_x = dead_edge_width_ + arow * pitch_simX_;
84  higher_x = dead_edge_width_ + (arow + 1) * pitch_simX_;
85  } else if (arow == (rpixValues::ROCSizeInX - 1)) {
86  lower_x = dead_edge_width_ + arow * pitch_simX_;
87  higher_x = dead_edge_width_ + (arow + 2) * pitch_simX_;
88  } else if (arow == rpixValues::ROCSizeInX) {
89  lower_x = dead_edge_width_ + (arow + 1) * pitch_simX_;
90  higher_x = dead_edge_width_ + (arow + 3) * pitch_simX_;
91  } else if (arow <= (2 * rpixValues::ROCSizeInX - 2)) {
92  lower_x = dead_edge_width_ + (arow + 2) * pitch_simX_;
93  higher_x = dead_edge_width_ + (arow + 3) * pitch_simX_;
94  } else if (arow == (2 * rpixValues::ROCSizeInX - 1)) {
95  lower_x = dead_edge_width_ + (arow + 2) * pitch_simX_;
96  higher_x = dead_edge_width_ + (arow + 3) * pitch_simX_ + phys_active_edge_dist_;
97  }
98  // columns (y segmentation)
99  if (acol == 0) {
100  lower_y = dead_edge_width_ - phys_active_edge_dist_; // 50 um
101  higher_y = dead_edge_width_ + pitch_simY_; // 350 um
102  } else if (acol <= (rpixValues::ROCSizeInY - 2)) {
103  lower_y = dead_edge_width_ + acol * pitch_simY_;
104  higher_y = dead_edge_width_ + (acol + 1) * pitch_simY_;
105  } else if (acol == (rpixValues::ROCSizeInY - 1)) {
106  lower_y = dead_edge_width_ + acol * pitch_simY_;
107  higher_y = dead_edge_width_ + (acol + 2) * pitch_simY_;
108  } else if (acol == rpixValues::ROCSizeInY) {
109  lower_y = dead_edge_width_ + (acol + 1) * pitch_simY_;
110  higher_y = dead_edge_width_ + (acol + 3) * pitch_simY_;
111  } else if (acol <= (2 * rpixValues::ROCSizeInY - 2)) {
112  lower_y = dead_edge_width_ + (acol + 2) * pitch_simY_;
113  higher_y = dead_edge_width_ + (acol + 3) * pitch_simY_;
114  } else if (acol == (2 * rpixValues::ROCSizeInY - 1)) {
115  lower_y = dead_edge_width_ + (acol + 2) * pitch_simY_;
116  higher_y = dead_edge_width_ + (acol + 4) * pitch_simY_;
117  } else if (acol == (2 * rpixValues::ROCSizeInY)) {
118  lower_y = dead_edge_width_ + (acol + 3) * pitch_simY_;
119  higher_y = dead_edge_width_ + (acol + 5) * pitch_simY_;
120  } else if (acol <= (3 * rpixValues::ROCSizeInY - 2)) {
121  lower_y = dead_edge_width_ + (acol + 4) * pitch_simY_;
122  higher_y = dead_edge_width_ + (acol + 5) * pitch_simY_;
123  } else if (acol == (3 * rpixValues::ROCSizeInY - 1)) {
124  lower_y = dead_edge_width_ + (acol + 4) * pitch_simY_;
125  higher_y = dead_edge_width_ + (acol + 5) * pitch_simY_ + phys_active_edge_dist_;
126  }
127 
128  lower_x = lower_x - simX_width_ / 2.;
129  lower_y = lower_y - simY_width_ / 2.;
130  higher_x = higher_x - simX_width_ / 2.;
131  higher_y = higher_y - simY_width_ / 2.;
132 }
constexpr int ROCSizeInX
constexpr int ROCSizeInY

◆ printInfo()

void PPSPixelTopology::printInfo ( std::stringstream &  s)

Definition at line 259 of file PPSPixelTopology.cc.

References active_edge_sigma_, active_edge_x_, active_edge_y_, dead_edge_width_, no_of_pixels_, no_of_pixels_simX_, no_of_pixels_simY_, phys_active_edge_dist_, pitch_simX_, pitch_simY_, runType_, alignCSCRings::s, simX_width_, simY_width_, and thickness_.

259  {
260  s << "\n PPS Topology parameters : \n"
261  << "\n runType_ = " << runType_ << "\n pitch_simY_ = " << pitch_simY_ << "\n pitch_simX_ = " << pitch_simX_
262  << "\n thickness_ = " << thickness_ << "\n no_of_pixels_simX_ " << no_of_pixels_simX_
263  << "\n no_of_pixels_simY_ " << no_of_pixels_simY_ << "\n no_of_pixels_ " << no_of_pixels_ << "\n simX_width_ "
264  << simX_width_ << "\n simY_width_ " << simY_width_ << "\n dead_edge_width_ " << dead_edge_width_
265  << "\n active_edge_sigma_ " << active_edge_sigma_ << "\n phys_active_edge_dist_ " << phys_active_edge_dist_
266 
267  << "\n active_edge_x_ " << active_edge_x_ << "\n active_edge_y_ " << active_edge_y_
268 
269  << std::endl;
270 }
unsigned short no_of_pixels_simX_
std::string runType_
unsigned short no_of_pixels_simY_
unsigned short no_of_pixels_

◆ row()

unsigned int PPSPixelTopology::row ( double  x) const
private

Definition at line 154 of file PPSPixelTopology.cc.

References dead_edge_width_, Exception, createfilelist::int, pitch_simX_, rpixValues::ROCSizeInX, simX_width_, and x.

Referenced by getPixelsInvolved().

154  {
155  // x in the G4 simulation system
156  x = x + simX_width_ / 2.;
157 
158  // now x in the system centered in the bottom left corner of the sensor (sensor view, rocs behind)
159  if (x < 0. || x > simX_width_)
160  throw cms::Exception("PPSPixelTopology") << " pixel out of reference frame";
161 
162  // rows (x segmentation)
163  unsigned int arow;
164  if (x <= (dead_edge_width_ + pitch_simX_))
165  arow = 0;
166  else if (x <= (dead_edge_width_ + (rpixValues::ROCSizeInX - 1) * pitch_simX_))
167  arow = int((x - dead_edge_width_ - pitch_simX_) / pitch_simX_) + 1;
168  else if (x <= (dead_edge_width_ + (rpixValues::ROCSizeInX + 1) * pitch_simX_))
169  arow = (rpixValues::ROCSizeInX - 1);
170  else if (x <= (dead_edge_width_ + (rpixValues::ROCSizeInX + 3) * pitch_simX_))
171  arow = rpixValues::ROCSizeInX;
172  else if (x <= (dead_edge_width_ + (2 * rpixValues::ROCSizeInX + 2) * pitch_simX_))
173  arow = int((x - dead_edge_width_ - pitch_simX_) / pitch_simX_) - 1;
174  else
175  arow = (2 * rpixValues::ROCSizeInX - 1);
176 
177  arow = (2 * rpixValues::ROCSizeInX - 1) - arow;
178  if (arow > (2 * rpixValues::ROCSizeInX - 1))
179  throw cms::Exception("PPSPixelTopology") << " pixel row number exceeding limit";
180 
181  return arow;
182 }
constexpr int ROCSizeInX

◆ rowCol2Index()

void PPSPixelTopology::rowCol2Index ( unsigned int  arow,
unsigned int  acol,
unsigned int &  index 
) const
private

Definition at line 216 of file PPSPixelTopology.cc.

References no_of_pixels_simX_.

216  {
217  index = acol * no_of_pixels_simX_ + arow;
218 }
unsigned short no_of_pixels_simX_

◆ serialize()

template<class Archive >
void PPSPixelTopology::serialize ( Archive &  ar,
const unsigned int  version 
)
private

◆ setActiveEdgeSigma()

void PPSPixelTopology::setActiveEdgeSigma ( double  aes)

Definition at line 254 of file PPSPixelTopology.cc.

References active_edge_sigma_.

254 { active_edge_sigma_ = aes; }

◆ setActiveEdgeX()

void PPSPixelTopology::setActiveEdgeX ( double  aex)

Definition at line 256 of file PPSPixelTopology.cc.

References active_edge_x_.

256 { active_edge_x_ = aex; }

◆ setActiveEdgeY()

void PPSPixelTopology::setActiveEdgeY ( double  aey)

Definition at line 257 of file PPSPixelTopology.cc.

References active_edge_y_.

257 { active_edge_y_ = aey; }

◆ setDeadEdgeWidth()

void PPSPixelTopology::setDeadEdgeWidth ( double  dew)

Definition at line 253 of file PPSPixelTopology.cc.

References dead_edge_width_.

253 { dead_edge_width_ = dew; }

◆ setNoPixels()

void PPSPixelTopology::setNoPixels ( unsigned short  np)

Definition at line 250 of file PPSPixelTopology.cc.

References no_of_pixels_, and np.

250 { no_of_pixels_ = np; }
int np
Definition: AMPTWrapper.h:43
unsigned short no_of_pixels_

◆ setNoPixelsSimX()

void PPSPixelTopology::setNoPixelsSimX ( unsigned short  npx)

Definition at line 248 of file PPSPixelTopology.cc.

References no_of_pixels_simX_.

248 { no_of_pixels_simX_ = npx; }
unsigned short no_of_pixels_simX_

◆ setNoPixelsSimY()

void PPSPixelTopology::setNoPixelsSimY ( unsigned short  npy)

Definition at line 249 of file PPSPixelTopology.cc.

References no_of_pixels_simY_.

249 { no_of_pixels_simY_ = npy; }
unsigned short no_of_pixels_simY_

◆ setPhysActiveEdgeDist()

void PPSPixelTopology::setPhysActiveEdgeDist ( double  pae)

Definition at line 255 of file PPSPixelTopology.cc.

References phys_active_edge_dist_.

255 { phys_active_edge_dist_ = pae; }

◆ setPitchSimX()

void PPSPixelTopology::setPitchSimX ( double  psx)

Definition at line 246 of file PPSPixelTopology.cc.

References pitch_simX_.

246 { pitch_simX_ = psx; }

◆ setPitchSimY()

void PPSPixelTopology::setPitchSimY ( double  psy)

Definition at line 245 of file PPSPixelTopology.cc.

References pitch_simY_.

245 { pitch_simY_ = psy; }

◆ setRunType()

void PPSPixelTopology::setRunType ( std::string  rt)

Definition at line 244 of file PPSPixelTopology.cc.

References hcal_runs::rt, and runType_.

244 { runType_ = rt; }
std::string runType_

◆ setSimXWidth()

void PPSPixelTopology::setSimXWidth ( double  sxw)

Definition at line 251 of file PPSPixelTopology.cc.

References simX_width_.

251 { simX_width_ = sxw; }

◆ setSimYWidth()

void PPSPixelTopology::setSimYWidth ( double  syw)

Definition at line 252 of file PPSPixelTopology.cc.

References simY_width_.

252 { simY_width_ = syw; }

◆ setThickness()

void PPSPixelTopology::setThickness ( double  tss)

Definition at line 247 of file PPSPixelTopology.cc.

References thickness_.

247 { thickness_ = tss; }

Friends And Related Function Documentation

◆ boost::serialization::access

friend class boost::serialization::access
friend

Definition at line 145 of file PPSPixelTopology.h.

◆ cond::serialization::access

template<typename CondSerializationT , typename Enabled >
friend struct cond::serialization::access
friend

Definition at line 145 of file PPSPixelTopology.h.

Member Data Documentation

◆ active_edge_sigma_

double PPSPixelTopology::active_edge_sigma_
private

◆ active_edge_x_

double PPSPixelTopology::active_edge_x_
private

◆ active_edge_y_

double PPSPixelTopology::active_edge_y_
private

◆ dead_edge_width_

double PPSPixelTopology::dead_edge_width_
private

◆ no_of_pixels_

unsigned short PPSPixelTopology::no_of_pixels_
private

Definition at line 135 of file PPSPixelTopology.h.

Referenced by getNoPixels(), printInfo(), and setNoPixels().

◆ no_of_pixels_simX_

unsigned short PPSPixelTopology::no_of_pixels_simX_
private

◆ no_of_pixels_simY_

unsigned short PPSPixelTopology::no_of_pixels_simY_
private

Definition at line 134 of file PPSPixelTopology.h.

Referenced by getNoPixelsSimY(), isPixelHit(), printInfo(), and setNoPixelsSimY().

◆ phys_active_edge_dist_

double PPSPixelTopology::phys_active_edge_dist_
private

◆ pitch_simX_

double PPSPixelTopology::pitch_simX_
private

Definition at line 131 of file PPSPixelTopology.h.

Referenced by getPitchSimX(), isPixelHit(), pixelRange(), printInfo(), row(), and setPitchSimX().

◆ pitch_simY_

double PPSPixelTopology::pitch_simY_
private

Definition at line 130 of file PPSPixelTopology.h.

Referenced by col(), getPitchSimY(), isPixelHit(), pixelRange(), printInfo(), and setPitchSimY().

◆ runType_

std::string PPSPixelTopology::runType_
private

Definition at line 129 of file PPSPixelTopology.h.

Referenced by getRunType(), isPixelHit(), printInfo(), and setRunType().

◆ simX_width_

double PPSPixelTopology::simX_width_
private

◆ simY_width_

double PPSPixelTopology::simY_width_
private

◆ thickness_

double PPSPixelTopology::thickness_
private

Definition at line 132 of file PPSPixelTopology.h.

Referenced by getThickness(), printInfo(), and setThickness().