Skip to content

Commit 4aba241

Browse files
authored
Merge branch 'master' into femtoworld
2 parents 4f51589 + b47a080 commit 4aba241

12 files changed

Lines changed: 583 additions & 761 deletions

File tree

CODEOWNERS

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@
2626
/EventFiltering/PWGMM @alibuild @aortizve
2727
/EventFiltering/PWGJE @alibuild @fkrizek
2828
/PWGCF @alibuild @jgrosseo @saganatt @victor-gonzalez @zchochul
29-
/PWGDQ @alibuild @iarsene @dsekihat
30-
/PWGEM @alibuild @mikesas @rbailhac
29+
/PWGDQ @alibuild @iarsene @dsekihat @feisenhu
30+
/PWGEM @alibuild @mikesas @rbailhac @feisenhu
3131
/PWGEM/Dilepton @alibuild @mikesas @rbailhac @dsekihat @ivorobye
3232
/PWGEM/PhotonMeson @alibuild @mikesas @rbailhac @m-c-danisch @novitzky
3333
/PWGHF @alibuild @ginnocen @vkucera @fcolamar @cterrevo

Common/Core/TrackSelection.h

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,12 @@ class TrackSelection
4646
kNCuts
4747
};
4848

49+
enum GlobalTrackRun3ITSMatching {
50+
Run3ITSibAny,
51+
Run3ITSallAny,
52+
Run3ITSall7Layers
53+
};
54+
4955
static const std::string mCutNames[static_cast<int>(TrackCuts::kNCuts)];
5056

5157
// Temporary function to check if track passes selection criteria. To be replaced by framework filters.

Common/Core/TrackSelectionDefaults.h

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
#define TrackSelectionDefaults_H
2020

2121
#include "Framework/DataTypes.h"
22+
#include "Common/Core/TrackSelection.h"
2223

2324
// Default track selection requiring one hit in the SPD
2425
TrackSelection getGlobalTrackSelection()
@@ -40,6 +41,43 @@ TrackSelection getGlobalTrackSelection()
4041
return selectedTracks;
4142
}
4243

44+
// Default track selection requiring a particular Run 3 ITS matching
45+
TrackSelection getGlobalTrackSelectionITSMatch(int matching)
46+
{
47+
std::pair<int8_t, std::set<unsigned char>> itsMatching;
48+
switch (matching) {
49+
case TrackSelection::GlobalTrackRun3ITSMatching::Run3ITSibAny:
50+
itsMatching = std::make_pair((int8_t)1, (std::set<unsigned char>){0, 1, 2});
51+
break;
52+
case TrackSelection::GlobalTrackRun3ITSMatching::Run3ITSallAny:
53+
itsMatching = std::make_pair((int8_t)1, (std::set<unsigned char>){0, 1, 2, 3, 4, 5, 6});
54+
break;
55+
case TrackSelection::GlobalTrackRun3ITSMatching::Run3ITSall7Layers:
56+
itsMatching = std::make_pair((int8_t)7, (std::set<unsigned char>){0, 1, 2, 3, 4, 5, 6});
57+
break;
58+
59+
default:
60+
LOG(fatal) << "getGlobalTrackSelectionITSMatch with undefined ITS matching";
61+
break;
62+
}
63+
64+
TrackSelection selectedTracks;
65+
selectedTracks.SetTrackType(o2::aod::track::Run2Track);
66+
selectedTracks.SetPtRange(0.1f, 1e10f);
67+
selectedTracks.SetEtaRange(-0.8f, 0.8f);
68+
selectedTracks.SetRequireITSRefit(true);
69+
selectedTracks.SetRequireTPCRefit(true);
70+
selectedTracks.SetRequireGoldenChi2(true);
71+
selectedTracks.SetMinNCrossedRowsTPC(70);
72+
selectedTracks.SetMinNCrossedRowsOverFindableClustersTPC(0.8f);
73+
selectedTracks.SetMaxChi2PerClusterTPC(4.f);
74+
selectedTracks.SetRequireHitsInITSLayers(itsMatching.first, itsMatching.second);
75+
selectedTracks.SetMaxChi2PerClusterITS(36.f);
76+
selectedTracks.SetMaxDcaXYPtDep([](float pt) { return 0.0105f + 0.0350f / pow(pt, 1.1f); });
77+
selectedTracks.SetMaxDcaZ(2.f);
78+
return selectedTracks;
79+
}
80+
4381
// Default track selection requiring no hit in the SPD and one in the innermost
4482
// SDD -> complementary tracks to global selection
4583
TrackSelection getGlobalTrackSelectionSDD()

0 commit comments

Comments
 (0)