Skip to content

Commit dc5d21e

Browse files
committed
nch axis to nsample axis new
1 parent ac79075 commit dc5d21e

File tree

1 file changed

+14
-8
lines changed

1 file changed

+14
-8
lines changed

PWGUD/Tasks/flowCorrelationsUpc.cxx

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
/// \author Mingrui Zhao (mingrui.zhao@cern.ch, mingrui.zhao@mail.labz0.org)
1515
/// copied from Thor Jensen (thor.kjaersgaard.jensen@cern.ch) and Debojit Sarkar (debojit.sarkar@cern.ch)
1616

17+
#include "TRandom3.h"
1718
#include <vector>
1819

1920
#include "Framework/runDataProcessing.h"
@@ -98,6 +99,7 @@ struct FlowCorrelationsUpc {
9899
O2_DEFINE_CONFIGURABLE(cfgMinMixEventNum, int, 5, "Minimum number of events to mix")
99100
O2_DEFINE_CONFIGURABLE(cfgMinMult, int, 0, "Minimum multiplicity for collision")
100101
O2_DEFINE_CONFIGURABLE(cfgMaxMult, int, 10, "Maximum multiplicity for collision")
102+
O2_DEFINE_CONFIGURABLE(cfgSampleSize, double, 10, "Sample size for mixed event")
101103

102104
ConfigurableAxis axisVertex{"axisVertex", {10, -10, 10}, "vertex axis for histograms"};
103105
ConfigurableAxis axisEta{"axisEta", {40, -1., 1.}, "eta axis for histograms"};
@@ -114,6 +116,7 @@ struct FlowCorrelationsUpc {
114116
ConfigurableAxis axisVertexEfficiency{"axisVertexEfficiency", {10, -10, 10}, "vertex axis for efficiency histograms"};
115117
ConfigurableAxis axisEtaEfficiency{"axisEtaEfficiency", {20, -1.0, 1.0}, "eta axis for efficiency histograms"};
116118
ConfigurableAxis axisPtEfficiency{"axisPtEfficiency", {VARIABLE_WIDTH, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0, 1.25, 1.5, 1.75, 2.0, 2.25, 2.5, 2.75, 3.0, 3.25, 3.5, 3.75, 4.0, 4.5, 5.0, 6.0, 7.0, 8.0}, "pt axis for efficiency histograms"};
119+
ConfigurableAxis axisSample{"axisSample", {cfgSampleSize, 0, cfgSampleSize}, "sample axis for histograms"};
117120

118121
// Added UPC Cuts
119122
SGSelector sgSelector;
@@ -149,11 +152,11 @@ struct FlowCorrelationsUpc {
149152
registry.add("Nch", "N_{ch}", {HistType::kTH1D, {axisMultiplicity}});
150153
registry.add("zVtx", "zVtx", {HistType::kTH1D, {axisVertex}});
151154

152-
registry.add("Trig_hist", "", {HistType::kTHnSparseF, {{axisMultiplicity, axisVertex, axisPtTrigger}}});
155+
registry.add("Trig_hist", "", {HistType::kTHnSparseF, {{axisSample, axisVertex, axisPtTrigger}}});
153156

154157
registry.add("eventcount", "bin", {HistType::kTH1F, {{3, 0, 3, "bin"}}}); // histogram to see how many events are in the same and mixed event
155158

156-
std::vector<AxisSpec> corrAxis = {{axisMultiplicity, "Nch"},
159+
std::vector<AxisSpec> corrAxis = {{axisSample, "Sample"},
157160
{axisVertex, "z-vtx (cm)"},
158161
{axisPtTrigger, "p_{T} (GeV/c)"},
159162
{axisPtAssoc, "p_{T} (GeV/c)"},
@@ -190,13 +193,16 @@ struct FlowCorrelationsUpc {
190193
}
191194

192195
template <CorrelationContainer::CFStep step, typename TTracks>
193-
void fillCorrelations(TTracks tracks1, TTracks tracks2, float posZ, int system, float Nch) // function to fill the Output functions (sparse) and the delta eta and delta phi histograms
196+
void fillCorrelations(TTracks tracks1, TTracks tracks2, float posZ, int system) // function to fill the Output functions (sparse) and the delta eta and delta phi histograms
194197
{
198+
199+
int fSampleIndex = gRandom->Uniform(0, cfgSampleSize);
200+
195201
// loop over all tracks
196202
for (auto const& track1 : tracks1) {
197203

198204
if (system == SameEvent) {
199-
registry.fill(HIST("Trig_hist"), Nch, posZ, track1.pt());
205+
registry.fill(HIST("Trig_hist"), fSampleIndex, posZ, track1.pt());
200206
}
201207

202208
for (auto const& track2 : tracks2) {
@@ -213,10 +219,10 @@ struct FlowCorrelationsUpc {
213219

214220
// fill the right sparse and histograms
215221
if (system == SameEvent) {
216-
same->getPairHist()->Fill(step, Nch, posZ, track1.pt(), track2.pt(), deltaPhi, deltaEta);
222+
same->getPairHist()->Fill(step, fSampleIndex, posZ, track1.pt(), track2.pt(), deltaPhi, deltaEta);
217223
registry.fill(HIST("deltaEta_deltaPhi_same"), deltaPhi, deltaEta);
218224
} else if (system == MixedEvent) {
219-
mixed->getPairHist()->Fill(step, Nch, posZ, track1.pt(), track2.pt(), deltaPhi, deltaEta);
225+
mixed->getPairHist()->Fill(step, fSampleIndex, posZ, track1.pt(), track2.pt(), deltaPhi, deltaEta);
220226
registry.fill(HIST("deltaEta_deltaPhi_mixed"), deltaPhi, deltaEta);
221227
}
222228
}
@@ -247,7 +253,7 @@ struct FlowCorrelationsUpc {
247253

248254
registry.fill(HIST("eventcount"), SameEvent); // because its same event i put it in the 1 bin
249255
fillYield(collision, tracks);
250-
fillCorrelations<CorrelationContainer::kCFStepReconstructed>(tracks, tracks, collision.posZ(), SameEvent, tracks.size()); // fill the SE histogram and Sparse
256+
fillCorrelations<CorrelationContainer::kCFStepReconstructed>(tracks, tracks, collision.posZ(), SameEvent); // fill the SE histogram and Sparse
251257
}
252258
PROCESS_SWITCH(FlowCorrelationsUpc, processSame, "Process same event", true);
253259

@@ -265,7 +271,7 @@ struct FlowCorrelationsUpc {
265271

266272
for (auto const& [collision1, tracks1, collision2, tracks2] : pairs) {
267273
registry.fill(HIST("eventcount"), MixedEvent); // fill the mixed event in the 3 bin
268-
fillCorrelations<CorrelationContainer::kCFStepReconstructed>(tracks1, tracks2, collision1.posZ(), MixedEvent, tracks1.size());
274+
fillCorrelations<CorrelationContainer::kCFStepReconstructed>(tracks1, tracks2, collision1.posZ(), MixedEvent);
269275
}
270276
}
271277
PROCESS_SWITCH(FlowCorrelationsUpc, processMixed, "Process mixed events", true);

0 commit comments

Comments
 (0)