10 #ifndef HERD_FITGEOPARAMS_H_ 11 #define HERD_FITGEOPARAMS_H_ 164 unsigned int MatID(
const Point &position)
const;
199 unsigned int SipmIDOnMat(
float relativePosition)
const;
335 2 * _sipmDieChannels * _sipmChannelPitch + 2 * _sipmDeadRegion +
_sipmDieGap;
unsigned int ChannelIDOnMat(float relativePosition) const
Returns the channel ID on mat.
Definition: FitGeoParams.cpp:181
const LayerZones & ActiveZones()
Returns the active zones.
Definition: FitGeoParams.cpp:309
int NChannelsPerMat() const
Get the number of channels that are in a mat.
Definition: FitGeoParams.h:102
CssGeoParams.h CssGeoParams class declaration.
Definition: CaloPDCalibrationAlgo.h:24
~FitGeoParams() override=default
Virtual destructor.
float _min
Definition: FitGeoParams.h:295
unsigned int NSipmPerMat() const
Get the number of sipms that are attached to a mat.
Definition: FitGeoParams.h:88
float _max
Definition: FitGeoParams.h:295
void SetNMats(AxesArray< int > nMats)
Set the number of mats along each axis.
Definition: FitGeoParams.cpp:58
unsigned int SipmIDOnMat(float relativePosition) const
Returns the sipm ID on mat.
Definition: FitGeoParams.cpp:112
Data structure for single silicon layer geometry parameters.
Definition: FitGeoParams.h:64
void SetMatSize(const AxesArray< float > &sizes)
Set the mat sizes along the three axes.
Definition: FitGeoParams.cpp:38
unsigned int MatIDFromChannelID(unsigned int channelID) const
Retrieves the volume ID of the mat containing the sipm with the given channelID.
Definition: FitGeoParams.cpp:34
Side
Aliases for the five sides. RefFrame.h common/RefFrame.h.
Definition: RefFrame.h:113
void SetMatPosition(size_t matID, Point position)
Set the mat position for a given mat.
Definition: FitGeoParams.h:266
LayerZone(float minSegm, float maxSegm)
Constructor.
Definition: FitGeoParams.h:280
size_t _sipmNDies
Number of channels in a single die.
Definition: FitGeoParams.h:333
LayerZones _deadZones
Definition: FitGeoParams.h:323
float MaxSegm() const
Getter for maximum coordinate.
Definition: FitGeoParams.h:292
float GetSipmAirGap() const
Get gap between two consecutive SiPM.
Definition: FitGeoParams.h:132
A class describing a vector in 3D space.
Definition: Vec3D.h:33
std::vector< std::pair< float, float > > _sipmRelativePositions
Width of the SiPM sensor [cm].
Definition: FitGeoParams.h:336
std::vector< Point > _matPos
Dimensions of a mat along the three axes.
Definition: FitGeoParams.h:321
const LayerZones & DeadZones()
Returns the dead zones.
Definition: FitGeoParams.cpp:317
FitGeoParams()
Default constructor.
Definition: FitGeoParams.cpp:15
float _sipmAirGap
Definition: FitGeoParams.h:328
std::vector< LayerZone > LayerZones
Definition: FitGeoParams.h:299
float _sipmDeadRegion
Gap between two dies in a SiPM.
Definition: FitGeoParams.h:330
size_t _sipmDieChannels
Pitch of a single SiPM channel (250um)
Definition: FitGeoParams.h:332
void SetNSipmPerMat(int nSipms)
Set the number of sipms per mat.
Definition: FitGeoParams.h:239
float _sipmChannelPitch
Dead region at the border of a SiPM.
Definition: FitGeoParams.h:331
unsigned int NTotElements() const
Return the total number of FIT mats.
Definition: FitGeoParams.h:116
float _sipmDieGap
Gap between two consecutive SiPMs.
Definition: FitGeoParams.h:329
AxesArray< int > _nMats
Number of SiPMs in each mat.
Definition: FitGeoParams.h:319
unsigned int MatID(const Point &position) const
Retrieves the volume ID of the mat containing the given point.
Definition: FitGeoParams.cpp:127
Point SipmPosition(unsigned int sipmID) const
Get position of a given SiPM.
Definition: FitGeoParams.cpp:98
float MinSegm() const
Getter for minimum coordinate.
Definition: FitGeoParams.h:286
unsigned int ElementID(const Point &position) const override
Utility function to get the element ID from a set of coordinates.
Definition: FitGeoParams.cpp:145
Point MatPosition(unsigned int matID) const
Get position of a given mat.
Definition: FitGeoParams.h:156
int NChannelsPerSipm() const
Get the number of channels in a single SiPM.
Definition: FitGeoParams.h:95
Point ElementPosition(unsigned int elementID) const override
Get position of a given element.
Definition: FitGeoParams.cpp:77
const AxesArray< int > & NMats() const
Get the number of ladder that make up a layer. This is intended as number of ladders along each direc...
Definition: FitGeoParams.h:110
void ComputeActiveDeadZones()
Root-transient.
Definition: FitGeoParams.cpp:324
Definition: FitGeoParams.h:273
const AxesArray< float > & MatSize() const
Get the dimensions of the single mat.
Definition: FitGeoParams.h:125
AxesArray< float > _matSize
Number of mats along the three axes.
Definition: FitGeoParams.h:320
void SetSideAndMainSegmDir(RefFrame::Side dside, RefFrame::Direction segmDir) override
Set the detector side and the main segmentation direction for fibers.
Definition: FitGeoParams.cpp:225
float ChannelPositionOnMat(unsigned int channelIDOnMat) const
Get position of a given channel relative to the mat "left" edge.
Definition: FitGeoParams.cpp:165
Base data structure for single tracking detector layer geometry parameters.
Definition: TrackingDetectorGeoParams.h:28
unsigned int _nSipmsPerMat
Definition: FitGeoParams.h:318
float _sipmWidth
Number of dies in a SiPM.
Definition: FitGeoParams.h:334
LayerZones _activeZones
Position of all the mats.
Definition: FitGeoParams.h:323
Direction
Aliases for the six axis directions. RefFrame.h common/RefFrame.h.
Definition: RefFrame.h:57
unsigned int SipmIDFromChannelID(unsigned int channelID) const
Retrieves the ID of the SiPM containing the channel with the given channelID.
Definition: FitGeoParams.cpp:36