@@ -87,7 +87,6 @@ struct FlowGfwOmegaXi {
8787
8888 O2_DEFINE_CONFIGURABLE (cfgCutVertex, float , 10 .0f , " Accepted z-vertex range" )
8989 O2_DEFINE_CONFIGURABLE (cfgCutChi2prTPCcls, float , 2.5 , " Chi2 per TPC clusters" )
90- O2_DEFINE_CONFIGURABLE (cfgCutOccupancyHigh, int , 500 , " High cut on TPC occupancy" )
9190 O2_DEFINE_CONFIGURABLE (cfgMassBins, std::vector<int >, (std::vector<int >{80 , 32 , 14 , 16 }), " Number of K0s, Lambda, Xi, Omega mass axis bins for c22" )
9291 O2_DEFINE_CONFIGURABLE (cfgDeltaPhiLocDen, int , 3 , " Number of delta phi for local density, 200 bins in 2 pi" )
9392
@@ -142,6 +141,20 @@ struct FlowGfwOmegaXi {
142141 O2_DEFINE_CONFIGURABLE (cfgCheckGlobalTrack, bool , false , " check global track" )
143142 } trkQualityOpts;
144143
144+ struct : ConfigurableGroup {
145+ std::string prefix = " evtSelOpts" ;
146+ O2_DEFINE_CONFIGURABLE (cfgDoTVXinTRD, bool , true , " check kTVXinTRD" )
147+ O2_DEFINE_CONFIGURABLE (cfgDoNoTimeFrameBorder, bool , true , " check kNoTimeFrameBorder" )
148+ O2_DEFINE_CONFIGURABLE (cfgDoNoITSROFrameBorder, bool , true , " check kNoITSROFrameBorder" )
149+ O2_DEFINE_CONFIGURABLE (cfgDoNoSameBunchPileup, bool , true , " check kNoITSROFrameBorder" )
150+ O2_DEFINE_CONFIGURABLE (cfgDoIsGoodZvtxFT0vsPV, bool , true , " check kIsGoodZvtxFT0vsPV" )
151+ O2_DEFINE_CONFIGURABLE (cfgDoNoCollInTimeRangeStandard, bool , true , " check kNoCollInTimeRangeStandard" )
152+ O2_DEFINE_CONFIGURABLE (cfgDoIsGoodITSLayersAll, bool , true , " check kIsGoodITSLayersAll" )
153+ O2_DEFINE_CONFIGURABLE (cfgCutOccupancyHigh, int , 500 , " High cut on TPC occupancy" )
154+ O2_DEFINE_CONFIGURABLE (cfgMultPVCut, int , 5 , " Use apassX MultPVCut function or not (-1)" )
155+ O2_DEFINE_CONFIGURABLE (cfgDoV0AT0Acut, bool , true , " do V0A-T0A cut" )
156+ } evtSeleOpts;
157+
145158 O2_DEFINE_CONFIGURABLE (cfgCasc_rapidity, float , 0.5 , " rapidity" )
146159 O2_DEFINE_CONFIGURABLE (cfgNSigmapid, std::vector<float >, (std::vector<float >{9 , 9 , 9 , 3 , 3 , 3 , 3 , 3 , 3 }), " tpc, tof and its NSigma for Pion Proton Kaon" )
147160 O2_DEFINE_CONFIGURABLE (cfgAcceptancePath, std::vector<std::string>, (std::vector<std::string>{" Users/f/fcui/NUA/NUAREFPartical" , " Users/f/fcui/NUA/NUAK0s" , " Users/f/fcui/NUA/NUALambda" , " Users/f/fcui/NUA/NUAXi" , " Users/f/fcui/NUA/NUAOmega" }), " CCDB path to acceptance object" )
@@ -158,9 +171,7 @@ struct FlowGfwOmegaXi {
158171 O2_DEFINE_CONFIGURABLE (cfgOutputCasc, bool , true , " Fill and output cascades flow" )
159172 O2_DEFINE_CONFIGURABLE (cfgOutputNUAWeights, bool , false , " Fill and output NUA weights" )
160173 O2_DEFINE_CONFIGURABLE (cfgOutputLocDenWeights, bool , false , " Fill and output local density weights" )
161- O2_DEFINE_CONFIGURABLE (cfgDoV0AT0Acut, bool , false , " do V0A-T0A cut" )
162174 O2_DEFINE_CONFIGURABLE (cfgOutputQA, bool , false , " do QA" )
163- O2_DEFINE_CONFIGURABLE (cfgMultPVCut, int , 5 , " Use apassX MultPVCut function or not" )
164175
165176 ConfigurableAxis cfgaxisVertex{" cfgaxisVertex" , {20 , -10 , 10 }, " vertex axis for histograms" };
166177 ConfigurableAxis cfgaxisPhi{" cfgaxisPhi" , {60 , 0.0 , constants::math::TwoPI}, " phi axis for histograms" };
@@ -302,15 +313,20 @@ struct FlowGfwOmegaXi {
302313 registry.add (" hEtaPhiVtxzPOIOmega" , " " , {HistType::kTH3D , {cfgaxisPhi, cfgaxisEta, {20 , -10 , 10 }}});
303314 registry.add (" hEtaPhiVtxzPOIK0s" , " " , {HistType::kTH3D , {cfgaxisPhi, cfgaxisEta, {20 , -10 , 10 }}});
304315 registry.add (" hEtaPhiVtxzPOILambda" , " " , {HistType::kTH3D , {cfgaxisPhi, cfgaxisEta, {20 , -10 , 10 }}});
305- registry.add (" hEventCount" , " " , {HistType::kTH2D , {{4 , 0 , 4 }, {4 , 0 , 4 }}});
306- registry.get <TH2>(HIST (" hEventCount" ))->GetXaxis ()->SetBinLabel (1 , " Filtered event" );
307- registry.get <TH2>(HIST (" hEventCount" ))->GetXaxis ()->SetBinLabel (2 , " after sel8" );
308- registry.get <TH2>(HIST (" hEventCount" ))->GetXaxis ()->SetBinLabel (3 , " before topological cut" );
309- registry.get <TH2>(HIST (" hEventCount" ))->GetXaxis ()->SetBinLabel (4 , " after topological cut" );
310- registry.get <TH2>(HIST (" hEventCount" ))->GetYaxis ()->SetBinLabel (1 , " K0s" );
311- registry.get <TH2>(HIST (" hEventCount" ))->GetYaxis ()->SetBinLabel (2 , " Lambda" );
312- registry.get <TH2>(HIST (" hEventCount" ))->GetYaxis ()->SetBinLabel (3 , " XiMinus" );
313- registry.get <TH2>(HIST (" hEventCount" ))->GetYaxis ()->SetBinLabel (4 , " Omega" );
316+
317+ registry.add (" hEventCount" , " " , {HistType::kTH1D , {{12 , 0 , 12 }}});
318+ registry.get <TH1>(HIST (" hEventCount" ))->GetXaxis ()->SetBinLabel (1 , " Filtered event" );
319+ registry.get <TH1>(HIST (" hEventCount" ))->GetXaxis ()->SetBinLabel (2 , " after sel8" );
320+ registry.get <TH1>(HIST (" hEventCount" ))->GetXaxis ()->SetBinLabel (3 , " after kTVXinTRD" );
321+ registry.get <TH1>(HIST (" hEventCount" ))->GetXaxis ()->SetBinLabel (4 , " after kNoTimeFrameBorder" );
322+ registry.get <TH1>(HIST (" hEventCount" ))->GetXaxis ()->SetBinLabel (5 , " after kNoITSROFrameBorder" );
323+ registry.get <TH1>(HIST (" hEventCount" ))->GetXaxis ()->SetBinLabel (6 , " after kDoNoSameBunchPileup" );
324+ registry.get <TH1>(HIST (" hEventCount" ))->GetXaxis ()->SetBinLabel (7 , " after kIsGoodZvtxFT0vsPV" );
325+ registry.get <TH1>(HIST (" hEventCount" ))->GetXaxis ()->SetBinLabel (8 , " after kNoCollInTimeRangeStandard" );
326+ registry.get <TH1>(HIST (" hEventCount" ))->GetXaxis ()->SetBinLabel (9 , " after kIsGoodITSLayersAll" );
327+ registry.get <TH1>(HIST (" hEventCount" ))->GetXaxis ()->SetBinLabel (10 , " after MultPVCut" );
328+ registry.get <TH1>(HIST (" hEventCount" ))->GetXaxis ()->SetBinLabel (11 , " after TPC occupancy cut" );
329+ registry.get <TH1>(HIST (" hEventCount" ))->GetXaxis ()->SetBinLabel (12 , " after V0AT0Acut" );
314330
315331 // QA
316332 if (cfgOutputQA) {
@@ -520,13 +536,13 @@ struct FlowGfwOmegaXi {
520536 // used for event selection
521537 int caseapass4 = 4 ;
522538 int caseapass5 = 5 ;
523- if (cfgMultPVCut == caseapass4) {
539+ if (evtSeleOpts. cfgMultPVCut . value == caseapass4) {
524540 fMultPVCutLow = new TF1 (" fMultPVCutLow" , " [0]+[1]*x+[2]*x*x+[3]*x*x*x+[4]*x*x*x*x - 3.5*([5]+[6]*x+[7]*x*x+[8]*x*x*x+[9]*x*x*x*x)" , 0 , 100 );
525541 fMultPVCutLow ->SetParameters (3257.29 , -121.848 , 1.98492 , -0.0172128 , 6.47528e-05 , 154.756 , -1.86072 , -0.0274713 , 0.000633499 , -3.37757e-06 );
526542 fMultPVCutHigh = new TF1 (" fMultPVCutHigh" , " [0]+[1]*x+[2]*x*x+[3]*x*x*x+[4]*x*x*x*x + 3.5*([5]+[6]*x+[7]*x*x+[8]*x*x*x+[9]*x*x*x*x)" , 0 , 100 );
527543 fMultPVCutHigh ->SetParameters (3257.29 , -121.848 , 1.98492 , -0.0172128 , 6.47528e-05 , 154.756 , -1.86072 , -0.0274713 , 0.000633499 , -3.37757e-06 );
528544 }
529- if (cfgMultPVCut == caseapass5) {
545+ if (evtSeleOpts. cfgMultPVCut . value == caseapass5) {
530546 fMultPVCutLow = new TF1 (" fMultPVCutLow" , " [0]+[1]*x+[2]*x*x+[3]*x*x*x+[4]*x*x*x*x - 3.5*([5]+[6]*x+[7]*x*x+[8]*x*x*x+[9]*x*x*x*x)" , 0 , 100 );
531547 fMultPVCutLow ->SetParameters (3074.43 , -106.192 , 1.46176 , -0.00968364 , 2.61923e-05 , 182.128 , -7.43492 , 0.193901 , -0.00256715 , 1.22594e-05 );
532548 fMultPVCutHigh = new TF1 (" fMultPVCutHigh" , " [0]+[1]*x+[2]*x*x+[3]*x*x*x+[4]*x*x*x*x + 3.5*([5]+[6]*x+[7]*x*x+[8]*x*x*x+[9]*x*x*x*x)" , 0 , 100 );
@@ -785,38 +801,45 @@ struct FlowGfwOmegaXi {
785801 template <typename TCollision>
786802 bool eventSelected (TCollision collision, const float centrality)
787803 {
788- if (collision.alias_bit (kTVXinTRD )) {
804+ if (evtSeleOpts. cfgDoTVXinTRD . value && collision.alias_bit (kTVXinTRD )) {
789805 // TRD triggered
790806 return false ;
791807 }
792- if (!collision.selection_bit (o2::aod::evsel::kNoTimeFrameBorder )) {
808+ registry.fill (HIST (" hEventCount" ), 2.5 );
809+ if (evtSeleOpts.cfgDoNoTimeFrameBorder .value && !collision.selection_bit (o2::aod::evsel::kNoTimeFrameBorder )) {
793810 // reject collisions close to Time Frame borders
794811 // https://its.cern.ch/jira/browse/O2-4623
795812 return false ;
796813 }
797- if (!collision.selection_bit (o2::aod::evsel::kNoITSROFrameBorder )) {
814+ registry.fill (HIST (" hEventCount" ), 3.5 );
815+ if (evtSeleOpts.cfgDoNoITSROFrameBorder .value && !collision.selection_bit (o2::aod::evsel::kNoITSROFrameBorder )) {
798816 // reject events affected by the ITS ROF border
799817 // https://its.cern.ch/jira/browse/O2-4309
800818 return false ;
801819 }
802- if (!collision.selection_bit (o2::aod::evsel::kNoSameBunchPileup )) {
820+ registry.fill (HIST (" hEventCount" ), 4.5 );
821+ if (evtSeleOpts.cfgDoNoSameBunchPileup .value && !collision.selection_bit (o2::aod::evsel::kNoSameBunchPileup )) {
803822 // rejects collisions which are associated with the same "found-by-T0" bunch crossing
804823 // https://indico.cern.ch/event/1396220/#1-event-selection-with-its-rof
805824 return false ;
806825 }
807- if (!collision.selection_bit (o2::aod::evsel::kIsGoodZvtxFT0vsPV )) {
826+ registry.fill (HIST (" hEventCount" ), 5.5 );
827+ if (evtSeleOpts.cfgDoIsGoodZvtxFT0vsPV .value && !collision.selection_bit (o2::aod::evsel::kIsGoodZvtxFT0vsPV )) {
808828 // removes collisions with large differences between z of PV by tracks and z of PV from FT0 A-C time difference
809829 // use this cut at low multiplicities with caution
810830 return false ;
811831 }
812- if (!collision.selection_bit (o2::aod::evsel::kNoCollInTimeRangeStandard )) {
832+ registry.fill (HIST (" hEventCount" ), 6.5 );
833+ if (evtSeleOpts.cfgDoNoCollInTimeRangeStandard .value && !collision.selection_bit (o2::aod::evsel::kNoCollInTimeRangeStandard )) {
813834 // no collisions in specified time range
814835 return 0 ;
815836 }
816- if (!collision.selection_bit (o2::aod::evsel::kIsGoodITSLayersAll )) {
837+ registry.fill (HIST (" hEventCount" ), 7.5 );
838+ if (evtSeleOpts.cfgDoIsGoodITSLayersAll .value && !collision.selection_bit (o2::aod::evsel::kIsGoodITSLayersAll )) {
817839 // cut time intervals with dead ITS staves
818840 return 0 ;
819841 }
842+ registry.fill (HIST (" hEventCount" ), 8.5 );
820843 float vtxz = -999 ;
821844 if (collision.numContrib () > 1 ) {
822845 vtxz = collision.posZ ();
@@ -833,21 +856,25 @@ struct FlowGfwOmegaXi {
833856 return false ;
834857 int caseapass4 = 4 ;
835858 int caseapass5 = 5 ;
836- if (cfgMultPVCut == caseapass4 || cfgMultPVCut == caseapass5) {
859+ if (evtSeleOpts. cfgMultPVCut . value == caseapass4 || evtSeleOpts. cfgMultPVCut . value == caseapass5) {
837860 if (multNTracksPV < fMultPVCutLow ->Eval (centrality))
838861 return false ;
839862 if (multNTracksPV > fMultPVCutHigh ->Eval (centrality))
840863 return false ;
841864 }
842- if (occupancy > cfgCutOccupancyHigh)
865+ registry.fill (HIST (" hEventCount" ), 9.5 );
866+
867+ if (occupancy > evtSeleOpts.cfgCutOccupancyHigh .value )
843868 return 0 ;
869+ registry.fill (HIST (" hEventCount" ), 10.5 );
844870
845871 // V0A T0A 5 sigma cut
846- if (cfgDoV0AT0Acut) {
872+ if (evtSeleOpts. cfgDoV0AT0Acut . value ) {
847873 int nsigma = 5 ;
848874 if (std::fabs (collision.multFV0A () - fT0AV0AMean ->Eval (collision.multFT0A ())) > nsigma * fT0AV0ASigma ->Eval (collision.multFT0A ()))
849875 return 0 ;
850876 }
877+ registry.fill (HIST (" hEventCount" ), 11.5 );
851878
852879 return true ;
853880 }
@@ -856,18 +883,14 @@ struct FlowGfwOmegaXi {
856883 {
857884 o2::aod::ITSResponse itsResponse;
858885 int nTot = tracks.size ();
859- int candNumAll[4 ] = {0 , 0 , 0 , 0 };
860- int candNum[4 ] = {0 , 0 , 0 , 0 };
861- int nspecies = 5 ;
862- for (int i = 0 ; i < nspecies - 1 ; i++) {
863- registry.fill (HIST (" hEventCount" ), 0.5 , i + 0.5 );
864- }
886+ registry.fill (HIST (" hEventCount" ), 0.5 );
865887 if (nTot < 1 )
866888 return ;
867889 fGFW ->Clear ();
868890 const auto cent = collision.centFT0C ();
869891 if (!collision.sel8 ())
870892 return ;
893+ registry.fill (HIST (" hEventCount" ), 1.5 );
871894 if (eventSelected (collision, cent))
872895 return ;
873896 TH1D* hLocalDensity = new TH1D (" hphi" , " hphi" , 400 , -constants::math::TwoPI, constants::math::TwoPI);
@@ -877,9 +900,6 @@ struct FlowGfwOmegaXi {
877900 registry.fill (HIST (" hVtxZ" ), vtxz);
878901 registry.fill (HIST (" hMult" ), nTot);
879902 registry.fill (HIST (" hCent" ), cent);
880- for (int i = 0 ; i < nspecies - 1 ; i++) {
881- registry.fill (HIST (" hEventCount" ), 1.5 , i + 0.5 );
882- }
883903
884904 float weff = 1 ;
885905 float wacc = 1 ;
@@ -944,7 +964,6 @@ struct FlowGfwOmegaXi {
944964 ((std::fabs (itsResponse.nSigmaITS <o2::track::PID::Pion>(v0posdau)) < cfgNSigma[6 ]) || v0posdau.pt () < lowpt) && ((std::fabs (itsResponse.nSigmaITS <o2::track::PID::Pion>(v0negdau)) < cfgNSigma[6 ]) || v0negdau.pt () < lowpt)) {
945965 registry.fill (HIST (" InvMassK0s_all" ), v0.pt (), v0.mK0Short (), v0.eta (), cent);
946966 isK0s = true ;
947- candNumAll[0 ] = candNumAll[0 ] + 1 ;
948967 if (cfgOutputQA) {
949968 registry.fill (HIST (" QAhisto/V0/hqaarm_podoafter" ), v0.alpha (), v0.qtarm ());
950969 }
@@ -958,14 +977,12 @@ struct FlowGfwOmegaXi {
958977 ((std::fabs (itsResponse.nSigmaITS <o2::track::PID::Proton>(v0posdau)) < cfgNSigma[7 ]) || v0posdau.pt () < lowpt) && ((std::fabs (itsResponse.nSigmaITS <o2::track::PID::Pion>(v0negdau)) < cfgNSigma[6 ]) || v0negdau.pt () < lowpt)) {
959978 registry.fill (HIST (" InvMassLambda_all" ), v0.pt (), v0.mLambda (), v0.eta (), cent);
960979 isLambda = true ;
961- candNumAll[1 ] = candNumAll[1 ] + 1 ;
962980 } else if (std::fabs (v0.mLambda () - o2::constants::physics::MassLambda) < v0BuilderOpts.cfgv0_mlambdawindow .value &&
963981 (std::fabs (v0negdau.tpcNSigmaPr ()) < cfgNSigma[1 ] && std::fabs (v0posdau.tpcNSigmaPi ()) < cfgNSigma[0 ]) &&
964982 ((std::fabs (v0negdau.tofNSigmaPr ()) < cfgNSigma[4 ] || v0negdau.pt () < lowpt) && (std::fabs (v0posdau.tofNSigmaPi ()) < cfgNSigma[3 ] || v0posdau.pt () < lowpt)) &&
965983 ((std::fabs (itsResponse.nSigmaITS <o2::track::PID::Proton>(v0posdau)) < cfgNSigma[7 ]) || v0posdau.pt () < lowpt) && ((std::fabs (itsResponse.nSigmaITS <o2::track::PID::Pion>(v0negdau)) < cfgNSigma[6 ]) || v0negdau.pt () < lowpt)) {
966984 registry.fill (HIST (" InvMassLambda_all" ), v0.pt (), v0.mLambda (), v0.eta (), cent);
967985 isLambda = true ;
968- candNumAll[1 ] = candNumAll[1 ] + 1 ;
969986 }
970987 }
971988 // fill QA before cut
@@ -1028,7 +1045,6 @@ struct FlowGfwOmegaXi {
10281045 if (cfgOutputLocDenWeights)
10291046 registry.fill (HIST (" MC/densityMCRecK0s" ), v0.pt (), nch, density, v0.mK0Short ());
10301047 }
1031- candNum[0 ] = candNum[0 ] + 1 ;
10321048 registry.fill (HIST (" InvMassK0s" ), v0.pt (), v0.mK0Short (), v0.eta (), cent);
10331049 registry.fill (HIST (" hEtaPhiVtxzPOIK0s" ), v0.phi (), v0.eta (), vtxz, wacc);
10341050 fGFW ->Fill (v0.eta (), fK0sPtAxis ->FindBin (v0.pt ()) - 1 + ((fK0sMass ->FindBin (v0.mK0Short ()) - 1 ) * nK0sPtBins), v0.phi (), wacc * weff * wloc, 8 );
@@ -1046,7 +1062,6 @@ struct FlowGfwOmegaXi {
10461062 if (cfgOutputLocDenWeights)
10471063 registry.fill (HIST (" MC/densityMCRecLambda" ), v0.pt (), nch, density, v0.mLambda ());
10481064 }
1049- candNum[1 ] = candNum[1 ] + 1 ;
10501065 registry.fill (HIST (" InvMassLambda" ), v0.pt (), v0.mLambda (), v0.eta (), cent);
10511066 registry.fill (HIST (" hEtaPhiVtxzPOILambda" ), v0.phi (), v0.eta (), vtxz, wacc);
10521067 fGFW ->Fill (v0.eta (), fK0sPtAxis ->FindBin (v0.pt ()) - 1 + ((fLambdaMass ->FindBin (v0.mLambda ()) - 1 ) * nK0sPtBins), v0.phi (), wacc * weff * wloc, 16 );
@@ -1081,14 +1096,12 @@ struct FlowGfwOmegaXi {
10811096 ((std::fabs (itsResponse.nSigmaITS <o2::track::PID::Kaon>(bachelor)) < cfgNSigma[8 ]) || bachelor.pt () < lowpt) && ((std::fabs (itsResponse.nSigmaITS <o2::track::PID::Proton>(posdau)) < cfgNSigma[7 ]) || posdau.pt () < lowpt) && ((std::fabs (itsResponse.nSigmaITS <o2::track::PID::Pion>(negdau)) < cfgNSigma[6 ]) || negdau.pt () < lowpt)) {
10821097 registry.fill (HIST (" InvMassOmega_all" ), casc.pt (), casc.mOmega (), casc.eta (), cent);
10831098 isOmega = true ;
1084- candNumAll[3 ] = candNumAll[3 ] + 1 ;
10851099 } else if (casc.sign () > 0 && std::fabs (casc.yOmega ()) < cfgCasc_rapidity &&
10861100 (std::fabs (bachelor.tpcNSigmaKa ()) < cfgNSigma[2 ] && std::fabs (negdau.tpcNSigmaPr ()) < cfgNSigma[1 ] && std::fabs (posdau.tpcNSigmaPi ()) < cfgNSigma[0 ]) &&
10871101 ((std::fabs (bachelor.tofNSigmaKa ()) < cfgNSigma[5 ] || bachelor.pt () < lowpt) && (std::fabs (negdau.tofNSigmaPr ()) < cfgNSigma[4 ] || negdau.pt () < lowpt) && (std::fabs (posdau.tofNSigmaPi ()) < cfgNSigma[3 ] || posdau.pt () < lowpt)) &&
10881102 ((std::fabs (itsResponse.nSigmaITS <o2::track::PID::Kaon>(bachelor)) < cfgNSigma[8 ]) || bachelor.pt () < lowpt) && ((std::fabs (itsResponse.nSigmaITS <o2::track::PID::Proton>(posdau)) < cfgNSigma[7 ]) || posdau.pt () < lowpt) && ((std::fabs (itsResponse.nSigmaITS <o2::track::PID::Pion>(negdau)) < cfgNSigma[6 ]) || negdau.pt () < lowpt)) {
10891103 registry.fill (HIST (" InvMassOmega_all" ), casc.pt (), casc.mOmega (), casc.eta (), cent);
10901104 isOmega = true ;
1091- candNumAll[3 ] = candNumAll[3 ] + 1 ;
10921105 }
10931106 }
10941107 // Xi and antiXi
@@ -1099,14 +1112,12 @@ struct FlowGfwOmegaXi {
10991112 ((std::fabs (itsResponse.nSigmaITS <o2::track::PID::Pion>(bachelor)) < cfgNSigma[6 ]) || bachelor.pt () < lowpt) && ((std::fabs (itsResponse.nSigmaITS <o2::track::PID::Proton>(posdau)) < cfgNSigma[7 ]) || posdau.pt () < lowpt) && ((std::fabs (itsResponse.nSigmaITS <o2::track::PID::Pion>(negdau)) < cfgNSigma[6 ]) || negdau.pt () < lowpt)) {
11001113 registry.fill (HIST (" InvMassXi_all" ), casc.pt (), casc.mXi (), casc.eta (), cent);
11011114 isXi = true ;
1102- candNumAll[2 ] = candNumAll[2 ] + 1 ;
11031115 } else if (casc.sign () > 0 && std::fabs (casc.yXi ()) < cfgCasc_rapidity &&
11041116 (std::fabs (bachelor.tpcNSigmaPi ()) < cfgNSigma[0 ] && std::fabs (negdau.tpcNSigmaPr ()) < cfgNSigma[1 ] && std::fabs (posdau.tpcNSigmaPi ()) < cfgNSigma[0 ]) &&
11051117 ((std::fabs (bachelor.tofNSigmaPi ()) < cfgNSigma[3 ] || bachelor.pt () < lowpt) && (std::fabs (negdau.tofNSigmaPr ()) < cfgNSigma[4 ] || negdau.pt () < lowpt) && (std::fabs (posdau.tofNSigmaPi ()) < cfgNSigma[3 ] || posdau.pt () < lowpt)) &&
11061118 ((std::fabs (itsResponse.nSigmaITS <o2::track::PID::Pion>(bachelor)) < cfgNSigma[6 ]) || bachelor.pt () < lowpt) && ((std::fabs (itsResponse.nSigmaITS <o2::track::PID::Proton>(posdau)) < cfgNSigma[7 ]) || posdau.pt () < lowpt) && ((std::fabs (itsResponse.nSigmaITS <o2::track::PID::Pion>(negdau)) < cfgNSigma[6 ]) || negdau.pt () < lowpt)) {
11071119 registry.fill (HIST (" InvMassXi_all" ), casc.pt (), casc.mXi (), casc.eta (), cent);
11081120 isXi = true ;
1109- candNumAll[2 ] = candNumAll[2 ] + 1 ;
11101121 }
11111122 }
11121123 // fill QA
@@ -1186,7 +1197,6 @@ struct FlowGfwOmegaXi {
11861197 if (cfgOutputLocDenWeights)
11871198 registry.fill (HIST (" MC/densityMCRecOmega" ), casc.pt (), nch, density, casc.mOmega ());
11881199 }
1189- candNum[3 ] = candNum[3 ] + 1 ;
11901200 registry.fill (HIST (" hEtaPhiVtxzPOIOmega" ), casc.phi (), casc.eta (), vtxz, wacc);
11911201 registry.fill (HIST (" InvMassOmega" ), casc.pt (), casc.mOmega (), casc.eta (), cent);
11921202 fGFW ->Fill (casc.eta (), fOmegaPtAxis ->FindBin (casc.pt ()) - 1 + ((fOmegaMass ->FindBin (casc.mOmega ()) - 1 ) * nOmegaPtBins), casc.phi (), wacc * weff * wloc, 4 );
@@ -1204,7 +1214,6 @@ struct FlowGfwOmegaXi {
12041214 if (cfgOutputLocDenWeights)
12051215 registry.fill (HIST (" MC/densityMCRecXi" ), casc.pt (), nch, density, casc.mXi ());
12061216 }
1207- candNum[2 ] = candNum[2 ] + 1 ;
12081217 registry.fill (HIST (" hEtaPhiVtxzPOIXi" ), casc.phi (), casc.eta (), vtxz, wacc);
12091218 registry.fill (HIST (" InvMassXi" ), casc.pt (), casc.mXi (), casc.eta (), cent);
12101219 fGFW ->Fill (casc.eta (), fXiPtAxis ->FindBin (casc.pt ()) - 1 + ((fXiMass ->FindBin (casc.mXi ()) - 1 ) * nXiPtBins), casc.phi (), wacc * weff * wloc, 2 );
@@ -1214,14 +1223,6 @@ struct FlowGfwOmegaXi {
12141223 }
12151224 }
12161225
1217- for (int i = 0 ; i < nspecies - 1 ; i++) {
1218- if (candNumAll[i] > 0 ) {
1219- registry.fill (HIST (" hEventCount" ), 2.5 , i + 0.5 );
1220- }
1221- if (candNum[i] > 0 ) {
1222- registry.fill (HIST (" hEventCount" ), 3.5 , i + 0.5 );
1223- }
1224- }
12251226 delete hLocalDensity;
12261227 // Filling cumulant with ROOT TProfile and loop for all ptBins
12271228 fillProfile (corrconfigs.at (20 ), HIST (" c22" ), cent);
0 commit comments