Skip to content

Commit 7ee25bf

Browse files
authored
[PWGLF] Lambda local polarization induced by jet in pp collision 13.6 TeV (#10744)
1 parent d647d63 commit 7ee25bf

File tree

2 files changed

+81
-56
lines changed

2 files changed

+81
-56
lines changed

PWGLF/TableProducer/Strangeness/lambdaJetpolarizationbuilder.cxx

Lines changed: 72 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ struct myAnalysis {
8484
Configurable<float> minNCrossedRowsTPC{"minNCrossedRowsTPC", 80.0f, "min number of TPC crossed rows"};
8585
Configurable<float> maxChi2TPC{"maxChi2TPC", 4.0f, "max chi2 per cluster TPC"};
8686
Configurable<float> maxChi2ITS{"maxChi2ITS", 36.0f, "max chi2 per cluster ITS"};
87+
Configurable<float> minTpcNcrossedRowsOverFindable{"minTpcNcrossedRowsOverFindable", 0.8, "crossed rows/findable"};
8788
Configurable<float> etaMin{"etaMin", -0.8f, "eta min track"};
8889
Configurable<float> etaMax{"etaMax", +0.8f, "eta max track"};
8990
Configurable<float> minimumV0Radius{"minimumV0Radius", 0.2f, "Minimum V0 Radius"};
@@ -111,6 +112,7 @@ struct myAnalysis {
111112
Configurable<float> dcav0dau{"dcav0dau", 1.0, "DCA V0 Daughters"};
112113
Configurable<bool> doArmenterosCut{"doArmenterosCut", 1, "do Armenteros Cut"};
113114
Configurable<float> paramArmenterosCut{"paramArmenterosCut", 0.2, "parameter Armenteros Cut"};
115+
Configurable<bool> doDrawPicture{"doDrawPicture", 0, "do Draw Picture"};
114116
// CONFIG DONE
115117
///////////////////////////////////////// //INIT////////////////////////////////////////////////////////////////////
116118
// int eventSelection = -1;
@@ -196,8 +198,6 @@ struct myAnalysis {
196198
JEhistos.add("jetpx", "jetpx", kTH1F, {axisPx});
197199
JEhistos.add("jetpy", "jetpy", kTH1F, {axisPy});
198200
JEhistos.add("jetpz", "jetpz", kTH1F, {axisPz});
199-
JEhistos.add("hV0Lambda", "V0Lambda",
200-
{HistType::kTHnSparseF, {eventAxis, axisPx, axisPy, axisPz, massAxis, axisPx, axisPy, axisPz}});
201201
JEhistos.add("EventIndexselection", "EventIndexselection", {HistType::kTH1F, {{1000000, 0.5f, 1000000.5f}}});
202202
}
203203
JEhistos.add("hKaonplusCounts", "hKaonplusCounts", {HistType::kTH1F, {{1, -0.5, 0.5f}}});
@@ -310,8 +310,12 @@ struct myAnalysis {
310310
return false;
311311
if (track.tpcNClsCrossedRows() < minNCrossedRowsTPC)
312312
return false;
313+
if ((static_cast<float>(track.tpcNClsCrossedRows()) / static_cast<float>(track.tpcNClsFindable())) < minTpcNcrossedRowsOverFindable)
314+
return false;
313315
if (track.tpcChi2NCl() > maxChi2TPC)
314316
return false;
317+
if (track.itsChi2NCl() > maxChi2ITS)
318+
return false;
315319
if (track.eta() < etaMin || track.eta() > etaMax)
316320
return false;
317321
if (requireTOF && (!track.hasTOF()))
@@ -516,28 +520,31 @@ struct myAnalysis {
516520
for (auto const& track : tracks) {
517521

518522
auto originalTrack = track.track_as<soa::Join<aod::Tracks, aod::TracksExtra, aod::TracksDCA, aod::TrackSelection, aod::pidTPCKa, aod::pidTOFKa, aod::pidTPCPi, aod::pidTOFPi, aod::pidTPCPr, aod::pidTOFPr>>();
519-
JEhistos.fill(HIST("hDCArToPv"), originalTrack.dcaXY());
520-
JEhistos.fill(HIST("hDCAzToPv"), originalTrack.dcaZ());
521-
JEhistos.fill(HIST("rawpT"), originalTrack.pt());
522-
JEhistos.fill(HIST("rawDpT"), track.pt(), track.pt() - originalTrack.pt());
523-
JEhistos.fill(HIST("hIsPrim"), originalTrack.isPrimaryTrack());
524-
JEhistos.fill(HIST("hIsGood"), originalTrack.isGlobalTrackWoDCA());
525-
JEhistos.fill(HIST("hIsPrimCont"), originalTrack.isPVContributor());
526-
JEhistos.fill(HIST("hFindableTPCClusters"), originalTrack.tpcNClsFindable());
527-
JEhistos.fill(HIST("hFindableTPCRows"), originalTrack.tpcNClsCrossedRows());
528-
JEhistos.fill(HIST("hClustersVsRows"), originalTrack.tpcCrossedRowsOverFindableCls());
529-
JEhistos.fill(HIST("hTPCChi2"), originalTrack.tpcChi2NCl());
530-
JEhistos.fill(HIST("hITSChi2"), originalTrack.itsChi2NCl());
531-
JEhistos.fill(HIST("h_track_pt"), track.pt());
532-
JEhistos.fill(HIST("h_track_eta"), track.eta());
533-
JEhistos.fill(HIST("h_track_phi"), track.phi());
534-
523+
if (doDrawPicture) {
524+
JEhistos.fill(HIST("hDCArToPv"), originalTrack.dcaXY());
525+
JEhistos.fill(HIST("hDCAzToPv"), originalTrack.dcaZ());
526+
JEhistos.fill(HIST("rawpT"), originalTrack.pt());
527+
JEhistos.fill(HIST("rawDpT"), track.pt(), track.pt() - originalTrack.pt());
528+
JEhistos.fill(HIST("hIsPrim"), originalTrack.isPrimaryTrack());
529+
JEhistos.fill(HIST("hIsGood"), originalTrack.isGlobalTrackWoDCA());
530+
JEhistos.fill(HIST("hIsPrimCont"), originalTrack.isPVContributor());
531+
JEhistos.fill(HIST("hFindableTPCClusters"), originalTrack.tpcNClsFindable());
532+
JEhistos.fill(HIST("hFindableTPCRows"), originalTrack.tpcNClsCrossedRows());
533+
JEhistos.fill(HIST("hClustersVsRows"), originalTrack.tpcCrossedRowsOverFindableCls());
534+
JEhistos.fill(HIST("hTPCChi2"), originalTrack.tpcChi2NCl());
535+
JEhistos.fill(HIST("hITSChi2"), originalTrack.itsChi2NCl());
536+
JEhistos.fill(HIST("h_track_pt"), track.pt());
537+
JEhistos.fill(HIST("h_track_eta"), track.eta());
538+
JEhistos.fill(HIST("h_track_phi"), track.phi());
539+
}
535540
if (track.pt() < cfgtrkMinPt && std::abs(track.eta()) > cfgtrkMaxEta) {
536541
continue;
537542
}
538-
JEhistos.fill(HIST("ptHistogram"), track.pt());
539-
JEhistos.fill(HIST("etaHistogram"), track.eta());
540-
JEhistos.fill(HIST("phiHistogram"), track.phi());
543+
if (doDrawPicture) {
544+
JEhistos.fill(HIST("ptHistogram"), track.pt());
545+
JEhistos.fill(HIST("etaHistogram"), track.eta());
546+
JEhistos.fill(HIST("phiHistogram"), track.phi());
547+
}
541548
}
542549
int nJets = 0;
543550
int lastindex = 0;
@@ -596,65 +603,74 @@ struct myAnalysis {
596603
const auto& neg = v0.negTrack_as<TrackCandidates>();
597604
V0NumbersPerEvent = V0NumbersPerEvent + 1;
598605
if (passedLambdaSelection(v0, pos, neg) && ctauLambda < CtauLambda && ifpasslambda) {
599-
JEhistos.fill(HIST("hPt"), v0.pt());
600-
JEhistos.fill(HIST("V0Radius"), v0.v0radius());
601-
JEhistos.fill(HIST("CosPA"), v0.v0cosPA());
602-
JEhistos.fill(HIST("V0DCANegToPV"), v0.dcanegtopv());
603-
JEhistos.fill(HIST("V0DCAPosToPV"), v0.dcapostopv());
604-
JEhistos.fill(HIST("V0DCAV0Daughters"), v0.dcaV0daughters());
606+
if (doDrawPicture) {
607+
JEhistos.fill(HIST("hPt"), v0.pt());
608+
JEhistos.fill(HIST("V0Radius"), v0.v0radius());
609+
JEhistos.fill(HIST("CosPA"), v0.v0cosPA());
610+
JEhistos.fill(HIST("V0DCANegToPV"), v0.dcanegtopv());
611+
JEhistos.fill(HIST("V0DCAPosToPV"), v0.dcapostopv());
612+
JEhistos.fill(HIST("V0DCAV0Daughters"), v0.dcaV0daughters());
613+
}
605614
} else if (passedInitLambdaSelection(v0, pos, neg) && ifinitpasslambda) {
606-
JEhistos.fill(HIST("hPt"), v0.pt());
607-
JEhistos.fill(HIST("V0Radius"), v0.v0radius());
608-
JEhistos.fill(HIST("CosPA"), v0.v0cosPA());
609-
JEhistos.fill(HIST("V0DCANegToPV"), v0.dcanegtopv());
610-
JEhistos.fill(HIST("V0DCAPosToPV"), v0.dcapostopv());
611-
JEhistos.fill(HIST("V0DCAV0Daughters"), v0.dcaV0daughters());
615+
if (doDrawPicture) {
616+
JEhistos.fill(HIST("hPt"), v0.pt());
617+
JEhistos.fill(HIST("V0Radius"), v0.v0radius());
618+
JEhistos.fill(HIST("CosPA"), v0.v0cosPA());
619+
JEhistos.fill(HIST("V0DCANegToPV"), v0.dcanegtopv());
620+
JEhistos.fill(HIST("V0DCAPosToPV"), v0.dcapostopv());
621+
JEhistos.fill(HIST("V0DCAV0Daughters"), v0.dcaV0daughters());
622+
}
612623
}
613624
if (passedLambdaSelection(v0, pos, neg) && ctauAntiLambda < CtauLambda && ifpasslambda) {
614625

615626
V0LambdaNumbers = V0LambdaNumbers + 1;
616627
JEhistos.fill(HIST("hMassVsPtLambda"), v0.pt(), v0.mLambda());
617628
JEhistos.fill(HIST("hMassLambda"), v0.mLambda());
618-
JEhistos.fill(HIST("TPCNSigmaPosPr"), pos.tpcNSigmaPr());
619-
JEhistos.fill(HIST("TPCNSigmaNegPi"), neg.tpcNSigmaPi());
620629

621-
JEhistos.fill(HIST("v0Lambdapx"), v0.px());
622-
JEhistos.fill(HIST("v0Lambdapy"), v0.py());
623-
JEhistos.fill(HIST("v0Lambdapz"), v0.pz());
630+
if (doDrawPicture) {
631+
JEhistos.fill(HIST("TPCNSigmaPosPr"), pos.tpcNSigmaPr());
632+
JEhistos.fill(HIST("TPCNSigmaNegPi"), neg.tpcNSigmaPi());
633+
JEhistos.fill(HIST("v0Lambdapx"), v0.px());
634+
JEhistos.fill(HIST("v0Lambdapy"), v0.py());
635+
JEhistos.fill(HIST("v0Lambdapz"), v0.pz());
636+
}
624637
myTable(outputCollisionsV0.lastIndex(), v0.collisionId(), v0.px(), v0.py(), v0.pz(), v0.pt(), v0.mLambda(), pos.px(), pos.py(), pos.pz());
625-
JEhistos.fill(HIST("hV0Lambda"), nEventsV0, v0.px(), v0.py(), v0.pz(), v0.mLambda(), pos.px(), pos.py(), pos.pz());
626638
} else if (passedInitLambdaSelection(v0, pos, neg) && ifinitpasslambda) {
627639
V0LambdaNumbers = V0LambdaNumbers + 1;
628640
JEhistos.fill(HIST("hMassVsPtLambda"), v0.pt(), v0.mLambda());
629641
JEhistos.fill(HIST("hMassLambda"), v0.mLambda());
630-
JEhistos.fill(HIST("TPCNSigmaPosPr"), pos.tpcNSigmaPr());
631-
JEhistos.fill(HIST("TPCNSigmaNegPi"), neg.tpcNSigmaPi());
632-
633-
JEhistos.fill(HIST("v0Lambdapx"), v0.px());
634-
JEhistos.fill(HIST("v0Lambdapy"), v0.py());
635-
JEhistos.fill(HIST("v0Lambdapz"), v0.pz());
642+
if (doDrawPicture) {
643+
JEhistos.fill(HIST("TPCNSigmaPosPr"), pos.tpcNSigmaPr());
644+
JEhistos.fill(HIST("TPCNSigmaNegPi"), neg.tpcNSigmaPi());
645+
JEhistos.fill(HIST("v0Lambdapx"), v0.px());
646+
JEhistos.fill(HIST("v0Lambdapy"), v0.py());
647+
JEhistos.fill(HIST("v0Lambdapz"), v0.pz());
648+
}
636649
myTable(outputCollisionsV0.lastIndex(), v0.collisionId(), v0.px(), v0.py(), v0.pz(), v0.pt(), v0.mLambda(), pos.px(), pos.py(), pos.pz());
637-
JEhistos.fill(HIST("hV0Lambda"), nEventsV0, v0.px(), v0.py(), v0.pz(), v0.mLambda(), pos.px(), pos.py(), pos.pz());
638650
}
639651
if (passedAntiLambdaSelection(v0, pos, neg) && ifpassantilambda) {
640652
JEhistos.fill(HIST("hMassVsPtAntiLambda"), v0.pt(), v0.mAntiLambda());
641653
JEhistos.fill(HIST("hMassAntiLambda"), v0.mAntiLambda());
642-
JEhistos.fill(HIST("TPCNSigmaPosPi"), pos.tpcNSigmaPi());
643-
JEhistos.fill(HIST("TPCNSigmaNegPr"), neg.tpcNSigmaPr());
644654

645-
JEhistos.fill(HIST("v0AntiLambdapx"), v0.px());
646-
JEhistos.fill(HIST("v0AntiLambdapy"), v0.py());
647-
JEhistos.fill(HIST("v0AntiLambdapz"), v0.pz());
655+
if (doDrawPicture) {
656+
JEhistos.fill(HIST("TPCNSigmaPosPi"), pos.tpcNSigmaPi());
657+
JEhistos.fill(HIST("TPCNSigmaNegPr"), neg.tpcNSigmaPr());
658+
JEhistos.fill(HIST("v0AntiLambdapx"), v0.px());
659+
JEhistos.fill(HIST("v0AntiLambdapy"), v0.py());
660+
JEhistos.fill(HIST("v0AntiLambdapz"), v0.pz());
661+
}
648662
myTableanti(outputCollisionsV0.lastIndex(), v0.collisionId(), v0.px(), v0.py(), v0.pz(), v0.pt(), v0.mAntiLambda(), neg.px(), neg.py(), neg.pz());
649663
} else if (passedInitLambdaSelection(v0, pos, neg) && ifinitpasslambda) {
650664
JEhistos.fill(HIST("hMassVsPtAntiLambda"), v0.pt(), v0.mAntiLambda());
651665
JEhistos.fill(HIST("hMassAntiLambda"), v0.mAntiLambda());
652-
JEhistos.fill(HIST("TPCNSigmaPosPi"), pos.tpcNSigmaPi());
653-
JEhistos.fill(HIST("TPCNSigmaNegPr"), neg.tpcNSigmaPr());
654666

655-
JEhistos.fill(HIST("v0AntiLambdapx"), v0.px());
656-
JEhistos.fill(HIST("v0AntiLambdapy"), v0.py());
657-
JEhistos.fill(HIST("v0AntiLambdapz"), v0.pz());
667+
if (doDrawPicture) {
668+
JEhistos.fill(HIST("TPCNSigmaPosPi"), pos.tpcNSigmaPi());
669+
JEhistos.fill(HIST("TPCNSigmaNegPr"), neg.tpcNSigmaPr());
670+
JEhistos.fill(HIST("v0AntiLambdapx"), v0.px());
671+
JEhistos.fill(HIST("v0AntiLambdapy"), v0.py());
672+
JEhistos.fill(HIST("v0AntiLambdapz"), v0.pz());
673+
}
658674
myTableanti(outputCollisionsV0.lastIndex(), v0.collisionId(), v0.px(), v0.py(), v0.pz(), v0.pt(), v0.mAntiLambda(), neg.px(), neg.py(), neg.pz());
659675
}
660676
}

PWGLF/Tasks/Strangeness/lambdaJetpolarization.cxx

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,11 @@ struct LfMyV0s {
9595
registry.add("hAntiLambdamassandSinPhi", "hAntiLambdamassandSinPhi", kTH2F, {{200, 0.9, 1.2}, {200, -1, 1}});
9696
registry.add("profile", "Invariant Mass vs sin(phi)", {HistType::kTProfile, {{200, 0.9, 1.2}}});
9797
registry.add("profileAntiV0", "Invariant Mass vs sin(phi)", {HistType::kTProfile, {{200, 0.9, 1.2}}});
98+
registry.add("hLambdaPhiandSinPhi", "hLambdaPhiandSinPhi", kTH2F, {{200, -TMath::Pi() / 2, TMath::Pi() / 2}, {200, -1, 1}});
99+
registry.add("hAntiLambdaPhiandSinPhi", "hAntiLambdaPhiandSinPhi", kTH2F, {{200, -TMath::Pi() / 2, TMath::Pi() / 2}, {200, -1, 1}});
100+
101+
registry.add("V0LambdaprotonPhi", "V0LambdaprotonPhi", {HistType::kTH1F, {{200, -TMath::Pi() / 2, TMath::Pi() / 2}}});
102+
registry.add("V0AntiLambdaprotonPhi", "V0AntiLambdaprotonPhi", {HistType::kTH1F, {{200, -TMath::Pi() / 2, TMath::Pi() / 2}}});
98103
}
99104
double massPr = o2::constants::physics::MassProton;
100105
double massLambda = o2::constants::physics::MassLambda;
@@ -256,6 +261,8 @@ struct LfMyV0s {
256261
if (candidate.mycollisionv0() == LeadingJet.mycollisionleadingjet()) {
257262
registry.fill(HIST("V0protonphiInJetV0frame"), protonsinPhiInJetV0frame / V0Numbers);
258263
registry.fill(HIST("hLambdamassandSinPhi"), candidate.v0Lambdamass(), protonsinPhiInJetV0frame / V0Numbers);
264+
registry.fill(HIST("hLambdaPhiandSinPhi"), TMath::ASin(protonsinPhiInJetV0frame / V0Numbers), protonsinPhiInJetV0frame / V0Numbers);
265+
registry.fill(HIST("V0LambdaprotonPhi"), TMath::ASin(protonsinPhiInJetV0frame / V0Numbers));
259266
registry.fill(HIST("profile"), candidate.v0Lambdamass(), protonsinPhiInJetV0frame / V0Numbers);
260267
}
261268
}
@@ -307,6 +314,8 @@ struct LfMyV0s {
307314
if (candidate.mycollisionv0() == LeadingJet.mycollisionleadingjet()) {
308315
registry.fill(HIST("V0antiprotonphiInJetV0frame"), protonsinPhiInJetV0frame / V0Numbers);
309316
registry.fill(HIST("hAntiLambdamassandSinPhi"), candidate.v0Lambdamass(), protonsinPhiInJetV0frame / V0Numbers);
317+
registry.fill(HIST("hAntiLambdaPhiandSinPhi"), TMath::ASin(protonsinPhiInJetV0frame / V0Numbers), protonsinPhiInJetV0frame / V0Numbers);
318+
registry.fill(HIST("V0AntiLambdaprotonPhi"), TMath::ASin(protonsinPhiInJetV0frame / V0Numbers));
310319
registry.fill(HIST("profileAntiV0"), candidate.v0Lambdamass(), protonsinPhiInJetV0frame / V0Numbers);
311320
}
312321
}

0 commit comments

Comments
 (0)