Skip to content

Commit 78f74fb

Browse files
lhusovaLucia Anna Tarasovicova
andauthored
[ALICE3] ALICE3 - improvement of configurables in strangeness task (#14464)
Co-authored-by: Lucia Anna Tarasovicova <lucia.anna.husova@cern.ch>
1 parent 50f0282 commit 78f74fb

File tree

1 file changed

+25
-20
lines changed

1 file changed

+25
-20
lines changed

ALICE3/Tasks/alice3-strangeness.cxx

Lines changed: 25 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ struct alice3strangeness {
6767
HistogramRegistry histos{"histos", {}, OutputObjHandlingPolicy::AnalysisObject};
6868

6969
Configurable<int> idGeometry{"idGeometry", 0, "geometry ID used for propagation"};
70-
struct ConfigurableGroup {
70+
struct : ConfigurableGroup {
7171
ConfigurableAxis axisPt{"axisPt", {VARIABLE_WIDTH, 0.0f, 0.1f, 0.2f, 0.3f, 0.4f, 0.5f, 0.6f, 0.7f, 0.8f, 0.9f, 1.0f, 1.1f, 1.2f, 1.3f, 1.4f, 1.5f, 1.6f, 1.7f, 1.8f, 1.9f, 2.0f, 2.2f, 2.4f, 2.6f, 2.8f, 3.0f, 3.2f, 3.4f, 3.6f, 3.8f, 4.0f, 4.4f, 4.8f, 5.2f, 5.6f, 6.0f, 6.5f, 7.0f, 7.5f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f, 13.0f, 14.0f, 15.0f, 17.0f, 19.0f, 21.0f, 23.0f, 25.0f, 30.0f, 35.0f, 40.0f, 50.0f}, "pt axis for QA histograms"};
7272
ConfigurableAxis axisK0Mass{"axisK0Mass", {200, 0.4f, 0.6f}, ""};
7373
ConfigurableAxis axisLambdaMass{"axisLambdaMass", {200, 1.08f, 1.2f}, ""};
@@ -77,10 +77,11 @@ struct alice3strangeness {
7777
ConfigurableAxis axisDCAV0Daughters{"axisDCAV0Daughters", {20, 0, 5}, "DCA V0 daughters"};
7878
ConfigurableAxis axisPointingAngle{"axisPointingAngle", {40, 0.0f, 0.4f}, "pointing angle "};
7979
ConfigurableAxis axisProperLifeTime{"axisProperLifeTime", {100, 0.0f, 100.0f}, "proper lifetime (cm)"};
80-
80+
ConfigurableAxis axisEta{"axisEta", {100, -5.0f, 5.0f}, "eta"};
8181
} histAxes;
8282

8383
struct : ConfigurableGroup {
84+
std::string prefix = "selectionFlags";
8485
Configurable<bool> applyRapiditySelection{"applyRapiditySelection", true, "apply rapidity selection"};
8586
Configurable<bool> applyDCAdaughterSelection{"applyDCADaughterSelection", true, "apply DCA daughter selection"};
8687
Configurable<bool> applyCosOfPAngleSelection{"applyCosOfPAngleSelection", true, "apply cosine of pointing angle selection"};
@@ -94,6 +95,7 @@ struct alice3strangeness {
9495
} selectionFlags;
9596

9697
struct : ConfigurableGroup {
98+
std::string prefix = "selectionValues";
9799
Configurable<float> yK0Selection{"yK0Selection", 0.5f, "rapidity selection for K0"};
98100
Configurable<float> yLambdaSelection{"yLambdaSelection", 0.5f, "rapidity selection for Lambda"};
99101
Configurable<float> dcaDaughterSelection{"dcaDaughterSelection", 1.0f, "DCA daughter selection"};
@@ -122,8 +124,9 @@ struct alice3strangeness {
122124
histos.add("K0/hDCAPosDaughter", "", kTH1D, {{200, -5, 5}});
123125
histos.add("hPVz", "hPVz", kTH1F, {histAxes.axisVertexZ});
124126
histos.add("hV0CandidateCounter", "hV0CandidateCounter", kTH1F, {{11, 0, 11}});
125-
histos.add("reconstructedCandidates/K0/hMass", "hMass", kTH2D, {histAxes.axisK0Mass, histAxes.axisPt});
126-
histos.add("reconstructedCandidates/Lambda/hMass", "hMass", kTH2D, {histAxes.axisLambdaMass, histAxes.axisPt});
127+
histos.add("reconstructedCandidates/hEtaDaughters", "hEtaDaughters", kTH1F, {histAxes.axisEta});
128+
histos.add("reconstructedCandidates/K0/hMass", "hMass", kTH3D, {histAxes.axisK0Mass, histAxes.axisPt, histAxes.axisEta});
129+
histos.add("reconstructedCandidates/Lambda/hMass", "hMass", kTH3D, {histAxes.axisLambdaMass, histAxes.axisPt, histAxes.axisEta});
127130
histos.add("reconstructedCandidates/hArmeterosBeforeAllSelections", "hArmeterosBeforeAllSelections", kTH2D, {{100, -1.0f, 1.0f}, {100, 0.0f, 0.25f}});
128131
histos.add("reconstructedCandidates/hArmeterosAfterAllSelections", "hArmeterosAfterAllSelections", kTH2D, {{100, -1.0f, 1.0f}, {100, 0.0f, 0.25f}});
129132
if (selectionFlags.doQAforSelectionVariables) {
@@ -215,28 +218,28 @@ struct alice3strangeness {
215218
bool isAntiLambda = (v0.mAntiLambda() - o2::constants::physics::MassLambda0) < 0.2;
216219

217220
histos.fill(HIST("reconstructedCandidates/hArmeterosBeforeAllSelections"), v0.alpha(), v0.qtarm());
218-
histos.fill(HIST("hV0CandidateCounter"), 1);
221+
histos.fill(HIST("hV0CandidateCounter"), 0.5);
219222
if (selectionFlags.applyRapiditySelection) {
220-
if (isK0 && std::abs(v0.yK0Short()) < selectionValues.yK0Selection)
223+
if (isK0 && std::abs(v0.yK0Short()) > selectionValues.yK0Selection)
221224
continue;
222225
if ((isLambda || isAntiLambda) && std::abs(v0.yLambda()) < selectionValues.yLambdaSelection)
223226
continue;
224227
}
225-
histos.fill(HIST("hV0CandidateCounter"), 2);
228+
histos.fill(HIST("hV0CandidateCounter"), 1.5);
226229
if (selectionFlags.applyDCAdaughterSelection) {
227230
if (std::abs(v0.dcaV0Daughters()) > selectionValues.dcaDaughterSelection)
228231
continue;
229232
} else {
230233
selectionCheck = v0.dcaV0Daughters();
231234
}
232-
histos.fill(HIST("hV0CandidateCounter"), 3);
235+
histos.fill(HIST("hV0CandidateCounter"), 2.5);
233236
if (selectionFlags.applyCosOfPAngleSelection) {
234237
if (v0.cosPA() < selectionValues.cosPAngleSelection)
235238
continue;
236239
} else {
237240
selectionCheck = std::acos(v0.cosPA());
238241
}
239-
histos.fill(HIST("hV0CandidateCounter"), 4);
242+
histos.fill(HIST("hV0CandidateCounter"), 3.5);
240243
if (selectionFlags.applyDCAdaughtersToPVSelection) {
241244
if ((std::abs(v0.dcaNegToPV()) < selectionValues.dcaDaughtersToPVSelection) ||
242245
(std::abs(v0.dcaPosToPV()) < selectionValues.dcaDaughtersToPVSelection))
@@ -245,21 +248,21 @@ struct alice3strangeness {
245248
selectionCheckPos = std::abs(v0.dcaPosToPV());
246249
selectionCheck = std::abs(v0.dcaNegToPV());
247250
}
248-
histos.fill(HIST("hV0CandidateCounter"), 5);
251+
histos.fill(HIST("hV0CandidateCounter"), 4.5);
249252
if (selectionFlags.applyV0RadiusSelection) {
250253
if (v0.v0radius() < selectionValues.v0RadiusSelection)
251254
continue;
252255
} else {
253256
selectionCheck = v0.v0radius();
254257
}
255-
histos.fill(HIST("hV0CandidateCounter"), 6);
258+
histos.fill(HIST("hV0CandidateCounter"), 5.5);
256259
if (isK0) {
257260
if (selectionFlags.applyArmenterosSelection) {
258261
if (v0.qtarm() < selectionValues.armenterosSelection * std::abs(v0.alpha()))
259262
continue;
260263
}
261264
}
262-
histos.fill(HIST("hV0CandidateCounter"), 7);
265+
histos.fill(HIST("hV0CandidateCounter"), 6.5);
263266
if (isK0 && selectionFlags.applyCompetingMassRejection) {
264267
if (std::abs(v0.mLambda() - o2::constants::physics::MassLambda0) < selectionValues.competingMassRejectionK0)
265268
continue;
@@ -270,7 +273,7 @@ struct alice3strangeness {
270273
if (std::abs(v0.mK0Short() - o2::constants::physics::MassK0Short) < selectionValues.competingMassRejectionLambda)
271274
continue;
272275
}
273-
histos.fill(HIST("hV0CandidateCounter"), 8);
276+
histos.fill(HIST("hV0CandidateCounter"), 7.5);
274277
if (selectionFlags.applyLifetimeSelection) {
275278
if (isK0 && v0.distovertotmom(collision.posX(), collision.posY(), collision.posZ()) * o2::constants::physics::MassK0Short < selectionValues.lifetimecutak0)
276279
continue;
@@ -282,14 +285,16 @@ struct alice3strangeness {
282285
else
283286
selectionCheck = v0.distovertotmom(collision.posX(), collision.posY(), collision.posZ()) * o2::constants::physics::MassLambda0;
284287
}
285-
histos.fill(HIST("hV0CandidateCounter"), 9);
288+
histos.fill(HIST("hV0CandidateCounter"), 8.5);
289+
auto posTrack = v0.template posTrack_as<alice3tracks>();
290+
auto negTrack = v0.template negTrack_as<alice3tracks>();
286291
if (selectionFlags.applyEtaDaughterSelection) {
287-
auto posTrack = v0.template posTrack_as<alice3tracks>();
288-
auto negTrack = v0.template negTrack_as<alice3tracks>();
289292
if (std::abs(posTrack.eta()) > selectionValues.etaDaughterSelection || std::abs(negTrack.eta()) > selectionValues.etaDaughterSelection)
290293
continue;
291294
}
292-
histos.fill(HIST("hV0CandidateCounter"), 10);
295+
histos.fill(HIST("reconstructedCandidates/hEtaDaughters"), posTrack.eta());
296+
histos.fill(HIST("reconstructedCandidates/hEtaDaughters"), negTrack.eta());
297+
histos.fill(HIST("hV0CandidateCounter"), 9.5);
293298

294299
histos.fill(HIST("reconstructedCandidates/hArmeterosAfterAllSelections"), v0.alpha(), v0.qtarm());
295300
if (selectionFlags.doQAforSelectionVariables) {
@@ -308,11 +313,11 @@ struct alice3strangeness {
308313
});
309314
}
310315
if (isK0)
311-
histos.fill(HIST("reconstructedCandidates/K0/hMass"), v0.mK0Short(), v0.pt());
316+
histos.fill(HIST("reconstructedCandidates/K0/hMass"), v0.mK0Short(), v0.pt(), v0.eta());
312317
if (isLambda)
313-
histos.fill(HIST("reconstructedCandidates/Lambda/hMass"), v0.mLambda(), v0.pt());
318+
histos.fill(HIST("reconstructedCandidates/Lambda/hMass"), v0.mLambda(), v0.pt(), v0.eta());
314319
if (isAntiLambda)
315-
histos.fill(HIST("reconstructedCandidates/AntiLambda/hMass"), v0.mAntiLambda(), v0.pt());
320+
histos.fill(HIST("reconstructedCandidates/AntiLambda/hMass"), v0.mAntiLambda(), v0.pt(), v0.eta());
316321
}
317322
}
318323
PROCESS_SWITCH(alice3strangeness, processAllFindableCandidates, "", false);

0 commit comments

Comments
 (0)