Project
Loading...
Searching...
No Matches
o2::itsmft::SegmentationAlpide Class Reference

#include <SegmentationAlpide.h>

Public Member Functions

 SegmentationAlpide ()=default
 
 ~SegmentationAlpide ()=default
 
 ClassDefNV (SegmentationAlpide, 1)
 

Static Public Member Functions

static bool localToDetector (float x, float z, int &iRow, int &iCol)
 
static void localToDetectorUnchecked (float xRow, float zCol, int &iRow, int &iCol)
 same but w/o check for row/column range
 
template<typename T = float, typename L = float>
static void detectorToLocalUnchecked (L row, L col, T &xRow, T &zCol)
 
template<typename T = float, typename L = float>
static void detectorToLocalUnchecked (L row, L col, math_utils::Point3D< T > &loc)
 
template<typename T = float, typename L = float>
static void detectorToLocalUnchecked (L row, L col, std::array< T, 3 > &loc)
 
template<typename T = float, typename L = float>
static bool detectorToLocal (L row, L col, T &xRow, T &zCol)
 
template<typename T = float, typename L = float>
static bool detectorToLocal (L row, L col, math_utils::Point3D< T > &loc)
 
template<typename T = float, typename L = float>
static bool detectorToLocal (L row, L col, std::array< T, 3 > &loc)
 
static constexpr float getFirstRowCoordinate ()
 
static constexpr float getFirstColCoordinate ()
 
static void print ()
 

Static Public Attributes

static constexpr int NCols = 1024
 
static constexpr int NRows = 512
 
static constexpr int NPixels = NRows * NCols
 
static constexpr float PitchCol = 29.24e-4
 
static constexpr float PitchRow = 26.88e-4
 
static constexpr float PassiveEdgeReadOut = 0.12f
 
static constexpr float PassiveEdgeTop = 37.44e-4
 
static constexpr float PassiveEdgeSide = 29.12e-4
 
static constexpr float ActiveMatrixSizeCols = PitchCol * NCols
 
static constexpr float ActiveMatrixSizeRows = PitchRow * NRows
 
static constexpr float SensorLayerThicknessEff = 28.e-4
 
static constexpr float SensorLayerThickness = 30.e-4
 
static constexpr float SensorSizeCols = ActiveMatrixSizeCols + PassiveEdgeSide + PassiveEdgeSide
 
static constexpr float SensorSizeRows = ActiveMatrixSizeRows + PassiveEdgeTop + PassiveEdgeReadOut
 

Detailed Description

Segmentation and response for pixels in ITSMFT upgrade Questions to solve: are guardrings needed and do they belong to the sensor or to the chip in TGeo. At the moment assume that the local coord syst. is located in the middle of the ACTIVE matrix. If the guardring to be accounted in the local coords, in the Z and X conversions one needs to first subtract the mGuardLeft and mGuardBottom from the local Z,X coordinates

Definition at line 32 of file SegmentationAlpide.h.

Constructor & Destructor Documentation

◆ SegmentationAlpide()

o2::itsmft::SegmentationAlpide::SegmentationAlpide ( )
default

◆ ~SegmentationAlpide()

o2::itsmft::SegmentationAlpide::~SegmentationAlpide ( )
default

Member Function Documentation

◆ ClassDefNV()

o2::itsmft::SegmentationAlpide::ClassDefNV ( SegmentationAlpide  ,
 
)

◆ detectorToLocal() [1/3]

template<typename T = float, typename L = float>
static bool o2::itsmft::SegmentationAlpide::detectorToLocal ( row,
col,
math_utils::Point3D< T > &  loc 
)
inlinestatic

Definition at line 114 of file SegmentationAlpide.h.

◆ detectorToLocal() [2/3]

template<typename T = float, typename L = float>
static bool o2::itsmft::SegmentationAlpide::detectorToLocal ( row,
col,
std::array< T, 3 > &  loc 
)
inlinestatic

Definition at line 123 of file SegmentationAlpide.h.

◆ detectorToLocal() [3/3]

template<typename T = float, typename L = float>
static bool o2::itsmft::SegmentationAlpide::detectorToLocal ( row,
col,
T &  xRow,
T &  zCol 
)
inlinestatic

Definition at line 104 of file SegmentationAlpide.h.

◆ detectorToLocalUnchecked() [1/3]

template<typename T = float, typename L = float>
static void o2::itsmft::SegmentationAlpide::detectorToLocalUnchecked ( row,
col,
math_utils::Point3D< T > &  loc 
)
inlinestatic

Definition at line 89 of file SegmentationAlpide.h.

◆ detectorToLocalUnchecked() [2/3]

template<typename T = float, typename L = float>
static void o2::itsmft::SegmentationAlpide::detectorToLocalUnchecked ( row,
col,
std::array< T, 3 > &  loc 
)
inlinestatic

Definition at line 94 of file SegmentationAlpide.h.

◆ detectorToLocalUnchecked() [3/3]

template<typename T = float, typename L = float>
static void o2::itsmft::SegmentationAlpide::detectorToLocalUnchecked ( row,
col,
T &  xRow,
T &  zCol 
)
inlinestatic

Transformation from Detector cell coordiantes to Geant detector centered local coordinates (cm)

Parameters
intiRow Detector x cell coordinate. Has the range 0 <= iRow < mNumberOfRows
intiCol Detector z cell coordinate. Has the range 0 <= iCol < mNumberOfColumns
floatx Detector local coordinate x in cm with respect to the center of the sensitive volume.
floatz Detector local coordinate z in cm with respect to the center of the sensitive volulme. If iRow and or iCol is outside of the segmentation range a value of -0.5*Dx() or -0.5*Dz() is returned.

Definition at line 83 of file SegmentationAlpide.h.

◆ getFirstColCoordinate()

static constexpr float o2::itsmft::SegmentationAlpide::getFirstColCoordinate ( )
inlinestaticconstexpr

Definition at line 136 of file SegmentationAlpide.h.

◆ getFirstRowCoordinate()

static constexpr float o2::itsmft::SegmentationAlpide::getFirstRowCoordinate ( )
inlinestaticconstexpr

Definition at line 132 of file SegmentationAlpide.h.

◆ localToDetector()

bool o2::itsmft::SegmentationAlpide::localToDetector ( float  x,
float  z,
int iRow,
int iCol 
)
inlinestatic

Transformation from Geant detector centered local coordinates (cm) to Pixel cell numbers iRow and iCol. Returns kTRUE if point x,z is inside sensitive volume, kFALSE otherwise. A value of -1 for iRow or iCol indicates that this point is outside of the detector segmentation as defined.

Parameters
floatx Detector local coordinate x in cm with respect to the center of the sensitive volume.
floatz Detector local coordinate z in cm with respect to the center of the sensitive volulme.
intiRow Detector x cell coordinate. Has the range 0 <= iRow < mNumberOfRows
intiCol Detector z cell coordinate. Has the range 0 <= iCol < mNumberOfColumns

Definition at line 160 of file SegmentationAlpide.h.

◆ localToDetectorUnchecked()

void o2::itsmft::SegmentationAlpide::localToDetectorUnchecked ( float  xRow,
float  zCol,
int iRow,
int iCol 
)
inlinestatic

same but w/o check for row/column range

Definition at line 144 of file SegmentationAlpide.h.

◆ print()

void SegmentationAlpide::print ( )
static

Definition at line 22 of file SegmentationAlpide.cxx.

Member Data Documentation

◆ ActiveMatrixSizeCols

constexpr float o2::itsmft::SegmentationAlpide::ActiveMatrixSizeCols = PitchCol * NCols
staticconstexpr

Definition at line 43 of file SegmentationAlpide.h.

◆ ActiveMatrixSizeRows

constexpr float o2::itsmft::SegmentationAlpide::ActiveMatrixSizeRows = PitchRow * NRows
staticconstexpr

Definition at line 44 of file SegmentationAlpide.h.

◆ NCols

constexpr int o2::itsmft::SegmentationAlpide::NCols = 1024
staticconstexpr

Definition at line 35 of file SegmentationAlpide.h.

◆ NPixels

constexpr int o2::itsmft::SegmentationAlpide::NPixels = NRows * NCols
staticconstexpr

Definition at line 37 of file SegmentationAlpide.h.

◆ NRows

constexpr int o2::itsmft::SegmentationAlpide::NRows = 512
staticconstexpr

Definition at line 36 of file SegmentationAlpide.h.

◆ PassiveEdgeReadOut

constexpr float o2::itsmft::SegmentationAlpide::PassiveEdgeReadOut = 0.12f
staticconstexpr

Definition at line 40 of file SegmentationAlpide.h.

◆ PassiveEdgeSide

constexpr float o2::itsmft::SegmentationAlpide::PassiveEdgeSide = 29.12e-4
staticconstexpr

Definition at line 42 of file SegmentationAlpide.h.

◆ PassiveEdgeTop

constexpr float o2::itsmft::SegmentationAlpide::PassiveEdgeTop = 37.44e-4
staticconstexpr

Definition at line 41 of file SegmentationAlpide.h.

◆ PitchCol

constexpr float o2::itsmft::SegmentationAlpide::PitchCol = 29.24e-4
staticconstexpr

Definition at line 38 of file SegmentationAlpide.h.

◆ PitchRow

constexpr float o2::itsmft::SegmentationAlpide::PitchRow = 26.88e-4
staticconstexpr

Definition at line 39 of file SegmentationAlpide.h.

◆ SensorLayerThickness

constexpr float o2::itsmft::SegmentationAlpide::SensorLayerThickness = 30.e-4
staticconstexpr

Definition at line 48 of file SegmentationAlpide.h.

◆ SensorLayerThicknessEff

constexpr float o2::itsmft::SegmentationAlpide::SensorLayerThicknessEff = 28.e-4
staticconstexpr

Definition at line 47 of file SegmentationAlpide.h.

◆ SensorSizeCols

constexpr float o2::itsmft::SegmentationAlpide::SensorSizeCols = ActiveMatrixSizeCols + PassiveEdgeSide + PassiveEdgeSide
staticconstexpr

Definition at line 49 of file SegmentationAlpide.h.

◆ SensorSizeRows

constexpr float o2::itsmft::SegmentationAlpide::SensorSizeRows = ActiveMatrixSizeRows + PassiveEdgeTop + PassiveEdgeReadOut
staticconstexpr

Definition at line 50 of file SegmentationAlpide.h.


The documentation for this class was generated from the following files: