Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
54 changes: 50 additions & 4 deletions PWGCF/JCorran/Tasks/jEPFlowAnalysis.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,9 @@ struct JEPFlowAnalysis {
Configurable<std::vector<float>> cfgMultq2high{"cfgMultq2high", {}, ""};
Configurable<std::vector<float>> cfgMultq2low{"cfgMultq2low", {}, ""};

Configurable<int> cfgJetSubEvtSel{"cfgJetSubEvtSel", 0, "0: none, 1: Ratio, 2: relative ratio"};
Configurable<std::vector<float>> cfgJetSubEvlSelVar{"cfgJetSubEvlSelVar", {}, ""};

Configurable<std::string> cfgDetName{"cfgDetName", "FT0C", "The name of detector to be analyzed"};
Configurable<std::string> cfgRefAName{"cfgRefAName", "TPCPos", "The name of detector for reference A"};
Configurable<std::string> cfgRefBName{"cfgRefBName", "TPCNeg", "The name of detector for reference B"};
Expand All @@ -139,6 +142,7 @@ struct JEPFlowAnalysis {
ConfigurableAxis cfgAxisQ2{"cfgAxisQ2", {100, 0, 10}, ""};
ConfigurableAxis cfgAxisAmp{"cfgAxisAmp", {100, 0, 1e5}, ""};
ConfigurableAxis cfgAxisAmpR{"cfgAxisAmpR", {VARIABLE_WIDTH, 0.0, 0.01, 0.02, 0.05, 0.1, 0.2, 0.5, 1.0}, ""};
ConfigurableAxis cfgAxisActR{"cfgAxisActR", {100, 0, 100}, ""};

ConfigurableAxis cfgAxisCentMC{"cfgAxisCentMC", {5, 0, 100}, ""};
ConfigurableAxis cfgAxisVtxZMC{"cfgAxisVtxZMC", {20, -10, 10}, ""};
Expand Down Expand Up @@ -268,6 +272,27 @@ struct JEPFlowAnalysis {
return qVecFT0C.Rho();
}

template <typename Col>
float calcFT0CLocalActivity(const Col& coll)
{
float amp = 0.0;
float amp2 = 0.0;
if (!coll.has_foundFT0()) {
return false;
}

auto ft0 = coll.foundFT0();

for (std::size_t iChC = 0; iChC < ft0.channelC().size(); ++iChC) {
int ft0CChId = ft0.channelC()[iChC] + 96;
float ampl = ft0.amplitudeC()[iChC] / (cfgGainEq ? ft0RelGainConst[ft0CChId] : 1.);
amp += ampl;
amp2 += ampl * ampl;
}

return amp2 / (amp * amp);
}

template <typename Trk>
uint8_t trackSel(const Trk& track)
{
Expand Down Expand Up @@ -384,6 +409,28 @@ struct JEPFlowAnalysis {
}
}

float qOvecM;
float activity;
if (i == 0) { // second harmonic only
qOvecM = calcFT0CRawQVecMag(coll, i + 2) / coll.qvecAmp()[detId];

epFlowHistograms.fill(HIST("hQoverM2M"), cent, coll.qvecAmp()[detId], qOvecM);
epFlowHistograms.fill(HIST("hQoverM2Q2"), cent, q2Mag, qOvecM);

activity = calcFT0CLocalActivity(coll);
}

if (cfgJetSubEvtSel & 1) {
if (cfgJetSubEvlSelVar->at(0) > qOvecM) {
return;
}
}
if (cfgJetSubEvtSel & 2) {
if (cfgJetSubEvlSelVar->at(1) > activity) {
return;
}
}

highestPt = 0.0;
for (const auto& track : tracks) {
if (cfgTrkSelFlag && trackSel(track))
Expand Down Expand Up @@ -415,11 +462,8 @@ struct JEPFlowAnalysis {
}
}
if (i == 0) { // second harmonic only
auto qOvecM = calcFT0CRawQVecMag(coll, i + 2) / coll.qvecAmp()[detId];

epFlowHistograms.fill(HIST("hQoverM"), cent, highestPt, qOvecM);
epFlowHistograms.fill(HIST("hQoverM2M"), cent, coll.qvecAmp()[detId], qOvecM);
epFlowHistograms.fill(HIST("hQoverM2Q2"), cent, q2Mag, qOvecM);
epFlowHistograms.fill(HIST("hActivity"), cent, highestPt, activity);
}
}
}
Expand Down Expand Up @@ -461,6 +505,7 @@ struct JEPFlowAnalysis {
AxisSpec axisQ2{cfgAxisQ2, "Q2"};
AxisSpec axisAmp{cfgAxisAmp, "M"};
AxisSpec axisAmpR{cfgAxisAmpR, "QoverM"};
AxisSpec axisActR{cfgAxisActR, "Activity"};

AxisSpec axisCentMC{cfgAxisCentMC, "cent"};
AxisSpec axisVtxZMC{cfgAxisVtxZMC, "vtxz"};
Expand All @@ -480,6 +525,7 @@ struct JEPFlowAnalysis {
epFlowHistograms.add("hQoverM", "", {HistType::kTH3F, {axisCent, axisPt, axisAmpR}});
epFlowHistograms.add("hQoverM2M", "", {HistType::kTH3F, {axisCent, axisAmp, axisAmpR}});
epFlowHistograms.add("hQoverM2Q2", "", {HistType::kTH3F, {axisCent, axisQ2, axisAmpR}});
epFlowHistograms.add("hActivity", "", {HistType::kTH3F, {axisCent, axisPt, axisActR}});

epFlowHistograms.add("vncos", "", {HistType::kTHnSparseF, {axisMod, axisCent, axisPt, axisCos}});
epFlowHistograms.add("vnsin", "", {HistType::kTHnSparseF, {axisMod, axisCent, axisPt, axisCos}});
Expand Down
Loading