Skip to content

Commit da712b7

Browse files
committed
[PWGCF]Add files for q2 calculation
1 parent 55640a1 commit da712b7

File tree

1 file changed

+35
-48
lines changed

1 file changed

+35
-48
lines changed

PWGCF/Flow/Tasks/flowEseCorre.cxx

Lines changed: 35 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -10,45 +10,43 @@
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

4242
using namespace o2;
4343
using 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>;
4746
using MyTracks = soa::Join<aod::Tracks, aod::TracksExtra, aod::TrackSelection, aod::TrackSelectionExtension>;
4847
using 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

Comments
 (0)