@@ -47,7 +47,7 @@ using std::array;
4747
4848using DauTracks = soa::Join<aod::DauTrackExtras, aod::DauTrackTPCPIDs>;
4949using CollEventPlane = soa::Join<aod::StraCollisions, aod::StraCents, aod::StraEvSels, aod::StraFT0CQVs, aod::StraFT0CQVsEv, aod::StraTPCQVs, aod::StraStamps>::iterator;
50- using CollEventPlaneCentralFW = soa::Join<aod::StraCollisions, aod::StraCents, aod::StraEvSels, aod::StraFT0CQVs, aod::StraTPCQVs, aod::StraStamps>::iterator;
50+ using CollEventPlaneCentralFW = soa::Join<aod::StraCollisions, aod::StraCents, aod::StraEvSels, aod::StraFT0CQVs, aod::StraFT0MQVs, aod::StraFV0AQVs, aod:: StraTPCQVs, aod::StraStamps>::iterator;
5151using CollEventAndSpecPlane = soa::Join<aod::StraCollisions, aod::StraCents, aod::StraEvSels, aod::StraFT0CQVs, aod::StraFT0CQVsEv, aod::StraTPCQVs, aod::StraZDCSP, aod::StraStamps>::iterator;
5252using CollEventAndSpecPlaneCentralFW = soa::Join<aod::StraCollisions, aod::StraCents, aod::StraEvSels, aod::StraFT0CQVs, aod::StraTPCQVs, aod::StraZDCSP, aod::StraStamps>::iterator;
5353using MCCollisionsStra = soa::Join<aod::StraMCCollisions, aod::StraMCCollMults>;
@@ -153,6 +153,10 @@ static const std::vector<std::string> labelsCutScore = {"Background score", "Sig
153153
154154struct cascadeFlow {
155155
156+ Configurable<bool > isQVecT0C{" isQVecT0C" , 1 , " " };
157+ Configurable<bool > isQVecT0M{" isQVecT0M" , 0 , " " };
158+ Configurable<bool > isQVecV0A{" isQVecV0A" , 0 , " " };
159+
156160 // Output filling criteria
157161 struct : ConfigurableGroup {
158162 Configurable<bool > isFillTree{" isFillTree" , 1 , " " };
@@ -660,6 +664,7 @@ struct cascadeFlow {
660664 chargeIndex,
661665 v0.pt (),
662666 v0.phi (),
667+ v0.eta (),
663668 invMassLambda,
664669 v0.v0radius (),
665670 v0.dcapostopv (),
@@ -1652,9 +1657,23 @@ struct cascadeFlow {
16521657 return ;
16531658 }
16541659
1660+ double qvecRe = 0 ;
1661+ double qvecIm = 0 ;
1662+
1663+ if (isQVecT0C) {
1664+ qvecRe = coll.qvecFT0CRe ();
1665+ qvecIm = coll.qvecFT0CIm ();
1666+ } else if (isQVecT0M) {
1667+ qvecRe = coll.qvecFT0MRe ();
1668+ qvecIm = coll.qvecFT0MIm ();
1669+ } else if (isQVecV0A) {
1670+ qvecRe = coll.qvecFV0ARe ();
1671+ qvecIm = coll.qvecFV0AIm ();
1672+ }
1673+
16551674 // select only events used for the calibration of the event plane
16561675 if (isGoodEventEP) {
1657- if (std::abs (coll. qvecFT0CRe ()) > 990 || std::abs (coll. qvecFT0CIm () ) > 990 || std::abs (coll.qvecBNegRe ()) > 990 || std::abs (coll.qvecBNegIm ()) > 990 || std::abs (coll.qvecBPosRe ()) > 990 || std::abs (coll.qvecBPosIm ()) > 990 ) {
1676+ if (std::abs (qvecRe) > 990 || std::abs (qvecIm ) > 990 || std::abs (coll.qvecBNegRe ()) > 990 || std::abs (coll.qvecBNegIm ()) > 990 || std::abs (coll.qvecBPosRe ()) > 990 || std::abs (coll.qvecBPosIm ()) > 990 ) {
16581677 return ;
16591678 }
16601679 }
@@ -1670,11 +1689,11 @@ struct cascadeFlow {
16701689 histos.fill (HIST (" hEventCentrality" ), coll.centFT0C ());
16711690 histos.fill (HIST (" hEventVertexZ" ), coll.posZ ());
16721691
1673- ROOT::Math::XYZVector eventplaneVecT0C{coll. qvecFT0CRe (), coll. qvecFT0CIm () , 0 };
1692+ ROOT::Math::XYZVector eventplaneVecT0C{qvecRe, qvecIm , 0 };
16741693 ROOT::Math::XYZVector eventplaneVecTPCA{coll.qvecBPosRe (), coll.qvecBPosIm (), 0 };
16751694 ROOT::Math::XYZVector eventplaneVecTPCC{coll.qvecBNegRe (), coll.qvecBNegIm (), 0 };
16761695
1677- const float psiT0C = std::atan2 (coll. qvecFT0CIm (), coll. qvecFT0CRe () ) * 0 .5f ;
1696+ const float psiT0C = std::atan2 (qvecIm, qvecRe ) * 0 .5f ;
16781697 const float psiTPCA = std::atan2 (coll.qvecBPosIm (), coll.qvecBPosRe ()) * 0 .5f ;
16791698 const float psiTPCC = std::atan2 (coll.qvecBNegIm (), coll.qvecBNegRe ()) * 0 .5f ;
16801699 float psiT0CCorr = psiT0C;
0 commit comments