Skip to content

Commit 7a52269

Browse files
authored
[PWGUD] Improving correlation for gap sides (#11435)
1 parent bd07d65 commit 7a52269

File tree

1 file changed

+113
-50
lines changed

1 file changed

+113
-50
lines changed

PWGUD/Tasks/upcPhotonuclearAnalysisJMG.cxx

Lines changed: 113 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,21 @@ namespace tree
4747
DECLARE_SOA_COLUMN(PtSideA, ptSideA, std::vector<float>);
4848
DECLARE_SOA_COLUMN(RapSideA, rapSideA, std::vector<float>);
4949
DECLARE_SOA_COLUMN(PhiSideA, phiSideA, std::vector<float>);
50+
DECLARE_SOA_COLUMN(TPCSignalSideA, tpcSignalSideA, std::vector<float>);
51+
DECLARE_SOA_COLUMN(TOFSignalSideA, tofSignalSideA, std::vector<float>);
52+
DECLARE_SOA_COLUMN(TPCNSigmaPiSideA, tpcNSigmaPiSideA, std::vector<float>);
53+
DECLARE_SOA_COLUMN(TOFNSigmaPiSideA, tofNSigmaPiSideA, std::vector<float>);
54+
DECLARE_SOA_COLUMN(TPCNSigmaKaSideA, tpcNSigmaKaSideA, std::vector<float>);
55+
DECLARE_SOA_COLUMN(TOFNSigmaKaSideA, tofNSigmaKaSideA, std::vector<float>);
5056
DECLARE_SOA_COLUMN(PtSideC, ptSideC, std::vector<float>);
5157
DECLARE_SOA_COLUMN(RapSideC, rapSideC, std::vector<float>);
5258
DECLARE_SOA_COLUMN(PhiSideC, phiSideC, std::vector<float>);
59+
DECLARE_SOA_COLUMN(TPCSignalSideC, tpcSignalSideC, std::vector<float>);
60+
DECLARE_SOA_COLUMN(TOFSignalSideC, tofSignalSideC, std::vector<float>);
61+
DECLARE_SOA_COLUMN(TPCNSigmaPiSideC, tpcNSigmaPiSideC, std::vector<float>);
62+
DECLARE_SOA_COLUMN(TOFNSigmaPiSideC, tofNSigmaPiSideC, std::vector<float>);
63+
DECLARE_SOA_COLUMN(TPCNSigmaKaSideC, tpcNSigmaKaSideC, std::vector<float>);
64+
DECLARE_SOA_COLUMN(TOFNSigmaKaSideC, tofNSigmaKaSideC, std::vector<float>);
5365
DECLARE_SOA_COLUMN(NchSideA, nchSideA, int);
5466
DECLARE_SOA_COLUMN(MultiplicitySideA, multiplicitySideA, int);
5567
DECLARE_SOA_COLUMN(NchSideC, nchSideC, int);
@@ -59,9 +71,21 @@ DECLARE_SOA_TABLE(TREE, "AOD", "Tree",
5971
tree::PtSideA,
6072
tree::RapSideA,
6173
tree::PhiSideA,
74+
tree::TPCSignalSideA,
75+
tree::TOFSignalSideA,
76+
tree::TPCNSigmaPiSideA,
77+
tree::TOFNSigmaPiSideA,
78+
tree::TPCNSigmaKaSideA,
79+
tree::TOFNSigmaKaSideA,
6280
tree::PtSideC,
6381
tree::RapSideC,
6482
tree::PhiSideC,
83+
tree::TPCSignalSideC,
84+
tree::TOFSignalSideC,
85+
tree::TPCNSigmaPiSideC,
86+
tree::TOFNSigmaPiSideC,
87+
tree::TPCNSigmaKaSideC,
88+
tree::TOFNSigmaKaSideC,
6589
tree::NchSideA,
6690
tree::MultiplicitySideA,
6791
tree::NchSideC,
@@ -76,6 +100,7 @@ struct upcPhotonuclearAnalysisJMG {
76100
HistogramRegistry histos{"histos", {}, OutputObjHandlingPolicy::AnalysisObject};
77101

78102
// Declare configurables on events/collisions
103+
Configurable<int> nEvenstMixed{"nEvenstMixed", 3, {"Events to be Mixed"}};
79104
Configurable<float> myZVtxCut{"myZVtxCut", 10., {"My collision cut"}};
80105
Configurable<float> myTimeZNACut{"myTimeZNACut", 2., {"My collision cut"}};
81106
Configurable<float> myTimeZNCCut{"myTimeZNCCut", 2., {"My collision cut"}};
@@ -127,11 +152,13 @@ struct upcPhotonuclearAnalysisJMG {
127152
Filter collisionZNTimeFilter = nabs(aod::udzdc::timeZNA) < myTimeZNACut && nabs(aod::udzdc::timeZNC) < myTimeZNCCut;
128153

129154
using FullSGUDCollision = soa::Filtered<soa::Join<aod::UDCollisions, aod::UDCollisionsSels, aod::SGCollisions, aod::UDZdcsReduced>>;
130-
using FullUDTracks = soa::Join<aod::UDTracks, aod::UDTracksExtra, aod::UDTracksDCA, aod::UDTracksFlags>;
155+
using FullUDTracks = soa::Join<aod::UDTracks, aod::UDTracksExtra, aod::UDTracksPID, aod::UDTracksDCA, aod::UDTracksFlags>;
131156

132157
// Output definitions
133-
OutputObj<CorrelationContainer> same{"sameEvent"};
134-
OutputObj<CorrelationContainer> mixed{"mixedEvent"};
158+
OutputObj<CorrelationContainer> sameGapSideA{"sameEventGapSideA"};
159+
OutputObj<CorrelationContainer> mixedGapSideA{"mixedEventGapSideA"};
160+
OutputObj<CorrelationContainer> sameGapSideC{"sameEventGapSideC"};
161+
OutputObj<CorrelationContainer> mixedGapSideC{"mixedEventGapSideC"};
135162

136163
UPCPairCuts mPairCuts;
137164
bool doPairCuts = false;
@@ -175,6 +202,7 @@ struct upcPhotonuclearAnalysisJMG {
175202
histos.add("Tracks/SGsideA/hTrackPhi", "#it{#phi} distribution; #it{#phi}; counts", kTH1F, {axisPhi});
176203
histos.add("Tracks/SGsideA/hTrackEta", "#it{#eta} distribution; #it{#eta}; counts", kTH1F, {axisEta});
177204
histos.add("Tracks/SGsideA/hTrackTPCSignnalP", "#it{TPC dE/dx vs p}; #it{p*charge}; #it{TPC dE/dx}", kTH2F, {axisP, axisTPCSignal});
205+
histos.add("Tracks/SGsideA/hTrackTOFSignnalP", "#it{TOF signal vs p}; #it{p*charge}; #it{TOF signal}", kTH2F, {axisP, axisTPCSignal});
178206
histos.add("Tracks/SGsideA/hTrackITSNCls", "#it{N Clusters ITS} distribution; #it{N Clusters ITS}; counts", kTH1F, {axisNCls});
179207
histos.add("Tracks/SGsideA/hTrackITSChi2NCls", "#it{N Clusters Chi2 ITS} distribution; #it{N Clusters Chi2 ITS}; counts", kTH1F, {axisChi2NCls});
180208
histos.add("Tracks/SGsideA/hTrackNClsCrossedRowsOverNClsFindable", "#it{NClsCrossedRows/FindableNCls} distribution in TPC; #it{NClsCrossedRows/FindableNCls}; counts", kTH1F, {axisTPCNClsCrossedRowsMin});
@@ -205,6 +233,7 @@ struct upcPhotonuclearAnalysisJMG {
205233
histos.add("Tracks/SGsideC/hTrackPhi", "#it{#phi} distribution; #it{#phi}; counts", kTH1F, {axisPhi});
206234
histos.add("Tracks/SGsideC/hTrackEta", "#it{#eta} distribution; #it{#eta}; counts", kTH1F, {axisEta});
207235
histos.add("Tracks/SGsideC/hTrackTPCSignnalP", "#it{TPC dE/dx vs p}; #it{p*charge}; #it{TPC dE/dx}", kTH2F, {axisP, axisTPCSignal});
236+
histos.add("Tracks/SGsideC/hTrackTOFSignnalP", "#it{TOF signal vs p}; #it{p*charge}; #it{TOF signal}", kTH2F, {axisP, axisTPCSignal});
208237
histos.add("Tracks/SGsideC/hTrackITSNCls", "#it{N Clusters ITS} distribution; #it{N Clusters ITS}; counts", kTH1F, {axisNCls});
209238
histos.add("Tracks/SGsideC/hTrackITSChi2NCls", "#it{N Clusters Chi2 ITS} distribution; #it{N Clusters Chi2 ITS}; counts", kTH1F, {axisChi2NCls});
210239
histos.add("Tracks/SGsideC/hTrackNClsCrossedRowsOverNClsFindable", "#it{NClsCrossedRows/FindableNCls} distribution in TPC; #it{NClsCrossedRows/FindableNCls}; counts", kTH1F, {axisTPCNClsCrossedRowsMin});
@@ -240,18 +269,22 @@ struct upcPhotonuclearAnalysisJMG {
240269
{axisEtaEfficiency, "#eta"},
241270
{axisPtEfficiency, "p_{T} (GeV/c)"},
242271
{axisVertexEfficiency, "z-vtx (cm)"}};
243-
same.setObject(new CorrelationContainer("sameEvent", "sameEvent", corrAxis, effAxis, {}));
244-
mixed.setObject(new CorrelationContainer("mixedEvent", "mixedEvent", corrAxis, effAxis, {}));
272+
sameGapSideA.setObject(new CorrelationContainer("sameEventGapSideA", "sameEventGapSideA", corrAxis, effAxis, {}));
273+
mixedGapSideA.setObject(new CorrelationContainer("mixedEventGapSideA", "mixedEventGapSideA", corrAxis, effAxis, {}));
274+
sameGapSideC.setObject(new CorrelationContainer("sameEventGapSideC", "sameEventGapSideC", corrAxis, effAxis, {}));
275+
mixedGapSideC.setObject(new CorrelationContainer("mixedEventGapSideC", "mixedEventGapSideC", corrAxis, effAxis, {}));
245276
}
246277

247-
std::vector<double> vtxBinsEdges{VARIABLE_WIDTH, -10.0f, -7.0f, -5.0f, -2.0f, 0.0f, 2.0f, 5.0f, 7.0f, 10.0f};
248-
std::vector<double> multBinsEdges{VARIABLE_WIDTH, 0.0f, 50.0f, 400.0f};
278+
std::vector<double> vtxBinsEdges{VARIABLE_WIDTH, -10.0f, -5.0f, 0.0f, 5.0f, 10.0f};
279+
std::vector<double> gapSideBinsEdges{VARIABLE_WIDTH, -0.5, 0.5, 1.5};
280+
249281
SliceCache cache;
250282

251283
// Binning only on PosZ without multiplicity
252-
using BinningType = ColumnBinningPolicy<aod::collision::PosZ>;
253-
BinningType bindingOnVtx{{vtxBinsEdges}, true};
254-
SameKindPair<FullSGUDCollision, FullUDTracks, BinningType> pairs{bindingOnVtx, 5, -1, &cache};
284+
// using BinningType = ColumnBinningPolicy<aod::collision::PosZ>;
285+
using BinningType = ColumnBinningPolicy<aod::collision::PosZ, aod::udcollision::GapSide>;
286+
BinningType bindingOnVtx{{vtxBinsEdges, {gapSideBinsEdges}}, true};
287+
SameKindPair<FullSGUDCollision, FullUDTracks, BinningType> pairs{bindingOnVtx, nEvenstMixed, -1, &cache};
255288

256289
// ColumnBinningPolicy<aod::collision::PosZ, aod::udcollision::TotalFT0AmplitudeC> bindingOnVtx{{vtxBinsEdges, multBinsEdges}, true};
257290

@@ -345,7 +378,7 @@ struct upcPhotonuclearAnalysisJMG {
345378
template <typename TTracks>
346379
void fillQAUD(const TTracks tracks)
347380
{
348-
for (auto& track : tracks) {
381+
for (const auto& track : tracks) {
349382
histos.fill(HIST("yields"), tracks.size(), track.pt(), eta(track.px(), track.py(), track.pz()));
350383
histos.fill(HIST("etaphi"), tracks.size(), eta(track.px(), track.py(), track.pz()), phi(track.px(), track.py()));
351384
}
@@ -363,12 +396,12 @@ struct upcPhotonuclearAnalysisJMG {
363396
void fillCorrelationsUD(TTarget target, const TTracks tracks1, const TTracks tracks2, float multiplicity, float posZ)
364397
{
365398
multiplicity = tracks1.size();
366-
for (auto& track1 : tracks1) {
399+
for (const auto& track1 : tracks1) {
367400
if (isTrackCut(track1) == false) {
368401
continue;
369402
}
370403
target->getTriggerHist()->Fill(CorrelationContainer::kCFStepReconstructed, track1.pt(), multiplicity, posZ, 1.0);
371-
for (auto& track2 : tracks2) {
404+
for (const auto& track2 : tracks2) {
372405
if (track1 == track2) {
373406
continue;
374407
}
@@ -396,8 +429,9 @@ struct upcPhotonuclearAnalysisJMG {
396429
int sgSide = reconstructedCollision.gapSide();
397430
int nTracksCharged = 0;
398431
float sumPt = 0;
399-
std::vector<float> vTrackPtSideA, vTrackEtaSideA, vTrackPhiSideA;
400-
std::vector<float> vTrackPtSideC, vTrackEtaSideC, vTrackPhiSideC;
432+
std::vector<float> vTrackPtSideA, vTrackEtaSideA, vTrackPhiSideA, vTrackTPCSignalSideA, vTrackTOFSignalSideA, vTrackTPCNSigmaPiSideA, vTrackTOFNSigmaPiSideA, vTrackTPCNSigmaKaSideA, vTrackTOFNSigmaKaSideA;
433+
std::vector<float> vTrackPtSideC, vTrackEtaSideC, vTrackPhiSideC, vTrackTPCSignalSideC, vTrackTOFSignalSideC, vTrackTPCNSigmaPiSideC, vTrackTOFNSigmaPiSideC, vTrackTPCNSigmaKaSideC, vTrackTOFNSigmaKaSideC;
434+
401435
int nTracksChargedSideA(-222), nTracksChargedSideC(-222);
402436
int multiplicitySideA(-222), multiplicitySideC(-222);
403437

@@ -416,7 +450,7 @@ struct upcPhotonuclearAnalysisJMG {
416450
histos.fill(HIST("Events/SGsideA/hZVtx"), reconstructedCollision.posZ());
417451
histos.fill(HIST("Events/SGsideA/hAmplitudFT0A"), reconstructedCollision.totalFT0AmplitudeA());
418452
histos.fill(HIST("Events/SGsideA/hAmplitudFT0C"), reconstructedCollision.totalFT0AmplitudeC());
419-
for (auto& track : reconstructedTracks) {
453+
for (const auto& track : reconstructedTracks) {
420454
if (track.sign() == 1 || track.sign() == -1) {
421455
if (isTrackCut(track) == false) {
422456
continue;
@@ -427,9 +461,16 @@ struct upcPhotonuclearAnalysisJMG {
427461
histos.fill(HIST("Tracks/SGsideA/hTrackPhi"), phi(track.px(), track.py()));
428462
histos.fill(HIST("Tracks/SGsideA/hTrackEta"), eta(track.px(), track.py(), track.pz()));
429463
histos.fill(HIST("Tracks/SGsideA/hTrackTPCSignnalP"), momentum(track.px(), track.py(), track.pz()) * track.sign(), track.tpcSignal());
464+
histos.fill(HIST("Tracks/SGsideA/hTrackTOFSignnalP"), momentum(track.px(), track.py(), track.pz()) * track.sign(), track.tofSignal());
430465
vTrackPtSideA.push_back(track.pt());
431466
vTrackEtaSideA.push_back(eta(track.px(), track.py(), track.pz()));
432467
vTrackPhiSideA.push_back(phi(track.px(), track.py()));
468+
vTrackTPCSignalSideA.push_back(track.tpcSignal());
469+
vTrackTOFSignalSideA.push_back(track.tofSignal());
470+
vTrackTPCNSigmaPiSideA.push_back(track.tpcNSigmaPi());
471+
vTrackTOFNSigmaPiSideA.push_back(track.tofNSigmaPi());
472+
vTrackTPCNSigmaKaSideA.push_back(track.tpcNSigmaKa());
473+
vTrackTOFNSigmaKaSideA.push_back(track.tofNSigmaKa());
433474

434475
histos.fill(HIST("Tracks/SGsideA/hTrackITSNCls"), track.itsNCls());
435476
histos.fill(HIST("Tracks/SGsideA/hTrackITSChi2NCls"), track.itsChi2NCl());
@@ -465,7 +506,7 @@ struct upcPhotonuclearAnalysisJMG {
465506
histos.fill(HIST("Events/SGsideC/hZVtx"), reconstructedCollision.posZ());
466507
histos.fill(HIST("Events/SGsideC/hAmplitudFT0A"), reconstructedCollision.totalFT0AmplitudeA());
467508
histos.fill(HIST("Events/SGsideC/hAmplitudFT0C"), reconstructedCollision.totalFT0AmplitudeC());
468-
for (auto& track : reconstructedTracks) {
509+
for (const auto& track : reconstructedTracks) {
469510
if (track.sign() == 1 || track.sign() == -1) {
470511
if (isTrackCut(track) == false) {
471512
continue;
@@ -476,9 +517,16 @@ struct upcPhotonuclearAnalysisJMG {
476517
histos.fill(HIST("Tracks/SGsideC/hTrackPhi"), phi(track.px(), track.py()));
477518
histos.fill(HIST("Tracks/SGsideC/hTrackEta"), eta(track.px(), track.py(), track.pz()));
478519
histos.fill(HIST("Tracks/SGsideC/hTrackTPCSignnalP"), momentum(track.px(), track.py(), track.pz()) * track.sign(), track.tpcSignal());
520+
histos.fill(HIST("Tracks/SGsideC/hTrackTOFSignnalP"), momentum(track.px(), track.py(), track.pz()) * track.sign(), track.tofSignal());
479521
vTrackPtSideC.push_back(track.pt());
480522
vTrackEtaSideC.push_back(eta(track.px(), track.py(), track.pz()));
481523
vTrackPhiSideC.push_back(phi(track.px(), track.py()));
524+
vTrackTPCSignalSideC.push_back(track.tpcSignal());
525+
vTrackTOFSignalSideC.push_back(track.tofSignal());
526+
vTrackTPCNSigmaPiSideC.push_back(track.tpcNSigmaPi());
527+
vTrackTOFNSigmaPiSideC.push_back(track.tofNSigmaPi());
528+
vTrackTPCNSigmaKaSideC.push_back(track.tpcNSigmaKa());
529+
vTrackTOFNSigmaKaSideC.push_back(track.tofNSigmaKa());
482530

483531
histos.fill(HIST("Tracks/SGsideC/hTrackITSNCls"), track.itsNCls());
484532
histos.fill(HIST("Tracks/SGsideC/hTrackITSChi2NCls"), track.itsChi2NCl());
@@ -504,33 +552,40 @@ struct upcPhotonuclearAnalysisJMG {
504552
return;
505553
break;
506554
}
507-
tree(vTrackPtSideA, vTrackEtaSideA, vTrackPhiSideA, vTrackPtSideC, vTrackEtaSideC, vTrackPhiSideC, nTracksChargedSideA, multiplicitySideA, nTracksChargedSideC, multiplicitySideC);
555+
tree(vTrackPtSideA, vTrackEtaSideA, vTrackPhiSideA, vTrackTPCSignalSideA, vTrackTOFSignalSideA, vTrackTPCNSigmaPiSideA, vTrackTOFNSigmaPiSideA, vTrackTPCNSigmaKaSideA, vTrackTOFNSigmaKaSideA, vTrackPtSideC, vTrackEtaSideC, vTrackPhiSideC, vTrackTPCSignalSideA, vTrackTOFSignalSideA, vTrackTPCNSigmaPiSideA, vTrackTOFNSigmaPiSideA, vTrackTPCNSigmaKaSideA, vTrackTOFNSigmaKaSideA, nTracksChargedSideA, multiplicitySideA, nTracksChargedSideC, multiplicitySideC);
508556
// nTracksChargedSideA = nTracksChargedSideC = multiplicitySideA = multiplicitySideC = 0;
509557
}
510558
PROCESS_SWITCH(upcPhotonuclearAnalysisJMG, processSG, "Process in UD tables", true);
511559

512560
void processSame(FullSGUDCollision::iterator const& reconstructedCollision, FullUDTracks const& reconstructedTracks)
513561
{
514562
int sgSide = reconstructedCollision.gapSide();
563+
float multiplicity = 0;
515564

516-
float multiplicity = reconstructedTracks.size();
517565
switch (sgSide) {
518566
case 0: // gap for side A
519567
if (isCollisionCutSG(reconstructedCollision, 0) == false) {
520568
return;
521569
}
522-
if (fillCollisionUD(same, multiplicity) == false) {
570+
multiplicity = reconstructedTracks.size();
571+
if (fillCollisionUD(sameGapSideA, multiplicity) == false) {
523572
return;
524573
}
525-
LOGF(info, "Filling same events");
574+
// LOGF(debug, "Filling sameGapSideA events");
526575
histos.fill(HIST("eventcount"), -2);
527576
fillQAUD(reconstructedTracks);
528-
fillCorrelationsUD(same, reconstructedTracks, reconstructedTracks, multiplicity, reconstructedCollision.posZ());
577+
fillCorrelationsUD(sameGapSideA, reconstructedTracks, reconstructedTracks, multiplicity, reconstructedCollision.posZ());
529578
break;
530579
case 1: // gap for side C
531-
// if (isCollisionCutSG(reconstructedCollision, 1) == false) {
532-
// return;
533-
// }
580+
if (isCollisionCutSG(reconstructedCollision, 1) == false) {
581+
return;
582+
}
583+
multiplicity = reconstructedTracks.size();
584+
if (fillCollisionUD(sameGapSideC, multiplicity) == false) {
585+
return;
586+
}
587+
// LOGF(debug, "Filling sameGapSideC events");
588+
fillCorrelationsUD(sameGapSideC, reconstructedTracks, reconstructedTracks, multiplicity, reconstructedCollision.posZ());
534589
break;
535590
default:
536591
return;
@@ -542,37 +597,45 @@ struct upcPhotonuclearAnalysisJMG {
542597

543598
void processMixed(FullSGUDCollision::iterator const& reconstructedCollision)
544599
{
545-
int sgSide = reconstructedCollision.gapSide();
600+
(void)reconstructedCollision;
601+
// int sgSide = reconstructedCollision.gapSide();
546602
// int sgSide = 0;
547603

548-
for (auto& [collision1, tracks1, collision2, tracks2] : pairs) {
604+
for (const auto& [collision1, tracks1, collision2, tracks2] : pairs) {
549605
if (collision1.size() == 0 || collision2.size() == 0) {
550-
LOGF(info, "One or both collisions are empty.");
606+
// LOGF(debug, "One or both collisions are empty.");
551607
continue;
552608
}
553-
float multiplicity = tracks1.size();
554-
LOGF(info, "Filling mixed events");
555-
switch (sgSide) {
556-
case 0: // gap for side A
557-
if (isCollisionCutSG(reconstructedCollision, 0) == false) {
558-
return;
559-
}
560-
if (fillCollisionUD(mixed, multiplicity) == false) {
561-
return;
562-
}
563-
// LOGF(info, ">>> Bin of collision: ", bindingOnVtx.getBin({collision1.posZ()}));
564-
// histos.fill(HIST("eventcount"), bindingOnVtx.getBin({collision1.posZ(), collision1.totalFT0AmplitudeC()}));
565-
histos.fill(HIST("eventcount"), bindingOnVtx.getBin({collision1.posZ()}));
566-
fillCorrelationsUD(mixed, tracks1, tracks2, multiplicity, collision1.posZ());
567-
break;
568-
case 1: // gap for side C
569-
// if (isCollisionCutSG(reconstructedCollision, 1) == false) {
570-
// return;
571-
// }
572-
break;
573-
default:
609+
610+
float multiplicity = 0;
611+
if (collision1.gapSide() == 0 && collision2.gapSide() == 0) { // gap on side A
612+
if (isCollisionCutSG(collision1, 0) == false && isCollisionCutSG(collision2, 0) == false) {
613+
continue;
614+
}
615+
// LOGF(debug, "In the pairs loop, gap side A");
616+
multiplicity = tracks1.size();
617+
if (fillCollisionUD(mixedGapSideA, multiplicity) == false) {
574618
return;
575-
break;
619+
}
620+
// histos.fill(HIST("eventcount"), bindingOnVtx.getBin({collision1.posZ()}));
621+
histos.fill(HIST("eventcount"), bindingOnVtx.getBin({collision1.posZ(), collision1.gapSide()}));
622+
fillCorrelationsUD(mixedGapSideA, tracks1, tracks2, multiplicity, collision1.posZ());
623+
// LOGF(debug, "Filling mixedGapSideA events, Gap for side A");
624+
}
625+
626+
if (collision1.gapSide() == 1 && collision2.gapSide() == 1) { // gap on side C
627+
if (isCollisionCutSG(collision1, 1) == false && isCollisionCutSG(collision2, 1) == false) {
628+
continue;
629+
}
630+
// LOGF(debug, "In the pairs loop, gap side C");
631+
multiplicity = tracks1.size();
632+
if (fillCollisionUD(mixedGapSideC, multiplicity) == false) {
633+
return;
634+
}
635+
fillCorrelationsUD(mixedGapSideC, tracks1, tracks2, multiplicity, collision1.posZ());
636+
// LOGF(debug, "Filling mixedGapSideC events, Gap for side C");
637+
} else {
638+
continue;
576639
}
577640
}
578641
}

0 commit comments

Comments
 (0)