Skip to content

Commit ecaf2db

Browse files
committed
add mixing procedure
1 parent f573336 commit ecaf2db

1 file changed

Lines changed: 45 additions & 0 deletions

File tree

PWGLF/Tasks/Strangeness/lambdaTwoPartPolarization.cxx

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -176,10 +176,15 @@ struct LfLambdaTwoPartPolarization {
176176
histos.add("Ana/SignalCos2", "", {HistType::kTHnSparseF, {ptAxis, ptAxis, detaAxis, dphiAxis, centAxis, cosSigAxis}});
177177
histos.add("Ana/Acceptance", "", {HistType::kTHnSparseF, {ptAxis, centAxis, rapAxis, cosAccAxis}});
178178

179+
180+
histos.add("AnaHL/LambdaSignal", "", {HistType::kTHnSparseF, {ptAxis, ptAxis, detaAxis, dphiAxis, centAxis, massAxis, cosSigAxis}});
181+
histos.add("AnaHL/ALambdaSignal", "", {HistType::kTHnSparseF, {ptAxis, ptAxis, detaAxis, dphiAxis, centAxis, massAxis, cosSigAxis}});
182+
179183
histos.add("AnaHL/LambdaSignalSin2", "", {HistType::kTHnSparseF, {ptAxis, ptAxis, detaAxis, dphiAxis, centAxis, massAxis, cosSigAxis}});
180184
histos.add("AnaHL/LambdaSignalCos2", "", {HistType::kTHnSparseF, {ptAxis, ptAxis, detaAxis, dphiAxis, centAxis, massAxis, cosSigAxis}});
181185
histos.add("AnaHL/ALambdaSignalSin2", "", {HistType::kTHnSparseF, {ptAxis, ptAxis, detaAxis, dphiAxis, centAxis, massAxis, cosSigAxis}});
182186
histos.add("AnaHL/ALambdaSignalCos2", "", {HistType::kTHnSparseF, {ptAxis, ptAxis, detaAxis, dphiAxis, centAxis, massAxis, cosSigAxis}});
187+
183188
histos.add("AnaHL/Ref", "", {HistType::kTHnSparseF, {ptAxis, ptAxis, detaAxis, dphiAxis, centAxis}});
184189

185190
fMultPVCutLow = new TF1("fMultPVCutLow", "[0]+[1]*x+[2]*x*x+[3]*x*x*x - 2.5*([4]+[5]*x+[6]*x*x+[7]*x*x*x+[8]*x*x*x*x)", 0, 100);
@@ -403,10 +408,12 @@ struct LfLambdaTwoPartPolarization {
403408
weight *= cfgAccCor ? 1.0 / AccMap->GetBinContent(AccMap->GetXaxis()->FindBin(v01.pt()), AccMap->GetYaxis()->FindBin(v01.yLambda())) : 1.;
404409

405410
if (LambdaTag) {
411+
histos.fill(HIST("AnaHL/LambdaSignal"), trk.pt(), v01.pt(), v01.yLambda() - trk.eta(), dphi, centrality, v01.mLambda(), costhetastar1 * weight);
406412
histos.fill(HIST("AnaHL/LambdaSignalSin2"), trk.pt(), v01.pt(), v01.yLambda() - trk.eta(), dphi, centrality, v01.mLambda(), costhetastar1 * std::sin(2.0 * dphi) * weight);
407413
histos.fill(HIST("AnaHL/LambdaSignalCos2"), trk.pt(), v01.pt(), v01.yLambda() - trk.eta(), dphi, centrality, v01.mLambda(), costhetastar1 * std::cos(2.0 * dphi) * weight);
408414
}
409415
if (aLambdaTag) {
416+
histos.fill(HIST("AnaHL/ALambdaSignal"), trk.pt(), v01.pt(), v01.yLambda() - trk.eta(), dphi, centrality, v01.mAntiLambda(), costhetastar1 * weight);
410417
histos.fill(HIST("AnaHL/ALambdaSignalSin2"), trk.pt(), v01.pt(), v01.yLambda() - trk.eta(), dphi, centrality, v01.mAntiLambda(), costhetastar1 * std::sin(2.0 * dphi) * weight);
411418
histos.fill(HIST("AnaHL/ALambdaSignalCos2"), trk.pt(), v01.pt(), v01.yLambda() - trk.eta(), dphi, centrality, v01.mAntiLambda(), costhetastar1 * std::cos(2.0 * dphi) * weight);
412419
}
@@ -654,6 +661,44 @@ struct LfLambdaTwoPartPolarization {
654661
}
655662
}
656663
PROCESS_SWITCH(LfLambdaTwoPartPolarization, processDataMixedT0M, "Process event for mixed data in pp", false);
664+
665+
Preslice<TrackCandidates> tracksPerCollisionPri = aod::track::collisionId;
666+
667+
void processDataMixedHadronT0M(EventCandidates const& collisions,
668+
TrackCandidates const& tracks, aod::V0Datas const& V0s, aod::BCsWithTimestamps const&)
669+
{
670+
for (const auto& [c1, c2] : selfCombinations(colBinningT0M, cfgNoMixedEvents, -1, collisions, collisions)) {
671+
672+
if (c1.index() == c2.index()) {
673+
continue;
674+
}
675+
676+
centrality = c1.centFT0M();
677+
if (cfgAccCor) {
678+
auto bc = c1.bc_as<aod::BCsWithTimestamps>();
679+
AccMap = ccdb->getForTimeStamp<TProfile2D>(cfgAccCorPath.value, bc.timestamp());
680+
}
681+
if (!eventSelected(c1)) {
682+
continue;
683+
}
684+
if (!eventSelected(c2)) {
685+
continue;
686+
}
687+
688+
auto v01tracks = V0s.sliceBy(tracksPerCollisionV0, c1.globalIndex());
689+
auto v02tracks = V0s.sliceBy(tracksPerCollisionV0, c2.globalIndex());
690+
691+
auto pri1tracks = tracks.sliceBy(tracksPerCollisionPri, c1.globalIndex());
692+
auto pri2tracks = tracks.sliceBy(tracksPerCollisionPri, c2.globalIndex());
693+
694+
FillHistogramsRef(pri1tracks, pri2tracks);
695+
696+
FillHistogramsLH(c1, v01tracks, pri2tracks);
697+
FillHistogramsLH(c2, v02tracks, pri1tracks);
698+
}
699+
}
700+
PROCESS_SWITCH(LfLambdaTwoPartPolarization, processDataMixedHadronT0M, "Process event for mixed data in pp with hadrons", false);
701+
657702
};
658703

659704
WorkflowSpec defineDataProcessing(ConfigContext const& cfgc)

0 commit comments

Comments
 (0)