Skip to content

Commit b02072a

Browse files
sdudi123sandeep dudi
andauthored
[PWGUD] Histogram are added to calculate Signal loss and Event loss in MC (#14823)
Co-authored-by: sandeep dudi <[email protected]>
1 parent 3402d11 commit b02072a

File tree

1 file changed

+46
-47
lines changed

1 file changed

+46
-47
lines changed

PWGUD/Tasks/sginclusivePhiKstarSD.cxx

Lines changed: 46 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -175,9 +175,6 @@ struct SginclusivePhiKstarSD {
175175

176176
registry.add("GapSide", "Gap Side; Entries", kTH1F, {{4, -1.5, 2.5}});
177177
registry.add("TrueGapSide", "Gap Side; Entries", kTH1F, {{4, -1.5, 2.5}});
178-
registry.add("nPVContributors_data", "Multiplicity_dist_before track cut gap A", kTH1F, {{110, 0, 110}});
179-
registry.add("nPVContributors_data_1", "Multiplicity_dist_before track cut gap C", kTH1F, {{110, 0, 110}});
180-
181178
registry.add("hRotation", "hRotation", kTH1F, {{360, 0.0, o2::constants::math::TwoPI}});
182179

183180
if (phi) {
@@ -334,6 +331,7 @@ struct SginclusivePhiKstarSD {
334331

335332
registry.add("MC/accMPtRap_phi_G", "Generated Phi; Mass (GeV/#it{c}^2); #it{p}_{T} (GeV/#it{c})", {HistType::kTH3F, {{220, 0.98, 1.20}, {200, 0.0, 10.0}, {60, -1.5, 1.5}}});
336333
registry.add("MC/accMPtRap_phi_G1", "Generated Phi1; Mass (GeV/#it{c}^2); #it{p}_{T} (GeV/#it{c})", {HistType::kTH3F, {{220, 0.98, 1.20}, {200, 0.0, 10.0}, {60, -1.5, 1.5}}});
334+
registry.add("MC/accMPtRap_phi_G11", "Generated Phi11; Mass (GeV/#it{c}^2); #it{p}_{T} (GeV/#it{c})", {HistType::kTH3F, {{220, 0.98, 1.20}, {200, 0.0, 10.0}, {60, -1.5, 1.5}}});
337335
registry.add("MC/accMPtRap_phi_G2", "Generated Phi2; Mass (GeV/#it{c}^2); #it{p}_{T} (GeV/#it{c})", {HistType::kTH3F, {{220, 0.98, 1.20}, {200, 0.0, 10.0}, {60, -1.5, 1.5}}});
338336

339337
registry.add("MC/accEtaPt", "Generated events in acceptance; eta (1); #it{p}_{T} (GeV/#it{c})", {HistType::kTH2F, {{60, -1.5, 1.5}, {250, 0.0, 5.0}}});
@@ -347,6 +345,7 @@ struct SginclusivePhiKstarSD {
347345
// K*0
348346
registry.add("MC/accMPtRap_kstar_G", "Generated K*0; Mass (GeV/#it{c}^2); #it{p}_{T} (GeV/#it{c})", {HistType::kTH3F, {{400, 0., 2.0}, {200, 0.0, 10.0}, {60, -1.5, 1.5}}});
349347
registry.add("MC/accMPtRap_kstar_G1", "Generated K*0 from kp; Mass (GeV/#it{c}^2); #it{p}_{T} (GeV/#it{c})", {HistType::kTH3F, {{400, 0., 2.0}, {200, 0.0, 10.0}, {60, -1.5, 1.5}}});
348+
registry.add("MC/accMPtRap_kstar_G11", "Generated K*0 from kp1; Mass (GeV/#it{c}^2); #it{p}_{T} (GeV/#it{c})", {HistType::kTH3F, {{400, 0., 2.0}, {200, 0.0, 10.0}, {60, -1.5, 1.5}}});
350349
registry.add("MC/accMPtRap_kstar_G2", "Generated K*0 from kp2; Mass (GeV/#it{c}^2); #it{p}_{T} (GeV/#it{c})", {HistType::kTH3F, {{400, 0., 2.0}, {200, 0.0, 10.0}, {60, -1.5, 1.5}}});
351350
registry.add("MC/genEtaPt_k", "Generated events; eta (1); #it{p}_{T} (GeV/#it{c})", {HistType::kTH2F, {{60, -1.5, 1.5}, {250, 0.0, 5.0}}});
352351
registry.add("MC/genRap_k", "Generated events; Rapidity (1)", {HistType::kTH1F, {{60, -1.5, 1.5}}});
@@ -390,7 +389,6 @@ struct SginclusivePhiKstarSD {
390389
}
391390

392391
registry.add("Reco/Stat", "Count reconstruted events; ; Entries", {HistType::kTH1F, {{5, -0.5, 4.5}}});
393-
registry.add("Reco/nPVContributors", "Number of PV contributors per collision; Number of PV contributors; Entries", {HistType::kTH1F, {{51, -0.5, 50.5}}});
394392
registry.add("Reco/selRap", "Selected events in acceptance; Rapidity (1)", {HistType::kTH1F, {{60, -1.5, 1.5}}});
395393
registry.add("Reco/selMPt", "Reconstructed events in acceptance; Mass (GeV/#it{c}^2); #it{p}_{T} (GeV/#it{c})", {HistType::kTH2F, {{220, 0.98, 1.20}, {200, 0.0, 10.0}}});
396394
registry.add("Reco/selMPtRap", "Reconstructed events in acceptance; Mass (GeV/#it{c}^2); #it{p}_{T} (GeV/#it{c})", {HistType::kTH3F, {{220, 0.98, 1.20}, {200, 0.0, 10.0}, {60, -1.5, 1.5}}});
@@ -600,67 +598,67 @@ struct SginclusivePhiKstarSD {
600598
if (fillHist)
601599
registry.fill(HIST("hEventCutFlow"), 1);
602600

603-
if (std::abs(collision.posZ()) > vzCut)
601+
if (upcflag != -1 && collision.flags() != upcflag)
604602
return {false, gapSide};
605603
if (fillHist)
606604
registry.fill(HIST("hEventCutFlow"), 2);
607605

608-
if (useOccCut && (std::abs(collision.occupancyInTime()) > confgOccCut))
606+
if (std::abs(collision.posZ()) > vzCut)
609607
return {false, gapSide};
610608
if (fillHist)
611609
registry.fill(HIST("hEventCutFlow"), 3);
612610

613-
if (useHadronicRateCut && (std::abs(collision.hadronicRate()) > confgHadronicRateMax || std::abs(collision.hadronicRate()) < confgHadronicRateMin))
611+
if (useOccCut && (std::abs(collision.occupancyInTime()) > confgOccCut))
614612
return {false, gapSide};
615613
if (fillHist)
616614
registry.fill(HIST("hEventCutFlow"), 4);
617615

618-
if (useTrs && collision.trs() != 1)
616+
if (useHadronicRateCut && (std::abs(collision.hadronicRate()) > confgHadronicRateMax || std::abs(collision.hadronicRate()) < confgHadronicRateMin))
619617
return {false, gapSide};
620618
if (fillHist)
621619
registry.fill(HIST("hEventCutFlow"), 5);
622620

623-
if (useTrofs && collision.trofs() != 1)
621+
if (useTrs && collision.trs() != 1)
624622
return {false, gapSide};
625623
if (fillHist)
626624
registry.fill(HIST("hEventCutFlow"), 6);
627625

628-
if (useHmpr && collision.hmpr() != 1)
626+
if (useTrofs && collision.trofs() != 1)
629627
return {false, gapSide};
630628
if (fillHist)
631629
registry.fill(HIST("hEventCutFlow"), 7);
632630

633-
if (useTfb && collision.tfb() != 1)
631+
if (useHmpr && collision.hmpr() != 1)
634632
return {false, gapSide};
635633
if (fillHist)
636634
registry.fill(HIST("hEventCutFlow"), 8);
637635

638-
if (useItsrofb && collision.itsROFb() != 1)
636+
if (useTfb && collision.tfb() != 1)
639637
return {false, gapSide};
640638
if (fillHist)
641639
registry.fill(HIST("hEventCutFlow"), 9);
642640

643-
if (useSbp && collision.sbp() != 1)
641+
if (useItsrofb && collision.itsROFb() != 1)
644642
return {false, gapSide};
645643
if (fillHist)
646644
registry.fill(HIST("hEventCutFlow"), 10);
647645

648-
if (useZvtxftovpv && collision.zVtxFT0vPV() != 1)
646+
if (useSbp && collision.sbp() != 1)
649647
return {false, gapSide};
650648
if (fillHist)
651649
registry.fill(HIST("hEventCutFlow"), 11);
652650

653-
if (useVtxItsTpc && collision.vtxITSTPC() != 1)
651+
if (useZvtxftovpv && collision.zVtxFT0vPV() != 1)
654652
return {false, gapSide};
655653
if (fillHist)
656654
registry.fill(HIST("hEventCutFlow"), 12);
657655

658-
if (!isGoodRCTflag(collision))
656+
if (useVtxItsTpc && collision.vtxITSTPC() != 1)
659657
return {false, gapSide};
660658
if (fillHist)
661659
registry.fill(HIST("hEventCutFlow"), 13);
662660

663-
if (upcflag != -1 && collision.flags() != upcflag)
661+
if (!isGoodRCTflag(collision))
664662
return {false, gapSide};
665663
if (fillHist)
666664
registry.fill(HIST("hEventCutFlow"), 14);
@@ -1248,7 +1246,7 @@ struct SginclusivePhiKstarSD {
12481246
registry.get<TH3>(HIST("MC/accMPtRap_kstar_G"))->Fill(v01.M(), v01.Pt(), v01.Rapidity(), 1.);
12491247
}
12501248
if (std::abs(vkstar.Rapidity()) < 0.5) {
1251-
// registry.get<TH3>(HIST("MC/accMPtRap_kstar_G1"))->Fill(vkstar.M(), vkstar.Pt(), vkstar.Rapidity(), 1.);
1249+
registry.get<TH3>(HIST("MC/accMPtRap_kstar_G2"))->Fill(vkstar.M(), vkstar.Pt(), vkstar.Rapidity(), 1.);
12521250
}
12531251
}
12541252
}
@@ -1411,6 +1409,18 @@ struct SginclusivePhiKstarSD {
14111409
auto mccoll = collision.udMcCollision();
14121410
if (mccoll.generatorsID() != generatedId)
14131411
return;
1412+
registry.fill(HIST("Reco/hEventCutFlowMC"), 2);
1413+
1414+
if (upcflag != -1 && collision.flags() != upcflag)
1415+
return;
1416+
registry.fill(HIST("Reco/hEventCutFlowMC"), 3);
1417+
1418+
float fitCut[5] = {fv0Cut, ft0aCut, ft0cCut, fddaCut, fddcCut};
1419+
std::vector<float> parameters = {pvCut, dcazCut, dcaxyCut, tpcChi2Cut, tpcNClsFindableCut, itsChi2Cut, etaCut, ptCut};
1420+
int truegapSide = sgSelector.trueGap(collision, fitCut[0], fitCut[1], fitCut[2], zdcCut);
1421+
registry.get<TH1>(HIST("Reco/Stat"))->Fill(4.0, 1.);
1422+
registry.get<TH1>(HIST("Reco/Stat"))->Fill(truegapSide, 1.);
1423+
14141424
if (upcflag != -1 && collision.flags() == upcflag) {
14151425
auto partSlice = McParts.sliceBy(partPerMcCollision, mccoll.globalIndex());
14161426
for (const auto& trk1 : partSlice) {
@@ -1436,6 +1446,9 @@ struct SginclusivePhiKstarSD {
14361446
if (daughtp && daughtm) {
14371447
if (std::abs(vkstar.Rapidity()) < 0.5) {
14381448
registry.get<TH3>(HIST("MC/accMPtRap_kstar_G1"))->Fill(vkstar.M(), vkstar.Pt(), vkstar.Rapidity(), 1.);
1449+
if (truegapSide == gapsideMC) {
1450+
registry.get<TH3>(HIST("MC/accMPtRap_kstar_G11"))->Fill(vkstar.M(), vkstar.Pt(), vkstar.Rapidity(), 1.);
1451+
}
14391452
}
14401453
}
14411454
}
@@ -1465,74 +1478,63 @@ struct SginclusivePhiKstarSD {
14651478
if (daughtp1 && daughtm1) {
14661479
if (std::abs(vphi.Rapidity()) < 0.5) {
14671480
registry.get<TH3>(HIST("MC/accMPtRap_phi_G1"))->Fill(vphi.M(), vphi.Pt(), vphi.Rapidity(), 1.);
1481+
if (truegapSide == gapsideMC) {
1482+
registry.get<TH3>(HIST("MC/accMPtRap_phi_G11"))->Fill(vphi.M(), vphi.Pt(), vphi.Rapidity(), 1.);
1483+
}
14681484
}
14691485
}
14701486
}
14711487
}
14721488
}
1473-
1474-
registry.fill(HIST("Reco/hEventCutFlowMC"), 2);
1475-
1476-
float fitCut[5] = {fv0Cut, ft0aCut, ft0cCut, fddaCut, fddcCut};
1477-
std::vector<float> parameters = {pvCut, dcazCut, dcaxyCut, tpcChi2Cut, tpcNClsFindableCut, itsChi2Cut, etaCut, ptCut};
1478-
int truegapSide = sgSelector.trueGap(collision, fitCut[0], fitCut[1], fitCut[2], zdcCut);
1479-
registry.get<TH1>(HIST("Reco/Stat"))->Fill(4.0, 1.);
1480-
registry.get<TH1>(HIST("Reco/Stat"))->Fill(truegapSide, 1.);
14811489
if (truegapSide != gapsideMC)
14821490
return;
1483-
registry.fill(HIST("Reco/hEventCutFlowMC"), 3);
1484-
// Partition<TCs> pvContributors = aod::udtrack::isPVContributor == true;
1485-
// pvContributors.bindTable(tracks);
1491+
registry.fill(HIST("Reco/hEventCutFlowMC"), 4);
14861492

14871493
if (std::abs(collision.posZ()) > vzCut)
14881494
return;
1489-
registry.fill(HIST("Reco/hEventCutFlowMC"), 4);
1495+
registry.fill(HIST("Reco/hEventCutFlowMC"), 5);
14901496

14911497
if (useOccCut && (std::abs(collision.occupancyInTime()) > confgOccCut))
14921498
return;
1493-
registry.fill(HIST("Reco/hEventCutFlowMC"), 5);
1499+
registry.fill(HIST("Reco/hEventCutFlowMC"), 6);
14941500

14951501
if (useHadronicRateCut && (std::abs(collision.hadronicRate()) > confgHadronicRateMax || std::abs(collision.hadronicRate()) < confgHadronicRateMin))
14961502
return;
1497-
registry.fill(HIST("Reco/hEventCutFlowMC"), 6);
1503+
registry.fill(HIST("Reco/hEventCutFlowMC"), 7);
14981504

14991505
if (useTrs && collision.trs() != 1)
15001506
return;
1501-
registry.fill(HIST("Reco/hEventCutFlowMC"), 7);
1507+
registry.fill(HIST("Reco/hEventCutFlowMC"), 8);
15021508

15031509
if (useTrofs && collision.trofs() != 1)
15041510
return;
1505-
registry.fill(HIST("Reco/hEventCutFlowMC"), 8);
1511+
registry.fill(HIST("Reco/hEventCutFlowMC"), 9);
15061512

15071513
if (useHmpr && collision.hmpr() != 1)
15081514
return;
1509-
registry.fill(HIST("Reco/hEventCutFlowMC"), 9);
1515+
registry.fill(HIST("Reco/hEventCutFlowMC"), 10);
15101516

15111517
if (useTfb && collision.tfb() != 1)
15121518
return;
1513-
registry.fill(HIST("Reco/hEventCutFlowMC"), 10);
1519+
registry.fill(HIST("Reco/hEventCutFlowMC"), 1);
15141520

15151521
if (useItsrofb && collision.itsROFb() != 1)
15161522
return;
1517-
registry.fill(HIST("Reco/hEventCutFlowMC"), 11);
1518-
1519-
if (useSbp && collision.sbp() != 1)
1520-
return;
15211523
registry.fill(HIST("Reco/hEventCutFlowMC"), 12);
15221524

1523-
if (useZvtxftovpv && collision.zVtxFT0vPV() != 1)
1525+
if (useSbp && collision.sbp() != 1)
15241526
return;
15251527
registry.fill(HIST("Reco/hEventCutFlowMC"), 13);
15261528

1527-
if (useVtxItsTpc && collision.vtxITSTPC() != 1)
1529+
if (useZvtxftovpv && collision.zVtxFT0vPV() != 1)
15281530
return;
15291531
registry.fill(HIST("Reco/hEventCutFlowMC"), 14);
15301532

1531-
if (!isGoodRCTflag(collision))
1533+
if (useVtxItsTpc && collision.vtxITSTPC() != 1)
15321534
return;
15331535
registry.fill(HIST("Reco/hEventCutFlowMC"), 15);
15341536

1535-
if (upcflag != -1 && collision.flags() != upcflag)
1537+
if (!isGoodRCTflag(collision))
15361538
return;
15371539
registry.fill(HIST("Reco/hEventCutFlowMC"), 16);
15381540

@@ -1547,9 +1549,6 @@ struct SginclusivePhiKstarSD {
15471549
rQA.fill(HIST("hVertexZ_mc"), collision.posZ());
15481550
}
15491551

1550-
// registry.get<TH1>(HIST("Reco/nPVContributors"))->Fill(pvContributors.size(), 1.);
1551-
// ROOT::Math::PxPyPzMVector vphi;
1552-
// ROOT::Math::PxPyPzMVector vkstar;
15531552
ROOT::Math::PxPyPzMVector v0;
15541553
ROOT::Math::PxPyPzMVector vr0;
15551554
ROOT::Math::PxPyPzMVector vr1;

0 commit comments

Comments
 (0)