@@ -109,7 +109,8 @@ struct lambdapolsp {
109109 Configurable<float > ConfV0TranRadV0Min{" ConfV0TranRadV0Min" , 1 .5f , " Minimum transverse radius" };
110110 Configurable<float > ConfV0TranRadV0Max{" ConfV0TranRadV0Max" , 100 .f , " Maximum transverse radius" };
111111 Configurable<double > cMaxV0DCA{" cMaxV0DCA" , 1.2 , " Maximum V0 DCA to PV" };
112- Configurable<double > cMinV0DCA{" cMinV0DCA" , 0.05 , " Minimum V0 daughters DCA to PV" };
112+ Configurable<double > cMinV0DCAPr{" cMinV0DCAPr" , 0.05 , " Minimum V0 daughters DCA to PV for Pr" };
113+ Configurable<double > cMinV0DCAPi{" cMinV0DCAPi" , 0.05 , " Minimum V0 daughters DCA to PV for Pi" };
113114 Configurable<float > cMaxV0LifeTime{" cMaxV0LifeTime" , 20 , " Maximum V0 life time" };
114115
115116 // config for V0 daughters
@@ -310,12 +311,6 @@ struct lambdapolsp {
310311 if (pT < ConfV0PtMin) {
311312 return false ;
312313 }
313- if (TMath::Abs (candidate.dcapostopv ()) < cMinV0DCA) {
314- return false ;
315- }
316- if (TMath::Abs (candidate.dcanegtopv ()) < cMinV0DCA) {
317- return false ;
318- }
319314 if (dcaDaughv0 > ConfV0DCADaughMax) {
320315 return false ;
321316 }
@@ -371,6 +366,13 @@ struct lambdapolsp {
371366 return false ;
372367 }
373368
369+ if (pid == 0 && (TMath::Abs (candidate.dcapostopv ()) < cMinV0DCAPr || TMath::Abs (candidate.dcanegtopv ()) < cMinV0DCAPi)) {
370+ return false ;
371+ }
372+ if (pid == 1 && (TMath::Abs (candidate.dcapostopv ()) < cMinV0DCAPi || TMath::Abs (candidate.dcanegtopv ()) < cMinV0DCAPr)) {
373+ return false ;
374+ }
375+
374376 /*
375377 if (pid == 0 && pt < cfgDaughPrPt) {
376378 return false;
@@ -451,14 +453,12 @@ struct lambdapolsp {
451453 void fillHistograms (bool tag1, bool tag2, const ROOT::Math::PxPyPzMVector& particle,
452454 const ROOT::Math::PxPyPzMVector& daughter,
453455 double psiZDCC, double psiZDCA, double centrality,
454- double candmass, double candpt, double candeta, double angle )
456+ double candmass, double candpt, double candeta)
455457 {
456458
457459 ROOT::Math::Boost boost{particle.BoostToCM ()};
458460 auto fourVecDauCM = boost (daughter);
459461 auto phiangle = TMath::ATan2 (fourVecDauCM.Py (), fourVecDauCM.Px ());
460- if (angle < -1 ) {
461- }
462462 auto phiminuspsiC = GetPhiInRange (phiangle - psiZDCC);
463463 auto phiminuspsiA = GetPhiInRange (phiangle - psiZDCA);
464464 auto cosThetaStar = fourVecDauCM.Pz () / fourVecDauCM.P ();
@@ -492,9 +492,9 @@ struct lambdapolsp {
492492 }
493493 }
494494
495+ /*
495496 double calculateAngleBetweenLorentzVectors(const ROOT::Math::PxPyPzMVector& vec1,
496- const ROOT::Math::PxPyPzMVector& vec2)
497- {
497+ const ROOT::Math::PxPyPzMVector& vec2) {
498498 // Extract spatial momenta (3D vectors)
499499 ROOT::Math::XYZVector momentum1 = vec1.Vect();
500500 ROOT::Math::XYZVector momentum2 = vec2.Vect();
@@ -518,12 +518,13 @@ struct lambdapolsp {
518518 // Calculate and return the angle in radians
519519 return cosTheta;
520520 }
521+ */
521522
522523 ROOT::Math::PxPyPzMVector Lambda, AntiLambda, Lambdadummy, AntiLambdadummy, Proton, Pion, AntiProton, AntiPion, fourVecDauCM;
523524 ROOT::Math::XYZVector threeVecDauCM, threeVecDauCMXY;
524525 double phiangle = 0.0 ;
525- double angleLambda = 0.0 ;
526- double angleAntiLambda = 0.0 ;
526+ // double angleLambda= 0.0;
527+ // double angleAntiLambda= 0.0;
527528 double massLambda = o2::constants::physics::MassLambda;
528529 double massPr = o2::constants::physics::MassProton;
529530 double massPi = o2::constants::physics::MassPionCharged;
@@ -715,13 +716,13 @@ struct lambdapolsp {
715716 Proton = ROOT::Math::PxPyPzMVector (v0.pxpos (), v0.pypos (), v0.pzpos (), massPr);
716717 AntiPion = ROOT::Math::PxPyPzMVector (v0.pxneg (), v0.pyneg (), v0.pzneg (), massPi);
717718 Lambdadummy = Proton + AntiPion;
718- angleLambda = calculateAngleBetweenLorentzVectors (Proton, AntiPion);
719+ // angleLambda = calculateAngleBetweenLorentzVectors(Proton, AntiPion);
719720 }
720721 if (aLambdaTag) {
721722 AntiProton = ROOT::Math::PxPyPzMVector (v0.pxneg (), v0.pyneg (), v0.pzneg (), massPr);
722723 Pion = ROOT::Math::PxPyPzMVector (v0.pxpos (), v0.pypos (), v0.pzpos (), massPi);
723724 AntiLambdadummy = AntiProton + Pion;
724- angleAntiLambda = calculateAngleBetweenLorentzVectors (AntiProton, Pion);
725+ // angleAntiLambda = calculateAngleBetweenLorentzVectors(AntiProton, Pion);
725726 }
726727
727728 if (shouldReject (LambdaTag, aLambdaTag, Lambdadummy, AntiLambdadummy)) {
@@ -737,14 +738,14 @@ struct lambdapolsp {
737738 if (LambdaTag) {
738739 Lambda = Proton + AntiPion;
739740 tagb = 0 ;
740- fillHistograms (taga, tagb, Lambda, Proton, psiZDCC, psiZDCA, centrality, v0.mLambda (), v0.pt (), v0.eta (), angleLambda );
741+ fillHistograms (taga, tagb, Lambda, Proton, psiZDCC, psiZDCA, centrality, v0.mLambda (), v0.pt (), v0.eta ());
741742 }
742743
743744 tagb = aLambdaTag;
744745 if (aLambdaTag) {
745746 AntiLambda = AntiProton + Pion;
746747 taga = 0 ;
747- fillHistograms (taga, tagb, AntiLambda, AntiProton, psiZDCC, psiZDCA, centrality, v0.mAntiLambda (), v0.pt (), v0.eta (), angleAntiLambda );
748+ fillHistograms (taga, tagb, AntiLambda, AntiProton, psiZDCC, psiZDCA, centrality, v0.mAntiLambda (), v0.pt (), v0.eta ());
748749 }
749750 }
750751 }
@@ -815,13 +816,13 @@ struct lambdapolsp {
815816 Proton = ROOT::Math::PxPyPzMVector (v0.pxpos (), v0.pypos (), v0.pzpos (), massPr);
816817 AntiPion = ROOT::Math::PxPyPzMVector (v0.pxneg (), v0.pyneg (), v0.pzneg (), massPi);
817818 Lambdadummy = Proton + AntiPion;
818- angleLambda = calculateAngleBetweenLorentzVectors (Proton, AntiPion);
819+ // angleLambda = calculateAngleBetweenLorentzVectors(Proton, AntiPion);
819820 }
820821 if (aLambdaTag) {
821822 AntiProton = ROOT::Math::PxPyPzMVector (v0.pxneg (), v0.pyneg (), v0.pzneg (), massPr);
822823 Pion = ROOT::Math::PxPyPzMVector (v0.pxpos (), v0.pypos (), v0.pzpos (), massPi);
823824 AntiLambdadummy = AntiProton + Pion;
824- angleAntiLambda = calculateAngleBetweenLorentzVectors (AntiProton, Pion);
825+ // angleAntiLambda = calculateAngleBetweenLorentzVectors(AntiProton, Pion);
825826 }
826827
827828 if (shouldReject (LambdaTag, aLambdaTag, Lambdadummy, AntiLambdadummy)) {
@@ -835,15 +836,15 @@ struct lambdapolsp {
835836 Lambda = Proton + AntiPion;
836837 tagb = 0 ;
837838 fillHistograms (taga, tagb, Lambda, Proton, psiZDCC, psiZDCA, centrality,
838- v0.mLambda (), v0.pt (), v0.eta (), angleLambda );
839+ v0.mLambda (), v0.pt (), v0.eta ());
839840 }
840841
841842 tagb = aLambdaTag;
842843 if (aLambdaTag) {
843844 AntiLambda = AntiProton + Pion;
844845 taga = 0 ;
845846 fillHistograms (taga, tagb, AntiLambda, AntiProton, psiZDCC, psiZDCA, centrality,
846- v0.mAntiLambda (), v0.pt (), v0.eta (), angleAntiLambda );
847+ v0.mAntiLambda (), v0.pt (), v0.eta ());
847848 }
848849 } // end loop over V0s
849850 }
0 commit comments