1010// or submit itself to any jurisdiction.
1111
1212// C++/ROOT includes.
13- #include < chrono>
14- #include < string>
15- #include < vector>
1613#include < TComplex.h>
1714#include < TH1F.h>
1815#include < TH2D.h>
1916#include < TMath.h>
2017#include < TVector2.h>
2118
19+ #include < chrono>
20+ #include < string>
21+ #include < vector>
22+
2223// o2Physics includes.
24+ #include " Common/Core/EventPlaneHelper.h"
25+ #include " Common/Core/TrackSelection.h"
26+ #include " Common/DataModel/Centrality.h"
27+ #include " Common/DataModel/EventSelection.h"
28+ #include " Common/DataModel/Qvectors.h"
29+ #include " Common/DataModel/TrackSelectionTables.h"
30+
31+ #include " CommonConstants/PhysicsConstants.h"
32+ #include " Framework/ASoAHelpers.h"
2333#include " Framework/AnalysisDataModel.h"
2434#include " Framework/AnalysisTask.h"
25- #include " Framework/ASoAHelpers.h"
2635#include " Framework/HistogramRegistry.h"
27- #include " Framework/runDataProcessing.h"
2836#include " Framework/RunningWorkflowInfo.h"
2937#include " Framework/StaticFor.h"
30-
31- #include " Common/DataModel/Qvectors.h"
32- #include " Common/DataModel/EventSelection.h"
33- #include " Common/DataModel/TrackSelectionTables.h"
34- #include " Common/DataModel/Centrality.h"
35- #include " Common/Core/EventPlaneHelper.h"
36- #include " Common/Core/TrackSelection.h"
37-
38- #include " CommonConstants/PhysicsConstants.h"
38+ #include " Framework/runDataProcessing.h"
3939
4040// o2 includes.
4141
4242using namespace o2 ;
4343using namespace o2 ::framework;
4444
45- using MyCollisions = soa::Join<aod::Collisions, aod::EvSels, aod::Mults, aod::FT0sCorrected,
46- aod::CentFT0Ms, aod::CentFT0As, aod::CentFT0Cs, aod::CentFV0As, aod::QvectorFT0CVecs, aod::QvectorTPCposVecs, aod::QvectorTPCnegVecs, aod::QvectorFT0Cs>;
45+ using MyCollisions = soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Ms, aod::CentFT0As, aod::CentFT0Cs, aod::CentFV0As, aod::QvectorFT0CVecs, aod::QvectorTPCposVecs, aod::QvectorTPCnegVecs>;
4746using MyTracks = soa::Join<aod::Tracks, aod::TracksExtra, aod::TrackSelection, aod::TrackSelectionExtension>;
4847using BCsWithRun3Matchings = soa::Join<aod::BCs, aod::Timestamps, aod::Run3MatchedToBCSparse>;
4948
50- struct flowEseCorre
51- {
49+ struct flowEseCorre {
5250 HistogramRegistry histosQA{" histosQA" , {}, OutputObjHandlingPolicy::AnalysisObject, false , false };
5351
5452 Configurable<std::vector<int >> cfgnMods{" cfgnMods" , {2 }, " Modulation of interest" };
@@ -68,11 +66,11 @@ struct flowEseCorre
6866 ConfigurableAxis cfgaxiscos{" cfgaxiscos" , {102 , -1.02 , 1.02 }, " " };
6967 ConfigurableAxis cfgaxispt{" cfgaxispt" , {100 , 0 , 10 }, " " };
7068 ConfigurableAxis cfgaxisCentMerged{" cfgaxisCentMerged" , {20 , 0 , 100 }, " " };
71- ConfigurableAxis cfgaxisMultnum{" cfgaxisMultnum" , {300 , 0 , 3000 }, " " };
69+ ConfigurableAxis cfgaxisMultnum{" cfgaxisMultnum" , {300 , 0 , 2700 }, " " };
7270
7371 EventPlaneHelper helperEP;
7472
75- void init (InitContext const &)
73+ void init (InitContext const &)
7674 {
7775 AxisSpec axisCent{cfgaxisCent, " centrality" };
7876 AxisSpec axisQvec{cfgaxisQvec, " Q" };
@@ -92,22 +90,18 @@ struct flowEseCorre
9290 }
9391
9492 template <typename CollType>
95- bool SelEvent (const CollType & collision)
93+ bool SelEvent (const CollType& collision)
9694 {
97- if (!collision.sel8 ())
98- {
95+ if (!collision.sel8 ()) {
9996 return 0 ;
10097 }
101- if (!collision.selection_bit (aod::evsel::kIsGoodZvtxFT0vsPV ))
102- {
98+ if (!collision.selection_bit (aod::evsel::kIsGoodZvtxFT0vsPV )) {
10399 return 0 ;
104100 }
105- if (!collision.selection_bit (aod::evsel::kNoSameBunchPileup ))
106- {
101+ if (!collision.selection_bit (aod::evsel::kNoSameBunchPileup )) {
107102 return 0 ;
108103 }
109- if (!collision.selection_bit (o2::aod::evsel::kNoCollInTimeRangeStandard ))
110- {
104+ if (!collision.selection_bit (o2::aod::evsel::kNoCollInTimeRangeStandard )) {
111105 return 0 ;
112106 }
113107
@@ -140,10 +134,9 @@ struct flowEseCorre
140134 }
141135
142136 template <typename CollType>
143- void fillHistosQvec (const CollType & collision, int nmode)
137+ void fillHistosQvec (const CollType& collision, int nmode)
144138 {
145- if (nmode == 2 )
146- {
139+ if (nmode == 2 ) {
147140 histosQA.fill (HIST (" histQvecV2" ), collision.qvecFT0CReVec ()[0 ], collision.qvecFT0CImVec ()[0 ], collision.centFT0C ());
148141 histosQA.fill (HIST (" histEvtPlV2" ), helperEP.GetEventPlane (collision.qvecFT0CReVec ()[0 ], collision.qvecFT0CImVec ()[0 ], nmode), collision.centFT0C ());
149142 histosQA.fill (HIST (" histQvecRes_SigRefAV2" ), helperEP.GetResolution (helperEP.GetEventPlane (collision.qvecFT0CReVec ()[0 ], collision.qvecFT0CImVec ()[0 ], nmode), helperEP.GetEventPlane (collision.qvecTPCposReVec ()[0 ], collision.qvecTPCposImVec ()[0 ], nmode), nmode), collision.centFT0C ());
@@ -152,42 +145,36 @@ struct flowEseCorre
152145 }
153146
154147 template <typename CollType, typename TrackType>
155- void fillHistosFlow (const CollType & collision, const TrackType & track, int nmode)
148+ void fillHistosFlow (const CollType& collision, const TrackType& track, int nmode)
156149 {
157- if (collision.sumAmplFT0C () < 1e-4 )
158- {
150+ if (collision.sumAmplFT0C () < 1e-4 ) {
159151 return ;
160152 }
161- for (auto &trk : track)
162- {
163- if (!SelTrack (trk))
164- {
153+ for (auto & trk : track) {
154+ if (!SelTrack (trk)) {
165155 continue ;
166156 }
167- if (nmode == 2 )
168- {
157+ if (nmode == 2 ) {
169158 histosQA.fill (HIST (" histCosDetV2" ), collision.centFT0C (), trk.pt (),
170159 std::cos (static_cast <float >(nmode) * (trk.phi () - helperEP.GetEventPlane (collision.qvecFT0CReVec ()[0 ], collision.qvecFT0CImVec ()[0 ], nmode))));
171160 }
172161 }
173162 }
174163
175- void process (MyCollisions::iterator const & collision, MyTracks const & tracks)
164+ void process (MyCollisions::iterator const & collision, MyTracks const & tracks)
176165 {
177- if (!SelEvent (collision))
178- {
166+ if (!SelEvent (collision)) {
179167 return ;
180168 }
181- for (std::size_t i = 0 ; i < cfgnMods->size (); i++)
182- {
169+ for (std::size_t i = 0 ; i < cfgnMods->size (); i++) {
183170 fillHistosQvec (collision, cfgnMods->at (i));
184171 fillHistosFlow (collision, tracks, cfgnMods->at (i));
185172 }
186173 }
187174};
188175
189- WorkflowSpec defineDataProcessing (ConfigContext const & cfgc)
176+ WorkflowSpec defineDataProcessing (ConfigContext const & cfgc)
190177{
191178 return WorkflowSpec{
192- adaptAnalysisTask<qVectorstutorial >(cfgc)};
179+ adaptAnalysisTask<flowEseCorre >(cfgc)};
193180}
0 commit comments