Skip to content

Commit 0982d6c

Browse files
committed
add new optimised tiling to FT3ModuleConstants. Now has active coverage area of 97.25% in the nominal region
1 parent eb3f6ae commit 0982d6c

1 file changed

Lines changed: 44 additions & 46 deletions

File tree

‎Detectors/Upgrades/ALICE3/TRKFT3/FT3/simulation/include/FT3Simulation/FT3ModuleConstants.h‎

Lines changed: 44 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,8 @@ namespace o2::ft3::ModuleConstants
4848
const double single_sensor_width = 2.5;
4949
const double single_sensor_height = 2.9;
5050
const double inactive_width = 0.2;
51-
const double sensor2x1_gap = 0.02; // both between L&R sensors in 2x1, and between two 2x1s
52-
const double stackGap = sensor2x1_gap; // gap between 2xN module stacks
51+
const double sensor2x1_gap = 0.015; // between L&R sensors in 2x1, and between sensors in a stack
52+
const double stackGap = 0.035; // gap between 2xN module stacks
5353

5454
const double active_width = single_sensor_width - inactive_width;
5555
const double active_height = single_sensor_height;
@@ -189,28 +189,26 @@ namespace OT_StavePositions
189189
* Do NOT add any zero midpoints, this is taken off separately.
190190
*/
191191
const std::map<int, std::pair<double, bool>> staveID_to_y_midpoint = {
192-
{-5, {32.73, true}},
193-
{-4, {38.609, true}},
194-
{-3, {42.094, true}},
195-
{-2, {43.023, true}},
196-
{-1, {44.054, true}},
197-
{1, {44.053, true}},
198-
{2, {43.023, true}},
199-
{3, {42.094, true}},
200-
{4, {38.609, true}},
201-
{5, {32.73, true}}};
192+
{-4, {39.679, true}},
193+
{-3, {42.065, true}},
194+
{-2, {42.991, true}},
195+
{-1, {43.772, true}},
196+
{1, {43.772, true}},
197+
{2, {42.991, true}},
198+
{3, {42.065, true}},
199+
{4, {39.679, true}}};
202200
/*
203201
* Length of one stave piece: for a stave in staveID_to_y_midpoint that is one
204202
* of its two pieces, otherwise the whole stave centred on y=0. Sized to cover
205203
* the modules in exactStaveFills, with 1 mm of margin.
206204
*/
207205
const std::vector<double> y_lengths = {
208-
40.87, 61.31, 78.83, 90.51, 99.27,
209-
108.03, 113.87, 119.71, 122.63, 128.47,
210-
64.23, 55.47, 49.63, 49.63, 47.23,
211-
47.23, 49.63, 49.63, 55.47, 64.23,
212-
128.47, 122.63, 119.71, 113.87, 108.03,
213-
99.27, 90.51, 78.83, 61.31, 40.87};
206+
41, 61.35, 73.03, 87.63, 96.39,
207+
105.14, 110.99, 116.82, 122.67, 125.58,
208+
128.5, 52.59, 49.67, 49.67, 46.78,
209+
46.78, 49.67, 49.67, 52.59, 128.5,
210+
125.58, 122.67, 116.82, 110.99, 105.14,
211+
96.39, 87.63, 73.03, 61.35, 41};
214212
const unsigned nStaves = 30; // y_lengths, staveOnFront and exactStaveFills follow this
215213
const double x_midpoint_spacing = 4.5;
216214
const std::vector<double> x_midpoints = makeStaveXMidpoints(nStaves, x_midpoint_spacing);
@@ -227,36 +225,36 @@ const std::vector<bool> staveOnFront = makeStaveOnFront(nStaves);
227225
* because FT3 puts a stackGap between modules and the optimiser does not.
228226
*/
229227
const std::vector<std::vector<StaveFill>> exactStaveFills = {
230-
{{-20.43, {4, 4, 3, 3}}}, // ID -15
228+
{{-20.476, {4, 4, 3, 3}}}, // ID -15
231229
{{-30.65, {4, 4, 4, 3, 3, 3}}}, // ID -14
232-
{{-39.41, {4, 4, 4, 4, 4, 4, 3}}}, // ID -13
233-
{{-45.25, {4, 4, 4, 4, 4, 4, 4, 3}}}, // ID -12
234-
{{-49.63, {4, 4, 4, 4, 4, 4, 4, 3, 3}}}, // ID -11
235-
{{-54.01, {4, 4, 4, 4, 4, 4, 4, 3, 3, 3}}}, // ID -10
236-
{{-56.93, {4, 4, 4, 4, 4, 4, 4, 4, 4, 3}}}, // ID -9
237-
{{-59.85, {4, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3}}}, // ID -8
238-
{{-61.31, {4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 3}}}, // ID -7
239-
{{-64.23, {4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3}}}, // ID -6
240-
{{-64.84, {4, 4, 4, 4, 3, 3}}, {0.62, {4, 4, 4, 4, 3, 3}}}, // ID -5
241-
{{-66.339, {4, 4, 4, 4, 3}}, {10.879, {4, 4, 4, 4, 3}}}, // ID -4
242-
{{-66.904, {4, 4, 3, 3, 3}}, {17.284, {4, 4, 3, 3, 3}}}, // ID -3
243-
{{-67.833, {4, 4, 3, 3, 3}}, {18.213, {4, 4, 3, 3, 3}}}, // ID -2
244-
{{-67.147, {4, 3, 3, 3, 3}}, {20.96, {4, 3, 3, 3, 3}}}, // ID -1
245-
{{-67.66, {4, 3, 3, 3, 3}}, {20.447, {4, 3, 3, 3, 3}}}, // ID +1
246-
{{-67.833, {4, 4, 3, 3, 3}}, {18.213, {4, 4, 3, 3, 3}}}, // ID +2
247-
{{-66.904, {4, 4, 3, 3, 3}}, {17.284, {4, 4, 3, 3, 3}}}, // ID +3
248-
{{-66.339, {4, 4, 4, 4, 3}}, {10.879, {4, 4, 4, 4, 3}}}, // ID +4
249-
{{-64.84, {4, 4, 4, 4, 3, 3}}, {0.62, {4, 4, 4, 4, 3, 3}}}, // ID +5
250-
{{-64.23, {4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3}}}, // ID +6
251-
{{-61.31, {4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 3}}}, // ID +7
252-
{{-59.85, {4, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3}}}, // ID +8
253-
{{-56.93, {4, 4, 4, 4, 4, 4, 4, 4, 4, 3}}}, // ID +9
254-
{{-54.01, {4, 4, 4, 4, 4, 4, 4, 3, 3, 3}}}, // ID +10
255-
{{-49.63, {4, 4, 4, 4, 4, 4, 4, 3, 3}}}, // ID +11
256-
{{-45.25, {4, 4, 4, 4, 4, 4, 4, 3}}}, // ID +12
257-
{{-39.41, {4, 4, 4, 4, 4, 4, 3}}}, // ID +13
230+
{{-36.49, {4, 4, 4, 4, 3, 3, 3}}}, // ID -13
231+
{{-43.7875, {4, 4, 4, 4, 4, 4, 3, 3}}}, // ID -12
232+
{{-48.17, {4, 4, 4, 4, 4, 4, 3, 3, 3}}}, // ID -11
233+
{{-52.5425, {4, 4, 4, 4, 4, 4, 4, 4, 4}}}, // ID -10
234+
{{-55.4675, {4, 4, 4, 4, 4, 4, 4, 4, 3, 3}}}, // ID -9
235+
{{-58.3825, {4, 4, 4, 4, 4, 4, 4, 4, 4, 4}}}, // ID -8
236+
{{-61.3075, {4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 3}}}, // ID -7
237+
{{-62.765, {4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3}}}, // ID -6
238+
{{-64.2225, {4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4}}}, // ID -5
239+
{{-65.946, {4, 4, 4, 3, 3}}, {13.411, {4, 4, 4, 3, 3}}}, // ID -4
240+
{{-66.8749, {4, 4, 3, 3, 3}}, {17.2549, {4, 4, 3, 3, 3}}}, // ID -3
241+
{{-67.8015, {4, 4, 3, 3, 3}}, {18.1815, {4, 4, 3, 3, 3}}}, // ID -2
242+
{{-67.1397, {4, 4, 4, 4}}, {20.4051, {4, 4, 4, 4}}}, // ID -1
243+
{{-67.0901, {4, 4, 4, 4}}, {20.4547, {4, 4, 4, 4}}}, // ID +1
244+
{{-67.8015, {4, 4, 3, 3, 3}}, {18.1815, {4, 4, 3, 3, 3}}}, // ID +2
245+
{{-66.8749, {4, 4, 3, 3, 3}}, {17.2549, {4, 4, 3, 3, 3}}}, // ID +3
246+
{{-65.946, {4, 4, 4, 3, 3}}, {13.411, {4, 4, 4, 3, 3}}}, // ID +4
247+
{{-64.2225, {4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4}}}, // ID +5
248+
{{-62.765, {4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3}}}, // ID +6
249+
{{-61.3075, {4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 3}}}, // ID +7
250+
{{-58.3825, {4, 4, 4, 4, 4, 4, 4, 4, 4, 4}}}, // ID +8
251+
{{-55.4675, {4, 4, 4, 4, 4, 4, 4, 4, 3, 3}}}, // ID +9
252+
{{-52.5425, {4, 4, 4, 4, 4, 4, 4, 4, 4}}}, // ID +10
253+
{{-48.17, {4, 4, 4, 4, 4, 4, 3, 3, 3}}}, // ID +11
254+
{{-43.7875, {4, 4, 4, 4, 4, 4, 3, 3}}}, // ID +12
255+
{{-36.49, {4, 4, 4, 4, 3, 3, 3}}}, // ID +13
258256
{{-30.65, {4, 4, 4, 3, 3, 3}}}, // ID +14
259-
{{-20.43, {4, 4, 3, 3}}}, // ID +15
257+
{{-20.379, {4, 4, 3, 3}}}, // ID +15
260258
};
261259
} // namespace OT_StavePositions
262260

0 commit comments

Comments
 (0)