|
46 | 46 |
|
47 | 47 | #include <RtypesCore.h> |
48 | 48 |
|
| 49 | +#include <algorithm> |
49 | 50 | #include <array> |
50 | 51 | #include <cmath> |
51 | 52 | #include <cstdlib> |
| 53 | +#include <iterator> |
52 | 54 | #include <memory> |
53 | 55 | #include <string> |
54 | 56 | #include <utility> |
@@ -155,6 +157,27 @@ struct SginclusivePhiKstarSD { |
155 | 157 | ConfigurableAxis axispt{"axispt", {200, 0.0, 20.0}, ""}; |
156 | 158 | ConfigurableAxis axisrapdity{"axisrapdity", {40, -2.0, 2.0}, ""}; |
157 | 159 |
|
| 160 | + std::vector<int> runNumbers = { |
| 161 | + 544013, 544028, 544032, 544091, 544095, 544098, 544116, 544121, 544122, 544123, |
| 162 | + 544124, 544184, 544185, 544389, 544390, 544391, 544392, 544451, 544454, 544474, |
| 163 | + 544475, 544476, 544477, 544490, 544491, 544492, 544508, 544510, 544511, 544512, |
| 164 | + 544514, 544515, 544518, 544548, 544549, 544550, 544551, 544564, 544565, 544567, |
| 165 | + 544568, 544580, 544582, 544583, 544585, 544614, 544640, 544652, 544653, 544672, |
| 166 | + 544674, 544692, 544693, 544694, 544696, 544739, 544742, 544754, 544767, 544794, |
| 167 | + 544795, 544797, 544813, 544868, 544886, 544887, 544896, 544913, 544914, 544917, |
| 168 | + 544931, 544947, 544961, 544963, 544964, 544968, 544992, 545009, 545044, 545047, |
| 169 | + 545063, 545064, 545066, 545185, 545210, 545223, 545249, 545291, 545294, 545295, |
| 170 | + 545296, 545312}; |
| 171 | + |
| 172 | + int getRunBin(int runNumber) |
| 173 | + { |
| 174 | + auto it = std::lower_bound(runNumbers.begin(), runNumbers.end(), runNumber); |
| 175 | + if (it == runNumbers.end() || *it != runNumber) { |
| 176 | + return -1; |
| 177 | + } |
| 178 | + return static_cast<int>(std::distance(runNumbers.begin(), it)) + 1; |
| 179 | + } |
| 180 | + |
158 | 181 | int numTwoTracks = 2; |
159 | 182 | int numFourTracks = 4; |
160 | 183 |
|
@@ -307,6 +330,13 @@ struct SginclusivePhiKstarSD { |
307 | 330 | rQA.add("V0A_2", "V0A amplitude", kTH1F, {{1000, 0.0, 1000.0}}); |
308 | 331 | rQA.add("V0A_0", "V0A amplitude", kTH1F, {{1000, 0.0, 1000.0}}); |
309 | 332 | rQA.add("V0A_1", "V0A amplitude", kTH1F, {{1000, 0.0, 1000.0}}); |
| 333 | + |
| 334 | + rQA.add("hIntRateVsRun", "Hadronic interaction rate; Run number; Hadronic interaction rate (kHz)", kTH2F, {{92, 0.5, 92.5}, {1000, 0., 50.}}); |
| 335 | + auto hIntRateVsRun = rQA.get<TH2>(HIST("hIntRateVsRun")); |
| 336 | + for (size_t i = 0; i < runNumbers.size(); ++i) { |
| 337 | + hIntRateVsRun->GetXaxis()->SetBinLabel(i + 1, Form("%d", runNumbers[i])); |
| 338 | + } |
| 339 | + hIntRateVsRun->GetXaxis()->LabelsOption("v"); |
310 | 340 | } |
311 | 341 | registry.add("gap_mult0", "Mult 0", kTH1F, {{100, 0.0, 100.0}}); |
312 | 342 | registry.add("gap_mult1", "Mult 1", kTH1F, {{100, 0.0, 100.0}}); |
@@ -785,6 +815,11 @@ struct SginclusivePhiKstarSD { |
785 | 815 | { |
786 | 816 | if (qa) { |
787 | 817 | rQA.fill(HIST("hOcc_before"), collision.occupancyInTime()); |
| 818 | + |
| 819 | + int runBin = getRunBin(collision.runNumber()); |
| 820 | + if (runBin > 0 && collision.hadronicRate() > 0.) { |
| 821 | + rQA.fill(HIST("hIntRateVsRun"), runBin, collision.hadronicRate()); |
| 822 | + } |
788 | 823 | } |
789 | 824 |
|
790 | 825 | ROOT::Math::PxPyPzMVector v0; |
|
0 commit comments