35 memset((
void*)
this, 0,
sizeof(*
this));
41#ifdef GPUCA_TPC_GEOMETRY_O2
42 const float kErrorsY[4] = {0.06, 0.24, 0.12, 0.1};
43 const float kErrorsZ[4] = {0.06, 0.24, 0.15, 0.1};
48 const float kParamS0Par[2][3][6] =
50 { { 6.45913474727e-04, 2.51547407970e-05, 1.57551113516e-02, 1.99872811635e-08, -5.86769729853e-03, 9.16301505640e-05 },
51 { 9.71546804067e-04, 1.70938055817e-05, 2.17084009200e-02, 3.90275758377e-08, -1.68631039560e-03, 8.40498323669e-05 },
52 { 7.27469159756e-05, 2.63869314949e-05, 3.29690799117e-02, -2.19274429725e-08, 1.77378822118e-02, 3.26595727529e-05 }
54 { 1.46874145139e-03, 6.36232061879e-06, 1.28665426746e-02, 1.19409449439e-07, 1.15883778781e-02, 1.32179644424e-04 },
55 { 1.15970033221e-03, 1.30452335725e-05, 1.87015570700e-02, 5.39766737973e-08, 1.64790824056e-02, 1.44115634612e-04 },
56 { 6.27940462437e-04, 1.78520094778e-05, 2.83537860960e-02, 1.16867742150e-08, 5.02607785165e-02, 1.88510020962e-04 } }
58 const float kParamErrorsSeeding0[2][3][4] =
60 { { 4.17516864836e-02, 1.87623649254e-04, 5.63788712025e-02, 5.38373768330e-01, },
61 { 8.29434990883e-02, 2.03291710932e-04, 6.81538805366e-02, 9.70965325832e-01, },
62 { 8.67543518543e-02, 2.10733342101e-04, 1.38366967440e-01, 2.55089461803e-01, }
64 { 5.96254616976e-02, 8.62886518007e-05, 3.61776389182e-02, 4.79704320431e-01, },
65 { 6.12571723759e-02, 7.23929333617e-05, 3.93057651818e-02, 9.29222583771e-01, },
66 { 6.58465921879e-02, 1.03639606095e-04, 6.07583411038e-02, 9.90289509296e-01, } }
70 for (int32_t
i = 0;
i < 2;
i++) {
71 for (int32_t
j = 0;
j < 3;
j++) {
72 for (int32_t k = 0; k < 6; k++) {
78 for (int32_t
i = 0;
i < 2;
i++) {
79 for (int32_t
j = 0;
j < 3;
j++) {
80 for (int32_t k = 0; k < 4; k++) {
90 constexpr float plusZmin = 0.0529937;
91 constexpr float plusZmax = 249.778;
92 constexpr float minusZmin = -249.645;
93 constexpr float minusZmax = -0.0799937;
112 par.continuousTracking =
false;
164#ifdef GPUCA_TPC_GEOMETRY_O2
165 for (int32_t yz = 0; yz < 2; yz++) {
166 const float*
param = yz ? zErrorParam : yErrorParam;
167 for (int32_t rowType = 0; rowType < 4; rowType++) {
168 constexpr int32_t regionMap[4] = {0, 4, 6, 8};
169 ParamErrors[yz][rowType][0] =
param[0] *
param[0];
170 ParamErrors[yz][rowType][1] =
param[1] *
param[1] * GPUTPCGeometry::PadHeightByRegion(regionMap[rowType]);
171 ParamErrors[yz][rowType][2] =
param[2] *
param[2] / GPUTPCGeometry::TPCLength() / GPUTPCGeometry::PadHeightByRegion(regionMap[rowType]);
172 ParamErrors[yz][rowType][3] =
param[3] *
param[3] *
rec.tpc.clusterErrorOccupancyScaler *
rec.tpc.clusterErrorOccupancyScaler;