Skip to content

Commit 2483b7f

Browse files
authored
new subchapter in EvSel - Rejection of events with dead zones in ITS
1 parent 62eadbc commit 2483b7f

File tree

1 file changed

+40
-1
lines changed

1 file changed

+40
-1
lines changed

docs/analysis-tools/EventSelection.md

Lines changed: 40 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -412,7 +412,7 @@ The following table summarizes the event selection bits used to mitigate occupan
412412
413413
These bits can be used as follows:
414414
``` c++
415-
if (col.selection_bit(o2::aod::evsel::kNoCollInTimeRangeStrict)) { /* do analysis */ }
415+
if (col.selection_bit(o2::aod::evsel::kNoCollInTimeRangeNarrow)) { /* do analysis */ }
416416
```
417417
418418
@@ -429,6 +429,45 @@ and, in addition, apply occupancy selection bits, e.g. `kNoCollInTimeRangeNarrow
429429
Note that TPC-related occupancy effects are most pronounced in Pb–Pb runs, however, the tools described above can also be used for occupancy studies in pp and light-ion runs.
430430
431431
432+
433+
## Rejection of events with dead zones in ITS
434+
435+
### Problem
436+
437+
- The **Inner Tracking System (ITS)** occasionally develops **“holes” in acceptance** lasting about **6–8 seconds**, visible as gaps in φ–time plots of track clusters.
438+
- These are caused by **reboots of ITS staves**, typically triggered by recovery of failed **lanes** (groups of 7 chips sharing one data link).
439+
- When a lane fails, the **full stave** becomes temporarily blind while the DCS recovers it.
440+
- The issue affects, in particular, **ITS Layer 3**, which is critical for achieving four consecutive ITS hits in tracking.
441+
- These dead periods correlate with **drops in ITS–TPC matching efficiency** and produce visible “holes” in tracking performance.
442+
- The effect appears both in **Pb–Pb** and **pp** data.
443+
444+
### Using new event selection bits
445+
446+
To reject events recorded during these faulty intervals, several event selection bits were introduced in O2Physics ([PR #9038](https://github.com/AliceO2Group/O2Physics/pull/9038), Dec 2024):
447+
```
448+
kIsGoodITSLayer3, // number of inactive chips on ITS layer 3 is below maximum allowed value
449+
kIsGoodITSLayer0123, // numbers of inactive chips on ITS layers 0-3 are below maximum allowed values
450+
kIsGoodITSLayersAll, // numbers of inactive chips on all ITS layers are below maximum allowed values
451+
```
452+
453+
Example usage:
454+
```cpp
455+
if (col.selection_bit(o2::aod::evsel::kIsGoodITSLayersAll)) {
456+
// do analysis
457+
}
458+
```
459+
This particular cut ensures that all ITS layers are in a good state (i.e. no rebooting **staves**; note that at the same time some **chips** can be inactive).
460+
461+
The logic uses [CCDB maps](https://nvalle.web.cern.ch/its/dmap/) of dead chips and defines per-layer thresholds for allowed inactive chips:
462+
```cpp
463+
maxInactiveChipsPerLayer = {8, 8, 8, 111, 111, 195, 195};
464+
```
465+
If any layer exceeds its threshold, the event is flagged as **bad** (likely during a stave reboot).
466+
467+
Applying this cut removes time intervals with dead ITS staves and, correspondingly, the large acceptance holes, significantly flattening time-dependent observables like the **2- and 4-particle correlators** and improving the stability of **v₂** measurements in Pb-Pb.
468+
Note that in pp the `kIsGoodITSLayersAll` cut can reject a huge fraction of events (the holes in pp are more frequent).
469+
470+
432471
## Usage of RCT flags
433472
434473
(to be updated)

0 commit comments

Comments
 (0)