@@ -131,7 +131,9 @@ struct cascadeFlow {
131131 // Output filling criteria
132132 Configurable<bool > isFillTree{" isFillTree" , 1 , " " };
133133 Configurable<bool > isFillTHNXi{" isFillTHNXi" , 1 , " " };
134+ Configurable<bool > isFillTHNXi_PzVsPsi{" isFillTHNXi_PzVsPsi" , 1 , " " };
134135 Configurable<bool > isFillTHNOmega{" isFillTHNOmega" , 1 , " " };
136+ Configurable<bool > isFillTHNOmega_PzVsPsi{" isFillTHNOmega_PzVsPsi" , 1 , " " };
135137
136138 // axes
137139 ConfigurableAxis axisQVs{" axisQVs" , {500 , -10 .f , 10 .f }, " axisQVs" };
@@ -141,15 +143,19 @@ struct cascadeFlow {
141143 ConfigurableAxis thnConfigAxisFT0C{" thnConfigAxisFT0C" , {8 , 0 , 80 }, " FT0C centrality (%)" };
142144 ConfigurableAxis thnConfigAxisPt{" thnConfigAxisPt" , {VARIABLE_WIDTH, 0.8 , 1.0 , 1.2 , 1.4 , 1.6 , 1.8 , 2 , 2.25 , 2.5 , 2.75 , 3 , 3.5 , 4 , 5 , 6 , 8 , 10 }, " #it{p}_{T} (GeV/#it{c})" };
143145 ConfigurableAxis thnConfigAxisCharge{" thnConfigAxisCharge" , {2 , 0 , 2 }, " " };
146+ ConfigurableAxis thnConfigAxisPsiDiff{" thnConfigAxisPsiDiff" , {100 , 0 , 2 * TMath::Pi ()}, " " };
144147 ConfigurableAxis thnConfigAxisMassXi{" thnConfigAxisMassXi" , {45 , 1.300 , 1.345 }, " " };
145148 ConfigurableAxis thnConfigAxisMassOmega{" thnConfigAxisMassOmega" , {45 , 1.655 , 1.690 }, " " };
146149 ConfigurableAxis thnConfigAxisMassLambda{" thnConfigAxisMassLambda" , {60 , 1.1 , 1.13 }, " " };
147150 ConfigurableAxis thnConfigAxisBDTScore{" thnConfigAxisBDTScore" , {15 , 0.4 , 1 }, " " };
148151 ConfigurableAxis thnConfigAxisV2{" thnConfigAxiV2" , {100 , -1 ., 1 .}, " " };
149152 ConfigurableAxis thnConfigAxisPzs2Xi{" thnConfigAxiPzs2Xi" , {200 , -2.8 , 2.8 }, " " };
150- ConfigurableAxis thnConfigAxisPzs2Omega{" thnConfigAxiPzs2Omega" , {200 , -65 , 65 }, " " };
153+ ConfigurableAxis thnConfigAxisPzs2Omega{" thnConfigAxiPzs2Omega" , {200 , -70 , 70 }, " " };
151154 ConfigurableAxis thnConfigAxisPzs2Lambda{" thnConfigAxiPzs2Lambda" , {200 , -2 , 2 }, " " };
152155 ConfigurableAxis thnConfigAxisCos2Theta{" thnConfigAxiCos2Theta" , {100 , 0 , 1 }, " " };
156+ ConfigurableAxis thnConfigAxisCosThetaXiAlpha{" thnConfigAxisCosThetaXiAlpha" , {200 , -2.8 , 2.8 }, " " };
157+ ConfigurableAxis thnConfigAxisCosThetaOmegaAlpha{" thnConfigAxisCosThetaOmegaAlpha" , {200 , -70 , 70 }, " " };
158+ ConfigurableAxis thnConfigAxisCosThetaProtonAlpha{" thnConfigAxisCosThetaProtonAlpha" , {200 , -2 , 2 }, " " };
153159
154160 // Event selection criteria
155161 Configurable<bool > isStoreTrueCascOnly{" isStoreTrueCascOnly" , 1 , " " };
@@ -490,6 +496,7 @@ struct cascadeFlow {
490496 const AxisSpec thnAxisFT0C{thnConfigAxisFT0C, " FT0C (%)" };
491497 const AxisSpec thnAxisPt{thnConfigAxisPt, " p_{T}" };
492498 const AxisSpec thnAxisCharge{thnConfigAxisCharge, " Charge" };
499+ const AxisSpec thnAxisPsiDiff{thnConfigAxisPsiDiff, " 2(phi-Psi)" };
493500 const AxisSpec thnAxisMassXi{thnConfigAxisMassXi, " inv. mass (#Lambda #pi) (GeV/#it{c}^{2})" };
494501 const AxisSpec thnAxisMassOmega{thnConfigAxisMassOmega, " inv. mass (#Lambda K) (GeV/#it{c}^{2})" };
495502 const AxisSpec thnAxisMassLambda{thnConfigAxisMassLambda, " inv. mass (p #pi) (GeV/#it{c}^{2})" };
@@ -499,6 +506,9 @@ struct cascadeFlow {
499506 const AxisSpec thnAxisPzs2Omega{thnConfigAxisPzs2Omega, " Pzs2Omega" };
500507 const AxisSpec thnAxisPzs2Lambda{thnConfigAxisPzs2Lambda, " Pzs2Lambda" };
501508 const AxisSpec thnAxisCos2Theta{thnConfigAxisCos2Theta, " Cos2Theta" };
509+ const AxisSpec thnAxisCosThetaXiAlpha{thnConfigAxisCosThetaXiAlpha, " CosThetaXiWithAlpha" };
510+ const AxisSpec thnAxisCosThetaOmegaAlpha{thnConfigAxisCosThetaOmegaAlpha, " CosThetaOmegaWithAlpha" };
511+ const AxisSpec thnAxisCosThetaProtonAlpha{thnConfigAxisCosThetaProtonAlpha, " CosThetaProtonWithAlpha" };
502512
503513 if (isFillTHNXi) {
504514 histos.add (" hXiV2" , " THn for v2 of Xi" , HistType::kTHnF , {thnAxisFT0C, thnAxisCharge, thnAxisPt, thnAxisMassXi, thnAxisBDTScore, thnAxisV2});
@@ -507,13 +517,25 @@ struct cascadeFlow {
507517 histos.add (" hXiCos2Theta" , " THn for Cos2Theta of Xi" , HistType::kTHnF , {thnAxisFT0C, thnAxisCharge, thnAxisPt, thnAxisMassXi, thnAxisBDTScore, thnAxisCos2Theta});
508518 histos.add (" hXiCos2ThetaFromLambda" , " THn for Cos2Theta of Xi" , HistType::kTHnF , {thnAxisFT0C, thnAxisCharge, thnAxisPt, thnAxisMassXi, thnAxisBDTScore, thnAxisCos2Theta});
509519 }
520+ if (isFillTHNXi_PzVsPsi) {
521+ histos.add (" hXiPzVsPsi" , " THn for cosTheta of Xi" , HistType::kTHnF , {thnAxisFT0C, thnAxisCharge, thnAxisPt, thnAxisMassXi, thnAxisBDTScore, thnAxisCosThetaXiAlpha, thnAxisPsiDiff});
522+ histos.add (" hXiPzVsPsiFromLambda" , " THn for cosTheta of Xi" , HistType::kTHnF , {thnAxisFT0C, thnAxisCharge, thnAxisPt, thnAxisMassXi, thnAxisBDTScore, thnAxisCosThetaProtonAlpha, thnAxisPsiDiff});
523+ histos.add (" hXiCos2ThetaVsPsi" , " THn for cos2Theta of Xi" , HistType::kTHnF , {thnAxisFT0C, thnAxisCharge, thnAxisPt, thnAxisMassXi, thnAxisBDTScore, thnAxisCos2Theta, thnAxisPsiDiff});
524+ histos.add (" hXiCos2ThetaVsPsiFromLambda" , " THn for cos2Theta of Xi" , HistType::kTHnF , {thnAxisFT0C, thnAxisCharge, thnAxisPt, thnAxisMassXi, thnAxisBDTScore, thnAxisCos2Theta, thnAxisPsiDiff});
525+ }
510526 if (isFillTHNOmega) {
511527 histos.add (" hOmegaV2" , " THn for v2 of Omega" , HistType::kTHnF , {thnAxisFT0C, thnAxisCharge, thnAxisPt, thnAxisMassOmega, thnAxisBDTScore, thnAxisV2});
512528 histos.add (" hOmegaPzs2" , " THn for Pzs2 of Omega" , HistType::kTHnF , {thnAxisFT0C, thnAxisCharge, thnAxisPt, thnAxisMassOmega, thnAxisBDTScore, thnAxisPzs2Omega});
513529 histos.add (" hOmegaPzs2FromLambda" , " THn for Pzs2 of Omega" , HistType::kTHnF , {thnAxisFT0C, thnAxisCharge, thnAxisPt, thnAxisMassOmega, thnAxisBDTScore, thnAxisPzs2Lambda});
514530 histos.add (" hOmegaCos2Theta" , " THn for Cos2Theta of Omega" , HistType::kTHnF , {thnAxisFT0C, thnAxisCharge, thnAxisPt, thnAxisMassOmega, thnAxisBDTScore, thnAxisCos2Theta});
515531 histos.add (" hOmegaCos2ThetaFromLambda" , " THn for Cos2Theta of Omega" , HistType::kTHnF , {thnAxisFT0C, thnAxisCharge, thnAxisPt, thnAxisMassOmega, thnAxisBDTScore, thnAxisCos2Theta});
516532 }
533+ if (isFillTHNOmega_PzVsPsi) {
534+ histos.add (" hOmegaPzVsPsi" , " THn for cosTheta of Omega" , HistType::kTHnF , {thnAxisFT0C, thnAxisCharge, thnAxisPt, thnAxisMassOmega, thnAxisBDTScore, thnAxisCosThetaOmegaAlpha, thnAxisPsiDiff});
535+ histos.add (" hOmegaPzVsPsiFromLambda" , " THn for cosTheta of Omega" , HistType::kTHnF , {thnAxisFT0C, thnAxisCharge, thnAxisPt, thnAxisMassOmega, thnAxisBDTScore, thnAxisCosThetaProtonAlpha, thnAxisPsiDiff});
536+ histos.add (" hOmegaCos2ThetaVsPsi" , " THn for cos2Theta of Omega" , HistType::kTHnF , {thnAxisFT0C, thnAxisCharge, thnAxisPt, thnAxisMassOmega, thnAxisBDTScore, thnAxisCos2Theta, thnAxisPsiDiff});
537+ histos.add (" hOmegaCos2ThetaVsPsiFromLambda" , " THn for cos2Theta of Omega" , HistType::kTHnF , {thnAxisFT0C, thnAxisCharge, thnAxisPt, thnAxisMassOmega, thnAxisBDTScore, thnAxisCos2Theta, thnAxisPsiDiff});
538+ }
517539
518540 histosMCGen.add (" h2DGenXiEta08" , " h2DGenXiEta08" , HistType::kTH2F , {{100 , 0 , 100 }, {400 , 0 , 20 }});
519541 histosMCGen.add (" h2DGenOmegaEta08" , " h2DGenOmegaEta08" , HistType::kTH2F , {{100 , 0 , 100 }, {400 , 0 , 20 }});
@@ -793,6 +815,10 @@ struct cascadeFlow {
793815 double Pzs2LambdaFromCasc = cosThetaStarProton * std::sin (2 * (casc.phi () - PsiT0C)) / cascadev2::AlphaLambda[ChargeIndex];
794816 double Cos2ThetaLambda = cosThetaStarProton * cosThetaStarProton;
795817
818+ double CosThetaXiWithAlpha = cosThetaStarLambda[0 ] / cascadev2::AlphaXi[ChargeIndex];
819+ double CosThetaOmegaWithAlpha = cosThetaStarLambda[1 ] / cascadev2::AlphaOmega[ChargeIndex];
820+ double CosThetaProtonWithAlpha = cosThetaStarProton / cascadev2::AlphaLambda[ChargeIndex];
821+
796822 histos.fill (HIST (" hv2CEPvsFT0C" ), coll.centFT0C (), v2CEP);
797823 histos.fill (HIST (" hv2CEPvsv2CSP" ), v2CSP, v2CEP);
798824 histos.fill (HIST (" hv1EPvsv1SP" ), v1SP, v1EP);
@@ -823,13 +849,25 @@ struct cascadeFlow {
823849 histos.get <THn>(HIST (" hXiCos2Theta" ))->Fill (coll.centFT0C (), ChargeIndex, casc.pt (), casc.mXi (), BDTresponse[0 ], Cos2ThetaXi);
824850 histos.get <THn>(HIST (" hXiCos2ThetaFromLambda" ))->Fill (coll.centFT0C (), ChargeIndex, casc.pt (), casc.mXi (), BDTresponse[0 ], Cos2ThetaLambda);
825851 }
852+ if (isFillTHNXi_PzVsPsi) {
853+ histos.get <THn>(HIST (" hXiPzVsPsi" ))->Fill (coll.centFT0C (), ChargeIndex, casc.pt (), casc.mXi (), BDTresponse[0 ], CosThetaXiWithAlpha, 2 * cascminuspsiT0C);
854+ histos.get <THn>(HIST (" hXiPzVsPsiFromLambda" ))->Fill (coll.centFT0C (), ChargeIndex, casc.pt (), casc.mXi (), BDTresponse[0 ], CosThetaProtonWithAlpha, 2 * cascminuspsiT0C);
855+ histos.get <THn>(HIST (" hXiCos2ThetaVsPsi" ))->Fill (coll.centFT0C (), ChargeIndex, casc.pt (), casc.mXi (), BDTresponse[0 ], Cos2ThetaXi, 2 * cascminuspsiT0C);
856+ histos.get <THn>(HIST (" hXiCos2ThetaVsPsiFromLambda" ))->Fill (coll.centFT0C (), ChargeIndex, casc.pt (), casc.mXi (), BDTresponse[0 ], Cos2ThetaLambda, 2 * cascminuspsiT0C);
857+ }
826858 if (isFillTHNOmega) {
827859 histos.get <THn>(HIST (" hOmegaV2" ))->Fill (coll.centFT0C (), ChargeIndex, casc.pt (), casc.mOmega (), BDTresponse[1 ], v2CEP);
828860 histos.get <THn>(HIST (" hOmegaPzs2" ))->Fill (coll.centFT0C (), ChargeIndex, casc.pt (), casc.mOmega (), BDTresponse[1 ], Pzs2Omega);
829861 histos.get <THn>(HIST (" hOmegaPzs2FromLambda" ))->Fill (coll.centFT0C (), ChargeIndex, casc.pt (), casc.mOmega (), BDTresponse[1 ], Pzs2LambdaFromCasc);
830862 histos.get <THn>(HIST (" hOmegaCos2Theta" ))->Fill (coll.centFT0C (), ChargeIndex, casc.pt (), casc.mOmega (), BDTresponse[1 ], Cos2ThetaOmega);
831863 histos.get <THn>(HIST (" hOmegaCos2ThetaFromLambda" ))->Fill (coll.centFT0C (), ChargeIndex, casc.pt (), casc.mOmega (), BDTresponse[1 ], Cos2ThetaLambda);
832864 }
865+ if (isFillTHNOmega_PzVsPsi) {
866+ histos.get <THn>(HIST (" hOmegaPzVsPsi" ))->Fill (coll.centFT0C (), ChargeIndex, casc.pt (), casc.mOmega (), BDTresponse[0 ], CosThetaOmegaWithAlpha, 2 * cascminuspsiT0C);
867+ histos.get <THn>(HIST (" hOmegaPzVsPsiFromLambda" ))->Fill (coll.centFT0C (), ChargeIndex, casc.pt (), casc.mOmega (), BDTresponse[0 ], CosThetaProtonWithAlpha, 2 * cascminuspsiT0C);
868+ histos.get <THn>(HIST (" hOmegaCos2ThetaVsPsi" ))->Fill (coll.centFT0C (), ChargeIndex, casc.pt (), casc.mOmega (), BDTresponse[0 ], Cos2ThetaOmega, 2 * cascminuspsiT0C);
869+ histos.get <THn>(HIST (" hOmegaCos2ThetaVsPsiFromLambda" ))->Fill (coll.centFT0C (), ChargeIndex, casc.pt (), casc.mOmega (), BDTresponse[0 ], Cos2ThetaLambda, 2 * cascminuspsiT0C);
870+ }
833871 }
834872
835873 if (isSelectedCasc[0 ] || isSelectedCasc[1 ]) {
0 commit comments