Skip to content

Commit 2f6683f

Browse files
committed
adding histos to check PDG code of mother
1 parent 845f580 commit 2f6683f

File tree

1 file changed

+43
-15
lines changed

1 file changed

+43
-15
lines changed

PWGLF/Tasks/Resonances/k892analysispbpb.cxx

Lines changed: 43 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,9 @@ struct K892analysispbpb {
6969
Configurable<int> cPIDBins{"cPIDBins", 65, "PID binning"};
7070
Configurable<float> cPIDQALimit{"cPIDQALimit", 6.5, "PID QA limit"};
7171
Configurable<int> cDCABins{"cDCABins", 300, "DCA binning"};
72-
72+
Configurable<int> cPDGbins{"cPDGBins", 5000, "number of PDG bins"};
73+
Configurable<float> cPDGMax{"cPDGMax", 9500000.0f, "PDG limit"};
74+
7375
// events
7476
Configurable<float> cfgCutVertex{"cfgCutVertex", 10.0f, "Accepted z-vertex range"};
7577
Configurable<bool> timFrameEvsel{"timFrameEvsel", false, "TPC Time frame boundary cut"};
@@ -154,6 +156,7 @@ struct K892analysispbpb {
154156
AxisSpec ptAxisDau = {binsPtQA, "Dau #it{p}_{T} (GeV/#it{c})"};
155157
AxisSpec invMassAxis = {cInvMassBins, cInvMassStart, cInvMassEnd, "Invariant Mass (GeV/#it{c}^2)"};
156158
AxisSpec pidQAAxis = {cPIDBins, -cPIDQALimit, cPIDQALimit};
159+
AxisSpec pdgCodeAxis = {cPDGbins, 0, cPDGMax};
157160

158161
if ((!doprocessMC && !doprocessMCRun2) || doprocessMixedEventMC || doprocessMixedEventMCRun2) {
159162
// event histograms
@@ -297,10 +300,17 @@ struct K892analysispbpb {
297300
histos.add("h3PtRecvsPtGenAnti" ,"reconstructed K* Pt vs generated K* pt", kTH3F, {centAxis, ptAxis, ptAxis});
298301
histos.add("h3PtRecvsPtGen" ,"reconstructed Anti-K* Pt vs generated Anti-K* pt", kTH3F, {centAxis, ptAxis, ptAxis});
299302

300-
histos.add("h3k892invmassWrongDaughters_DS", "Invariant mass of K*0 with wrong daughters DS", kTH3F, {centAxis, ptAxis, invMassAxis});
303+
histos.add("h3k892invmassWrongDaughters_DS", "Invariant mass of K*0 with wrong daughters DS", kTH3F, {centAxis, ptAxis, invMassAxis});
301304
histos.add("h3k892invmassWrongDaughters_DSAnti", "Invariant mass of K*0 with wrong daughters DS anti", kTH3F, {centAxis, ptAxis, invMassAxis});
302-
histos.add("h3k892invmassRightDaughters_DS", "Invariant mass of K*0 with right daughters DS", kTH3F, {centAxis, ptAxis, invMassAxis});
305+
histos.add("h3k892invmassRightDaughters_DS", "Invariant mass of K*0 with right daughters DS", kTH3F, {centAxis, ptAxis, invMassAxis});
303306
histos.add("h3k892invmassRightDaughters_DSAnti", "Invariant mass of K*0 with right daughters DS anti", kTH3F, {centAxis, ptAxis, invMassAxis});
307+
308+
309+
histos.add("h3k892invmassSameMother_DS", "Invariant mass same mother DS", kTH3F, {centAxis, ptAxis, invMassAxis});
310+
histos.add("h3k892invmassSameMother_DSAnti", "Invariant mass same mother DS anti", kTH3F, {centAxis, ptAxis, invMassAxis});
311+
histos.add("h3PdgCodeSameMother_DS", "PDG code same mother DS", kTH3F, {centAxis, ptAxis, pdgCodeAxis});
312+
histos.add("h3PdgCodeSameMother_DSAnti", "PDG code same mother DS anti", kTH3F, {centAxis, ptAxis, pdgCodeAxis});
313+
304314
}
305315

306316
// Print output histograms statistics
@@ -686,15 +696,24 @@ struct K892analysispbpb {
686696

687697
if constexpr (!IsMix) {
688698

689-
bool ismotherok = false;
690-
int pdgcodeMother = -999;
691-
auto ptmother = -9999;
699+
bool isSameMother = false;
700+
bool isMotherOk = false;
701+
int pdgCodeMother = -999;
702+
auto ptMother = -9999;
692703
for (const auto& mothertrack1 : mctrack1.template mothers_as<aod::McParticles>()) {
693704
for (const auto& mothertrack2 : mctrack2.template mothers_as<aod::McParticles>()) {
694705
if (mothertrack1.pdgCode() != mothertrack2.pdgCode())
695706
continue;
696707
if (mothertrack1.globalIndex() != mothertrack2.globalIndex())
697708
continue;
709+
710+
if (std::abs(mothertrack1.pdgCode() == 1000822080)) //Pb PDG code
711+
continue;
712+
713+
pdgCodeMother = mothertrack1.pdgCode();
714+
ptMother = mothertrack1.pt();
715+
isSameMother = true;
716+
698717
if (std::abs(mothertrack1.pdgCode()) != 313)
699718
continue;
700719

@@ -703,13 +722,22 @@ struct K892analysispbpb {
703722
continue;
704723
}
705724
oldindex = mothertrack1.globalIndex();
706-
pdgcodeMother = mothertrack1.pdgCode();
707-
ptmother = mothertrack1.pt();
708-
ismotherok = true;
725+
isMotherOk = true;
709726
}
710727
}
711728

712-
if (!ismotherok)
729+
730+
if(isSameMother) {
731+
if (track1Sign < 0) {
732+
histos.fill(HIST("h3k892invmassSameMother_DS"), multiplicity, lResonance.Pt(), lResonance.M());
733+
histos.fill(HIST("h3PdgCodeSameMother_DS"), multiplicity, lResonance.Pt(), pdgCodeMother);
734+
} else if (track1Sign > 0) {
735+
histos.fill(HIST("h3k892invmassSameMother_DSAnti"), multiplicity, lResonance.Pt(), lResonance.M());
736+
histos.fill(HIST("h3PdgCodeSameMother_DSAnti"), multiplicity, lResonance.Pt(), pdgCodeMother);
737+
}
738+
}
739+
740+
if (!isMotherOk)
713741
continue;
714742

715743
histos.fill(HIST("QAMCTrue/hGlobalIndexMotherRec"), oldindex);
@@ -724,18 +752,18 @@ struct K892analysispbpb {
724752
}
725753

726754
// MC histograms
727-
if (pdgcodeMother > 0) {
755+
if (pdgCodeMother > 0) {
728756
histos.fill(HIST("k892Rec"), lResonance.Pt(), multiplicity);
729757
histos.fill(HIST("k892Recinvmass"), lResonance.M());
730758
histos.fill(HIST("h3Reck892invmass"), multiplicity, lResonance.Pt(), lResonance.M());
731-
histos.fill(HIST("h3Reck892invmassPtGen"), multiplicity, ptmother, lResonance.M());
732-
histos.fill(HIST("h3PtRecvsPtGen"), multiplicity, lResonance.Pt(), ptmother);
759+
histos.fill(HIST("h3Reck892invmassPtGen"), multiplicity, ptMother, lResonance.M());
760+
histos.fill(HIST("h3PtRecvsPtGen"), multiplicity, lResonance.Pt(), ptMother);
733761
} else {
734762
histos.fill(HIST("k892RecAnti"), lResonance.Pt(), multiplicity);
735763
histos.fill(HIST("k892RecinvmassAnti"), lResonance.M());
736764
histos.fill(HIST("h3Reck892invmassAnti"), multiplicity, lResonance.Pt(), lResonance.M());
737-
histos.fill(HIST("h3Reck892invmassAntiPtGen"), multiplicity, ptmother, lResonance.M());
738-
histos.fill(HIST("h3PtRecvsPtGenAnti"), multiplicity, lResonance.Pt(), ptmother);
765+
histos.fill(HIST("h3Reck892invmassAntiPtGen"), multiplicity, ptMother, lResonance.M());
766+
histos.fill(HIST("h3PtRecvsPtGenAnti"), multiplicity, lResonance.Pt(), ptMother);
739767
}
740768
}
741769
} // end of IsMC

0 commit comments

Comments
 (0)