@@ -121,12 +121,13 @@ struct nucleiFilter {
121121 struct : ConfigurableGroup {
122122 Configurable<double > d_bz_input{" trgH3L3Body.d_bz" , -999 , " bz field, -999 is automatic" };
123123 Configurable<float > minCosPA3body{" trgH3L3Body.minCosPA3body" , 0.9995 , " minCosPA3body" };
124- Configurable<float > dcavtxdau{" trgH3L3Body.dcavtxdau" , 0.04 , " meen DCA among Daughters" };
124+ Configurable<float > dcavtxdau{" trgH3L3Body.dcavtxdau" , 0.02 , " meen DCA among Daughters" };
125125 Configurable<float > dcapiontopv{" trgH3L3Body.dcapiontopv" , 0.05 , " DCA Pion To PV" };
126126 Configurable<float > tofPIDNSigmaMin{" trgH3L3Body.tofPIDNSigmaMin" , -5 , " tofPIDNSigmaMin" };
127127 Configurable<float > tofPIDNSigmaMax{" trgH3L3Body.tofPIDNSigmaMax" , 5 , " tofPIDNSigmaMax" };
128128 Configurable<float > tpcPIDNSigmaCut{" trgH3L3Body.tpcPIDNSigmaCut" , 5 , " tpcPIDNSigmaCut" };
129129 Configurable<float > lifetimecut{" trgH3L3Body.lifetimecut" , 40 ., " lifetimecut" };
130+ Configurable<float > minDaughtersEta{" trgH3L3Body.minDaughtersEta" , 1 .f , " minDaughtersEta" };
130131 Configurable<float > minProtonPt{" trgH3L3Body.minProtonPt" , 0.3 , " minProtonPt" };
131132 Configurable<float > maxProtonPt{" trgH3L3Body.maxProtonPt" , 5 , " maxProtonPt" };
132133 Configurable<float > minPionPt{" trgH3L3Body.minPionPt" , 0.1 , " minPionPt" };
@@ -136,7 +137,7 @@ struct nucleiFilter {
136137 Configurable<float > minDeuteronPUseTOF{" trgH3L3Body.minDeuteronPUseTOF" , 1 , " minDeuteronPt Enable TOF PID" };
137138 Configurable<float > h3LMassLowerlimit{" trgH3L3Body.h3LMassLowerlimit" , 2.96 , " Hypertriton mass lower limit" };
138139 Configurable<float > h3LMassUpperlimit{" trgH3L3Body.h3LMassUpperlimit" , 3.04 , " Hypertriton mass upper limit" };
139- Configurable<float > minP3Body{" trgH3L3Body.minP3Body" , 0 .5 , " min P3Body" };
140+ Configurable<float > minP3Body{" trgH3L3Body.minP3Body" , 1 .5 , " min P3Body" };
140141 Configurable<int > mintpcNClsproton{" trgH3L3Body.mintpcNClsproton" , 90 , " min tpc Nclusters for proton" };
141142 Configurable<int > mintpcNClspion{" trgH3L3Body.mintpcNClspion" , 70 , " min tpc Nclusters for pion" };
142143 Configurable<int > mintpcNClsdeuteron{" trgH3L3Body.mintpcNClsdeuteron" , 100 , " min tpc Nclusters for deuteron" };
@@ -173,6 +174,8 @@ struct nucleiFilter {
173174 qaHists.add (" fDeuTOFNsigma" , " Deuteron TOF Nsigma distribution" , HistType::kTH2F , {{1200 , -6 , 6 , " #it{p} (GeV/#it{c})" }, {2000 , -100 , 100 , " TOF n#sigma" }});
174175 qaHists.add (" fBachDeuTOFNsigma" , " Bachelor Deuteron TOF Nsigma distribution" , HistType::kTH2F , {{1200 , -6 , 6 , " #it{p} (GeV/#it{c})" }, {2000 , -100 , 100 , " TOF n#sigma" }});
175176 qaHists.add (" fH3LMassVsPt" , " Hypertrion mass Vs pT" , HistType::kTH2F , {{100 , 0 , 10 , " #it{p}_{T} (GeV/#it{c})" }, {80 , 2.96 , 3.04 , " Inv. Mass (GeV/c^{2})" }});
177+ qaHists.add (" fH3LDcaVsPt" , " DCA vs pT" , HistType::kTH2F , {{100 , 0 , 10 , " #it{p}_{T} (GeV/#it{c})" }, {100 , 0 , 0.05 , " DCA (cm)" }});
178+ qaHists.add (" fH3LCosPAVsPt" , " CosPA vs pT" , HistType::kTH2F , {{100 , 0 , 10 , " #it{p}_{T} (GeV/#it{c})" }, {100 , 0.999 , 1.0 , " CosPA" }});
176179 qaHists.add (" fExtremeIonisationITS" , " ITS clusters for extreme ionisation trigger" , HistType::kTH3F , {{4 , 3.5 , 7.5 , " Number of ITS clusters" }, {150 , 0 , 15 , " Average cluster size in ITS x cos#lambda" }, {100 , 0.1 , 10 , " #it{p} (GeV/#it{c})" }});
177180
178181 for (int iN{0 }; iN < nNuclei; ++iN) {
@@ -413,6 +416,10 @@ struct nucleiFilter {
413416 continue ;
414417 }
415418
419+ if (std::abs (track0.eta ()) > trgH3L3Body.minDaughtersEta || std::abs (track1.eta ()) > trgH3L3Body.minDaughtersEta || std::abs (track2.eta ()) > trgH3L3Body.minDaughtersEta ) {
420+ continue ;
421+ }
422+
416423 bool isProton = false , isPion = false , isAntiProton = false , isAntiPion = false ;
417424 if (std::abs (track0.tpcNSigmaPr ()) < std::abs (track0.tpcNSigmaPi ())) {
418425 if (track0.p () >= trgH3L3Body.minProtonPt && track0.p () <= trgH3L3Body.maxProtonPt ) {
@@ -500,7 +507,8 @@ struct nucleiFilter {
500507 continue ;
501508 }
502509
503- if (fitter3body.getChi2AtPCACandidate () > trgH3L3Body.dcavtxdau ) {
510+ float dcaDaughters = fitter3body.getChi2AtPCACandidate ();
511+ if (dcaDaughters > trgH3L3Body.dcavtxdau ) {
504512 continue ;
505513 }
506514
@@ -521,6 +529,8 @@ struct nucleiFilter {
521529 if (isProton && isAntiPion && std::abs (track1dca) >= trgH3L3Body.dcapiontopv ) {
522530 qaHists.fill (HIST (" fH3LMassVsPt" ), pt3B, invmassH3L);
523531 qaHists.fill (HIST (" fBachDeuTOFNsigma" ), track2.p () * track2.sign (), tofNSigmaDeuteron);
532+ qaHists.fill (HIST (" fH3LDcaVsPt" ), pt3B, dcaDaughters);
533+ qaHists.fill (HIST (" fH3LCosPAVsPt" ), pt3B, vtxCosPA);
524534 keepEvent[3 ] = true ;
525535 }
526536 }
@@ -529,6 +539,8 @@ struct nucleiFilter {
529539 if (isAntiProton && isPion && std::abs (track0dca) >= trgH3L3Body.dcapiontopv ) {
530540 qaHists.fill (HIST (" fH3LMassVsPt" ), pt3B, invmassAntiH3L);
531541 qaHists.fill (HIST (" fBachDeuTOFNsigma" ), track2.p () * track2.sign (), tofNSigmaDeuteron);
542+ qaHists.fill (HIST (" fH3LDcaVsPt" ), pt3B, dcaDaughters);
543+ qaHists.fill (HIST (" fH3LCosPAVsPt" ), pt3B, vtxCosPA);
532544 keepEvent[3 ] = true ;
533545 }
534546 }
0 commit comments