ATLAS Offline Software
TrigITkAccelEDM.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRIGACCELEVENT_TRIGINDETACCELEDM_ITK_H
6 #define TRIGACCELEVENT_TRIGINDETACCELEDM_ITK_H
7 
8 #include<cstdint>
9 
10 namespace TrigAccel {
11 
12 namespace ITk {
13 
14  //A. GPU-accelerated track seeding
15 
16  static constexpr unsigned int MAX_SILICON_LAYERS = 216;
17  static constexpr unsigned int MAX_NUMBER_PIX_MODULES = 6300;
18  static constexpr unsigned int MAX_NUMBER_SCT_MODULES = 24600;
19  static constexpr unsigned int MAX_NUMBER_SPACEPOINTS = 300000;
20  static constexpr unsigned int MAX_PHI_SLICES = 100;
21  static constexpr unsigned int MAX_NUMBER_OUTPUT_SEEDS = 250000;
22 
23  typedef struct SiliconLayer {
24  public:
25  int m_subdet;//1 : Pixel, 2 : Strips
26  int m_type;//0: barrel, +/-n : endcap
27  float m_refCoord;
32 
34 
35  typedef struct DetectorModel {
36  public:
37  int m_nLayers;
39  SILICON_LAYER m_layers[MAX_SILICON_LAYERS];
40  int m_middleSpacePointLayers[MAX_SILICON_LAYERS];
41  int m_hashArray[MAX_NUMBER_PIX_MODULES+MAX_NUMBER_SCT_MODULES];
42  float m_minRZ[MAX_NUMBER_PIX_MODULES+MAX_NUMBER_SCT_MODULES];
43  float m_maxRZ[MAX_NUMBER_PIX_MODULES+MAX_NUMBER_SCT_MODULES];
45 
46  typedef struct SpacePointLayerRange {
47  public:
48  int m_layerBegin[MAX_SILICON_LAYERS];
49  int m_layerEnd[MAX_SILICON_LAYERS];
51 
52  typedef struct SpacePointStorage {
53  public:
56  int m_nLayers;
58  int m_index[MAX_NUMBER_SPACEPOINTS];
59  int m_type[MAX_NUMBER_SPACEPOINTS];
60  float m_x[MAX_NUMBER_SPACEPOINTS];
61  float m_y[MAX_NUMBER_SPACEPOINTS];
62  float m_z[MAX_NUMBER_SPACEPOINTS];
63  float m_r[MAX_NUMBER_SPACEPOINTS];
64  float m_phi[MAX_NUMBER_SPACEPOINTS];
65  float m_covR[MAX_NUMBER_SPACEPOINTS];
66  float m_covZ[MAX_NUMBER_SPACEPOINTS];
67  float m_clusterWidth[MAX_NUMBER_SPACEPOINTS];
70 
71  typedef struct SeedFinderSettings {
72  public:
74  float m_magFieldZ;
80  unsigned int m_maxTripletBufferLength;
85 
87 
88  typedef struct SeedMakingJob {
89  public:
93 
94  typedef struct OutputSeedStorage {
95  public:
96  int m_nSeeds;
98  int m_nI, m_nO;
99  int m_nErrors;
100  int m_innerIndex[MAX_NUMBER_OUTPUT_SEEDS];
101  int m_middleIndex[MAX_NUMBER_OUTPUT_SEEDS];
102  int m_outerIndex[MAX_NUMBER_OUTPUT_SEEDS];
103  float m_Q[MAX_NUMBER_OUTPUT_SEEDS];
104  float m_pT[MAX_NUMBER_OUTPUT_SEEDS];
106 
107 }
108 }
109 
110 #endif
TrigAccel::ITk::SeedFinderSettings::m_minDoubletLength
float m_minDoubletLength
Definition: TrigITkAccelEDM.h:83
TrigAccel::ITk::SeedFinderSettings::m_phiMinus
float m_phiMinus
Definition: TrigITkAccelEDM.h:84
TrigAccel::ITk::SeedFinderSettings::m_tripletD0Max
float m_tripletD0Max
Definition: TrigITkAccelEDM.h:75
TrigAccel::ITk::OutputSeedStorage::m_outerIndex
int m_outerIndex[MAX_NUMBER_OUTPUT_SEEDS]
Definition: TrigITkAccelEDM.h:102
TrigAccel::ITk::SpacePointStorage::m_covZ
float m_covZ[MAX_NUMBER_SPACEPOINTS]
Definition: TrigITkAccelEDM.h:66
TrigAccel::ITk::SeedFinderSettings::m_maxTripletBufferLength
unsigned int m_maxTripletBufferLength
Definition: TrigITkAccelEDM.h:80
TrigAccel::ITk::SiliconLayer::m_nPhiSlices
int m_nPhiSlices
Definition: TrigITkAccelEDM.h:31
TrigAccel::ITk::SiliconLayer::m_refCoord
float m_refCoord
Definition: TrigITkAccelEDM.h:27
TrigAccel::ITk::SpacePointStorage::m_nMiddleLayers
int m_nMiddleLayers
Definition: TrigITkAccelEDM.h:57
TrigAccel::ITk::SeedFinderSettings::m_tripletDoPSS
int m_tripletDoPSS
Definition: TrigITkAccelEDM.h:78
TrigAccel::ITk::SeedFinderSettings::m_zedPlus
float m_zedPlus
Definition: TrigITkAccelEDM.h:82
TrigAccel::ITk::SeedMakingJob::m_settings
SEED_FINDER_SETTINGS m_settings
Definition: TrigITkAccelEDM.h:90
TrigAccel::ITk::SpacePointStorage::m_clusterWidth
float m_clusterWidth[MAX_NUMBER_SPACEPOINTS]
Definition: TrigITkAccelEDM.h:67
TrigAccel::ITk::DetectorModel::m_layers
SILICON_LAYER m_layers[MAX_SILICON_LAYERS]
Definition: TrigITkAccelEDM.h:39
TrigAccel::ITk::SeedMakingJob::m_data
SPACEPOINT_STORAGE m_data
Definition: TrigITkAccelEDM.h:91
TrigAccel::ITk::SeedFinderSettings::m_minEndcapPix
unsigned int m_minEndcapPix
Definition: TrigITkAccelEDM.h:73
TrigAccel::ITk::OutputSeedStorage
Definition: TrigITkAccelEDM.h:94
TrigAccel::ITk::SPACEPOINT_LAYER_RANGE
struct TrigAccel::ITk::SpacePointLayerRange SPACEPOINT_LAYER_RANGE
TrigAccel::ITk::OutputSeedStorage::m_nMiddleSps
int m_nMiddleSps
Definition: TrigITkAccelEDM.h:97
TrigAccel::ITk::SiliconLayer::m_rzBinWidth
float m_rzBinWidth
Definition: TrigITkAccelEDM.h:30
TrigAccel::ITk::SeedFinderSettings::m_tripletPtMin
float m_tripletPtMin
Definition: TrigITkAccelEDM.h:77
TrigAccel::ITk::SpacePointStorage
Definition: TrigITkAccelEDM.h:52
TrigAccel::ITk::SiliconLayer
Definition: TrigITkAccelEDM.h:23
TrigAccel::ITk::SpacePointStorage::m_x
float m_x[MAX_NUMBER_SPACEPOINTS]
Definition: TrigITkAccelEDM.h:60
TrigAccel::ITk::SeedFinderSettings::m_phiPlus
float m_phiPlus
Definition: TrigITkAccelEDM.h:84
TrigAccel::ITk::SeedFinderSettings::m_nMaxPhiSlice
int m_nMaxPhiSlice
Definition: TrigITkAccelEDM.h:79
TrigAccel::ITk::SEED_MAKING_JOB
struct TrigAccel::ITk::SeedMakingJob SEED_MAKING_JOB
TrigAccel::ITk::SpacePointStorage::m_phi
float m_phi[MAX_NUMBER_SPACEPOINTS]
Definition: TrigITkAccelEDM.h:64
TrigAccel::ITk::OutputSeedStorage::m_innerIndex
int m_innerIndex[MAX_NUMBER_OUTPUT_SEEDS]
Definition: TrigITkAccelEDM.h:100
TrigAccel::ITk::SpacePointLayerRange::m_layerBegin
int m_layerBegin[MAX_SILICON_LAYERS]
Definition: TrigITkAccelEDM.h:48
TrigAccel::ITk::SiliconLayer::m_type
int m_type
Definition: TrigITkAccelEDM.h:26
TrigAccel::ITk::OutputSeedStorage::m_nSeeds
int m_nSeeds
Definition: TrigITkAccelEDM.h:96
TrigAccel::ITk::DetectorModel::m_maxRZ
float m_maxRZ[MAX_NUMBER_PIX_MODULES+MAX_NUMBER_SCT_MODULES]
Definition: TrigITkAccelEDM.h:43
TrigAccel::ITk::OutputSeedStorage::m_nErrors
int m_nErrors
Definition: TrigITkAccelEDM.h:99
TrigAccel::ITk::SeedMakingJob
Definition: TrigITkAccelEDM.h:88
TrigAccel::ITk::SEED_FINDER_SETTINGS
struct TrigAccel::ITk::SeedFinderSettings SEED_FINDER_SETTINGS
TrigAccel::ITk::SeedFinderSettings::m_maxBarrelPix
unsigned int m_maxBarrelPix
Definition: TrigITkAccelEDM.h:73
TrigAccel::ITk::SiliconLayer::m_phiBinWidth
float m_phiBinWidth
Definition: TrigITkAccelEDM.h:30
TrigAccel::ITk::SeedFinderSettings::m_tripletD0_PPS_Max
float m_tripletD0_PPS_Max
Definition: TrigITkAccelEDM.h:76
TrigAccel::ITk::OutputSeedStorage::m_pT
float m_pT[MAX_NUMBER_OUTPUT_SEEDS]
Definition: TrigITkAccelEDM.h:104
TrigAccel::ITk::SiliconLayer::m_maxBound
float m_maxBound
Definition: TrigITkAccelEDM.h:29
TrigAccel::ITk::SpacePointStorage::m_z
float m_z[MAX_NUMBER_SPACEPOINTS]
Definition: TrigITkAccelEDM.h:62
TrigAccel::ITk::SeedFinderSettings::m_magFieldZ
float m_magFieldZ
Definition: TrigITkAccelEDM.h:74
TrigAccel::ITk::DetectorModel::m_hashArray
int m_hashArray[MAX_NUMBER_PIX_MODULES+MAX_NUMBER_SCT_MODULES]
Definition: TrigITkAccelEDM.h:41
TrigAccel::ITk::DetectorModel::m_minRZ
float m_minRZ[MAX_NUMBER_PIX_MODULES+MAX_NUMBER_SCT_MODULES]
Definition: TrigITkAccelEDM.h:42
TrigAccel::ITk::SeedFinderSettings::m_maxEndcapPix
unsigned int m_maxEndcapPix
Definition: TrigITkAccelEDM.h:73
TrigAccel::ITk::DetectorModel
Definition: TrigITkAccelEDM.h:35
TrigAccel::ITk::DetectorModel::m_middleSpacePointLayers
int m_middleSpacePointLayers[MAX_SILICON_LAYERS]
Definition: TrigITkAccelEDM.h:40
TrigAccel::ITk::SpacePointStorage::m_nLayers
int m_nLayers
Definition: TrigITkAccelEDM.h:56
TrigAccel::ITk::SpacePointLayerRange
Definition: TrigITkAccelEDM.h:46
ITk
Definition: ITkPixelOfflineCalibCondAlg.cxx:14
TrigAccel::ITk::SeedFinderSettings::m_maxEta
float m_maxEta
Definition: TrigITkAccelEDM.h:83
TrigAccel::ITk::DetectorModel::m_nModules
int m_nModules
Definition: TrigITkAccelEDM.h:38
TrigAccel::ITk::OUTPUT_SEED_STORAGE
struct TrigAccel::ITk::OutputSeedStorage OUTPUT_SEED_STORAGE
TrigAccel::ITk::SeedFinderSettings::m_maxDoubletLength
float m_maxDoubletLength
Definition: TrigITkAccelEDM.h:83
TrigAccel::ITk::SPACEPOINT_STORAGE
struct TrigAccel::ITk::SpacePointStorage SPACEPOINT_STORAGE
TrigAccel::ITk::SpacePointStorage::m_r
float m_r[MAX_NUMBER_SPACEPOINTS]
Definition: TrigITkAccelEDM.h:63
TrigAccel::ITk::DETECTOR_MODEL
struct TrigAccel::ITk::DetectorModel DETECTOR_MODEL
TrigAccel::ITk::SiliconLayer::m_subdet
int m_subdet
Definition: TrigITkAccelEDM.h:25
TrigAccel::ITk::OutputSeedStorage::m_middleIndex
int m_middleIndex[MAX_NUMBER_OUTPUT_SEEDS]
Definition: TrigITkAccelEDM.h:101
TrigAccel::ITk::SpacePointStorage::m_phiSlices
SPACEPOINT_LAYER_RANGE m_phiSlices[MAX_PHI_SLICES]
Definition: TrigITkAccelEDM.h:68
TrigAccel::ITk::SpacePointStorage::m_covR
float m_covR[MAX_NUMBER_SPACEPOINTS]
Definition: TrigITkAccelEDM.h:65
TrigAccel::ITk::SeedFinderSettings::m_tripletDoPPS
int m_tripletDoPPS
Definition: TrigITkAccelEDM.h:78
TrigAccel::ITk::SpacePointLayerRange::m_layerEnd
int m_layerEnd[MAX_SILICON_LAYERS]
Definition: TrigITkAccelEDM.h:49
TrigAccel::ITk::SiliconLayer::m_nElements
int m_nElements
Definition: TrigITkAccelEDM.h:28
TrigAccel::ITk::SpacePointStorage::m_nSpacepoints
int m_nSpacepoints
Definition: TrigITkAccelEDM.h:54
TrigAccel::ITk::DetectorModel::m_nLayers
int m_nLayers
Definition: TrigITkAccelEDM.h:37
TrigAccel::ITk::SeedFinderSettings
Definition: TrigITkAccelEDM.h:71
TrigAccel::ITk::SpacePointStorage::m_nPhiSlices
int m_nPhiSlices
Definition: TrigITkAccelEDM.h:55
TrigAccel::ITk::SpacePointStorage::m_type
int m_type[MAX_NUMBER_SPACEPOINTS]
Definition: TrigITkAccelEDM.h:59
TrigAccel::ITk::SpacePointStorage::m_index
int m_index[MAX_NUMBER_SPACEPOINTS]
Definition: TrigITkAccelEDM.h:58
TrigAccel
Definition: DataExportBuffer.h:12
TrigAccel::ITk::SiliconLayer::m_minBound
float m_minBound
Definition: TrigITkAccelEDM.h:29
TrigAccel::ITk::SILICON_LAYER
struct TrigAccel::ITk::SiliconLayer SILICON_LAYER
TrigAccel::ITk::SeedFinderSettings::m_doubletFilterRZ
int m_doubletFilterRZ
Definition: TrigITkAccelEDM.h:78
TrigAccel::ITk::SeedFinderSettings::m_maxSiliconLayer
unsigned int m_maxSiliconLayer
Definition: TrigITkAccelEDM.h:73
TrigAccel::ITk::SeedFinderSettings::m_zedMinus
float m_zedMinus
Definition: TrigITkAccelEDM.h:82
TrigAccel::ITk::OutputSeedStorage::m_Q
float m_Q[MAX_NUMBER_OUTPUT_SEEDS]
Definition: TrigITkAccelEDM.h:103
TrigAccel::ITk::OutputSeedStorage::m_nO
int m_nO
Definition: TrigITkAccelEDM.h:98
TrigAccel::ITk::SpacePointStorage::m_y
float m_y[MAX_NUMBER_SPACEPOINTS]
Definition: TrigITkAccelEDM.h:61
TrigAccel::ITk::OutputSeedStorage::m_nI
int m_nI
Definition: TrigITkAccelEDM.h:98
TrigAccel::ITk::SeedFinderSettings::m_isFullScan
int m_isFullScan
Definition: TrigITkAccelEDM.h:81