Skip to content

Commit 5f496b6

Browse files
[PWGUD] Adding selection criteria on FT0 amplitude (#15484)
Co-authored-by: rolavick <roman.lavicka@cern.ch>
1 parent 08b6eb7 commit 5f496b6

File tree

1 file changed

+24
-15
lines changed

1 file changed

+24
-15
lines changed

PWGUD/Tasks/upcPhotonuclearAnalysisJMG.cxx

Lines changed: 24 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -161,16 +161,18 @@ struct UpcPhotonuclearAnalysisJMG {
161161
Configurable<float> cutGapATimeZNA{"cutGapATimeZNA", 2., {"My collision cut. Gap Side A"}};
162162
Configurable<float> cutGapATimeZNC{"cutGapATimeZNC", 2., {"My collision cut. Gap Side A"}};
163163
Configurable<float> cutGapAMyEnergyZNA{"cutGapAMyEnergyZNA", 0., {"My collision cut. Gap Side A"}};
164-
// Configurable<float> cutAGapMyAmplitudeFT0AMax{"cutAGapMyAmplitudeFT0AMax", 200., {"My collision cut. A Gap"}};
164+
Configurable<bool> useFT0AGapA{"useFT0AGapA", false, {"My collision cut. Gap Side A"}};
165+
Configurable<float> cutGapAMyAmplitudeFT0A{"cutGapAMyAmplitudeFT0A", 100., {"My collision cut. A Gap"}};
165166
Configurable<float> cutGapAMyEnergyZNC{"cutGapAMyEnergyZNC", 1., {"My collision cut. Gap Side A"}};
166-
Configurable<float> useFV0{"useFV0", false, {"My collision cut. Gap Side A"}};
167+
Configurable<bool> useFV0{"useFV0", false, {"My collision cut. Gap Side A"}};
167168
Configurable<float> cutGapAFV0Amplitude{"cutGapAFV0Amplitude", 50, {"My collision cut. Gap Side A"}};
168169
// Configurable<float> cutAGapMyAmplitudeFT0CMin{"cutAGapMyAmplitudeFT0CMin", 0., {"My collision cut. A Gap"}};
169170
// Declare configurables on side C gap
170171
Configurable<float> cutGapCTimeZNA{"cutGapCTimeZNA", 2., {"My collision cut. Gap Side C"}};
171172
Configurable<float> cutGapCTimeZNC{"cutGapCTimeZNC", 2., {"My collision cut. Gap Side C"}};
172173
Configurable<float> cutGapCMyEnergyZNA{"cutGapCMyEnergyZNA", 1., {"My collision cut. Gap Side C"}};
173-
// Configurable<float> cutCGapMyAmplitudeFT0AMin{"cutCGapMyAmplitudeFT0AMin", 0., {"My collision cut. A Gap"}};
174+
Configurable<bool> useFT0CGapC{"useFT0CGapC", false, {"My collision cut. Gap Side A"}};
175+
Configurable<float> cutGapCMyAmplitudeFT0C{"cutGapCMyAmplitudeFT0C", 50., {"My collision cut. A Gap"}};
174176
Configurable<float> cutGapCMyEnergyZNC{"cutGapCMyEnergyZNC", 0., {"My collision cut. Gap Side C"}};
175177
// Configurable<float> cutCGapMyAmplitudeFT0CMax{"cutCGapMyAmplitudeFT0CMax", 200., {"My collision cut. A Gap"}};
176178
// Declare configurables on tracks
@@ -230,7 +232,7 @@ struct UpcPhotonuclearAnalysisJMG {
230232
void init(InitContext const&)
231233
{
232234
const AxisSpec axisCollision{4, -0.5, 3.5};
233-
const AxisSpec axisCollisionFlow{12, -0.5, 11.5};
235+
const AxisSpec axisCollisionFlow{13, -0.5, 12.5};
234236
const AxisSpec axisZvtx{20, -10., 10.};
235237
const AxisSpec axisPt{402, -0.05, 20.05};
236238
const AxisSpec axisP{402, -10.05, 10.05};
@@ -411,7 +413,7 @@ struct UpcPhotonuclearAnalysisJMG {
411413
if (!(std::abs(collision.timeZNA()) > cutGapATimeZNA && std::abs(collision.timeZNC()) < cutGapATimeZNC)) {
412414
return false;
413415
}
414-
if (useEnergyZN && ((collision.energyCommonZNA() < cutGapAMyEnergyZNA) && (collision.energyCommonZNC() >= cutGapAMyEnergyZNC))) {
416+
if (useEnergyZN && !((collision.energyCommonZNA() < cutGapAMyEnergyZNA) && (collision.energyCommonZNC() >= cutGapAMyEnergyZNC))) {
415417
return false;
416418
} // 0n - A side && Xn - C Side
417419
if (useGapSideVariable && collision.gapSide() != uint8_t(0)) {
@@ -420,23 +422,23 @@ struct UpcPhotonuclearAnalysisJMG {
420422
if (useFV0 && collision.totalFV0AmplitudeA() > cutGapAFV0Amplitude) {
421423
return false;
422424
}
423-
// if ((collision.totalFT0AmplitudeA() < cutAGapMyAmplitudeFT0AMax && collision.totalFT0AmplitudeC() >= cutAGapMyAmplitudeFT0CMin) == false) {
424-
// return false;
425-
// }
425+
if (useFT0AGapA && (collision.totalFT0AmplitudeA() > cutGapAMyAmplitudeFT0A)) {
426+
return false;
427+
}
426428
break;
427429
case 1: // Gap in C side
428430
if (!(std::abs(collision.timeZNA()) < cutGapCTimeZNA && std::abs(collision.timeZNC()) > cutGapCTimeZNC)) {
429431
return false;
430432
}
431-
if (useEnergyZN && ((collision.energyCommonZNA() >= cutGapCMyEnergyZNA) && (collision.energyCommonZNC() < cutGapCMyEnergyZNC))) {
433+
if (useEnergyZN && !((collision.energyCommonZNA() >= cutGapCMyEnergyZNA) && (collision.energyCommonZNC() < cutGapCMyEnergyZNC))) {
432434
return false;
433435
} // Xn - A side && 0n - C Side
434436
if (useGapSideVariable && collision.gapSide() != uint8_t(1)) {
435437
return false;
436438
}
437-
// if ((collision.totalFT0AmplitudeA() >= cutCGapMyAmplitudeFT0AMin && collision.totalFT0AmplitudeC() < cutCGapMyAmplitudeFT0CMax) == false) {
438-
// return false;
439-
// }
439+
if (useFT0CGapC && (collision.totalFT0AmplitudeC() > cutGapCMyAmplitudeFT0C)) {
440+
return false;
441+
}
440442
break;
441443
default:
442444
return false;
@@ -875,7 +877,8 @@ struct UpcPhotonuclearAnalysisJMG {
875877
hEventFlow->GetXaxis()->SetBinLabel(9, "Time ZN");
876878
hEventFlow->GetXaxis()->SetBinLabel(10, "Energy ZN");
877879
hEventFlow->GetXaxis()->SetBinLabel(11, "FV0-A Amplitude");
878-
hEventFlow->GetXaxis()->SetBinLabel(12, "GapSide Variable");
880+
hEventFlow->GetXaxis()->SetBinLabel(12, "FT0 Amplitude");
881+
hEventFlow->GetXaxis()->SetBinLabel(13, "GapSide Variable");
879882

880883
histos.fill(HIST("Events/hCollisionsFlow"), 0);
881884
if (std::abs(reconstructedCollision.posZ()) > myZVtxCut) {
@@ -915,20 +918,26 @@ struct UpcPhotonuclearAnalysisJMG {
915918

916919
bool isGapAMyEnergyZN = useEnergyZN && ((reconstructedCollision.energyCommonZNA() < cutGapAMyEnergyZNA) && (reconstructedCollision.energyCommonZNC() >= cutGapAMyEnergyZNC));
917920
bool isGapCMyEnergyZN = useEnergyZN && ((reconstructedCollision.energyCommonZNA() >= cutGapCMyEnergyZNA) && (reconstructedCollision.energyCommonZNC() < cutGapCMyEnergyZNC));
918-
if (isGapAMyEnergyZN || isGapCMyEnergyZN) {
921+
if (useEnergyZN && !(isGapAMyEnergyZN || isGapCMyEnergyZN)) {
919922
return;
920923
}
921924
histos.fill(HIST("Events/hCollisionsFlow"), 9);
922925
if (isGapATimeZN && useFV0 && reconstructedCollision.totalFV0AmplitudeA() > cutGapAFV0Amplitude) {
923926
return;
924927
}
925928
histos.fill(HIST("Events/hCollisionsFlow"), 10);
929+
bool cutFT0AGapA = useFT0AGapA && reconstructedCollision.totalFT0AmplitudeA() > cutGapAMyAmplitudeFT0A;
930+
bool cutFT0CGapC = useFT0CGapC && reconstructedCollision.totalFT0AmplitudeC() > cutGapCMyAmplitudeFT0C;
931+
if (cutFT0AGapA || cutFT0CGapC) {
932+
return;
933+
}
934+
histos.fill(HIST("Events/hCollisionsFlow"), 11);
926935
bool cutGapSideAVariable = useGapSideVariable && reconstructedCollision.gapSide() != uint8_t(0);
927936
bool cutGapSideCVariable = useGapSideVariable && reconstructedCollision.gapSide() != uint8_t(1);
928937
if (cutGapSideAVariable || cutGapSideCVariable) {
929938
return;
930939
}
931-
histos.fill(HIST("Events/hCollisionsFlow"), 11);
940+
histos.fill(HIST("Events/hCollisionsFlow"), 12);
932941

933942
if (isCollisionCutSG(reconstructedCollision) == false) {
934943
return;

0 commit comments

Comments
 (0)