Segmentation and response for pixels in ITS3 upgrade.
More...
#include <SegmentationMosaix.h>
|
constexpr | SegmentationMosaix (int layer) |
|
constexpr | ~SegmentationMosaix ()=default |
|
constexpr | SegmentationMosaix (const SegmentationMosaix &)=default |
|
constexpr | SegmentationMosaix (SegmentationMosaix &&)=delete |
|
constexpr SegmentationMosaix & | operator= (const SegmentationMosaix &)=default |
|
constexpr SegmentationMosaix & | operator= (SegmentationMosaix &&)=delete |
|
constexpr void | curvedToFlat (const float xCurved, const float yCurved, float &xFlat, float &yFlat) const noexcept |
|
constexpr void | flatToCurved (float xFlat, float yFlat, float &xCurved, float &yCurved) const noexcept |
|
constexpr bool | localToDetector (float const xRow, float const zCol, int &iRow, int &iCol) const noexcept |
|
constexpr void | localToDetectorUnchecked (float const xRow, float const zCol, int &iRow, int &iCol) const noexcept |
|
constexpr bool | detectorToLocal (int const iRow, int const iCol, float &xRow, float &zCol) const noexcept |
|
constexpr void | detectorToLocalUnchecked (int const iRow, int const iCol, float &xRow, float &zCol) const noexcept |
|
bool | detectorToLocal (int const row, int const col, math_utils::Point3D< float > &loc) const noexcept |
|
void | detectorToLocalUnchecked (int const row, int const col, math_utils::Point3D< float > &loc) const noexcept |
|
Segmentation and response for pixels in ITS3 upgrade.
Definition at line 28 of file SegmentationMosaix.h.
◆ SegmentationMosaix() [1/3]
constexpr o2::its3::SegmentationMosaix::SegmentationMosaix |
( |
int |
layer | ) |
|
|
inlineconstexpr |
◆ ~SegmentationMosaix()
constexpr o2::its3::SegmentationMosaix::~SegmentationMosaix |
( |
| ) |
|
|
constexprdefault |
◆ SegmentationMosaix() [2/3]
◆ SegmentationMosaix() [3/3]
◆ curvedToFlat()
constexpr void o2::its3::SegmentationMosaix::curvedToFlat |
( |
const float |
xCurved, |
|
|
const float |
yCurved, |
|
|
float & |
xFlat, |
|
|
float & |
yFlat |
|
) |
| const |
|
inlineconstexprnoexcept |
Transformation from the curved surface to a flat surface. Additionally a shift in the flat coordinates must be applied because the center of the TGeoShap when projected will be higher than the physical thickness of the chip (we add an additional hull to account for the copper metal interconnection which is in reality part of the chip but in our simulation the silicon and metal layer are separated). Thus we shift the projected center down by this difference to align the coordinate systems.
- Parameters
-
xCurved | Detector local curved coordinate x in cm with respect to the center of the sensitive volume. |
yCurved | Detector local curved coordinate y in cm with respect to the center of the sensitive volume. |
xFlat | Detector local flat coordinate x in cm with respect to the center of the sensitive volume. |
yFlat | Detector local flat coordinate y in cm with respect to the center of the sensitive volume. |
Definition at line 99 of file SegmentationMosaix.h.
◆ detectorToLocal() [1/2]
constexpr bool o2::its3::SegmentationMosaix::detectorToLocal |
( |
int const |
iRow, |
|
|
int const |
iCol, |
|
|
float & |
xRow, |
|
|
float & |
zCol |
|
) |
| const |
|
inlineconstexprnoexcept |
Transformation from Detector cell coordinates to Geant detector centered local coordinates (cm)
- Parameters
-
int | iRow Detector x cell coordinate. |
int | iCol Detector z cell coordinate. |
float | x Detector local coordinate x in cm with respect to the center of the sensitive volume. |
float | z Detector local coordinate z in cm with respect to the center of the sensitive volume. 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 170 of file SegmentationMosaix.h.
◆ detectorToLocal() [2/2]
bool o2::its3::SegmentationMosaix::detectorToLocal |
( |
int const |
row, |
|
|
int const |
col, |
|
|
math_utils::Point3D< float > & |
loc |
|
) |
| const |
|
inlinenoexcept |
◆ detectorToLocalUnchecked() [1/2]
constexpr void o2::its3::SegmentationMosaix::detectorToLocalUnchecked |
( |
int const |
iRow, |
|
|
int const |
iCol, |
|
|
float & |
xRow, |
|
|
float & |
zCol |
|
) |
| const |
|
inlineconstexprnoexcept |
◆ detectorToLocalUnchecked() [2/2]
◆ flatToCurved()
constexpr void o2::its3::SegmentationMosaix::flatToCurved |
( |
float |
xFlat, |
|
|
float |
yFlat, |
|
|
float & |
xCurved, |
|
|
float & |
yCurved |
|
) |
| const |
|
inlineconstexprnoexcept |
Transformation from the flat surface to a curved surface It works only if the detector is not rototraslated.
- Parameters
-
xFlat | Detector local flat coordinate x in cm with respect to the center of the sensitive volume. |
yFlat | Detector local flat coordinate y in cm with respect to the center of the sensitive volume. |
xCurved | Detector local curved coordinate x in cm with respect to the center of the sensitive volume. |
yCurved | Detector local curved coordinate y in cm with respect to the center of the sensitive volume. |
Definition at line 121 of file SegmentationMosaix.h.
◆ localToDetector()
constexpr bool o2::its3::SegmentationMosaix::localToDetector |
( |
float const |
xRow, |
|
|
float const |
zCol, |
|
|
int & |
iRow, |
|
|
int & |
iCol |
|
) |
| const |
|
inlineconstexprnoexcept |
Transformation from Geant detector centered local coordinates (cm) to Pixel cell numbers iRow and iCol. Returns true if point x,z is inside sensitive volume, false otherwise. A value of -1 for iRow or iCol indicates that this point is outside of the detector segmentation as defined.
- Parameters
-
float | x Detector local coordinate x in cm with respect to the center of the sensitive volume. |
float | z Detector local coordinate z in cm with respect to the center of the sensitive volume. |
int | iRow Detector x cell coordinate. |
int | iCol Detector z cell coordinate. |
Definition at line 143 of file SegmentationMosaix.h.
◆ localToDetectorUnchecked()
constexpr void o2::its3::SegmentationMosaix::localToDetectorUnchecked |
( |
float const |
xRow, |
|
|
float const |
zCol, |
|
|
int & |
iRow, |
|
|
int & |
iCol |
|
) |
| const |
|
inlineconstexprnoexcept |
◆ operator=() [1/2]
◆ operator=() [2/2]
◆ Length
◆ LengthH
constexpr float o2::its3::SegmentationMosaix::LengthH {Length / 2.f} |
|
staticconstexpr |
◆ NCols
◆ NominalYShift
◆ NPixels
constexpr int o2::its3::SegmentationMosaix::NPixels {NCols * NRows} |
|
staticconstexpr |
◆ NRows
◆ PitchCol
constexpr float o2::its3::SegmentationMosaix::PitchCol {constants::pixelarray::pixels::mosaix::pitchZ} |
|
staticconstexpr |
◆ PitchRow
constexpr float o2::its3::SegmentationMosaix::PitchRow {constants::pixelarray::pixels::mosaix::pitchX} |
|
staticconstexpr |
◆ SensorLayerThickness
◆ Width
◆ WidthH
constexpr float o2::its3::SegmentationMosaix::WidthH {Width / 2.f} |
|
staticconstexpr |
The documentation for this class was generated from the following file:
- /home/runner/work/AliceO2/AliceO2/Detectors/Upgrades/ITS3/base/include/ITS3Base/SegmentationMosaix.h