Skip to content

Commit 39ed52a

Browse files
author
Henrik Fribert
committed
Feat: Add nuclei to TOF and RICH
1 parent 96504f4 commit 39ed52a

File tree

4 files changed

+241
-58
lines changed

4 files changed

+241
-58
lines changed

ALICE3/DataModel/OTFRICH.h

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,20 @@ DECLARE_SOA_COLUMN(NSigmaMuonRich, nSigmaMuonRich, float); //! NSigma mu
3131
DECLARE_SOA_COLUMN(NSigmaPionRich, nSigmaPionRich, float); //! NSigma pion BarrelRich
3232
DECLARE_SOA_COLUMN(NSigmaKaonRich, nSigmaKaonRich, float); //! NSigma kaon BarrelRich
3333
DECLARE_SOA_COLUMN(NSigmaProtonRich, nSigmaProtonRich, float); //! NSigma proton BarrelRich
34+
DECLARE_SOA_COLUMN(NSigmaDeuteronRich, nSigmaDeuteronRich, float); //! NSigma deuteron BarrelRich
35+
DECLARE_SOA_COLUMN(NSigmaTritonRich, nSigmaTritonRich, float); //! NSigma triton BarrelRich
36+
DECLARE_SOA_COLUMN(NSigmaHelium3Rich, nSigmaHelium3Rich, float); //! NSigma helium3 BarrelRich
37+
DECLARE_SOA_COLUMN(NSigmaAlphaRich, nSigmaAlphaRich, float); //! NSigma alpha BarrelRich
3438
DECLARE_SOA_DYNAMIC_COLUMN(NSigmaRich, nSigmaRich, //! General function to get the nSigma for the RICH
3539
[](const float el,
3640
const float mu,
3741
const float pi,
3842
const float ka,
3943
const float pr,
44+
const float de,
45+
const float tr,
46+
const float he3,
47+
const float al,
4048
const int id) -> float {
4149
switch (std::abs(id)) {
4250
case 0:
@@ -49,6 +57,14 @@ DECLARE_SOA_DYNAMIC_COLUMN(NSigmaRich, nSigmaRich, //! General f
4957
return ka;
5058
case 4:
5159
return pr;
60+
case 5:
61+
return de;
62+
case 6:
63+
return tr;
64+
case 7:
65+
return he3;
66+
case 8:
67+
return al;
5268
default:
5369
LOG(fatal) << "Unrecognized PDG code for RICH";
5470
return 999.f;
@@ -62,6 +78,10 @@ DECLARE_SOA_COLUMN(HasSigMu, hasSigMu, bool); //! Has nSigma muon BarrelRi
6278
DECLARE_SOA_COLUMN(HasSigPi, hasSigPi, bool); //! Has nSigma pion BarrelRich (is pion over threshold)
6379
DECLARE_SOA_COLUMN(HasSigKa, hasSigKa, bool); //! Has nSigma kaon BarrelRich (is kaon over threshold)
6480
DECLARE_SOA_COLUMN(HasSigPr, hasSigPr, bool); //! Has nSigma proton BarrelRich (is proton over threshold)
81+
DECLARE_SOA_COLUMN(HasSigDe, hasSigDe, bool); //! Has nSigma deuteron BarrelRich (is deuteron over threshold)
82+
DECLARE_SOA_COLUMN(HasSigTr, hasSigTr, bool); //! Has nSigma triton BarrelRich (is triton over threshold)
83+
DECLARE_SOA_COLUMN(HasSigHe3, hasSigHe3, bool); //! Has nSigma helium3 BarrelRich (is helium3 over threshold)
84+
DECLARE_SOA_COLUMN(HasSigAl, hasSigAl, bool); //! Has nSigma alpha BarrelRich (is alpha over threshold)
6585

6686
} // namespace upgrade_rich
6787
DECLARE_SOA_TABLE(UpgradeRichs, "AOD", "UPGRADERICH",
@@ -70,11 +90,19 @@ DECLARE_SOA_TABLE(UpgradeRichs, "AOD", "UPGRADERICH",
7090
upgrade_rich::NSigmaPionRich,
7191
upgrade_rich::NSigmaKaonRich,
7292
upgrade_rich::NSigmaProtonRich,
93+
upgrade_rich::NSigmaDeuteronRich,
94+
upgrade_rich::NSigmaTritonRich,
95+
upgrade_rich::NSigmaHelium3Rich,
96+
upgrade_rich::NSigmaAlphaRich,
7397
upgrade_rich::NSigmaRich<upgrade_rich::NSigmaElectronRich,
7498
upgrade_rich::NSigmaMuonRich,
7599
upgrade_rich::NSigmaPionRich,
76100
upgrade_rich::NSigmaKaonRich,
77-
upgrade_rich::NSigmaProtonRich>);
101+
upgrade_rich::NSigmaProtonRich,
102+
upgrade_rich::NSigmaDeuteronRich,
103+
upgrade_rich::NSigmaTritonRich,
104+
upgrade_rich::NSigmaHelium3Rich,
105+
upgrade_rich::NSigmaAlphaRich>);
78106

79107
using UpgradeRich = UpgradeRichs::iterator;
80108

@@ -85,6 +113,10 @@ DECLARE_SOA_TABLE(UpgradeRichSignals, "AOD", "UPGRADERICHSIG",
85113
upgrade_rich::HasSigPi,
86114
upgrade_rich::HasSigKa,
87115
upgrade_rich::HasSigPr,
116+
upgrade_rich::HasSigDe,
117+
upgrade_rich::HasSigTr,
118+
upgrade_rich::HasSigHe3,
119+
upgrade_rich::HasSigAl,
88120
upgrade_rich::HasSigInGas);
89121

90122
using UpgradeRichSignal = UpgradeRichSignals::iterator;

ALICE3/DataModel/OTFTOF.h

Lines changed: 78 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -39,34 +39,54 @@ DECLARE_SOA_COLUMN(NSigmaMuonInnerTOF, nSigmaMuonInnerTOF, float); //!
3939
DECLARE_SOA_COLUMN(NSigmaPionInnerTOF, nSigmaPionInnerTOF, float); //! NSigma pion InnerTOF
4040
DECLARE_SOA_COLUMN(NSigmaKaonInnerTOF, nSigmaKaonInnerTOF, float); //! NSigma kaon InnerTOF
4141
DECLARE_SOA_COLUMN(NSigmaProtonInnerTOF, nSigmaProtonInnerTOF, float); //! NSigma proton InnerTOF
42+
DECLARE_SOA_COLUMN(NSigmaDeuteronInnerTOF, nSigmaDeuteronInnerTOF, float); //! NSigma deuteron InnerTOF
43+
DECLARE_SOA_COLUMN(NSigmaTritonInnerTOF, nSigmaTritonInnerTOF, float); //! NSigma triton InnerTOF
44+
DECLARE_SOA_COLUMN(NSigmaHelium3InnerTOF, nSigmaHelium3InnerTOF, float); //! NSigma helium3 InnerTOF
45+
DECLARE_SOA_COLUMN(NSigmaAlphaInnerTOF, nSigmaAlphaInnerTOF, float); //! NSigma alpha InnerTOF
4246
DECLARE_SOA_COLUMN(InnerTOFTrackTimeReco, innerTOFTrackTimeReco, float); //! Track time measured at the InnerTOF
4347
DECLARE_SOA_COLUMN(InnerTOFTrackLengthReco, innerTOFTrackLengthReco, float); //! track length for calculation of InnerTOF (reconstructed)
4448

45-
DECLARE_SOA_COLUMN(InnerTOFExpectedTimeEl, innerTOFExpectedTimeEl, float); //! Reconstructed expected time at the InnerTOF for the Electron mass hypotheses
46-
DECLARE_SOA_COLUMN(InnerTOFExpectedTimeMu, innerTOFExpectedTimeMu, float); //! Reconstructed expected time at the InnerTOF for the Muon mass hypotheses
47-
DECLARE_SOA_COLUMN(InnerTOFExpectedTimePi, innerTOFExpectedTimePi, float); //! Reconstructed expected time at the InnerTOF for the Pion mass hypotheses
48-
DECLARE_SOA_COLUMN(InnerTOFExpectedTimeKa, innerTOFExpectedTimeKa, float); //! Reconstructed expected time at the InnerTOF for the Kaon mass hypotheses
49-
DECLARE_SOA_COLUMN(InnerTOFExpectedTimePr, innerTOFExpectedTimePr, float); //! Reconstructed expected time at the InnerTOF for the Proton mass hypotheses
49+
DECLARE_SOA_COLUMN(InnerTOFExpectedTimeEl, innerTOFExpectedTimeEl, float); //! Reconstructed expected time at the InnerTOF for the Electron mass hypotheses
50+
DECLARE_SOA_COLUMN(InnerTOFExpectedTimeMu, innerTOFExpectedTimeMu, float); //! Reconstructed expected time at the InnerTOF for the Muon mass hypotheses
51+
DECLARE_SOA_COLUMN(InnerTOFExpectedTimePi, innerTOFExpectedTimePi, float); //! Reconstructed expected time at the InnerTOF for the Pion mass hypotheses
52+
DECLARE_SOA_COLUMN(InnerTOFExpectedTimeKa, innerTOFExpectedTimeKa, float); //! Reconstructed expected time at the InnerTOF for the Kaon mass hypotheses
53+
DECLARE_SOA_COLUMN(InnerTOFExpectedTimePr, innerTOFExpectedTimePr, float); //! Reconstructed expected time at the InnerTOF for the Proton mass hypotheses
54+
DECLARE_SOA_COLUMN(InnerTOFExpectedTimeDe, innerTOFExpectedTimeDe, float); //! Reconstructed expected time at the InnerTOF for the Deuteron mass hypotheses
55+
DECLARE_SOA_COLUMN(InnerTOFExpectedTimeTr, innerTOFExpectedTimeTr, float); //! Reconstructed expected time at the InnerTOF for the Triton mass hypotheses
56+
DECLARE_SOA_COLUMN(InnerTOFExpectedTimeHe3, innerTOFExpectedTimeHe3, float); //! Reconstructed expected time at the InnerTOF for the Helium3 mass hypotheses
57+
DECLARE_SOA_COLUMN(InnerTOFExpectedTimeAl, innerTOFExpectedTimeAl, float); //! Reconstructed expected time at the InnerTOF for the Alpha mass hypotheses
5058

5159
DECLARE_SOA_COLUMN(NSigmaElectronOuterTOF, nSigmaElectronOuterTOF, float); //! NSigma electron OuterTOF
5260
DECLARE_SOA_COLUMN(NSigmaMuonOuterTOF, nSigmaMuonOuterTOF, float); //! NSigma muon OuterTOF
5361
DECLARE_SOA_COLUMN(NSigmaPionOuterTOF, nSigmaPionOuterTOF, float); //! NSigma pion OuterTOF
5462
DECLARE_SOA_COLUMN(NSigmaKaonOuterTOF, nSigmaKaonOuterTOF, float); //! NSigma kaon OuterTOF
5563
DECLARE_SOA_COLUMN(NSigmaProtonOuterTOF, nSigmaProtonOuterTOF, float); //! NSigma proton OuterTOF
64+
DECLARE_SOA_COLUMN(NSigmaDeuteronOuterTOF, nSigmaDeuteronOuterTOF, float); //! NSigma deuteron OuterTOF
65+
DECLARE_SOA_COLUMN(NSigmaTritonOuterTOF, nSigmaTritonOuterTOF, float); //! NSigma triton OuterTOF
66+
DECLARE_SOA_COLUMN(NSigmaHelium3OuterTOF, nSigmaHelium3OuterTOF, float); //! NSigma helium3 OuterTOF
67+
DECLARE_SOA_COLUMN(NSigmaAlphaOuterTOF, nSigmaAlphaOuterTOF, float); //! NSigma alpha OuterTOF
5668
DECLARE_SOA_COLUMN(OuterTOFTrackTimeReco, outerTOFTrackTimeReco, float); //! Track time measured at the OuterTOF
5769
DECLARE_SOA_COLUMN(OuterTOFTrackLengthReco, outerTOFTrackLengthReco, float); //! track length for calculation of OuterTOF (reconstructed)
5870

59-
DECLARE_SOA_COLUMN(OuterTOFExpectedTimeEl, outerTOFExpectedTimeEl, float); //! Reconstructed expected time at the OuterTOF for the Electron mass hypotheses
60-
DECLARE_SOA_COLUMN(OuterTOFExpectedTimeMu, outerTOFExpectedTimeMu, float); //! Reconstructed expected time at the OuterTOF for the Muon mass hypotheses
61-
DECLARE_SOA_COLUMN(OuterTOFExpectedTimePi, outerTOFExpectedTimePi, float); //! Reconstructed expected time at the OuterTOF for the Pion mass hypotheses
62-
DECLARE_SOA_COLUMN(OuterTOFExpectedTimeKa, outerTOFExpectedTimeKa, float); //! Reconstructed expected time at the OuterTOF for the Kaon mass hypotheses
63-
DECLARE_SOA_COLUMN(OuterTOFExpectedTimePr, outerTOFExpectedTimePr, float); //! Reconstructed expected time at the OuterTOF for the Proton mass hypotheses
64-
DECLARE_SOA_DYNAMIC_COLUMN(NSigmaInnerTOF, nSigmaInnerTOF, //! General function to get the nSigma for the InnerTOF
71+
DECLARE_SOA_COLUMN(OuterTOFExpectedTimeEl, outerTOFExpectedTimeEl, float); //! Reconstructed expected time at the OuterTOF for the Electron mass hypotheses
72+
DECLARE_SOA_COLUMN(OuterTOFExpectedTimeMu, outerTOFExpectedTimeMu, float); //! Reconstructed expected time at the OuterTOF for the Muon mass hypotheses
73+
DECLARE_SOA_COLUMN(OuterTOFExpectedTimePi, outerTOFExpectedTimePi, float); //! Reconstructed expected time at the OuterTOF for the Pion mass hypotheses
74+
DECLARE_SOA_COLUMN(OuterTOFExpectedTimeKa, outerTOFExpectedTimeKa, float); //! Reconstructed expected time at the OuterTOF for the Kaon mass hypotheses
75+
DECLARE_SOA_COLUMN(OuterTOFExpectedTimePr, outerTOFExpectedTimePr, float); //! Reconstructed expected time at the OuterTOF for the Proton mass hypotheses
76+
DECLARE_SOA_COLUMN(OuterTOFExpectedTimeDe, outerTOFExpectedTimeDe, float); //! Reconstructed expected time at the OuterTOF for the Deuteron mass hypotheses
77+
DECLARE_SOA_COLUMN(OuterTOFExpectedTimeTr, outerTOFExpectedTimeTr, float); //! Reconstructed expected time at the OuterTOF for the Triton mass hypotheses
78+
DECLARE_SOA_COLUMN(OuterTOFExpectedTimeHe3, outerTOFExpectedTimeHe3, float); //! Reconstructed expected time at the OuterTOF for the Helium3 mass hypotheses
79+
DECLARE_SOA_COLUMN(OuterTOFExpectedTimeAl, outerTOFExpectedTimeAl, float); //! Reconstructed expected time at the OuterTOF for the Alpha mass hypotheses
80+
DECLARE_SOA_DYNAMIC_COLUMN(NSigmaInnerTOF, nSigmaInnerTOF, //! General function to get the nSigma for the InnerTOF
6581
[](const float el,
6682
const float mu,
6783
const float pi,
6884
const float ka,
6985
const float pr,
86+
const float de,
87+
const float tr,
88+
const float he3,
89+
const float al,
7090
const int id) -> float {
7191
switch (std::abs(id)) {
7292
case 0:
@@ -79,6 +99,14 @@ DECLARE_SOA_DYNAMIC_COLUMN(NSigmaInnerTOF, nSigmaInnerTOF, //! G
7999
return ka;
80100
case 4:
81101
return pr;
102+
case 5:
103+
return de;
104+
case 6:
105+
return tr;
106+
case 7:
107+
return he3;
108+
case 8:
109+
return al;
82110
default:
83111
LOG(fatal) << "Unrecognized PDG code for InnerTOF";
84112
return 999.f;
@@ -90,6 +118,10 @@ DECLARE_SOA_DYNAMIC_COLUMN(NSigmaOuterTOF, nSigmaOuterTOF, //! General function
90118
const float pi,
91119
const float ka,
92120
const float pr,
121+
const float de,
122+
const float tr,
123+
const float he3,
124+
const float al,
93125
const int id) -> float {
94126
switch (std::abs(id)) {
95127
case 0:
@@ -102,6 +134,14 @@ DECLARE_SOA_DYNAMIC_COLUMN(NSigmaOuterTOF, nSigmaOuterTOF, //! General function
102134
return ka;
103135
case 4:
104136
return pr;
137+
case 5:
138+
return de;
139+
case 6:
140+
return tr;
141+
case 7:
142+
return he3;
143+
case 8:
144+
return al;
105145
default:
106146
LOG(fatal) << "Unrecognized PDG code for InnerTOF";
107147
return 999.f;
@@ -124,37 +164,61 @@ DECLARE_SOA_TABLE(UpgradeTofs, "AOD", "UPGRADETOF",
124164
upgrade_tof::NSigmaPionInnerTOF,
125165
upgrade_tof::NSigmaKaonInnerTOF,
126166
upgrade_tof::NSigmaProtonInnerTOF,
167+
upgrade_tof::NSigmaDeuteronInnerTOF,
168+
upgrade_tof::NSigmaTritonInnerTOF,
169+
upgrade_tof::NSigmaHelium3InnerTOF,
170+
upgrade_tof::NSigmaAlphaInnerTOF,
127171
upgrade_tof::InnerTOFTrackTimeReco,
128172
upgrade_tof::InnerTOFTrackLengthReco,
129173
upgrade_tof::NSigmaElectronOuterTOF,
130174
upgrade_tof::NSigmaMuonOuterTOF,
131175
upgrade_tof::NSigmaPionOuterTOF,
132176
upgrade_tof::NSigmaKaonOuterTOF,
133177
upgrade_tof::NSigmaProtonOuterTOF,
178+
upgrade_tof::NSigmaDeuteronOuterTOF,
179+
upgrade_tof::NSigmaTritonOuterTOF,
180+
upgrade_tof::NSigmaHelium3OuterTOF,
181+
upgrade_tof::NSigmaAlphaOuterTOF,
134182
upgrade_tof::OuterTOFTrackTimeReco,
135183
upgrade_tof::OuterTOFTrackLengthReco,
136184
upgrade_tof::NSigmaInnerTOF<upgrade_tof::NSigmaElectronInnerTOF,
137185
upgrade_tof::NSigmaMuonInnerTOF,
138186
upgrade_tof::NSigmaPionInnerTOF,
139187
upgrade_tof::NSigmaKaonInnerTOF,
140-
upgrade_tof::NSigmaProtonInnerTOF>,
188+
upgrade_tof::NSigmaProtonInnerTOF,
189+
upgrade_tof::NSigmaDeuteronInnerTOF,
190+
upgrade_tof::NSigmaTritonInnerTOF,
191+
upgrade_tof::NSigmaHelium3InnerTOF,
192+
upgrade_tof::NSigmaAlphaInnerTOF>,
141193
upgrade_tof::NSigmaOuterTOF<upgrade_tof::NSigmaElectronOuterTOF,
142194
upgrade_tof::NSigmaMuonOuterTOF,
143195
upgrade_tof::NSigmaPionOuterTOF,
144196
upgrade_tof::NSigmaKaonOuterTOF,
145-
upgrade_tof::NSigmaProtonOuterTOF>);
197+
upgrade_tof::NSigmaProtonOuterTOF,
198+
upgrade_tof::NSigmaDeuteronOuterTOF,
199+
upgrade_tof::NSigmaTritonOuterTOF,
200+
upgrade_tof::NSigmaHelium3OuterTOF,
201+
upgrade_tof::NSigmaAlphaOuterTOF>);
146202

147203
DECLARE_SOA_TABLE(UpgradeTofExpectedTimes, "AOD", "UPGRADETOFEXPT",
148204
upgrade_tof::InnerTOFExpectedTimeEl,
149205
upgrade_tof::InnerTOFExpectedTimeMu,
150206
upgrade_tof::InnerTOFExpectedTimePi,
151207
upgrade_tof::InnerTOFExpectedTimeKa,
152208
upgrade_tof::InnerTOFExpectedTimePr,
209+
upgrade_tof::InnerTOFExpectedTimeDe,
210+
upgrade_tof::InnerTOFExpectedTimeTr,
211+
upgrade_tof::InnerTOFExpectedTimeHe3,
212+
upgrade_tof::InnerTOFExpectedTimeAl,
153213
upgrade_tof::OuterTOFExpectedTimeEl,
154214
upgrade_tof::OuterTOFExpectedTimeMu,
155215
upgrade_tof::OuterTOFExpectedTimePi,
156216
upgrade_tof::OuterTOFExpectedTimeKa,
157-
upgrade_tof::OuterTOFExpectedTimePr);
217+
upgrade_tof::OuterTOFExpectedTimePr,
218+
upgrade_tof::OuterTOFExpectedTimeDe,
219+
upgrade_tof::OuterTOFExpectedTimeTr,
220+
upgrade_tof::OuterTOFExpectedTimeHe3,
221+
upgrade_tof::OuterTOFExpectedTimeAl);
158222

159223
using UpgradeTofMC = UpgradeTofMCs::iterator;
160224
using UpgradeTof = UpgradeTofs::iterator;

0 commit comments

Comments
 (0)