Skip to content

Commit 4c0c3b8

Browse files
committed
Add delta phi info and improve mixed event weight
1 parent 894c2fb commit 4c0c3b8

File tree

1 file changed

+54
-29
lines changed

1 file changed

+54
-29
lines changed

PWGLF/Tasks/Strangeness/lambdaspincorrderived.cxx

Lines changed: 54 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ struct lambdaspincorrderived {
108108
Configurable<float> massMix{"massMix", 0.0028, "Masscut on event mixing"};
109109

110110
ConfigurableAxis ax_dphi_h{"ax_dphi_h", {72, 0.0, 2.0 * TMath::Pi()}, "Δφ_h"};
111-
ConfigurableAxis ax_deta{"ax_deta", {32, -1.6, 1.6}, "Δη"};
111+
ConfigurableAxis ax_deta{"ax_deta", {40, -1.0, 1.0}, "Δη"};
112112
ConfigurableAxis ax_ptpair{"ax_ptpair", {100, 0.0, 10.0}, "p_{T,pair} (GeV/c)"};
113113

114114
// THnsparse bining
@@ -132,15 +132,15 @@ struct lambdaspincorrderived {
132132
histos.add("etaCent", "etaCent", HistType::kTH2D, {{32, -0.8, 0.8}, {8, 0.0, 80.0}}, true);
133133

134134
// --- 3D SE/ME pair-space maps per category (LL, LAL, ALL, ALAL)
135-
histos.add("SE_LL", "SE pairs LL;Δφ_h;Δη;p_{T,pair}", HistType::kTH3D, {ax_dphi_h, ax_deta, ax_ptpair}, true);
136-
histos.add("SE_LAL", "SE pairs LAL;Δφ_h;Δη;p_{T,pair}", HistType::kTH3D, {ax_dphi_h, ax_deta, ax_ptpair}, true);
137-
histos.add("SE_ALL", "SE pairs ALL;Δφ_h;Δη;p_{T,pair}", HistType::kTH3D, {ax_dphi_h, ax_deta, ax_ptpair}, true);
138-
histos.add("SE_ALAL", "SE pairs ALAL;Δφ_h;Δη;p_{T,pair}", HistType::kTH3D, {ax_dphi_h, ax_deta, ax_ptpair}, true);
135+
histos.add("SE_LL", "SE pairs", HistType::kTH3D, {ax_dphi_h, ax_deta, ax_ptpair}, true);
136+
histos.add("SE_LAL", "SE pairs", HistType::kTH3D, {ax_dphi_h, ax_deta, ax_ptpair}, true);
137+
histos.add("SE_ALL", "SE pairs", HistType::kTH3D, {ax_dphi_h, ax_deta, ax_ptpair}, true);
138+
histos.add("SE_ALAL", "SE pairs", HistType::kTH3D, {ax_dphi_h, ax_deta, ax_ptpair}, true);
139139

140-
histos.add("ME_LL", "ME pairs LL;Δφ_h;Δη;p_{T,pair}", HistType::kTH3D, {ax_dphi_h, ax_deta, ax_ptpair}, true);
141-
histos.add("ME_LAL", "ME pairs LAL;Δφ_h;Δη;p_{T,pair}", HistType::kTH3D, {ax_dphi_h, ax_deta, ax_ptpair}, true);
142-
histos.add("ME_ALL", "ME pairs ALL;Δφ_h;Δη;p_{T,pair}", HistType::kTH3D, {ax_dphi_h, ax_deta, ax_ptpair}, true);
143-
histos.add("ME_ALAL", "ME pairs ALAL;Δφ_h;Δη;p_{T,pair}", HistType::kTH3D, {ax_dphi_h, ax_deta, ax_ptpair}, true);
140+
histos.add("ME_LL", "ME pairs", HistType::kTH3D, {ax_dphi_h, ax_deta, ax_ptpair}, true);
141+
histos.add("ME_LAL", "ME pairs", HistType::kTH3D, {ax_dphi_h, ax_deta, ax_ptpair}, true);
142+
histos.add("ME_ALL", "ME pairs", HistType::kTH3D, {ax_dphi_h, ax_deta, ax_ptpair}, true);
143+
histos.add("ME_ALAL", "ME pairs", HistType::kTH3D, {ax_dphi_h, ax_deta, ax_ptpair}, true);
144144

145145
histos.add("hSparseLambdaLambda", "hSparseLambdaLambda", HistType::kTHnSparseF, {configThnAxisInvMass, configThnAxisInvMass, configThnAxisPol, configThnAxisR}, true);
146146
histos.add("hSparseLambdaAntiLambda", "hSparseLambdaAntiLambda", HistType::kTHnSparseF, {configThnAxisInvMass, configThnAxisInvMass, configThnAxisPol, configThnAxisR}, true);
@@ -162,6 +162,16 @@ struct lambdaspincorrderived {
162162
histos.add("hSparseRapAntiLambdaLambdaMixed", "hSparseRapAntiLambdaLambdaMixed", HistType::kTHnSparseF, {configThnAxisInvMass, configThnAxisInvMass, configThnAxisPol, configThnAxisRapidity}, true);
163163
histos.add("hSparseRapAntiLambdaAntiLambdaMixed", "hSparseRapAntiLambdaAntiLambdaMixed", HistType::kTHnSparseF, {configThnAxisInvMass, configThnAxisInvMass, configThnAxisPol, configThnAxisRapidity}, true);
164164

165+
histos.add("hSparsePhiLambdaLambda", "hSparsePhiLambdaLambda", HistType::kTHnSparseF, {configThnAxisInvMass, configThnAxisInvMass, configThnAxisPol, ax_dphi_h}, true);
166+
histos.add("hSparsePhiLambdaAntiLambda", "hSparsePhiLambdaAntiLambda", HistType::kTHnSparseF, {configThnAxisInvMass, configThnAxisInvMass, configThnAxisPol, ax_dphi_h}, true);
167+
histos.add("hSparsePhiAntiLambdaLambda", "hSparsePhiAntiLambdLambda", HistType::kTHnSparseF, {configThnAxisInvMass, configThnAxisInvMass, configThnAxisPol, ax_dphi_h}, true);
168+
histos.add("hSparsePhiAntiLambdaAntiLambda", "hSparsePhiAntiLambdaAntiLambda", HistType::kTHnSparseF, {configThnAxisInvMass, configThnAxisInvMass, configThnAxisPol, ax_dphi_h}, true);
169+
170+
histos.add("hSparsePhiLambdaLambdaMixed", "hSparsePhiLambdaLambdaMixed", HistType::kTHnSparseF, {configThnAxisInvMass, configThnAxisInvMass, configThnAxisPol, ax_dphi_h}, true);
171+
histos.add("hSparsePhiLambdaAntiLambdaMixed", "hSparsePhiLambdaAntiLambdaMixed", HistType::kTHnSparseF, {configThnAxisInvMass, configThnAxisInvMass, configThnAxisPol, ax_dphi_h}, true);
172+
histos.add("hSparsePhiAntiLambdaLambdaMixed", "hSparsePhiAntiLambdaLambdaMixed", HistType::kTHnSparseF, {configThnAxisInvMass, configThnAxisInvMass, configThnAxisPol, ax_dphi_h}, true);
173+
histos.add("hSparsePhiAntiLambdaAntiLambdaMixed", "hSparsePhiAntiLambdaAntiLambdaMixed", HistType::kTHnSparseF, {configThnAxisInvMass, configThnAxisInvMass, configThnAxisPol, ax_dphi_h}, true);
174+
165175
histos.add("hSparsePairMassLambdaLambda", "hSparsePairMassLambdaLambda", HistType::kTHnSparseF, {configThnAxisInvMass, configThnAxisInvMass, configThnAxisPol, configThnAxisPairMass}, true);
166176
histos.add("hSparsePairMassLambdaAntiLambda", "hSparsePairMassLambdaAntiLambda", HistType::kTHnSparseF, {configThnAxisInvMass, configThnAxisInvMass, configThnAxisPol, configThnAxisPairMass}, true);
167177
histos.add("hSparsePairMassAntiLambdaLambda", "hSparsePairMassAntiLambdLambda", HistType::kTHnSparseF, {configThnAxisInvMass, configThnAxisInvMass, configThnAxisPol, configThnAxisPairMass}, true);
@@ -319,26 +329,33 @@ struct lambdaspincorrderived {
319329
cosThetaDiff = cosDeltaTheta_hel;
320330
}
321331

322-
// --- helper to compute pair-space variables
323-
auto phi1h = RecoDecay::constrainAngle(particle1Dummy.Phi(), 0.0F, harmonic);
324-
auto phi2h = RecoDecay::constrainAngle(particle2Dummy.Phi(), 0.0F, harmonic);
325-
double dphi_h = std::abs(phi1h - phi2h);
326-
double deta_pair = particle1Dummy.Eta() - particle2Dummy.Eta();
327-
double pt_pair = (particle1Dummy + particle2Dummy).Pt();
328-
double deltaRap = std::abs(particle1Dummy.Rapidity() - particle2Dummy.Rapidity());
329-
double deltaR = TMath::Sqrt(deta_pair * deta_pair + dphi_h * dphi_h);
332+
double pt1 = particle1.Pt();
333+
double dphi1 = RecoDecay::constrainAngle(particle1.Phi(), 0.0F, harmonic);
334+
;
335+
double deta1 = particle1.Eta();
336+
337+
double dphi2 = RecoDecay::constrainAngle(particle2.Phi(), 0.0F, harmonic);
338+
;
339+
double deta2 = particle2.Eta();
340+
341+
double deta_pair = std::abs(deta1 - deta2);
342+
double dphi_pair = std::abs(dphi1 - dphi2);
343+
344+
double deltaR = TMath::Sqrt(deta_pair * deta_pair + dphi_pair * dphi_pair);
345+
346+
double deltaRap = std::abs(particle1.Rapidity() - particle2.Rapidity());
330347

331348
double epsWeight = 1.0;
332349

333350
if (useweight && datatype == 1) {
334351
if (tag1 == 0 && tag2 == 0) {
335-
epsWeight = hweight1->GetBinContent(hweight1->FindBin(dphi_h, deta_pair, pt_pair));
352+
epsWeight = hweight1->GetBinContent(hweight1->FindBin(dphi1, deta1, pt1));
336353
} else if (tag1 == 0 && tag2 == 1) {
337-
epsWeight = hweight2->GetBinContent(hweight2->FindBin(dphi_h, deta_pair, pt_pair));
354+
epsWeight = hweight2->GetBinContent(hweight2->FindBin(dphi1, deta1, pt1));
338355
} else if (tag1 == 1 && tag2 == 0) {
339-
epsWeight = hweight3->GetBinContent(hweight3->FindBin(dphi_h, deta_pair, pt_pair));
356+
epsWeight = hweight3->GetBinContent(hweight3->FindBin(dphi1, deta1, pt1));
340357
} else if (tag1 == 1 && tag2 == 1) {
341-
epsWeight = hweight4->GetBinContent(hweight4->FindBin(dphi_h, deta_pair, pt_pair));
358+
epsWeight = hweight4->GetBinContent(hweight4->FindBin(dphi1, deta1, pt1));
342359
}
343360
}
344361

@@ -348,23 +365,27 @@ struct lambdaspincorrderived {
348365
if (tag1 == 0 && tag2 == 0) {
349366
histos.fill(HIST("hSparseLambdaLambda"), particle1.M(), particle2.M(), cosThetaDiff, deltaR, mixpairweight);
350367
histos.fill(HIST("hSparseRapLambdaLambda"), particle1.M(), particle2.M(), cosThetaDiff, deltaRap, mixpairweight);
368+
histos.fill(HIST("hSparsePhiLambdaLambda"), particle1.M(), particle2.M(), cosThetaDiff, dphi_pair, mixpairweight);
351369
histos.fill(HIST("hSparsePairMassLambdaLambda"), particle1.M(), particle2.M(), cosThetaDiff, pairDummy.M(), mixpairweight);
352-
histos.fill(HIST("SE_LL"), dphi_h, deta_pair, pt_pair);
370+
histos.fill(HIST("SE_LL"), dphi1, deta1, pt1, mixpairweight);
353371
} else if (tag1 == 0 && tag2 == 1) {
354372
histos.fill(HIST("hSparseLambdaAntiLambda"), particle1.M(), particle2.M(), cosThetaDiff, deltaR, mixpairweight);
355373
histos.fill(HIST("hSparseRapLambdaAntiLambda"), particle1.M(), particle2.M(), cosThetaDiff, deltaRap, mixpairweight);
374+
histos.fill(HIST("hSparsePhiLambdaAntiLambda"), particle1.M(), particle2.M(), cosThetaDiff, dphi_pair, mixpairweight);
356375
histos.fill(HIST("hSparsePairMassLambdaAntiLambda"), particle1.M(), particle2.M(), cosThetaDiff, pairDummy.M(), mixpairweight);
357-
histos.fill(HIST("SE_LAL"), dphi_h, deta_pair, pt_pair);
376+
histos.fill(HIST("SE_LAL"), dphi1, deta1, pt1, mixpairweight);
358377
} else if (tag1 == 1 && tag2 == 0) {
359378
histos.fill(HIST("hSparseAntiLambdaLambda"), particle1.M(), particle2.M(), cosThetaDiff, deltaR, mixpairweight);
360379
histos.fill(HIST("hSparseRapAntiLambdaLambda"), particle1.M(), particle2.M(), cosThetaDiff, deltaRap, mixpairweight);
380+
histos.fill(HIST("hSparsePhiAntiLambdaLambda"), particle1.M(), particle2.M(), cosThetaDiff, dphi_pair, mixpairweight);
361381
histos.fill(HIST("hSparsePairMassAntiLambdaLambda"), particle1.M(), particle2.M(), cosThetaDiff, pairDummy.M(), mixpairweight);
362-
histos.fill(HIST("SE_ALL"), dphi_h, deta_pair, pt_pair);
382+
histos.fill(HIST("SE_ALL"), dphi1, deta1, pt1, mixpairweight);
363383
} else if (tag1 == 1 && tag2 == 1) {
364384
histos.fill(HIST("hSparseAntiLambdaAntiLambda"), particle1.M(), particle2.M(), cosThetaDiff, deltaR, mixpairweight);
365385
histos.fill(HIST("hSparseRapAntiLambdaAntiLambda"), particle1.M(), particle2.M(), cosThetaDiff, deltaRap, mixpairweight);
386+
histos.fill(HIST("hSparsePhiAntiLambdaAntiLambda"), particle1.M(), particle2.M(), cosThetaDiff, dphi_pair, mixpairweight);
366387
histos.fill(HIST("hSparsePairMassAntiLambdaAntiLambda"), particle1.M(), particle2.M(), cosThetaDiff, pairDummy.M(), mixpairweight);
367-
histos.fill(HIST("SE_ALAL"), dphi_h, deta_pair, pt_pair);
388+
histos.fill(HIST("SE_ALAL"), dphi1, deta1, pt1, mixpairweight);
368389
}
369390
} else if (datatype == 1) {
370391
double weight = mixpairweight;
@@ -376,26 +397,30 @@ struct lambdaspincorrderived {
376397
histos.fill(HIST("hPtYMix"), particle1.Pt(), particle1.Rapidity(), weight);
377398
histos.fill(HIST("hSparseLambdaLambdaMixed"), particle1.M(), particle2.M(), cosThetaDiff, deltaR, weight);
378399
histos.fill(HIST("hSparseRapLambdaLambdaMixed"), particle1.M(), particle2.M(), cosThetaDiff, deltaRap, weight);
400+
histos.fill(HIST("hSparsePhiLambdaLambdaMixed"), particle1.M(), particle2.M(), cosThetaDiff, dphi_pair, weight);
379401
histos.fill(HIST("hSparsePairMassLambdaLambdaMixed"), particle1.M(), particle2.M(), cosThetaDiff, pairDummy.M(), weight);
380-
histos.fill(HIST("ME_LL"), dphi_h, deta_pair, pt_pair);
402+
histos.fill(HIST("ME_LL"), dphi1, deta1, pt1, mixpairweight);
381403
} else if (tag1 == 0 && tag2 == 1) {
382404
histos.fill(HIST("hPtYMix"), particle1.Pt(), particle1.Rapidity(), weight);
383405
histos.fill(HIST("hSparseLambdaAntiLambdaMixed"), particle1.M(), particle2.M(), cosThetaDiff, deltaR, weight);
384406
histos.fill(HIST("hSparseRapLambdaAntiLambdaMixed"), particle1.M(), particle2.M(), cosThetaDiff, deltaRap, weight);
407+
histos.fill(HIST("hSparsePhiLambdaAntiLambdaMixed"), particle1.M(), particle2.M(), cosThetaDiff, dphi_pair, weight);
385408
histos.fill(HIST("hSparsePairMassLambdaAntiLambdaMixed"), particle1.M(), particle2.M(), cosThetaDiff, pairDummy.M(), weight);
386-
histos.fill(HIST("ME_LAL"), dphi_h, deta_pair, pt_pair);
409+
histos.fill(HIST("ME_LAL"), dphi1, deta1, pt1, mixpairweight);
387410
} else if (tag1 == 1 && tag2 == 0) {
388411
histos.fill(HIST("hPtYMix"), particle1.Pt(), particle1.Rapidity(), weight);
389412
histos.fill(HIST("hSparseAntiLambdaLambdaMixed"), particle1.M(), particle2.M(), cosThetaDiff, deltaR, weight);
390413
histos.fill(HIST("hSparseRapAntiLambdaLambdaMixed"), particle1.M(), particle2.M(), cosThetaDiff, deltaRap, weight);
414+
histos.fill(HIST("hSparsePhiAntiLambdaLambdaMixed"), particle1.M(), particle2.M(), cosThetaDiff, dphi_pair, weight);
391415
histos.fill(HIST("hSparsePairMassAntiLambdaLambdaMixed"), particle1.M(), particle2.M(), cosThetaDiff, pairDummy.M(), weight);
392-
histos.fill(HIST("ME_ALL"), dphi_h, deta_pair, pt_pair);
416+
histos.fill(HIST("ME_ALL"), dphi1, deta1, pt1, mixpairweight);
393417
} else if (tag1 == 1 && tag2 == 1) {
394418
histos.fill(HIST("hPtYMix"), particle1.Pt(), particle1.Rapidity(), weight);
395419
histos.fill(HIST("hSparseAntiLambdaAntiLambdaMixed"), particle1.M(), particle2.M(), cosThetaDiff, deltaR, weight);
396420
histos.fill(HIST("hSparseRapAntiLambdaAntiLambdaMixed"), particle1.M(), particle2.M(), cosThetaDiff, deltaRap, weight);
421+
histos.fill(HIST("hSparsePhiAntiLambdaAntiLambdaMixed"), particle1.M(), particle2.M(), cosThetaDiff, dphi_pair, weight);
397422
histos.fill(HIST("hSparsePairMassAntiLambdaAntiLambdaMixed"), particle1.M(), particle2.M(), cosThetaDiff, pairDummy.M(), weight);
398-
histos.fill(HIST("ME_ALAL"), dphi_h, deta_pair, pt_pair);
423+
histos.fill(HIST("ME_ALAL"), dphi1, deta1, pt1, mixpairweight);
399424
}
400425
}
401426
}

0 commit comments

Comments
 (0)