Skip to content

Commit 1f6094b

Browse files
authored
Add conditional registration for generated and reconstructed data
1 parent 89b15c7 commit 1f6094b

File tree

1 file changed

+66
-62
lines changed

1 file changed

+66
-62
lines changed

ALICE3/Tasks/alice3-dilepton.cxx

Lines changed: 66 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -88,68 +88,72 @@ struct Alice3Dilepton {
8888
const AxisSpec axisPrody{2000, -100, 100, "Prod. Vertex Y (cm)"};
8989
const AxisSpec axisProdz{2000, -100, 100, "Prod. Vertex Z (cm)"};
9090

91-
registry.add("Generated/Event/VtxX", "Vertex X", kTH1F, {axisVx});
92-
registry.add("Generated/Event/VtxY", "Vertex Y", kTH1F, {axisVy});
93-
registry.add("Generated/Event/VtxZ", "Vertex Z", kTH1F, {axisVz});
94-
registry.add("Generated/Particle/Pt", "Particle Pt", kTH1F, {axisPt});
95-
registry.add("Generated/Particle/Eta", "Particle Eta", kTH1F, {axisEta});
96-
registry.add("Generated/Particle/Phi", "Particle Phi", kTH1F, {axisPhi});
97-
registry.add("Generated/Particle/Eta_Pt", "Eta vs. Pt", kTH2F, {axisPt, axisEta}, true);
98-
registry.add("Generated/Particle/prodVx", "Particle Prod. Vertex X", kTH1F, {axisProdx});
99-
registry.add("Generated/Particle/prodVy", "Particle Prod. Vertex Y", kTH1F, {axisPrody});
100-
registry.add("Generated/Particle/prodVz", "Particle Prod. Vertex Z", kTH1F, {axisProdz});
101-
registry.add("Generated/Particle/ParticlesPerEvent", "Particles per event", kTH1F, {{100, 0, 100}});
102-
103-
registry.add("Generated/Pair/ULS/Tried", "Pair tries", kTH1F, {{10, -0.5, 9.5}});
104-
registry.add("Generated/Pair/ULS/Mass", "Pair Mass", kTH1F, {axisM});
105-
registry.add("Generated/Pair/ULS/Pt", "Pair Pt", kTH1F, {axisPt});
106-
registry.add("Generated/Pair/ULS/Eta", "Pair Eta", kTH1F, {axisEta});
107-
registry.add("Generated/Pair/ULS/Phi", "Pair Phi", kTH1F, {axisPhi});
108-
registry.add("Generated/Pair/ULS/Mass_Pt", "Pair Mass vs. Pt", kTH2F, {axisM, axisPt}, true);
109-
110-
registry.addClone("Generated/Pair/ULS/", "Generated/Pair/LSpp/");
111-
registry.addClone("Generated/Pair/ULS/", "Generated/Pair/LSnn/");
112-
113-
registry.add("Reconstructed/Event/VtxX", "Vertex X", kTH1F, {axisVx});
114-
registry.add("Reconstructed/Event/VtxY", "Vertex Y", kTH1F, {axisVy});
115-
registry.add("Reconstructed/Event/VtxZ", "Vertex Z", kTH1F, {axisVz});
116-
117-
registry.add("Reconstructed/Track/Pt", "Track Pt", kTH1F, {axisPt});
118-
registry.add("Reconstructed/Track/Eta", "Track Eta", kTH1F, {axisEta});
119-
registry.add("Reconstructed/Track/Phi", "Track Eta", kTH1F, {axisPhi});
120-
registry.add("Reconstructed/Track/Eta_Pt", "Eta vs. Pt", kTH2F, {axisPt, axisEta}, true);
121-
registry.add("Reconstructed/Track/SigmaOTofvspt", "Track #sigma oTOF", kTH2F, {axisPt, axisSigmaEl});
122-
registry.add("Reconstructed/Track/SigmaITofvspt", "Track #sigma iTOF", kTH2F, {axisPt, axisSigmaEl});
123-
registry.add("Reconstructed/Track/SigmaRichvspt", "Track #sigma RICH", kTH2F, {axisPt, axisSigmaEl});
124-
registry.add("Reconstructed/Track/outerTOFTrackLength", "Track length outer TOF", kTH1F, {axisTrackLengthOuterTOF});
125-
126-
registry.addClone("Reconstructed/Track/", "Reconstructed/TrackPID/");
127-
128-
registry.add("Reconstructed/Pair/ULS/Mass", "Pair Mass", kTH1F, {axisM});
129-
registry.add("Reconstructed/Pair/ULS/Pt", "Pair Pt", kTH1F, {axisPt});
130-
registry.add("Reconstructed/Pair/ULS/Eta", "Pair Eta", kTH1F, {axisEta});
131-
registry.add("Reconstructed/Pair/ULS/Phi", "Pair Phi", kTH1F, {axisPhi});
132-
registry.add("Reconstructed/Pair/ULS/Mass_Pt", "Pair Mass vs. Pt", kTH2F, {axisM, axisPt}, true);
133-
134-
registry.addClone("Reconstructed/Pair/ULS/", "Reconstructed/Pair/LSpp/");
135-
registry.addClone("Reconstructed/Pair/ULS/", "Reconstructed/Pair/LSnn/");
136-
137-
registry.add("ReconstructedFiltered/Pair/ULS/Mass", "Pair Mass", kTH1F, {axisM});
138-
registry.add("ReconstructedFiltered/Pair/ULS/Pt", "Pair Pt", kTH1F, {axisPt});
139-
registry.add("ReconstructedFiltered/Pair/ULS/Eta", "Pair Eta", kTH1F, {axisEta});
140-
registry.add("ReconstructedFiltered/Pair/ULS/Phi", "Pair Phi", kTH1F, {axisPhi});
141-
registry.add("ReconstructedFiltered/Pair/ULS/Mass_Pt", "Pair Mass vs. Pt", kTH2F, {axisM, axisPt}, true);
142-
143-
registry.addClone("ReconstructedFiltered/Pair/ULS/", "ReconstructedFiltered/Pair/LSpp/");
144-
registry.addClone("ReconstructedFiltered/Pair/ULS/", "ReconstructedFiltered/Pair/LSnn/");
145-
146-
HistogramConfigSpec hs_rec{HistType::kTHnSparseF, {axisM, axisPt, axisDCAxy}, 3};
147-
registry.add("Reconstructed/Pair/ULS/hs_rec", "", hs_rec);
148-
registry.add("Reconstructed/Pair/LSpp/hs_rec", "", hs_rec);
149-
registry.add("Reconstructed/Pair/LSnn/hs_rec", "", hs_rec);
150-
registry.get<THnSparse>(HIST("Reconstructed/Pair/ULS/hs_rec"))->Sumw2();
151-
registry.get<THnSparse>(HIST("Reconstructed/Pair/LSpp/hs_rec"))->Sumw2();
152-
registry.get<THnSparse>(HIST("Reconstructed/Pair/LSnn/hs_rec"))->Sumw2();
91+
if (doprocessGen) {
92+
registry.add("Generated/Event/VtxX", "Vertex X", kTH1F, {axisVx});
93+
registry.add("Generated/Event/VtxY", "Vertex Y", kTH1F, {axisVy});
94+
registry.add("Generated/Event/VtxZ", "Vertex Z", kTH1F, {axisVz});
95+
registry.add("Generated/Particle/Pt", "Particle Pt", kTH1F, {axisPt});
96+
registry.add("Generated/Particle/Eta", "Particle Eta", kTH1F, {axisEta});
97+
registry.add("Generated/Particle/Phi", "Particle Phi", kTH1F, {axisPhi});
98+
registry.add("Generated/Particle/Eta_Pt", "Eta vs. Pt", kTH2F, {axisPt, axisEta}, true);
99+
registry.add("Generated/Particle/prodVx", "Particle Prod. Vertex X", kTH1F, {axisProdx});
100+
registry.add("Generated/Particle/prodVy", "Particle Prod. Vertex Y", kTH1F, {axisPrody});
101+
registry.add("Generated/Particle/prodVz", "Particle Prod. Vertex Z", kTH1F, {axisProdz});
102+
registry.add("Generated/Particle/ParticlesPerEvent", "Particles per event", kTH1F, {{100, 0, 100}});
103+
104+
registry.add("Generated/Pair/ULS/Tried", "Pair tries", kTH1F, {{10, -0.5, 9.5}});
105+
registry.add("Generated/Pair/ULS/Mass", "Pair Mass", kTH1F, {axisM});
106+
registry.add("Generated/Pair/ULS/Pt", "Pair Pt", kTH1F, {axisPt});
107+
registry.add("Generated/Pair/ULS/Eta", "Pair Eta", kTH1F, {axisEta});
108+
registry.add("Generated/Pair/ULS/Phi", "Pair Phi", kTH1F, {axisPhi});
109+
registry.add("Generated/Pair/ULS/Mass_Pt", "Pair Mass vs. Pt", kTH2F, {axisM, axisPt}, true);
110+
111+
registry.addClone("Generated/Pair/ULS/", "Generated/Pair/LSpp/");
112+
registry.addClone("Generated/Pair/ULS/", "Generated/Pair/LSnn/");
113+
}
114+
115+
if (doprocessRec) {
116+
registry.add("Reconstructed/Event/VtxX", "Vertex X", kTH1F, {axisVx});
117+
registry.add("Reconstructed/Event/VtxY", "Vertex Y", kTH1F, {axisVy});
118+
registry.add("Reconstructed/Event/VtxZ", "Vertex Z", kTH1F, {axisVz});
119+
120+
registry.add("Reconstructed/Track/Pt", "Track Pt", kTH1F, {axisPt});
121+
registry.add("Reconstructed/Track/Eta", "Track Eta", kTH1F, {axisEta});
122+
registry.add("Reconstructed/Track/Phi", "Track Phi", kTH1F, {axisPhi});
123+
registry.add("Reconstructed/Track/Eta_Pt", "Eta vs. Pt", kTH2F, {axisPt, axisEta}, true);
124+
registry.add("Reconstructed/Track/SigmaOTofvspt", "Track #sigma oTOF", kTH2F, {axisPt, axisSigmaEl});
125+
registry.add("Reconstructed/Track/SigmaITofvspt", "Track #sigma iTOF", kTH2F, {axisPt, axisSigmaEl});
126+
registry.add("Reconstructed/Track/SigmaRichvspt", "Track #sigma RICH", kTH2F, {axisPt, axisSigmaEl});
127+
registry.add("Reconstructed/Track/outerTOFTrackLength", "Track length outer TOF", kTH1F, {axisTrackLengthOuterTOF});
128+
129+
registry.addClone("Reconstructed/Track/", "Reconstructed/TrackPID/");
130+
131+
registry.add("Reconstructed/Pair/ULS/Mass", "Pair Mass", kTH1F, {axisM});
132+
registry.add("Reconstructed/Pair/ULS/Pt", "Pair Pt", kTH1F, {axisPt});
133+
registry.add("Reconstructed/Pair/ULS/Eta", "Pair Eta", kTH1F, {axisEta});
134+
registry.add("Reconstructed/Pair/ULS/Phi", "Pair Phi", kTH1F, {axisPhi});
135+
registry.add("Reconstructed/Pair/ULS/Mass_Pt", "Pair Mass vs. Pt", kTH2F, {axisM, axisPt}, true);
136+
137+
registry.addClone("Reconstructed/Pair/ULS/", "Reconstructed/Pair/LSpp/");
138+
registry.addClone("Reconstructed/Pair/ULS/", "Reconstructed/Pair/LSnn/");
139+
140+
registry.add("ReconstructedFiltered/Pair/ULS/Mass", "Pair Mass", kTH1F, {axisM});
141+
registry.add("ReconstructedFiltered/Pair/ULS/Pt", "Pair Pt", kTH1F, {axisPt});
142+
registry.add("ReconstructedFiltered/Pair/ULS/Eta", "Pair Eta", kTH1F, {axisEta});
143+
registry.add("ReconstructedFiltered/Pair/ULS/Phi", "Pair Phi", kTH1F, {axisPhi});
144+
registry.add("ReconstructedFiltered/Pair/ULS/Mass_Pt", "Pair Mass vs. Pt", kTH2F, {axisM, axisPt}, true);
145+
146+
registry.addClone("ReconstructedFiltered/Pair/ULS/", "ReconstructedFiltered/Pair/LSpp/");
147+
registry.addClone("ReconstructedFiltered/Pair/ULS/", "ReconstructedFiltered/Pair/LSnn/");
148+
149+
HistogramConfigSpec hs_rec{HistType::kTHnSparseF, {axisM, axisPt, axisDCAxy}, 3};
150+
registry.add("Reconstructed/Pair/ULS/hs_rec", "", hs_rec);
151+
registry.add("Reconstructed/Pair/LSpp/hs_rec", "", hs_rec);
152+
registry.add("Reconstructed/Pair/LSnn/hs_rec", "", hs_rec);
153+
registry.get<THnSparse>(HIST("Reconstructed/Pair/ULS/hs_rec"))->Sumw2();
154+
registry.get<THnSparse>(HIST("Reconstructed/Pair/LSpp/hs_rec"))->Sumw2();
155+
registry.get<THnSparse>(HIST("Reconstructed/Pair/LSnn/hs_rec"))->Sumw2();
156+
}
153157
}
154158

155159
template <typename TTrack>

0 commit comments

Comments
 (0)