Skip to content

Commit 6e17089

Browse files
authored
[PWGCF] Lambda R2 Correlation Update (#9219)
1 parent c0e919d commit 6e17089

File tree

1 file changed

+47
-75
lines changed

1 file changed

+47
-75
lines changed

PWGCF/TwoParticleCorrelations/Tasks/lambdaR2Correlation.cxx

Lines changed: 47 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -152,8 +152,8 @@ enum TrackLabels {
152152
kAntiLambdaNotAntiPrPiPlus,
153153
kPassTrueLambdaSel,
154154
kEffCorrPt,
155-
kEffCorrPtY,
156-
kEffCorrPtYVz,
155+
kEffCorrPtRap,
156+
kEffCorrPtRapVz,
157157
kNoEffCorr,
158158
kGenTotAccLambda,
159159
kGenLambdaNoDau,
@@ -223,25 +223,26 @@ struct LambdaTableProducer {
223223
// V0s
224224
Configurable<double> cMinV0DcaDaughters{"cMinV0DcaDaughters", 0., "Minimum DCA between V0 daughters"};
225225
Configurable<double> cMaxV0DcaDaughters{"cMaxV0DcaDaughters", 1.4, "Maximum DCA between V0 daughters"};
226-
Configurable<double> cMinDcaPosToPV{"cMinDcaPosToPV", 0.1, "Minimum V0 Positive Track DCAr cut to PV"};
227-
Configurable<double> cMinDcaNegToPV{"cMinDcaNegToPV", 0.1, "Minimum V0 Negative Track DCAr cut to PV"};
226+
Configurable<double> cMinDcaPosToPV{"cMinDcaPosToPV", 0.06, "Minimum V0 Positive Track DCAr cut to PV"};
227+
Configurable<double> cMinDcaNegToPV{"cMinDcaNegToPV", 0.06, "Minimum V0 Negative Track DCAr cut to PV"};
228228
Configurable<double> cMinDcaV0ToPV{"cMinDcaV0ToPV", 0.0, "Minimum DCA V0 to PV"};
229229
Configurable<double> cMaxDcaV0ToPV{"cMaxDcaV0ToPV", 999.0, "Maximum DCA V0 to PV"};
230230
Configurable<double> cMinV0TransRadius{"cMinV0TransRadius", 0.2, "Minimum V0 radius from PV"};
231-
Configurable<double> cMaxV0TransRadius{"cMaxV0TransRadius", 100.0, "Maximum V0 radius from PV"};
231+
Configurable<double> cMaxV0TransRadius{"cMaxV0TransRadius", 999.0, "Maximum V0 radius from PV"};
232232
Configurable<double> cMinV0CTau{"cMinV0CTau", 0.0, "Minimum ctau"};
233233
Configurable<double> cMaxV0CTau{"cMaxV0CTau", 30.0, "Maximum ctau"};
234234
Configurable<double> cMinV0CosPA{"cMinV0CosPA", 0.998, "Minimum V0 CosPA to PV"};
235235
Configurable<double> cLambdaMassWindow{"cLambdaMassWindow", 0.005, "Mass Window to select Lambda"};
236236
Configurable<double> cKshortRejMassWindow{"cKshortRejMassWindow", 0.017, "Reject K0Short Candidates"};
237-
Configurable<bool> cKshortRejFlag{"cKshortRejFlag", false, "K0short Mass Rej Flag"};
237+
Configurable<bool> cKshortRejFlag{"cKshortRejFlag", true, "K0short Mass Rej Flag"};
238238
Configurable<double> cArmPodCutValue{"cArmPodCutValue", 0.5, "Armentros-Podolanski Slope Parameter"};
239-
Configurable<bool> cArmPodCutFlag{"cArmPodCutFlag", true, "Armentros-Podolanski Cut Flag"};
239+
Configurable<bool> cArmPodCutFlag{"cArmPodCutFlag", false, "Armentros-Podolanski Cut Flag"};
240240

241241
// V0s kinmatic acceptance
242242
Configurable<float> cMinV0Pt{"cMinV0Pt", 0.8, "Minimum V0 pT"};
243-
Configurable<float> cMaxV0Pt{"cMaxV0Pt", 3.2, "Minimum V0 pT"};
243+
Configurable<float> cMaxV0Pt{"cMaxV0Pt", 2.8, "Minimum V0 pT"};
244244
Configurable<float> cMaxV0Rap{"cMaxV0Rap", 0.6, "|rap| cut"};
245+
Configurable<bool> cDoEtaAnalysis{"cDoEtaAnalysis", false, "Do Eta Analysis"};
245246

246247
// V0s MC
247248
Configurable<bool> cHasMcFlag{"cHasMcFlag", true, "Has Mc Tag"};
@@ -253,8 +254,9 @@ struct LambdaTableProducer {
253254
Configurable<float> cLambdaToPiProtonBR{"cLambdaToPiProtonBR", 0.639, "#Lambda->p#pi B.R. (63.9%) (PDG)"};
254255

255256
// Efficiency Correction
256-
Configurable<bool> cCorrectionFlag{"cCorrectionFlag", true, "Efficiency Correction Flag"};
257-
Configurable<int> cCorrFactHistType{"cCorrFactHistType", 0, "Histogram Type {TH1F, TH2F, TH3F}"};
257+
Configurable<bool> cCorrectionFlag{"cCorrectionFlag", false, "Efficiency Correction Flag"};
258+
Configurable<int> cCorrFactHist{"cCorrFactHist", 0, "Correction Factor Histogram"};
259+
Configurable<bool> cDoEtaCorr{"cDoEtaCorr", false, "Do Eta Corr"};
258260

259261
// CCDB
260262
Configurable<std::string> cUrlCCDB{"cUrlCCDB", "http://ccdb-test.cern.ch:8080", "url of ccdb"};
@@ -269,7 +271,9 @@ struct LambdaTableProducer {
269271
// initialize corr_factor objects
270272
std::vector<std::vector<std::string>> vCorrFactStrings = {{"hEffVsPtLambda", "hEffVsPtAntiLambda"},
271273
{"hEffVsPtYLambda", "hEffVsPtYAntiLambda"},
272-
{"hEffVsPtYVzLambda", "hEffVsPtYVzAntiLambda"}};
274+
{"hEffVsPtEtaLambda", "hEffVsPtEtaAntiLambda"},
275+
{"hEffVsPtYVzLambda", "hEffVsPtYVzAntiLambda"},
276+
{"hEffVsPtEtaVzLambda", "hEffVsPtEtaVzAntiLambda"}};
273277

274278
void init(InitContext const&)
275279
{
@@ -291,13 +295,13 @@ struct LambdaTableProducer {
291295
const AxisSpec axisV0Eta(24, -1.2, 1.2, "#eta");
292296
const AxisSpec axisV0Phi(36, 0., TwoPI, "#phi (rad)");
293297

294-
const AxisSpec axisRadius(200, 0, 200, "r(cm)");
298+
const AxisSpec axisRadius(2000, 0, 200, "r(cm)");
295299
const AxisSpec axisCosPA(500, 0.995, 1.0, "cos(#theta_{PA})");
296300
const AxisSpec axisDcaV0PV(1000, 0., 10., "dca (cm)");
297301
const AxisSpec axisDcaProngPV(5000, -50., 50., "dca (cm)");
298302
const AxisSpec axisDcaDau(75, 0., 1.5, "Daug DCA (#sigma)");
299-
const AxisSpec axisCTau(200, 0, 200, "c#tau (cm)");
300-
const AxisSpec axisGCTau(200, 0, 200, "#gammac#tau (cm)");
303+
const AxisSpec axisCTau(2000, 0, 200, "c#tau (cm)");
304+
const AxisSpec axisGCTau(2000, 0, 200, "#gammac#tau (cm)");
301305
const AxisSpec axisAlpha(40, -1, 1, "#alpha");
302306
const AxisSpec axisQtarm(40, 0, 0.4, "q_{T}");
303307

@@ -389,8 +393,8 @@ struct LambdaTableProducer {
389393
histos.get<TH1>(HIST("Tracks/h1f_tracks_info"))->GetXaxis()->SetBinLabel(TrackLabels::kV0AsLambdaAntiLambda, "kV0AsLambdaAntiLambda");
390394
histos.get<TH1>(HIST("Tracks/h1f_tracks_info"))->GetXaxis()->SetBinLabel(TrackLabels::kPassV0MassWinCuts, "kPassV0MassWinCuts");
391395
histos.get<TH1>(HIST("Tracks/h1f_tracks_info"))->GetXaxis()->SetBinLabel(TrackLabels::kEffCorrPt, "kEffCorrPt");
392-
histos.get<TH1>(HIST("Tracks/h1f_tracks_info"))->GetXaxis()->SetBinLabel(TrackLabels::kEffCorrPtY, "kEffCorrPtY");
393-
histos.get<TH1>(HIST("Tracks/h1f_tracks_info"))->GetXaxis()->SetBinLabel(TrackLabels::kEffCorrPtYVz, "kEffCorrPtYVz");
396+
histos.get<TH1>(HIST("Tracks/h1f_tracks_info"))->GetXaxis()->SetBinLabel(TrackLabels::kEffCorrPtRap, "kEffCorrPtRap");
397+
histos.get<TH1>(HIST("Tracks/h1f_tracks_info"))->GetXaxis()->SetBinLabel(TrackLabels::kEffCorrPtRapVz, "kEffCorrPtRapVz");
394398
histos.get<TH1>(HIST("Tracks/h1f_tracks_info"))->GetXaxis()->SetBinLabel(TrackLabels::kNoEffCorr, "kNoEffCorr");
395399
}
396400

@@ -518,11 +522,13 @@ struct LambdaTableProducer {
518522
return false;
519523
}
520524

521-
// rapidity cut
522-
if (std::abs(v0.yLambda()) >= cMaxV0Rap) {
525+
// rapidity | pseudo-rapidity cut
526+
float rap = (cDoEtaAnalysis) ? v0.eta() : v0.yLambda();
527+
if (std::abs(rap) >= cMaxV0Rap) {
523528
return false;
524529
}
525530

531+
// all selection criterion passed (Return True)
526532
return true;
527533
}
528534

@@ -677,19 +683,20 @@ struct LambdaTableProducer {
677683
}
678684

679685
// get ccdb object
680-
TObject* obj = reinterpret_cast<TObject*>(ccdbObj->FindObject(Form("%s", vCorrFactStrings[cCorrFactHistType][part].c_str())));
686+
TObject* obj = reinterpret_cast<TObject*>(ccdbObj->FindObject(Form("%s", vCorrFactStrings[cCorrFactHist][part].c_str())));
681687
TH1F* hist = reinterpret_cast<TH1F*>(obj->Clone());
682688
float retVal = 0.;
689+
float rap = (cDoEtaCorr) ? v0.eta() : v0.yLambda();
683690

684691
if (std::string(obj->ClassName()) == "TH1F") {
685692
histos.fill(HIST("Tracks/h1f_tracks_info"), kEffCorrPt);
686693
retVal = hist->GetBinContent(hist->FindBin(v0.pt()));
687694
} else if (std::string(obj->ClassName()) == "TH2F") {
688-
histos.fill(HIST("Tracks/h1f_tracks_info"), kEffCorrPtY);
689-
retVal = hist->GetBinContent(hist->FindBin(v0.pt(), v0.yLambda()));
695+
histos.fill(HIST("Tracks/h1f_tracks_info"), kEffCorrPtRap);
696+
retVal = hist->GetBinContent(hist->FindBin(v0.pt(), rap));
690697
} else if (std::string(obj->ClassName()) == "TH3F") {
691-
histos.fill(HIST("Tracks/h1f_tracks_info"), kEffCorrPtYVz);
692-
retVal = hist->GetBinContent(hist->FindBin(v0.pt(), v0.yLambda(), col.posZ()));
698+
histos.fill(HIST("Tracks/h1f_tracks_info"), kEffCorrPtRapVz);
699+
retVal = hist->GetBinContent(hist->FindBin(v0.pt(), rap, col.posZ()));
693700
} else {
694701
histos.fill(HIST("Tracks/h1f_tracks_info"), kNoEffCorr);
695702
LOGF(warning, "CCDB OBJECT IS NOT A HISTOGRAM !!!");
@@ -989,13 +996,9 @@ struct LambdaTracksExtProducer {
989996
histos.add("Reco/h1f_lambda_invmass", "M_{p#pi}", kTH1F, {axisMass});
990997
histos.add("Reco/h1f_lambda_cospa", "cos(#theta_{PA})", kTH1F, {axisCPA});
991998
histos.add("Reco/h1f_lambda_dcadau", "DCA_{p#pi} at V0 Decay Vertex", kTH1F, {axisDcaDau});
992-
histos.add("Reco/h1f_lambda_cospa_vs_invm", "cos(#theta_{PA}) vs M_{p#pi}", kTH2F, {axisMass, axisCPA});
993-
histos.add("Reco/h1f_lambda_dcadau_vs_invm", "DCA_{p#pi} vs M_{p#pi}", kTH2F, {axisMass, axisDcaDau});
994999
histos.add("Reco/h1f_antilambda_invmass", "M_{p#pi}", kTH1F, {axisMass});
9951000
histos.add("Reco/h1f_antilambda_cospa", "cos(#theta_{PA})", kTH1F, {axisCPA});
9961001
histos.add("Reco/h1f_antilambda_dcadau", "DCA_{p#pi} at V0 Decay Vertex", kTH1F, {axisDcaDau});
997-
histos.add("Reco/h1f_antilambda_cospa_vs_invm", "cos(#theta_{PA}) vs M_{p#pi}", kTH2F, {axisMass, axisCPA});
998-
histos.add("Reco/h1f_antilambda_dcadau_vs_invm", "DCA_{p#pi} vs M_{p#pi}", kTH2F, {axisMass, axisDcaDau});
9991002

10001003
histos.addClone("Reco/", "SharingDau/");
10011004
}
@@ -1009,14 +1012,10 @@ struct LambdaTracksExtProducer {
10091012
histos.fill(HIST(SubDir[sd]) + HIST("h1f_lambda_invmass"), track.mass());
10101013
histos.fill(HIST(SubDir[sd]) + HIST("h1f_lambda_dcadau"), track.dcaDau());
10111014
histos.fill(HIST(SubDir[sd]) + HIST("h1f_lambda_cospa"), track.cosPA());
1012-
histos.fill(HIST(SubDir[sd]) + HIST("h1f_lambda_cospa_vs_invm"), track.mass(), track.cosPA());
1013-
histos.fill(HIST(SubDir[sd]) + HIST("h1f_lambda_dcadau_vs_invm"), track.dcaDau(), track.cosPA());
10141015
} else {
10151016
histos.fill(HIST(SubDir[sd]) + HIST("h1f_antilambda_invmass"), track.mass());
10161017
histos.fill(HIST(SubDir[sd]) + HIST("h1f_antilambda_dcadau"), track.dcaDau());
10171018
histos.fill(HIST(SubDir[sd]) + HIST("h1f_antilambda_cospa"), track.cosPA());
1018-
histos.fill(HIST(SubDir[sd]) + HIST("h1f_antilambda_cospa_vs_invm"), track.mass(), track.cosPA());
1019-
histos.fill(HIST(SubDir[sd]) + HIST("h1f_antilambda_dcadau_vs_invm"), track.dcaDau(), track.cosPA());
10201019
}
10211020
}
10221021

@@ -1037,7 +1036,7 @@ struct LambdaTracksExtProducer {
10371036
++nTotAntiLambda;
10381037
}
10391038

1040-
tLambda = (cA * std::abs(lambda.mass() - MassLambda0)) + (cB * lambda.dcaDau()) + (cC * lambda.cosPA());
1039+
tLambda = (cA * std::abs(lambda.mass() - MassLambda0)) + (cB * lambda.dcaDau()) + (cC * std::abs(lambda.cosPA() - 1.));
10411040

10421041
for (auto const& track : tracks) {
10431042
// check lambda index (don't analyze same lambda track !!!)
@@ -1061,7 +1060,7 @@ struct LambdaTracksExtProducer {
10611060
}
10621061

10631062
// decisions based on t-score
1064-
tTrack = (cA * std::abs(track.mass() - MassLambda0)) + (cB * track.dcaDau()) + (cC * track.cosPA());
1063+
tTrack = (cA * std::abs(track.mass() - MassLambda0)) + (cB * track.dcaDau()) + (cC * std::abs(track.cosPA() - 1.));
10651064
if (tLambda > tTrack) {
10661065
lambdaMinTScoreFlag = false;
10671066
}
@@ -1125,8 +1124,8 @@ struct LambdaR2Correlation {
11251124
Configurable<float> cMaxRap{"cMaxRap", 0.6, "Maximum Rapidity"};
11261125
Configurable<int> cNPhiBins{"cNPhiBins", 64, "N Phi Bins"};
11271126

1128-
// remove lambda with shared daughters
1129-
Configurable<bool> cRemoveLambdaSharingDau{"cRemoveLambdaSharingDau", true, "Flag to remove lambda"};
1127+
// Eta/Rap Analysis
1128+
Configurable<bool> cDoEtaAnalysis{"cDoEtaAnalysis", false, "Eta/Rap Analysis Flag"};
11301129

11311130
// Histogram Registry.
11321131
HistogramRegistry histos{"histos", {}, OutputObjHandlingPolicy::AnalysisObject};
@@ -1162,14 +1161,15 @@ struct LambdaR2Correlation {
11621161
const AxisSpec axisCent(105, 0, 105, "FT0M (%)");
11631162
const AxisSpec axisMult(10, 0, 10, "N_{#Lambda}");
11641163
const AxisSpec axisMass(100, 1.06, 1.16, "Inv Mass (GeV/#it{c}^{2})");
1165-
const AxisSpec axisPt(32, 0.2, 3.4, "p_{T} (GeV/#it{c})");
1164+
const AxisSpec axisPt(40, 0, 4.0, "p_{T} (GeV/#it{c})");
11661165
const AxisSpec axisEta(24, -1.2, 1.2, "#eta");
1167-
const AxisSpec axisRap(cNRapBins, cMinRap, cMaxRap, "y");
1166+
const AxisSpec axisYRap(24, -1.2, 1.2, "y");
1167+
const AxisSpec axisRap(cNRapBins, cMinRap, cMaxRap, "rap");
11681168
const AxisSpec axisPhi(cNPhiBins, 0., TwoPI, "#phi (rad)");
11691169
const AxisSpec axisRapPhi(knrapphibins, kminrapphi, kmaxrapphi, "y #phi");
11701170
const AxisSpec axisQinv(100, 0, 10, "q_{inv} (GeV/#it{c})");
11711171

1172-
const AxisSpec axisEfPt(19, 0.2, 4.0, "p_{T}");
1172+
const AxisSpec axisEfPt(20, 0, 4.0, "p_{T}");
11731173
const AxisSpec axisEfEta(24, -1.2, 1.2, "#eta");
11741174
const AxisSpec axisEfRap(24, -1.2, 1.2, "y");
11751175
const AxisSpec axisEfPosZ(10, -10., 10., "V_{Z}");
@@ -1201,8 +1201,8 @@ struct LambdaR2Correlation {
12011201
histos.add("Reco/h1d_n1_pt_LaM", "#rho_{1}^{#bar{#Lambda}}", kTH1D, {axisPt});
12021202
histos.add("Reco/h1d_n1_eta_LaP", "#rho_{1}^{#Lambda}", kTH1D, {axisEta});
12031203
histos.add("Reco/h1d_n1_eta_LaM", "#rho_{1}^{#bar{#Lambda}}", kTH1D, {axisEta});
1204-
histos.add("Reco/h1d_n1_rap_LaP", "#rho_{1}^{#Lambda}", kTH1D, {axisRap});
1205-
histos.add("Reco/h1d_n1_rap_LaM", "#rho_{1}^{#bar{#Lambda}}", kTH1D, {axisRap});
1204+
histos.add("Reco/h1d_n1_rap_LaP", "#rho_{1}^{#Lambda}", kTH1D, {axisYRap});
1205+
histos.add("Reco/h1d_n1_rap_LaM", "#rho_{1}^{#bar{#Lambda}}", kTH1D, {axisYRap});
12061206
histos.add("Reco/h1d_n1_phi_LaP", "#rho_{1}^{#Lambda}", kTH1D, {axisPhi});
12071207
histos.add("Reco/h1d_n1_phi_LaM", "#rho_{1}^{#bar{#Lambda}}", kTH1D, {axisPhi});
12081208

@@ -1211,8 +1211,8 @@ struct LambdaR2Correlation {
12111211
histos.add("Reco/h2d_n1_rapphi_LaM", "#rho_{1}^{#bar{#Lambda}}", kTH2D, {axisRap, axisPhi});
12121212

12131213
// rho1 for R2 qinv histograms
1214-
histos.add("Reco/h2d_n1_ptrap_LaP", "#rho_{1}^{#Lambda}", kTH2D, {axisPt, axisRap});
1215-
histos.add("Reco/h2d_n1_ptrap_LaM", "#rho_{1}^{#bar{#Lambda}}", kTH2D, {axisPt, axisRap});
1214+
histos.add("Reco/h2d_n1_ptrap_LaP", "#rho_{1}^{#Lambda}", kTH2D, {axisPt, axisYRap});
1215+
histos.add("Reco/h2d_n1_ptrap_LaM", "#rho_{1}^{#bar{#Lambda}}", kTH2D, {axisPt, axisYRap});
12161216
histos.add("Reco/h2d_n1_pteta_LaP", "#rho_{1}^{#Lambda}", kTH2D, {axisPt, axisEta});
12171217
histos.add("Reco/h2d_n1_pteta_LaM", "#rho_{1}^{#bar{#Lambda}}", kTH2D, {axisPt, axisEta});
12181218

@@ -1226,29 +1226,6 @@ struct LambdaR2Correlation {
12261226
histos.add("Reco/h1d_n2_qinv_LaP_LaP", "#rho_{2}^{#Lambda-#Lambda}", kTH1D, {axisQinv});
12271227
histos.add("Reco/h1d_n2_qinv_LaM_LaM", "#rho_{2}^{#bar{#Lambda}-#bar{#Lambda}}", kTH1D, {axisQinv});
12281228

1229-
// rho2 for qa checks
1230-
histos.add("Reco/h2d_n2_pt1pt2_LaP_LaM", "#rho_{2}^{#Lambda#bar{#Lambda}}", kTH2D, {axisPt, axisPt});
1231-
histos.add("Reco/h2d_n2_pt1pt2_LaP_LaP", "#rho_{2}^{#Lambda#Lambda}", kTH2D, {axisPt, axisPt});
1232-
histos.add("Reco/h2d_n2_pt1pt2_LaM_LaM", "#rho_{2}^{#bar{#Lambda}#bar{#Lambda}}", kTH2D, {axisPt, axisPt});
1233-
histos.add("Reco/h2d_n2_eta1eta2_LaP_LaM", "#rho_{2}^{#Lambda#bar{#Lambda}}", kTH2D, {axisEta, axisEta});
1234-
histos.add("Reco/h2d_n2_eta1eta2_LaP_LaP", "#rho_{2}^{#Lambda#Lambda}", kTH2D, {axisEta, axisEta});
1235-
histos.add("Reco/h2d_n2_eta1eta2_LaM_LaM", "#rho_{2}^{#bar{#Lambda}#bar{#Lambda}}", kTH2D, {axisEta, axisEta});
1236-
histos.add("Reco/h2d_n2_phi1phi2_LaP_LaM", "#rho_{2}^{#Lambda#bar{#Lambda}}", kTH2D, {axisPhi, axisPhi});
1237-
histos.add("Reco/h2d_n2_phi1phi2_LaP_LaP", "#rho_{2}^{#Lambda#Lambda}", kTH2D, {axisPhi, axisPhi});
1238-
histos.add("Reco/h2d_n2_phi1phi2_LaM_LaM", "#rho_{2}^{#bar{#Lambda}#bar{#Lambda}}", kTH2D, {axisPhi, axisPhi});
1239-
histos.add("Reco/h2d_n2_rap1rap2_LaP_LaM", "#rho_{2}^{#Lambda#bar{#Lambda}}", kTH2D, {axisRap, axisRap});
1240-
histos.add("Reco/h2d_n2_rap1rap2_LaP_LaP", "#rho_{2}^{#Lambda#Lambda}", kTH2D, {axisRap, axisRap});
1241-
histos.add("Reco/h2d_n2_rap1rap2_LaM_LaM", "#rho_{2}^{#bar{#Lambda}#bar{#Lambda}}", kTH2D, {axisRap, axisRap});
1242-
histos.add("Reco/h2d_n2_pt1eta2_LaP_LaM", "#rho_{2}^{#Lambda#bar{#Lambda}}", kTH2D, {axisPt, axisEta});
1243-
histos.add("Reco/h2d_n2_pt1eta2_LaP_LaP", "#rho_{2}^{#Lambda#Lambda}", kTH2D, {axisPt, axisEta});
1244-
histos.add("Reco/h2d_n2_pt1eta2_LaM_LaM", "#rho_{2}^{#bar{#Lambda}#bar{#Lambda}}", kTH2D, {axisPt, axisEta});
1245-
histos.add("Reco/h2d_n2_pt1phi2_LaP_LaM", "#rho_{2}^{#Lambda#bar{#Lambda}}", kTH2D, {axisPt, axisPhi});
1246-
histos.add("Reco/h2d_n2_pt1phi2_LaP_LaP", "#rho_{2}^{#Lambda#Lambda}", kTH2D, {axisPt, axisPhi});
1247-
histos.add("Reco/h2d_n2_pt1phi2_LaM_LaM", "#rho_{2}^{#bar{#Lambda}#bar{#Lambda}}", kTH2D, {axisPt, axisPhi});
1248-
histos.add("Reco/h2d_n2_pt1rap2_LaP_LaM", "#rho_{2}^{#Lambda#bar{#Lambda}}", kTH2D, {axisPt, axisRap});
1249-
histos.add("Reco/h2d_n2_pt1rap2_LaP_LaP", "#rho_{2}^{#Lambda#Lambda}", kTH2D, {axisPt, axisRap});
1250-
histos.add("Reco/h2d_n2_pt1rap2_LaM_LaM", "#rho_{2}^{#bar{#Lambda}#bar{#Lambda}}", kTH2D, {axisPt, axisRap});
1251-
12521229
// MCGen
12531230
if (doprocessMCGen) {
12541231
histos.addClone("Event/Reco/", "Event/McGen/");
@@ -1262,22 +1239,17 @@ struct LambdaR2Correlation {
12621239
static constexpr std::string_view SubDirRecGen[] = {"Reco/", "McGen/"};
12631240
static constexpr std::string_view SubDirHist[] = {"LaP_LaM", "LaP_LaP", "LaM_LaM"};
12641241

1265-
int rapbin1 = static_cast<int>((p1.rap() - kminrap) / rapbinwidth);
1266-
int rapbin2 = static_cast<int>((p2.rap() - kminrap) / rapbinwidth);
1242+
float rap1 = (cDoEtaAnalysis) ? p1.eta() : p1.rap();
1243+
float rap2 = (cDoEtaAnalysis) ? p2.eta() : p2.rap();
1244+
1245+
int rapbin1 = static_cast<int>((rap1 - kminrap) / rapbinwidth);
1246+
int rapbin2 = static_cast<int>((rap2 - kminrap) / rapbinwidth);
12671247

12681248
int phibin1 = static_cast<int>(p1.phi() / phibinwidth);
12691249
int phibin2 = static_cast<int>(p2.phi() / phibinwidth);
12701250

12711251
float corfac = p1.corrFact() * p2.corrFact();
12721252

1273-
histos.fill(HIST(SubDirRecGen[rec_gen]) + HIST("h2d_n2_pt1pt2_") + HIST(SubDirHist[part_pair]), p1.pt(), p2.pt(), corfac);
1274-
histos.fill(HIST(SubDirRecGen[rec_gen]) + HIST("h2d_n2_eta1eta2_") + HIST(SubDirHist[part_pair]), p1.eta(), p2.eta(), corfac);
1275-
histos.fill(HIST(SubDirRecGen[rec_gen]) + HIST("h2d_n2_phi1phi2_") + HIST(SubDirHist[part_pair]), p1.phi(), p2.phi(), corfac);
1276-
histos.fill(HIST(SubDirRecGen[rec_gen]) + HIST("h2d_n2_rap1rap2_") + HIST(SubDirHist[part_pair]), p1.rap(), p2.rap(), corfac);
1277-
histos.fill(HIST(SubDirRecGen[rec_gen]) + HIST("h2d_n2_pt1eta2_") + HIST(SubDirHist[part_pair]), p1.pt(), p2.eta(), corfac);
1278-
histos.fill(HIST(SubDirRecGen[rec_gen]) + HIST("h2d_n2_pt1phi2_") + HIST(SubDirHist[part_pair]), p1.pt(), p2.phi(), corfac);
1279-
histos.fill(HIST(SubDirRecGen[rec_gen]) + HIST("h2d_n2_pt1rap2_") + HIST(SubDirHist[part_pair]), p1.pt(), p2.rap(), corfac);
1280-
12811253
if (rapbin1 >= 0 && rapbin2 >= 0 && phibin1 >= 0 && phibin2 >= 0 && rapbin1 < nrapbins && rapbin2 < nrapbins && phibin1 < nphibins && phibin2 < nphibins) {
12821254

12831255
int rapphix = rapbin1 * nphibins + phibin1;

0 commit comments

Comments
 (0)