@@ -158,6 +158,7 @@ struct doubleOmegaTreeCreator {
158158 OutputObj<ZorroSummary> zorroSummary{" zorroSummary" };
159159
160160 Configurable<bool > cfgSkimmedProcessing{" cfgSkimmedProcessing" , false , " Skimmed dataset processing" };
161+ Configurable<bool > cfgApplyEventSelection{" cfgApplyEventSelection" , true , " Apply the standard collision event selection" };
161162 Configurable<std::string> ccdburl{" ccdb-url" , " http://alice-ccdb.cern.ch" , " url of the ccdb repository" };
162163 Configurable<int > cfgMaterialCorrection{" cfgMaterialCorrection" , static_cast <int >(o2::base::Propagator::MatCorrType::USEMatCorrLUT), " Material correction for the raw V0/cascade fits" };
163164
@@ -188,6 +189,7 @@ struct doubleOmegaTreeCreator {
188189 Configurable<float > mXiWindow {" mXiWindow" , 0 .02f , " Xi mass window used by the cascade compatibility mode" };
189190 Configurable<float > mOmegaWindow {" mOmegaWindow" , 0 .01f , " Omega mass window" };
190191 Configurable<float > mLambdaWindow {" mLambdaWindow" , 0 .01f , " Lambda mass window" };
192+ Configurable<float > maxDoubleOmegaMass{" maxDoubleOmegaMass" , 3 .6f , " Maximum double-Omega invariant mass (GeV/c^2)" };
191193 Configurable<float > minCosPAOmega{" minCosPAOmega" , -1 .f , " Minimum Omega cosPA relative to the double-Omega decay vertex" };
192194 Configurable<float > minCosPADirectLambda{" minCosPADirectLambda" , -1 .f , " Minimum direct-Lambda cosPA relative to the double-Omega decay vertex" };
193195 Configurable<float > minCosPADoubleOmega{" minCosPADoubleOmega" , -1 .f , " Minimum double-Omega cosPA relative to the primary vertex" };
@@ -586,16 +588,17 @@ struct doubleOmegaTreeCreator {
586588 cand.dcaZDirectLambdaToPV = dcaDirectLambda[1 ];
587589 cand.dcaXYDirectKaonToPV = dcaDirectKaon[0 ];
588590 cand.dcaZDirectKaonToPV = dcaDirectKaon[1 ];
591+ cand.mass = std::sqrt (std::max (0 .f , massSquared));
589592 if (cand.cosPAOmega < minCosPAOmega ||
590593 cand.cosPADirectLambda < minCosPADirectLambda ||
591594 cand.cosPADoubleOmega < minCosPADoubleOmega ||
592595 std::hypot (decayVertex[0 ], decayVertex[1 ]) < minDoubleOmegaDecayRadius ||
593596 std::abs (cand.dcaXYOmegaToPV ) < dcaOmegaToPV ||
594597 std::abs (cand.dcaXYDirectLambdaToPV ) < dcaDirectLambdaToPV ||
595- std::abs (cand.dcaXYDirectKaonToPV ) < dcaKaonToPV) {
598+ std::abs (cand.dcaXYDirectKaonToPV ) < dcaKaonToPV ||
599+ cand.mass > maxDoubleOmegaMass) {
596600 return false ;
597601 }
598- cand.mass = std::sqrt (std::max (0 .f , massSquared));
599602 cand.massOmega = omega.massOmega ;
600603 cand.massXi = omega.massXi ;
601604 return true ;
@@ -932,10 +935,11 @@ struct doubleOmegaTreeCreator {
932935 auto bc = collision.template bc_as <aod::BCsWithTimestamps>();
933936 initCCDB (bc);
934937
935- if (!collision.sel8 () ||
936- std::abs (collision.posZ ()) > zVtxMax ||
937- !collision.selection_bit (aod::evsel::kNoITSROFrameBorder ) ||
938- !collision.selection_bit (aod::evsel::kNoTimeFrameBorder )) {
938+ if (cfgApplyEventSelection &&
939+ (!collision.sel8 () ||
940+ std::abs (collision.posZ ()) > zVtxMax ||
941+ !collision.selection_bit (aod::evsel::kNoITSROFrameBorder ) ||
942+ !collision.selection_bit (aod::evsel::kNoTimeFrameBorder ))) {
939943 return false ;
940944 }
941945 if (cfgSkimmedProcessing) {
0 commit comments